X-Git-Url: http://git.cascardo.info/?p=cascardo%2Feventmanager.git;a=blobdiff_plain;f=views.py;h=077786f894e273c3663f4aa76c27f51e2d15e77d;hp=4208dfacf4a42a1500a69a505e1178e6a366749e;hb=11faa820abeb69b688db5076aa4c1cc663dfeb53;hpb=d585123c407fd6eac4f786f4cbe5e1b0ec51183a diff --git a/views.py b/views.py index 4208dfa..077786f 100644 --- a/views.py +++ b/views.py @@ -168,6 +168,7 @@ def inscricao_individual(request): p.telefone = cd['telefone'] p.home_page = cd['home_page'] p.comercial = cd['inscricao_comercial'] + p.cpf_cnpj = cd['cpf_cnpj'] p.save() u = authenticate(username=cd['nome_usuario'], password=cd['senha']) @@ -209,6 +210,7 @@ def inscricao_caravana(request): p.telefone = cd['telefone'] p.home_page = cd['home_page'] p.comercial = False # yeah, always false! + p.cpf_cnpj = '' p.save() c = Caravana() @@ -375,22 +377,24 @@ def editar_trabalho(request, codigo): @login_required def meus_dados(request): - form = EditarPalestrante(request.POST or None) - palestrante = request.user.palestrante_set.get() - ok = False + try: + entity = request.user.palestrante_set.get() + except Palestrante.DoesNotExist: + entity = request.user.participante_set.get() + + FormKlass = form_for_instance(entity) - for name, field in form.fields.items(): - field.initial = getattr(palestrante, name) + # ugly hammer to hide some fields... + del FormKlass.base_fields['usuario'] + ok = False + form = FormKlass(request.POST or None) if request.POST and form.is_valid(): - cd = form.cleaned_data - for name, field in form.fields.items(): - setattr(palestrante, name, cd[name]) - palestrante.save() + form.save() ok = True - c = {'form': form, 'ok': ok} - return build_response(request, 'editar_palestrante.html', c) + c = {'form': form, 'ok': ok, 'title': entity.__class__.__name__} + return build_response(request, 'editar_usuario.html', c) @enable_login_form