<XMI.exporter>umbrello uml modeller http://uml.sf.net</XMI.exporter>
<XMI.exporterVersion>1.1</XMI.exporterVersion>
</XMI.documentation>
- <XMI.model xmi.name="Samurai" href="/home/mmarrese/public_html/samurai/tronco/doc/uml/Samurai.xmi" />
+ <XMI.model xmi.name="Samurai" href="/home/martin/public_html/samurai/tronco/doc/uml/Samurai.xmi" />
<XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
</XMI.header>
<XMI.content>
- <docsettings viewid="206" documentation="" uniqueid="291" />
+ <docsettings viewid="206" documentation="" uniqueid="309" />
<umlobjects>
<UML:Class stereotype="" package="" xmi.id="207" abstract="0" documentation="Clase para el manejo de los usuarios." name="Usuario" static="0" scope="200" >
<UML:Operation stereotype="" package="" xmi.id="216" type="void" abstract="0" documentation="Constructor.Recibe como parametro opcional el login del usuario. y busca en la base la informacion referida a el." name="Usuario" static="0" scope="200" >
<UML:Operation stereotype="" package="" xmi.id="291" type="void" abstract="0" documentation="Setea el login del responsable de los ultimos cambios del sistema" name="setResponsable" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="null" type="string" abstract="0" documentation="String con el login del responsable del cambio" name="responsable" static="0" scope="200" />
</UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="301" type="array" abstract="0" documentation="Devuelve un array asociativo con los identificadores de los permisos" name="getIdPermisos" static="0" scope="200" />
+ <UML:Operation stereotype="" package="" xmi.id="302" type="void" abstract="0" documentation="Setea los permisos de un sistema" name="setPermisos" static="0" scope="200" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="null" type="int" abstract="0" documentation="Array asociativo con los permisos" name="permisos" static="0" scope="200" />
+ </UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="303" type="int" abstract="0" documentation="" name="getMaxIdSistema" static="0" scope="200" />
+ <UML:Operation stereotype="" package="" xmi.id="304" type="void" abstract="0" documentation="Graba los datos en la Base de Datos" name="grabarDb" static="0" scope="201" />
+ <UML:Operation stereotype="" package="" xmi.id="305" type="void" abstract="0" documentation="Borra los datos de la base de datos" name="borrarDb" static="0" scope="201" />
+ <UML:Operation stereotype="" package="" xmi.id="306" type="void" abstract="0" documentation="Modifica los datos en base" name="modificarDb" static="0" scope="201" />
+ <UML:Operation stereotype="" package="" xmi.id="308" type="void" abstract="0" documentation="Graba los permisos del sistema en perm_sist" name="grabarPermisosDb" static="0" scope="201" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="int" abstract="0" documentation="Identificador del sistema" name="idSistema" static="0" scope="200" />
+ </UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="309" type="void" abstract="0" documentation="Borra los permisos que tenga asociado el sistema segun el criterio de observaciones" name="borrarPermisosDb" static="0" scope="201" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="int" abstract="0" documentation="Identificador del sistema" name="idSistema" static="0" scope="200" />
+ <UML:Parameter stereotype="" package="" xmi.id="2" value="" type="bool" abstract="0" documentation="Si es false borra todas las asociaciones que tenga el sistema. Si es true borra solo aquellas que tengan observaciones = ''" name="observaciones" static="0" scope="200" />
+ </UML:Operation>
<UML:Attribute stereotype="" package="" xmi.id="235" value="" type="int" abstract="0" documentation="Identificador del sistema." name="id" static="0" scope="201" />
<UML:Attribute stereotype="" package="" xmi.id="237" value="" type="string" abstract="0" documentation="Nombre del sistema." name="nombre" static="0" scope="201" />
<UML:Attribute stereotype="" package="" xmi.id="238" value="" type="string" abstract="0" documentation="Descripcion del sistema." name="descripcion" static="0" scope="201" />
<UML:Attribute stereotype="" package="" xmi.id="242" value="" type="string" abstract="0" documentation="Texto con los datos del o de los contacto/s en el area usuario." name="contacto" static="0" scope="201" />
<UML:Attribute stereotype="" package="" xmi.id="272" value="" type="Samurai_DB" abstract="0" documentation="Objeto Samurai_DB" name="db" static="0" scope="201" />
<UML:Attribute stereotype="" package="" xmi.id="289" value="" type="string" abstract="0" documentation="Login del responsable de los ultimos cambios del sistema." name="responsable" static="0" scope="201" />
+ <UML:Attribute stereotype="" package="" xmi.id="300" value="" type="array" abstract="0" documentation="Array asociativo (id - descripcion) con los permisos asociados al sistema." name="permisos" static="0" scope="201" />
</UML:Class>
<UML:Class stereotype="" package="" xmi.id="210" abstract="0" documentation="Clase para el manejo de los Permisos." name="Permiso" static="0" scope="200" >
<UML:Operation stereotype="" package="" xmi.id="259" type="void" abstract="0" documentation="Constructor. Si recibe como parametro el identificador del permiso, busca la informacion en la DB." name="Permiso" static="0" scope="200" >
<UML:Operation stereotype="" package="" xmi.id="262" type="void" abstract="0" documentation="Setea la descripcion del permiso." name="setDescripcion" static="0" scope="200" >
<UML:Parameter stereotype="" package="" xmi.id="1" value="null" type="string" abstract="0" documentation="Descripcion del permiso." name="descripcion" static="0" scope="200" />
</UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="295" type="void" abstract="0" documentation="Obtiene de la base de datos la informacion del permiso" name="obtenerDatosDb" static="0" scope="201" />
+ <UML:Operation stereotype="" package="" xmi.id="297" type="void" abstract="0" documentation="Setea el valor del responsable" name="setResponsable" static="0" scope="200" >
+ <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Identificador del responsable" name="responsable" static="0" scope="200" />
+ </UML:Operation>
+ <UML:Operation stereotype="" package="" xmi.id="298" type="string" abstract="0" documentation="" name="getResponsable" static="0" scope="200" />
<UML:Attribute stereotype="" package="" xmi.id="257" value="" type="int" abstract="0" documentation="Identificador del permiso." name="id" static="0" scope="201" />
<UML:Attribute stereotype="" package="" xmi.id="258" value="" type="string" abstract="0" documentation="Descripcion del permiso." name="descripcion" static="0" scope="201" />
<UML:Attribute stereotype="" package="" xmi.id="270" value="" type="Samurai_DB" abstract="0" documentation="Objeto Samurai_DB" name="db" static="0" scope="201" />
+ <UML:Attribute stereotype="" package="" xmi.id="296" value="" type="string" abstract="0" documentation="Indentificador del ultimo que realizo alguna operacion sobre el permiso" name="reponsable" static="0" scope="201" />
</UML:Class>
<UML:Class stereotype="" package="" xmi.id="264" abstract="0" documentation="x2c:extern
x2c:include: DB.php" name="DB" static="0" scope="200" />
<UML:Parameter stereotype="" package="" xmi.id="2" value="" type="&Samurai_DB" abstract="0" documentation="Objeto conexion" name="db" static="0" scope="200" />
<UML:Parameter stereotype="" package="" xmi.id="3" value="null" type="int" abstract="0" documentation="Indetificador del sistema" name="idSistema" static="0" scope="200" />
</UML:Operation>
- <UML:Operation stereotype="" package="" xmi.id="283" type="array(Sistema)" abstract="0" documentation="Devuleve un array con los identificadores de todos los sistemas." name="getIdSistemas" static="0" scope="201" />
+ <UML:Operation stereotype="" package="" xmi.id="283" type="array(int)" abstract="0" documentation="Devuleve un array con los identificadores de todos los sistemas." name="getIdSistemas" static="0" scope="201" />
<UML:Operation stereotype="" package="" xmi.id="285" type="array(Sistema)" abstract="0" documentation="Arma el array de sistemas" name="armarArraySistemas" static="0" scope="201" />
<UML:Operation stereotype="" package="" xmi.id="286" type="array(Sistema)" abstract="0" documentation="Devuelve el array de sistemas" name="getSistemas" static="0" scope="200" />
- <UML:Operation stereotype="" package="" xmi.id="287" type="int" abstract="0" documentation="Devuelve el identificador maximo de un sistema que hay en base" name="getMaxIdSistema" static="0" scope="200" />
+ <UML:Operation stereotype="" package="" xmi.id="292" type="array(Permiso)" abstract="0" documentation="Devuelve el array de permisos" name="getPermisos" static="0" scope="200" />
+ <UML:Operation stereotype="" package="" xmi.id="293" type="void" abstract="0" documentation="Arma el array de permisos" name="armarArrayPermisos" static="0" scope="201" />
+ <UML:Operation stereotype="" package="" xmi.id="294" type="array(int)" abstract="0" documentation="Devuleve un array con los identificadores de todos los permisos." name="getIdPermisos" static="0" scope="201" />
+ <UML:Operation stereotype="" package="" xmi.id="299" type="array()" abstract="0" documentation="Devuelve un array asociativo en donde la clave es el identificador y el valor es la descripcion del permiso" name="getSelectPermisos" static="0" scope="200" />
<UML:Attribute stereotype="" package="" xmi.id="281" value="" type="int" abstract="0" documentation="Identificador del sistema." name="id_sistema" static="0" scope="201" />
<UML:Attribute stereotype="" package="" xmi.id="282" value="" type="Samurai_DB" abstract="0" documentation="Objeto Conexion" name="db" static="0" scope="201" />
</UML:Class>
<widgets>
<UML:ConceptWidget usesdiagramfillcolour="0" width="230" showattsigs="601" usesdiagramusefillcolour="0" x="510" linecolour="#ff0000" y="160" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="165" usefillcolor="1" showattributes="1" xmi.id="207" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
<UML:ConceptWidget usesdiagramfillcolour="0" width="208" showattsigs="601" usesdiagramusefillcolour="0" x="380" linecolour="#ff0000" y="0" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="121" usefillcolor="1" showattributes="1" xmi.id="208" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="220" showattsigs="601" usesdiagramusefillcolour="0" x="10" linecolour="#ff0000" y="280" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="308" usefillcolor="1" showattributes="1" xmi.id="209" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="208" showattsigs="601" usesdiagramusefillcolour="0" x="10" linecolour="#ff0000" y="10" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="88" usefillcolor="1" showattributes="1" xmi.id="210" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="266" showattsigs="601" usesdiagramusefillcolour="0" x="10" linecolour="#ff0000" y="280" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="407" usefillcolor="1" showattributes="1" xmi.id="209" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="208" showattsigs="601" usesdiagramusefillcolour="0" x="10" linecolour="#ff0000" y="10" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="132" usefillcolor="1" showattributes="1" xmi.id="210" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
<UML:ConceptWidget usesdiagramfillcolour="0" width="40" showattsigs="601" usesdiagramusefillcolour="0" x="230" linecolour="#ff0000" y="10" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="21" usefillcolor="1" showattributes="1" xmi.id="264" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
<UML:ConceptWidget usesdiagramfillcolour="0" width="78" showattsigs="601" usesdiagramusefillcolour="0" x="270" linecolour="#ff0000" y="120" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="27" usefillcolor="1" showattributes="1" xmi.id="265" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
- <UML:ConceptWidget usesdiagramfillcolour="0" width="240" showattsigs="601" usesdiagramusefillcolour="0" x="350" linecolour="#ff0000" y="450" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="88" usefillcolor="1" showattributes="1" xmi.id="274" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
+ <UML:ConceptWidget usesdiagramfillcolour="0" width="240" showattsigs="601" usesdiagramusefillcolour="0" x="350" linecolour="#ff0000" y="450" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="121" usefillcolor="1" showattributes="1" xmi.id="274" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="helvetica,7,-1,0,50,0,0,0,0,0" />
</widgets>
<messages/>
<associations>
<UML:AssocWidget totalcounta="4" indexa="1" totalcountb="2" indexb="1" widgetbid="210" widgetaid="265" documentation="" type="501" >
<linepath>
<startpoint startx="289" starty="120" />
- <endpoint endx="218" endy="54" />
+ <endpoint endx="218" endy="76" />
</linepath>
</UML:AssocWidget>
<UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="209" widgetaid="265" documentation="" type="501" >
<linepath>
<startpoint startx="309" starty="147" />
- <endpoint endx="120" endy="280" />
+ <endpoint endx="143" endy="280" />
</linepath>
</UML:AssocWidget>
<UML:AssocWidget totalcounta="4" indexa="3" totalcountb="2" indexb="1" widgetbid="208" widgetaid="265" documentation="" type="501" >
<endpoint endx="510" endy="242" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="5" indexb="1" widgetbid="274" widgetaid="209" documentation="" type="501" >
+ <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="274" widgetaid="209" documentation="" type="501" >
<linepath>
- <startpoint startx="230" starty="434" />
- <endpoint endx="398" endy="450" />
+ <startpoint startx="276" starty="483" />
+ <endpoint endx="350" endy="510" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="5" indexb="4" widgetbid="274" widgetaid="207" documentation="" type="501" >
+ <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="4" indexb="3" widgetbid="274" widgetaid="207" documentation="" type="501" >
<linepath>
<startpoint startx="625" starty="325" />
- <endpoint endx="542" endy="450" />
+ <endpoint endx="530" endy="450" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="5" indexb="3" widgetbid="274" widgetaid="208" documentation="" type="501" >
+ <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="4" indexb="2" widgetbid="274" widgetaid="208" documentation="" type="501" >
<linepath>
<startpoint startx="484" starty="121" />
- <endpoint endx="494" endy="450" />
+ <endpoint endx="470" endy="450" />
</linepath>
</UML:AssocWidget>
- <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="5" indexb="2" widgetbid="274" widgetaid="210" documentation="" type="501" >
+ <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="4" indexb="1" widgetbid="274" widgetaid="210" documentation="" type="501" >
<linepath>
- <startpoint startx="114" starty="98" />
- <endpoint endx="446" endy="450" />
+ <startpoint startx="114" starty="142" />
+ <endpoint endx="410" endy="450" />
</linepath>
</UML:AssocWidget>
</associations>
<listitem open="0" type="814" id="258" label="descripcion" />
<listitem open="0" type="815" id="261" label="getDescripcion" />
<listitem open="0" type="815" id="260" label="getId" />
+ <listitem open="1" type="815" id="298" label="getResponsable" />
<listitem open="0" type="814" id="257" label="id" />
+ <listitem open="0" type="815" id="295" label="obtenerDatosDb" />
<listitem open="0" type="815" id="259" label="Permiso" />
+ <listitem open="0" type="814" id="296" label="reponsable" />
<listitem open="0" type="815" id="262" label="setDescripcion" />
+ <listitem open="1" type="815" id="297" label="setResponsable" />
</listitem>
<listitem open="0" type="813" id="274" label="Samurai" >
+ <listitem open="0" type="815" id="293" label="armarArrayPermisos" />
<listitem open="0" type="815" id="285" label="armarArraySistemas" />
<listitem open="0" type="814" id="282" label="db" />
+ <listitem open="0" type="815" id="294" label="getIdPermisos" />
<listitem open="0" type="815" id="283" label="getIdSistemas" />
- <listitem open="0" type="815" id="287" label="getMaxIdSistema" />
+ <listitem open="0" type="815" id="292" label="getPermisos" />
+ <listitem open="0" type="815" id="299" label="getSelectPermisos" />
<listitem open="0" type="815" id="286" label="getSistemas" />
<listitem open="0" type="814" id="281" label="id_sistema" />
<listitem open="0" type="815" id="280" label="Samurai" />
<listitem open="0" type="815" id="269" label="connect" />
</listitem>
<listitem open="1" type="813" id="209" label="Sistema" >
+ <listitem open="0" type="815" id="305" label="borrarDb" />
+ <listitem open="0" type="815" id="309" label="borrarPermisosDb" />
<listitem open="0" type="814" id="242" label="contacto" />
<listitem open="0" type="814" id="272" label="db" />
<listitem open="0" type="814" id="238" label="descripcion" />
<listitem open="0" type="815" id="249" label="getFechaImplementacion" />
<listitem open="0" type="815" id="247" label="getFechaInicio" />
<listitem open="0" type="815" id="244" label="getId" />
+ <listitem open="0" type="815" id="301" label="getIdPermisos" />
+ <listitem open="0" type="815" id="303" label="getMaxIdSistema" />
<listitem open="0" type="815" id="245" label="getNombre" />
<listitem open="0" type="815" id="290" label="getResponsable" />
+ <listitem open="0" type="815" id="304" label="grabarDb" />
+ <listitem open="0" type="815" id="308" label="grabarPermisosDb" />
<listitem open="0" type="815" id="288" label="guardarDatos" />
<listitem open="0" type="814" id="235" label="id" />
+ <listitem open="0" type="815" id="306" label="modificarDb" />
<listitem open="0" type="814" id="237" label="nombre" />
<listitem open="0" type="815" id="263" label="obtenerDatosDb" />
+ <listitem open="0" type="814" id="300" label="permisos" />
<listitem open="0" type="814" id="289" label="responsable" />
<listitem open="0" type="815" id="256" label="setContacto" />
<listitem open="0" type="815" id="252" label="setDescripcion" />
<listitem open="0" type="815" id="255" label="setFechaImplementacion" />
<listitem open="0" type="815" id="253" label="setFechaInicio" />
<listitem open="0" type="815" id="251" label="setNombre" />
+ <listitem open="0" type="815" id="302" label="setPermisos" />
<listitem open="0" type="815" id="291" label="setResponsable" />
<listitem open="0" type="815" id="243" label="Sistema" />
</listitem>
- <listitem open="1" type="813" id="207" label="Usuario" >
+ <listitem open="0" type="813" id="207" label="Usuario" >
<listitem open="0" type="814" id="273" label="db" />
<listitem open="0" type="814" id="214" label="fecha" />
<listitem open="0" type="815" id="219" label="getFecha" />
</listitem>
</listitem>
</listitem>
- <listitem open="1" type="802" id="-1" label="Use Case View" />
+ <listitem open="0" type="802" id="-1" label="Use Case View" />
</listitem>
</listview>
</XMI.content>
--- /dev/null
+<?php
+// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
+// +----------------------------------------------------------------------+
+// | PHP Version 4 |
+// +----------------------------------------------------------------------+
+// | Copyright (c) 1997-2003 The PHP Group |
+// +----------------------------------------------------------------------+
+// | This source file is subject to version 2.02 of the PHP license, |
+// | that is bundled with this package in the file LICENSE, and is |
+// | available at through the world-wide-web at |
+// | http://www.php.net/license/2_02.txt. |
+// | If you did not receive a copy of the PHP license and are unable to |
+// | obtain it through the world-wide-web, please send a note to |
+// | license@php.net so we can mail you a copy immediately. |
+// +----------------------------------------------------------------------+
+// | Created: @@date
+// | Author: @@author <@@email>
+// +----------------------------------------------------------------------+
+//
+// $Id$
+// $Author$
+// $URL$
+// $Date$
+// $Rev$
+//
+
+@@system-base-include
+++ /dev/null
-xmi2code -f uml/Samurai.xmi -a;yes|rm ../src/www/include/lib/samurai/*.bak;clear
<?xml version="1.0" encoding="UTF-8"?>
<xmi2code>
-
- <option key="target" value=""/>
- <option key="xmi-input" value="xmi2code.xmi"/>
- <option key="config-file" value="xmi2code.config"/>
- <option key="config-file-set" value="false"/>
- <option key="handler" value="umbrello"/>
- <option key="template-path" value="/home/mmarrese/public_html/uml/templates"/>
- <option key="generator-path" value="."/>
- <option key="use-package-as-dir" value="true"/>
-
- <!-- user defined variables (for templates) -->
- <option key="project" value="Samurai"/>
- <option key="author" value="Martin Marrese"/>
- <option key="email" value="mmarre@mecon.gov.ar"/>
- <option key="system-base-include" value="#include "x2cbase.h""/>
-
- <!-- generator pro -->
- <option key="pro.file" value="x2c.pro"/>
-
- <!-- just set a default generator -->
- <option key="generator" value="phppear"/>
-
- <!-- generator phppear -->
- <if test="generator=phppear">
- <option key="filename-case" value=""/>
- <option key="author" value="Martin Marrese - Myrna Degano"/>
- <option key="email" value="mmarre@mecon.gov.ar - mdegan@mecon.gov.ar"/>
- <option key="php.template" value="phppear"/>
+ <option key="target" value="*"/>
+ <option key="xmi-input" value="uml/Samurai.xmi"/>
+ <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="indent" value=" "/>
+ <option key="files-case" value="preserve"/>
+ <option key="generator" value="php.pear"/>
+ <option key="template-path" value="uml"/>
+ <option key="php.template" value="xmi2code.tpl.php"/>
<option key="php.default-code" value="trigger_error('Not implemented!', E_USER_WARNING);"/>
- <option key="generator-path" value="/home/mmarrese/public_html/samurai/tronco/src/www/include/lib/samurai"/>
- <option key="system-base-include" value="#require_once 'PEAR.php';"/>
- </if>
-
+ <option key="php.pear.use-package-in-classnames" value="false"/>
+ <option key="php.pear.underscore-in-nonpublic" value="true"/>
+ <!-- user defined variables (for templates) -->
+ <option key="project" value="Samurai"/>
+ <option key="author" value="Martin Marrese"/>
+ <option key="email" value="mmarre@mecon.gov.ar"/>
</xmi2code>
// $Rev$
//
return array (
+ 'titulo_sistema' => 'SAMURAI',
+ 'pie_sistema' => 'Sistema de Administracion y Mantenimiento de Usuarios Relativos A Intranet - Ministerio de Economia',
+ 'id_sistema' => '1',
+ 'db_type' => 'mysql',
+ 'db_user' => 'intranet',
+ 'db_pass' => 'intranet',
+ 'db_host' => 'bal747f',
+ 'db_name' => 'samurai',
+ //Directorios web del sistema, salvo el root, todos son opcionales
+ //Si no se ponen, o estan vacias se asume lo que dice el comentario al lado de cada una
+ 'directorios' => array ( 'root' => '/www/sistemas/samurai', // obligatorio
+// 'imagenes' => '/www/sistemas/samurai/www/images', // <root>/www/images
+ 'estilos' => '', // <root>/www/css
+ 'js' => '', // <root>/www/js
+ 'www' => '', // <root>/www/
+ ),
+ //Directorios del file system. Si no se pone se asume lo que esta comentado. Son opcionales
+ 'directorios_fs' => array ('cache' => '', // /tmp
+ ),
+ 'secciones' => array (
+
//SECCIONES VISIBLES POR TODOS LOS USUARIOS
array (
'nombre' => 'Usuarios',
),
array (
'nombre' => 'consultas',
- 'imagenComun' => '/www/images/consultas',
+ 'imagenComun' => 'general_consultas',
'imagenMouseOn' => '',
'imagenSelect' => '',
'link' => 'consultas',
'imagenMouseOn' => '',
'imagenSelect' => '',
'link' => 'sistemas-abm',
- 'subhijos' => array ( 'sarasa4',
+ 'subhijos' => array ( '',
+ ),
+ ),
+ array ( 'nombre' => 'Definir Permisos',
+ 'imagenComun' => '',
+ 'imagenMouseOn' => '',
+ 'imagenSelect' => '',
+ 'link' => 'sistemas-permisos',
+ 'subhijos' => array ( '',
),
),
),
),
),
),
+ ),
),
);
* Identificador del perfil.
*
* @var int $id
- *
* @access private
*/
var $_id;
* Descripcion del perfil.
*
* @var string $descripcion
- *
* @access private
*/
var $_descripcion;
* Tipo de perfil. E = Externo. I = Interno. D = Dios.
*
* @var string $tipo
- *
* @access private
*/
var $_tipo;
* Objeto Samurai_DB
*
* @var Samurai_DB $db
- *
* @access private
*/
var $_db;
* @param int $id Identificador del perfil.
*
* @return void
- *
* @access public
*/
- function Perfil(&$db, $id = null) // ~X2C
+ function Perfil(&$db, $id = null)// ~X2C
{
if (!is_null($id)) {
//BUSCAR INFO EN LA DB,
* Devuelve el identificador del perfil.
*
* @return int
- *
* @access public
*/
- function getId() // ~X2C
+ function getId()// ~X2C
{
return $this->_id;
}
* Devuelve la descripcion del perfil.
*
* @return getDescPerfilstring
- *
* @access public
*/
- function getDescripcion() // ~X2C
+ function getDescripcion()// ~X2C
{
return $this->_descripcion;
}
* Devuelve el tipo de perfil.
*
* @return string
- *
* @access public
*/
- function getTipo() // ~X2C
+ function getTipo()// ~X2C
{
return $this->_tipo;
}
* @param string $descripcion Descripcion del perfil.
*
* @return void
- *
* @access public
*/
- function setDescripcion($descripcion = null) // ~X2C
+ function setDescripcion($descripcion = null)// ~X2C
{
$this->_descripcion = $descripcion;
}
* @param string $tipo Tipo de perfil.
*
* @return void
- *
* @access public
*/
- function setTipo($tipo = null) // ~X2C
+ function setTipo($tipo = null)// ~X2C
{
$this->_tipo = $tipo;
}
* Identificador del permiso.
*
* @var int $id
- *
* @access private
*/
var $_id;
* Descripcion del permiso.
*
* @var string $descripcion
- *
* @access private
*/
var $_descripcion;
* Objeto Samurai_DB
*
* @var Samurai_DB $db
- *
* @access private
*/
var $_db;
+ /**
+ * Indentificador del ultimo que realizo alguna operacion sobre el permiso
+ *
+ * @var string $reponsable
+ * @access private
+ */
+ var $_reponsable;
+
// ~X2C
// +X2C Operation 259
* @param int $id Identificador del permiso
*
* @return void
- *
* @access public
*/
- function Permiso(&$db, $id = null) // ~X2C
+ function Permiso(&$db, $id = null)// ~X2C
{
- if (!is_null($id)) {
- //BUSCAR INFO EN LA DB,
- //SETEAR LAS VI
- }
- else {
- //INICIALIZO LA VI
- $this->_id = null;
- $this->_descripcion = null;
+ $this->_db = $db;
+ $this->_id = $id;
+ $this->_descripcion = null;
+ if (!is_null($id)) {
+ $this->_obtenerDatosDb();
}
}
// -X2C
* Devuelve el identificador del permiso.
*
* @return int
- *
* @access public
*/
- function getId() // ~X2C
+ function getId()// ~X2C
{
return $this->_id;
}
* Devuelve la descripcion del permiso.
*
* @return string
- *
* @access public
*/
- function getDescripcion() // ~X2C
+ function getDescripcion()// ~X2C
{
return $this->_descripcion;
}
* @param string $descripcion Descripcion del permiso.
*
* @return void
- *
* @access public
*/
- function setDescripcion($descripcion = null) // ~X2C
+ function setDescripcion($descripcion = null)// ~X2C
{
$this->_descripcion = $descripcion;
}
// -X2C
+ // +X2C Operation 295
+ /**
+ * Obtiene de la base de datos la informacion del permiso
+ *
+ * @return void
+ * @access private
+ */
+ function _obtenerDatosDb()// ~X2C
+ {
+ $sql = include 'Permiso/consultas.php'; //Incluyo las consultas de este objeto nada mas.
+ $tmp = $sql['obtener_datos_permiso'].$sql['obtener_datos_permiso2'];
+ $dbh = $this->_db->prepare($tmp);
+ $tmp = array ($this->_id);
+ $res = $this->_db->execute($dbh,$tmp);
+
+ if ($re = $res->fetchRow(DB_FETCHMODE_ASSOC)) {
+ if (isset($re['desc_permiso'])) {
+ $this->setDescripcion($re['desc_permiso']);
+ }
+ else {
+ $this->setDescripcion();
+ }
+ if (isset($re['responsable'])) {
+ $this->setResponsable($re['responsable']);
+ }
+ else {
+ $this->setResponsable();
+ }
+ }
+ }
+ // -X2C
+
+ // +X2C Operation 297
+ /**
+ * Setea el valor del responsable
+ *
+ * @param string $responsable Identificador del responsable
+ *
+ * @return void
+ * @access public
+ */
+ function setResponsable($responsable)// ~X2C
+ {
+ $this->_responsable = $responsable;
+ }
+ // -X2C
+
+ // +X2C Operation 298
+ /**
+ * @return string
+ * @access public
+ */
+ function getResponsable()// ~X2C
+ {
+ return $this->_responsable;
+ }
+ // -X2C
+
} // -X2C Class :Permiso
?>
\ No newline at end of file
--- /dev/null
+<?php
+// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
+// +----------------------------------------------------------------------+
+// | PHP Version 4 |
+// +----------------------------------------------------------------------+
+// | Copyright (c) 1997-2003 The PHP Group |
+// +----------------------------------------------------------------------+
+// | This source file is subject to version 2.02 of the PHP license, |
+// | that is bundled with this package in the file LICENSE, and is |
+// | available at through the world-wide-web at |
+// | http://www.php.net/license/2_02.txt. |
+// | If you did not receive a copy of the PHP license and are unable to |
+// | obtain it through the world-wide-web, please send a note to |
+// | license@php.net so we can mail you a copy immediately. |
+// +----------------------------------------------------------------------+
+// | Created: Tue May 27 11:20:04 2003
+// | Author: Martin Marrese - Myrna Degano <mmarre@mecon.gov.ar - mdegan@mecon.gov.ar>
+// +----------------------------------------------------------------------+
+//
+// $Id$
+// $Author$
+// $URL$
+// $Date$
+// $Rev$
+//
+ return array (
+ 'obtener_datos_permiso' => 'SELECT id_permiso, desc_permiso, responsable
+ FROM permiso ',
+ 'obtener_datos_permiso2' => 'WHERE id_permiso = ? ',
+ );
+?>
* Identificador del sistema.
*
* @var int $id_sistema
- *
* @access private
*/
var $_id_sistema;
* Objeto Conexion
*
* @var Samurai_DB $db
- *
* @access private
*/
var $_db;
* @param int $idSistema Indetificador del sistema
*
* @return void
- *
* @access public
*/
- function Samurai(&$db, $idSistema = null) // ~X2C
+ function Samurai(&$db, $idSistema = null)// ~X2C
{
$this->_id_sistema = $idSistema;
$this->_db = &$db;
/**
* Devuleve un array con los identificadores de todos los sistemas.
*
- * @return array(Sistema)
- *
+ * @return array(int)
* @access private
*/
- function _getIdSistemas() // ~X2C
+ function _getIdSistemas()// ~X2C
{
$rta = array();
$sql = include 'Samurai/consultas.php';
* Arma el array de sistemas
*
* @return array(Sistema)
- *
* @access private
*/
- function _armarArraySistemas() // ~X2C
+ function _armarArraySistemas()// ~X2C
{
$rta = array ();
foreach ($this->_getIdSistemas() as $id) {
* Devuelve el array de sistemas
*
* @return array(Sistema)
- *
* @access public
*/
- function getSistemas() // ~X2C
+ function getSistemas()// ~X2C
{
return $this->_armarArraySistemas();
}
// -X2C
- // +X2C Operation 287
+
+ // +X2C Operation 292
/**
- * Devuelve el identificador maximo de un sistema que hay en base
- *
- * @return int
+ * Devuelve el array de permisos
*
+ * @return array(Permiso)
* @access public
*/
- function getMaxIdSistema() // ~X2C
+ function getPermisos()// ~X2C
{
+ return $this->_armarArrayPermisos();
+ }
+ // -X2C
+
+ // +X2C Operation 293
+ /**
+ * Arma el array de permisos
+ *
+ * @return void
+ * @access private
+ */
+ function _armarArrayPermisos()// ~X2C
+ {
+ $rta = array ();
+ foreach ($this->_getIdPermisos() as $id) {
+ $tmp = new Permiso($this->_db,$id);
+ array_push($rta, $tmp);
+ }
+ return $rta;
+ }
+ // -X2C
+
+ // +X2C Operation 294
+ /**
+ * Devuleve un array con los identificadores de todos los permisos.
+ *
+ * @return array(int)
+ * @access private
+ */
+ function _getIdPermisos()// ~X2C
+ {
+ $rta = array();
$sql = include 'Samurai/consultas.php';
- $dbh = $this->_db->prepare($sql['obtener_max_id_sistemas']);
+ $dbh = $this->_db->prepare($sql['obtener_id_permisos']);
$res = $this->_db->execute($dbh);
- $re = $res->fetchrow(DB_FETCHMODE_ASSOC);
+ while ($re = $res->fetchrow(DB_FETCHMODE_ASSOC)) {
+ array_push($rta,$re['id_permiso']);
+ }
$res->free();
- return $re['id_sistema'];
+ return $rta;
+ }
+ // -X2C
+
+ // +X2C Operation 299
+ /**
+ * Devuelve un array asociativo en donde la clave es el identificador y el valor es la descripcion del permiso
+ *
+ * @return array()
+ * @access public
+ */
+ function getSelectPermisos()// ~X2C
+ {
+ $rta = array ();
+ foreach ($this->_armarArrayPermisos() as $permiso) {
+ $rta[$permiso->getId()] = $permiso->getDescripcion();
+ }
+ return $rta;
}
// -X2C
//
return array (
'obtener_id_sistemas' => 'SELECT id_sistema FROM sistema WHERE estado = 1 ORDER BY id_sistema',
- 'obtener_max_id_sistemas' => 'SELECT max(id_sistema) as id_sistema FROM sistema',
+ 'obtener_id_permisos' => 'SELECT id_permiso FROM permiso ORDER BY id_permiso',
);
?>
* Realiza la conexion con la base de datos.
*
* @return DB
- *
* @access public
*/
- function connect() // ~X2C
+ function connect()// ~X2C
{
- $conf = include 'configuracion.php';
+ $conf = include 'conf/confSecciones.php';
$dsn = $conf['db_type'].'://'.$conf['db_user'].':'.$conf['db_pass'].'@'.$conf['db_host'].'/'.$conf['db_name'];
* Identificador del sistema.
*
* @var int $id
- *
* @access private
*/
var $_id;
* Nombre del sistema.
*
* @var string $nombre
- *
* @access private
*/
var $_nombre;
* Descripcion del sistema.
*
* @var string $descripcion
- *
* @access private
*/
var $_descripcion;
* Fecha en la cual se inicio el sistema.
*
* @var date $fecha_inicio
- *
* @access private
*/
var $_fecha_inicio;
* Fecha en la cual se dio por terminado el desarrollo del sistema.
*
* @var date $fecha_fin
- *
* @access private
*/
var $_fecha_fin;
* Fecha de implementacion del sistema.
*
* @var date $fecha_implementacion
- *
* @access private
*/
var $_fecha_implementacion;
* Texto con los datos del o de los contacto/s en el area usuario.
*
* @var string $contacto
- *
* @access private
*/
var $_contacto;
* Objeto Samurai_DB
*
* @var Samurai_DB $db
- *
* @access private
*/
var $_db;
* Login del responsable de los ultimos cambios del sistema.
*
* @var string $responsable
- *
* @access private
*/
var $_responsable;
+ /**
+ * Array asociativo (id - descripcion) con los permisos asociados al sistema.
+ *
+ * @var array $permisos
+ * @access private
+ */
+ var $_permisos;
+
// ~X2C
// +X2C Operation 243
* @param int $id Identificador del sistema
*
* @return void
- *
* @access public
*/
- function Sistema(&$db, $id = null) // ~X2C
+ function Sistema(&$db, $id = null)// ~X2C
{
- $this->_db = $db;
+ $this->_db =& $db;
$this->_id = $id;
if (!is_null($id)) {
$this->_obtenerDatosDb();
$this->setFechaImplementacion();
$this->setContacto();
$this->setResponsable();
+ $this->setPermisos();
}
}
// -X2C
* Devuelve el identificador del sistema.
*
* @return int
- *
* @access public
*/
- function getId() // ~X2C
+ function getId()// ~X2C
{
return $this->_id;
}
* Devuelve el nombre del sistema.
*
* @return string
- *
* @access public
*/
- function getNombre() // ~X2C
+ function getNombre()// ~X2C
{
return $this->_nombre;
}
* Devuelve la descrpcion del sistema.
*
* @return string
- *
* @access public
*/
- function getDescripcion() // ~X2C
+ function getDescripcion()// ~X2C
{
return $this->_descripcion;
}
* Devuelve la fecha de inicio del sistema.
*
* @return &date
- *
* @access public
*/
- function &getFechaInicio() // ~X2C
+ function &getFechaInicio()// ~X2C
{
if ($this->_fecha_inicio) {
return new Date ($this->_fecha_inicio.' 00:00:00');
* Devuelve la fecha de finalizacion del sistema.
*
* @return &date
- *
* @access public
*/
- function &getFechaFin() // ~X2C
+ function &getFechaFin()// ~X2C
{
if ($this->_fecha_fin) {
return new Date ($this->_fecha_fin.' 00:00:00');
* Devuelve la fecha de implementacion del sistema.
*
* @return &date
- *
* @access public
*/
- function &getFechaImplementacion() // ~X2C
+ function &getFechaImplementacion()// ~X2C
{
if ($this->_fecha_implementacion) {
return new Date ($this->_fecha_implementacion.' 00:00:00');
* Devuelve el contacto del sistema.
*
* @return string
- *
* @access public
*/
- function getContacto() // ~X2C
+ function getContacto()// ~X2C
{
return $this->_contacto;
}
* @param string $nombre Nombre del sistema.
*
* @return void
- *
* @access public
*/
- function setNombre($nombre = null) // ~X2C
+ function setNombre($nombre = null)// ~X2C
{
$this->_nombre = $nombre;
}
* @param string $descripcion Descripcion del sistema.
*
* @return void
- *
* @access public
*/
- function setDescripcion($descripcion = null) // ~X2C
+ function setDescripcion($descripcion = null)// ~X2C
{
$this->_descripcion = $descripcion;
}
* @param date $fecha Fecha de inicio del sistema
*
* @return void
- *
* @access public
*/
- function setFechaInicio($fecha = null) // ~X2C
+ function setFechaInicio($fecha = null)// ~X2C
{
if ($fecha && $fecha != '0000-00-00') {
$this->_fecha_inicio = $fecha;
* @param date $fecha Fecha de finalizacion del sistema.
*
* @return void
- *
* @access public
*/
- function setFechaFin($fecha = null) // ~X2C
+ function setFechaFin($fecha = null)// ~X2C
{
if ($fecha && $fecha != '0000-00-00') {
$this->_fecha_fin = $fecha;
* @param date $fecha Fecha de implementacion del sistema.
*
* @return void
- *
* @access public
*/
- function setFechaImplementacion($fecha = null) // ~X2C
+ function setFechaImplementacion($fecha = null)// ~X2C
{
if ($fecha && $fecha != '0000-00-00') {
$this->_fecha_implementacion = $fecha;
* @param string $contacto Texto con la informacion del contacto.
*
* @return void
- *
* @access public
*/
- function setContacto($contacto = null) // ~X2C
+ function setContacto($contacto = null)// ~X2C
{
$this->_contacto = $contacto;
}
* Obtiene los datos del sistema de la DB.
*
* @return void
- *
* @access private
*/
- function _obtenerDatosDb() // ~X2C
+ function _obtenerDatosDb()// ~X2C
{
$sql = include 'Sistema/consultas.php'; //Incluyo las consultas de este objeto nada mas.
$tmp = $sql['obtener_datos_sistema'].$sql['obtener_datos_sistema2'];
$dbh = $this->_db->prepare($tmp);
- $tmp = array ($this->_id);
+ $tmp = array ($this->getId());
$res = $this->_db->execute($dbh,$tmp);
if ($re = $res->fetchRow(DB_FETCHMODE_ASSOC)) {
-
if (isset($re['nombre_sistema'])) {
$this->setNombre($re['nombre_sistema']);
}
$this->setContacto();
}
if (isset($re['responsable'])) {
- $this->setresponsable($re['responsable']);
+ $this->setResponsable($re['responsable']);
}
else {
$this->setResponsable();
}
- }
+ }
+ $tmp = $sql['obtener_permisos'];
+ $dbh = $this->_db->prepare($tmp);
+ $tmp = array ($this->getId());
+ $res = $this->_db->execute($dbh,$tmp);
+ $tmp = array();
+ while ($re = $res->fetchRow(DB_FETCHMODE_ORDERED)) {
+ $tmp[] = $re['0'];
+ }
+ $this->_permisos = $tmp;
}
// -X2C
* @param string $accion Accion a realizar. Grabar, modificar o eliminar
*
* @return void
- *
* @access public
*/
- function guardarDatos($accion = grabar) // ~X2C
+ function guardarDatos($accion = grabar)// ~X2C
{
- $sql = include 'Sistema/consultas.php'; //Incluyo las consultas de este objeto nada mas.
-
- $idSistema = ($this->_id != '')?$this->_id:null;
- $fecha_inicio = $this->getFechaInicio();
- $fecha_fin = $this->getFechaFin();
- $fecha_implementacion = $this->getFechaImplementacion();
-
$accion = strtolower($accion);
switch ($accion) {
case 'grabar':
+ $this->_grabarDb();
+ break;
case 'modificar':
- $tmp = $sql['insert_update_sistema'];
- $dbh = $this->_db->prepare($tmp);
- $tmp = array ( $idSistema,
- $this->getNombre(),
- $this->getDescripcion(),
- $fecha_inicio ? $fecha_inicio->format("%Y-%m-%d") : null,
- $fecha_fin ? $fecha_fin->format("%Y-%m-%d") : null,
- $fecha_implementacion ? $fecha_implementacion->format("%Y-%m-%d") : null,
- $this->getContacto(),
- $_SESSION['samurai']['login']
- );
- $res = $this->_db->execute($dbh,$tmp);
+ $this->_modificarDb();
break;
case 'eliminar':
- $tmp = $sql['borrar_sistema'];
- $dbh = $this->_db->prepare($tmp);
- $tmp = array ($idSistema);
- $res = $this->_db->execute($dbh,$tmp);
+ $this->_borrarDb();
break;
}
}
* Devuelve el login del responsable de los ultimos cambios
*
* @return string
- *
* @access public
*/
- function getResponsable() // ~X2C
+ function getResponsable()// ~X2C
{
return $this->_responsable;
}
* @param string $responsable String con el login del responsable del cambio
*
* @return void
- *
* @access public
*/
- function setResponsable($responsable = null) // ~X2C
+ function setResponsable($responsable = null)// ~X2C
{
$this->_responsable = $responsable;
}
// -X2C
+ // +X2C Operation 301
+ /**
+ * Devuelve un array asociativo con los identificadores de los permisos
+ *
+ * @return array
+ * @access public
+ */
+ function getIdPermisos()// ~X2C
+ {
+ return $this->_permisos;
+ }
+ // -X2C
+
+ // +X2C Operation 302
+ /**
+ * Setea los permisos de un sistema
+ *
+ * @param int $permisos Array asociativo con los permisos
+ *
+ * @return void
+ * @access public
+ */
+ function setPermisos($permisos = null)// ~X2C
+ {
+ $this->_permisos = $permisos;
+ }
+ // -X2C
+
+ // +X2C Operation 303
+ /**
+ * @return int
+ * @access public
+ */
+ function getMaxIdSistema()// ~X2C
+ {
+ $sql = include 'Sistema/consultas.php';
+ $dbh = $this->_db->prepare($sql['obtener_max_id_sistemas']);
+ $res = $this->_db->execute($dbh);
+ $re = $res->fetchrow(DB_FETCHMODE_ASSOC);
+ $res->free();
+ return $re['id_sistema'];
+ }
+ // -X2C
+
+ // +X2C Operation 304
+ /**
+ * Graba los datos en la Base de Datos
+ *
+ * @return void
+ * @access private
+ */
+ function _grabarDb()// ~X2C
+ {
+ $idSistema = $this->_db->nextId('sistema');
+ $fecha_inicio = $this->getFechaInicio();
+ $fecha_fin = $this->getFechaFin();
+ $fecha_implementacion = $this->getFechaImplementacion();
+ //USO SECUENCIAS Y AUTOEXECUTE
+ //Grabo el sistema
+ $datos = array(
+ 'id_sistema' => $idSistema,
+ 'nombre_sistema' => $this->getNombre(),
+ 'desc_sistema' => $this->getDescripcion(),
+ 'fecha_inicio' => $fecha_inicio ? $fecha_inicio->format("%Y-%m-%d") : null,
+ 'fecha_fin' => $fecha_fin ? $fecha_fin->format("%Y-%m-%d") : null,
+ 'fecha_implementacion' => $fecha_implementacion ? $fecha_implementacion->format("%Y-%m-%d") : null,
+ 'contacto' => $this->getContacto(),
+ 'responsable' => $this->getResponsable(),
+ 'estado' => 1
+ );
+ $res = $this->_db->autoExecute('sistema', $datos, DB_AUTOQUERY_INSERT);
+
+ if (DB::isError($res)) {
+ trigger_error('Error al tratar de insertar el sistema -> '.$res, E_USER_ERROR);
+ }
+
+ //Grabo los permisos
+ $this->_grabarPermisosDb($idSistema);
+ }
+ // -X2C
+
+ // +X2C Operation 305
+ /**
+ * Borra los datos de la base de datos
+ *
+ * @return void
+ * @access private
+ */
+ function _borrarDb()// ~X2C
+ {
+ $idSistema = $this->getId();
+ $responsable = $this->getResponsable();
+ //Cambio el estado al sistema
+ $datos = array( 'responsable' => $responsable,
+ 'estado' => 0
+ );
+
+ $res = $this->_db->autoExecute('sistema', $datos, DB_AUTOQUERY_UPDATE, 'id_sistema = '.$idSistema);
+ if (DB::isError($res)) {
+ trigger_error('Error en sistema -> '.$res, E_USER_ERROR);
+ }
+
+ //Borro los permisos que tiene asignado el sistema
+ //Borro absolutamente todos los permisos que tiene asociado -> No hay vuelta a atras
+ $this->_borrarPermisosDb($idSistema, false);
+ }
+ // -X2C
+
+ // +X2C Operation 306
+ /**
+ * Modifica los datos en base
+ *
+ * @return void
+ * @access private
+ */
+ function _modificarDb()// ~X2C
+ {
+ //Grabo las modificaciones al sistema
+ $idSistema = $this->getId();
+ $fecha_inicio = $this->getFechaInicio();
+ $fecha_fin = $this->getFechaFin();
+ $fecha_implementacion = $this->getFechaImplementacion();
+ //USO SECUENCIAS Y AUTOEXECUTE
+ //Grabo el sistema
+ $datos = array(
+ 'nombre_sistema' => $this->getNombre(),
+ 'desc_sistema' => $this->getDescripcion(),
+ 'fecha_inicio' => $fecha_inicio ? $fecha_inicio->format("%Y-%m-%d") : null,
+ 'fecha_fin' => $fecha_fin ? $fecha_fin->format("%Y-%m-%d") : null,
+ 'fecha_implementacion' => $fecha_implementacion ? $fecha_implementacion->format("%Y-%m-%d") : null,
+ 'contacto' => $this->getContacto(),
+ 'responsable' => $this->getResponsable(),
+ );
+ $res = $this->_db->autoExecute('sistema', $datos, DB_AUTOQUERY_UPDATE, 'id_sistema = '.$idSistema);
+
+ if (DB::isError($res)) {
+ trigger_error('Error al tratar de insertar el sistema -> '.var_dump($res), E_USER_ERROR);
+ }
+ //Borro los permisos que no tengan observaciones
+ $this->_borrarPermisosDb($idSistema, true);
+ //Grabo los permisos que selecciono
+ $this->_grabarPermisosDb($idSistema);
+ }
+ // -X2C
+
+
+ // +X2C Operation 308
+ /**
+ * Graba los permisos del sistema en perm_sist
+ *
+ * @param int $idSistema Identificador del sistema
+ *
+ * @return void
+ * @access private
+ */
+ function _grabarPermisosDb($idSistema)// ~X2C
+ {
+ $datos = array ('id_permiso','id_sistema','responsable');
+ $re = $this->_db->autoPrepare('perm_sist', $datos, DB_AUTOQUERY_INSERT);
+ if (isset($this->_permisos)) {
+ foreach ($this->_permisos as $permiso) {
+ $datos = array ($permiso['0'], $idSistema, $this->getResponsable());
+ $res = $this->_db->execute($re, $datos);
+ if (DB::isError($res)) {
+ trigger_error('Error en perm_sist -> '.$res, E_USER_ERROR);
+ }
+ }
+ }
+
+ }
+ // -X2C
+
+ // +X2C Operation 309
+ /**
+ * Borra los permisos que tenga asociado el sistema segun el criterio de observaciones
+ *
+ * @param int $idSistema Identificador del sistema
+ * @param bool $observaciones Si es false borra todas las asociaciones que tenga el sistema. Si es true borra solo aquellas que tengan observaciones = ''
+ *
+ * @return void
+ * @access private
+ */
+ function _borrarPermisosDb($idSistema, $observaciones)// ~X2C
+ {
+ $sql = include 'Sistema/consultas.php';
+ $datos[] = $idSistema;
+ $tmp = $sql['borrar_permisos'];
+ if ($observaciones) {
+ $tmp.= $sql['borrar_permisos2'];
+ $datos[] = '';
+ }
+ $dbh = $this->_db->prepare($tmp);
+ $res = $this->_db->execute($dbh, $datos);
+ }
+ // -X2C
+
} // -X2C Class :Sistema
?>
// $Rev$
//
return array (
- 'obtener_datos_sistema' => 'SELECT id_sistema, nombre_sistema, desc_sistema, fecha_inicio, fecha_fin, fecha_implementacion, contacto
- FROM sistema ',
- 'obtener_datos_sistema2' => 'WHERE id_sistema = ? ',
- 'insert_update_sistema' => 'REPLACE INTO sistema (id_sistema, nombre_sistema, desc_sistema, fecha_inicio, fecha_fin,
- fecha_implementacion, contacto, responsable, estado)
- VALUES (?,?,?,?,?,?,?,?,1)',
- 'borrar_sistema' => 'UPDATE sistema set estado = 0 WHERE id_sistema = ?',
+ //OBTENER DATOS
+ 'obtener_datos_sistema' => 'SELECT id_sistema, nombre_sistema, desc_sistema, fecha_inicio, fecha_fin, fecha_implementacion, contacto,
+ responsable
+ FROM sistema ',
+ 'obtener_datos_sistema2' => ' WHERE id_sistema = ? ',
+ 'obtener_permisos' => 'SELECT id_permiso FROM perm_sist WHERE id_sistema = ? ORDER BY id_permiso',
+ 'obtener_max_id_sistemas' => 'SELECT IFNULL(max(id_sistema), 1) as id_sistema FROM sistema',
+ //BORRAR DATOS
+ 'borrar_permisos' => 'DELETE FROM perm_sist WHERE id_sistema = ? ',
+ 'borrar_permisos2' => ' and observaciones = ?',
);
?>
* Login del usuario en intranet.
*
* @var string $login
- *
* @access private
*/
var $_login;
* Numero de documento del usuario
*
* @var int $nrodoc
- *
* @access private
*/
var $_nrodoc;
* Nombre del usuario
*
* @var string $nombre
- *
* @access private
*/
var $_nombre;
* Fecha de ultimo logueo del usuario a la intranet.
*
* @var date $fecha
- *
* @access private
*/
var $_fecha;
* Objeto Samurai_DB
*
* @var Samurai_DB $db
- *
* @access private
*/
var $_db;
* @param string $login Login del usuario
*
* @return void
- *
* @access public
*/
- function Usuario(&$db, $login = null) // ~X2C
+ function Usuario(&$db, $login = null)// ~X2C
{
if (!is_null($login)) {
//BUSCAR INFO EN LA DB,
* Devuelve el string del login del usuario.
*
* @return string
- *
* @access public
*/
- function getLogin() // ~X2C
+ function getLogin()// ~X2C
{
return $this->_login;
}
* Devuelve el int con el numero de documento del usuario.
*
* @return int
- *
* @access public
*/
- function getNrodoc() // ~X2C
+ function getNrodoc()// ~X2C
{
return $this->_nrodoc;
}
* Devuelve un datetime con la fecha en la cual el usuario se logueo por ultima vez a intranet.
*
* @return date
- *
* @access public
*/
- function getFecha() // ~X2C
+ function getFecha()// ~X2C
{
return $this->_fecha;
}
* @param string $login Login a asignar al usuario
*
* @return void
- *
* @access public
*/
- function setLogin($login = null) // ~X2C
+ function setLogin($login = null)// ~X2C
{
$this->_login = login;
}
* @param int $nrodoc Numero de documento a asignar al usuario.
*
* @return void
- *
* @access public
*/
- function setNrodoc($nrodoc = null) // ~X2C
+ function setNrodoc($nrodoc = null)// ~X2C
{
$this->_nrodoc = $nrodoc;
}
* @param string $nombre Nombre del usuario.
*
* @return void
- *
* @access public
*/
- function setNombre($nombre = null) // ~X2C
+ function setNombre($nombre = null)// ~X2C
{
$this->_nombre = $nombre;
}
* @param date $fecha Fecha de ultimo logueo del usuario.
*
* @return void
- *
* @access public
*/
- function setFecha($fecha = null) // ~X2C
+ function setFecha($fecha = null)// ~X2C
{
$this->_fecha = $fecha;
}
* Devuelve el nombre del usuario.
*
* @return string
- *
* @access public
*/
- function getNombre() // ~X2C
+ function getNombre()// ~X2C
{
return $this->_nombre;
}
<?php
// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
-require_once 'include/lib/marco/Marco.php';
-require_once 'include/lib/samurai/Samurai_DB.php';
-require_once 'include/lib/samurai/Samurai.php';
+require_once 'MECON/general.php';
+
+//prepend_include_path('/home/mmarrese/public_html/meconlib/tronco/lib/');
+prepend_include_path('/var/www/intranet/www/sistemas/samurai');
+
+require_once 'MECON/Marco.php';
+require_once 'local_lib/Samurai_DB.php';
+require_once 'local_lib/Samurai.php';
session_start();
-php_value include_path ".:/var/www/intranet/www/sistemas/samurai:/var/www/intranet/www/sistemas/samurai/conf:/var/www/intranet/www/include/lib/:/var/www/intranet/www:/usr/share/pear"
-php_value auto_prepend_file "/var/www/intranet/www/sistemas/samurai/www/include/prepend.php"
-php_value auto_append_file "/var/www/intranet/www/sistemas/samurai/www/include/append.php"
+php_value auto_prepend_file "../local_lib/prepend.php"
+php_value auto_append_file "../local_lib/append.php"
#php_value allow_call_time_pass_reference On
// $Date$
// $Rev$
//
- $MARCO = new Marco ('samurai');
+ $MARCO = new Marco ('../conf/confSecciones.php');
$MARCO->addBody('<img src="images/inicio.jpg" border="0">');
$MARCO->display();
?>
// $Rev$
//
require_once 'HTML/QuickForm.php';
- require_once '/home/llucar/public_html/quickform/HTML/QuickForm/Renderer/Tabla.php';
- require_once 'Validate.php';
+ require_once 'MECON/HTML/QuickForm/Renderer/Tabla.php';
-//CREO EL OBJETO FORM
+//CREO LOS OBJETO NECESARIOS
+ $SAMURAI = new Samurai($DB);
$FORM = new HTML_QuickForm ('sistemas_abm','post','sistemas-abm');
//
+//OBTENGO LA LISTA DE PERMISOS
+ $PERMISOS = $SAMURAI->getSelectPermisos();
+//
//REGISTRO EL ELEMENTO mdate
-//Va a ir en el quickform nuestro
- $FORM->registerElementType ('mdate', 'HTML/QuickForm/mdate.php', 'HTML_QuickForm_mdate');
+//Van a ir en el quickform nuestro
+ $FORM->registerElementType ('mdate', 'MECON/HTML/QuickForm/mdate.php', 'HTML_QuickForm_mdate');
$FORM->registerRule ('fecha', 'function', 'validate', 'HTML_QuickForm_mdate');
+ $FORM->setRequiredNote ('<FONT color="red">*</FONT> indica un campo obligatorio');
//
//AGREGO LOS ELEMENTOS DEL FORM
- $FORM->addElement('header' , 'cabecera' , 'ABM Sistemas');
- $FORM->addElement('hidden' , 'id_sistema');
- $FORM->addElement('text' , 'nombre_sistema' , 'Nombre' , array('size' => '30'));
- $FORM->addElement('textarea', 'desc_sistema' , 'Descripcion' , array('rows' => '2','cols'=>'50'));
- $FORM->addElement('mdate' , 'fecha_inicio' , 'Fecha Inicio' , array('language'=>'es','format'=>'dFY'));
- $FORM->addElement('mdate' , 'fecha_fin' , 'Fecha Fin' , array('language'=>'es','format'=>'dFY'));
- $FORM->addElement('mdate' , 'fecha_implementacion', 'Fecha Implementacion', array('language'=>'es','format'=>'dFY'));
- $FORM->addElement('textarea', 'contacto' , 'Contacto' , array('rows' => '2','cols'=>'50'));
- $FORM->addElement('static' , 'responsable' , 'Responsable' , $_SESSION['samurai']['login']);
- $group[] = HTML_QuickForm::createElement('submit', 'aceptar', 'Grabar');
+ $FORM->addElement ('header' , 'cabecera' , 'ABM Sistemas');
+ $FORM->addElement ('hidden' , 'id_sistema');
+ $FORM->addElement ('text' , 'nombre_sistema' , 'Nombre' , array('size' => '30'));
+ $FORM->addElement ('textarea', 'desc_sistema' , 'Descripcion' , array('rows' => '2','cols'=>'50'));
+ $FORM->addElement ('mdate' , 'fecha_inicio' , 'Fecha Inicio' , array('language'=>'es','format'=>'dFY'));
+ $FORM->addElement ('mdate' , 'fecha_fin' , 'Fecha Fin' , array('language'=>'es','format'=>'dFY'));
+ $FORM->addElement ('mdate' , 'fecha_implementacion', 'Fecha Implementacion', array('language'=>'es','format'=>'dFY'));
+ $FORM->addElement ('textarea', 'contacto' , 'Contacto' , array('rows' => '2','cols'=>'50'));
+ $FORM->addElement ('select' , 'permisos' , 'Permisos' , $PERMISOS, array('size' => '5', 'multiple' => 'multiple'));
+ $FORM->addElement ('static' , 'responsable' , 'Responsable' , $_SESSION['samurai']['login']);
+ //Toma por default al que esta logueado, pero si este dato
+ //es diferente no hay problema, ya lo considere
+ $group[] = HTML_QuickForm::createElement('submit', 'aceptar' , 'Grabar');
$FORM->addGroup($group,'botones');
//
//AGREGO LAS REGLAS DE VALIDACION DE LOS ELEMENTOS
$FORM->addRule('desc_sistema' , 'El campo descripcion es obligatorio' , 'required', '', 'client');
$FORM->addRule('fecha_inicio' , 'El campo fecha inicio es obligatorio', 'numeric' , '', 'client');
$FORM->addRule('contacto' , 'El campo contacto es obligatorio' , 'required', '', 'client');
-
+//
+//LAS FECHAS SOLO LAS VALIDO SI ES UN NUEVO SISTEMA O SI ES UNA MODIFICACION
$FORM->addRule('fecha_inicio' , 'No es una fecha Valida', 'fecha', '', 'client');
$FORM->addRule('fecha_fin' , 'No es una fecha Valida', 'fecha', '', 'client');
-// $FORM->addRule('fecha_implementacion', 'No es una fecha Valida', 'fecha', '', 'client');
+ $FORM->addRule('fecha_implementacion', 'No es una fecha Valida', 'fecha', '', 'client');
//
//CREO EL OBJETO SISTEMA
//Obtengo el id del sistema.
if (isset($_GET['accion']) && $_GET['accion'] != '') {
//Viene en el get es -> modificar o eliminar, me ocupo yo.
$id_sistema = $_GET['idSistema'];
+ $idSistema->setValue($id_sistema);
}
else {
//Viene en el post, no me ocupo yo.
$id_sistema = $idSistema->getValue();
}
- $idSistema->setValue($id_sistema);
$SISTEMA = new Sistema ($DB, $id_sistema);
//
//SETEO LOS VALORES DE LOS ELEMENTOS DEL OBJETO FORM
if (isset($_GET['accion']) && $_GET['accion'] != '') {
//MODIFICACION -> agrego la info a los elementos
- $nombre_sistema =& $FORM->getElement ('nombre_sistema');
- $desc_sistema =& $FORM->getElement ('desc_sistema');
- $fecha_inicio =& $FORM->getElement ('fecha_inicio');
- $fecha_fin =& $FORM->getElement ('fecha_fin');
+ $nombre_sistema =& $FORM->getElement ('nombre_sistema' );
+ $desc_sistema =& $FORM->getElement ('desc_sistema' );
+ $fecha_inicio =& $FORM->getElement ('fecha_inicio' );
+ $fecha_fin =& $FORM->getElement ('fecha_fin' );
$fecha_implementacion =& $FORM->getElement ('fecha_implementacion');
- $contacto =& $FORM->getElement ('contacto');
- $group =& $FORM->getElement ('botones');
- $group =& $group->getElements('aceptar');
+ $contacto =& $FORM->getElement ('contacto' );
+ $permisos =& $FORM->getElement ('permisos' );
+ $responsable =& $FORM->getElement ('responsable' );
+ $group =& $FORM->getElement ('botones' );
+ $group =& $group->getElements('aceptar' );
$aceptar =& $group[0];
$nombre_sistema->setValue($SISTEMA->getNombre());
$desc_sistema->setValue ($SISTEMA->getDescripcion());
$contacto->setValue ($SISTEMA->getContacto());
-
- //Trabajo con las fechas
+
+ if ($SISTEMA->getIdPermisos() != '') {
+ $permisos->setSelected($SISTEMA->getIdPermisos());
+ }
+ if ($SISTEMA->getResponsable() != '') {
+ $responsable->setValue($SISTEMA->getResponsable());
+ }
+ //Seteo las fechas
if ($tmp = $SISTEMA->getFechaInicio()) {
$fecha_inicio->setSelectedDate(array( 'd' => $tmp->format("%d"),
'F' => $tmp->format("%m"),
'Y' => $tmp->format("%Y"),
));
}
-
+
$aceptar->setValue('Modificar');
+
//ELIMINACION -> modifico el valor del boton
if ($_GET['accion'] == 'e') {
$aceptar->setValue('Eliminar');
$FORM->freeze();
}
- }
+ }
//
//VALIDO EL FORMULARIO
if ($FORM->validate()) {
$fecha_fin =& $FORM->getElement ('fecha_fin' );
$fecha_implementacion =& $FORM->getElement ('fecha_implementacion');
$contacto =& $FORM->getElement ('contacto' );
+ $permisos =& $FORM->getElement ('permisos' );
+ $responsable =& $FORM->getElement ('responsable' );
$group =& $FORM->getElement ('botones' );
$group =& $group->getElements('aceptar' );
$aceptar =& $group[0];
$f2 =& $fecha_fin->getValue();
$f3 =& $fecha_implementacion->getValue();
- //VALIDO LAS FECHAS
-// $VALIDO = true;
+ //SETEO LAS FECHAS
if ($f1) {
-// if (checkdate($f1->format("%m"),$f1->format("%d"),$f1->format("%Y"))) {
$SISTEMA->setFechaInicio($f1->format("%Y-%m-%d"));
-// }
-// else {
-// $VALIDO = false;
-// }
}
else {
$SISTEMA->setFechaInicio();
}
if ($f2) {
-// if (checkdate($f2->format("%m"),$f2->format("%d"),$f2->format("%Y"))) {
$SISTEMA->setFechaFin($f2->format("%Y-%m-%d"));
-// }
-// else {
-// $VALIDO = false;
-// }
}
else {
$SISTEMA->setFechaFin();
}
if ($f3) {
-// if (checkdate($f3->format("%m"),$f3->format("%d"),$f3->format("%Y"))) {
$SISTEMA->setFechaImplementacion($f3->format("%Y-%m-%d"));
-// }
-// else {
-// $VALIDO = false;
-// }
}
else {
$SISTEMA->setFechaImplementacion();
}
- //
$SISTEMA->setContacto($contacto->getValue());
-// if ($VALIDO) {
- $FORM->freeze();
-// $SISTEMA->guardarDatos($aceptar->getValue());
-// header('Location: sistemas');
-// }
+ $SISTEMA->setPermisos($permisos->getSelected());
+
+ $SISTEMA->setResponsable($responsable->_text); //TODO URGENTE Modificar esto. No tiene hay metodo static::getValue()
+
+ $FORM->freeze();
+ $SISTEMA->guardarDatos($aceptar->getValue());
+ header('Location: sistemas');
}
//
+
//DIBUJO LA PAGINA
$renderer =& new HTML_QuickForm_Renderer_Tabla('width="100%"');
$FORM->accept($renderer);
- $MARCO = new Marco ('samurai');
+
+
+
+ $MARCO = new Marco ('../conf/confSecciones.php');
$MARCO->addTitle('Nuevo Sistema');
$MARCO->addBody($renderer->toHtml());
$MARCO->display();
// | obtain it through the world-wide-web, please send a note to |
// | license@php.net so we can mail you a copy immediately. |
// +----------------------------------------------------------------------+
-// | Created: thu apr 15 15:22:58 ART 2003
+// | Created: mar may 27 15:16:38 ART 2003
// | Author: Martin Marrese <mmarre@mecon.gov.ar>
// +----------------------------------------------------------------------+
//
// $URL$
// $Date$
// $Rev$
-//
- return array (
- 'titulo_sistema' => 'SAMURAI',
- 'pie_sistema' => 'Sistema de Administracion y Mantenimiento de Usuarios Relativos A Intranet - Ministerio de Economia',
- 'id_sistema' => '1',
- 'db_type' => 'mysql',
- 'db_user' => 'intranet',
- 'db_pass' => 'intranet',
- 'db_host' => 'bal747f',
- 'db_name' => 'samurai',
- );
+//
+
+//ARMAR UNA TABLA CON UN SELECT UN TEXT Y UN BOTON AGREGAR
+//ABAJO LISTA CON LOS PERMISOS
+
+//SE SELECCIONA UN PERMISO SE SETEA O NO LA OBSERVACION Y SE AGREGA.
+
?>
// $Date$
// $Rev$
//
- require_once 'HTML/Tabla.php';
+ require_once 'MECON/HTML/Tabla.php';
$aHref = '<a href="sistemas-abm?accion=##ACCION##&idSistema=##NUEVO##">';
- $aHrefModif = $aHref.'<img src="/www/images/modificar.gif" border="0"></a>';
- $aHrefElim = $aHref.'<img src="/www/images/eliminar.gif" border="0"></a>';
+ $aHrefModif = $aHref.'<img src="/MECON/images/general_modificar.gif" border="0"></a>';
+ $aHrefElim = $aHref.'<img src="/MECON/images/general_eliminar.gif" border="0"></a>';
+ $aHrefPerm = '<a href="sistemas-permisos?idSistema=##SISTEMA##"><img src="/MECON/images/general_ir4" border="0"></a>';
$body = '';
$sistemas = $SAMURAI->getSistemas();
$TABLA2 = new Tabla ('cellspacing=0');
- $row = array ($aHref.'<img src="/www/images/nuevo.gif" border="0">Ingresar Nuevo Sistema</a>');
+ $row = array ($aHref.'<img src="/MECON/images/general_nuevo.gif" border="0">Ingresar Nuevo Sistema</a>');
$TABLA2->addRow($row,'align=right');
$TABLA = new Tabla ('cellpadding=2');
- $row = array ('Id','Nombre','Descripcion','Fecha Inicio','Fecha Fin','Fecha Impl.','Contacto','Modif.','Elim.');
+ $row = array ('Id','Nombre','Descripcion','Fecha Inicio','Fecha Fin','Fecha Impl.','Contacto','Modif.','Elim.','Perm.');
$TABLA->addRow($row,'cabecera');
foreach ($sistemas as $sistema) {
- $Modif = ereg_replace('##NUEVO##' , $sistema->getId(), $aHrefModif);
- $Elim = ereg_replace('##NUEVO##' , $sistema->getId(), $aHrefElim);
- $Modif = ereg_replace('##ACCION##', 'm' , $Modif);
- $Elim = ereg_replace('##ACCION##', 'e' , $Elim);
+ $Modif = ereg_replace('##NUEVO##' , $sistema->getId(), $aHrefModif);
+ $Elim = ereg_replace('##NUEVO##' , $sistema->getId(), $aHrefElim);
+ $Modif = ereg_replace('##ACCION##' , 'm' , $Modif);
+ $Elim = ereg_replace('##ACCION##' , 'e' , $Elim);
+ $Perm = ereg_replace('##SISTEMA##', $sistema->getId(), $aHrefPerm);;
$fecha_inicio = $sistema->getFechaInicio();
$fecha_fin = $sistema->getFechaFin();
$sistema->getContacto(),
$Modif,
$Elim,
+ $Perm,
);
$TABLA->addRow($row);
}
-
//Agrego las cosas al cuerpo de la pagina
$body.=$TABLA2->toHtml(1);
$body.=$TABLA->toHtml().'<BR>';
-
- $MARCO = new Marco ('samurai');
+
+ $MARCO = new Marco ('../conf/confSecciones.php');
$MARCO->addBody($body);
$MARCO->display();
?>