Begin bootstapify.
[redakcja.git] / src / redakcja / settings / __init__.py
index b9bdf5d..61f2be5 100644 (file)
@@ -1,9 +1,11 @@
-# -*- coding: utf-8 -*-
-from __future__ import absolute_import
+# This file is part of FNP-Redakcja, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
 import os.path
-from redakcja.settings.defaults import *
-from redakcja.localsettings import *
-
+import sentry_sdk
+from sentry_sdk.integrations.django import DjangoIntegration
+from .defaults import *
+from ..localsettings import *
 
 PROJECT_ROOT = os.path.realpath(os.path.dirname(os.path.dirname(__file__)))
 
@@ -26,33 +28,34 @@ TEMPLATES = [
                 "redakcja.context_processors.settings", # this is instead of media
                 'django.template.context_processors.csrf',
                 "django.template.context_processors.request",
+                "django.contrib.messages.context_processors.messages",
             ],
         },
     },
 ]
 
-MIDDLEWARE_CLASSES = (
+MIDDLEWARE = [
     'django.middleware.common.CommonMiddleware',
     'django.middleware.csrf.CsrfViewMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
     'django.contrib.messages.middleware.MessageMiddleware',
 
     'django.contrib.auth.middleware.AuthenticationMiddleware',
-    'django_cas.middleware.CASMiddleware',
+    'django_cas_ng.middleware.CASMiddleware',
 
     'django.contrib.admindocs.middleware.XViewMiddleware',
     'fnp_django_pagination.middleware.PaginationMiddleware',
     'maintenancemode.middleware.MaintenanceModeMiddleware',
-)
+]
 
 if DEBUG:
-    MIDDLEWARE_CLASSES = (
+    MIDDLEWARE = [
         'debug_toolbar.middleware.DebugToolbarMiddleware',
-    ) + MIDDLEWARE_CLASSES
+    ] + MIDDLEWARE
 
 AUTHENTICATION_BACKENDS = (
     'django.contrib.auth.backends.ModelBackend',
-    'fnpdjango.auth_backends.AttrCASBackend',
+    'django_cas_ng.backends.CASBackend',
 )
 
 ROOT_URLCONF = 'redakcja.urls'
@@ -66,15 +69,15 @@ INSTALLED_APPS = (
     'django.contrib.sites',
     'django.contrib.admin',
     'django.contrib.admindocs',
-    'raven.contrib.django.raven_compat',
 
     'sorl.thumbnail',
     'fnp_django_pagination',
     'django_gravatar',
     'fileupload',
-    'kombu.transport.django',
     'pipeline',
     'fnpdjango',
+    'django_cas_ng',
+    'bootstrap4',
 
     'catalogue',
     'cover',
@@ -91,10 +94,6 @@ if DEBUG:
 
 LOGIN_REDIRECT_URL = '/documents/user'
 
-CELERY_EAGER_PROPAGATES_EXCEPTIONS = True
-CELERY_SEND_TASK_ERROR_EMAILS = True
-CELERY_ACCEPT_CONTENT = ['pickle']  # Remove when all tasks jsonable.
-
 MIN_COVER_SIZE = (915, 1270)
 
 STATICFILES_FINDERS = (
@@ -130,8 +129,8 @@ PIPELINE = {
                 'css/filelist.css',
             ),
             'output_filename': 'compressed/catalogue_styles.css',
-         },
-         'book': {
+        },
+        'book': {
             'source_filenames': (
                 'css/book.css',
             ),
@@ -181,7 +180,7 @@ PIPELINE = {
                 'js/wiki/view_column_diff.js',
             ),
             'output_filename': 'compressed/detail_scripts.js',
-         },
+        },
         'wiki_img': {
             'source_filenames': (
                 # libraries
@@ -213,7 +212,7 @@ PIPELINE = {
                 'js/wiki/view_column_diff.js',
             ),
             'output_filename': 'compressed/detail_img_scripts.js',
-         },
+        },
         'catalogue': {
             'source_filenames': (
                 'js/catalogue/catalogue.js',
@@ -221,8 +220,8 @@ PIPELINE = {
                 'email_mangler/email_mangler.js',
             ),
             'output_filename': 'compressed/catalogue_scripts.js',
-         },
-         'book': {
+        },
+        'book': {
             'source_filenames': (
                 'js/book_text/jquery.eventdelegation.js',
                 'js/book_text/jquery.scrollto.js',
@@ -241,3 +240,14 @@ PIPELINE = {
         }
     }
 }
+
+
+try:
+    SENTRY_DSN
+except NameError:
+    pass
+else:
+    sentry_sdk.init(
+        dsn=SENTRY_DSN,
+        integrations=[DjangoIntegration()]
+    )