summaryrefslogtreecommitdiff
path: root/app/jrnl/urls.py
blob: aa01d694e24c41c6798f5173816b104ae6968b39 (plain)
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
from django.conf.urls import url
from django.views.generic.base import RedirectView

from . import views

app_name = "jrnl"

urlpatterns = [
    url(
        r'^feed.xml',
        views.JrnlRSSFeedView(),
        name="feed"
    ),
    url(
        r'(?P<year>\d{4})/(?P<month>\d{2})/(?P<slug>[-\w]+).txt$',
        views.EntryDetailViewTXT.as_view(),
        name="detail-txt"
    ),
    url(
        r'(?P<year>\d{4})/(?P<month>\d{2})/(?P<slug>[-\w]+)$',
        views.EntryDetailView.as_view(),
        name="detail"
    ),
    url(
        r'^(?P<year>[0-9]{4})/(?P<month>[0-9]{2})/$',
        views.EntryMonthArchiveView.as_view(month_format='%m'),
        name="list_month"
    ),
    url(
        r'(?P<year>\d{4})/$',
        views.EntryYearArchiveView.as_view(),
        name="list_year"
    ),
    url(
        r'(?P<slug>[-\w]+)/(?P<page>\d+)/$',
        views.EntryCountryList.as_view(),
        name="list_country"
    ),
    url(
        r'(?P<page>\d+)/$',
        views.EntryList.as_view(),
        name="list"
    ),
    # redirect /slug/ to /slug/1/ for live server
    url(
        r'(?P<slug>[-\w]+)/$',
        RedirectView.as_view(url="/jrnl/%(slug)s/1/", permanent=False),
        name="live_location_redirect"
    ),
    # redirect / to /1/ for live server
    url(
        r'',
        RedirectView.as_view(url="/jrnl/1/", permanent=False),
        name="live_redirect"
    ),
]