123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- # -*- coding: utf-8 -*-
- # Generated by Django 1.11.15 on 2018-08-16 14:22
- from __future__ import unicode_literals
- from django.db import migrations
- from misago.conf.migrationutils import migrate_settings_group
- from misago.legal.models import Agreement as MisagoAgreement
- _ = lambda s: s
- LEGAL_SETTINGS = [
- 'terms_of_service_title',
- 'terms_of_service_link',
- 'terms_of_service',
- 'privacy_policy_title',
- 'privacy_policy_link',
- 'privacy_policy',
- ]
- def create_legal_settings_group(apps, schema_editor):
- Agreement = apps.get_model('misago_legal', 'Agreement')
- Setting = apps.get_model('misago_conf', 'Setting')
-
- legal_conf = {}
- for setting in Setting.objects.filter(setting__in=LEGAL_SETTINGS):
- legal_conf[setting.setting] = setting.dry_value
- if legal_conf['terms_of_service'] or legal_conf['terms_of_service_link']:
- Agreement.objects.create(
- type=MisagoAgreement.TYPE_TOS,
- title=legal_conf['terms_of_service_title'],
- link=legal_conf['terms_of_service_link'],
- text=legal_conf['terms_of_service'],
- is_active=True,
- )
- if legal_conf['privacy_policy'] or legal_conf['privacy_policy_link']:
- Agreement.objects.create(
- type=MisagoAgreement.TYPE_PRIVACY,
- title=legal_conf['privacy_policy_title'],
- link=legal_conf['privacy_policy_link'],
- text=legal_conf['privacy_policy'],
- is_active=True,
- )
- MisagoAgreement.objects.invalidate_cache()
- def delete_deprecated_settings(apps, schema_editor):
- migrate_settings_group(
- apps, {
- 'key': 'legal',
- 'name': _("Legal information"),
- 'description': _("Those settings allow you to set additional legal information for your forum."),
- 'settings': [
- {
- 'setting': 'forum_footnote',
- 'name': _("Footnote"),
- 'description': _("Short message displayed in forum footer."),
- 'legend': _("Forum footer"),
- 'field_extra': {
- 'max_length': 300,
- },
- 'is_public': True,
- },
- ],
- }
- )
- class Migration(migrations.Migration):
- dependencies = [
- ('misago_legal', '0002_agreement_useragreement'),
- ]
- operations = [
- migrations.RunPython(create_legal_settings_group),
- migrations.RunPython(delete_deprecated_settings),
- ]
|