From: Leandro Lucarella Date: Fri, 25 Jul 2003 23:09:40 +0000 (+0000) Subject: Se agrega soporte para obtener sólo hijos habilitados. X-Git-Tag: svn_import~38 X-Git-Url: https://git.llucax.com/mecon/ai.git/commitdiff_plain/4314fc7f755cd6dd29814825e7a0564c2688d278 Se agrega soporte para obtener sólo hijos habilitados. --- diff --git a/lib/AI/DBTreeObject.php b/lib/AI/DBTreeObject.php index 71689bc..66f0507 100644 --- a/lib/AI/DBTreeObject.php +++ b/lib/AI/DBTreeObject.php @@ -75,12 +75,15 @@ class AI_DBTreeObject extends AI_DBObject { // +X2C Operation 527 /** + * Carga hijos de un objeto. Si hubo error devuelve un PEAR_Error, si no hubo error, devuleve un array de objetos (los hijos). + * * @param mixed $db Base de datos o resultado de donde cargar los hijos. + * @param bool $soloHabilitados Si es true, se cargan solo los hijos con el flag habilitado. * - * @return PEAR_Error + * @return mixed * @access public */ - function cargarHijos($db) // ~X2C + function cargarHijos($db, $soloHabilitados = true) // ~X2C { $id_field = $this->conf['id']; $id_padre = $this->conf['padre']; @@ -91,7 +94,11 @@ class AI_DBTreeObject extends AI_DBObject { $db = $result->dbh; // Si no es un resultado, hago el query. } else { - $result = $db->query("SELECT * FROM $tabla WHERE $id_padre = $id"); + $query = "SELECT * FROM $tabla WHERE $id_padre = $id"; + if ($soloHabilitados) { + $query .= ' AND ' . $this->conf['habilitado'] . ' = 1'; + } + $result = $db->query($query); if (DB::isError($result)) { return $result; } @@ -107,7 +114,7 @@ class AI_DBTreeObject extends AI_DBObject { // Si no hay mas resultados, entonces terminó bien. if (AI_Error::isError($err) and $err->getCode() == AI_ERROR_NO_RESULTADOS) { - return true; + return $this->_hijos; } // Si no, se devuelve el error. return $err; diff --git a/lib/AI/GrupoSecciones.ini b/lib/AI/GrupoSecciones.ini index 8b6cc27..eae6a86 100644 --- a/lib/AI/GrupoSecciones.ini +++ b/lib/AI/GrupoSecciones.ini @@ -5,7 +5,8 @@ tabla = grupo_secciones id = grupo ; Para AI_DBTreeObject. -padre = grupo_padre +padre = grupo_padre +habilitado = habilitado ; Vinculación con secciones de noticias. [secciones] diff --git a/lib/AI/Servicio.ini b/lib/AI/Servicio.ini index 5b9c1c1..4a1fa78 100644 --- a/lib/AI/Servicio.ini +++ b/lib/AI/Servicio.ini @@ -5,4 +5,5 @@ tabla = servicio id = servicio ; Para AI_DBTreeObject. -padre = servicio_padre +padre = servicio_padre +habilitado = habilitado