// $Id$
//
-// +X2C includes
require_once 'AI/DBObject.php';
-// ~X2C
-
require_once 'AI/Error.php';
/**
*/
define('AI_SISTEMA_CONFFILE', dirname(__FILE__).'/Sistema.ini');
-// +X2C Class 416 :AI_Sistema
/**
* Sistema.
*
var $sistema = 0;
/**
- * Nombre del sistema (slo de lectura, extra?o de SAMURAI).
+ * Nombre del sistema (sólo de lectura, extraído de SAMURAI).
*
* @var string $nombre
* @access public
var $nombre = '';
/**
- * Descripcin del sistema (slo de lectura, extra?o de SAMURAI).
+ * Descripción del sistema (sólo de lectura, extraído de SAMURAI).
*
* @var string $descripcion
* @access public
var $descripcion = '';
/**
- * ?ono del sistema.
+ * Ícono del sistema.
*
* @var string $icono
* @access public
*/
var $habilitado = true;
- // ~X2C
+ /**
+ * @var string $tipo
+ * @access public
+ */
+ var $tipo = 'php';
- // +X2C Operation 466
/**
* @param int $sistema ID del sistema.
*
* @return void
* @access public
*/
- function AI_Sistema($sistema = 0) // ~X2C
+ function AI_Sistema($sistema = 0)
{
parent::AI_DBObject($sistema, AI_SISTEMA_CONFFILE);
}
- // -X2C
- // +X2C Operation 536
/**
* @param mixed $db Base de datos o resultado de donde cargar el sistema.
*
* @return PEAR_Error
* @access public
*/
- function cargar($db) // ~X2C
+ function cargar($db)
{
$id_field = $this->conf['id'];
$id = intval($this->$id_field);
$db = $result->dbh;
// Si no es un resultado, hago el query.
} else {
- // FIXME - ver como manejar JOINs - Ver de hacer el JOIN tambien en cargar.
$result = $db->query(
"SELECT AI.*, SA.nombre_sistema as nombre, SA.desc_sistema as descripcion
FROM {$this->conf['base']}.{$this->conf['tabla']} as AI, samurai.sistema as SA
}
return true;
}
- // -X2C
- // +X2C Operation 459
/**
* @param DB $db DB donde guardar.
- * @param bool $nuevo Si es true, se fuerza a guardar el servicio como nuevo.
+ * @param bool $nuevo Si es true, se fuerza a guardar el servicio como
+ * nuevo.
*
* @return PEAR_Error
* @access public
*/
- function guardar($db, $nuevo = false) // ~X2C
+ function guardar($db, $nuevo = false)
{
$datos = array(
'icono' => $this->icono,
'link' => $this->link,
'link_ayuda' => $this->link_ayuda,
'habilitado' => $this->habilitado ? 1 : 0,
+ 'tipo' => $this->tipo,
);
$err = parent::guardar($db, $datos, $nuevo);
if (PEAR::isError($err)) {
return $err;
}
}
- // -X2C
- // +X2C Operation 528
/**
* Obtiene un array con los identificadores de los sistemas cargados.
*
* @param DB $db Base de datos de la cual obtener los sistemas.
- * @param string $where Clausula WHERE para filtrar la bsqueda.
+ * @param string $where Clausula WHERE para filtrar la búsqueda.
*
* @return array
* @access public
* @static
*/
- function getSistemasArray($db, $where = '') // ~X2C
+ function getSistemasArray($db, $where = '')
{
static $conf;
if (!$conf) {
$conf = parse_ini_file(AI_SISTEMA_CONFFILE, true);
}
extract($conf);
- // FIXME - ver como manejar JOINs - Ver de hacer el JOIN tambien en cargar.
$query = "
SELECT SA.id_sistema, SA.nombre_sistema
FROM samurai.sistema as SA
$query .= " ORDER BY SA.nombre_sistema ASC";
return $db->getAssoc($query);
}
- // -X2C
- // +X2C Operation 531
/**
- * @param DB $db Base de datos de donde obtener los sistemas.
- * @param bool $soloHabilitados Clausula WHERE para filtrar la bsqueda.
- * @param string $where Clausula WHERE para filtrar la bsqueda.
+ * @param $db Base de datos de donde obtener los sistemas.
+ * @param $soloHabilitados Si es true devuelve solo los sistemas marcados como habilitados.
+ * @param $where Clausula WHERE para filtrar la búsqueda.
*
- * @return array
+ * @return Un array de sistemas cuya clave es el id del sistema y el valor es un objeto AI_Sistema.
* @access public
* @static
*/
- function getSistemas($db, $soloHabilitados = true, $where = '') // ~X2C
+ function getSistemas($db, $soloHabilitados = true, $where = '')
{
static $conf;
if (!$conf) {
}
$id_field = $conf['id'];
$tabla = $conf['base'].'.'.$conf['tabla'];
- // FIXME - ver como manejar JOINs - Ver de hacer el JOIN tambien en cargar.
$query = "
SELECT AI.*, SA.nombre_sistema as nombre, SA.desc_sistema as descripcion
FROM $tabla as AI, samurai.sistema as SA
$sistema = new AI_Sistema;
$err = $sistema->cargar($result);
while (!PEAR::isError($err)) {
- $sistemas[] = $sistema->__clone();
+ $sistemas[$sistema->sistema] = $sistema->__clone();
$err = $sistema->cargar($result);
}
// Si no hay mas resultados (terminó bien) devuelve el array de
// Si no, se devuelve el error.
return $err;
}
- // -X2C
-} // -X2C Class :AI_Sistema
+}
-?>
\ No newline at end of file
+?>