/**
  * Vamos a hacer una alta de un profesor
  * @Route("/alta", name="alta_prof")
  * @return string 
  */
 public function AltaProfesor()
 {
     $em = $this->getDoctrine()->getEntityManager();
     $menu = Util::getMenu();
     $usuario = "Ricardo Montanana Gomez";
     $enlace = "(salir)";
     $centro = "I.E.S.O. Pascual Serrano";
     $profesores = $em->getRepository('AppBundle:Profesor')->findAll();
     $form = $this->creaFormulario();
     $param = array('titulo' => 'AltaProfesores', 'menu' => $menu, 'usuario' => $usuario, 'enlaceUsuario' => $enlace, 'centro' => $centro, 'profesores' => $profesores, 'form' => $form->createView());
     $request = $this->getRequest();
     if ($request->getMethod() == 'POST') {
         $form->bindRequest($request);
         $datos = $form->getData();
         $profesor = new Profesor();
         $profesor->setSalt(md5(time() + rand(100, 10000)));
         $encoder = $this->container->get('security.encoder_factory')->getEncoder($profesor);
         $profesor->setNombre($datos['nombre']);
         $profesor->setEmail($datos['email']);
         $profesor->setUsuario($datos['usuario']);
         $profesor->setPassword($encoder->encodePassword($datos['password'], $profesor->getSalt()));
         $profesor->setRol('ROL_USER');
         $em->persist($profesor);
         $em->flush();
         $param = array('titulo' => 'Profesores', 'menu' => $menu, 'usuario' => $usuario, 'enlaceUsuario' => $enlace, 'centro' => $centro, 'profesores' => $profesores);
         return $this->render('AppBundle:Maestros:Profesor.html.twig', $param);
     }
     return $this->render('AppBundle:Maestros:AltaProfesor.html.twig', $param);
 }
 /**
  * Vamos a hacer una alta de un alumno
  * @Route("/alta", name="alta_alum")
  * @return string 
  */
 public function AltaAlumno()
 {
     $em = $this->getDoctrine()->getEntityManager();
     $menu = Util::getMenu();
     $usuario = "Ricardo Montanana Gomez";
     $enlace = "(salir)";
     $centro = "I.E.S.O. Pascual Serrano";
     $alumnos = $em->getRepository('AppBundle:Alumno')->findAll();
     $grupos = $em->getRepository('AppBundle:Grupo')->findAll();
     $form = $this->creaFormulario();
     $param = array('titulo' => 'AltaAlumnos', 'menu' => $menu, 'usuario' => $usuario, 'enlaceUsuario' => $enlace, 'centro' => $centro, 'alumnos' => $alumnos, 'grupos' => $grupos, 'form' => $form->createView());
     $request = $this->getRequest();
     if ($request->getMethod() == 'POST') {
         $form->bindRequest($request);
         $datos = $form->getData();
         $alumno = new Alumno();
         $alumno->setNombre($datos['nombre']);
         $alumno->setApellidos($datos['apellidos']);
         $alumno->setEmail($datos['email']);
         $alumno->setGrupo($datos['grupo']);
         $em->persist($alumno);
         $em->flush();
         $param = array('titulo' => 'Alumnos', 'menu' => $menu, 'usuario' => $usuario, 'enlaceUsuario' => $enlace, 'centro' => $centro, 'alumnos' => $alumnos, 'grupos' => $grupos);
         return $this->render('AppBundle:Maestros:Alumno.html.twig', $param);
     }
     return $this->render('AppBundle:Maestros:AltaAlumno.html.twig', $param);
 }
 /**
  * @Route("/asig", name="comp_asig")
  * @return string 
  */
 public function AsignacionAction(Request $request)
 {
     $em = $this->getDoctrine()->getEntityManager();
     $menu = Util::getMenu();
     $usuario = "Ricardo Montañana Gómez";
     $enlace = "(salir)";
     $centro = "I.E.S.O. Pascual Serrano";
     $form = $this->creaFormulario();
     $param = array('titulo' => 'Asignación', 'menu' => $menu, 'usuario' => $usuario, 'enlaceUsuario' => $enlace, 'centro' => $centro, 'form' => $form->createView());
     //$request = $this->getRequest();
     if ($request->isMethod('POST')) {
         //var_dump($materia);
         $form->handleRequest($request);
         $datos = $form->getData();
         //Mediante esta instrucción tomamos los datos del formulario que vienen en el POST porque symfony no hace bind de Materia
         $datos['Materia'] = $request->request->get("form")['Materia'];
         $datos['Materia'] = explode('=>', $datos['Materia']);
         //var_dump($request);
         //Obtiene todos los indicadores de la materia correspondiente.
         // TODO Crear un Repositorio para Materias que permita hacer esta consulta.
         $materia = $em->getRepository('AppBundle:Materia')->find($datos['Materia'][0]);
         $indicadores = $em->getRepository('AppBundle:Materia')->findIndicadoresByMateria($materia);
         //$this->container->get('logger')->debug("datos = ".print_r($indicadores));
         $param = array('titulo' => 'Asignación', 'menu' => $menu, 'usuario' => $usuario, 'enlaceUsuario' => $enlace, 'centro' => $centro, 'datos' => $datos, 'indicadores' => $indicadores);
         return $this->render('AppBundle:Competencia:asignacionIndicadorCompetencia.html.twig', $param);
     }
     return $this->render('AppBundle:Competencia:asignacionCompetencia.html.twig', $param);
 }
 public function indexAction($name)
 {
     $menu = Util::getMenu();
     $usuario = "Ricardo Montañana Gómez";
     $enlace = "(salir)";
     $centro = "I.E.S.O. Pascual Serrano";
     $param = array('titulo' => 'Índice', 'name' => $name, 'menu' => $menu, 'usuario' => $usuario, 'enlaceUsuario' => $enlace, 'centro' => $centro);
     return $this->render('AppBundle:Default:index.html.twig', $param);
 }
 public function load(ObjectManager $manager)
 {
     //Grupos
     $grupos = array('Primero A' => array('Juan Luis' => 'García', 'José Miguel' => 'Pérez', 'Ramón' => 'Ramírez', 'Luisa' => 'García'), 'Primero B' => array('José María' => 'Paz', 'María Luisa' => 'Pez', 'Antonio José' => 'Poz'), 'Segundo A' => array('Pablo' => 'Montañana', 'Lucía' => 'Montañana'), 'Segundo B' => array('Ricardo' => 'Montañana', 'Raquel' => 'Navarro'));
     foreach ($grupos as $grupoLinea => $alumnos) {
         $grupo = $manager->getRepository('AppBundle:Grupo')->findOneBy(array('descripcion' => $grupoLinea));
         foreach ($alumnos as $nombre => $apellido) {
             $alumno = new Alumno();
             $alumno->setNombre($nombre);
             $alumno->setApellidos($apellido);
             $alumno->setEmail(Util::getSlug($apellido) . '@gmail.com');
             $alumno->setGrupo($grupo);
             $manager->persist($alumno);
         }
     }
     //Graba en BD
     $manager->flush();
 }