# -*- coding: utf-8 -*-
from django.conf.urls.defaults import *
from django.contrib.admin.views.decorators import staff_member_required
from experiments.views import experiment_details, list_experiments

urlpatterns = patterns('experiments.views',
    url(r'^(?P<experiment_name>.+)/$', staff_member_required(experiment_details)),
    url(r'^$', staff_member_required(list_experiments))
)

# -*- coding: utf-8 -*-
from django.conf.urls.defaults import *
from django.contrib.admin.views.decorators import staff_member_required
from experiments.views import experiment_details, list_experiments

urlpatterns = patterns('experiments.views',
    url(r'^(?P<experiment_name>.+)/$', staff_member_required(experiment_details)),
    url(r'^(.+)/$', 'experiment_details'),
    url(r'^$', staff_member_required(list_experiments)),
    url(r'^$', 'list_experiments'),
)

make the reverse url() function work with these urls. I don't know why, but it doesn't work with the 'staff member required' wrapper