forked from beba/foerderbarometer
added mail_state to all objects, added filters regarding sendmail.py
This commit is contained in:
parent
9b9209f2b5
commit
d2d48c1a82
|
@ -1,7 +1,8 @@
|
|||
# secret passwords and so
|
||||
/secrets.json
|
||||
/staticfiles
|
||||
/foerderbarometer/settings.py
|
||||
# /foerderbarometer/settings.py
|
||||
/foerderbarometer/*settings*
|
||||
/nohup.out
|
||||
/logfile
|
||||
*~
|
||||
|
|
|
@ -111,8 +111,8 @@ WSGI_APPLICATION = 'foerderbarometer.wsgi.application'
|
|||
DATABASES = {
|
||||
'default': {
|
||||
'ENGINE': 'django.db.backends.mysql',
|
||||
'NAME': 'fdb',
|
||||
'USER': 'fdb',
|
||||
'NAME': 'fdbdevel',
|
||||
'USER': 'fdbdevel',
|
||||
'PASSWORD': get_secret('DATABASE_PASSWORD'),
|
||||
'HOST': '10.0.6.7', # Or an IP Address that your database is hosted on
|
||||
# 'PORT': '3306',
|
||||
|
|
|
@ -72,13 +72,13 @@ class TravelForm(FdbForm):
|
|||
exclude = ('granted', 'granted_date', 'survey_mail_send', 'realname', 'email', 'survey_mail_date', 'project', 'request_url', 'payed_for_hotel_by', 'payed_for_travel_by', 'intern_notes' )
|
||||
widgets = {'checkin': AdminDateWidget(),
|
||||
'checkout': AdminDateWidget(),}
|
||||
fields = ['project_name', 'transport', 'travelcost', 'checkin', 'checkout', 'hotel', 'notes']
|
||||
fields = ['project_name', 'transport', 'travelcost', 'checkin', 'checkout', 'hotel', 'notes', 'mail_state']
|
||||
|
||||
class LibraryForm(FdbForm):
|
||||
|
||||
class Meta:
|
||||
model = Library
|
||||
fields = ['cost', 'library', 'duration', 'notes']
|
||||
fields = ['cost', 'library', 'duration', 'notes', 'survey_mail_send']
|
||||
exclude = ['intern_notes']
|
||||
|
||||
class HonoraryCertificateForm(FdbForm):
|
||||
|
@ -139,7 +139,7 @@ class BusinessCardForm(CheckForm):
|
|||
class Meta:
|
||||
model = BusinessCard
|
||||
exclude = ['intern_notes']
|
||||
fields = ['project', 'data', 'variant', 'url_of_pic', 'sent_to']
|
||||
fields = ['project', 'data', 'variant', 'url_of_pic', 'sent_to', 'mail_state']
|
||||
class Media:
|
||||
js = ('dropdown/js/base.js',)
|
||||
|
||||
|
|
|
@ -44,6 +44,7 @@ class Command(BaseCommand):
|
|||
msg = EmailMultiAlternatives(subject, text_content, from_email, [to], bcc=[SURVEY_EMAIL])
|
||||
msg.attach_alternative(html_content, "text/html")
|
||||
msg.send()
|
||||
#print('survey mail would have been send')
|
||||
|
||||
#survey_mail = EmailMessage('Dein Feedback zur Förderung durch Wikimedia Deutschland',
|
||||
# mail_template.render(context),
|
||||
|
@ -56,12 +57,19 @@ class Command(BaseCommand):
|
|||
|
||||
print(f'send surveylinkemail to {email}...')
|
||||
|
||||
''' the db entry mail_state was added. Useful when migrating databases. first delete the entry, then makemigrations
|
||||
then migrate.. after that, recreate the entry with default END, after that makemigrations and migrate.
|
||||
now all entries have the value END. after that rewrite the default to NONE in models.py, then makemigrations
|
||||
and migrate again, to have NONE as default for all new queries. '''
|
||||
|
||||
|
||||
def end_of_projects_reached(self):
|
||||
''' end of project reached '''
|
||||
# get all projects which ended
|
||||
|
||||
old = Project.objects.filter(end__lt = date.today())\
|
||||
.exclude(end_mail_send = True)
|
||||
.exclude(end_mail_send = True)\
|
||||
.filter(mail_state = 'NONE')
|
||||
|
||||
txt_mail_template = get_template('input/if_end_of_project.txt')
|
||||
html_mail_template = get_template('input/if_end_of_project.html')
|
||||
|
@ -69,6 +77,7 @@ class Command(BaseCommand):
|
|||
for project in old:
|
||||
context = {'project': project}
|
||||
context['URLPREFIX'] = settings.URLPREFIX
|
||||
|
||||
try:
|
||||
subject, from_email, to = 'Projektende erreicht', IF_EMAIL, IF_EMAIL
|
||||
text_content = txt_mail_template.render(context)
|
||||
|
@ -76,6 +85,7 @@ class Command(BaseCommand):
|
|||
msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
|
||||
msg.attach_alternative(html_content, "text/html")
|
||||
msg.send()
|
||||
#print('end of project mail would have been sent')
|
||||
|
||||
#send_mail('Projektende erreicht',
|
||||
# mail_template.render(context),
|
||||
|
@ -83,7 +93,11 @@ class Command(BaseCommand):
|
|||
# [IF_EMAIL],
|
||||
# fail_silently=False)
|
||||
project.end_mail_send = True
|
||||
project.mail_state = 'INF'
|
||||
try:
|
||||
project.save()
|
||||
except:
|
||||
print( 'For project', project, 'there is possibly no project.start (', project.start, ') class')
|
||||
except BadHeaderError:
|
||||
self.stdout.write(self.style.ERROR('Invalid header found.'))
|
||||
|
||||
|
@ -94,8 +108,8 @@ class Command(BaseCommand):
|
|||
# get all projects where end was reached already, and send mails for the ones already set to status "ended" by the admins
|
||||
|
||||
approved_end = Project.objects.filter(status = 'END')\
|
||||
.exclude(end_mail_send = False)
|
||||
print(approved_end)
|
||||
.exclude(end_mail_send = False)\
|
||||
.filter(mail_state = 'INF')
|
||||
txt_mail_template = get_template('input/if_end_of_project_approved.txt')
|
||||
html_mail_template = get_template('input/if_end_of_project_approved.html')
|
||||
|
||||
|
@ -106,6 +120,8 @@ class Command(BaseCommand):
|
|||
for project in approved_end:
|
||||
context = {'project': project}
|
||||
context['URLPREFIX'] = settings.URLPREFIX
|
||||
|
||||
|
||||
try:
|
||||
subject, from_email, to = 'Projektende erreicht', IF_EMAIL, project.email
|
||||
text_content = txt_mail_template.render(context)
|
||||
|
@ -113,14 +129,15 @@ class Command(BaseCommand):
|
|||
msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
|
||||
msg.attach_alternative(html_content, "text/html")
|
||||
msg.send()
|
||||
#print('if and of project approved mail would have been sent')
|
||||
|
||||
inform_subject, inform_from_email, inform_to = Projektorganisator*in wurde informiert', IF_EMAIL, IF_EMAIL
|
||||
inform_subject, inform_from_email, inform_to = 'Projektorganisator*in wurde informiert', IF_EMAIL, IF_EMAIL
|
||||
inform_text_content = txt_informMail_template.render(context)
|
||||
inform_html_content = html_informMail_template.render(context)
|
||||
inform_msg = EmailMultiAlternatives(inform_subject, inform_text_content, inform_from_email, [inform_to])
|
||||
inform_msg.attach_alternative(html_content, "text/html")
|
||||
inform_msg.send()
|
||||
|
||||
#print('if end of project orginformed mail would have been sent')
|
||||
|
||||
#send_mail('Projektende erreicht',
|
||||
# mail_template.render(context),
|
||||
|
@ -134,7 +151,11 @@ class Command(BaseCommand):
|
|||
# fail_silently=False)
|
||||
|
||||
project.end_mail_send = True
|
||||
project.mail_state = 'END'
|
||||
try:
|
||||
project.save()
|
||||
except:
|
||||
print( 'For project', project, 'there is possibly no project.start (', project.start, ') class')
|
||||
except BadHeaderError:
|
||||
self.stdout.write(self.style.ERROR('Invalid header found.'))
|
||||
|
||||
|
@ -145,7 +166,8 @@ class Command(BaseCommand):
|
|||
# get all projects where end was reached already, and send mails for the ones where status was put to NOT by admins
|
||||
|
||||
approved_notHappened = Project.objects.filter(status = 'NOT')\
|
||||
.exclude(end_mail_send = False)
|
||||
.exclude(end_mail_send = False)\
|
||||
.filter(mail_state = 'INF')
|
||||
|
||||
html_mail_template = get_template('input/if_not_of_project_approved.html')
|
||||
txt_mail_template = get_template('input/if_not_of_project_approved.txt')
|
||||
|
@ -164,7 +186,7 @@ class Command(BaseCommand):
|
|||
msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
|
||||
msg.attach_alternative(html_content, "text/html")
|
||||
msg.send()
|
||||
|
||||
#print('if not of project approved end mail would have been sent')
|
||||
|
||||
|
||||
#send_mail('Projektende erreicht',
|
||||
|
@ -173,12 +195,13 @@ class Command(BaseCommand):
|
|||
# [project.email],
|
||||
# fail_silently=False)
|
||||
|
||||
inform_subject, inform_from_email, inform_to = Projektorganisator*in wurde informiert', IF_EMAIL, IF_EMAIL
|
||||
inform_subject, inform_from_email, inform_to = 'Projektorganisator*in wurde informiert', IF_EMAIL, IF_EMAIL
|
||||
inform_text_content = txt_informMail_template.render(context)
|
||||
inform_html_content = html_informMail_template.render(context)
|
||||
inform_msg = EmailMultiAlternatives(inform_subject, inform_text_content, inform_from_email, [inform_to])
|
||||
inform_msg.attach_alternative(html_content, "text/html")
|
||||
inform_msg.send()
|
||||
#print('if not of project approved end mail orginformed would have been sent')
|
||||
|
||||
#send_mail('Projektorganisator*in wurde informiert',
|
||||
# informMail_template.render(context),
|
||||
|
@ -187,6 +210,7 @@ class Command(BaseCommand):
|
|||
# fail_silently=False)
|
||||
|
||||
project.end_mail_send = True
|
||||
project.mail_state = 'END'
|
||||
project.save()
|
||||
except BadHeaderError:
|
||||
self.stdout.write(self.style.ERROR('Invalid header found.'))
|
||||
|
@ -221,7 +245,8 @@ class Command(BaseCommand):
|
|||
|
||||
supported = Library.objects.filter(granted=True)\
|
||||
.filter(granted_date__lt = date.today() - timedelta(days=14))\
|
||||
.exclude(survey_mail_send=True)
|
||||
.exclude(survey_mail_send=True)\
|
||||
.exclude(mail_state = 'END')
|
||||
self.surveymails_to_object(supported,name='library')
|
||||
|
||||
def surveymails_to_hon(self):
|
||||
|
@ -229,7 +254,8 @@ class Command(BaseCommand):
|
|||
|
||||
supported = HonoraryCertificate.objects.filter(granted=True)\
|
||||
.filter(granted_date__lt = date.today() - timedelta(days=14))\
|
||||
.exclude(survey_mail_send=True)
|
||||
.exclude(survey_mail_send=True)\
|
||||
.exclude(mail_state = 'END')
|
||||
self.surveymails_to_object(supported, type='HON', name='project')
|
||||
|
||||
def surveymails_to_ifg(self):
|
||||
|
@ -237,7 +263,8 @@ class Command(BaseCommand):
|
|||
|
||||
supported = IFG.objects.filter(granted=True)\
|
||||
.filter(granted_date__lt = date.today() - timedelta(days=14))\
|
||||
.exclude(survey_mail_send=True)
|
||||
.exclude(survey_mail_send=True)\
|
||||
.exclude(mail_state = 'END')
|
||||
self.surveymails_to_object(supported, type='IFG', name='url')
|
||||
|
||||
def surveymails_to_lit(self):
|
||||
|
@ -245,14 +272,16 @@ class Command(BaseCommand):
|
|||
|
||||
supported = Literature.objects.filter(granted=True)\
|
||||
.filter(granted_date__lt = date.today() - timedelta(days=14))\
|
||||
.exclude(survey_mail_send=True)
|
||||
.exclude(survey_mail_send=True)\
|
||||
.exclude(mail_state = 'END')
|
||||
self.surveymails_to_object(supported, type='LIT', name='info')
|
||||
|
||||
def surveymails_to_project(self):
|
||||
'''send survey link 4 weeks after end of project reached'''
|
||||
supported = Project.objects.filter(granted=True)\
|
||||
.filter(end__lt = date.today() - timedelta(days=28))\
|
||||
.exclude(survey_mail_send=True)
|
||||
.exclude(survey_mail_send=True)\
|
||||
.exclude(mail_state = 'END')
|
||||
self.surveymails_to_object(supported, type='PRO', name='name')
|
||||
|
||||
def surveymails_to_travel(self):
|
||||
|
@ -260,7 +289,8 @@ class Command(BaseCommand):
|
|||
|
||||
supported = Travel.objects.filter(project__granted=True)\
|
||||
.filter(project__end__lt = date.today() - timedelta(days=21))\
|
||||
.exclude(survey_mail_send=True)
|
||||
.exclude(survey_mail_send=True)\
|
||||
.exclude(mail_state = 'END')
|
||||
self.surveymails_to_object(supported, type='TRAV', name='project')
|
||||
|
||||
def surveymails_to_mail_vis_lis(self):
|
||||
|
@ -273,7 +303,8 @@ class Command(BaseCommand):
|
|||
# get class via string
|
||||
supported = getattr(sys.modules[__name__], c).objects.filter(granted=True)\
|
||||
.filter(granted_date__lt = lastdate)\
|
||||
.exclude(survey_mail_send=True)
|
||||
.exclude(survey_mail_send=True)\
|
||||
.exclude(mail_state = 'END')
|
||||
self.surveymails_to_object(supported, type=typefield[count])
|
||||
count += 1
|
||||
|
||||
|
|
0
input/migrations/0063_businesscard_url_of_pic_alter_ifg_notes_and_more.py
Normal file → Executable file
0
input/migrations/0063_businesscard_url_of_pic_alter_ifg_notes_and_more.py
Normal file → Executable file
0
input/migrations/0064_businesscard_send_data_to_print_literature_selfbuy_and_more.py
Normal file → Executable file
0
input/migrations/0064_businesscard_send_data_to_print_literature_selfbuy_and_more.py
Normal file → Executable file
0
input/migrations/0071_honorarycertificate_intern_notes_travel_intern_notes.py
Normal file → Executable file
0
input/migrations/0071_honorarycertificate_intern_notes_travel_intern_notes.py
Normal file → Executable file
0
input/migrations/0072_businesscard_intern_notes_email_intern_notes_and_more.py
Normal file → Executable file
0
input/migrations/0072_businesscard_intern_notes_email_intern_notes_and_more.py
Normal file → Executable file
|
@ -0,0 +1,78 @@
|
|||
# Generated by Django 3.1.2 on 2022-11-29 16:01
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('input', '0075_literature_selfbuy_data'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='businesscard',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='concreteextern',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='concretevolunteer',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='email',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='honorarycertificate',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='ifg',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='library',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='list',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='literature',
|
||||
name='selfbuy_data',
|
||||
field=models.TextField(default='', help_text='Bitte gib hier alle persönlichen Daten an, die wir benötigen, um das Werk<br> für dich zu kaufen und es dir anschließend zu schicken (z.B. Vorname Nachname, Anschrift, <br> Telefonnummer, E-Mail-Adresse usw.). Trenne die einzelnen Angaben durch Zeilenumbrüche. <br> Hinweis: Telefonnummern bilden wir üblicherweise im internationalen Format gemäß<br> DIN 5008 ab. Als anzugebende E-Mail-Adresse empfehlen wir dir eine Wikimedia-Projekt-<br> Adresse, die du ebenfalls beantragen kannst, sofern du nicht bereits eine besitzt.', max_length=1000, verbose_name='Persönliche Daten sowie Adresse'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='literature',
|
||||
name='selfbuy_give_data',
|
||||
field=models.BooleanField(help_text='Weitergabe meiner Daten (Name, Postadresse) an den von mir angegebenen Anbieter/Dienstleister.', verbose_name='Datenweitergabe erlauben'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='literature',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='travel',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=True, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,123 @@
|
|||
# Generated by Django 3.1.2 on 2022-11-29 17:06
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('input', '0076_auto_20221129_1601'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='businesscard',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='concreteextern',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='concretevolunteer',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='email',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='honorarycertificate',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='ifg',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='library',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='list',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='literature',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='travel',
|
||||
name='mailState',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('SURVEY', 'die Survey Mail wurde bereits versendet'), ('END', 'alle automatischen Mails wurden bereits versendet')], default='END', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='businesscard',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='concreteextern',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='concretevolunteer',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='email',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='honorarycertificate',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='ifg',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='library',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='list',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='literature',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='travel',
|
||||
name='survey_mail_send',
|
||||
field=models.BooleanField(default=False, verbose_name='Keine Umfragemail schicken'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,68 @@
|
|||
# Generated by Django 3.1.2 on 2022-11-29 17:12
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('input', '0077_auto_20221129_1706'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RenameField(
|
||||
model_name='businesscard',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='concreteextern',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='concretevolunteer',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='email',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='honorarycertificate',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='ifg',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='library',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='list',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='literature',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='project',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
migrations.RenameField(
|
||||
model_name='travel',
|
||||
old_name='mailState',
|
||||
new_name='mail_state',
|
||||
),
|
||||
]
|
|
@ -0,0 +1,68 @@
|
|||
# Generated by Django 3.1.2 on 2022-11-29 23:10
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('input', '0078_auto_20221129_1712'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='businesscard',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='concreteextern',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='concretevolunteer',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='email',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='honorarycertificate',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='ifg',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='library',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='list',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='literature',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='travel',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('END', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('APPR', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='APPR', max_length=6),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,68 @@
|
|||
# Generated by Django 3.1.2 on 2022-11-29 23:23
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('input', '0079_auto_20221129_2310'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='businesscard',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='concreteextern',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='concretevolunteer',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='email',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='honorarycertificate',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='ifg',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='library',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='list',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='literature',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='travel',
|
||||
name='mail_state',
|
||||
field=models.CharField(choices=[('NONE', 'noch keine Mail versendet'), ('INF', 'die Benachrichtigung End-Mail wurde bereits versendet'), ('END', 'alle automatischen Mails, auch surveyMail, wurden bereits versendet')], default='NONE', max_length=6),
|
||||
),
|
||||
]
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue