/**
  * Carga el formulario para ingresar el nuevo proyecto vial , cuando la peticion es post guarda la los datos del proyecto
  * 
  * @return \Zend\View\Model\ViewModel
  */
 public function crearAction()
 {
     if ($this->getRequest()->isPost()) {
         $this->layout('layout/layoutV1');
         $datos = $this->getRequest()->getPost();
         $files = $this->getRequest()->getFiles()->toArray();
         $projectV = new proyectoV();
         $project = new proyecto();
         $estado = $this->em()->getRepository('\\Login\\Model\\Entity\\Estado')->find($datos["estado"]);
         $eje = $this->em()->getRepository('\\Login\\Model\\Entity\\Eje')->find(3);
         $tipoObra = $this->em()->getRepository('\\Login\\Model\\Entity\\TipoObra')->find($datos["tipoObra"]);
         $barrio = $this->em()->getRepository('\\Login\\Model\\Entity\\Barrio')->find($datos["barrio"]);
         $ejecutor = $this->em()->getRepository('\\Login\\Model\\Entity\\Ejecutor')->find($datos["ejecutor"]);
         $project->setEstado($estado);
         $project->setEje($eje);
         $project->setProyectoPathfotos('pendiente');
         $project->setProyectoAnio($datos["anio"]);
         $project->setProyectoPresupuesto($datos["presupuesto"]);
         $projectV->setProyecto($project);
         $projectV->setProyectoviasTramo($datos["tramo"]);
         $projectV->setProyectoviasDirinicio($datos["dirInicio"]);
         $projectV->setProyectoviasDirfinal($datos["dirFinal"]);
         $projectV->setProyectoviasCiv($datos["civ"]);
         $projectV->setTipoobra($tipoObra);
         $projectV->setBarrio($barrio);
         $projectV->setProyectoviasLargo($datos["largo"]);
         $projectV->setProyectoviasAncho($datos["ancho"]);
         $projectV->setProyectoviasInterventor($datos["interventor"]);
         $projectV->setProyectoviasEjecutor($ejecutor);
         $projectV->setProyectoviasCoordenadas($datos["coordenadas"]);
         $this->dbh()->insertObj($projectV);
         $ruta = './public/fotografias/' . $project->getProyectoId() . '/';
         if (!file_exists($ruta)) {
             mkdir($ruta);
         }
         $filter = new \Zend\Filter\File\RenameUpload($ruta);
         $filter->setUseUploadName(true);
         foreach ($files['proyecto-fotos'] as $file) {
             $filter->filter($file);
         }
         return $this->forward()->dispatch('Vias\\Controller\\index', array('action' => 'cargar', 'via' => $projectV));
     } else {
         $this->layout('layout/layoutV1');
         $this->layout()->titulo = '.::Crear Proyecto Vial::.';
         $formCrearProyVia = new FormGuardarVia($this->em());
         return new ViewModel(array("formCrearProyVia" => $formCrearProyVia, "url" => $this->getRequest()->getBaseUrl()));
     }
 }
 public function saveeditphotosAction()
 {
     $datos = $this->getRequest()->getPost();
     $dir = $datos['dir'];
     $files = $this->getRequest()->getFiles()->toArray();
     $ruta = './public/fotografias/' . $dir . '/';
     if (!file_exists($ruta)) {
         mkdir($ruta);
     }
     $nombrePhoto = '';
     $filter = new \Zend\Filter\File\RenameUpload($ruta);
     $filter->setUseUploadName(true);
     $cont = 0;
     foreach ($files['proyecto-fotos'] as $file) {
         switch ($file['type']) {
             case 'image/jpeg':
                 $nombrePhoto = date('Ymd_Gis') . $cont . 'jpg';
                 break;
             case 'image/png':
                 $nombrePhoto = date('Ymd_Gis') . $cont . 'png';
                 break;
         }
         $file['name'] = $nombrePhoto;
         $filter->filter($file);
         $cont += 1;
     }
     return new JsonModel(array('Result' => 'OK'));
 }
 /**
  * carga la vista de crear proyecto y recibe los datos post para crear proyecto
  * @return \Zend\View\Model\ViewModel
  */
 public function crearAction()
 {
     if ($this->getRequest()->isPost()) {
         $datos = $this->getRequest()->getPost();
         $project = new proyecto();
         $proyecto_e = new ProyectoEducacion();
         $estado = $this->em()->getRepository('\\Login\\Model\\Entity\\Estado')->find(1);
         $eje = $this->em()->getRepository('\\Login\\Model\\Entity\\Eje')->find(2);
         $project->setEstado($estado);
         $project->setEje($eje);
         $project->setProyectoPathfotos('pendiente');
         $project->setProyectoAnio($datos["vigencia"]);
         $project->setProyectoPresupuesto($datos["valProj"]);
         $proyecto_e->setProyecto($project);
         $proyecto_e->setProyectoeducacionEjecutor($datos["ejecutorP"]);
         $fecha = \DateTime::createFromFormat('d/m/Y', $datos["fechaIni"]);
         $proyecto_e->setProyectoeducacionFechainicio($fecha);
         $proyecto_e->setProyectoeducacionNumero($datos["numeroP"]);
         $proyecto_e->setProyectoeducacionNombre($datos["nombreP"]);
         $proyecto_e->setProyectoeducacionPlazoejecucion($datos["plazoEjec"]);
         $proyecto_e->setProyectoeducacionObjetivo($datos["objetivo"]);
         $proyecto_e->setProyectoeducacionPerfilbeneficiario($datos["perfilBen"]);
         $proyecto_e->setProyectoeducacionCupos($datos["cupos"]);
         $this->dbh()->insertObj($proyecto_e);
         $files = $this->getRequest()->getFiles()->toArray();
         $ruta = './public/fotografias/' . $project->getProyectoId() . '/';
         if (!file_exists($ruta)) {
             mkdir($ruta);
         }
         $filter = new \Zend\Filter\File\RenameUpload($ruta);
         $filter->setUseUploadName(true);
         foreach ($files['proyecto-fotos'] as $file) {
             $filter->filter($file);
         }
         return $this->forward()->dispatch('Educacion\\Controller\\index', array('action' => 'ver', 'educacion' => $proyecto_e));
     } else {
         $this->layout('layout/educacion');
         $this->layout()->titulo = '.::Crear Proyecto:.';
         $adapter = $this->getServiceLocator()->get('doctrine.entitymanager.orm_default');
         $formEducacion = new FormularioEducacion($adapter);
         return new ViewModel(array('formEducacion' => $formEducacion));
     }
 }
 /**
  * 
  * @return \Zend\View\Model\JsonModel
  */
 public function saveReporteViaAction()
 {
     $formulario = $this->getRequest()->getPost();
     $foto = $this->getRequest()->getFiles()->toArray();
     $type = $foto['photo']['type'];
     $nameFile = '';
     switch ($type) {
         case 'image/png':
             $nameFile = date('Ymd_Gis') . '.png';
             break;
         case 'image/jpeg':
             $nameFile = date('Ymd_Gis') . '.jpg';
             break;
     }
     $reporte = new \Login\Model\Entity\ReporteVia();
     $barrio = $this->dbh()->selectAllById(array("barrioId" => $formulario['barrios']), '\\Login\\Model\\Entity\\Barrio');
     $reporte->setReporteviaDireccion($formulario['direccion']);
     $reporte->setReporteviaObservacion($formulario['observacion']);
     $reporte->setBarrio($barrio[0]);
     $reporte->setReporteviasFotos($nameFile);
     $reporte->setReporteviaFecha(new \DateTime(date('Y-m-d h:i:s')));
     if ($this->dbh()->insertObj($reporte)) {
         $foto['photo']['name'] = $nameFile;
         $filter = new \Zend\Filter\File\RenameUpload('./public/fotografias/Reports/');
         $filter->setUseUploadName(true);
         $filter->filter($foto['photo']);
         return new JsonModel(array("Result" => "OK"));
     } else {
         return new JsonModel(array("Result" => "NOK"));
     }
 }