// +X2C Operation 512
/**
* Obtiene un array con una lista de secciones.
+Sólo se obtienen las secciones que todavía no pertenecen a ningún grupo. Si se especifica un grupo, se agregan las secciones de ese grupo al <em>array</em> resultante.
*
* @param DB $db Base de datos a usar para obtener los datos.
+ * @param int $grupo Grupo del cual obtener las secciones.
*
* @return array
* @access public
* @static
*/
- function getSeccionesArray($db = null) // ~X2C
+ function getSeccionesArray($db = null, $grupo = 0) // ~X2C
{
- static $conf;
- if (!$conf) {
+ static $conf_dav, $conf_sec;
+ if (!$conf_dav or !$conf_sec) {
$conf = parse_ini_file(AI_GRUPOSECCIONES_CONFFILE, true);
- $conf = $conf['mecondav'];
+ $conf_dav = $conf['mecondav'];
+ $conf_sec = $conf['secciones'];
}
- extract($conf);
+ extract($conf_dav, EXTR_PREFIX_ALL, 'dav');
+ extract($conf_sec, EXTR_PREFIX_ALL, 'sec');
return $db->getAssoc("
- SELECT $id, $campo
- FROM $base.$tabla
- ORDER BY $campo ASC");
+ SELECT d.$dav_id, d.$dav_campo
+ FROM $dav_base.$dav_tabla as d
+ LEFT JOIN $sec_base.$sec_tabla AS s
+ ON s.$sec_campo = d.$dav_id
+ WHERE s.$sec_campo IS NULL OR s.$sec_id = $grupo
+ ORDER BY d.$dav_campo ASC");
}
// -X2C
*
* @return AI_GrupoSecciones
* @access public
+ * @static
*/
function getGrupo($seccion, $db = null) // ~X2C
{