From aebf3565a6de0826015620791d7a56eb92872124 Mon Sep 17 00:00:00 2001 From: Wilmer Date: Tue, 7 Mar 2017 14:51:20 -0400 Subject: [PATCH] =?UTF-8?q?arreglado=20la=20forma=20de=20bloquear=20la=20s?= =?UTF-8?q?elecci=C3=B3n=20cuando=20avanza,=20desbloquear=20cuando=20retro?= =?UTF-8?q?cede=20y=20enviar=20todo=20al=20servidor;=20tambi=C3=A9n=20corr?= =?UTF-8?q?egido=20el=20orden=20de=20los=20escalafones?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../views/solicitudes/adscripcion.html.twig | 68 +++++++++++++++++----- src/AppBundle/Controller/AdscripcionController.php | 16 +++++ src/AppBundle/Form/UserType.php | 67 +++++++++++---------- 3 files changed, 106 insertions(+), 45 deletions(-) diff --git a/app/Resources/views/solicitudes/adscripcion.html.twig b/app/Resources/views/solicitudes/adscripcion.html.twig index 5cb9bde..d0c0064 100644 --- a/app/Resources/views/solicitudes/adscripcion.html.twig +++ b/app/Resources/views/solicitudes/adscripcion.html.twig @@ -78,23 +78,57 @@ $("#user_titulo_trabajo").prop('required', $(this).prop("checked")); }); + + + if ($('#user_ascenso').prop('checked')) { + $('#user_escala').prop('disabled', true); + $('#user_oposicion').prop('disabled',true); + if($("#user_escala").val() == 1) + $('.esc_asistente').show(); + if($("#user_escala").val() == 2) + $('.esc_agregado').show(); + if($("#user_escala").val() == 3) + $('.esc_asociado').show(); + if($("#user_escala").val() == 4) + $('.esc_titular').show(); + } + + $('#user_ascenso').click(function() { - if ((!$("#user_escala").val()) && ($('#user_ascenso').prop('checked'))){ + + + if($("#user_escala").val() >= 1) $('#user_escala').prop('disabled', true); + + if(!$('#user_ascenso').prop("checked")){ + $('#user_escala').prop('disabled', false); + } + + if (($("#user_escala").val() == "") && ($('#user_ascenso').prop('checked'))){ alert("Primero debe seleccionar a que escalafón aprobó concurso"); $('#user_ascenso').prop('checked', false); + $('#user_escala').prop('disabled', false); } - + + if (($("#user_escala").val() == 5 ) && ($('#user_ascenso').prop('checked'))){ + alert("No existen mas escalafones"); + $('#user_ascenso').prop('checked', false); + //$('#user_ascenso').attr('disabled', true); + } + + if($("#user_escala").val() == 1) $('.esc_asistente')[this.checked ? "show" : "hide"](); if($("#user_escala").val() == 2) - $('.esc_asociado')[this.checked ? "show" : "hide"](); + $('.esc_agregado')[this.checked ? "show" : "hide"](); if($("#user_escala").val() == 3) - $('.esc_agregado')[this.checked ? "show" : "hide"](); + $('.esc_asociado')[this.checked ? "show" : "hide"](); if($("#user_escala").val() == 4) $('.esc_titular')[this.checked ? "show" : "hide"](); }); + + @@ -115,18 +149,16 @@ } }); - - - - + + $('#user_ascenso2').click(function() { - $('.esc_asociado')[this.checked ? "show" : "hide"](); + $('.esc_agregado')[this.checked ? "show" : "hide"](); }); $('#user_ascenso3').click(function() { - $('.esc_agregado')[this.checked ? "show" : "hide"](); + $('.esc_asociado')[this.checked ? "show" : "hide"](); }); @@ -136,16 +168,26 @@ }); - $('#user_escala').change(function(){ - if ($('#user_escala').val() >= 1) $('#user_oposicion').attr('disabled',true); + $('#user_escala').click(function(){ + + //alert($('#user_escala').val()); + if ($('#user_escala').val() == "") $('#user_oposicion').prop('disabled',false); + if ($('#user_escala').val() >= 1) $('#user_oposicion').prop('disabled',true); + if ($('#user_escala').val() < 5) $('#user_ascenso').prop('disabled',false); else $('#user_oposicion').attr('disabled',false); }); - + //boton para mostrarle al usuario que estamos esperando $('.btn').on('click', function() { var $this = $(this); $this.button('loading'); }); + + //rehabilitamos todo lo que estaba bloqueado para que pueda ser enviado al servidor + $('form').on('submit', function() { + //alert("submit"); + $('input, select').prop('disabled', false); + }); {% endblock %} diff --git a/src/AppBundle/Controller/AdscripcionController.php b/src/AppBundle/Controller/AdscripcionController.php index 2812fc9..bd18bf8 100644 --- a/src/AppBundle/Controller/AdscripcionController.php +++ b/src/AppBundle/Controller/AdscripcionController.php @@ -62,6 +62,22 @@ class AdscripcionController extends Controller $form->get('documento_oposicion')->addError(new FormError('Si selecciona que tiene concurso de oposción, debe subir el digital de la aprobación del concurso')); } } + + + if ($form->get('ascenso')->getData()) { + //var_dump($form); + if (!$form->get('fecha_oposicion')->getData()) { + $form->get('fecha_oposicion')->addError(new FormError('Fecha no puede estar en blanco')); + } + + if (!$form->get('escala')->getData()) { + $form->get('escala')->addError(new FormError('Si selecciona que tiene concurso de oposción, debe seleccionar a que escalafón lo aprobó')); + } + + if (!$form->get('documento_oposicion')->getData()) { + $form->get('documento_oposicion')->addError(new FormError('Si selecciona que tiene concurso de oposción, debe subir el digital de la aprobación del concurso')); + } + } } if ($form->isSubmitted() && $form->isValid()) { diff --git a/src/AppBundle/Form/UserType.php b/src/AppBundle/Form/UserType.php index e6dc092..c55eb2c 100644 --- a/src/AppBundle/Form/UserType.php +++ b/src/AppBundle/Form/UserType.php @@ -233,24 +233,26 @@ class UserType extends AbstractType - //Asociado - ->add('fecha_ascenso_asociado', BirthdayType::class, array( - 'label' => 'fecha ascenso ASOCIADO', - 'label_attr' => array( 'class' => 'esc_asociado'), + + + //Agregado + ->add('fecha_ascenso_agregado', BirthdayType::class, array( + 'label' => 'fecha ascenso AGREGADO', + 'label_attr' => array( 'class' => 'esc_agregado'), 'required' => false, 'attr' => array( - 'class' => 'esc_asociado' + 'class' => 'esc_agregado' ), 'years' => range(2003, date("Y")) )) - ->add('documento_asociado', FileType::class, array( - 'label' => 'Digital Documento asociado', - 'label_attr' => array( 'class' => 'esc_asociado'), + ->add('documento_agregado', FileType::class, array( + 'label' => 'Digital Documento agregado', + 'label_attr' => array( 'class' => 'esc_agregado'), 'required' => false, 'attr' => array( 'style' => 'display:none;', - 'class' => 'esc_asociado' + 'class' => 'esc_agregado' ), 'constraints' => array( new File(array( @@ -269,53 +271,54 @@ class UserType extends AbstractType ->add('ascenso3', CheckboxType::class, array( 'label' => '¿Otro Ascenso?', - 'label_attr' => array( 'class' => 'esc_asociado'), + 'label_attr' => array( 'class' => 'esc_agregado'), 'required' => false, 'attr' => array( - 'class' => 'esc_asociado' + 'class' => 'esc_agregado' ) )) - //Agregado - ->add('fecha_ascenso_agregado', BirthdayType::class, array( - 'label' => 'fecha ascenso AGREGADO', - 'label_attr' => array( 'class' => 'esc_agregado'), + + //Asociado + ->add('fecha_ascenso_asociado', BirthdayType::class, array( + 'label' => 'fecha ascenso ASOCIADO', + 'label_attr' => array( 'class' => 'esc_asociado'), 'required' => false, 'attr' => array( - 'class' => 'esc_agregado' + 'class' => 'esc_asociado' ), 'years' => range(2003, date("Y")) )) - ->add('documento_agregado', FileType::class, array( - 'label' => 'Digital Documento agregado', - 'label_attr' => array( 'class' => 'esc_agregado'), + ->add('documento_asociado', FileType::class, array( + 'label' => 'Digital Documento asociado', + 'label_attr' => array( 'class' => 'esc_asociado'), 'required' => false, 'attr' => array( 'style' => 'display:none;', - 'class' => 'esc_agregado' + 'class' => 'esc_asociado' ), 'constraints' => array( - new File(array( - 'maxSize' => '1024K', - 'mimeTypes' => [ - 'application/pdf', - 'application/x-pdf', - 'image/png', - 'image/jpg', - 'image/jpeg' + new File(array( + 'maxSize' => '1024K', + 'mimeTypes' => [ + 'application/pdf', + 'application/x-pdf', + 'image/png', + 'image/jpg', + 'image/jpeg' ], - 'mimeTypesMessage' => 'Sólo se permiten extensiones png, jpeg y pdf' - )) + 'mimeTypesMessage' => 'Sólo se permiten extensiones png, jpeg y pdf' + )) ) )) ->add('ascenso4', CheckboxType::class, array( 'label' => '¿Otro Ascenso?', - 'label_attr' => array( 'class' => 'esc_agregado'), + 'label_attr' => array( 'class' => 'esc_asociado'), 'required' => false, 'attr' => array( - 'class' => 'esc_agregado' + 'class' => 'esc_asociado' ) )) -- 2.0.0