# -*- coding: utf-8 -*- # Generated by Django 1.9.2 on 2016-03-02 01:22 from __future__ import unicode_literals import uuid import django.db.models.deletion import jsonfield.fields from django.conf import settings from django.db import migrations, models import openslides.utils.models def add_default_projector(apps, schema_editor): """ Adds default projector and activates clock. """ # We get the model from the versioned app registry; # if we directly import it, it will be the wrong version. Projector = apps.get_model("core", "Projector") projector_config = {} projector_config[uuid.uuid4().hex] = {"name": "core/clock", "stable": True} # We use bulk_create here because we do not want model's save() method # to be called because we do not want our autoupdate signals to be # triggered. Projector.objects.bulk_create([Projector(config=projector_config)]) class Migration(migrations.Migration): initial = True dependencies = [ ("mediafiles", "0001_initial"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name="ChatMessage", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("message", models.TextField()), ("timestamp", models.DateTimeField(auto_now_add=True)), ( "user", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, ), ), ], options={ "default_permissions": (), "permissions": (("can_use_chat", "Can use the chat"),), }, bases=(openslides.utils.models.RESTModelMixin, models.Model), ), migrations.CreateModel( name="ConfigStore", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("key", models.CharField(db_index=True, max_length=255, unique=True)), ("value", jsonfield.fields.JSONField()), ], options={ "default_permissions": (), "permissions": (("can_manage_config", "Can manage configuration"),), }, ), migrations.CreateModel( name="CustomSlide", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("title", models.CharField(max_length=256)), ("text", models.TextField(blank=True)), ("weight", models.IntegerField(default=0)), ( "attachments", models.ManyToManyField(blank=True, to="mediafiles.Mediafile"), ), ], options={"default_permissions": (), "ordering": ("weight", "title")}, bases=(openslides.utils.models.RESTModelMixin, models.Model), ), migrations.CreateModel( name="Projector", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("config", jsonfield.fields.JSONField()), ("scale", models.IntegerField(default=0)), ("scroll", models.IntegerField(default=0)), ], options={ "default_permissions": (), "permissions": ( ("can_see_projector", "Can see the projector"), ("can_manage_projector", "Can manage the projector"), ("can_see_frontpage", "Can see the front page"), ), }, bases=(openslides.utils.models.RESTModelMixin, models.Model), ), migrations.CreateModel( name="Tag", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("name", models.CharField(max_length=255, unique=True)), ], options={ "default_permissions": (), "permissions": (("can_manage_tags", "Can manage tags"),), "ordering": ("name",), }, bases=(openslides.utils.models.RESTModelMixin, models.Model), ), migrations.RunPython(add_default_projector), ]