forked from PathagarBooks/pathagar
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathurls.py
89 lines (71 loc) · 3.02 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
import os
from django.conf.urls.defaults import patterns, include, url
from django.contrib import admin
admin.autodiscover()
from django.conf import settings
from pathagar.books.app_settings import BOOKS_STATICS_VIA_DJANGO
urlpatterns = patterns('',
# Book list:
(r'^$', 'pathagar.books.views.home',
{}, 'home'),
(r'^latest/$', 'pathagar.books.views.latest',
{}, 'latest'),
(r'^by-title/$', 'pathagar.books.views.by_title',
{}, 'by_title'),
(r'^by-author/$', 'pathagar.books.views.by_author',
{}, 'by_author'),
(r'^tags/(?P<tag>.+)/$', 'pathagar.books.views.by_tag',
{}, 'by_tag'),
(r'^by-popularity/$', 'pathagar.books.views.most_downloaded',
{}, 'most_downloaded'),
# Tag groups:
(r'^tags/groups.atom$', 'pathagar.books.views.tags_listgroups',
{}, 'tags_listgroups'),
# Book list Atom:
(r'^catalog.atom$', 'pathagar.books.views.root',
{'qtype': u'feed'}, 'root_feed'),
(r'^latest.atom$', 'pathagar.books.views.latest',
{'qtype': u'feed'}, 'latest_feed'),
(r'^by-title.atom$', 'pathagar.books.views.by_title',
{'qtype': u'feed'}, 'by_title_feed'),
(r'^by-author.atom$', 'pathagar.books.views.by_author',
{'qtype': u'feed'}, 'by_author_feed'),
(r'^tags/(?P<tag>.+).atom$', 'pathagar.books.views.by_tag',
{'qtype': u'feed'}, 'by_tag_feed'),
(r'^by-popularity.atom$', 'pathagar.books.views.most_downloaded',
{'qtype': u'feed'}, 'most_downloaded_feed'),
# Tag groups:
(r'^tags/groups/(?P<group_slug>[-\w]+)/$', 'pathagar.books.views.tags',
{}, 'tag_groups'),
(r'^tags/groups/(?P<group_slug>[-\w]+).atom$', 'pathagar.books.views.tags',
{'qtype': u'feed'}, 'tag_groups_feed'),
# Tag list:
(r'^tags/$', 'pathagar.books.views.tags', {}, 'tags'),
(r'^tags.atom$', 'pathagar.books.views.tags',
{'qtype': u'feed'}, 'tags_feed'),
# Add, view, edit and remove books:
(r'^book/add$', 'pathagar.books.views.add_book'),
(r'^book/(?P<book_id>\d+)/view$', 'pathagar.books.views.book_detail'),
(r'^book/(?P<book_id>\d+)/edit$', 'pathagar.books.views.edit_book'),
(r'^book/(?P<book_id>\d+)/remove$', 'pathagar.books.views.remove_book'),
(r'^book/(?P<book_id>\d+)/download$', 'pathagar.books.views.download_book'),
# Comments
(r'^comments/', include('django.contrib.comments.urls')),
# Add language:
(r'^add/dc_language|language/$', 'pathagar.books.views.add_language'),
# Auth login and logout:
(r'^accounts/login/$', 'django.contrib.auth.views.login'),
(r'^accounts/logout/$', 'django.contrib.auth.views.logout'),
# Admin:
(r'^admin/', include(admin.site.urls)),
)
if BOOKS_STATICS_VIA_DJANGO:
from django.views.static import serve
# Serve static media:
urlpatterns += patterns('',
url(r'^static_media/(?P<path>.*)$', serve,
{'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
# Book covers:
url(r'^covers/(?P<path>.*)$', serve,
{'document_root': os.path.join(settings.MEDIA_ROOT, 'covers')}),
)