Commit 09c2dca20de62bef24c062a72c61c06f6a769509

Authored by Wilmer
1 parent 68bcc844f5
Exists in master

permitir editar los jurados

app/Resources/views/base_app.html.twig
@@ -98,7 +98,7 @@ @@ -98,7 +98,7 @@
98 <li> 98 <li>
99 <a href="javascript:void(0);" class="waves-effect waves-button waves-classic show-search"><i class="fa fa-search"></i></a> 99 <a href="javascript:void(0);" class="waves-effect waves-button waves-classic show-search"><i class="fa fa-search"></i></a>
100 </li> 100 </li>
101 - <li class="dropdown"> 101 + {#<li class="dropdown">
102 <a href="#" class="dropdown-toggle waves-effect waves-button waves-classic" data-toggle="dropdown"><i class="fa fa-envelope"></i><span class="badge badge-success pull-right">4</span></a> 102 <a href="#" class="dropdown-toggle waves-effect waves-button waves-classic" data-toggle="dropdown"><i class="fa fa-envelope"></i><span class="badge badge-success pull-right">4</span></a>
103 <ul class="dropdown-menu title-caret dropdown-lg" role="menu"> 103 <ul class="dropdown-menu title-caret dropdown-lg" role="menu">
104 <li><p class="drop-title">You have 4 new messages !</p></li> 104 <li><p class="drop-title">You have 4 new messages !</p></li>
@@ -133,7 +133,7 @@ @@ -133,7 +133,7 @@
133 </li> 133 </li>
134 <li class="drop-all"><a href="#" class="text-center">All Messages</a></li> 134 <li class="drop-all"><a href="#" class="text-center">All Messages</a></li>
135 </ul> 135 </ul>
136 - </li> 136 + </li>#}
137 {% if is_granted('ROLE_COORDINADOR_REGIONAL') %} 137 {% if is_granted('ROLE_COORDINADOR_REGIONAL') %}
138 138
139 <li class="dropdown"> 139 <li class="dropdown">
@@ -214,6 +214,14 @@ @@ -214,6 +214,14 @@
214 </a> 214 </a>
215 </li> 215 </li>
216 216
  217 + <li>
  218 + <a href="{{path('admin_jurados_index')}}">
  219 + <div class="task-icon badge badge-success"><i class="icon-users"></i></div>
  220 + <span class="badge badge-roundless badge-default pull-right">1min ago</span>
  221 + <p class="task-details">Actualizar Jurados</p>
  222 + </a>
  223 + </li>
  224 +
217 </ul> 225 </ul>
218 </li> 226 </li>
219 <li class="drop-all"><a href="#" class="text-center">All Tasks</a></li> 227 <li class="drop-all"><a href="#" class="text-center">All Tasks</a></li>
@@ -227,12 +235,12 @@ @@ -227,12 +235,12 @@
227 <img class="img-circle avatar" width="40" height="40" alt=""> 235 <img class="img-circle avatar" width="40" height="40" alt="">
228 </a> 236 </a>
229 <ul class="dropdown-menu dropdown-list" role="menu"> 237 <ul class="dropdown-menu dropdown-list" role="menu">
230 - <li role="presentation"><a href="profile.html"><i class="fa fa-user"></i>Profile</a></li>  
231 - <li role="presentation"><a href="calendar.html"><i class="fa fa-calendar"></i>Calendar</a></li> 238 + <li role="presentation"><a href="profile.html"><i class="fa fa-user"></i>Actualizar Datos</a></li>
  239 + {#<li role="presentation"><a href="calendar.html"><i class="fa fa-calendar"></i>Calendar</a></li>
232 <li role="presentation"><a href="inbox.html"><i class="fa fa-envelope"></i>Inbox<span class="badge badge-success pull-right">4</span></a></li> 240 <li role="presentation"><a href="inbox.html"><i class="fa fa-envelope"></i>Inbox<span class="badge badge-success pull-right">4</span></a></li>
233 <li role="presentation" class="divider"></li> 241 <li role="presentation" class="divider"></li>
234 - <li role="presentation"><a href="lock-screen.html"><i class="fa fa-lock"></i>Lock screen</a></li>  
235 - <li role="presentation"><a href={{ path('logout') }}><i class="fa fa-sign-out m-r-xs"></i>Log out</a></li> 242 + <li role="presentation"><a href="lock-screen.html"><i class="fa fa-lock"></i>Lock screen</a></li>#}
  243 + <li role="presentation"><a href={{ path('logout') }}><i class="fa fa-sign-out m-r-xs"></i>Cerrar Sesión</a></li>
236 </ul> 244 </ul>
237 </li> 245 </li>
238 {#<li> 246 {#<li>
app/Resources/views/usuarios/jurados_edit.html.twig
@@ -0,0 +1,20 @@ @@ -0,0 +1,20 @@
  1 +{% extends 'base_app.html.twig' %}
  2 +
  3 +{% block body %}
  4 + <div class="container">
  5 + {% form_theme edit_form 'bootstrap_3_horizontal_layout.html.twig' %}
  6 + <h1>Edición de Jurados</h1>
  7 +
  8 + {{ form_start(edit_form) }}
  9 + {{ form_widget(edit_form) }}
  10 + <input type="submit" value="Edit" />
  11 + {{ form_end(edit_form) }}
  12 +
  13 + <ul>
  14 + <li>
  15 + <a href="{{ path('admin_jurados_index') }}">Regresar al listado</a>
  16 + </li>
  17 +
  18 + </ul>
  19 + </div>
  20 +{% endblock %}
app/Resources/views/usuarios/jurados_index.html.twig
@@ -0,0 +1,72 @@ @@ -0,0 +1,72 @@
  1 +{% extends 'base_app.html.twig' %}
  2 +
  3 +{% block body %}
  4 + <div class="container">
  5 + <div class="widget widget-table action-table">
  6 + <div class="widget-header">
  7 + <div class="row">
  8 + <div class="col-sm-9"><i class="fa fa-list"></i>
  9 + <h3>Listado de Jurados Registrados</h3></div>
  10 + <div class="col-sm-2"><input type="text" class="form-control" name="marca"></div>
  11 + </div>
  12 + </div>
  13 + <div class="widget-content context">
  14 + <table class="table table-striped table-bordered table-condensed">
  15 + <thead>
  16 + <tr>
  17 + <th>Id</th>
  18 + <th>Cédula</th>
  19 + <th>Nombres y Apellidos</th>
  20 + <th>Estado</th>
  21 + <th>Escalafón Actual</th>
  22 + <th>Correo</th>
  23 + <th>Acciones</th>
  24 + </tr>
  25 + </thead>
  26 + <tbody>
  27 + {% for usuario in usuarios %}
  28 + <tr>
  29 + <td>{{ usuario.id }}</td>
  30 + <td>{{ usuario.cedulaPasaporte }}</td>
  31 + <td>{{ usuario.nombres }}, {{ usuario.apellidos }}</td>
  32 + <td>{{ usuario.idEstado.nombre }}</td>
  33 + <td>{{ usuario.idEscala.nombre }}</td>
  34 + <td>{{ usuario.correoElectronico }}</td>
  35 + <td>
  36 + <a href="{{ path('admin_usuarios_show', { 'id': usuario.id }) }}" class="btn btn-xs btn-info"><i class="fa fa-eye" ></i></a>
  37 + <a href="{{ path('admin_jurados_edit', { 'id': usuario.id }) }}" class="btn btn-xs btn-primary"><i class="fa fa-edit"></i></a>
  38 + </td>
  39 + </tr>
  40 + {% endfor %}
  41 + </tbody>
  42 + </table>
  43 +
  44 + </div>
  45 +{% endblock %}
  46 +
  47 + {% block javascripts %}
  48 + {{ parent() }}
  49 + <script src="https://cdn.jsdelivr.net/mark.js/8.6.0/jquery.mark.min.js"></script>
  50 +
  51 + <script>
  52 + $(function() {
  53 +
  54 + var $input = $("input[name='marca']"),
  55 + $context = $("table tbody tr");
  56 + $input.on("input", function() {
  57 + var term = $(this).val();
  58 + $context.show().unmark();
  59 + if (term) {
  60 + $context.mark(term, {
  61 + done: function() {
  62 + $context.not(":has(mark)").hide();
  63 + }
  64 + });
  65 + }
  66 + });
  67 +
  68 + });
  69 +
  70 + </script>
  71 +
  72 + {% endblock %}
src/AppBundle/Controller/UsuariosController.php
@@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
2 2
3 namespace AppBundle\Controller; 3 namespace AppBundle\Controller;
4 4
  5 +use AppBundle\Entity\TutoresAscenso;
5 use Symfony\Component\HttpFoundation\Request; 6 use Symfony\Component\HttpFoundation\Request;
6 use Symfony\Bundle\FrameworkBundle\Controller\Controller; 7 use Symfony\Bundle\FrameworkBundle\Controller\Controller;
7 use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method; 8 use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;
@@ -141,4 +142,54 @@ class UsuariosController extends Controller @@ -141,4 +142,54 @@ class UsuariosController extends Controller
141 ->getForm() 142 ->getForm()
142 ; 143 ;
143 } 144 }
  145 +
  146 +
  147 +
  148 +
  149 + /**
  150 + * Lists all Usuarios entities.
  151 + *
  152 + * @Route("/jurados/", name="admin_jurados_index")
  153 + * @Method("GET")
  154 + */
  155 + public function indexJuradosAction()
  156 + {
  157 + $em = $this->getDoctrine()->getManager();
  158 +
  159 + $usuarios = $em->getRepository('AppBundle:TutoresAscenso')->findAll();
  160 +
  161 + return $this->render('usuarios/jurados_index.html.twig', array(
  162 + 'usuarios' => $usuarios,
  163 + ));
  164 + }
  165 +
  166 +
  167 + /**
  168 + * Displays a form to edit an existing Usuarios entity.
  169 + *
  170 + * @Route("/jurados/{id}/edit", name="admin_jurados_edit")
  171 + * @Method({"GET", "POST"})
  172 + */
  173 + public function editJuradosAction(Request $request, TutoresAscenso $jurado)
  174 + {
  175 + //$deleteForm = $this->createDeleteForm($jurado);
  176 + $editForm = $this->createForm('AppBundle\Form\TutoresAscensoEditType', $jurado);
  177 + $editForm->handleRequest($request);
  178 +
  179 + if ($editForm->isSubmitted() && $editForm->isValid()) {
  180 + $em = $this->getDoctrine()->getManager();
  181 + $em->persist($jurado);
  182 + $em->flush();
  183 +
  184 + return $this->redirectToRoute('admin_jurados_edit', array('id' => $jurado->getId()));
  185 + }
  186 +
  187 + return $this->render('usuarios/jurados_edit.html.twig', array(
  188 + 'usuario' => $jurado,
  189 + 'edit_form' => $editForm->createView(),
  190 + //'delete_form' => $deleteForm->createView(),
  191 + ));
  192 + }
  193 +
  194 +
144 } 195 }
src/AppBundle/Form/TutoresAscensoEditType.php
@@ -0,0 +1,103 @@ @@ -0,0 +1,103 @@
  1 +<?php
  2 +
  3 +namespace AppBundle\Form;
  4 +
  5 +use Symfony\Component\Form\AbstractType;
  6 +use Symfony\Component\Form\FormBuilderInterface;
  7 +use Symfony\Component\OptionsResolver\OptionsResolver;
  8 +use Symfony\Component\Form\Extension\Core\Type\EmailType;
  9 +use Symfony\Component\Form\Extension\Core\Type\TextType;
  10 +use Symfony\Bridge\Doctrine\Form\Type\EntityType;
  11 +use Symfony\Component\Form\Extension\Core\Type\ButtonType;
  12 +use Symfony\Component\Form\Extension\Core\Type\SubmitType;
  13 +
  14 +
  15 +class TutoresAscensoEditType extends AbstractType
  16 +{
  17 + /**
  18 + * @param FormBuilderInterface $builder
  19 + * @param array $options
  20 + */
  21 + public function buildForm(FormBuilderInterface $builder, array $options)
  22 + {
  23 + $builder
  24 + ->add('idDocumentoIdentidad', EntityType::class, array(
  25 + 'label' => 'Tipo Documento',
  26 + 'placeholder' => 'Seleccione...',
  27 + 'class' => 'AppBundle:DocumentoIdentidad',
  28 + ))
  29 + ->add('cedulaPasaporte', TextType::class, array(
  30 + 'label' => 'Cédula/Pasaporte',
  31 + 'attr' => array(
  32 + 'placeholder' => 'Cédula Pasaporte ...',
  33 + 'class' => 'col-lg-4 form-control',
  34 + )
  35 + ))
  36 +
  37 +
  38 + ->add('nombres', TextType::class, array(
  39 + 'label' => 'Nombres Tutor',
  40 + 'attr' => array(
  41 + 'placeholder' => 'Nombres del Tutor...',
  42 + 'class' => 'col-lg-6 form-control ',
  43 + )
  44 + ))
  45 +
  46 + ->add('apellidos', TextType::class, array(
  47 + 'label' => 'Apellidos Tutor',
  48 + 'attr' => array(
  49 + 'placeholder' => 'apellidos del tutor...',
  50 + 'class' => 'col-lg-3 form-control',
  51 + )
  52 + ))
  53 +
  54 + ->add('institucion', TextType::class, array(
  55 + 'label' => 'Institución',
  56 + 'attr' => array(
  57 + 'placeholder' => 'UBV, LUZ, UNEFM,',
  58 + 'class' => 'col-lg-3 form-control',
  59 + )
  60 + ))
  61 +
  62 + ->add('idEstado', EntityType::class, array(
  63 + 'label' => 'Estado',
  64 + 'placeholder' => 'Estado donde Labora...',
  65 + 'class' => 'AppBundle:Estado',
  66 + 'attr' => array(
  67 + 'class' => 'col-lg-3 form-control',
  68 + )
  69 + ))
  70 +
  71 + ->add('idEscala', EntityType::class, array(
  72 + 'label' => 'Escalafón',
  73 + 'placeholder' => 'Escalafón actual...',
  74 + 'class' => 'AppBundle:Escalafones',
  75 + 'attr' => array(
  76 + 'class' => 'col-lg-3 form-control',
  77 + )
  78 + ))
  79 + ->add('correoElectronico', EmailType::class, array(
  80 + 'label' => 'Correo E.',
  81 + 'attr' => array(
  82 + 'placeholder' => 'Dirección de Correo Tutor ...',
  83 + 'class' => 'col-lg-3 form-control',
  84 + )
  85 + ))
  86 + /*->add('nombres')
  87 + ->add('apellidos')
  88 + ->add('institucion')
  89 + ->add('idEscala')*/
  90 + //->add('ascenso')
  91 + ;
  92 + }
  93 +
  94 + /**
  95 + * @param OptionsResolver $resolver
  96 + */
  97 + public function configureOptions(OptionsResolver $resolver)
  98 + {
  99 + $resolver->setDefaults(array(
  100 + 'data_class' => 'AppBundle\Entity\TutoresAscenso'
  101 + ));
  102 + }
  103 +}