diff --git a/seminar/views/views_all.py b/seminar/views/views_all.py index ecbe82fa..08465925 100644 --- a/seminar/views/views_all.py +++ b/seminar/views/views_all.py @@ -1520,13 +1520,17 @@ def resitelEditView(request): ## Načtení objektů Osoba a Resitel patřících k aktuálně přihlášenému uživateli u = request.user osoba_edit = Osoba.objects.get(user=u) - resitel_edit = osoba_edit.resitel + if hasattr(osoba_edit,'resitel'): + resitel_edit = osoba_edit.resitel + else: + resitel_edit = None user_edit = osoba_edit.user ## Vytvoření slovníku, kterým předvyplním formulář prefill_1=model_to_dict(user_edit) - prefill_2=model_to_dict(resitel_edit) + if resitel_edit: + prefill_2=model_to_dict(resitel_edit) + prefill_1.update(prefill_2) prefill_3=model_to_dict(osoba_edit) - prefill_1.update(prefill_2) prefill_1.update(prefill_3) form = ProfileEditForm(initial=prefill_1) ## Změna údajů a jejich uložení @@ -1552,17 +1556,18 @@ def resitelEditView(request): ## Neznámá země msg = "Unknown country {}".format(fcd['stat_text']) - ## Změny v řešiteli - 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'): + if resitel_edit: + ## Změny v řešiteli resitel_edit.skola = fcd['skola'] - else: - # Unknown school - log it - msg = "Unknown school {}, {}".format(fcd['skola_nazev'],fcd['skola_adresa']) - resitel_edit.save() + 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: + # Unknown school - log it + msg = "Unknown school {}, {}".format(fcd['skola_nazev'],fcd['skola_adresa']) + resitel_edit.save() osoba_edit.save() return formularOKView(request) else: