@cd doc && xmi2code
code-clean:
- @find sistema/local_lib -name '*.bak' | xargs rm -fv
+ @find lib -name '*.bak' | xargs rm -fv
clean-readme:
find -name README | xargs svn rm
<XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
</XMI.header>
<XMI.content>
- <docsettings viewid="412" documentation="" uniqueid="510" />
+ <docsettings viewid="412" documentation="" uniqueid="511" />
<umlobjects>
- <UML:Class stereotype="" package="" xmi.id="413" abstract="0" documentation="Servicio." name="Servicio" static="0" scope="200" >
- <UML:Operation stereotype="" package="" xmi.id="465" type="void" abstract="0" documentation="" name="Servicio" static="0" scope="200" >
+ <UML:Class stereotype="" package="AI" xmi.id="413" abstract="0" documentation="Servicio." name="AI_Servicio" static="0" scope="200" >
+ <UML:Operation stereotype="" package="" xmi.id="465" type="void" abstract="0" documentation="" name="AI_Servicio" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="0" type="int" abstract="0" documentation="ID del servicio." name="servicio" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="457" type="PEAR_Error" abstract="0" documentation="" name="cargar" static="0" scope="200" >
<UML:Attribute stereotype="" package="" xmi.id="434" value="false" type="bool" abstract="0" documentation="True si es necesario que el usuario se loguee para usar el servicio." name="necesita_logueo" static="0" scope="200" />
<UML:Attribute stereotype="" package="" xmi.id="444" value="true" type="bool" abstract="0" documentation="Indica si esta habilitado." name="habilitado" static="0" scope="200" />
</UML:Class>
- <UML:Class stereotype="" package="" xmi.id="416" abstract="0" documentation="Sistema." name="Sistema" static="0" scope="200" >
- <UML:Operation stereotype="" package="" xmi.id="466" type="void" abstract="0" documentation="" name="Sistema" static="0" scope="200" >
+ <UML:Class stereotype="" package="AI" xmi.id="416" abstract="0" documentation="Sistema." name="AI_Sistema" static="0" scope="200" >
+ <UML:Operation stereotype="" package="" xmi.id="466" type="void" abstract="0" documentation="" name="AI_Sistema" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="0" type="int" abstract="0" documentation="ID del sistema." name="sistema" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="460" type="PEAR_Error" abstract="0" documentation="" name="cargar" static="0" scope="200" >
<UML:Attribute stereotype="" package="" xmi.id="440" value="''" type="string" abstract="0" documentation="Enlace a la ayuda del sistema." name="link_ayuda" static="0" scope="200" />
<UML:Attribute stereotype="" package="" xmi.id="445" value="true" type="bool" abstract="0" documentation="Indica si esta habilitado." name="habilitado" static="0" scope="200" />
</UML:Class>
- <UML:Class stereotype="" package="" xmi.id="469" abstract="0" documentation="" name="AIError" static="0" scope="200" >
- <UML:Operation stereotype="" package="" xmi.id="470" type="void" abstract="0" documentation="" name="AIError" static="0" scope="200" >
+ <UML:Class stereotype="" package="" xmi.id="469" abstract="0" documentation="" name="AI_Error" static="0" scope="200" >
+ <UML:Operation stereotype="" package="" xmi.id="470" type="void" abstract="0" documentation="" name="AI_Error" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="int" abstract="0" documentation="Código de error." name="codigo" static="0" scope="200" />
<UML:Parameter stereotype="" package="" xmi.id="2" value="''" type="string" abstract="0" documentation="Mensaje para mostrar" name="mensaje" static="0" scope="200" />
</UML:Operation>
</UML:Class>
<UML:Class stereotype="" package="" xmi.id="471" abstract="0" documentation="x2c:extern
x2c:include: PEAR.php" name="PEAR_Error" static="0" scope="200" />
- <UML:Class stereotype="" package="" xmi.id="486" abstract="0" documentation="Grupo de secciones." name="GrupoSecciones" static="0" scope="200" >
- <UML:Operation stereotype="" package="" xmi.id="495" type="void" abstract="0" documentation="" name="GrupoSecciones" static="0" scope="200" >
+ <UML:Class stereotype="" package="AI" xmi.id="486" abstract="0" documentation="Grupo de secciones." name="AI_GrupoSecciones" static="0" scope="200" >
+ <UML:Operation stereotype="" package="" xmi.id="495" type="void" abstract="0" documentation="" name="AI_GrupoSecciones" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="0" type="int" abstract="0" documentation="ID del grupo." name="grupo" static="0" scope="200" />
</UML:Operation>
<UML:Operation stereotype="" package="" xmi.id="496" type="PEAR_Error" abstract="0" documentation="" name="cargar" static="0" scope="200" >
<UML:Attribute stereotype="" package="" xmi.id="493" value="false" type="bool" abstract="0" documentation="True si hay que mostrar los grupos hijos (?? FIXME)." name="mostrar_hijos" static="0" scope="200" />
<UML:Attribute stereotype="" package="" xmi.id="494" value="true" type="bool" abstract="0" documentation="Indica si esta habilitado." name="habilitado" static="0" scope="200" />
</UML:Class>
- <UML:Class stereotype="" package="" xmi.id="503" abstract="0" documentation="Base de datos del Administrador de Intranet." name="AIDB" static="0" scope="200" >
- <UML:Operation stereotype="" package="" xmi.id="506" type="&mixed" abstract="0" documentation="" name="connect" static="0" scope="200" />
+ <UML:Class stereotype="" package="" xmi.id="503" abstract="0" documentation="Base de datos del Administrador de Intranet." name="AI_DB" static="0" scope="200" >
+ <UML:Operation stereotype="" package="" xmi.id="506" type="&mixed" abstract="0" documentation="" name="connect" static="0" scope="200" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Archivo de configuración de la base de datos." name="confFile" static="0" scope="200" />
+ </UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="511" type="bool" abstract="0" documentation="Verifica si un objeto es un error." name="isError" static="0" scope="200" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&mixed" abstract="0" documentation="Variable a chequear si es un error." name="var" static="0" scope="200" />
+ </UML:Operation>
</UML:Class>
<UML:Class stereotype="" package="" xmi.id="504" abstract="0" documentation="x2c:extern" name="DB" static="0" scope="200" />
- <UML:Class stereotype="" package="" xmi.id="507" abstract="0" documentation="Formularios para el Administrador de Intranet." name="AIForm" static="0" scope="200" >
+ <UML:Class stereotype="" package="" xmi.id="507" abstract="0" documentation="Formularios para el Administrador de Intranet." name="AI_Form" static="0" scope="200" >
<UML:Operation stereotype="" package="" xmi.id="509" type="void" abstract="0" documentation="Construye un formulario para el objecto especificado." name="iniciar" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="4" value="" type="&object" abstract="0" documentation="Objeto con el cual rellenar el formulario. Puede ser GrupoSecciones, Servicio o Sistema." name="obj" static="0" scope="200" />
<UML:Parameter stereotype="" package="" xmi.id="5" value="ALTA" type="int" abstract="0" documentation="Accion que realizará el formulario a crear. Puede ser ALTA, BAJA o MODIFICACION." name="accion" static="0" scope="200" />
<UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&mixed" abstract="0" documentation="Objeto a llenar con los datos del formulario. Puede ser GrupoSecciones, Servicio o Sistema." name="obj" static="0" scope="200" />
</UML:Operation>
</UML:Class>
- <UML:Class stereotype="" package="MECON/HTML" xmi.id="508" abstract="0" documentation="x2c:extern" name="QuickForm" static="0" scope="200" />
+ <UML:Class stereotype="" package="" xmi.id="508" abstract="0" documentation="x2c:extern" name="MECON_HTML_QuickForm" static="0" scope="200" />
</umlobjects>
<diagrams>
<diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="412" documentation="" type="402" showops="1" showpackage="0" name="Clases" localid="30000" showstereotype="0" showscope="1" font="Helvetica,8,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
<widgets>
- <UML:ConceptWidget usesdiagramfillcolour="0" width="193" showattsigs="601" usesdiagramusefillcolour="0" x="270" linecolour="#ff0000" y="20" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="238" usefillcolor="1" showattributes="1" xmi.id="413" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="184" showattsigs="601" usesdiagramusefillcolour="0" x="30" linecolour="#ff0000" y="250" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="154" usefillcolor="1" showattributes="1" xmi.id="416" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="256" showattsigs="601" usesdiagramusefillcolour="0" x="233" linecolour="#ff0000" y="347" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="35" usefillcolor="1" showattributes="1" xmi.id="469" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="73" showattsigs="601" usesdiagramusefillcolour="0" x="325" linecolour="#ff0000" y="273" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="24" usefillcolor="1" showattributes="0" xmi.id="471" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="211" showattsigs="601" usesdiagramusefillcolour="0" x="30" linecolour="#ff0000" y="20" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="210" usefillcolor="1" showattributes="1" xmi.id="486" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="117" showattsigs="601" usesdiagramusefillcolour="0" x="57" linecolour="#ff0000" y="481" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="35" usefillcolor="1" showattributes="1" xmi.id="503" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="46" showattsigs="601" usesdiagramusefillcolour="0" x="92" linecolour="#ff0000" y="418" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="24" usefillcolor="1" showattributes="0" xmi.id="504" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="254" showattsigs="601" usesdiagramusefillcolour="0" x="233" linecolour="#ff0000" y="467" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="49" usefillcolor="1" showattributes="1" xmi.id="507" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="66" showattsigs="601" usesdiagramusefillcolour="0" x="327" linecolour="#ff0000" y="399" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="24" usefillcolor="1" showattributes="0" xmi.id="508" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="199" showattsigs="601" usesdiagramusefillcolour="0" x="270" linecolour="#ff0000" y="20" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="238" usefillcolor="1" showattributes="1" xmi.id="413" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="201" showattsigs="601" usesdiagramusefillcolour="0" x="30" linecolour="#ff0000" y="250" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="154" usefillcolor="1" showattributes="1" xmi.id="416" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="262" showattsigs="601" usesdiagramusefillcolour="0" x="243" linecolour="#ff0000" y="347" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="35" usefillcolor="1" showattributes="1" xmi.id="469" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="73" showattsigs="601" usesdiagramusefillcolour="0" x="338" linecolour="#ff0000" y="273" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#dcdcdc" height="24" usefillcolor="1" showattributes="0" xmi.id="471" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="228" showattsigs="601" usesdiagramusefillcolour="0" x="30" linecolour="#ff0000" y="20" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="210" usefillcolor="1" showattributes="1" xmi.id="486" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="192" showattsigs="601" usesdiagramusefillcolour="0" x="309" linecolour="#ff0000" y="480" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="49" usefillcolor="1" showattributes="1" xmi.id="503" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="46" showattsigs="601" usesdiagramusefillcolour="0" x="382" linecolour="#ff0000" y="417" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#dcdcdc" height="24" usefillcolor="1" showattributes="0" xmi.id="504" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="254" showattsigs="601" usesdiagramusefillcolour="0" x="29" linecolour="#ff0000" y="481" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="49" usefillcolor="1" showattributes="1" xmi.id="507" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="146" showattsigs="601" usesdiagramusefillcolour="0" x="83" linecolour="#ff0000" y="416" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#dcdcdc" height="24" usefillcolor="1" showattributes="0" xmi.id="508" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
</widgets>
<messages/>
<associations>
<UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="471" widgetaid="469" documentation="" type="500" >
<linepath>
- <startpoint startx="361" starty="347" />
- <endpoint endx="361" endy="297" />
+ <startpoint startx="374" starty="347" />
+ <endpoint endx="374" endy="297" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="504" widgetaid="503" documentation="" type="500" >
+ <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="508" widgetaid="507" documentation="" type="500" >
<linepath>
- <startpoint startx="115" starty="481" />
- <endpoint endx="115" endy="442" />
+ <startpoint startx="156" starty="481" />
+ <endpoint endx="156" endy="440" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="508" widgetaid="507" documentation="" type="500" >
+ <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="504" widgetaid="503" documentation="" type="500" >
<linepath>
- <startpoint startx="360" starty="467" />
- <endpoint endx="360" endy="423" />
+ <startpoint startx="405" starty="480" />
+ <endpoint endx="405" endy="441" />
</linepath>
</UML:AssocWidget>
</associations>
<listitem open="1" type="800" id="-1" label="Views" >
<listitem open="1" type="801" id="-1" label="Logical View" >
<listitem open="1" type="803" id="-1" label="AI" >
- <listitem open="0" type="813" id="503" label="AIDB" >
+ <listitem open="0" type="813" id="503" label="AI_DB" >
<listitem open="0" type="815" id="506" label="connect" />
+ <listitem open="0" type="815" id="511" label="isError" />
</listitem>
- <listitem open="0" type="813" id="469" label="AIError" >
- <listitem open="0" type="815" id="470" label="AIError" />
+ <listitem open="0" type="813" id="469" label="AI_Error" >
+ <listitem open="0" type="815" id="470" label="AI_Error" />
</listitem>
- <listitem open="0" type="813" id="507" label="AIForm" >
+ <listitem open="0" type="813" id="507" label="AI_Form" >
<listitem open="0" type="815" id="509" label="iniciar" />
<listitem open="0" type="815" id="510" label="llenarObjeto" />
</listitem>
- <listitem open="0" type="813" id="486" label="GrupoSecciones" >
+ <listitem open="0" type="813" id="486" label="AI_GrupoSecciones" >
<listitem open="0" type="814" id="492" label="antiguedad" />
<listitem open="0" type="815" id="498" label="borrar" />
<listitem open="0" type="815" id="496" label="cargar" />
<listitem open="0" type="815" id="500" label="__clone" />
<listitem open="0" type="814" id="487" label="grupo" />
<listitem open="0" type="814" id="489" label="grupo_padre" />
- <listitem open="0" type="815" id="495" label="GrupoSecciones" />
+ <listitem open="0" type="815" id="495" label="AI_GrupoSecciones" />
<listitem open="0" type="815" id="497" label="guardar" />
<listitem open="0" type="814" id="494" label="habilitado" />
<listitem open="0" type="814" id="490" label="hijos" />
<listitem open="0" type="814" id="488" label="nombre" />
<listitem open="0" type="814" id="491" label="secciones" />
</listitem>
- <listitem open="0" type="813" id="413" label="Servicio" >
+ <listitem open="0" type="813" id="413" label="AI_Servicio" >
<listitem open="0" type="815" id="456" label="borrar" />
<listitem open="0" type="815" id="457" label="cargar" />
<listitem open="0" type="815" id="463" label="cargarHijos" />
<listitem open="0" type="814" id="434" label="necesita_logueo" />
<listitem open="0" type="814" id="429" label="nombre" />
<listitem open="0" type="814" id="428" label="servicio" />
- <listitem open="0" type="815" id="465" label="Servicio" />
+ <listitem open="0" type="815" id="465" label="AI_Servicio" />
<listitem open="0" type="814" id="452" label="servicio_padre" />
</listitem>
- <listitem open="0" type="813" id="416" label="Sistema" >
+ <listitem open="0" type="813" id="416" label="AI_Sistema" >
<listitem open="0" type="815" id="461" label="borrar" />
<listitem open="0" type="815" id="460" label="cargar" />
<listitem open="0" type="815" id="502" label="__clone" />
<listitem open="0" type="814" id="439" label="link" />
<listitem open="0" type="814" id="440" label="link_ayuda" />
<listitem open="0" type="814" id="437" label="sistema" />
- <listitem open="0" type="815" id="466" label="Sistema" />
+ <listitem open="0" type="815" id="466" label="AI_Sistema" />
</listitem>
</listitem>
<listitem open="0" type="807" id="412" label="Clases" />
<listitem open="0" type="803" id="-1" label="Externo" >
<listitem open="1" type="813" id="504" label="DB" />
<listitem open="0" type="813" id="471" label="PEAR_Error" />
- <listitem open="1" type="813" id="508" label="QuickForm" />
+ <listitem open="1" type="813" id="508" label="MECON_HTML_QuickForm" />
</listitem>
</listitem>
<listitem open="1" type="802" id="-1" label="Use Case View" />
<option key="config-file" value="xmi2code.config"/>
<option key="config-file-set" value="false"/>
<option key="handler" value="umbrello"/>
- <option key="generator-path" value="../sistema/local_lib"/>
- <option key="use-package-as-dir" value="true"/>
+ <option key="generator-path" value="../lib"/>
+ <option key="use-package-as-dir" value="false"/>
+ <option key="use-underscores-as-dirs" value="true"/>
<option key="indent" value=" "/>
<option key="files-case" value="preserve"/>
<option key="generator" value="php.pear"/>
<option key="template-path" value="."/>
<option key="php.template" value="xmi2code.tpl.php"/>
<option key="php.default-code" value="trigger_error('Not implemented!', E_USER_WARNING);"/>
- <option key="php.pear.use-package-in-classnames" value="true"/>
+ <option key="php.pear.use-package-in-classnames" value="false"/>
<option key="php.pear.underscore-in-nonpublic" value="true"/>
</xmi2code>
require_once 'DB.php';
// ~X2C
-// +X2C Class 503 :AIDB
+// +X2C Class 503 :AI_DB
/**
* Base de datos del Administrador de Intranet.
*
* @access public
*/
-class AIDB extends DB {
+class AI_DB extends DB {
// ~X2C
// +X2C Operation 506
/**
+ * @param string $confFile Archivo de configuracin de la base de datos.
+ *
* @return &mixed
* @access public
*/
- function &connect() // ~X2C
+ function &connect($confFile) // ~X2C
{
- $conf = parse_ini_file(dirname(__FILE__) . '/../conf/AIDB.ini', true);
+ $conf = parse_ini_file($confFile, true);
return DB::connect($conf['dsn'], $conf['opciones']);
}
// -X2C
-} // -X2C Class :AIDB
+ // +X2C Operation 511
+ /**
+ * Verifica si un objeto es un error.
+ *
+ * @param mixed &$var Variable a chequear si es un error.
+ *
+ * @return bool
+ * @access public
+ */
+ function isError(&$var) // ~X2C
+ {
+ return is_a($var, 'ai_error');
+ }
+ // -X2C
+
+} // -X2C Class :AI_DB
-?>
\ No newline at end of file
+?>
* Es un error esperado y poco grave que sucede cada vez que se itera
* sobre un resultado de una base de datos.
*/
-define('AIERROR_NO_RESULTADOS', 1);
+define('AI_ERROR_NO_RESULTADOS', 1);
-// +X2C Class 469 :AIError
+// +X2C Class 469 :AI_Error
/**
* @access public
*/
-class AIError extends PEAR_Error {
+class AI_Error extends PEAR_Error {
// ~X2C
// +X2C Operation 470
* @return void
* @access public
*/
- function AIError($codigo, $mensaje = '') // ~X2C
+ function AI_Error($codigo, $mensaje = '') // ~X2C
{
$this->PEAR_Error($mensaje, $codigo);
}
// -X2C
-} // -X2C Class :AIError
+} // -X2C Class :AI_Error
?>
\ No newline at end of file
// ~X2C
// Definicion de acciones.
-define('ALTA', 1);
-define('BAJA', 2);
-define('MODIFICACION', 4);
+define('AI_ALTA', 1);
+define('AI_BAJA', 2);
+define('AI_MODIF', 4);
-// +X2C Class 507 :AIForm
+// +X2C Class 507 :AI_Form
/**
* Formularios para el Administrador de Intranet.
*
* @access public
*/
-class AIForm extends MECON_HTML_QuickForm {
+class AI_Form extends MECON_HTML_QuickForm {
// ~X2C
// +X2C Operation 509
* Construye un formulario para el objecto especificado.
*
* @param object &$obj Objeto con el cual rellenar el formulario. Puede ser GrupoSecciones, Servicio o Sistema.
- * @param int $accion Accion que realizar?el formulario a crear. Puede ser ALTA, BAJA o MODIFICACION.
+ * @param int $accion Accion que realizar?el formulario a crear. Puede ser AI_ALTA, AI_BAJA o AI_MODIF.
*
* @return void
* @access public
*/
- function iniciar(&$obj, $accion = ALTA) // ~X2C
+ function iniciar(&$obj, $accion = AI_ALTA) // ~X2C
{
- $clase = get_class($obj);
- $tipo = $clase;
- $s_clase = ucfirst($clase);
- if ($clase == 'gruposecciones') {
- $tipo = 'grupo';
- $s_clase = 'Grupo de Secciones';
+ $tipo = substr(get_class($obj), 3);
+ $s_tipo = ucfirst($tipo);
+ if ($tipo == 'gruposecciones') {
+ $tipo = 'grupo';
+ $s_tipo = 'Grupo de Secciones';
}
$padre = $tipo.'_padre';
switch ($accion) {
- case BAJA:
+ case AI_BAJA:
$s_accion = 'Borrar';
break;
- case MODIFICACION:
+ case AI_MODIF:
$s_accion = 'Modificar';
break;
default:
- $accion = ALTA;
+ $accion = AI_ALTA;
$s_accion = 'Agregar';
}
// Construyo con el padre y seteos generales.
$this->setRendererOpts(array('width' => '400'));
- $this->addElement('header','cabecera', $s_accion . ' ' . $s_clase);
+ $this->addElement('header','cabecera', $s_accion . ' ' . $s_tipo);
// Elementos.
- if ($accion & (BAJA | MODIFICACION)) {
- $fId =& $this->addElement('text', $tipo, 'Identificador');
- $fId->setValue($obj->$tipo);
+ if ($tipo == 'sistema') {
+ require_once 'SAMURAI/Sistema.php';
+ $sistemas = SAMURAI_Sistema::getArraySistemas(AI_DB::connect('../conf/DB.ini'));
+ $fId =& $this->addElement('select', $tipo, 'Sistema', $sistemas);
+ }
+ if ($accion & (AI_BAJA | AI_MODIF)) {
+ if ($tipo == 'sistema') {
+ $fId->setSelected($obj->$tipo);
+ } else {
+ $fId =& $this->addElement('text', $tipo, 'Identificador');
+ $fId->setValue($obj->$tipo);
+ }
$fId->freeze();
}
- if ($clase == 'gruposecciones' or $clase == 'servicio') {
+ if ($tipo == 'grupo' or $tipo == 'servicio') {
$fPadre =& $this->addElement('text', $padre, 'Padre');
$fNombre =& $this->addElement('text', 'nombre', 'Nombre');
// Validación.
$this->addRule($padre, 'El padre debe ser un número natural.',
'regex', '/^\d*$/');
// Carga datos.
- if ($accion & (BAJA | MODIFICACION)) {
+ if ($accion & (AI_BAJA | AI_MODIF)) {
$fPadre->setValue($obj->$padre);
$fNombre->setValue($obj->nombre);
}
}
- if ($clase == 'gruposecciones') {
+ if ($tipo == 'grupo') {
$fAntiguedad =& $this->addElement('text', 'antiguedad', 'Antigüedad');
$fSecciones =& $this->addElement('select', 'secciones', 'Secciones',
array(1=>'test1', 'test2', 'test3', 'test4', 'test5', 'test6', 'test7', 'test8'),
$this->addRule('antiguedad', 'La antigüedad debe ser un número natural.',
'regex', '/^\d*$/');
// Carga datos.
- if ($accion & (BAJA | MODIFICACION)) {
+ if ($accion & (AI_BAJA | AI_MODIF)) {
$fAntiguedad->setValue($obj->antiguedad);
$fSecciones->setSelected($obj->secciones);
$fMostrarHijos->setChecked($obj->mostrar_hijos);
}
}
- if ($clase == 'servicio') {
+ if ($tipo == 'servicio') {
$fDescripcion =& $this->addElement('text', 'descripcion', 'Descripción');
$fLogueo =& $this->addElement('checkbox','logueo', 'Necesita login');
// Validación
$this->addRule('descripcion', 'Debe ingresar una descripción.', 'required');
// Carga datos.
- if ($accion & (BAJA | MODIFICACION)) {
+ if ($accion & (AI_BAJA | AI_MODIF)) {
$fDescripcion->setValue($obj->descripcion);
$fLogueo->setChecked($obj->necesita_logueo);
}
}
- if ($clase == 'servicio' or $clase == 'sistema') {
+ if ($tipo == 'servicio' or $tipo == 'sistema') {
$fLink =& $this->addElement('text', 'link', 'Enlace');
$fLinkAyuda =& $this->addElement('text', 'link_ayuda', 'Enlace de la ayuda');
$fIcono =& $this->addElement('text', 'icono', 'Ícono');
// Carga datos.
- if ($accion & (BAJA | MODIFICACION)) {
+ if ($accion & (AI_BAJA | AI_MODIF)) {
$fLink->setValue($obj->link);
$fLinkAyuda->setValue($obj->link_ayuda);
$fIcono->setValue($obj->icono);
}
// Validación.
- if ($clase == 'sistema') {
+ if ($tipo == 'sistema') {
$this->addRule('link', 'Debe ingresar un nombre.', 'required');
- $this->addRule('icono', 'Debe ingresar un padre.', 'required');
+ $this->addRule('icono', 'Debe ingresar un ícono.', 'required');
}
}
$fHabilitado =& $this->addElement('checkbox','habilitado', 'Está habilitado',
'', array('checked' => 'checked'));
// Carga datos.
- if ($accion & (BAJA | MODIFICACION)) {
+ if ($accion & (AI_BAJA | AI_MODIF)) {
$fHabilitado->setChecked($obj->habilitado);
}
// Botones.
$fBtnAccion =& parent::createElement('submit', 'aceptar' , $s_accion);
- if ($accion & MODIFICACION) {
+ if ($accion & AI_MODIF) {
$fBtnCancelar =& parent::createElement('submit', 'modificar' , 'Borrar');
- } elseif ($accion & ALTA) {
+ } elseif ($accion & AI_ALTA) {
$fBtnCancelar =& parent::createElement('reset', 'agregar', 'Limpiar');
- } elseif ($accion & BAJA) {
+ } elseif ($accion & AI_BAJA) {
$fBtnCancelar =& parent::createElement('submit', 'borrar', 'Cancelar');
}
$grupo = array(
*/
function llenarObjeto(&$obj) // ~X2C
{
- $clase = get_class($obj);
- $tipo = $clase;
- if ($clase == 'gruposecciones') {
+ $tipo = substr(get_class($obj), 3);
+ if ($tipo == 'gruposecciones') {
$tipo = 'grupo';
}
$padre = $tipo.'_padre';
// Elementos.
$obj->$tipo = $this->getSubmitValue($tipo);
$obj->habilitado = $this->getSubmitValue('habilitado');
- if ($clase == 'gruposecciones' or $clase == 'servicio') {
+ if ($tipo == 'grupo' or $tipo == 'servicio') {
$obj->$padre = $this->getSubmitValue($padre);
$obj->nombre = $this->getSubmitValue('nombre');
}
- if ($clase == 'gruposecciones') {
+ if ($tipo == 'grupo') {
$obj->antiguedad = $this->getSubmitValue('antiguedad');
$obj->secciones = $this->getSubmitValue('secciones');
-var_dump($obj->secciones);
$obj->mostrar_hijos = $this->getSubmitValue('mostrar_hijos');
}
- if ($clase == 'servicio') {
+ if ($tipo == 'servicio') {
$obj->descripcion = $this->getSubmitValue('descripcion');
$obj->necesita_logueo = $this->getSubmitValue('logueo');
}
- if ($clase == 'servicio' or $clase == 'sistema') {
+ if ($tipo == 'servicio' or $tipo == 'sistema') {
$obj->link = $this->getSubmitValue('link');
$obj->link_ayuda = $this->getSubmitValue('link_ayuda');
$obj->icono = $this->getSubmitValue('icono');
}
// -X2C
-} // -X2C Class :AIForm
+} // -X2C Class :AI_Form
?>
// $Id$
//
-require_once 'AIError.php';
+require_once 'AI/Error.php';
-// +X2C Class 486 :GrupoSecciones
+// +X2C Class 486 :AI_GrupoSecciones
/**
* Grupo de secciones.
*
+ * @package AI
* @access public
*/
-class GrupoSecciones {
+class AI_GrupoSecciones {
/**
* ID del grupo de secciones.
*
* @return void
* @access public
*/
- function GrupoSecciones($grupo = 0) // ~X2C
+ function AI_GrupoSecciones($grupo = 0) // ~X2C
{
$this->grupo = $grupo;
}
// Obtengo la fila.
$row = $result->fetchRow(DB_FETCHMODE_ASSOC);
if (!$row) {
- return new AIError(AIERROR_NO_RESULTADOS,
+ return new AI_Error(AI_ERROR_NO_RESULTADOS,
"No hay más resultados en la DB [grupo=$grupo]");
}
// Asigno valores al objeto.
$err = $hijo->cargar($result);
}
// Si no hay mas resultados, entonces terminó bien.
- if (is_a($err, 'aierror')
- and $err->getCode() == AIERROR_NO_RESULTADOS) {
+ if (AI_Error::isError($err)
+ and $err->getCode() == AI_ERROR_NO_RESULTADOS) {
return true;
}
// Si no, se devuelve el error.
}
// -X2C
-} // -X2C Class :GrupoSecciones
+} // -X2C Class :AI_GrupoSecciones
-?>
+?>
\ No newline at end of file
// $Id$
//
-require_once 'AIError.php';
+require_once 'AI/Error.php';
-// +X2C Class 413 :Servicio
+// +X2C Class 413 :AI_Servicio
/**
* Servicio.
*
+ * @package AI
* @access public
*/
-class Servicio {
+class AI_Servicio {
/**
* ID del servicio.
*
* @return void
* @access public
*/
- function Servicio($servicio = 0) // ~X2C
+ function AI_Servicio($servicio = 0) // ~X2C
{
$this->servicio = $servicio;
}
// Obtengo la fila.
$row = $result->fetchRow(DB_FETCHMODE_ASSOC);
if (!$row) {
- return new AIError(AIERROR_NO_RESULTADOS,
+ return new AI_Error(AI_ERROR_NO_RESULTADOS,
"No hay más resultados en la DB [servicio=$servicio]");
}
// Asigno valores al objeto.
$err = $hijo->cargar($result);
}
// Si no hay mas resultados, entonces terminó bien.
- if (is_a($err, 'aierror')
+ if (AI_Error::isError($err)
and $err->getCode() == AIERROR_NO_RESULTADOS) {
return true;
}
}
// -X2C
-} // -X2C Class :Servicio
+} // -X2C Class :AI_Servicio
-?>
\ No newline at end of file
+?>
// $Id$
//
-require_once 'AIError.php';
+require_once 'AI/Error.php';
-// +X2C Class 416 :Sistema
+// +X2C Class 416 :AI_Sistema
/**
* Sistema.
*
+ * @package AI
* @access public
*/
-class Sistema {
+class AI_Sistema {
/**
* ID del sistema (ID en SAMURAI).
*
* @return void
* @access public
*/
- function Sistema($sistema = 0) // ~X2C
+ function AI_Sistema($sistema = 0) // ~X2C
{
$this->sistema = $sistema;
}
// Obtengo la fila.
$row = $result->fetchRow(DB_FETCHMODE_ASSOC);
if (!$row) {
- return new AIError(AIERROR_NO_RESULTADOS,
+ return new AI_Error(AI_ERROR_NO_RESULTADOS,
"No hay más resultados en la DB [sistema=$sistema]");
}
// Asigno valores al objeto.
'link_ayuda' => $this->link_ayuda,
'habilitado' => $this->habilitado ? 1 : 0,
);
+ // FIXME - buscar otra forma de distinguir entre INSERT y UPDATE.
if ($sistema) {
$accion = DB_AUTOQUERY_UPDATE;
$where = "sistema = $sistema";
}
// -X2C
-} // -X2C Class :Sistema
+} // -X2C Class :AI_Sistema
-?>
\ No newline at end of file
+?>
+++ /dev/null
-<?php
-// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
-// +--------------------------------------------------------------------+
-// | Ministerio de Economía |
-// | AI (Administrador de Intranet) |
-// +--------------------------------------------------------------------+
-// | This file is part of AI. |
-// | |
-// | AI is free software; you can redistribute it and/or modify |
-// | it under the terms of the GNU General Public License as published |
-// | by the Free Software Foundation; either version 2 of the License, |
-// | or (at your option) any later version. |
-// | |
-// | AI is distributed in the hope that it will be useful, but |
-// | WITHOUT ANY WARRANTY; without even the implied warranty of |
-// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
-// | General Public License for more details. |
-// | |
-// | You should have received a copy of the GNU General Public License |
-// | along with Hooks; if not, write to the Free Software Foundation, |
-// | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
-// +--------------------------------------------------------------------+
-// | Creado: vie jun 27 16:49:40 ART 2003 |
-// | Autor: Leandro Lucarella <llucar@mecon.gov.ar> |
-// +--------------------------------------------------------------------+
-//
-// $Id$
-//
-
-// Debug.
-require_once 'PEAR.php';
-PEAR::setErrorHandling(PEAR_ERROR_TRIGGER);
-
-// Directorio raíz real del sistema.
-$ROOTDIR = '/var/www/sistemas/ai';
-
-// Agrego un include path.
-require_once 'MECON/general.php';
-prepend_include_path("$ROOTDIR/local_lib");
-
-// Uso siempre a Marco.
-require_once 'MECON/Marco.php';
-$MARCO = new Marco("$ROOTDIR/conf/Marco.php");
-
-// Siempre le agrego una barra al costado.
-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, ' ');
-
-// Siempre uso mi base de datos.
-require_once 'AIDB.php';
-$DB =& AIDB::connect();
-
-?>
+++ /dev/null
-php_value auto_prepend_file "/var/www/sistemas/ai/local_lib/prepend.php"
// $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();
// }}}
?>
+++ /dev/null
-<?php
-// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
-// +--------------------------------------------------------------------+
-// | Ministerio de Economía |
-// | AI (Administrador de Intranet) |
-// +--------------------------------------------------------------------+
-// | This file is part of AI. |
-// | |
-// | AI is free software; you can redistribute it and/or modify |
-// | it under the terms of the GNU General Public License as published |
-// | by the Free Software Foundation; either version 2 of the License, |
-// | or (at your option) any later version. |
-// | |
-// | AI is distributed in the hope that it will be useful, but |
-// | WITHOUT ANY WARRANTY; without even the implied warranty of |
-// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
-// | General Public License for more details. |
-// | |
-// | You should have received a copy of the GNU General Public License |
-// | along with Hooks; if not, write to the Free Software Foundation, |
-// | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
-// +--------------------------------------------------------------------+
-// | Creado: vie jun 27 17:08:18 ART 2003 |
-// | Autor: Leandro Lucarella <llucar@mecon.gov.ar> |
-// +--------------------------------------------------------------------+
-//
-// $Id$
-//
-
-require_once 'MECON/HTML/Arbol/ArbolDB.php';
-require_once 'GrupoSecciones.php';
-
-$dbdata = array(
- 'db' => &$db,
- 'tabla' => 'grupo_secciones',
- 'id' => 'grupo',
- 'nombre' => 'nombre',
- 'id_padre' => 'grupo_padre',
- 'prepend_link' => 'noticias?grupo='
-);
-$arbol = new HTML_ArbolDB($dbdata, '/MECON/images/arbol_noticias.gif');
-
-if (@$_REQUEST['grupo']) {
- $grupo = new GrupoSecciones($_REQUEST['grupo']);
- $grupo->cargar($db);
- $body = '';
- foreach ($grupo as $key => $val) {
- if (is_array($val)) {
- $val = join(',', $val);
- }
- $body .= "$key = $val<BR>";
- }
-} else {
- $body = 'Seleccione un grupo de secciones de noticias para trabajar.';
-}
-
-$LAYOUT->setCellContents(0, 0, $arbol);
-$LAYOUT->setCellContents(0, 2, $body);
-$MARCO->addBody($LAYOUT);
-$MARCO->display();
-
-?>
+++ /dev/null
-<?php
-// vim: set expandtab tabstop=4 shiftwidth=4 foldmethod=marker:
-// +--------------------------------------------------------------------+
-// | Ministerio de Economía |
-// | AI (Administrador de Intranet) |
-// +--------------------------------------------------------------------+
-// | This file is part of AI. |
-// | |
-// | AI is free software; you can redistribute it and/or modify |
-// | it under the terms of the GNU General Public License as published |
-// | by the Free Software Foundation; either version 2 of the License, |
-// | or (at your option) any later version. |
-// | |
-// | AI is distributed in the hope that it will be useful, but |
-// | WITHOUT ANY WARRANTY; without even the implied warranty of |
-// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
-// | General Public License for more details. |
-// | |
-// | You should have received a copy of the GNU General Public License |
-// | along with Hooks; if not, write to the Free Software Foundation, |
-// | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
-// +--------------------------------------------------------------------+
-// | Creado: vie jun 27 17:08:18 ART 2003 |
-// | Autor: Leandro Lucarella <llucar@mecon.gov.ar> |
-// +--------------------------------------------------------------------+
-//
-// $Id$
-//
-
-// Requires. {{{
-require_once 'MECON/HTML/Arbol/ArbolDB.php';
-require_once 'AIForm.php';
-require_once 'Servicio.php';
-// }}}
-
-// Creo el árbol con los servicios. {{{
-$dbdata = array(
- 'db' => &$DB,
- 'tabla' => 'servicio',
- 'id' => 'servicio',
- 'nombre' => 'nombre',
- 'id_padre' => 'servicio_padre',
- 'prepend_link' => 'servicios?accion='.MODIFICACION.'&id='
-);
-$arbol = new HTML_ArbolDB($dbdata, '/MECON/images/arbol_noticias.gif');
-// }}}
-
-// Creo un servicio y seteo su id. {{{
-$servicio = new Servicio;
-$servicio->servicio = @$_REQUEST['id'];
-// }}}
-
-// Creo formulario. {{{
-$form =& new AIForm;
-// }}}
-
-// Verifico que la accion sea válida. {{{
-switch(@$_REQUEST['accion']) {
- case BAJA:
- case MODIFICACION:
- $accion = $_REQUEST['accion'];
- break;
- default:
- $accion = ALTA;
-}
-// }}}
-
-// Verifico si ya se envio el formulario. {{{
-$botones = $form->getSubmitValue('botones');
-if ($boton = @join('', array_keys($botones))) {
- $boton = $boton . '_' . strtolower($botones[$boton]);
-}
-switch ($boton) {
- case 'aceptar_agregar':
- $accion = ALTA;
- break;
- case 'modificar_borrar':
- // Viene de modificar, hay que confirmar primero.
- $a_confirmar = true;
- case 'aceptar_borrar':
- $accion = BAJA;
- $servicio->servicio = $form->getSubmitValue('servicio');
- break;
- case 'borrar_cancelar':
- // Indico que viene de un formulario cancelado.
- $cancelado = true;
- case 'aceptar_modificar':
- $accion = MODIFICACION;
- $servicio->servicio = $form->getSubmitValue('servicio');
- break;
-}
-// }}}
-
-// Inicio el formulario, cargando datos de ser necesario. {{{
-if ($accion & (BAJA | MODIFICACION)) {
- $err =& $servicio->cargar($DB);
- if (PEAR::isError($err)) {
- die($err->getMessage());
- }
- $form->iniciar($servicio, $accion);
-} else {
- $accion = ALTA;
- $form->iniciar($servicio);
-}
-// }}}
-
-// Freezo de ser necesario. {{{
-if (@$a_confirmar) {
- $form->freeze();
-}
-// }}}
-
-// Me fijo si se cargo un formulalrio y si es válido. {{{
-if ($form->validate()) {
- switch ($accion) {
- case ALTA:
- $form->llenarObjeto($servicio);
- $err =& $servicio->guardar($DB);
- if (PEAR::isError($err)) {
- die($err->getMessage());
- }
- header(sprintf('Location: servicios?accion=%d&id=%d',
- MODIFICACION, $servicio->servicio));
- exit;
- break;
- case BAJA:
- if (!@$a_confirmar) {
- $form->llenarObjeto($servicio);
- $err =& $servicio->borrar($DB);
- if (PEAR::isError($err)) {
- die($err->getMessage());
- }
- header('Location: servicios');
- exit;
- }
- break;
- case MODIFICACION:
- if (!@$cancelado) {
- $form->llenarObjeto($servicio);
- $err =& $servicio->guardar($DB);
- if (PEAR::isError($err)) {
- die($err->getMessage());
- }
- header(sprintf('Location: servicios?accion=%d&id=%d',
- MODIFICACION, $servicio->servicio));
- exit;
- }
- break;
- }
-}
-$body =& $form;
-// }}}
-
-// Dibujo. {{{
-$LAYOUT->setCellContents(0, 0, $arbol);
-$LAYOUT->setCellContents(0, 2, $body);
-$MARCO->addBody($LAYOUT);
-$MARCO->display();
-// }}}
-
-?>
+++ /dev/null
-<?php
-// vim: set expandtab tabstop=4 shiftwidth=4 foldmethod=marker:
-// +--------------------------------------------------------------------+
-// | Ministerio de Economía |
-// | AI (Administrador de Intranet) |
-// +--------------------------------------------------------------------+
-// | This file is part of AI. |
-// | |
-// | AI is free software; you can redistribute it and/or modify |
-// | it under the terms of the GNU General Public License as published |
-// | by the Free Software Foundation; either version 2 of the License, |
-// | or (at your option) any later version. |
-// | |
-// | AI is distributed in the hope that it will be useful, but |
-// | WITHOUT ANY WARRANTY; without even the implied warranty of |
-// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
-// | General Public License for more details. |
-// | |
-// | You should have received a copy of the GNU General Public License |
-// | along with Hooks; if not, write to the Free Software Foundation, |
-// | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
-// +--------------------------------------------------------------------+
-// | Creado: vie jun 27 17:08:18 ART 2003 |
-// | Autor: Leandro Lucarella <llucar@mecon.gov.ar> |
-// +--------------------------------------------------------------------+
-//
-// $Id$
-//
-
-// Requires. {{{
-require_once 'MECON/HTML/Arbol/ArbolDB.php';
-require_once 'AIForm.php';
-require_once 'Sistema.php';
-// }}}
-
-// Creo el árbol con los servicios. {{{
-$dbdata = array(
- 'db' => &$DB,
- 'tabla' => 'sistema',
- 'id' => 'sistema',
- 'nombre' => 'sistema',
- 'prepend_link' => 'sistema?accion='.MODIFICACION.'&id='
-);
-$arbol = new HTML_ArbolDB($dbdata, '/MECON/images/arbol_noticias.gif');
-// }}}
-
-// Creo un servicio y seteo su id. {{{
-$sistema = new Sistema;
-$sistema->sistema = @$_REQUEST['id'];
-// }}}
-
-// Creo formulario. {{{
-$form =& new AIForm;
-// }}}
-
-// Verifico que la accion sea válida. {{{
-switch(@$_REQUEST['accion']) {
- case BAJA:
- case MODIFICACION:
- $accion = $_REQUEST['accion'];
- break;
- default:
- $accion = ALTA;
-}
-// }}}
-
-// Verifico si ya se envio el formulario. {{{
-$botones = $form->getSubmitValue('botones');
-if ($boton = @join('', array_keys($botones))) {
- $boton = $boton . '_' . strtolower($botones[$boton]);
-}
-switch ($boton) {
- case 'aceptar_agregar':
- $accion = ALTA;
- break;
- case 'modificar_borrar':
- // Viene de modificar, hay que confirmar primero.
- $a_confirmar = true;
- case 'aceptar_borrar':
- $accion = BAJA;
- $sistema->sistema = $form->getSubmitValue('sistema');
- break;
- case 'borrar_cancelar':
- // Indico que viene de un formulario cancelado.
- $cancelado = true;
- case 'aceptar_modificar':
- $accion = MODIFICACION;
- $sistema->sistema = $form->getSubmitValue('sistema');
- break;
-}
-// }}}
-
-// Inicio el formulario, cargando datos de ser necesario. {{{
-if ($accion & (BAJA | MODIFICACION)) {
- $err =& $sistema->cargar($DB);
- if (PEAR::isError($err)) {
- die($err->getMessage());
- }
- $form->iniciar($sistema, $accion);
-} else {
- $accion = ALTA;
- $form->iniciar($sistema);
-}
-// }}}
-
-// Freezo de ser necesario. {{{
-if (@$a_confirmar) {
- $form->freeze();
-}
-// }}}
-
-// Me fijo si se cargo un formulalrio y si es válido. {{{
-if ($form->validate()) {
- switch ($accion) {
- case ALTA:
- $form->llenarObjeto($sistema);
- $err =& $sistema->guardar($DB);
- if (PEAR::isError($err)) {
- die($err->getMessage());
- }
- header(sprintf('Location: sistema?accion=%d&id=%d',
- MODIFICACION, $sistema->sistema));
- exit;
- break;
- case BAJA:
- if (!@$a_confirmar) {
- $form->llenarObjeto($sistema);
- $err =& $sistema->borrar($DB);
- if (PEAR::isError($err)) {
- die($err->getMessage());
- }
- header('Location: sistema');
- exit;
- }
- break;
- case MODIFICACION:
- if (!@$cancelado) {
- $form->llenarObjeto($sistema);
- $err =& $sistema->guardar($DB);
- if (PEAR::isError($err)) {
- die($err->getMessage());
- }
- header(sprintf('Location: sistema?accion=%d&id=%d',
- MODIFICACION, $sistema->sistema));
- exit;
- }
- break;
- }
-}
-$body =& $form;
-// }}}
-
-// Dibujo. {{{
-$LAYOUT->setCellContents(0, 0, $arbol);
-$LAYOUT->setCellContents(0, 2, $body);
-$MARCO->addBody($LAYOUT);
-$MARCO->display();
-// }}}
-
-?>