bgneal@1028
|
1 from django.conf.urls import url, include
|
bgneal@580
|
2 from django.conf.urls.static import static
|
bgneal@6
|
3 from django.conf import settings
|
gremmie@1
|
4 from django.contrib import admin
|
bgneal@1028
|
5 import django.contrib.auth.views
|
bgneal@177
|
6 from django.views.decorators.cache import cache_page
|
bgneal@591
|
7 from django.views.generic import TemplateView
|
bgneal@170
|
8
|
bgneal@415
|
9 from haystack.views import search_view_factory
|
bgneal@678
|
10 from haystack.query import SearchQuerySet
|
bgneal@219
|
11
|
gremmie@1
|
12 from news.feeds import LatestNewsFeed
|
bgneal@170
|
13 from forums.feeds import ForumsFeed
|
bgneal@469
|
14 from custom_search.forms import CustomModelSearchForm
|
bgneal@763
|
15 from custom_search.views import UserSearchView
|
bgneal@591
|
16 from core.views import FixedView
|
bgneal@1071
|
17 from sg101.views import StoreView
|
gremmie@1
|
18
|
bgneal@141
|
19
|
bgneal@1028
|
20 urlpatterns = [
|
bgneal@591
|
21 url(r'^$',
|
bgneal@591
|
22 TemplateView.as_view(template_name='home.html'),
|
bgneal@591
|
23 name='home'),
|
bgneal@591
|
24 url(r'^about/$',
|
bgneal@591
|
25 FixedView.as_view(title='About', content_template='fixed/about.html'),
|
bgneal@591
|
26 name='about'),
|
bgneal@593
|
27 url(r'^colophon/$',
|
bgneal@593
|
28 FixedView.as_view(title='Colophon', content_template='fixed/colophon.html'),
|
bgneal@593
|
29 name='colophon'),
|
bgneal@593
|
30 url(r'^policy/privacy/$',
|
bgneal@593
|
31 FixedView.as_view(title='Privacy Policy', content_template='fixed/privacy.html'),
|
bgneal@593
|
32 name='privacy'),
|
bgneal@593
|
33 url(r'^policy/tos/$',
|
bgneal@593
|
34 FixedView.as_view(title='Terms of Service', content_template='fixed/tos.html'),
|
bgneal@593
|
35 name='tos'),
|
bgneal@593
|
36
|
bgneal@1028
|
37 url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
|
bgneal@579
|
38
|
bgneal@1028
|
39 url(r'^admin/password_reset/$', django.contrib.auth.views.password_reset, name='admin_password_reset'),
|
bgneal@1028
|
40 url(r'^admin/password_reset/done/$', django.contrib.auth.views.password_reset_done),
|
bgneal@1028
|
41 url(r'^reset/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$', django.contrib.auth.views.password_reset_confirm),
|
bgneal@1028
|
42 url(r'^reset/done/$', django.contrib.auth.views.password_reset_complete),
|
bgneal@579
|
43
|
bgneal@637
|
44 url(r'^store/$',
|
bgneal@1071
|
45 StoreView.as_view(),
|
bgneal@637
|
46 name='store'),
|
bgneal@637
|
47
|
bgneal@1028
|
48 url(r'^admin/', include(admin.site.urls)),
|
bgneal@1028
|
49 url(r'^accounts/', include('accounts.urls')),
|
bgneal@1028
|
50 url(r'^antispam/', include('antispam.urls')),
|
bgneal@1028
|
51 url(r'^bandmap/', include('bandmap.urls')),
|
bgneal@1028
|
52 url(r'^calendar/', include('gcalendar.urls')),
|
bgneal@1028
|
53 url(r'^comments/', include('comments.urls')),
|
bgneal@1028
|
54 url(r'^contact/', include('contact.urls')),
|
bgneal@1028
|
55 url(r'^contests/', include('contests.urls')),
|
bgneal@1028
|
56 url(r'^core/', include('core.urls')),
|
bgneal@1028
|
57 url(r'^donations/', include('donations.urls')),
|
bgneal@1028
|
58 url(r'^downloads/', include('downloads.urls')),
|
bgneal@176
|
59 url(r'^feeds/news/$',
|
bgneal@573
|
60 cache_page(6 * 60 * 60)(LatestNewsFeed()),
|
bgneal@176
|
61 name='feeds-news'),
|
bgneal@176
|
62 url(r'^feeds/forums/$',
|
bgneal@573
|
63 cache_page(5 * 60)(ForumsFeed()),
|
bgneal@176
|
64 {'forum_slug': None},
|
bgneal@176
|
65 'feeds-forum_combined'),
|
bgneal@176
|
66 url(r'^feeds/forums/(?P<forum_slug>[\w\d-]+)/$',
|
bgneal@573
|
67 cache_page(5 * 60)(ForumsFeed()),
|
bgneal@176
|
68 name='feeds-forum'),
|
bgneal@1028
|
69 url(r'^forums/', include('forums.urls')),
|
bgneal@1028
|
70 url(r'^irc/', include('irc.urls')),
|
bgneal@1028
|
71 url(r'^links/', include('weblinks.urls')),
|
bgneal@1028
|
72 url(r'^member_map/', include('membermap.urls')),
|
bgneal@1028
|
73 url(r'^messages/', include('messages.urls')),
|
bgneal@1028
|
74 url(r'^news/', include('news.urls')),
|
bgneal@1028
|
75 url(r'^oembed/', include('oembed.urls')),
|
bgneal@1028
|
76 url(r'^podcast/', include('podcast.urls')),
|
bgneal@1028
|
77 url(r'^polls/', include('polls.urls')),
|
bgneal@1028
|
78 url(r'^potd/', include('potd.urls')),
|
bgneal@1028
|
79 url(r'^profile/', include('bio.urls')),
|
bgneal@1028
|
80 url(r'^shout/', include('shoutbox.urls')),
|
bgneal@1028
|
81 url(r'^smiley/', include('smiley.urls')),
|
bgneal@1028
|
82 url(r'^user_photos/', include('user_photos.urls')),
|
bgneal@1028
|
83 url(r'^ygroup/', include('ygroup.urls')),
|
bgneal@1028
|
84 ]
|
gremmie@1
|
85
|
bgneal@219
|
86 # Haystack search views
|
bgneal@678
|
87
|
bgneal@678
|
88 sqs = SearchQuerySet().order_by('-pub_date')
|
bgneal@678
|
89
|
bgneal@1028
|
90 urlpatterns += [
|
bgneal@415
|
91 url(r'^search/$',
|
bgneal@763
|
92 search_view_factory(view_class=UserSearchView,
|
bgneal@763
|
93 form_class=CustomModelSearchForm,
|
bgneal@678
|
94 searchqueryset=sqs,
|
bgneal@678
|
95 load_all=True),
|
bgneal@219
|
96 name='haystack_search'),
|
bgneal@673
|
97 url(r'^search/ajax/$',
|
bgneal@763
|
98 search_view_factory(view_class=UserSearchView,
|
bgneal@763
|
99 template='search/search_ajax.html',
|
bgneal@678
|
100 form_class=CustomModelSearchForm,
|
bgneal@678
|
101 searchqueryset=sqs,
|
bgneal@678
|
102 load_all=True),
|
bgneal@673
|
103 name='haystack_search_ajax'),
|
bgneal@1028
|
104 ]
|
bgneal@219
|
105
|
bgneal@580
|
106 # For serving media files in development only:
|
bgneal@580
|
107 urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
|