8f108280b721fadb3a8c087aa846722812cbe4ed
[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 ##
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 # add_to_builtins has changed location with django-1.7
16 # also note this will probably go away some day
17 try:
18     from django.template.loader import add_to_builtins
19 except:
20     from django.template.base import add_to_builtins
21 add_to_builtins('insert_above.templatetags.insert_tags')
22
23 from settings import auxiliaries, INSTALLED_APPS
24
25 from unfold.loginrequired import LoginRequiredView
26
27 import portal.about
28 import portal.institution
29 import portal.registrationview
30 import portal.accountview
31 import portal.contactview
32 import portal.termsview
33 import portal.supportview
34 import portal.omn
35
36 import portal.platformsview
37 import portal.dashboardview
38 import portal.homeview
39 import portal.newsview
40 import portal.loginwidget
41
42 platforms_view=portal.platformsview.PlatformsView.as_view()
43
44 #import portal.testbedlist
45 import portal.sliceview
46 import portal.sliceresourceview
47
48 # Testing sfa rest
49 import portal.resources
50
51 import portal.slicetabexperiment
52 import portal.slicetabcloud
53 import portal.slicetabinfo
54 import portal.slicetabtestbeds
55 import portal.slicetabusers
56 import portal.slicetabmeasurements 
57
58 import portal.managementtababout
59 import portal.managementtabrequests
60
61 urls = [
62     '',
63     # Examples:
64     # url(r'^$', 'myslice.views.home', name='home'),
65     # url(r'^myslice/', include('myslice.foo.urls')),
66     # Uncomment the admin/doc line below to enable admin documentation:
67     # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
68     # Uncomment the next line to enable the admin:
69     url(r'^admin/', include(admin.site.urls)),
70     #
71     # default / view
72     (r'^/?$', portal.homeview.HomeView.as_view()),
73     #
74     # login / logout
75     (r'^login-ok/?$', portal.dashboardview.DashboardView.as_view(), {'state': 'Welcome to MySlice'} ),
76     #
77     # seems to be what login_required uses to redirect ...
78     (r'^accounts/login/$', portal.homeview.HomeView.as_view()),
79     (r'^login/?$', portal.homeview.HomeView.as_view()),
80     (r'^logout/?$', 'localauth.views.logout_user'),
81     #
82     # the manifold proxy
83     (r'^manifold/proxy/(?P<format>\w+)/?$', 'manifoldapi.manifoldproxy.proxy'),
84     #
85     #
86     # RESTful interface
87     (r'^rest/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.get.dispatch'),
88     (r'^sfa/(?P<method>[^/]+)/?$', 'rest.sfa_api.dispatch'),
89     (r'^table/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.get.dispatch'),
90     (r'^datatable/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.get.dispatch'),
91     (r'^update/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.update.dispatch'),
92     (r'^create/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.create.dispatch'),
93     (r'^delete/(?P<object_type>[^/]+)/(?P<object_name>[^/]+)?/?$', 'rest.delete.dispatch'),
94     (r'^local_user/(?P<action>[^/]+)/?$', 'rest.local_user.dispatch'),
95     (r'^credentials/(?P<action>[^/]+)/?$', 'rest.credentials.dispatch'),
96     (r'^cache/(?P<action>[^/]+)/?$', 'rest.cache.dispatch'),
97     (r'^initscript/(?P<action>[^/]+)/?$', 'rest.initscript.dispatch'),
98     (r'^authority/(?P<action>[^/]+)/?$', 'rest.authority.dispatch'),
99     (r'^portal_version/?$', 'rest.portal_version.dispatch'),
100     #
101     # REST monitoring
102     (r'^monitor/services/?$', 'rest.monitor.servicesStatus'),
103     #
104     #(r'^view/?', include('view.urls')),
105     #(r'^list/slices', 'view.list.slices')
106     #
107     # Login widget to be used in an iframe
108     (r'^loginwidget/?$', portal.loginwidget.LoginWidget.as_view()),
109     #
110     # Portal
111     (r'^news/?$', portal.newsview.NewsView.as_view()),
112     (r'^resources/(?P<slicename>[^/]+)/?$', portal.sliceresourceview.SliceResourceView.as_view()),
113     (r'^users/(?P<slicename>[^/]+)/?$', portal.slicetabusers.SliceUserView.as_view()),
114     (r'^my_url/?$', portal.omn.OMNView.as_view()),
115     (r'^ontology/?$', portal.omn.OMNView.as_view()),
116
117     # Testing sfa rest
118     (r'^sfa_resources/(?P<slicename>[^/]+)/?$', portal.resources.ResourcesView.as_view()),
119     
120     (r'^slice/(?P<slicename>[^/]+)/?$', portal.sliceview.SliceView.as_view()),
121     (r'^info/(?P<slicename>[^/]+)/?$', portal.slicetabinfo.SliceInfoView.as_view()),
122     (r'^testbeds/(?P<slicename>[^/]+)/?$', portal.slicetabtestbeds.SliceTabTestbeds.as_view()),
123     (r'^measurements/(?P<slicename>[^/]+)/?$', portal.slicetabmeasurements.SliceTabMeasurements.as_view()),
124     (r'^experiment/(?P<slicename>[^/]+)/?$', portal.slicetabexperiment.ExperimentView.as_view()),
125     (r'^cloud/(?P<slicename>[^/]+)/?$', portal.slicetabcloud.CloudView.as_view()),
126     
127     
128     url(r'^about/?$', portal.about.AboutView.as_view(), name='about'),
129     
130     url(r'^institution/?$', portal.institution.InstitutionView.as_view(), name='institution'),
131     (r'^management/requests/?$', portal.managementtabrequests.ManagementRequestsView.as_view()),
132     (r'^management/about/?$', portal.managementtababout.ManagementAboutView.as_view()),
133     #
134     url(r'^register/?$', portal.registrationview.RegistrationView.as_view(), name='registration'),
135     url(r'^account/?$', portal.accountview.AccountView.as_view(), name='account'),
136     url(r'^account/account_process/?$', portal.accountview.account_process),
137     url(r'^contact/?$', portal.contactview.ContactView.as_view(), name='contact'),
138     url(r'^terms/?$', portal.termsview.TermsView.as_view(), name='terms'),
139     url(r'^support/?$', portal.supportview.SupportView.as_view(), name='support'),
140     #
141     url(r'^portal/', include('portal.urls')),
142
143     # SLA
144     #url(r'^sla/', include('sla.urls')),
145 ]
146
147 urls.extend( components.urls() )
148
149 #this one would not match the convention
150 # url(r'^debug/', include('debug_platform.urls')),
151 # but it was commented out anyways
152 for aux in auxiliaries:
153     if aux in INSTALLED_APPS:
154         urls.append ( url ( r'^%s/'%aux, include ('%s.urls' % aux )))
155
156 urlpatterns = patterns(*urls)