Conjunto de cambios 3b38b3f en sapic para users/views.py
- Fecha y hora:
- 09/08/2017 16:22:17 (hace 7 años)
- Branches:
- master, erwin, explicacion_situacional, gestion_usuarios, taller_django
- Children:
- 79326b0
- Parents:
- d95c87b
- Fichero:
-
- 1 editado
Leyenda
- No modificado
- Añadido
- Eliminado
-
users/views.py
rd95c87b r3b38b3f 10 10 11 11 from django.shortcuts import render 12 13 12 from django import forms 14 13 from django.db.models import Q … … 50 49 from utils.views import LoginRequeridoPerAuth 51 50 52 from .forms import ( 53 FormularioLogin, FormularioUpdate, FormularioAdminRegPerfil, 54 FormularioAdminRegistro, PasswordChangeForm, FormularioAdminUpdate 55 ) 56 from .models import UserProfile 51 from .forms import * 52 53 from organizaciones.models import VoceroComite 54 55 from .models import ( 56 UserProfile, UserProfileVocero 57 ) 58 57 59 58 60 … … 60 62 class LoginView(FormView): 61 63 """! 62 Muestra el formulario de ingreso a la aplicación 64 Muestra el formulario de ingreso a la aplicación 63 65 64 66 @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve) … … 447 449 messages.success(self.request, "Usuario %s Actualizado con exito\ 448 450 " % (str(objeto.username))) 449 return super(UpdatePerfil, self).forms_valid(forms) 451 return super(UpdatePerfil, self).forms_valid(forms) 452 453 454 class RegisterVocerosView(LoginRequeridoPerAuth, MultiModelFormView): 455 """! 456 Muestra el formulario de registro de usuarios 457 458 @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve) 459 @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> 460 @date 09-01-2017 461 @version 1.0.0 462 """ 463 model = UserProfileVocero 464 form_classes = { 465 'user': FormularioAdminRegVoceros, 466 'user_vocero': FormularioRegVoceros, 467 } 468 template_name = 'users.register.vocero.html' 469 success_url = reverse_lazy('users:options') 470 group_required = [u"Administradores"] 471 record_id = None 472 473 474 def get_objects(self, **kwargs): 475 """ 476 Carga el formulario en la vista,para actualizar el perfil del usuario 477 @return: El contexto con los objectos para la vista 478 """ 479 self.record_id = self.kwargs.get('pk', None) 480 try: 481 record = self.model.objects.select_related().get(fk_user=self.record_id) 482 except self.model.DoesNotExist: 483 record = None 484 return { 485 'user_vocero': record, 486 'user': record.fk_user if record else None} 487 488 def forms_valid(self, forms, **kwargs): 489 """ 490 Valida el formulario del proyecto 491 @return: Dirige con un mensaje de exito al registro de proyecto 492 """ 493 # Campos para guardar los datos de un Nuevo User 494 documento_identidad = forms['user_vocero'].cleaned_data['documento'] 495 tipo_documento = forms['user_vocero'].cleaned_data['fk_tipo_documento'] 496 organizacion_social = forms['user_vocero'].cleaned_data['organizacion'] 497 comite = forms['user_vocero'].cleaned_data['comite_unidad_ejecutiva'] 498 try: 499 vocero = Vocero.objects.get(fk_org_social=organizacion_social, 500 fk_tipo_documento=tipo_documento, 501 documento_identidad=documento_identidad) 502 except: 503 pass 504 actualizar_vocero = self.form_classes['user_vocero'](self.request.POST, instance=vocero) 505 actualizar_vocero.save(commit=False) 506 507 nuevo_usuario = forms['user'].save() 508 vocero_actualizado = actualizar_vocero.save() 509 nuevo_usuario.groups.add(Group.objects.get(pk=2)) 510 asociar_voceros = self.model(fk_user=nuevo_usuario, 511 fk_vocero=vocero_actualizado) 512 if comite is not None: 513 try: 514 comite_unidad = VoceroComite(fk_vocero=vocero_actualizado, 515 fk_comite=fk_comite) 516 comite_unidad.save() 517 except: 518 messages.warning(self.request, "Existe un problema al relacionar el comite a este vocero") 519 520 try: 521 asociar_voceros.save() 522 nombre_vocero = str(vocero_actualizado.nombres) + " " + str(vocero_actualizado.apellidos) 523 messages.success(self.request, "Se creo el usuario %s, para el vocero %s" % (nuevo_usuario.username, nombre_vocero)) 524 except: 525 messages.error(self.request, "El voceros al que quieres asociar a la cuenta ya existe o ya se encuentra asociado" ) 526 527 return redirect(self.success_url) 528 529 def forms_invalid(self, forms, **kwargs): 530 531 return super(RegisterVocerosView, self).forms_invalid(forms)
Nota: Vea TracChangeset
para ayuda en el uso del visor de conjuntos de cambios.