]> git.0d.be Git - panikdb.git/blob - panikdb/urls.py
add page to view vote result
[panikdb.git] / panikdb / urls.py
1 from django.conf.urls import patterns, include, url
2 from django.conf import settings
3 from django.views.generic import RedirectView
4 from django.core.urlresolvers import reverse_lazy
5 from django.contrib.auth.decorators import login_required
6
7 from django.contrib import admin
8
9 from ckeditor.views import upload as ckeditor_upload
10 from ckeditor.views import browse as ckeditor_browse
11 from haystack.views import search_view_factory
12 from haystack.forms import FacetedSearchForm
13 from haystack.query import SearchQuerySet
14
15 from emissions.views import FacetedSearchView
16 from emissions.urls import urlpatterns as emissions_urlpatterns
17 from emissions.models import Emission, Episode, NewsItem
18 from newsletter.urls import management_patterns as newsletter_urlpatterns
19 from matos.urls import urlpatterns as matos_urlpatterns
20 from nonstop.urls import urlpatterns as nonstop_urlpatterns
21
22 from combo.manager.urls import urlpatterns as combo_manager_urls
23
24 from urls_utils import decorated_includes, cms_permission_required
25
26
27 sqs = SearchQuerySet().models(Emission, Episode, NewsItem).facet('categories').facet('tags')
28
29 urlpatterns = patterns('',
30     url(r'^$', 'panikdb.views.home', name='home'),
31     url(r'^ckeditor/upload/', login_required(ckeditor_upload)),
32     url(r'^ckeditor/browse/', login_required(ckeditor_browse)),
33     url(r'^search/', search_view_factory(view_class=FacetedSearchView,
34         form_class=FacetedSearchForm, searchqueryset=sqs), name='haystack_search'),
35
36     url(r'^emissions/$', 'panikdb.views.emissions_list', name='emission-list'),
37
38     url(r'^emissions/',
39         decorated_includes(login_required, include(emissions_urlpatterns))),
40
41     url(r'^matos/',
42         decorated_includes(login_required, include(matos_urlpatterns))),
43
44     url(r'^nonstop/',
45         decorated_includes(login_required, include(nonstop_urlpatterns))),
46
47     url(r'^newsletters/add$', 'panikdb.views.newsletter_create', name='newsletter-create'),
48     url(r'^newsletters/',
49         decorated_includes(login_required, include(newsletter_urlpatterns))),
50
51     url(r'^cms/',
52         decorated_includes(cms_permission_required, include(combo_manager_urls))),
53
54     url(r'^news/$', 'panikdb.views.news', name='news-list'),
55
56     url(r'^focus/set/(?P<object_type>[\w,-]+)/(?P<object_id>\d+)$',
57         'panikdb.views.focus_set', name='focus-set'),
58     url(r'^focus/unset/(?P<object_type>[\w,-]+)/(?P<object_id>\d+)$',
59         'panikdb.views.focus_unset', name='focus-unset'),
60
61     url(r'^cms/pages/(?P<page_pk>\w+)/make-topik$', 'panikdb.views.make_topik',
62         name='make-topik'),
63     url(r'^cms/pages/topik/(?P<pk>\w+)/edit-topik$', 'panikombo.views.topik_edit',
64         name='edit-topik'),
65
66     url(r'^accounts/logout/', 'django.contrib.auth.views.logout_then_login', name='logout'),
67     url(r'^accounts/', include('registration.backends.default.urls')),
68
69     url(r'^combok/soundfiles/', 'panikombo.views.soundfiles'),
70     url(r'^combok/episodes/', 'panikombo.views.episodes'),
71
72     url(r'^vote/$', 'panikdb.poll.views.vote', name='vote'),
73     url(r'^vote/results/$', 'panikdb.poll.views.vote_results', name='vote-results'),
74
75     url(r'^admin/', include(admin.site.urls)),
76 )
77
78 from django.contrib.staticfiles.urls import staticfiles_urlpatterns
79 urlpatterns += staticfiles_urlpatterns()
80
81 from django.conf.urls.static import static
82 urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)