Support Page added
[myslice.git] / portal / urls.py
1 # -*- coding: utf-8 -*-
2 #
3 # portal/urls.py: URL mappings for the portal application
4 # This file is part of the Manifold project.
5 #
6 # Authors:
7 #   Jordan AugĂ© <jordan.auge@lip6.fr>
8 # Copyright 2013, UPMC Sorbonne UniversitĂ©s / LIP6
9 #
10 # This program is free software; you can redistribute it and/or modify it under
11 # the terms of the GNU General Public License as published by the Free Software
12 # Foundation; either version 3, or (at your option) any later version.
13
14 # This program is distributed in the hope that it will be useful, but WITHOUT
15 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16 # FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
17 # details.
18
19 # You should have received a copy of the GNU General Public License along with
20 # this program; see the file COPYING.  If not, write to the Free Software
21 # Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22
23 from django.views.generic.base   import TemplateView
24 from django.conf.urls           import patterns, include, url
25
26 from portal.usersview           import UsersView
27 from portal.manageuserview      import UserView, user_process    
28 from portal.platformsview       import PlatformsView
29 from portal.platformview        import PlatformView
30 from portal.resourceview        import ResourceView
31 from portal.dashboardview       import DashboardView
32 from portal.accountview         import AccountView, account_process
33 from portal.contactview         import ContactView
34 from portal.slicerequestview    import SliceRequestView
35 from portal.registrationview    import RegistrationView
36 from portal.joinview            import JoinView
37 from portal.sliceview           import SliceView
38 from portal.validationview      import ValidatePendingView
39 from portal.experimentview      import ExperimentView
40 from portal.documentationview   import DocumentationView
41 from portal.supportview         import SupportView
42
43 # hopefully these should move in dedicated source files too
44 from portal.views               import PresViewView, pres_view_static, pres_view_methods, pres_view_animation
45 from portal.django_passresetview import password_reset, password_reset_done, password_reset_confirm, password_reset_complete 
46
47 # DEPRECATED #named_register_forms = (
48 # DEPRECATED #    ("step1", RegisterUserForm),
49 # DEPRECATED #    ("step2", RegisterUserStep2Form)
50 # DEPRECATED #)
51 # DEPRECATED #
52 # DEPRECATED #register_wizard = RegisterUserWizardView.as_view(named_register_forms,
53 # DEPRECATED #    url_name="register_wizard_step")
54
55 urlpatterns = patterns('',
56     # User registration
57     #url(r'^user/register/?$', UserRegisterView.as_view(), name='user_register'),
58     url(r'^user/register/complete/$',
59         TemplateView.as_view(template_name='user_register_complete.html'),
60         name='user_register_complete'),
61     # User validation
62     #url(r'^user/validate/?$', UserValidateView.as_view(), name='user_validate'),
63     url(r'^dashboard/?$', DashboardView.as_view(), name='dashboard'),
64     #url(r'^my_account/?$', MyAccountView.as_view(), name='my_account'),
65     url(r'^account/?$', AccountView.as_view(), name='account'),
66     url(r'^users/?$', UsersView.as_view(), name='user_list'),
67     url(r'^user/(?P<email>[\w\s.@\-]+)/?$', UserView.as_view(), name='user'),
68     url(r'^user/(?P<email>[\w\s.@\-]+)/user_process/?$', user_process),
69     url(r'^platforms/?$', PlatformsView.as_view(), name='platforms'),
70     url(r'^platform/(?P<platformname>[\w\.\-]+)/?$', PlatformView.as_view(), name='platform'),
71     url(r'^resource/(?P<urn>[\w\.\-\+\:]+)/?$', ResourceView.as_view(), name='resource'),
72     url(r'^slice/?$',SliceView.as_view(),name='slice'),
73     url(r'^slice/(?P<slicename>[\w\.]+)/?$', SliceView.as_view(),name='slice'),
74     url(r'^account/account_process/?$', account_process),
75     url(r'^register/?$', RegistrationView.as_view(), name='registration'),
76     url(r'^join/?$', JoinView.as_view(), name='join'),
77     url(r'^contact/?$', ContactView.as_view(), name='contact'),
78     url(r'^experiment?$', ExperimentView.as_view(), name='experiment'),
79     url(r'^support/?$', SupportView.as_view(), name='support'),
80     url(r'^support/documentation?$', DocumentationView.as_view(), name='FAQ'),
81     #url(r'^pass_reset/?$', PassResetView.as_view(), name='pass_rest'),
82     # Slice request
83     url(r'^slice_request/?$', SliceRequestView.as_view(), name='slice_request'),
84     # Validate pending requests
85     url(r'^validate/?$', ValidatePendingView.as_view()),
86     # http://stackoverflow.com/questions/2360179/django-urls-how-to-pass-a-list-of-items-via-clean-urls
87     # (r'^validate_action/(?P<constraints>[^/]+)/(?P<id>\w+)/?$', 'portal.views.pres_view_static'),
88     url(r'^validate_action(?P<id>(?:/\w+)+)/?$', 'portal.actions.validate_action'),
89
90     url(r'^pres_view/?$', PresViewView.as_view(), name='pres_view'),
91     (r'^methods/(?P<type>\w+)/?$', 'portal.views.pres_view_methods'),
92     (r'^animation/(?P<constraints>[^/]+)/(?P<id>\w+)/?$', 'portal.views.pres_view_animation'),
93     (r'^static/(?P<constraints>[^/]+)/(?P<id>\w+)/?$', 'portal.views.pres_view_static'),
94     #url(r'^slice/request/?$',  views.slice_request,  name='slice_request'),
95     # Slice confirmation
96     #url(r'^slice/validate/?$', views.slice_validate, name='slice_validate'),
97     url(r'^pass_reset/$', 
98         'portal.django_passresetview.password_reset', 
99         {'post_reset_redirect' : '/portal/password/reset/done/'}),
100     (r'^password/reset/done/$',
101         'portal.django_passresetview.password_reset_done'),
102     (r'^password/reset/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$', 
103         'portal.django_passresetview.password_reset_confirm', 
104         {'post_reset_redirect' : '/portal/password/done/'}),
105     (r'^password/done/$', 
106         'portal.django_passresetview.password_reset_complete'),
107     # ...
108
109 )
110 # (r'^accounts/', include('registration.backends.default.urls')),
111
112
113 # DEPRECATED #    url(r'^$', views.index, name='index'),
114 # DEPRECATED #    url(r"^registerwizard/(?P<step>[-\w]+)/$", register_wizard,
115 # DEPRECATED #        name="register_wizard_step"),
116 # DEPRECATED #    url(r"^registerwizard/$", regster_wizard, name="register_wizard")