public function modificar($id) { Session::tienePermiso('modificar'); $this->view->setEncabezado("Modificar donante"); $this->view->setTitulo("Donante"); if (isset($_POST['params'])) { $this->check_csrf('post'); $this->actualizar_csrf(); $donanteModif = Donante::nuevo($_POST['params']['donante']); $this->validarCampos($donanteModif); $modif = $_POST['params']['donante']; $donante = Donante::getById($id); if (count($donanteModif->getErrores()) == 0) { $repetido = Donante::buscarPor('razon_social', $modif['razon_social']); if (sizeof($repetido) == 0 || $repetido[0]['id'] == $id) { $donante->setRazonSocial($modif['razon_social']); $donante->setApellidoContacto($modif['apellido_contacto']); $donante->setNombreContacto($modif['nombre_contacto']); $donante->setTelefonoContacto($modif['telefono_contacto']); $donante->setMailContacto($modif['mail_contacto']); $donante->setDomicilioContacto($modif['domicilio_contacto']); if (!$donante->actualizar()) { $this->view->setError("no puedo actualizarse el donante."); } } else { $this->view->setError("el donante ya existe"); } if ($this->view->getError() != null) { $this->view->renderizar("formulario", array("donante" => $donante, "accion" => "modificar", "encabezado" => "Modificar donante", "token" => $this->token, "token_id" => $this->token_id)); } else { header('Location: /?uri=donante/listado/&m=c'); } } else { $this->view->setError("Modifique los campos indicados."); $donanteModif->setId($id); $this->view->renderizar("formulario", array("donante" => $donanteModif, "accion" => "modificar", "encabezado" => "Modificar donante", "token" => $this->token, "token_id" => $this->token_id)); } } else { $donante = Donante::getById($id); if ($donante->getId() != null) { $this->view->renderizar("formulario", array("donante" => $donante, "accion" => "modificar", "encabezado" => "Modificar donante", "token" => $this->token, "token_id" => $this->token_id)); } else { header('Location: /?uri=donante/listado/notFound'); } } }