From ae000458b114db6b3bd0200c29ff919bb63dda7f Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Thu, 19 Oct 2017 14:25:28 +0300 Subject: [PATCH] Add translation for role models and remove summary field from PresetRole --- webapp/admin.py | 2 +- webapp/management/commands/initialize.py | 12 +++++ webapp/migrations/0035_auto_20171019_1413.py | 47 ++++++++++++++++++++ webapp/models.py | 1 - webapp/translation.py | 22 +++++++++ 5 files changed, 82 insertions(+), 2 deletions(-) create mode 100644 webapp/migrations/0035_auto_20171019_1413.py diff --git a/webapp/admin.py b/webapp/admin.py index cb9afd4..0cfeb8c 100644 --- a/webapp/admin.py +++ b/webapp/admin.py @@ -22,5 +22,5 @@ admin.site.register(Role) admin.site.register(KaehmyForm) admin.site.register(KaehmyMessage) admin.site.register(CustomKaehmyRole) -admin.site.register(PresetKaehmyRole) +admin.site.register(PresetKaehmyRole, TranslationAdmin) admin.site.register(TelegramChannel) diff --git a/webapp/management/commands/initialize.py b/webapp/management/commands/initialize.py index 31073e3..3e63f20 100644 --- a/webapp/management/commands/initialize.py +++ b/webapp/management/commands/initialize.py @@ -59,9 +59,21 @@ class Command(BaseCommand): officials_group.permissions.add(*event_permissions) officials_group.permissions.add(*registration_permissions) + def create_webapp_administrator(self): + self.stdout.write("Creating webapp administrator group") + admins_group, created = Group.objects.get_or_create(name="webapp administrators") + if not created: + self.stdout.write('The group "webapp administrators" already existed ' + 'and was not therefore created') + + cts = ContentType.objects.filter(app_label='webapp') + permissions = Permission.objects.filter(content_type__in=cts) + admins_group.permissions.add(*permissions) + def handle(self, *args, **options): self.create_infoscreen_moderator() self.create_member_register_viewer() self.create_member_register_administrator() self.create_official() + self.create_webapp_administrator() self.stdout.write("Initialization successful") diff --git a/webapp/migrations/0035_auto_20171019_1413.py b/webapp/migrations/0035_auto_20171019_1413.py new file mode 100644 index 0000000..831e3d7 --- /dev/null +++ b/webapp/migrations/0035_auto_20171019_1413.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11 on 2017-10-19 11:13 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('webapp', '0034_auto_20171018_1017'), + ] + + operations = [ + migrations.AlterModelOptions( + name='official', + options={'verbose_name': 'Official', 'verbose_name_plural': 'Officials'}, + ), + migrations.AlterModelOptions( + name='role', + options={'verbose_name': 'Role', 'verbose_name_plural': 'Roles'}, + ), + migrations.RemoveField( + model_name='presetrole', + name='summary', + ), + migrations.AddField( + model_name='baserole', + name='name_en', + field=models.CharField(max_length=255, null=True, verbose_name='Name'), + ), + migrations.AddField( + model_name='baserole', + name='name_fi', + field=models.CharField(max_length=255, null=True, verbose_name='Name'), + ), + migrations.AddField( + model_name='presetrole', + name='description_en', + field=models.TextField(null=True, verbose_name='Description'), + ), + migrations.AddField( + model_name='presetrole', + name='description_fi', + field=models.TextField(null=True, verbose_name='Description'), + ), + ] diff --git a/webapp/models.py b/webapp/models.py index 12428b5..9e74274 100644 --- a/webapp/models.py +++ b/webapp/models.py @@ -120,7 +120,6 @@ class PresetRole(BaseRole): """Model representing a preset occupation in the guild.""" description = models.TextField(_('Description')) - summary = models.TextField(_('Summary')) class PresetKaehmyRole(PresetRole): diff --git a/webapp/translation.py b/webapp/translation.py index 36b4cfc..622f3cd 100644 --- a/webapp/translation.py +++ b/webapp/translation.py @@ -2,6 +2,7 @@ from modeltranslation.translator import register, TranslationOptions from webapp.models import BaseFeed, Feed, Tag, Event, Registration +from webapp.models import PresetRole, BaseRole, PresetKaehmyRole @register(BaseFeed) @@ -37,3 +38,24 @@ class RegistrationTranslationOptions(TranslationOptions): """Class for registration translation options.""" fields = ('name',) + + +@register(BaseRole) +class BaseRoleTranslationOptions(TranslationOptions): + """Class for base role translation options""" + + fields = ('name',) + + +@register(PresetRole) +class PresetRoleTranslationOptions(TranslationOptions): + """Class for PresetRole translation options.""" + + fields = ('description',) + + +@register(PresetKaehmyRole) +class PresetKaehmyRoleTranslationOptions(TranslationOptions): + """ Class for PresetKaehmyRole translation options""" + + fields = ()