Commit dc15f7b677b09036d2d4a0249aeaa9dbf5514986
1 parent
920d3e4181
Exists in
master
ya registra a los nuevos tutores a añadir de parte del coordinador
Showing
2 changed files
with
68 additions
and
0 deletions
Show diff stats
app/Resources/views/cea/ascenso_mostar.html.twig
| @@ -288,6 +288,27 @@ | @@ -288,6 +288,27 @@ | ||
| 288 | }); | 288 | }); |
| 289 | 289 | ||
| 290 | 290 | ||
| 291 | + | ||
| 292 | + $( "#añadirJurados" ).click(function() { | ||
| 293 | + alert('hola'); | ||
| 294 | + $.ajax({ | ||
| 295 | + method: "POST", | ||
| 296 | + url: "{{ url('ajax_adicionar_tutor') }}", | ||
| 297 | + async: true, | ||
| 298 | + cache: false, | ||
| 299 | + data: ({ jurados: $("#add_tutor_tutores_ascenso").val(), ascensoId: {{ ascenso.id }} }), | ||
| 300 | + success: function (data) { | ||
| 301 | + console.log(data); | ||
| 302 | + | ||
| 303 | + | ||
| 304 | + }, | ||
| 305 | + error: function (XMLHttpRequest, textStatus, errorThrown) { | ||
| 306 | + console.log(errorThrown); | ||
| 307 | + | ||
| 308 | + } | ||
| 309 | + | ||
| 310 | + }); | ||
| 311 | + }); | ||
| 291 | 312 | ||
| 292 | 313 | ||
| 293 | </script> | 314 | </script> |
src/AppBundle/Controller/AjaxController.php
| @@ -18,6 +18,7 @@ use Symfony\Component\Serializer\Encoder\JsonEncoder; | @@ -18,6 +18,7 @@ use Symfony\Component\Serializer\Encoder\JsonEncoder; | ||
| 18 | use Symfony\Component\Serializer\Normalizer\ObjectNormalizer; | 18 | use Symfony\Component\Serializer\Normalizer\ObjectNormalizer; |
| 19 | use Symfony\Component\HttpFoundation\Request; | 19 | use Symfony\Component\HttpFoundation\Request; |
| 20 | use AppBundle\Entity\TutoresAscenso; | 20 | use AppBundle\Entity\TutoresAscenso; |
| 21 | +use AppBundle\Entity\Ascenso; | ||
| 21 | 22 | ||
| 22 | 23 | ||
| 23 | 24 | ||
| @@ -183,4 +184,50 @@ class AjaxController extends Controller { | @@ -183,4 +184,50 @@ class AjaxController extends Controller { | ||
| 183 | 184 | ||
| 184 | } | 185 | } |
| 185 | 186 | ||
| 187 | + | ||
| 188 | + | ||
| 189 | + /** | ||
| 190 | + * @Route("/ajax/adicionar_tutor", name="ajax_adicionar_tutor") | ||
| 191 | + * @Method({"POST"}) | ||
| 192 | + */ | ||
| 193 | + public function adicionarTutorAction(Request $request){ | ||
| 194 | + | ||
| 195 | + if($request->isXmlHttpRequest()){ | ||
| 196 | + $encoders = array(new JsonEncoder()); | ||
| 197 | + $normalizers = array(new ObjectNormalizer()); | ||
| 198 | + | ||
| 199 | + $serializer = new Serializer($normalizers, $encoders); | ||
| 200 | + | ||
| 201 | + $jurados = filter_input(INPUT_POST, 'jurados', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY); | ||
| 202 | + $ascensoId = filter_input(INPUT_POST, 'ascensoId', FILTER_SANITIZE_SPECIAL_CHARS); | ||
| 203 | + | ||
| 204 | + | ||
| 205 | + $ascenso = $this->getDoctrine()->getRepository("AppBundle:Ascenso")->findOneById($ascensoId); | ||
| 206 | + | ||
| 207 | + foreach ($jurados as $jurado){ | ||
| 208 | + $adicionar = $this->getDoctrine()->getRepository("AppBundle:TutoresAscenso")->findOneById($jurado); | ||
| 209 | + $ascenso->addTutoresAscenso($adicionar); | ||
| 210 | + } | ||
| 211 | + | ||
| 212 | + | ||
| 213 | + | ||
| 214 | + $em = $this->getDoctrine()->getManager(); | ||
| 215 | + $em->persist($ascenso); | ||
| 216 | + $em->flush(); | ||
| 217 | + | ||
| 218 | + $response = new JsonResponse(); | ||
| 219 | + $response->setStatusCode(200); | ||
| 220 | + $response->setData(array( | ||
| 221 | + 'response' => 'success', | ||
| 222 | + 'jurados' => $jurados, | ||
| 223 | + 'ascenso' => $ascensoId | ||
| 224 | + )); | ||
| 225 | + | ||
| 226 | + return $response; | ||
| 227 | + | ||
| 228 | + | ||
| 229 | + } | ||
| 230 | + | ||
| 231 | + } | ||
| 232 | + | ||
| 186 | } | 233 | } |