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.documentationview import DocumentationView
46 from portal.supportview import SupportView
47 from portal.emailactivationview import ActivateEmailView
48 # hopefully these should move in dedicated source files too
49 from portal.views import PresViewView, pres_view_static, pres_view_methods, pres_view_animation
50 from portal.django_passresetview import password_reset, password_reset_done, password_reset_confirm, password_reset_complete
52 # DEPRECATED #named_register_forms = (
53 # DEPRECATED # ("step1", RegisterUserForm),
54 # DEPRECATED # ("step2", RegisterUserStep2Form)
57 # DEPRECATED #register_wizard = RegisterUserWizardView.as_view(named_register_forms,
58 # DEPRECATED # url_name="register_wizard_step")
60 urlpatterns = patterns('',
62 #url(r'^user/register/?$', UserRegisterView.as_view(), name='user_register'),
63 url(r'^user/register/complete/$',
64 TemplateView.as_view(template_name='user_register_complete.html'),
65 name='user_register_complete'),
67 #url(r'^user/validate/?$', UserValidateView.as_view(), name='user_validate'),
68 url(r'^dashboard/?$', DashboardView.as_view(), name='dashboard'),
69 #url(r'^my_account/?$', MyAccountView.as_view(), name='my_account'),
70 url(r'^account/?$', AccountView.as_view(), name='account'),
71 url(r'^institution/?$', InstitutionView.as_view(), name='institution'),
72 url(r'^about/?$', AboutView.as_view(), name='about'),
73 url(r'^users/?$', UsersView.as_view(), name='user_list'),
74 url(r'^user/(?P<email>[\w\s.@\-]+)/?$', UserView.as_view(), name='user'),
75 url(r'^user/(?P<email>[\w\s.@\-]+)/user_process/?$', user_process),
76 url(r'^platforms/?$', PlatformsView.as_view(), name='platforms'),
77 url(r'^platform/(?P<platformname>[\w\.\-]+)/?$', PlatformView.as_view(), name='platform'),
78 url(r'^resource/(?P<urn>[\w\.\-\+\:]+)/?$', ResourceView.as_view(), name='resource'),
79 url(r'^slice/?$',SliceView.as_view(),name='slice'),
80 url(r'^slice/(?P<slicename>[\w\.]+)/?$', SliceView.as_view(),name='slice'),
81 url(r'^account/account_process/?$', account_process),
82 url(r'^register/?$', RegistrationView.as_view(), name='registration'),
83 url(r'^join/?$', JoinView.as_view(), name='join'),
84 url(r'^contact/?$', ContactView.as_view(), name='contact'),
85 #url(r'^experiment?$', ExperimentView.as_view(), name='experiment'),
86 url(r'^support/?$', SupportView.as_view(), name='support'),
87 url(r'^support/documentation?$', DocumentationView.as_view(), name='FAQ'),
88 #url(r'^pass_reset/?$', PassResetView.as_view(), name='pass_rest'),
90 url(r'^slice_request/?$', SliceRequestView.as_view(), name='slice_request'),
91 # Validate pending requests
92 url(r'^validate/?$', ValidatePendingView.as_view()),
93 # http://stackoverflow.com/questions/2360179/django-urls-how-to-pass-a-list-of-items-via-clean-urls
94 # (r'^validate_action/(?P<constraints>[^/]+)/(?P<id>\w+)/?$', 'portal.views.pres_view_static'),
95 url(r'^validate_action(?P<id>(?:/\w+)+)/?$', 'portal.actions.validate_action'),
97 url(r'^pres_view/?$', PresViewView.as_view(), name='pres_view'),
98 (r'^methods/(?P<type>\w+)/?$', 'portal.views.pres_view_methods'),
99 (r'^animation/(?P<constraints>[^/]+)/(?P<id>\w+)/?$', 'portal.views.pres_view_animation'),
100 (r'^static/(?P<constraints>[^/]+)/(?P<id>\w+)/?$', 'portal.views.pres_view_static'),
101 #url(r'^slice/request/?$', views.slice_request, name='slice_request'),
103 #url(r'^slice/validate/?$', views.slice_validate, name='slice_validate'),
104 url(r'^email_activation/(?P<hash_code>[\w\W\-]+)/?$', ActivateEmailView.as_view(), name='email_activate'),
105 url(r'^pass_reset/$',
106 'portal.django_passresetview.password_reset',
107 {'post_reset_redirect' : '/portal/password/reset/done/'}),
108 (r'^password/reset/done/$',
109 'portal.django_passresetview.password_reset_done'),
110 (r'^password/reset/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$',
111 'portal.django_passresetview.password_reset_confirm',
112 {'post_reset_redirect' : '/portal/password/done/'}),
113 (r'^password/done/$',
114 'portal.django_passresetview.password_reset_complete'),
118 # (r'^accounts/', include('registration.backends.default.urls')),
121 # DEPRECATED # url(r'^$', views.index, name='index'),
122 # DEPRECATED # url(r"^registerwizard/(?P<step>[-\w]+)/$", register_wizard,
123 # DEPRECATED # name="register_wizard_step"),
124 # DEPRECATED # url(r"^registerwizard/$", regster_wizard, name="register_wizard")