From b444008f739368ce4072d7d351dfeac96cde05d0 Mon Sep 17 00:00:00 2001 From: Christian Merten Date: Wed, 29 Mar 2023 22:42:05 +0200 Subject: [PATCH] migrations: squash migrations, delete unused migrations for mailer and material --- ...nitial_squashed_0007_alter_termin_group.py | 46 ++++ .../migrations/0007_alter_termin_group.py | 18 ++ ...nitial_squashed_0006_auto_20210924_1155.py | 79 ++++++ ...hment_id_alter_emailaddress_id_and_more.py | 28 --- ...hment_id_alter_emailaddress_id_and_more.py | 28 --- ...nitial_squashed_0002_auto_20171011_2045.py | 61 +++++ ...egory_id_alter_materialpart_id_and_more.py | 28 --- ...egory_id_alter_materialpart_id_and_more.py | 28 --- ...shed_0015_alter_member_options_and_more.py | 225 ++++++++++++++++++ 9 files changed, 429 insertions(+), 112 deletions(-) create mode 100644 jdav_web/ludwigsburgalpin/migrations/0001_initial_squashed_0007_alter_termin_group.py create mode 100644 jdav_web/ludwigsburgalpin/migrations/0007_alter_termin_group.py create mode 100644 jdav_web/mailer/migrations/0001_initial_squashed_0006_auto_20210924_1155.py delete mode 100644 jdav_web/mailer/migrations/0007_alter_attachment_id_alter_emailaddress_id_and_more.py delete mode 100644 jdav_web/mailer/migrations/0008_alter_attachment_id_alter_emailaddress_id_and_more.py create mode 100644 jdav_web/material/migrations/0001_initial_squashed_0002_auto_20171011_2045.py delete mode 100644 jdav_web/material/migrations/0003_alter_materialcategory_id_alter_materialpart_id_and_more.py delete mode 100644 jdav_web/material/migrations/0004_alter_materialcategory_id_alter_materialpart_id_and_more.py create mode 100644 jdav_web/members/migrations/0001_initial_squashed_0015_alter_member_options_and_more.py diff --git a/jdav_web/ludwigsburgalpin/migrations/0001_initial_squashed_0007_alter_termin_group.py b/jdav_web/ludwigsburgalpin/migrations/0001_initial_squashed_0007_alter_termin_group.py new file mode 100644 index 0000000..c34e944 --- /dev/null +++ b/jdav_web/ludwigsburgalpin/migrations/0001_initial_squashed_0007_alter_termin_group.py @@ -0,0 +1,46 @@ +# Generated by Django 4.0.1 on 2023-03-29 20:40 + +import django.core.validators +from django.db import migrations, models + + +class Migration(migrations.Migration): + + replaces = [('ludwigsburgalpin', '0001_initial'), ('ludwigsburgalpin', '0002_auto_20190926_1432'), ('ludwigsburgalpin', '0003_auto_20190926_1749'), ('ludwigsburgalpin', '0004_alter_termin_id'), ('ludwigsburgalpin', '0005_alter_termin_id'), ('ludwigsburgalpin', '0006_termin_anforderung_dauer_termin_anforderung_hoehe_and_more'), ('ludwigsburgalpin', '0007_alter_termin_group')] + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Termin', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('title', models.CharField(max_length=100, verbose_name='Titel')), + ('start_date', models.DateField(verbose_name='Von')), + ('end_date', models.DateField(verbose_name='Bis')), + ('group', models.CharField(choices=[('ASG', 'Alpinsportgruppe'), ('OGB', 'Ortsgruppe Bietigheim'), ('OGV', 'Ortsgruppe Vaihingen'), ('JUG', 'Jugend'), ('FAM', 'Familie'), ('Ü30', 'Ü30'), ('MTB', 'Mountainbike'), ('RA', 'RegioAktiv'), ('SEK', 'Sektion')], max_length=100, verbose_name='Gruppe')), + ('description', models.TextField(blank=True, verbose_name='Beschreibung')), + ('email', models.EmailField(max_length=100, verbose_name='Email')), + ('phone', models.CharField(blank=True, max_length=20, verbose_name='Telefonnumer')), + ('responsible', models.CharField(max_length=100, verbose_name='Organisator')), + ('anforderung_dauer', models.IntegerField(blank=True, default=0, validators=[django.core.validators.MinValueValidator(0)], verbose_name='Etappendauer in Stunden')), + ('anforderung_hoehe', models.IntegerField(blank=True, default=0, validators=[django.core.validators.MinValueValidator(0)], verbose_name='Höhenmeter in Meter')), + ('anforderung_strecke', models.IntegerField(blank=True, default=0, validators=[django.core.validators.MinValueValidator(0)], verbose_name='Strecke in Kilometer')), + ('category', models.CharField(choices=[('WAN', 'Wandern'), ('BW', 'Bergwandern'), ('KST', 'Klettersteig'), ('KL', 'Klettern'), ('SKI', 'Piste, Loipe'), ('SCH', 'Schneeschuhgehen'), ('ST', 'Skitour'), ('STH', 'Skihochtour'), ('HT', 'Hochtour'), ('MTB', 'Montainbike'), ('AUS', 'Ausbildung'), ('SON', 'Sonstiges z.B. Treffen')], default='SON', max_length=100, verbose_name='Kategorie')), + ('condition', models.CharField(choices=[('gering', 'gering'), ('mittel', 'mittel'), ('groß', 'groß'), ('sehr groß', 'sehr groß')], default='mittel', max_length=100, verbose_name='Kondition')), + ('equipment', models.TextField(blank=True, verbose_name='Ausrüstung')), + ('eventart', models.CharField(choices=[('Einzeltermin', 'Einzeltermin'), ('Mehrtagesevent', 'Mehrtagesevent'), ('Regelmäßiges Event/Training', 'Regelmäßiges Event/Training'), ('Tagesevent', 'Tagesevent'), ('Wochenendevent', 'Wochenendevent')], default='Einzeltermin', max_length=100, verbose_name='Eventart')), + ('klassifizierung', models.CharField(choices=[('Gemeinschaftstour', 'Gemeinschaftstour'), ('Ausbildung', 'Ausbildung')], default='Gemeinschaftstour', max_length=100, verbose_name='Klassifizierung')), + ('max_participants', models.IntegerField(default=10, validators=[django.core.validators.MinValueValidator(1)], verbose_name='Max. Teilnehmerzahl')), + ('saison', models.CharField(choices=[('ganzjährig', 'ganzjährig'), ('Indoor', 'Indoor'), ('Sommer', 'Sommer'), ('Winter', 'Winter')], default='ganzjährig', max_length=100, verbose_name='Saison')), + ('subtitle', models.CharField(blank=True, max_length=100, verbose_name='Untertitel')), + ('technik', models.CharField(choices=[('leicht', 'leicht'), ('mittel', 'mittel'), ('schwer', 'schwer'), ('sehr schwer', 'sehr schwer')], default='mittel', max_length=100, verbose_name='Technik')), + ('voraussetzungen', models.TextField(blank=True, verbose_name='Voraussetzungen')), + ], + options={ + 'verbose_name_plural': 'Termine', + 'verbose_name': 'Termin', + }, + ), + ] diff --git a/jdav_web/ludwigsburgalpin/migrations/0007_alter_termin_group.py b/jdav_web/ludwigsburgalpin/migrations/0007_alter_termin_group.py new file mode 100644 index 0000000..8988e2e --- /dev/null +++ b/jdav_web/ludwigsburgalpin/migrations/0007_alter_termin_group.py @@ -0,0 +1,18 @@ +# Generated by Django 4.0.1 on 2023-03-29 20:35 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('ludwigsburgalpin', '0006_termin_anforderung_dauer_termin_anforderung_hoehe_and_more'), + ] + + operations = [ + migrations.AlterField( + model_name='termin', + name='group', + field=models.CharField(choices=[('ASG', 'Alpinsportgruppe'), ('OGB', 'Ortsgruppe Bietigheim'), ('OGV', 'Ortsgruppe Vaihingen'), ('JUG', 'Jugend'), ('FAM', 'Familie'), ('Ü30', 'Ü30'), ('MTB', 'Mountainbike'), ('RA', 'RegioAktiv'), ('SEK', 'Sektion')], max_length=100, verbose_name='Gruppe'), + ), + ] diff --git a/jdav_web/mailer/migrations/0001_initial_squashed_0006_auto_20210924_1155.py b/jdav_web/mailer/migrations/0001_initial_squashed_0006_auto_20210924_1155.py new file mode 100644 index 0000000..9673d80 --- /dev/null +++ b/jdav_web/mailer/migrations/0001_initial_squashed_0006_auto_20210924_1155.py @@ -0,0 +1,79 @@ +# Generated by Django 4.0.1 on 2023-03-29 20:38 + +import django.core.validators +from django.db import migrations, models +import django.db.models.deletion +import utils + + +class Migration(migrations.Migration): + + replaces = [('mailer', '0001_initial'), ('mailer', '0002_auto_20190615_1225'), ('mailer', '0003_emailaddress'), ('mailer', '0004_auto_20200924_1744'), ('mailer', '0005_auto_20200924_2139'), ('mailer', '0006_auto_20210924_1155')] + + dependencies = [ + ('members', '0006_auto_20190914_2341'), + ('members', '0008_auto_20210924_1155'), + ('members', '0001_initial'), + ('members', '0007_auto_20200924_1512'), + ('members', '0005_auto_20190615_1224'), + ] + + operations = [ + migrations.CreateModel( + name='Message', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('subject', models.CharField(max_length=50, verbose_name='subject')), + ('content', models.TextField(verbose_name='content')), + ('sent', models.BooleanField(default=False, verbose_name='sent')), + ('to_groups', models.ManyToManyField(blank=True, to='members.Group', verbose_name='to group')), + ('to_members', models.ManyToManyField(blank=True, to='members.Member', verbose_name='to member')), + ('reply_to', models.ManyToManyField(blank=True, related_name='reply_to', to='members.Member', verbose_name='reply to participant')), + ], + options={ + 'verbose_name_plural': 'messages', + 'permissions': (('submit_mails', 'Can submit mails'),), + 'verbose_name': 'message', + }, + ), + migrations.CreateModel( + name='Attachment', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('f', utils.RestrictedFileField(blank=True, upload_to='attachments', verbose_name='file')), + ('msg', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='mailer.message')), + ], + options={ + 'verbose_name_plural': 'attachments', + 'verbose_name': 'attachment', + }, + ), + migrations.CreateModel( + name='EmailAddress', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=50, validators=[django.core.validators.RegexValidator('^[0-9a-zA-Z]*$', 'Only alphanumeric characters are allowed')], verbose_name='name')), + ('to_members', models.ManyToManyField(blank=True, to='members.Member', verbose_name='Forward to participants')), + ('to_groups', models.ManyToManyField(blank=True, to='members.Group', verbose_name='Forward to group')), + ], + options={ + 'verbose_name_plural': 'email addresses', + 'verbose_name': 'email address', + }, + ), + migrations.AddField( + model_name='message', + name='reply_to_email_address', + field=models.ManyToManyField(blank=True, related_name='reply_to_email_addr', to='mailer.EmailAddress', verbose_name='reply to custom email address'), + ), + migrations.AddField( + model_name='message', + name='to_freizeit', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='members.freizeit', verbose_name='to freizeit'), + ), + migrations.AddField( + model_name='message', + name='to_notelist', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='members.membernotelist', verbose_name='to notes list'), + ), + ] diff --git a/jdav_web/mailer/migrations/0007_alter_attachment_id_alter_emailaddress_id_and_more.py b/jdav_web/mailer/migrations/0007_alter_attachment_id_alter_emailaddress_id_and_more.py deleted file mode 100644 index 17327cb..0000000 --- a/jdav_web/mailer/migrations/0007_alter_attachment_id_alter_emailaddress_id_and_more.py +++ /dev/null @@ -1,28 +0,0 @@ -# Generated by Django 4.0.1 on 2022-01-12 17:15 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('mailer', '0006_auto_20210924_1155'), - ] - - operations = [ - migrations.AlterField( - model_name='attachment', - name='id', - field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='emailaddress', - name='id', - field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='message', - name='id', - field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - ] diff --git a/jdav_web/mailer/migrations/0008_alter_attachment_id_alter_emailaddress_id_and_more.py b/jdav_web/mailer/migrations/0008_alter_attachment_id_alter_emailaddress_id_and_more.py deleted file mode 100644 index ee39927..0000000 --- a/jdav_web/mailer/migrations/0008_alter_attachment_id_alter_emailaddress_id_and_more.py +++ /dev/null @@ -1,28 +0,0 @@ -# Generated by Django 4.0.1 on 2022-01-12 17:16 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('mailer', '0007_alter_attachment_id_alter_emailaddress_id_and_more'), - ] - - operations = [ - migrations.AlterField( - model_name='attachment', - name='id', - field=models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='emailaddress', - name='id', - field=models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='message', - name='id', - field=models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - ] diff --git a/jdav_web/material/migrations/0001_initial_squashed_0002_auto_20171011_2045.py b/jdav_web/material/migrations/0001_initial_squashed_0002_auto_20171011_2045.py new file mode 100644 index 0000000..eb18291 --- /dev/null +++ b/jdav_web/material/migrations/0001_initial_squashed_0002_auto_20171011_2045.py @@ -0,0 +1,61 @@ +# Generated by Django 4.0.1 on 2023-03-29 20:39 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + replaces = [('material', '0001_initial'), ('material', '0002_auto_20171011_2045')] + + dependencies = [ + ('members', '0001_initial'), + ] + + operations = [ + migrations.CreateModel( + name='MaterialPart', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=30, verbose_name='name')), + ('description', models.CharField(default='', max_length=140, verbose_name='description')), + ('quantity', models.IntegerField(default=0, verbose_name='quantity')), + ('buy_date', models.DateField(verbose_name='purchase date')), + ('lifetime', models.DecimalField(decimal_places=0, max_digits=3, verbose_name='lifetime (years)')), + ('photo', models.ImageField(blank=True, upload_to='images', verbose_name='photo')), + ], + options={ + 'verbose_name': 'material part', + 'verbose_name_plural': 'material parts', + }, + ), + migrations.CreateModel( + name='Ownership', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('count', models.IntegerField(default=1, verbose_name='count')), + ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='material.materialpart')), + ('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='members.member', verbose_name='owner')), + ], + options={ + 'verbose_name': 'ownership', + 'verbose_name_plural': 'ownerships', + }, + ), + migrations.CreateModel( + name='MaterialCategory', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=40, verbose_name='Name')), + ], + options={ + 'verbose_name': 'Material category', + 'verbose_name_plural': 'Material categories', + }, + ), + migrations.AddField( + model_name='materialpart', + name='material_cat', + field=models.ManyToManyField(default=None, to='material.MaterialCategory', verbose_name='Material category'), + ), + ] diff --git a/jdav_web/material/migrations/0003_alter_materialcategory_id_alter_materialpart_id_and_more.py b/jdav_web/material/migrations/0003_alter_materialcategory_id_alter_materialpart_id_and_more.py deleted file mode 100644 index a0d77b7..0000000 --- a/jdav_web/material/migrations/0003_alter_materialcategory_id_alter_materialpart_id_and_more.py +++ /dev/null @@ -1,28 +0,0 @@ -# Generated by Django 4.0.1 on 2022-01-12 17:15 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('material', '0002_auto_20171011_2045'), - ] - - operations = [ - migrations.AlterField( - model_name='materialcategory', - name='id', - field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='materialpart', - name='id', - field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='ownership', - name='id', - field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - ] diff --git a/jdav_web/material/migrations/0004_alter_materialcategory_id_alter_materialpart_id_and_more.py b/jdav_web/material/migrations/0004_alter_materialcategory_id_alter_materialpart_id_and_more.py deleted file mode 100644 index d86510a..0000000 --- a/jdav_web/material/migrations/0004_alter_materialcategory_id_alter_materialpart_id_and_more.py +++ /dev/null @@ -1,28 +0,0 @@ -# Generated by Django 4.0.1 on 2022-01-12 17:16 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('material', '0003_alter_materialcategory_id_alter_materialpart_id_and_more'), - ] - - operations = [ - migrations.AlterField( - model_name='materialcategory', - name='id', - field=models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='materialpart', - name='id', - field=models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='ownership', - name='id', - field=models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - ] diff --git a/jdav_web/members/migrations/0001_initial_squashed_0015_alter_member_options_and_more.py b/jdav_web/members/migrations/0001_initial_squashed_0015_alter_member_options_and_more.py new file mode 100644 index 0000000..40a2ae9 --- /dev/null +++ b/jdav_web/members/migrations/0001_initial_squashed_0015_alter_member_options_and_more.py @@ -0,0 +1,225 @@ +# Generated by Django 4.0.1 on 2023-03-29 20:12 + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +import django.utils.timezone +import utils + + +class Migration(migrations.Migration): + + replaces = [('members', '0001_initial'), ('members', '0002_auto_20170704_1711'), ('members', '0003_auto_20170712_1822'), ('members', '0004_auto_20171011_2045'), ('members', '0005_auto_20190615_1224'), ('members', '0006_auto_20190914_2341'), ('members', '0007_auto_20200924_1512'), ('members', '0008_auto_20210924_1155'), ('members', '0009_member_cc_email_parents_alter_activitycategory_id_and_more'), ('members', '0010_alter_activitycategory_id_alter_freizeit_id_and_more'), ('members', '0011_freizeit_tour_approach'), ('members', '0012_remove_group_min_age_group_year_from_group_year_to'), ('members', '0013_member_echo_expire_member_echo_key_member_echoed'), ('members', '0014_memberunconfirmedproxy_member_confirm_mail_key_and_more'), ('members', '0015_alter_member_options_and_more')] + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('contenttypes', '0002_remove_content_type_name'), + ] + + operations = [ + migrations.CreateModel( + name='ActivityCategory', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=20, verbose_name='Name')), + ('description', models.TextField(verbose_name='Description')), + ], + options={ + 'verbose_name': 'Activity', + 'verbose_name_plural': 'Activities', + }, + ), + migrations.CreateModel( + name='Group', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=20, verbose_name='name')), + ('year_from', models.IntegerField(default=2010, verbose_name='lowest year')), + ('year_to', models.IntegerField(default=2011, verbose_name='highest year')), + ], + options={ + 'verbose_name': 'group', + 'verbose_name_plural': 'groups', + }, + ), + migrations.CreateModel( + name='Member', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('prename', models.CharField(max_length=20, verbose_name='prename')), + ('lastname', models.CharField(max_length=20, verbose_name='last name')), + ('street', models.CharField(blank=True, default='', max_length=30, verbose_name='street and house number')), + ('town', models.CharField(blank=True, default='', max_length=30, verbose_name='town')), + ('phone_number', models.CharField(blank=True, default='', max_length=18, verbose_name='phone number')), + ('phone_number_parents', models.CharField(blank=True, default='', max_length=18, verbose_name='parents phone number')), + ('email', models.EmailField(default='', max_length=100)), + ('birth_date', models.DateField(verbose_name='birth date')), + ('gets_newsletter', models.BooleanField(default=True, verbose_name='receives newsletter')), + ('unsubscribe_key', models.CharField(default='', max_length=32)), + ('unsubscribe_expire', models.DateTimeField(default=django.utils.timezone.now)), + ('comments', models.TextField(blank=True, default='', verbose_name='comments')), + ('created', models.DateField(auto_now=True, verbose_name='created')), + ('registration_form', utils.RestrictedFileField(blank=True, upload_to='registration_forms', verbose_name='registration form')), + ('group', models.ManyToManyField(to='members.Group', verbose_name='group')), + ('email_parents', models.EmailField(blank=True, default='', max_length=100, verbose_name="Parents' Email")), + ('plz', models.CharField(blank=True, default='', max_length=10, verbose_name='Postcode')), + ('registered', models.BooleanField(default=False, verbose_name='Registration complete')), + ('active', models.BooleanField(default=True, verbose_name='Active')), + ('not_waiting', models.BooleanField(default=True, verbose_name='Not waiting')), + ('cc_email_parents', models.BooleanField(default=True, verbose_name='Also send mails to parents')), + ('echo_expire', models.DateTimeField(default=django.utils.timezone.now)), + ('echo_key', models.CharField(default='', max_length=32)), + ('echoed', models.BooleanField(default=True, verbose_name='Echoed')), + ('confirm_mail_key', models.CharField(default='', max_length=32)), + ('confirm_mail_parents_key', models.CharField(default='', max_length=32)), + ('confirmed', models.BooleanField(default=True, verbose_name='Confirmed')), + ('confirmed_mail', models.BooleanField(default=True, verbose_name='Email confirmed')), + ('confirmed_mail_parents', models.BooleanField(default=True, verbose_name='Parents email confirmed')), + ('user', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)), + ], + options={ + 'verbose_name': 'member', + 'verbose_name_plural': 'members', + 'permissions': (('may_see_qualities', 'Is allowed to see the quality overview'), ('may_set_auth_user', 'Is allowed to set auth user member connections.')), + }, + ), + migrations.CreateModel( + name='MemberList', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(default='', max_length=50, verbose_name='Activity')), + ('place', models.CharField(default='', max_length=50, verbose_name='Place')), + ('destination', models.CharField(blank=True, default='', max_length=50, verbose_name='Destination (optional)')), + ('date', models.DateField(default=datetime.datetime.today, verbose_name='Date')), + ('end', models.DateField(blank=True, default=datetime.datetime.today, verbose_name='End (optional)')), + ('tour_type', models.IntegerField(choices=[(0, 'Gemeinschaftstour'), (1, 'Führungstour'), (2, 'Ausbildung')])), + ('difficulty', models.IntegerField(choices=[(1, 'easy'), (2, 'medium'), (3, 'hard')])), + ('activity', models.ManyToManyField(default=None, to='members.ActivityCategory', verbose_name='Categories')), + ('groups', models.ManyToManyField(to='members.Group', verbose_name='Groups')), + ('jugendleiter', models.ManyToManyField(to='members.Member')), + ], + options={ + 'verbose_name': 'Memberlist', + 'verbose_name_plural': 'Memberlists', + }, + ), + migrations.CreateModel( + name='Klettertreff', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('date', models.DateField(default=datetime.datetime.today, verbose_name='Date')), + ('location', models.CharField(default='', max_length=60, verbose_name='Location')), + ('topic', models.CharField(default='', max_length=60, verbose_name='Topic')), + ('group', models.ForeignKey(default='', on_delete=django.db.models.deletion.CASCADE, to='members.group', verbose_name='Group')), + ('jugendleiter', models.ManyToManyField(to='members.Member')), + ], + options={ + 'verbose_name': 'Klettertreff', + 'verbose_name_plural': 'Klettertreffs', + }, + ), + migrations.CreateModel( + name='KlettertreffAttendee', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('klettertreff', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='members.klettertreff')), + ('member', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='members.member', verbose_name='Member')), + ], + options={ + 'verbose_name': 'Member', + 'verbose_name_plural': 'Members', + }, + ), + migrations.CreateModel( + name='MemberNoteList', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('title', models.CharField(default='', max_length=50, verbose_name='Title')), + ('date', models.DateField(blank=True, default=datetime.datetime.today, null=True, verbose_name='Date')), + ], + options={ + 'verbose_name_plural': 'Notizlisten', + 'verbose_name': 'Notizliste', + }, + ), + migrations.CreateModel( + name='NewMemberOnList', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('object_id', models.PositiveIntegerField()), + ('comments', models.TextField(blank=True, default='', verbose_name='Comment')), + ('content_type', models.ForeignKey(default='members', on_delete=django.db.models.deletion.CASCADE, to='contenttypes.contenttype')), + ('member', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='members.member', verbose_name='Member')), + ], + options={ + 'verbose_name_plural': 'Members', + 'verbose_name': 'Member', + }, + ), + migrations.CreateModel( + name='OldMemberOnList', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('comments', models.TextField(blank=True, default='', verbose_name='Comment')), + ('member', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='members.member', verbose_name='Member')), + ('memberlist', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='members.memberlist')), + ], + options={ + 'verbose_name': 'Member', + 'verbose_name_plural': 'Members', + }, + ), + migrations.CreateModel( + name='Freizeit', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(default='', max_length=50, verbose_name='Activity')), + ('place', models.CharField(default='', max_length=50, verbose_name='Place')), + ('destination', models.CharField(blank=True, default='', max_length=50, verbose_name='Destination (optional)')), + ('date', models.DateField(default=datetime.datetime.today, verbose_name='Date')), + ('end', models.DateField(blank=True, default=datetime.datetime.today, verbose_name='End (optional)')), + ('tour_type', models.IntegerField(choices=[(0, 'Gemeinschaftstour'), (1, 'Führungstour'), (2, 'Ausbildung')])), + ('difficulty', models.IntegerField(choices=[(1, 'easy'), (2, 'medium'), (3, 'hard')])), + ('activity', models.ManyToManyField(default=None, to='members.ActivityCategory', verbose_name='Categories')), + ('groups', models.ManyToManyField(to='members.Group', verbose_name='Groups')), + ('jugendleiter', models.ManyToManyField(to='members.Member')), + ('tour_approach', models.IntegerField(choices=[(0, 'Muskelkraft'), (1, 'Öffentliche VM'), (2, 'Fahrgemeinschaften')], default=0)), + ], + options={ + 'verbose_name_plural': 'Freizeiten', + 'verbose_name': 'Freizeit', + }, + ), + migrations.CreateModel( + name='RegistrationPassword', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('password', models.CharField(default='', max_length=20, unique=True, verbose_name='Password')), + ('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='members.group')), + ], + options={ + 'verbose_name': 'registration password', + 'verbose_name_plural': 'registration passwords', + }, + ), + migrations.CreateModel( + name='MemberUnconfirmedProxy', + fields=[ + ], + options={ + 'verbose_name': 'Unconfirmed registration', + 'verbose_name_plural': 'Unconfirmed registrations', + 'proxy': True, + 'indexes': [], + 'constraints': [], + 'permissions': (('may_manage_all_registrations', 'Can view and manage all unconfirmed registrations.'),), + }, + bases=('members.member',), + ), + migrations.AddField( + model_name='group', + name='leiters', + field=models.ManyToManyField(blank=True, related_name='leited_groups', to='members.Member', verbose_name='youth leaders'), + ), + ]