forked from TagesschuleElementa/www.tagesschule-elementa.ch
migrations
This commit is contained in:
@@ -80,17 +80,8 @@ class Form(forms.BaseForm):
|
||||
'for Django versions prior to 1.10.'
|
||||
)
|
||||
)
|
||||
session_timeout = forms.NumberField(
|
||||
'Timeout for users session, in seconds.',
|
||||
required=False,
|
||||
initial=(60 * 60 * 24 * 7 * 2),
|
||||
help_text=(
|
||||
'By default it\'s two weeks (Django default).'
|
||||
),
|
||||
)
|
||||
|
||||
def to_settings(self, data, settings):
|
||||
import django_cache_url
|
||||
import dj_database_url
|
||||
import warnings
|
||||
from functools import partial
|
||||
@@ -126,8 +117,6 @@ class Form(forms.BaseForm):
|
||||
),
|
||||
RuntimeWarning,
|
||||
)
|
||||
settings['DATABASES']['default'] = dj_database_url.parse(settings['DATABASE_URL'])
|
||||
|
||||
if not settings['CACHE_URL']:
|
||||
settings['CACHE_URL'] = 'locmem://'
|
||||
warnings.warn(
|
||||
@@ -136,7 +125,8 @@ class Form(forms.BaseForm):
|
||||
),
|
||||
RuntimeWarning,
|
||||
)
|
||||
settings['CACHES']['default'] = django_cache_url.parse(settings['CACHE_URL'])
|
||||
|
||||
settings['DATABASES']['default'] = dj_database_url.parse(settings['DATABASE_URL'])
|
||||
|
||||
settings['ROOT_URLCONF'] = env('ROOT_URLCONF', 'urls')
|
||||
settings['ADDON_URLS'].append('aldryn_django.urls')
|
||||
@@ -215,6 +205,7 @@ class Form(forms.BaseForm):
|
||||
self.logging_settings(settings, env=env)
|
||||
# Order matters, sentry settings rely on logging being configured.
|
||||
self.sentry_settings(settings, env=env)
|
||||
self.cache_settings(settings, env=env)
|
||||
self.storage_settings_for_media(settings, env=env)
|
||||
self.storage_settings_for_static(data, settings, env=env)
|
||||
self.email_settings(data, settings, env=env)
|
||||
@@ -226,8 +217,6 @@ class Form(forms.BaseForm):
|
||||
return settings
|
||||
|
||||
def domain_settings(self, data, settings, env):
|
||||
from aldryn_addons.utils import boolean_ish
|
||||
|
||||
settings['ALLOWED_HOSTS'] = env('ALLOWED_HOSTS', ['localhost', '*'])
|
||||
# will take a full config dict from ALDRYN_SITES_DOMAINS if available,
|
||||
# otherwise fall back to constructing the dict from DOMAIN,
|
||||
@@ -237,8 +226,6 @@ class Form(forms.BaseForm):
|
||||
settings['DOMAIN'] = domain
|
||||
|
||||
domains = env('ALDRYN_SITES_DOMAINS', {})
|
||||
permanent_redirect = boolean_ish(env('ALDRYN_SITES_REDIRECT_PERMANENT', False))
|
||||
|
||||
if not domains and domain:
|
||||
domain_aliases = [
|
||||
d.strip()
|
||||
@@ -259,7 +246,6 @@ class Form(forms.BaseForm):
|
||||
},
|
||||
}
|
||||
settings['ALDRYN_SITES_DOMAINS'] = domains
|
||||
settings['ALDRYN_SITES_REDIRECT_PERMANENT'] = permanent_redirect
|
||||
|
||||
# This is ensured again by aldryn-sites, but we already do it here
|
||||
# as we need the full list of domains later when configuring
|
||||
@@ -289,8 +275,6 @@ class Form(forms.BaseForm):
|
||||
'SECURE_PROXY_SSL_HEADER',
|
||||
('HTTP_X_FORWARDED_PROTO', 'https')
|
||||
)
|
||||
s['SESSION_COOKIE_AGE'] = env('SESSION_COOKIE_AGE', data.get('session_timeout') or 60 * 60 * 24 * 7 * 2)
|
||||
|
||||
# SESSION_COOKIE_HTTPONLY and SECURE_FRAME_DENY must be False for CMS
|
||||
# SESSION_COOKIE_HTTPONLY is handled by
|
||||
# django.contrib.sessions.middleware.SessionMiddleware
|
||||
@@ -371,7 +355,7 @@ class Form(forms.BaseForm):
|
||||
'stream': sys.stdout,
|
||||
},
|
||||
'null': {
|
||||
'class': 'django.utils.log.NullHandler',
|
||||
'class': 'logging.NullHandler',
|
||||
},
|
||||
},
|
||||
'loggers': {
|
||||
@@ -409,6 +393,12 @@ class Form(forms.BaseForm):
|
||||
'class': 'raven.contrib.django.raven_compat.handlers.SentryHandler',
|
||||
}
|
||||
|
||||
def cache_settings(self, settings, env):
|
||||
import django_cache_url
|
||||
cache_url = env('CACHE_URL')
|
||||
if cache_url:
|
||||
settings['CACHES']['default'] = django_cache_url.parse(cache_url)
|
||||
|
||||
def storage_settings_for_media(self, settings, env):
|
||||
import yurl
|
||||
from aldryn_django.storage import parse_storage_url
|
||||
@@ -505,44 +495,21 @@ class Form(forms.BaseForm):
|
||||
settings['SERVER_EMAIL'] = server_email
|
||||
|
||||
def i18n_settings(self, data, settings, env):
|
||||
from django.utils.translation import ugettext_lazy
|
||||
|
||||
settings['ALL_LANGUAGES'] = [
|
||||
(code, ugettext_lazy(name))
|
||||
for code, name in settings['LANGUAGES']
|
||||
]
|
||||
settings['ALL_LANGUAGES'] = list(settings['LANGUAGES'])
|
||||
settings['ALL_LANGUAGES_DICT'] = dict(settings['ALL_LANGUAGES'])
|
||||
|
||||
languages = [
|
||||
(code, settings['ALL_LANGUAGES_DICT'][code])
|
||||
for code in json.loads(data['languages'])
|
||||
]
|
||||
settings['LANGUAGE_CODE'] = languages[0][0]
|
||||
settings['USE_L10N'] = True
|
||||
settings['USE_I18N'] = True
|
||||
|
||||
def language_codes_to_tuple(codes):
|
||||
return [
|
||||
(code, settings['ALL_LANGUAGES_DICT'][code])
|
||||
for code in codes
|
||||
]
|
||||
langs_from_env = env('LANGUAGES', None)
|
||||
lang_codes_from_env = env('LANGUAGE_CODES', None)
|
||||
langs_from_form = json.loads(data['languages'])
|
||||
|
||||
if langs_from_env:
|
||||
settings['LANGUAGES'] = langs_from_env
|
||||
elif lang_codes_from_env:
|
||||
settings['LANGUAGES'] = language_codes_to_tuple(lang_codes_from_env)
|
||||
else:
|
||||
settings['LANGUAGES'] = language_codes_to_tuple(langs_from_form)
|
||||
|
||||
lang_code_from_env = env('LANGUAGE_CODE', None)
|
||||
if lang_code_from_env:
|
||||
settings['LANGUAGE_CODE'] = lang_code_from_env
|
||||
else:
|
||||
settings['LANGUAGE_CODE'] = settings['LANGUAGES'][0][0]
|
||||
|
||||
settings['LANGUAGES'] = languages
|
||||
settings['LOCALE_PATHS'] = [
|
||||
os.path.join(settings['BASE_DIR'], 'locale'),
|
||||
]
|
||||
|
||||
if len(settings['LANGUAGES']) <= 1:
|
||||
if len(languages) <= 1:
|
||||
settings['PREFIX_DEFAULT_LANGUAGE'] = not data['disable_default_language_prefix']
|
||||
else:
|
||||
# this is not supported for django versions < 1.10
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"disable_default_language_prefix": false,
|
||||
"enable_gis": false,
|
||||
"languages": "[\"en\"]",
|
||||
"session_timeout": 1209600,
|
||||
"languages": "[\"de\", \"en\"]",
|
||||
"use_manifeststaticfilesstorage": false
|
||||
}
|
||||
6
addons/djangocms-file/addon.json
Normal file
6
addons/djangocms-file/addon.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"installed-apps": [
|
||||
"djangocms_file"
|
||||
],
|
||||
"package-name": "djangocms-file"
|
||||
}
|
||||
29
addons/djangocms-file/aldryn_config.py
Normal file
29
addons/djangocms-file/aldryn_config.py
Normal file
@@ -0,0 +1,29 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from aldryn_client import forms
|
||||
|
||||
|
||||
def split_and_strip(string):
|
||||
return [item.strip() for item in string.split(',') if item]
|
||||
|
||||
|
||||
class Form(forms.BaseForm):
|
||||
templates = forms.CharField(
|
||||
'List of additional templates (comma separated)',
|
||||
required=False,
|
||||
)
|
||||
|
||||
def clean(self):
|
||||
data = super(Form, self).clean()
|
||||
|
||||
# prettify
|
||||
data['templates'] = ', '.join(split_and_strip(data['templates']))
|
||||
return data
|
||||
|
||||
def to_settings(self, data, settings):
|
||||
if data['templates']:
|
||||
settings['DJANGOCMS_FILE_TEMPLATES'] = [
|
||||
(item, item)
|
||||
for item in split_and_strip(data['templates'])
|
||||
]
|
||||
|
||||
return settings
|
||||
3
addons/djangocms-file/settings.json
Normal file
3
addons/djangocms-file/settings.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"templates": null
|
||||
}
|
||||
6
addons/djangocms-googlemap/addon.json
Normal file
6
addons/djangocms-googlemap/addon.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"installed-apps": [
|
||||
"djangocms_googlemap"
|
||||
],
|
||||
"package-name": "djangocms-googlemap"
|
||||
}
|
||||
35
addons/djangocms-googlemap/aldryn_config.py
Normal file
35
addons/djangocms-googlemap/aldryn_config.py
Normal file
@@ -0,0 +1,35 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from aldryn_client import forms
|
||||
|
||||
|
||||
def split_and_strip(string):
|
||||
return [item.strip() for item in string.split(',') if item]
|
||||
|
||||
|
||||
class Form(forms.BaseForm):
|
||||
templates = forms.CharField(
|
||||
'List of additional templates (comma separated)',
|
||||
required=False,
|
||||
)
|
||||
api_key = forms.CharField(
|
||||
'You need to provide a valid Google Maps API key '
|
||||
'https://developers.google.com/maps/documentation/javascript/get-api-key',
|
||||
required=True,
|
||||
)
|
||||
|
||||
def clean(self):
|
||||
data = super(Form, self).clean()
|
||||
# prettify
|
||||
data['templates'] = ', '.join(split_and_strip(data['templates']))
|
||||
return data
|
||||
|
||||
def to_settings(self, data, settings):
|
||||
if data['templates']:
|
||||
settings['DJANGOCMS_GOOGLEMAP_TEMPLATES'] = [
|
||||
(item, item)
|
||||
for item in split_and_strip(data['templates'])
|
||||
]
|
||||
if data['api_key']:
|
||||
settings['DJANGOCMS_GOOGLEMAP_API_KEY'] = data['api_key']
|
||||
|
||||
return settings
|
||||
4
addons/djangocms-googlemap/settings.json
Normal file
4
addons/djangocms-googlemap/settings.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"api_key": null,
|
||||
"templates": null
|
||||
}
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"templates": null
|
||||
"templates": ""
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"alignment": null,
|
||||
"alignment": "",
|
||||
"nesting": false,
|
||||
"ratio": null,
|
||||
"templates": null
|
||||
"ratio": "",
|
||||
"templates": ""
|
||||
}
|
||||
6
addons/djangocms-snippet/addon.json
Normal file
6
addons/djangocms-snippet/addon.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"installed-apps": [
|
||||
"djangocms_snippet"
|
||||
],
|
||||
"package-name": "djangocms-snippet"
|
||||
}
|
||||
27
addons/djangocms-snippet/aldryn_config.py
Normal file
27
addons/djangocms-snippet/aldryn_config.py
Normal file
@@ -0,0 +1,27 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from aldryn_client import forms
|
||||
|
||||
|
||||
class Form(forms.BaseForm):
|
||||
editor_theme = forms.CharField(
|
||||
'Custom editor theme, (e.g. "twilight", default: "github")',
|
||||
required=False,
|
||||
)
|
||||
editor_mode = forms.CharField(
|
||||
'Custom editor mode (e.g. "javascript", default: "html")',
|
||||
required=False,
|
||||
)
|
||||
enable_search = forms.CheckboxField(
|
||||
'Enable snippet content to be searchable.',
|
||||
required=False,
|
||||
initial=False,
|
||||
)
|
||||
|
||||
def to_settings(self, data, settings):
|
||||
if data['editor_theme']:
|
||||
settings['DJANGOCMS_SNIPPET_THEME'] = data['editor_theme']
|
||||
if data['editor_mode']:
|
||||
settings['DJANGOCMS_SNIPPET_MODE'] = data['editor_mode']
|
||||
if data['enable_search']:
|
||||
settings['DJANGOCMS_SNIPPET_SEARCH'] = data['enable_search']
|
||||
return settings
|
||||
5
addons/djangocms-snippet/settings.json
Normal file
5
addons/djangocms-snippet/settings.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"editor_mode": null,
|
||||
"editor_theme": null,
|
||||
"enable_search": false
|
||||
}
|
||||
6
addons/djangocms-style/addon.json
Normal file
6
addons/djangocms-style/addon.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"installed-apps": [
|
||||
"djangocms_style"
|
||||
],
|
||||
"package-name": "djangocms-style"
|
||||
}
|
||||
43
addons/djangocms-style/aldryn_config.py
Normal file
43
addons/djangocms-style/aldryn_config.py
Normal file
@@ -0,0 +1,43 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from aldryn_client import forms
|
||||
|
||||
|
||||
def split_and_strip(string):
|
||||
return [item.strip() for item in string.split(',') if item]
|
||||
|
||||
|
||||
class Form(forms.BaseForm):
|
||||
templates = forms.CharField(
|
||||
'List of additional templates (comma separated)',
|
||||
required=False,
|
||||
)
|
||||
class_names = forms.CharField(
|
||||
'List of classes (comma separated)',
|
||||
required=False,
|
||||
)
|
||||
tag_types = forms.CharField(
|
||||
'List of HTML tags (comma separated)',
|
||||
required=False,
|
||||
)
|
||||
|
||||
def clean(self):
|
||||
data = super(Form, self).clean()
|
||||
|
||||
# prettify
|
||||
data['templates'] = ', '.join(split_and_strip(data['templates']))
|
||||
data['class_names'] = ', '.join(split_and_strip(data['class_names']))
|
||||
data['tag_types'] = ', '.join(split_and_strip(data['tag_types']))
|
||||
return data
|
||||
|
||||
def to_settings(self, data, settings):
|
||||
if data['templates']:
|
||||
settings['DJANGOCMS_STYLE_TEMPLATES'] = [
|
||||
(item, item)
|
||||
for item in split_and_strip(data['templates'])
|
||||
]
|
||||
if data['class_names']:
|
||||
settings['DJANGOCMS_STYLE_CHOICES'] = split_and_strip(data['class_names'])
|
||||
if data['tag_types']:
|
||||
settings['DJANGOCMS_STYLE_TAGS'] = split_and_strip(data['tag_types'])
|
||||
|
||||
return settings
|
||||
5
addons/djangocms-style/settings.json
Normal file
5
addons/djangocms-style/settings.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"class_names": null,
|
||||
"tag_types": null,
|
||||
"templates": null
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"content_css": null,
|
||||
"style_set": null
|
||||
"content_css": "",
|
||||
"style_set": ""
|
||||
}
|
||||
6
addons/djangocms-video/addon.json
Normal file
6
addons/djangocms-video/addon.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"installed-apps": [
|
||||
"djangocms_video"
|
||||
],
|
||||
"package-name": "djangocms-video"
|
||||
}
|
||||
43
addons/djangocms-video/aldryn_config.py
Normal file
43
addons/djangocms-video/aldryn_config.py
Normal file
@@ -0,0 +1,43 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from aldryn_client import forms
|
||||
|
||||
|
||||
def split_and_strip(string):
|
||||
return [item.strip() for item in string.split(',') if item]
|
||||
|
||||
|
||||
class Form(forms.BaseForm):
|
||||
templates = forms.CharField(
|
||||
'List of additional templates (comma separated)',
|
||||
required=False,
|
||||
)
|
||||
extensions = forms.CharField(
|
||||
'List of allowed extensions, default "mp4, webm, ogv" when empty (comma separated)',
|
||||
required=False,
|
||||
)
|
||||
|
||||
def clean(self):
|
||||
data = super(Form, self).clean()
|
||||
|
||||
# older versions of this addon had a bug where the values would be
|
||||
# saved to settings.json as a list instead of a string.
|
||||
if isinstance(data['templates'], list):
|
||||
data['templates'] = ', '.join(data['templates'])
|
||||
if isinstance(data['extensions'], list):
|
||||
data['extensions'] = ', '.join(data['extensions'])
|
||||
|
||||
# prettify
|
||||
data['templates'] = ', '.join(split_and_strip(data['templates']))
|
||||
data['extensions'] = ', '.join(split_and_strip(data['extensions']))
|
||||
return data
|
||||
|
||||
def to_settings(self, data, settings):
|
||||
if data['templates']:
|
||||
settings['DJANGOCMS_VIDEO_TEMPLATES'] = [
|
||||
(item, item)
|
||||
for item in split_and_strip(data['templates'])
|
||||
]
|
||||
if data['extensions']:
|
||||
settings['DJANGOCMS_VIDEO_ALLOWED_EXTENSIONS'] = split_and_strip(data['extensions'])
|
||||
|
||||
return settings
|
||||
4
addons/djangocms-video/settings.json
Normal file
4
addons/djangocms-video/settings.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"extensions": null,
|
||||
"templates": null
|
||||
}
|
||||
Reference in New Issue
Block a user