forked from beba/foerderbarometer
Add migrations for ProjectRequest and ProjectsDeclined models with updated options and field constraints
This commit is contained in:
parent
cc55b17cff
commit
98f8414576
|
|
@ -0,0 +1,64 @@
|
|||
# Generated by Django 5.2.5 on 2025-09-24 16:58
|
||||
|
||||
import django.core.validators
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('input', '0098_add_eliterature_and_software_proxies'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='ProjectRequest',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('realname', models.CharField(default='', help_text='Bitte gib deinen Vornamen und deinen Nachnamen ein.', max_length=200, null=True, verbose_name='Realname')),
|
||||
('email', models.EmailField(help_text='Bitte gib deine E-Mail-Adresse ein, damit dich<br>Wikimedia Deutschland bei Rückfragen oder für<br>die Zusage kontaktieren kann.', max_length=200, null=True, verbose_name='E-Mail-Adresse')),
|
||||
('granted', models.BooleanField(null=True, verbose_name='bewilligt')),
|
||||
('granted_date', models.DateField(null=True, verbose_name='bewilligt am')),
|
||||
('survey_mail_date', models.DateField(blank=True, null=True, verbose_name='Umfragemail wurde verschickt am')),
|
||||
('mail_state', models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung zur Projektabschlussmail wurde versendet'), ('CLOSE', 'die Projektabschlussmail wurde versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden versendet')], default='NONE', max_length=6)),
|
||||
('survey_mail_send', models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken')),
|
||||
('name', models.CharField(max_length=200, verbose_name='Name des Projekts')),
|
||||
('description', models.TextField(max_length=500, verbose_name='Kurzbeschreibung des Projekts')),
|
||||
('categories', models.JSONField(default=list, verbose_name='Projektkategorie')),
|
||||
('categories_other', models.CharField(blank=True, max_length=200, null=True, verbose_name='Projektkategorie: Sonstiges (kurz)')),
|
||||
('wikimedia_projects', models.JSONField(default=list, verbose_name='Wikimedia Projekt(e)')),
|
||||
('wikimedia_other', models.CharField(blank=True, max_length=200, null=True, verbose_name='Wikimedia-Projekt: Anderes (kurz)')),
|
||||
('start', models.DateField(verbose_name='Startdatum')),
|
||||
('end', models.DateField(verbose_name='Erwartetes Projektende')),
|
||||
('participants_estimated', models.IntegerField(validators=[django.core.validators.MinValueValidator(0)], verbose_name='Teilnehmende angefragt')),
|
||||
('page', models.URLField(blank=True, max_length=2000, null=True, verbose_name='Link zur Projektseite')),
|
||||
('group', models.CharField(blank=True, max_length=2000, null=True, verbose_name='Mitorganisierende')),
|
||||
('location', models.CharField(blank=True, max_length=2000, null=True, verbose_name='Ort/Adresse/Location')),
|
||||
('cost', models.IntegerField(validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(1000)], verbose_name='Kosten (EUR, ganzzahlig)')),
|
||||
('insurance', models.BooleanField(default=False, verbose_name='Haftpflichtversicherung gewünscht?')),
|
||||
('notes', models.TextField(blank=True, max_length=2000, null=True, verbose_name='Anmerkungen')),
|
||||
('decision', models.CharField(choices=[('OPEN', 'offen'), ('APPROVED', 'bewilligt'), ('DECLINED', 'abgelehnt')], default='OPEN', max_length=10)),
|
||||
('decision_date', models.DateField(blank=True, null=True)),
|
||||
('decided_by', models.CharField(blank=True, max_length=100, null=True, verbose_name='Entschieden von')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Projektförderungs-Antrag (< 1000 EUR)',
|
||||
'verbose_name_plural': 'Projects_requested',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='ProjectsDeclined',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('original_request_id', models.IntegerField()),
|
||||
('name', models.CharField(max_length=200)),
|
||||
('realname', models.CharField(max_length=200)),
|
||||
('email', models.EmailField(max_length=254)),
|
||||
('decision_date', models.DateField()),
|
||||
('reason', models.TextField(blank=True, null=True)),
|
||||
],
|
||||
options={
|
||||
'verbose_name_plural': 'Projects_declined',
|
||||
},
|
||||
),
|
||||
]
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
# Generated by Django 5.2.5 on 2025-09-28 22:27
|
||||
|
||||
import django.core.validators
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('input', '0099_projectrequest_projectsdeclined'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='projectrequest',
|
||||
options={'ordering': ('-id',), 'verbose_name': 'Projektförderungs-Antrag (< 1000 EUR)', 'verbose_name_plural': 'Projects_requested'},
|
||||
),
|
||||
migrations.AlterModelOptions(
|
||||
name='projectsdeclined',
|
||||
options={'ordering': ('-decision_date', '-id'), 'verbose_name_plural': 'Projects_declined'},
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='projectrequest',
|
||||
name='cost',
|
||||
field=models.IntegerField(validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(1000)], verbose_name='Höhe der Projektkosten'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='projectrequest',
|
||||
name='decision',
|
||||
field=models.CharField(choices=[('OPEN', 'offen'), ('APPROVED', 'bewilligt'), ('DECLINED', 'abgelehnt')], db_index=True, default='OPEN', max_length=10),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='projectrequest',
|
||||
name='decision_date',
|
||||
field=models.DateField(blank=True, db_index=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='projectrequest',
|
||||
name='insurance',
|
||||
field=models.BooleanField(default=False, verbose_name='Versicherung gewünscht?'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='projectrequest',
|
||||
name='location',
|
||||
field=models.CharField(blank=True, max_length=2000, null=True, verbose_name='Ort'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='projectrequest',
|
||||
name='participants_estimated',
|
||||
field=models.IntegerField(validators=[django.core.validators.MinValueValidator(0)], verbose_name='Zahl der Teilnehmenden'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='projectsdeclined',
|
||||
name='original_request_id',
|
||||
field=models.PositiveIntegerField(),
|
||||
),
|
||||
]
|
||||
Loading…
Reference in New Issue