Utiliser les défauts de Django pour le logout.
[auf_savoirs_en_partage_django.git] / auf_savoirs_en_partage / urls.py
1 # -*- encoding: utf-8 -*-
2
3 from django.conf.urls.defaults import patterns, include, handler500, handler404, url
4 from django.conf import settings
5 from django.contrib import admin
6 from savoirs.rss import FilActualite, FilEvenement
7
8 admin.autodiscover()
9
10 handler500 = "views.page_500"
11 handler404 = "views.page_404"
12
13 site_feeds = {'actualites': FilActualite,
14 'agenda': FilEvenement }
15
16
17 # Les URLs suivantes peuvent être préfixées de la discipline et/ou la
18 # région. Nous les regroupons donc dans un module qu'on incluera plus bas.
19 sep_patterns = patterns(
20 '',
21
22 # accueil
23 (r'^$', 'savoirs.views.index'),
24
25 # recherche
26 (r'^recherche/$', 'savoirs.views.recherche'),
27 )
28
29 urlpatterns = sep_patterns + patterns(
30 '',
31
32 (r'^informations/$', 'savoirs.views.informations'),
33
34 # agenda
35 (r'^agenda/$', 'savoirs.views.evenement_index'),
36 (r'^agenda/evenements/(?P<id>\d+)/$', 'savoirs.views.evenement'),
37 (r'^agenda/evenements/moderer/$', 'savoirs.views.evenement_moderation'),
38 (r'^agenda/evenements/moderer/(.+)/accepter/$', 'savoirs.views.evenement_accepter'),
39 (r'^agenda/evenements/moderer/(.+)/refuser/$', 'savoirs.views.evenement_refuser'),
40 (r'^agenda/evenements/utilisation/$', 'savoirs.views.evenement_utilisation'),
41 (r'^agenda/evenements/creer/$', 'savoirs.views.evenement_ajout'),
42 (r'^agenda/evenements/creer/options_fuseau_horaire/$', 'savoirs.views.options_fuseau_horaire'),
43
44 # sous-menu droite
45 (r'^a-propos/$', 'savoirs.views.a_propos'),
46 (r'^legal/$', 'savoirs.views.legal'),
47 (r'^nous-contacter/$', 'savoirs.views.nous_contacter'),
48
49 # ressources
50 (r'^ressources/$', 'savoirs.views.ressource_index'),
51 (r'^ressources/(?P<id>\d+)/$', 'savoirs.views.ressource_retrieve'),
52
53 # actualités
54 (r'^actualites/$', 'savoirs.views.actualite_index'),
55 (r'^actualites/(?P<id>\d+)/$', 'savoirs.views.actualite'),
56
57 # sites
58 (r'^sites/$', 'sitotheque.views.index'),
59 (r'^sites/(?P<id>\d+)/$', 'sitotheque.views.retrieve'),
60
61 # sites AUF
62 (r'^sites-auf/$', 'savoirs.views.sites_auf'),
63
64 # chercheurs
65 (r'^chercheurs/$', 'chercheurs.views.index'),
66 (r'^chercheurs/(?P<id>\d+)/$', 'chercheurs.views.retrieve'),
67 (r'^chercheurs/inscription/$', 'chercheurs.views.inscription'),
68 (r'^chercheurs/desinscription/$', 'chercheurs.views.desinscription'),
69 (r'^chercheurs/perso/$', 'chercheurs.views.perso'),
70 (r'^chercheurs/edit/$', 'chercheurs.views.edit'),
71 (r'^chercheurs/conversion$', 'chercheurs.views.conversion'),
72 (r'^accounts/login/$', 'django.contrib.auth.views.login'),
73 (r'^accounts/change_password/$', 'chercheurs.views.change_password'),
74 (r'^accounts/send_password/$', 'chercheurs.views.send_password'),
75 (r'^etablissements/autocomplete/$', 'chercheurs.views.etablissements_autocomplete'),
76 (r'^etablissements/autocomplete/(?P<pays>.*)/$', 'chercheurs.views.etablissements_autocomplete'),
77
78 # section par discipline et/ou région
79 (r'^discipline/(?P<discipline>\d+)/', include(sep_patterns)),
80 (r'^region/(?P<region>\d+)/', include(sep_patterns)),
81 (r'^discipline/(?P<discipline>\d+)/region/(?P<region>\d+)/', include(sep_patterns)),
82
83 # traduction disponible dans le frontend sans permissons
84 url(r'^jsi18n/$', admin.site.i18n_javascript,),
85
86 url(r'^admin_tools/', include('admin_tools.urls')),
87 (r'^admin/', include(admin.site.urls)),
88 (r'^admin/confirmation/(.*)', 'savoirs.admin_views.confirmation'),
89 (r'^admin/assigner_pays', 'savoirs.admin_views.assigner_pays'),
90 (r'^admin/assigner_thematiques', 'savoirs.admin_views.assigner_thematiques'),
91 (r'^admin/(?P<app_name>[^/]*)/(?P<model_name>[^/]*)/assigner_regions', 'savoirs.admin_views.assigner_regions', {}, 'assigner_regions'),
92 (r'^admin/(?P<app_name>[^/]*)/(?P<model_name>[^/]*)/assigner_disciplines', 'savoirs.admin_views.assigner_disciplines', {}, 'assigner_disciplines'),
93 (r'^admin/(.*)', admin.site.root),
94
95 (r'^accounts/logout/$', 'django.contrib.auth.views.logout'),
96 (r'^accounts/new_password/(.+)/(.+)/$', 'chercheurs.views.new_password'),
97
98 # rss
99 (r'^rss/(.*)/$', 'django.contrib.syndication.views.feed', {'feed_dict':site_feeds}),
100 (r'^json/get/$', 'savoirs.views.json_get'),
101 (r'^json/set/$', 'savoirs.views.json_set'),
102
103 )
104
105 if settings.DEBUG:
106 urlpatterns += patterns('',
107 (r'^media/(?P<path>.*)$', 'django.views.static.serve',
108 {'document_root': settings.MEDIA_ROOT}),
109 )