Commit 4a2ade5a310df77c4d5526b02a8c1533657a1662

Authored by Wilmer
1 parent d7251b487b
Exists in master

creado el poder añadir mas actividades a la labor ya creada

app/Resources/views/solicitudes/pida.html.twig
... ... @@ -74,9 +74,14 @@
74 74 <td rowspan="{{ pid.pidaTareaEspecifico | length }}">{{ pid.idActividadDocente.nombre }}</td>
75 75  
76 76 {% for tarea in pid.pidaTareaEspecifico %}
77   - <td>{{ tarea.pidaTareaEspecifico }}</td>
  77 + <td>{{ tarea.pidaTareaEspecifico }}
  78 + {% if loop.index == loop.length %}
  79 + <a data-id="{{ pid.id }}" id="add_actividad{{ pid.id }}" data-toggle="modal" data-target="#nueva_actividad" class="btn btn-xs btn-warning">+</a>
  80 + {% endif %}
  81 + </td>
78 82 <td>{{ tarea.idPidaPlazo }}</td>
79 83 <td>{{ tarea.idPidaEstatus }}</td>
  84 +
80 85 </tr>
81 86 {% endfor %}
82 87  
... ... @@ -90,6 +95,39 @@
90 95  
91 96 </div>
92 97  
  98 +
  99 +
  100 + <div class="modal fade" id="nueva_actividad" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  101 + <div class="modal-dialog" role="document">
  102 +
  103 + <div class="modal-content">
  104 + <div class="modal-header">
  105 + <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
  106 + aria-hidden="true">&times;</span></button>
  107 + <h4 class="modal-title" id="myModalLabel">Nueva Actividad</h4>
  108 + </div>
  109 +
  110 + <div class="modal-body">
  111 +
  112 +
  113 + {% form_theme editForm 'bootstrap_3_layout.html.twig' %}
  114 + {{ form_start(editForm) }}
  115 + {{ form_widget(editForm) }}
  116 +
  117 + <input type="hidden" id="id_pida" name="id_pida" value="" >
  118 + </div>
  119 + <div class="modal-footer">
  120 + <button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
  121 + <button type="submit" class="btn btn-success" name="rechazar" id="rechazar">Añadir Actividad
  122 +
  123 + </button>
  124 + </div>
  125 + {{ form_end(editForm) }}
  126 + </div>
  127 +
  128 + </div>
  129 + </div>
  130 +
93 131 {% endblock %}
94 132  
95 133  
... ... @@ -153,5 +191,19 @@
153 191  
154 192 }
155 193  
  194 + $('#nueva_actividad').on('hidden.bs.modal', function (e) {
  195 + $(".btn").button('reset');
  196 + });
  197 +
  198 + var buttonpressed;
  199 + $('[id^="add_"]').click(function() {
  200 + alert("presionado: " + $(this).attr('data-id'))
  201 + $("#id_pida").val($(this).attr('data-id'));
  202 + });
  203 +
  204 +
  205 +
  206 +
  207 +
156 208 </script>
157 209 {% endblock %}
... ...
src/AppBundle/Controller/AdscripcionController.php
... ... @@ -10,6 +10,7 @@ namespace AppBundle\Controller;
10 10  
11 11 use AppBundle\Entity\DocumentosVerificados;
12 12 use AppBundle\Entity\PidaTareaEspecifico;
  13 +use AppBundle\Form\PidaTareaEspecificoType;
13 14 use Symfony\Component\Form\FormError;
14 15 use Symfony\Component\HttpFoundation\File\UploadedFile;
15 16 use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
... ... @@ -464,10 +465,13 @@ class AdscripcionController extends Controller
464 465 }
465 466  
466 467 $pida = new AdscripcionPida();
  468 + $tarea = new PidaTareaEspecifico();
467 469 $form = $this->createForm('AppBundle\Form\PidaType', $pida);
468 470 $form->handleRequest($request);
469   -
470   -
  471 +
  472 + $editForm = $this->createForm('AppBundle\Form\PidaTareaEspecificoType', $tarea);
  473 + $editForm->handleRequest($request);
  474 + $em = $this->getDoctrine()->getManager();
471 475 if ($form->isSubmitted() && $form->isValid()) {
472 476 $em = $this->getDoctrine()->getManager();
473 477 //Crear la solicitud de Servicio
... ... @@ -499,11 +503,28 @@ class AdscripcionController extends Controller
499 503  
500 504 }
501 505  
  506 + if ($editForm->isSubmitted() && $editForm->isValid()) {
  507 + $id = filter_input(INPUT_POST, 'id_pida', FILTER_SANITIZE_SPECIAL_CHARS);
  508 + if($id) {
  509 +
  510 + $pida = $this->getDoctrine()->getRepository("AppBundle:AdscripcionPida")->findOneById($id);
  511 + $tarea->setAdscripcionPidaId($pida);
  512 + $pida->addPidaTareaEspecifico($tarea);
  513 + $em->persist($pida);
  514 +
  515 + $em->flush();
  516 +
  517 + return $this->redirectToRoute('solicitud_pida');
  518 + }
  519 +
  520 + }
  521 +
502 522  
503 523 return $this->render('solicitudes/pida.html.twig', array(
504 524 'form' => $form->createView(),
505 525 'pida' => $pid,
506   - 'servicio' => $serv
  526 + 'servicio' => $serv,
  527 + 'editForm' => $editForm->createView()
507 528 ));
508 529  
509 530  
... ...
src/AppBundle/Controller/AjaxController.php
... ... @@ -235,6 +235,50 @@ class AjaxController extends Controller {
235 235 }
236 236  
237 237 }
  238 +
  239 +
  240 +
  241 + /**
  242 + * @Route("/ajax/add/tarea", name="ajax_add_tarea")
  243 + * @Method({"POST"})
  244 + */
  245 + public function addTareaAction(Request $request){
  246 +
  247 + if($request->isXmlHttpRequest()){
  248 + $encoders = array(new JsonEncoder());
  249 + $normalizers = array(new ObjectNormalizer());
  250 +
  251 + $serializer = new Serializer($normalizers, $encoders);
  252 +
  253 + $pida = filter_input(INPUT_POST, 'pida', FILTER_SANITIZE_SPECIAL_CHARS);
  254 +
  255 +
  256 + $em = $this->getDoctrine()->getManager();
  257 + $pida = $em->getRepository("AppBundle:AdscripcionPida")->findOneById($pida);
  258 + var_dump($request->request); exit;
  259 + $pida->addPidaTareaEspecifico($tarea);
  260 + $em->persist($pida);
  261 + $em->flush();
  262 +
  263 +
  264 + $response = new JsonResponse();
  265 + $response->setStatusCode(200);
  266 + $response->setData(array(
  267 + 'response' => 'success',
  268 + 'jurados' => $jurados,
  269 + 'adicionar_nombres' => $nuevos_nombres,
  270 + 'adicionar_institucion' => $nuevos_institucion,
  271 + 'adicionar_id' => $nuevos_id,
  272 + 'ascenso' => $ascensoId
  273 + ));
  274 +
  275 + return $response;
  276 +
  277 +
  278 + }
  279 +
  280 + }
  281 +
238 282  
239 283  
240 284 /**
... ...