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