Merge pull request #2021 from normanjaeckel/SquishMigrations
Squish migrations
This commit is contained in:
commit
7e6ff44696
@ -1,3 +1,7 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-03-02 01:23
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import django.db.models.deletion
|
import django.db.models.deletion
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.db import migrations, models
|
from django.db import migrations, models
|
||||||
@ -7,32 +11,35 @@ import openslides.utils.models
|
|||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
initial = True
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
|
||||||
('contenttypes', '0002_remove_content_type_name'),
|
('contenttypes', '0002_remove_content_type_name'),
|
||||||
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Item',
|
name='Item',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('item_number', models.CharField(blank=True, max_length=255)),
|
('item_number', models.CharField(blank=True, max_length=255)),
|
||||||
('comment', models.TextField(null=True, blank=True)),
|
('comment', models.TextField(blank=True, null=True)),
|
||||||
('closed', models.BooleanField(default=False)),
|
('closed', models.BooleanField(default=False)),
|
||||||
('type', models.IntegerField(choices=[(1, 'Agenda item'), (2, 'Hidden item')], default=1)),
|
('type', models.IntegerField(choices=[(1, 'Agenda item'), (2, 'Hidden item')], default=2)),
|
||||||
('duration', models.CharField(null=True, blank=True, max_length=5)),
|
('duration', models.CharField(blank=True, max_length=5, null=True)),
|
||||||
('weight', models.IntegerField(default=0)),
|
('weight', models.IntegerField(default=10000)),
|
||||||
('object_id', models.PositiveIntegerField(null=True, blank=True)),
|
('object_id', models.PositiveIntegerField(blank=True, null=True)),
|
||||||
('speaker_list_closed', models.BooleanField(default=False)),
|
('speaker_list_closed', models.BooleanField(default=False)),
|
||||||
('content_type', models.ForeignKey(
|
('content_type', models.ForeignKey(
|
||||||
on_delete=django.db.models.deletion.SET_NULL, blank=True, null=True, to='contenttypes.ContentType')),
|
blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='contenttypes.ContentType')),
|
||||||
('parent', models.ForeignKey(
|
('parent', models.ForeignKey(
|
||||||
related_name='children', blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda.Item')),
|
blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='children', to='agenda.Item')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (
|
'permissions': (
|
||||||
('can_see', 'Can see agenda'), ('can_manage', 'Can manage agenda'),
|
('can_see', 'Can see agenda'),
|
||||||
|
('can_manage', 'Can manage agenda'),
|
||||||
('can_see_hidden_items', 'Can see hidden items and time scheduling of agenda')),
|
('can_see_hidden_items', 'Can see hidden items and time scheduling of agenda')),
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
},
|
},
|
||||||
@ -41,12 +48,12 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Speaker',
|
name='Speaker',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('begin_time', models.DateTimeField(null=True)),
|
('begin_time', models.DateTimeField(null=True)),
|
||||||
('end_time', models.DateTimeField(null=True)),
|
('end_time', models.DateTimeField(null=True)),
|
||||||
('weight', models.IntegerField(null=True)),
|
('weight', models.IntegerField(null=True)),
|
||||||
('item', models.ForeignKey(related_name='speakers', to='agenda.Item')),
|
('item', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='speakers', to='agenda.Item')),
|
||||||
('user', models.ForeignKey(to=settings.AUTH_USER_MODEL)),
|
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (('can_be_speaker', 'Can put oneself on the list of speakers'),),
|
'permissions': (('can_be_speaker', 'Can put oneself on the list of speakers'),),
|
||||||
|
@ -1,19 +0,0 @@
|
|||||||
# -*- coding: utf-8 -*-
|
|
||||||
from __future__ import unicode_literals
|
|
||||||
|
|
||||||
from django.db import migrations, models
|
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
|
||||||
|
|
||||||
dependencies = [
|
|
||||||
('agenda', '0001_initial'),
|
|
||||||
]
|
|
||||||
|
|
||||||
operations = [
|
|
||||||
migrations.AlterField(
|
|
||||||
model_name='item',
|
|
||||||
name='type',
|
|
||||||
field=models.IntegerField(default=2, choices=[(1, 'Agenda item'), (2, 'Hidden item')]),
|
|
||||||
),
|
|
||||||
]
|
|
@ -1,20 +0,0 @@
|
|||||||
# -*- coding: utf-8 -*-
|
|
||||||
# Generated by Django 1.9.1 on 2016-01-27 21:36
|
|
||||||
from __future__ import unicode_literals
|
|
||||||
|
|
||||||
from django.db import migrations, models
|
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
|
||||||
|
|
||||||
dependencies = [
|
|
||||||
('agenda', '0002_auto_20160122_2318'),
|
|
||||||
]
|
|
||||||
|
|
||||||
operations = [
|
|
||||||
migrations.AlterField(
|
|
||||||
model_name='item',
|
|
||||||
name='weight',
|
|
||||||
field=models.IntegerField(default=10000),
|
|
||||||
),
|
|
||||||
]
|
|
@ -1,3 +1,8 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-03-02 01:22
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
import django.db.models.deletion
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.db import migrations, models
|
from django.db import migrations, models
|
||||||
|
|
||||||
@ -6,6 +11,8 @@ import openslides.utils.models
|
|||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
initial = True
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
('core', '0001_initial'),
|
('core', '0001_initial'),
|
||||||
@ -15,7 +22,7 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Assignment',
|
name='Assignment',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('title', models.CharField(max_length=100)),
|
('title', models.CharField(max_length=100)),
|
||||||
('description', models.TextField(blank=True)),
|
('description', models.TextField(blank=True)),
|
||||||
('open_posts', models.PositiveSmallIntegerField()),
|
('open_posts', models.PositiveSmallIntegerField()),
|
||||||
@ -23,20 +30,22 @@ class Migration(migrations.Migration):
|
|||||||
('phase', models.IntegerField(choices=[(0, 'Searching for candidates'), (1, 'Voting'), (2, 'Finished')], default=0)),
|
('phase', models.IntegerField(choices=[(0, 'Searching for candidates'), (1, 'Voting'), (2, 'Finished')], default=0)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (
|
|
||||||
('can_see', 'Can see elections'), ('can_nominate_other', 'Can nominate another participant'),
|
|
||||||
('can_nominate_self', 'Can nominate oneself'), ('can_manage', 'Can manage elections')),
|
|
||||||
'verbose_name': 'Election',
|
'verbose_name': 'Election',
|
||||||
'ordering': ('title',),
|
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
|
'permissions': (
|
||||||
|
('can_see', 'Can see elections'),
|
||||||
|
('can_nominate_other', 'Can nominate another participant'),
|
||||||
|
('can_nominate_self', 'Can nominate oneself'),
|
||||||
|
('can_manage', 'Can manage elections')),
|
||||||
|
'ordering': ('title',),
|
||||||
},
|
},
|
||||||
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
||||||
),
|
),
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='AssignmentOption',
|
name='AssignmentOption',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('candidate', models.ForeignKey(to=settings.AUTH_USER_MODEL)),
|
('candidate', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -46,14 +55,14 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='AssignmentPoll',
|
name='AssignmentPoll',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('votesvalid', openslides.utils.models.MinMaxIntegerField(null=True, blank=True)),
|
('votesvalid', openslides.utils.models.MinMaxIntegerField(blank=True, null=True)),
|
||||||
('votesinvalid', openslides.utils.models.MinMaxIntegerField(null=True, blank=True)),
|
('votesinvalid', openslides.utils.models.MinMaxIntegerField(blank=True, null=True)),
|
||||||
('votescast', openslides.utils.models.MinMaxIntegerField(null=True, blank=True)),
|
('votescast', openslides.utils.models.MinMaxIntegerField(blank=True, null=True)),
|
||||||
('published', models.BooleanField(default=False)),
|
('published', models.BooleanField(default=False)),
|
||||||
('yesnoabstain', models.BooleanField(default=False)),
|
('yesnoabstain', models.BooleanField(default=False)),
|
||||||
('description', models.CharField(blank=True, max_length=79)),
|
('description', models.CharField(blank=True, max_length=79)),
|
||||||
('assignment', models.ForeignKey(related_name='polls', to='assignments.Assignment')),
|
('assignment', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='polls', to='assignments.Assignment')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -63,10 +72,11 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='AssignmentRelatedUser',
|
name='AssignmentRelatedUser',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('elected', models.BooleanField(default=False)),
|
('elected', models.BooleanField(default=False)),
|
||||||
('assignment', models.ForeignKey(related_name='assignment_related_users', to='assignments.Assignment')),
|
('assignment', models.ForeignKey(
|
||||||
('user', models.ForeignKey(to=settings.AUTH_USER_MODEL)),
|
on_delete=django.db.models.deletion.CASCADE, related_name='assignment_related_users', to='assignments.Assignment')),
|
||||||
|
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -76,10 +86,10 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='AssignmentVote',
|
name='AssignmentVote',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('weight', models.IntegerField(null=True, default=1)),
|
('weight', models.IntegerField(default=1, null=True)),
|
||||||
('value', models.CharField(null=True, max_length=255)),
|
('value', models.CharField(max_length=255, null=True)),
|
||||||
('option', models.ForeignKey(related_name='votes', to='assignments.AssignmentOption')),
|
('option', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='votes', to='assignments.AssignmentOption')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -89,12 +99,12 @@ class Migration(migrations.Migration):
|
|||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='assignmentoption',
|
model_name='assignmentoption',
|
||||||
name='poll',
|
name='poll',
|
||||||
field=models.ForeignKey(related_name='options', to='assignments.AssignmentPoll'),
|
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='options', to='assignments.AssignmentPoll'),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='assignment',
|
model_name='assignment',
|
||||||
name='related_users',
|
name='related_users',
|
||||||
field=models.ManyToManyField(to=settings.AUTH_USER_MODEL, through='assignments.AssignmentRelatedUser'),
|
field=models.ManyToManyField(through='assignments.AssignmentRelatedUser', to=settings.AUTH_USER_MODEL),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='assignment',
|
model_name='assignment',
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-03-02 01:22
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import uuid
|
import uuid
|
||||||
|
|
||||||
|
import django.db.models.deletion
|
||||||
import jsonfield.fields
|
import jsonfield.fields
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.db import migrations, models
|
from django.db import migrations, models
|
||||||
@ -23,7 +28,10 @@ def add_default_projector(apps, schema_editor):
|
|||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
initial = True
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
('mediafiles', '0001_initial'),
|
||||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -31,36 +39,37 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='ChatMessage',
|
name='ChatMessage',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('message', models.TextField()),
|
('message', models.TextField()),
|
||||||
('timestamp', models.DateTimeField(auto_now_add=True)),
|
('timestamp', models.DateTimeField(auto_now_add=True)),
|
||||||
('user', models.ForeignKey(to=settings.AUTH_USER_MODEL)),
|
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (('can_use_chat', 'Can use the chat'),),
|
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
|
'permissions': (('can_use_chat', 'Can use the chat'),),
|
||||||
},
|
},
|
||||||
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
||||||
),
|
),
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='ConfigStore',
|
name='ConfigStore',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('key', models.CharField(db_index=True, unique=True, max_length=255)),
|
('key', models.CharField(db_index=True, max_length=255, unique=True)),
|
||||||
('value', jsonfield.fields.JSONField()),
|
('value', jsonfield.fields.JSONField()),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (('can_manage_config', 'Can manage configuration'),),
|
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
|
'permissions': (('can_manage_config', 'Can manage configuration'),),
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='CustomSlide',
|
name='CustomSlide',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('title', models.CharField(max_length=256)),
|
('title', models.CharField(max_length=256)),
|
||||||
('text', models.TextField(blank=True)),
|
('text', models.TextField(blank=True)),
|
||||||
('weight', models.IntegerField(default=0)),
|
('weight', models.IntegerField(default=0)),
|
||||||
|
('attachments', models.ManyToManyField(blank=True, to='mediafiles.Mediafile')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -71,28 +80,29 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Projector',
|
name='Projector',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('config', jsonfield.fields.JSONField()),
|
('config', jsonfield.fields.JSONField()),
|
||||||
('scale', models.IntegerField(default=0)),
|
('scale', models.IntegerField(default=0)),
|
||||||
('scroll', models.IntegerField(default=0)),
|
('scroll', models.IntegerField(default=0)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (
|
|
||||||
('can_see_projector', 'Can see the projector'), ('can_manage_projector', 'Can manage the projector'),
|
|
||||||
('can_see_dashboard', 'Can see the dashboard')),
|
|
||||||
'default_permissions': (),
|
'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),
|
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
||||||
),
|
),
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Tag',
|
name='Tag',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('name', models.CharField(unique=True, max_length=255)),
|
('name', models.CharField(max_length=255, unique=True)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (('can_manage_tags', 'Can manage tags'),),
|
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
|
'permissions': (('can_manage_tags', 'Can manage tags'),),
|
||||||
'ordering': ('name',),
|
'ordering': ('name',),
|
||||||
},
|
},
|
||||||
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
# -*- coding: utf-8 -*-
|
|
||||||
from __future__ import unicode_literals
|
|
||||||
|
|
||||||
from django.db import migrations, models
|
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
|
||||||
|
|
||||||
dependencies = [
|
|
||||||
('mediafiles', '0002_auto_20160110_0103'),
|
|
||||||
('core', '0001_initial'),
|
|
||||||
]
|
|
||||||
|
|
||||||
operations = [
|
|
||||||
migrations.AddField(
|
|
||||||
model_name='customslide',
|
|
||||||
name='attachments',
|
|
||||||
field=models.ManyToManyField(to='mediafiles.Mediafile', blank=True),
|
|
||||||
),
|
|
||||||
]
|
|
@ -1,21 +0,0 @@
|
|||||||
# -*- coding: utf-8 -*-
|
|
||||||
from __future__ import unicode_literals
|
|
||||||
|
|
||||||
from django.db import migrations
|
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
|
||||||
|
|
||||||
dependencies = [
|
|
||||||
('core', '0002_customslide_attachments'),
|
|
||||||
]
|
|
||||||
|
|
||||||
operations = [
|
|
||||||
migrations.AlterModelOptions(
|
|
||||||
name='projector',
|
|
||||||
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'))},
|
|
||||||
),
|
|
||||||
]
|
|
@ -1,3 +1,7 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-03-02 01:22
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import django.db.models.deletion
|
import django.db.models.deletion
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.db import migrations, models
|
from django.db import migrations, models
|
||||||
@ -7,6 +11,8 @@ import openslides.utils.models
|
|||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
initial = True
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
]
|
]
|
||||||
@ -15,15 +21,14 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Mediafile',
|
name='Mediafile',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('mediafile', models.FileField(upload_to='file')),
|
('mediafile', models.FileField(upload_to='file')),
|
||||||
('title', models.CharField(blank=True, unique=True, max_length=255)),
|
('title', models.CharField(max_length=255, unique=True)),
|
||||||
('timestamp', models.DateTimeField(auto_now_add=True)),
|
('timestamp', models.DateTimeField(auto_now_add=True)),
|
||||||
('uploader', models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, null=True, to=settings.AUTH_USER_MODEL)),
|
('uploader', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (
|
'permissions': (('can_see', 'Can see the list of files'), ('can_upload', 'Can upload files'), ('can_manage', 'Can manage files')),
|
||||||
('can_see', 'Can see the list of files'), ('can_upload', 'Can upload files'), ('can_manage', 'Can manage files')),
|
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
'ordering': ['title'],
|
'ordering': ['title'],
|
||||||
},
|
},
|
||||||
|
@ -1,19 +0,0 @@
|
|||||||
# -*- coding: utf-8 -*-
|
|
||||||
from __future__ import unicode_literals
|
|
||||||
|
|
||||||
from django.db import migrations, models
|
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
|
||||||
|
|
||||||
dependencies = [
|
|
||||||
('mediafiles', '0001_initial'),
|
|
||||||
]
|
|
||||||
|
|
||||||
operations = [
|
|
||||||
migrations.AlterField(
|
|
||||||
model_name='mediafile',
|
|
||||||
name='title',
|
|
||||||
field=models.CharField(max_length=255, unique=True),
|
|
||||||
),
|
|
||||||
]
|
|
@ -1,3 +1,7 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-03-02 01:22
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import django.db.models.deletion
|
import django.db.models.deletion
|
||||||
import jsonfield.fields
|
import jsonfield.fields
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
@ -8,9 +12,11 @@ import openslides.utils.models
|
|||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
initial = True
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
|
||||||
('mediafiles', '0001_initial'),
|
('mediafiles', '0001_initial'),
|
||||||
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
('core', '0001_initial'),
|
('core', '0001_initial'),
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -18,28 +24,30 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Category',
|
name='Category',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('name', models.CharField(max_length=255)),
|
('name', models.CharField(max_length=255)),
|
||||||
('prefix', models.CharField(blank=True, max_length=32)),
|
('prefix', models.CharField(blank=True, max_length=32)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
|
||||||
'ordering': ['prefix'],
|
'ordering': ['prefix'],
|
||||||
|
'default_permissions': (),
|
||||||
},
|
},
|
||||||
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
||||||
),
|
),
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Motion',
|
name='Motion',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('identifier', models.CharField(null=True, unique=True, blank=True, max_length=255)),
|
('identifier', models.CharField(blank=True, max_length=255, null=True, unique=True)),
|
||||||
('identifier_number', models.IntegerField(null=True)),
|
('identifier_number', models.IntegerField(null=True)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (
|
|
||||||
('can_see', 'Can see motions'), ('can_create', 'Can create motions'),
|
|
||||||
('can_support', 'Can support motions'), ('can_manage', 'Can manage motions')),
|
|
||||||
'verbose_name': 'Motion',
|
'verbose_name': 'Motion',
|
||||||
|
'permissions': (
|
||||||
|
('can_see', 'Can see motions'),
|
||||||
|
('can_create', 'Can create motions'),
|
||||||
|
('can_support', 'Can support motions'),
|
||||||
|
('can_manage', 'Can manage motions')),
|
||||||
'ordering': ('identifier',),
|
'ordering': ('identifier',),
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
},
|
},
|
||||||
@ -48,22 +56,22 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='MotionLog',
|
name='MotionLog',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('message_list', jsonfield.fields.JSONField()),
|
('message_list', jsonfield.fields.JSONField()),
|
||||||
('time', models.DateTimeField(auto_now=True)),
|
('time', models.DateTimeField(auto_now=True)),
|
||||||
('motion', models.ForeignKey(related_name='log_messages', to='motions.Motion')),
|
('motion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='log_messages', to='motions.Motion')),
|
||||||
('person', models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, null=True, to=settings.AUTH_USER_MODEL)),
|
('person', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
|
||||||
'ordering': ['-time'],
|
'ordering': ['-time'],
|
||||||
|
'default_permissions': (),
|
||||||
},
|
},
|
||||||
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
||||||
),
|
),
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='MotionOption',
|
name='MotionOption',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -73,11 +81,11 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='MotionPoll',
|
name='MotionPoll',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('votesvalid', openslides.utils.models.MinMaxIntegerField(null=True, blank=True)),
|
('votesvalid', openslides.utils.models.MinMaxIntegerField(blank=True, null=True)),
|
||||||
('votesinvalid', openslides.utils.models.MinMaxIntegerField(null=True, blank=True)),
|
('votesinvalid', openslides.utils.models.MinMaxIntegerField(blank=True, null=True)),
|
||||||
('votescast', openslides.utils.models.MinMaxIntegerField(null=True, blank=True)),
|
('votescast', openslides.utils.models.MinMaxIntegerField(blank=True, null=True)),
|
||||||
('motion', models.ForeignKey(related_name='polls', to='motions.Motion')),
|
('motion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='polls', to='motions.Motion')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -87,13 +95,13 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='MotionVersion',
|
name='MotionVersion',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('version_number', models.PositiveIntegerField(default=1)),
|
('version_number', models.PositiveIntegerField(default=1)),
|
||||||
('title', models.CharField(max_length=255)),
|
('title', models.CharField(max_length=255)),
|
||||||
('text', models.TextField()),
|
('text', models.TextField()),
|
||||||
('reason', models.TextField(null=True, blank=True)),
|
('reason', models.TextField(blank=True, null=True)),
|
||||||
('creation_time', models.DateTimeField(auto_now=True)),
|
('creation_time', models.DateTimeField(auto_now=True)),
|
||||||
('motion', models.ForeignKey(related_name='versions', to='motions.Motion')),
|
('motion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='versions', to='motions.Motion')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -103,10 +111,10 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='MotionVote',
|
name='MotionVote',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('weight', models.IntegerField(null=True, default=1)),
|
('weight', models.IntegerField(default=1, null=True)),
|
||||||
('value', models.CharField(null=True, max_length=255)),
|
('value', models.CharField(max_length=255, null=True)),
|
||||||
('option', models.ForeignKey(to='motions.MotionOption')),
|
('option', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='motions.MotionOption')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -116,7 +124,7 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='State',
|
name='State',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('name', models.CharField(max_length=255)),
|
('name', models.CharField(max_length=255)),
|
||||||
('action_word', models.CharField(max_length=255)),
|
('action_word', models.CharField(max_length=255)),
|
||||||
('css_class', models.CharField(default='primary', max_length=255)),
|
('css_class', models.CharField(default='primary', max_length=255)),
|
||||||
@ -137,10 +145,10 @@ class Migration(migrations.Migration):
|
|||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Workflow',
|
name='Workflow',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(auto_created=True, serialize=False, primary_key=True, verbose_name='ID')),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('name', models.CharField(max_length=255)),
|
('name', models.CharField(max_length=255)),
|
||||||
('first_state', models.OneToOneField(
|
('first_state', models.OneToOneField(
|
||||||
related_name='+', null=True, on_delete=django.db.models.deletion.SET_NULL, to='motions.State')),
|
null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='motions.State')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
@ -150,18 +158,18 @@ class Migration(migrations.Migration):
|
|||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='state',
|
model_name='state',
|
||||||
name='workflow',
|
name='workflow',
|
||||||
field=models.ForeignKey(related_name='states', to='motions.Workflow'),
|
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='states', to='motions.Workflow'),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='motionoption',
|
model_name='motionoption',
|
||||||
name='poll',
|
name='poll',
|
||||||
field=models.ForeignKey(to='motions.MotionPoll'),
|
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='motions.MotionPoll'),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='motion',
|
model_name='motion',
|
||||||
name='active_version',
|
name='active_version',
|
||||||
field=models.ForeignKey(
|
field=models.ForeignKey(
|
||||||
related_name='active_version', null=True, on_delete=django.db.models.deletion.SET_NULL, to='motions.MotionVersion'),
|
null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='active_version', to='motions.MotionVersion'),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='motion',
|
model_name='motion',
|
||||||
@ -171,28 +179,28 @@ class Migration(migrations.Migration):
|
|||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='motion',
|
model_name='motion',
|
||||||
name='category',
|
name='category',
|
||||||
field=models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, null=True, to='motions.Category'),
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='motions.Category'),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='motion',
|
model_name='motion',
|
||||||
name='parent',
|
name='parent',
|
||||||
field=models.ForeignKey(
|
field=models.ForeignKey(
|
||||||
related_name='amendments', blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='motions.Motion'),
|
blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='amendments', to='motions.Motion'),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='motion',
|
model_name='motion',
|
||||||
name='state',
|
name='state',
|
||||||
field=models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, null=True, to='motions.State'),
|
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='motions.State'),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='motion',
|
model_name='motion',
|
||||||
name='submitters',
|
name='submitters',
|
||||||
field=models.ManyToManyField(related_name='motion_submitters', blank=True, to=settings.AUTH_USER_MODEL),
|
field=models.ManyToManyField(blank=True, related_name='motion_submitters', to=settings.AUTH_USER_MODEL),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='motion',
|
model_name='motion',
|
||||||
name='supporters',
|
name='supporters',
|
||||||
field=models.ManyToManyField(related_name='motion_supporters', blank=True, to=settings.AUTH_USER_MODEL),
|
field=models.ManyToManyField(blank=True, related_name='motion_supporters', to=settings.AUTH_USER_MODEL),
|
||||||
),
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='motion',
|
model_name='motion',
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-03-02 01:22
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
from django.db import migrations, models
|
from django.db import migrations, models
|
||||||
|
|
||||||
import openslides.utils.models
|
import openslides.utils.models
|
||||||
@ -5,44 +9,57 @@ import openslides.utils.models
|
|||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
initial = True
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
('auth', '0006_require_contenttypes_0002'),
|
('auth', '0006_require_contenttypes_0002'),
|
||||||
|
# The next line is not a dependency because we also want to support Django 1.8.
|
||||||
|
# ('auth', '0007_alter_validators_add_error_messages'),
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='User',
|
name='User',
|
||||||
fields=[
|
fields=[
|
||||||
('id', models.AutoField(verbose_name='ID', primary_key=True, serialize=False, auto_created=True)),
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('password', models.CharField(verbose_name='password', max_length=128)),
|
('password', models.CharField(max_length=128, verbose_name='password')),
|
||||||
('last_login', models.DateTimeField(verbose_name='last login', null=True, blank=True)),
|
('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')),
|
||||||
('is_superuser', models.BooleanField(
|
('is_superuser', models.BooleanField(
|
||||||
|
default=False,
|
||||||
help_text='Designates that this user has all permissions without explicitly assigning them.',
|
help_text='Designates that this user has all permissions without explicitly assigning them.',
|
||||||
verbose_name='superuser status', default=False)),
|
verbose_name='superuser status')),
|
||||||
('username', models.CharField(max_length=255, blank=True, unique=True)),
|
('username', models.CharField(blank=True, max_length=255, unique=True)),
|
||||||
('first_name', models.CharField(max_length=255, blank=True)),
|
('first_name', models.CharField(blank=True, max_length=255)),
|
||||||
('last_name', models.CharField(max_length=255, blank=True)),
|
('last_name', models.CharField(blank=True, max_length=255)),
|
||||||
('structure_level', models.CharField(blank=True, max_length=255, default='')),
|
('structure_level', models.CharField(blank=True, default='', max_length=255)),
|
||||||
('title', models.CharField(blank=True, max_length=50, default='')),
|
('title', models.CharField(blank=True, default='', max_length=50)),
|
||||||
('about_me', models.TextField(blank=True, default='')),
|
('about_me', models.TextField(blank=True, default='')),
|
||||||
('comment', models.TextField(blank=True, default='')),
|
('comment', models.TextField(blank=True, default='')),
|
||||||
('default_password', models.CharField(blank=True, max_length=100, default='')),
|
('default_password', models.CharField(blank=True, default='', max_length=100)),
|
||||||
('is_active', models.BooleanField(default=True)),
|
('is_active', models.BooleanField(default=True)),
|
||||||
('is_present', models.BooleanField(default=False)),
|
('is_present', models.BooleanField(default=False)),
|
||||||
('groups', models.ManyToManyField(
|
('groups', models.ManyToManyField(
|
||||||
related_name='user_set',
|
blank=True,
|
||||||
help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.',
|
help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.',
|
||||||
verbose_name='groups', blank=True, to='auth.Group', related_query_name='user')),
|
related_name='user_set',
|
||||||
|
related_query_name='user',
|
||||||
|
to='auth.Group',
|
||||||
|
verbose_name='groups')),
|
||||||
('user_permissions', models.ManyToManyField(
|
('user_permissions', models.ManyToManyField(
|
||||||
related_name='user_set', help_text='Specific permissions for this user.', verbose_name='user permissions',
|
blank=True,
|
||||||
blank=True, to='auth.Permission', related_query_name='user')),
|
help_text='Specific permissions for this user.',
|
||||||
|
related_name='user_set',
|
||||||
|
related_query_name='user',
|
||||||
|
to='auth.Permission',
|
||||||
|
verbose_name='user permissions')),
|
||||||
],
|
],
|
||||||
options={
|
options={
|
||||||
'permissions': (
|
|
||||||
('can_see_name', 'Can see names of users'), ('can_see_extra_data', 'Can see extra data of users'),
|
|
||||||
('can_manage', 'Can manage users')),
|
|
||||||
'ordering': ('last_name', 'first_name', 'username'),
|
'ordering': ('last_name', 'first_name', 'username'),
|
||||||
'default_permissions': (),
|
'default_permissions': (),
|
||||||
|
'permissions': (
|
||||||
|
('can_see_name', 'Can see names of users'),
|
||||||
|
('can_see_extra_data', 'Can see extra data of users'),
|
||||||
|
('can_manage', 'Can manage users')),
|
||||||
},
|
},
|
||||||
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
bases=(openslides.utils.models.RESTModelMixin, models.Model),
|
||||||
),
|
),
|
||||||
|
Loading…
Reference in New Issue
Block a user