private static function validarParametrosClasificacionProducto($id_clasificacion_producto = null, $nombre = null, $descripcion = null, $garantia = null, $activa = null) { //valida que la clasificacion de producto exista y este activa if (!is_null($id_clasificacion_producto)) { $clasificacion_producto = ClasificacionProductoDAO::getByPK($id_clasificacion_producto); if (is_null($clasificacion_producto)) { return "La clasificacion de producto con id " . $id_clasificacion_producto . " no existe"; } if (!$clasificacion_producto->getActiva()) { return "La clasificacion de producto con id " . $id_clasificacion_producto . " esta desactivada"; } } //!is_null($id_clasificacion_producto) //valida que el nombre este en rango y que no se repita if (!is_null($nombre)) { $e = self::validarString($nombre, 64, "nombre"); if (is_string($e)) { return $e; } if (!is_null($id_clasificacion_producto)) { $clasificaciones_producto = array_diff(ClasificacionProductoDAO::search(new ClasificacionProducto(array("nombre" => trim($nombre)))), array(ClasificacionProductoDAO::getByPK($id_clasificacion_producto))); } else { $clasificaciones_producto = ClasificacionProductoDAO::search(new ClasificacionProducto(array("nombre" => trim($nombre)))); } foreach ($clasificaciones_producto as $c_p) { if ($c_p->getActiva()) { return "El nombre (" . $nombre . ") ya esta siendo usado por la clasificacion " . $c_p->getIdClasificacionProducto(); } } //$clasificaciones_producto as $c_p } //!is_null($nombre) //valida que la descripcion este en rango if (!is_null($descripcion)) { $e = self::validarString($descripcion, 255, "descripcion"); if (is_string($e)) { return $e; } } //!is_null($descripcion) //valida que la garantia este en rango if (!is_null($garantia)) { $e = self::validarNumero($garantia, PHP_INT_MAX, "Garantia"); if (is_string($e)) { return $e; } } //!is_null($garantia) //valida el boleano activa if (!is_null($activa)) { $e = self::validarNumero($activa, 1, "activa"); if (is_string($e)) { return $e; } } //!is_null($activa) //No se encontro error, regresa true return true; }