urls.py 4.41 KB
Newer Older
Thom Wiggers's avatar
Thom Wiggers committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
"""thaliawebsite URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/dev/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.conf.urls import url, include
    2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))
"""
Thom Wiggers's avatar
Thom Wiggers committed
16
17
18
import os.path

from django.conf import settings
19
from django.conf.urls import url, include
Thom Wiggers's avatar
Thom Wiggers committed
20
from django.conf.urls.static import static
Thom Wiggers's avatar
Thom Wiggers committed
21
from django.contrib import admin
Thom Wiggers's avatar
Thom Wiggers committed
22
from django.contrib.sitemaps.views import sitemap
23
from django.views.generic import TemplateView
24
from django.views.i18n import JavaScriptCatalog
25

26
from events.feeds import DeprecationFeed
27
from utils.views import private_thumbnails
28
import members
29

Thom Wiggers's avatar
Thom Wiggers committed
30
from .sitemaps import StaticViewSitemap
31
from activemembers.sitemaps import sitemap as activemembers_sitemap
Thom Wiggers's avatar
Thom Wiggers committed
32
33
34
from members.sitemaps import sitemap as members_sitemap
from documents.sitemaps import sitemap as documents_sitemap
from thabloid.sitemaps import sitemap as thabloid_sitemap
Thom Wiggers's avatar
Thom Wiggers committed
35
from partners.sitemaps import sitemap as partners_sitemap
Thom Wiggers's avatar
Thom Wiggers committed
36
37
38
39

thalia_sitemap = {
    'main-static': StaticViewSitemap,
}
40
thalia_sitemap.update(activemembers_sitemap)
Thom Wiggers's avatar
Thom Wiggers committed
41
42
43
thalia_sitemap.update(members_sitemap)
thalia_sitemap.update(documents_sitemap)
thalia_sitemap.update(thabloid_sitemap)
Thom Wiggers's avatar
Thom Wiggers committed
44
thalia_sitemap.update(partners_sitemap)
Thom Wiggers's avatar
Thom Wiggers committed
45

Thom Wiggers's avatar
Thom Wiggers committed
46
urlpatterns = [
Luuk Scholten's avatar
Luuk Scholten committed
47
    url(r'^$', TemplateView.as_view(template_name='index.html'), name='index'),
Thom Wiggers's avatar
Thom Wiggers committed
48
    url(r'^admin/', admin.site.urls),
49
    url(r'^mailinglists/', include('mailinglists.urls', namespace='mailinglists')),
50
    url(r'^members/', include('members.urls', namespace='members')),
51
    url(r'^nyi$', TemplateView.as_view(template_name='status/nyi.html'), name='#'),
Thom Wiggers's avatar
Thom Wiggers committed
52
    url(r'^events/', include('events.urls', namespace='events')),
53
    url(r'^index\.php/events/ical/feed\.ics', DeprecationFeed()),
Sébastiaan Versteeg's avatar
Sébastiaan Versteeg committed
54
55
    url(r'^newsletters/', include('newsletters.urls',
                                  namespace='newsletters')),
Sébastiaan Versteeg's avatar
Sébastiaan Versteeg committed
56
57
    url(r'^association$', TemplateView.as_view(
        template_name='singlepages/association.html'), name='association'),
Joost Rijneveld's avatar
Joost Rijneveld committed
58
    url(r'^association/', include([
59
        url(r'^activemembers/', include('activemembers.urls', namespace='activemembers')),
Nienke's avatar
Nienke committed
60
        url(r'^merchandise/', include('merchandise.urls', namespace='merchandise')),
61
        url(r'^documents/', include('documents.urls', namespace='documents')),
62
        url(r'^become-a-member/', members.views.become_a_member, name='become-a-member'),
Thom Wiggers's avatar
Thom Wiggers committed
63
        url(r'^sister-associations', TemplateView.as_view(template_name='singlepages/sister_associations.html'), name='sister-associations'),
Joost Rijneveld's avatar
Joost Rijneveld committed
64
        url(r'^thabloid/', include('thabloid.urls', namespace='thabloid')),
Joost Rijneveld's avatar
Joost Rijneveld committed
65
    ])),
Sébastiaan Versteeg's avatar
Sébastiaan Versteeg committed
66
67
    url(r'^for-members$', TemplateView.as_view(
        template_name='singlepages/for_members.html'), name='for-members'),
Joost Rijneveld's avatar
Joost Rijneveld committed
68
    url(r'^for-members/', include([
69
        url(r'^become-active', TemplateView.as_view(template_name='singlepages/become_active.html'), name='become-active'),
70
        url(r'^photos/', include('photos.urls', namespace='photos')),
71
        url(r'^statistics/', members.views.statistics, name='statistics'),
Joost Rijneveld's avatar
Joost Rijneveld committed
72
    ])),
73
    url(r'^career/', include('partners.urls', namespace='partners')),
Joost Rijneveld's avatar
Joost Rijneveld committed
74
    url(r'^contact$', TemplateView.as_view(template_name='singlepages/contact.html'), name='contact'),
75
    url(r'^private-thumbnails/(?P<size_fit>\d+x\d+_[01])/(?P<path>.*)', private_thumbnails, name='private-thumbnails'),
76
77
    url(r'^api/', include([
        url(r'^', include('events.api.urls')),
78
        url(r'^', include('members.api.urls')),
79
    ])),
Jan's avatar
Jan committed
80
    url(r'^education/', include('education.urls', namespace='education')),
81
82
    # Default login helpers
    url(r'^', include('django.contrib.auth.urls')),
Thom Wiggers's avatar
Thom Wiggers committed
83
    url(r'^i18n/', include('django.conf.urls.i18n')),
Thom Wiggers's avatar
Thom Wiggers committed
84
85
86
    # Sitemap
    url(r'^sitemap\.xml$', sitemap, {'sitemaps': thalia_sitemap},
        name='django.contrib.sitemaps.views.sitemap'),
87
88
    # Dependencies
    url(r'^tinymce/', include('tinymce.urls')),
89
90
    # Javascript translation catalog
    url(r'jsi18n/$', JavaScriptCatalog.as_view(), name='javascript-catalog'),
91
] + static(settings.MEDIA_URL + 'public/',
Thom Wiggers's avatar
Thom Wiggers committed
92
           document_root=os.path.join(settings.MEDIA_ROOT, 'public'))