From a041662443673387370ee2bf16f7bd2d589fffcb Mon Sep 17 00:00:00 2001 From: Magnus Hagander Date: Mon, 5 Mar 2018 13:13:32 +0100 Subject: [PATCH] Update settings and urls for django 1.11 --- django/archives/settings.py | 24 +++++------ django/archives/urls.py | 84 +++++++++++++++++++------------------ 2 files changed, 55 insertions(+), 53 deletions(-) diff --git a/django/archives/settings.py b/django/archives/settings.py index 79925b1..e465454 100644 --- a/django/archives/settings.py +++ b/django/archives/settings.py @@ -85,13 +85,6 @@ STATICFILES_DIRS = ( # Make this unique, and don't share it with anybody. SECRET_KEY = '7j9q&&!g26rkh!=g%1zb@20b^k^gmzy4=!mhzu2wesxb9b%16m' -# List of callables that know how to import templates from various sources. -TEMPLATE_LOADERS = ( - 'django.template.loaders.filesystem.Loader', - 'django.template.loaders.app_directories.Loader', -# 'django.template.loaders.eggs.Loader', -) - MIDDLEWARE_CLASSES = [ 'django.middleware.common.CommonMiddleware', # 'django.contrib.sessions.middleware.SessionMiddleware', @@ -102,11 +95,18 @@ MIDDLEWARE_CLASSES = [ ROOT_URLCONF = 'archives.urls' -TEMPLATE_DIRS = ( - # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". - # Always use forward slashes, even on Windows. - # Don't forget to use absolute paths, not relative paths. -) +TEMPLATES = [{ + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + ], + }, +}] + INSTALLED_APPS = [ # 'django.contrib.auth', diff --git a/django/archives/urls.py b/django/archives/urls.py index 4fa4a15..b450a4d 100644 --- a/django/archives/urls.py +++ b/django/archives/urls.py @@ -1,12 +1,16 @@ -from django.conf.urls import patterns, include, url +from django.conf.urls import include, url +from django.conf import settings # Uncomment the next two lines to enable the admin: # from django.contrib import admin # admin.autodiscover() -urlpatterns = patterns('', +import archives.mailarchives.views +import archives.mailarchives.api + +urlpatterns = [ # Examples: - # url(r'^$', 'archives.views.home', name='home'), + # url(r'^$', 'archives.views.home', name='home), # url(r'^archives/', include('archives.foo.urls')), # Uncomment the admin/doc line below to enable admin documentation: @@ -15,59 +19,57 @@ urlpatterns = patterns('', # Uncomment the next line to enable the admin: # url(r'^admin/', include(admin.site.urls)), - (r'^web_sync_timestamp$', 'archives.mailarchives.views.web_sync_timestamp'), - (r'^$', 'archives.mailarchives.views.index'), - (r'^list/$', 'archives.mailarchives.views.index'), - (r'^list/group/(\d+)/$', 'archives.mailarchives.views.groupindex'), + url(r'^web_sync_timestamp$', archives.mailarchives.views.web_sync_timestamp), + url(r'^$', archives.mailarchives.views.index), + url(r'^list/$', archives.mailarchives.views.index), + url(r'^list/group/(\d+)/$', archives.mailarchives.views.groupindex), # some user agents generate broken URLs that include <> - (r'^(?Pmessage-id/(|flat/|raw/))<(?P.*)>$', 'archives.mailarchives.views.re_redirect'), + url(r'^(?Pmessage-id/(|flat/|raw/))<(?P.*)>$', archives.mailarchives.views.re_redirect), # Match regular messages - (r'^message-id/([^/]+)$', 'archives.mailarchives.views.message'), - (r'^message-id/flat/([^/]+)$', 'archives.mailarchives.views.message_flat'), - (r'^message-id/raw/([^/]+)$', 'archives.mailarchives.views.message_raw'), - (r'^message-id/mbox/([^/]+)$', 'archives.mailarchives.views.message_mbox'), - (r'^list/([\w-]+)/mbox/([\w-]+)\.(\d{4})(\d{2})', 'archives.mailarchives.views.mbox'), + url(r'^message-id/([^/]+)$', archives.mailarchives.views.message), + url(r'^message-id/flat/([^/]+)$', archives.mailarchives.views.message_flat), + url(r'^message-id/raw/([^/]+)$', archives.mailarchives.views.message_raw), + url(r'^message-id/mbox/([^/]+)$', archives.mailarchives.views.message_mbox), + url(r'^list/([\w-]+)/mbox/([\w-]+)\.(\d{4})(\d{2})', archives.mailarchives.views.mbox), # Search - (r'^archives-search/', 'archives.mailarchives.views.search'), + url(r'^archives-search/', archives.mailarchives.views.search), # message-id with a slash needs to be redirected to one without it - (r'^(message-id/.*)/$', 'archives.mailarchives.views.slash_redirect'), + url(r'^(message-id/.*)/$', archives.mailarchives.views.slash_redirect), # Date etc indexes - (r'^list/([\w-]+)/$', 'archives.mailarchives.views.monthlist'), - (r'^list/([\w-]+)/(\d+)-(\d+)/$', 'archives.mailarchives.views.datelist'), - (r'^list/([\w-]+)/since/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})', 'archives.mailarchives.views.datelistsincetime'), - (r'^list/([\w-]+)/since/([^/]+)/$', 'archives.mailarchives.views.datelistsince'), - (r'^list/([\w-]+)/before/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})', 'archives.mailarchives.views.datelistbeforetime'), - (r'^list/([\w-]+)/before/([^/]+)$', 'archives.mailarchives.views.datelistbefore'), + url(r'^list/([\w-]+)/$', archives.mailarchives.views.monthlist), + url(r'^list/([\w-]+)/(\d+)-(\d+)/$', archives.mailarchives.views.datelist), + url(r'^list/([\w-]+)/since/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})', archives.mailarchives.views.datelistsincetime), + url(r'^list/([\w-]+)/since/([^/]+)/$', archives.mailarchives.views.datelistsince), + url(r'^list/([\w-]+)/before/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})', archives.mailarchives.views.datelistbeforetime), + url(r'^list/([\w-]+)/before/([^/]+)$', archives.mailarchives.views.datelistbefore), - (r'^message-id/attachment/(\d+)/.*$', 'archives.mailarchives.views.attachment'), + url(r'^message-id/attachment/(\d+)/.*$', archives.mailarchives.views.attachment), # API calls - (r'^list/([\w-]+)/latest.json$', 'archives.mailarchives.api.latest'), - (r'^message-id.json/(.+)$', 'archives.mailarchives.api.thread'), + url(r'^list/([\w-]+)/latest.json$', archives.mailarchives.api.latest), + url(r'^message-id.json/(.+)$', archives.mailarchives.api.thread), + url(r'^thread/(.+)/subscribe/$', archives.mailarchives.api.thread_subscribe), # Legacy forwarding from old archives site - (r'^message-id/legacy/([\w-]+)/(\d+)-(\d+)/msg(\d+).php$', 'archives.mailarchives.views.legacy'), + url(r'^message-id/legacy/([\w-]+)/(\d+)-(\d+)/msg(\d+).php$', archives.mailarchives.views.legacy), # Normally served off www.postgresql.org, but manually handled here for # development installs. - (r'^dyncss/base.css', 'archives.mailarchives.views.base_css'), - - # For non-public archives, support login - (r'^accounts/login/?$', 'archives.auth.login'), - (r'^accounts/logout/?$', 'archives.auth.logout'), - (r'^auth_receive/$', 'archives.auth.auth_receive'), - - - # Normally served by the webserver, but needed for development installs - (r'^media/(.*)$', 'django.views.static.serve', { - 'document_root': '../media', - }), - (r'^media-archives/(.*)$', 'django.views.static.serve', { - 'document_root': '../media', - }), -) + url(r'^dyncss/base.css', archives.mailarchives.views.base_css), +] + +if not settings.PUBLIC_ARCHIVES: + import archives.auth + + urlpatterns += [ + # For non-public archives, support login + url(r'^accounts/login/?$', archives.auth.login), + url(r'^accounts/logout/?$', archives.auth.logout), + url(r'^auth_receive/$', archives.auth.auth_receive), + ] + -- 2.39.5