Added terms in urls
[myslice.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 # Uncomment the next two lines to enable the admin:
6 # from django.contrib import admin
7 # admin.autodiscover()
8
9 # to enable insert_above stuff
10 from django.template.loader import add_to_builtins
11 add_to_builtins('insert_above.templatetags.insert_tags')
12
13 from settings import auxiliaries, INSTALLED_APPS
14
15 import portal.platformsview
16 import portal.dashboardview
17 import portal.homeview
18 import portal.newsview
19
20 from portal.registrationview        import RegistrationView
21 from portal.termsview               import TermsView
22
23 home_view=portal.homeview.HomeView.as_view()
24 dashboard_view=portal.dashboardview.DashboardView.as_view()
25 platforms_view=portal.platformsview.PlatformsView.as_view()
26
27 #import portal.testbedlist
28 import portal.sliceview
29 import portal.sliceresourceview
30
31 import portal.slicetabexperiment
32 import portal.slicetabinfo
33 import portal.slicetabtestbeds
34 import portal.slicetabusers
35 import portal.slicetabmeasurements 
36
37 import portal.managementtabrequests
38
39 #### high level choices
40 # main entry point (set to the / URL)
41 # beware that if this view is broken you end up in an endless cycle...
42 # maybe platforms_view would be best on the longer run
43 the_default_view=home_view
44 # where to be redirected after login
45 the_after_login_view=dashboard_view
46 # where to redirect when login is required
47 # might need another one ?
48 the_login_view=home_view
49 admin.autodiscover()
50 urls = [
51     '',
52     # Examples:
53     # url(r'^$', 'myslice.views.home', name='home'),
54     # url(r'^myslice/', include('myslice.foo.urls')),
55     # Uncomment the admin/doc line below to enable admin documentation:
56     # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
57     # Uncomment the next line to enable the admin:
58      url(r'^admin/', include(admin.site.urls)),
59     #
60     # default / view
61     (r'^/?$', the_default_view),
62     #
63     # login / logout
64     (r'^login-ok/?$', the_after_login_view, {'state': 'Welcome to MySlice'} ),
65     #
66     # seems to be what login_required uses to redirect ...
67     (r'^accounts/login/$', the_login_view),
68     (r'^login/?$', the_login_view),
69     (r'^logout/?$', 'auth.views.logout_user'),
70     #
71     # the manifold proxy
72     (r'^manifold/proxy/(?P<format>\w+)/?$', 'manifoldapi.manifoldproxy.proxy'),
73     #
74     #
75     # RESTful interface
76     (r'^rest/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.get.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     #
83     #
84     #(r'^view/?', include('view.urls')),
85     #(r'^list/slices', 'view.list.slices')
86     #
87     #
88     # Portal
89     (r'^news/?$', portal.newsview.NewsView.as_view()),
90     (r'^resources/(?P<slicename>[^/]+)/?$', portal.sliceresourceview.SliceResourceView.as_view()),
91     (r'^users/(?P<slicename>[^/]+)/?$', portal.slicetabusers.SliceUserView.as_view()),
92     
93     (r'^slice/(?P<slicename>[^/]+)/?$', portal.sliceview.SliceView.as_view()),
94     (r'^info/(?P<slicename>[^/]+)/?$', portal.slicetabinfo.SliceInfoView.as_view()),
95     (r'^testbeds/(?P<slicename>[^/]+)/?$', portal.slicetabtestbeds.SliceTabTestbeds.as_view()),
96     (r'^measurements/(?P<slicename>[^/]+)/?$', portal.slicetabmeasurements.SliceTabMeasurements.as_view()),
97     (r'^experiment/(?P<slicename>[^/]+)/?$', portal.slicetabexperiment.ExperimentView.as_view()),
98     #
99     (r'^management/requests/?$', portal.managementtabrequests.ManagementRequestsView.as_view()),
100     #
101     url(r'^register/?$', RegistrationView.as_view(), name='registration'),      
102     url(r'^terms/?$', TermsView.as_view(), name='terms'),
103     #
104     url(r'^portal/', include('portal.urls')),
105
106     # SLA
107     url(r'^sla/', include('sla.urls')),
108 ]
109
110 #this one would not match the convention
111 # url(r'^debug/', include('debug_platform.urls')),
112 # but it was commented out anyways
113 for aux in auxiliaries:
114     if aux in INSTALLED_APPS:
115         urls.append ( url ( r'^%s/'%aux, include ('%s.urls'%aux )))
116
117 urlpatterns = patterns(*urls)