urls.py 4.31 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 utils.views import private_thumbnails
27
import members
28

Thom Wiggers's avatar
Thom Wiggers committed
29
from .sitemaps import StaticViewSitemap
30
from activemembers.sitemaps import sitemap as activemembers_sitemap
Thom Wiggers's avatar
Thom Wiggers committed
31 32 33
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
34
from partners.sitemaps import sitemap as partners_sitemap
Thom Wiggers's avatar
Thom Wiggers committed
35 36 37 38

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

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