-add docs
[astakos] / astakos / im / urls.py
1 # Copyright 2011 GRNET S.A. All rights reserved.
2
3 # Redistribution and use in source and binary forms, with or
4 # without modification, are permitted provided that the following
5 # conditions are met:
6
7 #   1. Redistributions of source code must retain the above
8 #      copyright notice, this list of conditions and the following
9 #      disclaimer.
10
11 #   2. Redistributions in binary form must reproduce the above
12 #      copyright notice, this list of conditions and the following
13 #      disclaimer in the documentation and/or other materials
14 #      provided with the distribution.
15
16 # THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
17 # OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19 # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
20 # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
23 # USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
24 # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
26 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 # POSSIBILITY OF SUCH DAMAGE.
28
29 # The views and conclusions contained in the software and
30 # documentation are those of the authors and should not be
31 # interpreted as representing official policies, either expressed
32 # or implied, of GRNET S.A.
33
34 from django.conf import settings
35 from django.conf.urls.defaults import patterns, include
36 from django.core.urlresolvers import reverse
37
38 urlpatterns = patterns('astakos.im.views',
39     (r'^$', 'index'),
40     (r'^login/?$', 'index'),
41     (r'^profile/?$', 'edit_profile'),
42     (r'^feedback/?$', 'send_feedback'),
43     (r'^signup/?$', 'signup'),
44     (r'^admin/', include('astakos.im.admin.urls')),
45 )
46
47 urlpatterns += patterns('django.contrib.auth.views',
48     (r'^logout/?$', 'logout'),
49     (r'^password/?$', 'password_change', {'post_change_redirect':'admin'}),
50 )
51
52 urlpatterns += patterns('astakos.im.target',
53     (r'^login/dummy/?$', 'dummy.login')
54 )
55
56 urlpatterns += patterns('',
57     (r'^static/(?P<path>.*)$', 'django.views.static.serve',
58                                 {'document_root': settings.PROJECT_PATH + '/im/static'})
59 )
60
61 if 'local' in settings.IM_MODULES:
62     urlpatterns += patterns('astakos.im.target',
63         (r'^local/?$', 'local.login'),
64         (r'^local/activate/?$', 'local.activate'),
65     )
66     urlpatterns += patterns('django.contrib.auth.views',
67         (r'^local/password_reset/?$', 'password_reset',
68          {'email_template_name':'registration/password_email.txt'}),
69         (r'^local/password_reset_done/?$', 'password_reset_done'),
70         (r'^local/reset/confirm/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$',
71          'password_reset_confirm'),
72         (r'^local/password/reset/complete/$', 'password_reset_complete')
73     )
74
75 if settings.INVITATIONS_ENABLED:
76     urlpatterns += patterns('astakos.im.views',
77         (r'^invite/?$', 'invite'),
78     )
79     urlpatterns += patterns('astakos.im.target',
80         (r'^login/invitation/?$', 'invitation.login')
81     )
82
83 if 'shibboleth' in settings.IM_MODULES:
84     urlpatterns += patterns('astakos.im.target',
85         (r'^login/shibboleth/?$', 'shibboleth.login')
86     )
87
88 if 'twitter' in settings.IM_MODULES:
89     urlpatterns += patterns('astakos.im.target',
90         (r'^login/twitter/?$', 'twitter.login'),
91         (r'^login/twitter/authenticated/?$', 'twitter.authenticated')
92     )
93
94 urlpatterns += patterns('astakos.im.api',
95     (r'^authenticate/?$', 'authenticate')
96 )
97