public function modificar($id)
 {
     Session::tienePermiso('entidad_modificar');
     $this->view->setEncabezado("Modificar entidad");
     $this->view->setTitulo("Entidad");
     $estados = EstadoEntidad::obtenerTodos();
     $necesidades = NecesidadEntidad::obtenerTodos();
     $servicios = ServicioPrestado::obtenerTodos();
     if (isset($_POST['params'])) {
         $this->check_csrf('post');
         $this->actualizar_csrf();
         $entidadModif = EntidadReceptora::nuevo($_POST['params']['entidad']);
         $this->validarCampos($entidadModif);
         $modif = $_POST['params']['entidad'];
         $entidad = EntidadReceptora::getById($id);
         if (count($entidadModif->getErrores()) == 0) {
             $repetido = EntidadReceptora::buscarPor('razon_social', $modif['razon_social']);
             if (sizeof($repetido) == 0 || $repetido[0]['id'] == $id) {
                 $entidad->setRazon_social($modif['razon_social']);
                 $entidad->setTelefono($modif['telefono']);
                 $entidad->setDomicilio($modif['domicilio']);
                 $entidad->setEstado_entidad_id($modif['estado_entidad_id']);
                 $entidad->setNecesidad_entidad_id($modif['necesidad_entidad_id']);
                 $entidad->setServicio_prestado_id($modif['servicio_prestado_id']);
                 if (!$entidad->actualizar()) {
                     $this->view->setError("no puedo actualizarse la entidad.");
                 }
             } else {
                 $this->view->setError("La razón social ya existe");
             }
             if ($this->view->getError() != null) {
                 $this->view->renderizar("formulario", array("entidad" => $entidad, "estados" => $estados, "necesidades" => $necesidades, "servicios" => $servicios, "accion" => "modificar", "encabezado" => "Modificar entidad receptora", "token" => $this->token, "token_id" => $this->token_id));
             } else {
                 $this->redireccionar('entidad/listado/&m=c');
             }
         } else {
             $this->view->setError("Modifique los campos indicados.");
             $entidadModif->setId($id);
             $this->view->renderizar("formulario", array("entidad" => $entidadModif, "accion" => "modificar", "servicios" => $servicios, "estados" => $estados, "necesidades" => $necesidades, "token" => $this->token, "token_id" => $this->token_id));
         }
     } else {
         $entidad = EntidadReceptora::getById($id);
         if ($entidad->getId() != null) {
             $this->view->renderizar("formulario", array("entidad" => $entidad, "estados" => $estados, "necesidades" => $necesidades, "servicios" => $servicios, "accion" => "modificar", "encabezado" => "Modificar entidad receptora", "token" => $this->token, "token_id" => $this->token_id));
         } else {
             $this->redireccionar('entidad/listado');
         }
     }
 }