// $Id$
//
-// Requires generales. {{{
-require_once 'MECON/HTML/Arbol/ArbolDB.php';
-require_once 'AIForm.php';
+// Debug. {{{
+require_once 'PEAR.php';
+PEAR::setErrorHandling(PEAR_ERROR_TRIGGER);
+// }}}
+
+// Creo el Marco. {{{
+require_once 'MECON/Marco.php';
+$marco = new Marco('../conf/Marco.php');
+// }}}
+
+// Agrego una barra al costado con el listado de objetos (XXX - va a ir en Marco). {{{
+require_once 'HTML/Table.php';
+$layout = new HTML_Table(
+ array(
+ 'width' => '100%',
+ 'align' => 'center',
+ 'valign' => 'top',
+ 'border' => 0,
+ 'cellspacing' => 0,
+ 'cellpadding' => 0,
+ )
+);
+$layout->setAutoGrow(true);
+$layout->setCellAttributes(0, 0, array('width' => '1'));
+$layout->setCellAttributes(0, 1, array('width' => '10'));
+$layout->setCellContents(0, 1, ' ');
// }}}
// Averiguo si estoy administrando algún tipo de objeto. {{{
if (@$_SERVER['PATH_INFO']) {
$tmp = ltrim($_SERVER['PATH_INFO'], '/');
if ($tmp == 'grupo') {
- $tipo = $tmp;
- $clase = 'GrupoSecciones';
- $tabla = 'grupo_secciones';
+ $tipo = $tmp;
+ $clase = "AI_GrupoSecciones";
+ $require = 'AI/GrupoSecciones.php';
+ $tabla = 'grupo_secciones';
} elseif ($tmp == 'servicio') {
- $tipo = $tmp;
- $clase = 'Servicio';
- $tabla = $tipo;
+ $tipo = $tmp;
+ $clase = 'AI_Servicio';
+ $require = 'AI/Servicio.php';
+ $tabla = $tipo;
} elseif ($tmp == 'sistema') {
- $tipo = $tmp;
- $clase = 'Sistema';
- $tabla = $tipo;
+ $tipo = $tmp;
+ $clase = 'AI_Sistema';
+ $require = 'AI/Sistema.php';
+ $tabla = $tipo;
} else { // No hay un objeto válido para administrar.
header('Location: '.$_SERVER['SCRIPT_NAME']);
}
}
// }}}
-// Si tiene una clase, estamos editando algo. {{{
+// Si tiene un tipo, estamos editando algo. {{{
if ($tipo) {
- // Creo el árbol con los servicios. {{{
- $dbdata = array(
- 'db' => &$DB,
- 'tabla' => $tabla,
- 'id' => $tipo,
- 'nombre' => $tipo,
- 'prepend_link' => $tipo . '?accion='.MODIFICACION.'&id='
- );
- if ($tipo == 'grupo' or $tipo == 'servicio') {
- $dbdata['nombre'] = 'nombre';
- $dbdata['id_padre'] = $tipo . '_padre';
- }
- $arbol = new HTML_ArbolDB($dbdata, '/MECON/images/arbol_noticias.gif');
+
+ // Creo formulario. {{{
+ require_once 'AI/Form.php';
+ $form =& new AI_Form;
// }}}
// Creo un objeto y seteo su id. {{{
- require_once "$clase.php";
+ require_once $require;
$obj = new $clase;
$obj->$tipo = @$_REQUEST['id'];
// }}}
- // Creo formulario. {{{
- $form =& new AIForm;
- // }}}
-
// Verifico que la acción sea válida. {{{
switch(@$_REQUEST['accion']) {
- case BAJA:
- case MODIFICACION:
+ case AI_BAJA:
+ case AI_MODIF:
$accion = $_REQUEST['accion'];
break;
default:
- $accion = ALTA;
+ $accion = AI_ALTA;
}
// }}}
}
switch ($boton) {
case 'aceptar_agregar':
- $accion = ALTA;
+ $accion = AI_ALTA;
break;
case 'modificar_borrar':
// Viene de modificar, hay que confirmar primero.
$a_confirmar = true;
case 'aceptar_borrar':
- $accion = BAJA;
+ $accion = AI_BAJA;
$obj->$tipo = $form->getSubmitValue($tipo);
break;
case 'borrar_cancelar':
// Indico que viene de un formulario cancelado.
$cancelado = true;
case 'aceptar_modificar':
- $accion = MODIFICACION;
+ $accion = AI_MODIF;
$obj->$tipo = $form->getSubmitValue($tipo);
break;
}
// }}}
+ // Creo la base de datos. {{{
+ require_once 'AI/DB.php';
+ $db =& AI_DB::connect('../conf/DB.ini');
+ if (DB::isError($db)) {
+ die($db->getMessage());
+ }
+ // }}}
+
// Inicio el formulario, cargando datos de ser necesario. {{{
- if ($accion & (BAJA | MODIFICACION)) {
- $err =& $obj->cargar($DB);
+ if ($accion & (AI_BAJA | AI_MODIF)) {
+ $err =& $obj->cargar($db);
if (PEAR::isError($err)) {
die($err->getMessage());
}
$form->iniciar($obj, $accion);
} else {
- $accion = ALTA;
+ $accion = AI_ALTA;
$form->iniciar($obj);
}
// }}}
}
// }}}
- // Me fijo si se cargo un formulalrio y si es válido. {{{
+ // Me fijo si se cargo un formulalrio y si es válido hago el ABM. {{{
if ($form->validate()) {
+
switch ($accion) {
- case ALTA: // {{{
+ case AI_ALTA: // {{{
$form->llenarObjeto($obj);
- $err =& $obj->guardar($DB);
+ $err =& $obj->guardar($db);
if (PEAR::isError($err)) {
die($err->getMessage());
}
header(sprintf('Location: %s?accion=%d&id=%d',
- $tipo, MODIFICACION, $obj->$tipo));
+ $tipo, AI_MODIF, $obj->$tipo));
exit;
break;
// }}}
- case BAJA: // {{{
+ case AI_BAJA: // {{{
if (!@$a_confirmar) {
$form->llenarObjeto($obj);
- $err =& $obj->borrar($DB);
+ $err =& $obj->borrar($db);
if (PEAR::isError($err)) {
die($err->getMessage());
}
}
break;
// }}}
- case MODIFICACION: // {{{
+ case AI_MODIF: // {{{
if (!@$cancelado) {
$form->llenarObjeto($obj);
- $err =& $obj->guardar($DB);
+ $err =& $obj->guardar($db);
if (PEAR::isError($err)) {
die($err->getMessage());
}
header(sprintf('Location: %s?accion=%d&id=%d',
- $tipo, MODIFICACION, $obj->$tipo));
+ $tipo, AI_MODIF, $obj->$tipo));
exit;
}
break;
}
// }}}
+ // Creo el árbol con el tipo de objeto que manejo. {{{
+ require_once 'MECON/HTML/Arbol/ArbolDB.php';
+ $dbdata = array(
+ 'db' => &$db,
+ 'tabla' => $tabla,
+ 'id' => $tipo,
+ 'nombre' => $tipo,
+ 'prepend_link' => $tipo.'?accion='.AI_MODIF.'&id='
+ );
+ if ($tipo == 'grupo' or $tipo == 'servicio') {
+ $dbdata['nombre'] = 'nombre';
+ $dbdata['id_padre'] = $tipo . '_padre';
+ }
+ $arbol = new HTML_ArbolDB($dbdata, '/MECON/images/arbol_noticias.gif');
+ // }}}
+
// Agrego al cuerpo de la página las cosas que voy a dibujar. {{{
- $LAYOUT->setCellContents(0, 0, $arbol);
- $LAYOUT->setCellContents(0, 2, $form);
- $MARCO->addBody($LAYOUT);
+ $layout->setCellContents(0, 0, $arbol);
+ $layout->setCellContents(0, 2, $form);
+ $marco->addBody($layout);
// }}}
// }}}
// No se está editando nada, agrego al cuerpo de la página la pantalla de entrada {{{
} else {
require_once 'HTML/Image.php';
- $MARCO->setEspacios(false);
- $MARCO->addBody(new HTML_Image('images/home', 'Adminitrador de Intranet'));
+ $marco->setEspacios(false);
+ $marco->addBody(new HTML_Image('images/home', 'Adminitrador de Intranet'));
}
// }}}
// Dibujo. {{{
-$MARCO->display();
+$marco->display();
// }}}
?>