Reforma nastavení zasílání poštou
This commit is contained in:
parent
c8023244bd
commit
c97a841041
6 changed files with 54 additions and 5 deletions
|
@ -165,6 +165,7 @@ def resitelEditView(request):
|
||||||
resitel_edit.rok_maturity = fcd['rok_maturity']
|
resitel_edit.rok_maturity = fcd['rok_maturity']
|
||||||
resitel_edit.zasilat = fcd['zasilat']
|
resitel_edit.zasilat = fcd['zasilat']
|
||||||
resitel_edit.zasilat_cislo_emailem = fcd['zasilat_cislo_emailem']
|
resitel_edit.zasilat_cislo_emailem = fcd['zasilat_cislo_emailem']
|
||||||
|
resitel_edit.zasilat_cislo_papirove = fcd['zasilat_cislo_papirove']
|
||||||
if fcd.get('skola'):
|
if fcd.get('skola'):
|
||||||
resitel_edit.skola = fcd['skola']
|
resitel_edit.skola = fcd['skola']
|
||||||
else:
|
else:
|
||||||
|
@ -267,7 +268,8 @@ def prihlaskaView(request):
|
||||||
prezdivka_resitele=fcd['prezdivka_resitele'],
|
prezdivka_resitele=fcd['prezdivka_resitele'],
|
||||||
rok_maturity = fcd['rok_maturity'],
|
rok_maturity = fcd['rok_maturity'],
|
||||||
zasilat = fcd['zasilat'],
|
zasilat = fcd['zasilat'],
|
||||||
zasilat_cislo_emailem = fcd['zasilat_cislo_emailem']
|
zasilat_cislo_emailem = fcd['zasilat_cislo_emailem'],
|
||||||
|
zasilat_cislo_papirove = fcd['zasilat_cislo_papirove'],
|
||||||
)
|
)
|
||||||
|
|
||||||
if fcd.get('skola'):
|
if fcd.get('skola'):
|
||||||
|
@ -284,7 +286,7 @@ def prihlaskaView(request):
|
||||||
except m.Resitel.DoesNotExist:
|
except m.Resitel.DoesNotExist:
|
||||||
# Stejný trik:
|
# Stejný trik:
|
||||||
orig_resitel = r
|
orig_resitel = r
|
||||||
resitel_attrs = ['skola', 'rok_maturity', 'zasilat', 'zasilat_cislo_emailem']
|
resitel_attrs = ['skola', 'rok_maturity', 'zasilat', 'zasilat_cislo_emailem', 'zasilat_cislo_papirove']
|
||||||
for attr in resitel_attrs:
|
for attr in resitel_attrs:
|
||||||
new = getattr(r, attr)
|
new = getattr(r, attr)
|
||||||
old = getattr(orig_resitel, attr)
|
old = getattr(orig_resitel, attr)
|
||||||
|
@ -345,6 +347,7 @@ def dataResiteluCsvResponse(queryset, columns=None, with_header=True):
|
||||||
'rok_maturity',
|
'rok_maturity',
|
||||||
'zasilat',
|
'zasilat',
|
||||||
'zasilat_cislo_emailem',
|
'zasilat_cislo_emailem',
|
||||||
|
'zasilat_cislo_papirove',
|
||||||
'osoba__datum_registrace',
|
'osoba__datum_registrace',
|
||||||
'osoba__datum_souhlasu_udaje',
|
'osoba__datum_souhlasu_udaje',
|
||||||
'osoba__datum_souhlasu_zasilani',
|
'osoba__datum_souhlasu_zasilani',
|
||||||
|
|
42
seminar/migrations/0112_resitel_zasilat_cislo_papirove.py
Normal file
42
seminar/migrations/0112_resitel_zasilat_cislo_papirove.py
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
# Generated by Django 2.2.28 on 2023-03-13 22:02
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
ZASILAT_DOMU = 'domu'
|
||||||
|
ZASILAT_DO_SKOLY = 'do_skoly'
|
||||||
|
ZASILAT_NIKAM = 'nikam'
|
||||||
|
|
||||||
|
|
||||||
|
def default_zasilat_papirove(apps, schema_editor):
|
||||||
|
Resitel = apps.get_model('seminar', 'Resitel')
|
||||||
|
|
||||||
|
for resitel in Resitel.objects.all():
|
||||||
|
resitel.zasilat_cislo_papirove = resitel.zasilat != ZASILAT_NIKAM
|
||||||
|
if resitel.zasilat == ZASILAT_NIKAM:
|
||||||
|
resitel.zasilat = ZASILAT_DOMU if resitel.osoba.ulice else ZASILAT_DO_SKOLY
|
||||||
|
resitel.save()
|
||||||
|
|
||||||
|
|
||||||
|
def vrat_nikam(apps, schema_editor):
|
||||||
|
Resitel = apps.get_model('seminar', 'Resitel')
|
||||||
|
|
||||||
|
for resitel in Resitel.objects.all():
|
||||||
|
if not resitel.zasilat_cislo_papirove:
|
||||||
|
resitel.zasilat = ZASILAT_NIKAM
|
||||||
|
resitel.save()
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('seminar', '0111_nikam2nezasilat_papirove'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='resitel',
|
||||||
|
name='zasilat_cislo_papirove',
|
||||||
|
field=models.BooleanField(default=True, help_text='True pokud chce řešitel dostávat číslo papírově', verbose_name='zasílat číslo papírově'),
|
||||||
|
),
|
||||||
|
migrations.RunPython(default_zasilat_papirove, vrat_nikam),
|
||||||
|
]
|
|
@ -236,6 +236,8 @@ class Resitel(SeminarModelBase):
|
||||||
|
|
||||||
zasilat_cislo_emailem = models.BooleanField('zasílat číslo emailem', help_text='True pokud chce řešitel dostávat číslo emailem', default=False)
|
zasilat_cislo_emailem = models.BooleanField('zasílat číslo emailem', help_text='True pokud chce řešitel dostávat číslo emailem', default=False)
|
||||||
|
|
||||||
|
zasilat_cislo_papirove = models.BooleanField('zasílat číslo papírově', help_text='True pokud chce řešitel dostávat číslo papírově', default=True)
|
||||||
|
|
||||||
poznamka = models.TextField('neveřejná poznámka', blank=True,
|
poznamka = models.TextField('neveřejná poznámka', blank=True,
|
||||||
help_text='Neveřejná poznámka k řešiteli (plain text)')
|
help_text='Neveřejná poznámka k řešiteli (plain text)')
|
||||||
|
|
||||||
|
|
|
@ -290,9 +290,9 @@ class Cislo(SeminarModelBase):
|
||||||
|
|
||||||
paticka = "---\nK odběru těchto e-mailů jste se přihlásili na stránkách https://mam.matfyz.cz. Z odběru se lze odhlásit na https://mam.matfyz.cz/resitel/osobni-udaje/"
|
paticka = "---\nK odběru těchto e-mailů jste se přihlásili na stránkách https://mam.matfyz.cz. Z odběru se lze odhlásit na https://mam.matfyz.cz/resitel/osobni-udaje/"
|
||||||
|
|
||||||
posli(text_mailu + paticka, resitele_vsichni.filter(zasilat=pm.Resitel.ZASILAT_NIKAM))
|
posli(text_mailu + paticka, resitele_vsichni.filter(zasilat=pm.Resitel.zasilat_cislo_papirove))
|
||||||
posli(text_mailu + 'P. S. Brzy budeme též rozesílat papírovou verzi čísla. Připomínáme, že pokud papírovou verzi čísla nevyužijete, můžete v https://mam.mff.cuni.cz/resitel/osobni-udaje/ zaškrtnout, abychom vám ji neposílali. Čísla vždy můžete nalézt v našem archivu a dál vám budou chodit e-mailem. Děkujeme.\n' + paticka,
|
posli(text_mailu + 'P. S. Brzy budeme též rozesílat papírovou verzi čísla. Připomínáme, že pokud papírovou verzi čísla nevyužijete, můžete v https://mam.mff.cuni.cz/resitel/osobni-udaje/ zaškrtnout, abychom vám ji neposílali. Čísla vždy můžete nalézt v našem archivu a dál vám budou chodit e-mailem. Děkujeme.\n' + paticka,
|
||||||
resitele_vsichni.exclude(zasilat=pm.Resitel.ZASILAT_NIKAM))
|
resitele_vsichni.exclude(zasilat=pm.Resitel.zasilat_cislo_papirove))
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
def save(self, *args, **kwargs):
|
||||||
super().save(*args, **kwargs)
|
super().save(*args, **kwargs)
|
||||||
|
|
|
@ -100,6 +100,7 @@
|
||||||
{% with o=r.osoba %}
|
{% with o=r.osoba %}
|
||||||
{% with s=r.skola %}
|
{% with s=r.skola %}
|
||||||
{% spaceless %}
|
{% spaceless %}
|
||||||
|
{% if r.zasilat_cislo_papirove %}
|
||||||
{% if r.zasilat == "do_skoly" %}
|
{% if r.zasilat == "do_skoly" %}
|
||||||
{% if o.stat == "CZ" %}
|
{% if o.stat == "CZ" %}
|
||||||
\obalka{{o.jmeno|sloz}}{{o.prijmeni|sloz}}{{s.nazev|sloz}}{{s.ulice|sloz}}{{s.psc|sloz}}{{s.mesto|sloz}}{{''|sloz}}
|
\obalka{{o.jmeno|sloz}}{{o.prijmeni|sloz}}{{s.nazev|sloz}}{{s.ulice|sloz}}{{s.psc|sloz}}{{s.mesto|sloz}}{{''|sloz}}
|
||||||
|
@ -115,6 +116,7 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
{% endspaceless %}
|
{% endspaceless %}
|
||||||
{% endwith %}
|
{% endwith %}
|
||||||
{% endwith %}
|
{% endwith %}
|
||||||
|
|
|
@ -265,7 +265,7 @@ def merge_resitele(cilovy, zdrojovy):
|
||||||
# Postup:
|
# Postup:
|
||||||
# Sjednotit / upravit informace cílového řešitele
|
# Sjednotit / upravit informace cílového řešitele
|
||||||
print('Upravuji data modelu')
|
print('Upravuji data modelu')
|
||||||
fieldy_shoda = ['skola', 'rok_maturity', 'zasilat', 'zasilat_cislo_emailem']
|
fieldy_shoda = ['skola', 'rok_maturity', 'zasilat', 'zasilat_cislo_emailem', 'zasilat_cislo_papirove']
|
||||||
|
|
||||||
for f in fieldy_shoda:
|
for f in fieldy_shoda:
|
||||||
zf = getattr(zdrojovy, f)
|
zf = getattr(zdrojovy, f)
|
||||||
|
|
Loading…
Reference in a new issue