public function register() { $currentuser = $this->view->getVariable("currentusername"); $establecimiento = $this->establecimientoMapper->findById($currentuser); $concursos = $this->concursoMapper->findConcurso("pinchosOurense"); $this->view->setVariable("concursos", $concursos); $pincho = $this->pincho->findByEstablecimiento($establecimiento); if ($pincho != NULL) { $this->view->setFlash(sprintf("Ya hay un pincho registrado.")); $this->view->render("concursos", "index"); } else { if (isset($_POST["nombre"])) { $pinc = new Pincho(); $pinc->setNombre($_POST["nombre"]); if (isset($_POST["celiaco"])) { $pinc->setCeliaco(1); } else { $pinc->setCeliaco(0); } if (isset($_FILES['img'])) { $fichero = $_FILES['img']['name']; $ext = strrchr($fichero, '.'); $ruta = 'imagenes/pincho_' . $pinc->getNombre() . $ext; if (move_uploaded_file($_FILES['img']['tmp_name'], $ruta)) { $pinc->setImagen($pinc->getNombre() . $ext); } } $pinc->setDescripcion($_POST["descripcion"]); $pinc->setValidado(0); $pinc->setEstablecimiento($currentuser); $pinc->setConcurso("pinchosOurense"); try { $this->establecimientoMapper->savePincho($pinc); $pincho = $this->pincho->findByEstablecimiento($establecimiento); if (isset($_POST["ingredientesSelected"])) { $ingredientesPOST = $_POST["ingredientesSelected"]; $ingredientesNew = array_unique($ingredientesPOST, SORT_STRING); foreach ($ingredientesNew as $ingrediente) { if (!empty($ingrediente)) { $this->ingredienteMapper->insert($pincho, $ingrediente); } } } $this->view->setFlash("Pincho " . $pinc->getNombre() . " registrado."); } catch (ValidationException $ex) { $errors = $ex->getErrors(); $this->view->setVariable("errors", $errors); } } $this->view->setVariable("pincho", $pinc); $this->view->render("concursos", "index"); } }