From eaf072683fa8f0874fa6fabe42fb26d6121bc4ce Mon Sep 17 00:00:00 2001 From: Tom Teichler <t.teichler@babiel.com> Date: Tue, 30 Nov 2021 16:24:03 +0100 Subject: [PATCH] Add migrations --- .../apps/paweljong/migrations/0001_initial.py | 142 ++++++++++++++++++ 1 file changed, 142 insertions(+) create mode 100644 aleksis/apps/paweljong/migrations/0001_initial.py diff --git a/aleksis/apps/paweljong/migrations/0001_initial.py b/aleksis/apps/paweljong/migrations/0001_initial.py new file mode 100644 index 0000000..2ca1cd2 --- /dev/null +++ b/aleksis/apps/paweljong/migrations/0001_initial.py @@ -0,0 +1,142 @@ +# Generated by Django 3.2.9 on 2021-11-30 15:23 + +import django.contrib.sites.managers +from django.db import migrations, models +import django.db.models.deletion +import django_iban.fields + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('core', '0028_alter_globalpermissions_options'), + ('sites', '0002_alter_domain_unique'), + ] + + operations = [ + migrations.CreateModel( + name='Event', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('extended_data', models.JSONField(default=dict, editable=False)), + ('display_name', models.CharField(max_length=255, verbose_name='Display name')), + ('description', models.CharField(max_length=500, verbose_name='Description')), + ('published', models.BooleanField(default=False, verbose_name='Publish')), + ('place', models.CharField(max_length=50, verbose_name='Place')), + ('date_event', models.DateField(verbose_name='Date of event')), + ('date_registration', models.DateField(verbose_name='Registration deadline')), + ('date_retraction', models.DateField(verbose_name='Retraction deadline')), + ('cost', models.IntegerField(verbose_name='Cost in €')), + ('max_participants', models.PositiveSmallIntegerField(verbose_name='Maximum participants')), + ], + options={ + 'abstract': False, + }, + managers=[ + ('objects', django.contrib.sites.managers.CurrentSiteManager()), + ], + ), + migrations.CreateModel( + name='Voucher', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('extended_data', models.JSONField(default=dict, editable=False)), + ('code', models.CharField(blank=True, default='', max_length=8)), + ('discount', models.IntegerField(default=100)), + ('used', models.BooleanField(default=False)), + ('deleted', models.BooleanField(default=False)), + ('event', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='vouchers', to='paweljong.event', verbose_name='Event')), + ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='vouchers', to='core.person', verbose_name='Person')), + ('site', models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site')), + ('used_person_uid', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='used_vouchers', to='core.person', verbose_name='Used by')), + ], + options={ + 'verbose_name': 'Vouchers', + 'verbose_name_plural': 'Vouchers', + }, + managers=[ + ('objects', django.contrib.sites.managers.CurrentSiteManager()), + ], + ), + migrations.CreateModel( + name='FeedbackAspect', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('extended_data', models.JSONField(default=dict, editable=False)), + ('aspect', models.CharField(max_length=100)), + ('site', models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site')), + ], + options={ + 'abstract': False, + }, + managers=[ + ('objects', django.contrib.sites.managers.CurrentSiteManager()), + ], + ), + migrations.CreateModel( + name='EventRegistration', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('extended_data', models.JSONField(default=dict, editable=False)), + ('date_registred', models.DateTimeField(auto_now_add=True, verbose_name='Registration date')), + ('comment', models.TextField(blank=True, default='', verbose_name='Comment / remarks')), + ('channel', models.CharField(blank=True, default='', max_length=255, verbose_name='Channel')), + ('donation', models.PositiveIntegerField(blank=True, null=True, verbose_name='Donation')), + ('accept_sepa', models.BooleanField(verbose_name='SEPA direct debit')), + ('iban', django_iban.fields.IBANField(enforce_database_constraint=True, max_length=34, null=True, verbose_name='IBAN (for SEPA direct debit)')), + ('accept_terms', models.BooleanField(verbose_name='Delcaration of consent by parents')), + ('accept_data', models.BooleanField(verbose_name='Declaration of consent data protection')), + ('accept_general_terms', models.BooleanField(verbose_name='Declatation of consent terms and condition')), + ('event', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='paweljong.event', verbose_name='Event')), + ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.person', verbose_name='Person')), + ('site', models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site')), + ('voucher', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='paweljong.voucher', verbose_name='Voucher')), + ], + options={ + 'verbose_name': 'Registration', + 'verbose_name_plural': 'Registrations', + }, + managers=[ + ('objects', django.contrib.sites.managers.CurrentSiteManager()), + ], + ), + migrations.CreateModel( + name='EventFeedback', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('extended_data', models.JSONField(default=dict, editable=False)), + ('comment_private', models.TextField(blank=True, verbose_name='Private comment')), + ('comment_public', models.TextField(blank=True, verbose_name='Public comment')), + ('comment_public_info', models.CharField(choices=[('first', 'Only first name'), ('first_age', 'First name and age'), ('first_last_age', 'First name, last name and age')], max_length=255, verbose_name='Information in the comment')), + ('photos', models.ImageField(blank=True, upload_to='feedback/', verbose_name='Photos')), + ('photos_licence', models.CharField(choices=[('CC-BY-4.0+', 'Creative Commons with attribution, 4.0 or later'), ('CC-BY-SA-4.0+', 'Creative Commons with attribution and distribution onlyunder the same conditions, 4.0 or later')], max_length=255, verbose_name='Photo licence')), + ('event', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='feedback', to='paweljong.event', verbose_name='Event')), + ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='feedback', to='core.person', verbose_name='Person')), + ('site', models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site')), + ], + options={ + 'verbose_name': 'Event feedback', + 'verbose_name_plural': 'Event feedbacks', + }, + managers=[ + ('objects', django.contrib.sites.managers.CurrentSiteManager()), + ], + ), + migrations.AddField( + model_name='event', + name='feedback_aspects', + field=models.ManyToManyField(related_name='event', to='paweljong.FeedbackAspect', verbose_name='Feedback aspects'), + ), + migrations.AddField( + model_name='event', + name='linked_group', + field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='linked_event', to='core.group', verbose_name='Group'), + ), + migrations.AddField( + model_name='event', + name='site', + field=models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site'), + ), + ] -- GitLab