forked from GrandComicsDatabase/gcd-django
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathurls.py
117 lines (102 loc) · 4.5 KB
/
urls.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# -*- coding: utf-8 -*-
from django.conf.urls import url, include
from django.conf import settings
from django.contrib import admin
from django.views.generic import base as bv
from django.shortcuts import redirect
from django.views.generic.base import TemplateView
from django.views.i18n import javascript_catalog
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from contact_form.views import ContactFormView
from apps.indexer.views import error_view
from apps.gcd.views import read_only
from apps.gcd.forms.contact import CustomContactForm
admin.autodiscover()
# Note that the structure of the various pattern lists is to facilitate
# future implementation of a read-only mode for the site. Such a mode
# would use the basic_patterns variable and include the gcd app, but not
# use the account views from the indexer app or include the other apps.
js_info_dict = {
'packages': ('apps.gcd',),
}
basic_patterns = [
# Read-only URLS: basic messages and the gcd display pages.
url(r'^privacy/$',
bv.TemplateView.as_view(template_name='gcd/privacy.html'),
name='privacy'),
url(r'gcd-error/$', error_view, name='error'),
url(r'^donate/$',
bv.TemplateView.as_view(template_name='gcd/donate/donate.html'),
name='donate'),
url(r'^donate/thanks/$',
bv.TemplateView.as_view(template_name='gcd/donate/thanks.html'),
name='donate_thanks'),
url(r'^jsi18n/$', javascript_catalog, js_info_dict,
name='javascript-catalog'),
url(r'^contact/$',
ContactFormView.as_view(
form_class=CustomContactForm
),
name='contact_form'),
url(r'^contact/sent/$',
TemplateView.as_view(
template_name='contact_form/contact_form_sent.html'
),
name='contact_form_sent'),
]
read_only_patterns = [
url(r'^queues/editing/$', read_only.dummy,
name='editing'),
url(r'^upload_cover/(?P<issue_id>\d+)/$', read_only.dummy,
name='upload_cover'),
url(r'^edit_covers/(?P<issue_id>\d+)/$', read_only.dummy,
name='edit_covers'),
url(r'^(?P<model_name>\w+)/(?P<id>\d+)/upload_image/(?P<image_type>\w+)/$',
read_only.dummy, name='upload_image'),
url(r'^(?P<model_name>\w+)/(?P<id>\d+)/replace_image/(?P<image_id>\d+)/$',
read_only.dummy, name='replace_image'),
url(r'^(?P<model_name>\w+)/(?P<id>\d+)/delete/$', read_only.dummy,
name='delete_revision'),
url(r'^changeset/(?P<id>\d+)/compare/$', read_only.dummy, name='compare'),
]
if settings.SITE_DOWN:
class SiteDownTemplateView(TemplateView):
def get_context_data(self, **kwargs):
context = super(SiteDownTemplateView, self).get_context_data(**kwargs)
context.update({'settings': settings})
return context
urlpatterns = [
url(r'^site-down/$', SiteDownTemplateView.as_view(
template_name= 'site_down.html')),
url(r'^.*$', lambda request: redirect('/site-down/')),
]
elif settings.NO_OI:
urlpatterns = basic_patterns + \
[url(r'^', include('apps.gcd.urls'))] + \
[url(r'^', include('apps.stats.urls'))] + \
[url(r'^', include('apps.indexer.urls'))] + \
read_only_patterns
elif settings.MYCOMICS:
urlpatterns = basic_patterns + \
[url(r'^', include('apps.mycomics.urls'))] + \
[url(r'^', include('apps.gcd.urls'))] + \
[url(r'^', include('apps.stats.urls'))] + \
[url(r'^', include('apps.select.urls'))] + \
[url(r'^', include('apps.indexer.urls'))] + \
read_only_patterns
else:
urlpatterns = basic_patterns + \
[url(r'^', include('apps.gcd.urls'))] + \
[url(r'^', include('apps.stats.urls'))] + \
[url(r'^', include('apps.indexer.urls'))] + \
[url(r'^', include('apps.select.urls'))] + \
[url(r'^', include('apps.oi.urls')),
url(r'^voting/', include('apps.voting.urls')),
url(r'^admin/templatesadmin/', include('templatesadmin.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^projects/', include('apps.projects.urls')),
]
if 'django_rq' in settings.INSTALLED_APPS:
urlpatterns += [url(r'^django-rq/', include('django_rq.urls')),]
# This only has any effect when DEBUG is True.
urlpatterns += staticfiles_urlpatterns()