delete_local_user available from rest, check if user is a pi of the authority for...
[unfold.git] / myslice / urls.py
1 from django.conf.urls import patterns, include, url
2 from django.conf      import settings
3 from django.contrib import admin
4
5 ##
6 # components module
7 ##
8 import components
9
10 # Uncomment the next two lines to enable the admin:
11 # from django.contrib import admin
12 # admin.autodiscover()
13
14 # to enable insert_above stuff
15 from django.template.loader import add_to_builtins
16 add_to_builtins('insert_above.templatetags.insert_tags')
17
18 from settings import auxiliaries, INSTALLED_APPS
19
20 import portal.about
21 import portal.institution
22 import portal.registrationview
23 import portal.accountview
24 import portal.contactview
25 import portal.termsview
26 import portal.supportview
27
28 import portal.platformsview
29 import portal.dashboardview
30 import portal.homeview
31 import portal.newsview
32 import portal.loginwidget
33
34 platforms_view=portal.platformsview.PlatformsView.as_view()
35
36 #import portal.testbedlist
37 import portal.sliceview
38 import portal.sliceresourceview
39
40 import portal.slicetabexperiment
41 import portal.slicetabinfo
42 import portal.slicetabtestbeds
43 import portal.slicetabusers
44 import portal.slicetabmeasurements 
45
46 import portal.managementtababout
47 import portal.managementtabrequests
48
49 urls = [
50     '',
51     # Examples:
52     # url(r'^$', 'myslice.views.home', name='home'),
53     # url(r'^myslice/', include('myslice.foo.urls')),
54     # Uncomment the admin/doc line below to enable admin documentation:
55     # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
56     # Uncomment the next line to enable the admin:
57     url(r'^admin/', include(admin.site.urls)),
58     #
59     # default / view
60     (r'^/?$', portal.homeview.HomeView.as_view()),
61     #
62     # login / logout
63     (r'^login-ok/?$', portal.dashboardview.DashboardView.as_view(), {'state': 'Welcome to MySlice'} ),
64     #
65     # seems to be what login_required uses to redirect ...
66     (r'^accounts/login/$', portal.homeview.HomeView.as_view()),
67     (r'^login/?$', portal.homeview.HomeView.as_view()),
68     (r'^logout/?$', 'auth.views.logout_user'),
69     #
70     # the manifold proxy
71     (r'^manifold/proxy/(?P<format>\w+)/?$', 'manifoldapi.manifoldproxy.proxy'),
72     #
73     #
74     # RESTful interface
75     (r'^rest/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.get.dispatch'),
76     (r'^sfa/(?P<method>[^/]+)/?$', 'rest.sfa_api.dispatch'),
77     (r'^table/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.get.dispatch'),
78     (r'^datatable/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.get.dispatch'),
79     (r'^update/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.update.dispatch'),
80     (r'^create/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.create.dispatch'),
81     (r'^delete/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.delete.dispatch'),
82     (r'^local_user/(?P<action>[^/]+)/?$', 'rest.local_user.dispatch'),
83     (r'^credentials/(?P<action>[^/]+)/?$', 'rest.credentials.dispatch'),
84     (r'^cache/(?P<action>[^/]+)/?$', 'rest.cache.dispatch'),
85     (r'^initscript/(?P<action>[^/]+)/?$', 'rest.initscript.dispatch'),
86     #
87     # REST monitoring
88     (r'^monitor/services/?$', 'rest.monitor.servicesStatus'),
89     #
90     #(r'^view/?', include('view.urls')),
91     #(r'^list/slices', 'view.list.slices')
92     #
93     # Login widget to be used in an iframe
94     (r'^loginwidget/?$', portal.loginwidget.LoginWidget.as_view()),
95     #
96     # Portal
97     (r'^news/?$', portal.newsview.NewsView.as_view()),
98     (r'^resources/(?P<slicename>[^/]+)/?$', portal.sliceresourceview.SliceResourceView.as_view()),
99     (r'^users/(?P<slicename>[^/]+)/?$', portal.slicetabusers.SliceUserView.as_view()),
100     
101     (r'^slice/(?P<slicename>[^/]+)/?$', portal.sliceview.SliceView.as_view()),
102     (r'^info/(?P<slicename>[^/]+)/?$', portal.slicetabinfo.SliceInfoView.as_view()),
103     (r'^testbeds/(?P<slicename>[^/]+)/?$', portal.slicetabtestbeds.SliceTabTestbeds.as_view()),
104     (r'^measurements/(?P<slicename>[^/]+)/?$', portal.slicetabmeasurements.SliceTabMeasurements.as_view()),
105     (r'^experiment/(?P<slicename>[^/]+)/?$', portal.slicetabexperiment.ExperimentView.as_view()),
106     
107     
108     url(r'^about/?$', portal.about.AboutView.as_view(), name='about'),
109     
110     url(r'^institution/?$', portal.institution.InstitutionView.as_view(), name='institution'),
111     (r'^management/requests/?$', portal.managementtabrequests.ManagementRequestsView.as_view()),
112     (r'^management/about/?$', portal.managementtababout.ManagementAboutView.as_view()),
113     #
114     url(r'^register/?$', portal.registrationview.RegistrationView.as_view(), name='registration'),
115     url(r'^account/?$', portal.accountview.AccountView.as_view(), name='account'),
116     url(r'^account/account_process/?$', portal.accountview.account_process),
117     url(r'^contact/?$', portal.contactview.ContactView.as_view(), name='contact'),
118     url(r'^terms/?$', portal.termsview.TermsView.as_view(), name='terms'),
119     url(r'^support/?$', portal.supportview.SupportView.as_view(), name='support'),
120     #
121     url(r'^portal/', include('portal.urls')),
122
123     # SLA
124 #    url(r'^sla/', include('sla.urls')),
125 ]
126
127 urls.extend( components.urls() )
128
129 #this one would not match the convention
130 # url(r'^debug/', include('debug_platform.urls')),
131 # but it was commented out anyways
132 for aux in auxiliaries:
133     if aux in INSTALLED_APPS:
134         urls.append ( url ( r'^%s/'%aux, include ('%s.urls' % aux )))
135
136 urlpatterns = patterns(*urls)