Browse Source

chci dostávat číslo mailem + komentáře

export_seznamu_prednasek
Kateřina Č 4 years ago
parent
commit
5c006a08be
  1. 14
      seminar/forms.py
  2. 2
      seminar/models.py
  3. 12
      seminar/templates/seminar/profil/edit.html
  4. 11
      seminar/templates/seminar/profil/prihlaska.html
  5. 10
      seminar/views/views_all.py

14
seminar/forms.py

@ -10,10 +10,18 @@ import seminar.models as m
from datetime import date
import logging
# pro přidání políčka do formuláře je potřeba
# - mít v modelu tu položku, kterou chci upravovat
# - přidat do views (prihlaskaView, resitelEditView)
# - přidat do forms
# - includovat do html
class DateInput(forms.DateInput):
input_type = 'date'
# aby se datum dalo vybírat z kalendáře
input_type = 'date'
class TelInput(forms.TextInput):
# tohle je možná k niřemu, ale alepsoň to mění input type a nic to nekazí
input_type = 'tel'
input_pattern="^[+]?[()/0-9. -]{9,}$"
@ -81,6 +89,8 @@ class PrihlaskaForm(forms.Form):
max_value=date.today().year+8,
required=True)
zasilat = forms.ChoiceField(label='Kam zasílat čísla a řešení',choices = Resitel.ZASILAT_CHOICES, required=True)
zasilat_cislo_emailem = forms.BooleanField(label='Chci dostávat emailem upozornění na vydání nového čísla', required=True)
gdpr = forms.BooleanField(label='Souhlasím se zpracováním osobních údajů', required=True)
spam = forms.BooleanField(label='Souhlasím se zasíláním materiálů od MFF UK', required=False)
@ -174,6 +184,8 @@ class ProfileEditForm(forms.Form):
max_value=date.today().year+8,
required=True)
zasilat = forms.ChoiceField(label='Kam zasílat čísla a řešení',choices = Resitel.ZASILAT_CHOICES, required=True)
zasilat_cislo_emailem = forms.BooleanField(label='Chci dostávat email s upozorněním na vydání nového čísla', required=True)
spam = forms.BooleanField(label='Souhlasím se zasíláním materiálů od MFF UK', required=False)
# def clean_username(self):
# err_logger = logging.getLogger('seminar.prihlaska.problem')

2
seminar/models.py

@ -260,8 +260,10 @@ class Resitel(SeminarModelBase):
(ZASILAT_DO_SKOLY, 'Do školy'),
(ZASILAT_NIKAM, 'Nikam'),
]
zasilat = models.CharField('kam zasílat', max_length=32, choices=ZASILAT_CHOICES, blank=False, default=ZASILAT_DOMU)
zasilat_cislo_emailem = models.BooleanField('zasílat číslo emailem', help_text='True pokud chce řešitel dostávat číslo emailem', default=False)
poznamka = models.TextField('neveřejná poznámka', blank=True,
help_text='Neveřejná poznámka k řešiteli (plain text)')

12
seminar/templates/seminar/profil/edit.html

@ -6,6 +6,17 @@
{{form.media}}
<script src="{% static 'seminar/prihlaska.js' %}"></script>
{% endblock %}
<!--
# pro přidání políčka do formuláře je potřeba
# - mít v modelu tu položku, kterou chci upravovat
# - přidat do views (prihlaskaView, resitelEditView)
# - přidat do forms
# - includovat do html
-->
{% block content %}
<h1>
{% block nadpis1a %}{% block nadpis1b %}
@ -73,6 +84,7 @@
</h4>
<table class="form">
{% include "seminar/profil/prihlaska_field.html" with field=form.zasilat %}
{% include "seminar/profil/prihlaska_field.html" with field=form.zasilat_cislo_emailem %}
</table>
<hr>

11
seminar/templates/seminar/profil/prihlaska.html

@ -7,6 +7,16 @@
<script src="{% static 'seminar/prihlaska.js' %}"></script>
{% endblock %}
<!--
# pro přidání políčka do formuláře je potřeba
# - mít v modelu tu položku, kterou chci upravovat
# - přidat do views (prihlaskaView, resitelEditView)
# - přidat do forms
# - includovat do html
-->
{% block content %}
<h1>
{% block nadpis1a %}{% block nadpis1b %}
@ -77,6 +87,7 @@
</h4>
<table class="form">
{% include "seminar/profil/prihlaska_field.html" with field=form.zasilat %}
{% include "seminar/profil/prihlaska_field.html" with field=form.zasilat_cislo_emailem %}
</table>
<hr>

10
seminar/views/views_all.py

@ -1332,6 +1332,12 @@ class ResitelView(LoginRequiredMixin,generic.DetailView):
### Formulare
# pro přidání políčka do formuláře je potřeba
# - mít v modelu tu položku, kterou chci upravovat
# - přidat do views (prihlaskaView, resitelEditView)
# - přidat do forms
# - includovat do html
class AddSolutionView(LoginRequiredMixin, FormView):
template_name = 'seminar/org/vloz_reseni.html'
form_class = f.VlozReseniForm
@ -1448,6 +1454,7 @@ def resitelEditView(request):
resitel_edit.skola = fcd['skola']
resitel_edit.rok_maturity = fcd['rok_maturity']
resitel_edit.zasilat = fcd['zasilat']
resitel_edit.zasilat_cislo_emailem = fcd['zasilat_cislo_emailem']
if fcd.get('skola'):
resitel_edit.skola = fcd['skola']
else:
@ -1511,7 +1518,8 @@ def prihlaskaView(request):
r = Resitel(
rok_maturity = fcd['rok_maturity'],
zasilat = fcd['zasilat']
zasilat = fcd['zasilat'],
zasilat_cislo_emailem = fcd['zasilat_cislo_emailem']
)
r.save()

Loading…
Cancel
Save