]> git.llucax.com Git - mecon/meconlib.git/commitdiff
- Se cambiaron los nombres de:
authorMartín Marrese <marrese@gmail.com>
Wed, 20 Aug 2003 21:15:47 +0000 (21:15 +0000)
committerMartín Marrese <marrese@gmail.com>
Wed, 20 Aug 2003 21:15:47 +0000 (21:15 +0000)
  Agente  --> MECON_Agente
  Dependencia --> MECON_Dependencia
  NovedadesDia --> MECON_NovedadesDia
  Novedad --> MECON_Novedad
  Tabla --> MECON_HTML_Tabla
  Banda --> MECON_Tiempo_Banda
  Hora --> MECON_Tiempo_Hora
  Intervalo --> MECON_Tiempo_Intervalo

y se arreglo todo lo que se consideraba conveniente.

15 files changed:
doc/meconlib.xmi
doc/xmi2code.config
lib/MECON/Agente.php
lib/MECON/Dependencia.php
lib/MECON/HTML/QuickForm/caritas.php
lib/MECON/HTML/QuickForm/mdate.php
lib/MECON/HTML/QuickFormSimple.php
lib/MECON/Novedad.php
lib/MECON/NovedadesDia.php
lib/MECON/Tiempo/Banda.php
lib/MECON/Tiempo/Hora.php
lib/MECON/Tiempo/Intervalo.php
lib/MECON/Usuario.php
test/HTML/prueba_tabla.php
test/HTML/prueba_tabla2.php

index 9ad1a8e7edcf2dc572bcbdb291bea2a8f4f0b1ee..6ee29247fc6f56bb62543ad2abbc8ad30c2e450e 100644 (file)
@@ -3,9 +3,10 @@
  <XMI.header>
   <XMI.documentation>
    <XMI.exporter>umbrello uml modeller http://uml.sf.net</XMI.exporter>
-   <XMI.exporterVersion>1.1</XMI.exporterVersion>
+   <XMI.exporterVersion>1.1.5</XMI.exporterVersion>
+   <XMI.exporterEncoding>UnicodeUTF8</XMI.exporterEncoding>
   </XMI.documentation>
-  <XMI.model xmi.name="meconlib" href="/home/matias/sistemas/meconlib/tronco/doc/meconlib.xmi" />
+  <XMI.model xmi.name="meconlib" href="/home/martin/public_html/meconlib/doc/meconlib.xmi" />
   <XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
  </XMI.header>
  <XMI.content>
@@ -16,7 +17,7 @@
    <UML:UseCase stereotype="" package="" xmi.id="4" abstract="0" documentation="" name="Cambiar Credencial" static="0" scope="200" />
    <UML:UseCase stereotype="" package="" xmi.id="6" abstract="0" documentation="" name="Procesar Periodo" static="0" scope="200" />
    <UML:Class stereotype="" package="" xmi.id="39" abstract="0" documentation="
-" name="Hora" static="0" scope="200" />
+" name="MECON_Tiempo_Hora" static="0" scope="200" />
    <UML:Actor stereotype="" package="" xmi.id="74" abstract="0" documentation="Estas son las personas que asignan las targetas." name="Control de Accesos" static="0" scope="200" />
    <UML:UseCase stereotype="" package="" xmi.id="75" abstract="0" documentation="" name="Mostrar Banda" static="0" scope="200" />
    <UML:Actor stereotype="" package="" xmi.id="76" abstract="0" documentation="Cualquiera logueado en Intranet" name="Agente" static="0" scope="200" />
@@ -26,7 +27,7 @@
    <UML:Class stereotype="" package="" xmi.id="125" abstract="0" documentation="x2c:extern
 " name="DB" static="0" scope="200" />
    <UML:Class stereotype="" package="" xmi.id="131" abstract="0" documentation="
-" name="Agente" static="0" scope="200" >
+" name="MECON_Agente" static="0" scope="200" >
     <UML:Operation stereotype="" package="" xmi.id="133" type="string" abstract="0" documentation="" name="getDependencia" static="0" scope="200" />
     <UML:Operation stereotype="" package="" xmi.id="134" type="void" abstract="0" documentation="" name="getTipo" static="0" scope="200" />
     <UML:Operation stereotype="" package="" xmi.id="135" type="void" abstract="0" documentation="" name="Agente" static="0" scope="200" >
@@ -44,7 +45,7 @@
     <UML:Attribute stereotype="" package="" xmi.id="137" value="" type="int" abstract="0" documentation="" name="datos" static="0" scope="200" />
    </UML:Class>
    <UML:Class stereotype="" package="" xmi.id="145" abstract="0" documentation="
-" name="Dependencia" static="0" scope="202" >
+" name="MECON_Dependencia" static="0" scope="202" >
     <UML:Operation stereotype="" package="" xmi.id="147" type="void" abstract="0" documentation="" name="dependencia" static="0" scope="200" >
      <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="int" abstract="0" documentation="" name="codep" static="0" scope="200" />
     </UML:Operation>
     <UML:Attribute stereotype="" package="" xmi.id="163" value="" type="int" abstract="0" documentation="" name="nombre" static="0" scope="200" />
     <UML:Attribute stereotype="" package="" xmi.id="164" value="" type="int" abstract="0" documentation="" name="nombre_breve" static="0" scope="200" />
    </UML:Class>
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="3" roleb="4" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="3" roleb="6" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="74" roleb="4" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="76" roleb="75" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="77" roleb="75" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="3" roleb="77" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="79" roleb="75" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="78" roleb="79" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="4" roleb="6" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="3" roleb="4" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="74" roleb="4" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="3" roleb="6" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
+   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="512" rolea="76" roleb="75" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
   </umlobjects>
   <diagrams>
-   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="1" documentation="" type="402" showops="1" showpackage="0" name="class diagram" localid="30000" showstereotype="0" showscope="1" font="Helvetica,8,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="1" documentation="" type="402" showops="1" showpackage="0" name="class diagram" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
     <widgets>
-     <UML:ConceptWidget usesdiagramfillcolour="0" width="188" showattsigs="601" usesdiagramusefillcolour="0" x="279" linecolour="#ff0000" y="137" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="168" usefillcolor="1" showattributes="1" xmi.id="131" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
-     <UML:ConceptWidget usesdiagramfillcolour="0" width="190" showattsigs="601" usesdiagramusefillcolour="0" x="27" linecolour="#ff0000" y="137" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="126" usefillcolor="1" showattributes="1" xmi.id="145" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
-     <UML:ConceptWidget usesdiagramfillcolour="1" width="46" showattsigs="601" usesdiagramusefillcolour="1" x="284" linecolour="none" y="40" showopsigs="601" usesdiagramlinecolour="1" fillcolour="none" height="28" usefillcolor="1" showattributes="1" xmi.id="125" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
-     <UML:ConceptWidget usesdiagramfillcolour="1" width="46" showattsigs="601" usesdiagramusefillcolour="1" x="149" linecolour="none" y="45" showopsigs="601" usesdiagramlinecolour="1" fillcolour="none" height="28" usefillcolor="1" showattributes="1" xmi.id="39" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="171" showattsigs="601" usesdiagramusefillcolour="0" x="279" linecolour="#ff0000" y="137" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="168" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="131" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="172" showattsigs="601" usesdiagramusefillcolour="0" x="27" linecolour="#ff0000" y="137" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="126" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="145" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="1" width="35" showattsigs="601" usesdiagramusefillcolour="1" x="284" linecolour="none" y="40" showopsigs="601" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="28" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="125" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="1" width="122" showattsigs="601" usesdiagramusefillcolour="1" x="149" linecolour="none" y="45" showopsigs="601" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="28" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="39" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Helvetica,8,-1,5,50,0,0,0,0,0" />
     </widgets>
     <messages/>
     <associations/>
    </diagram>
-   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="2" documentation="" type="400" showops="1" showpackage="0" name="Bandas2" localid="30000" showstereotype="0" showscope="1" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="2" documentation="" type="400" showops="1" showpackage="0" name="Bandas2" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
     <widgets>
-     <UML:ActorWidget usesdiagramfillcolour="0" width="34" usesdiagramusefillcolour="0" x="74" linecolour="#ff0000" y="184" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="63" usefillcolor="1" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:UseCaseWidget usesdiagramfillcolour="0" width="134" usesdiagramusefillcolour="0" x="343" linecolour="#ff0000" y="57" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="53" usefillcolor="1" xmi.id="4" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:UseCaseWidget usesdiagramfillcolour="1" width="120" usesdiagramusefillcolour="1" x="441" linecolour="none" y="190" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="6" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:ActorWidget usesdiagramfillcolour="1" width="133" usesdiagramusefillcolour="1" x="55" linecolour="none" y="35" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="74" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:UseCaseWidget usesdiagramfillcolour="1" width="104" usesdiagramusefillcolour="1" x="508" linecolour="none" y="430" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="75" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:ActorWidget usesdiagramfillcolour="1" width="55" usesdiagramusefillcolour="1" x="204" linecolour="none" y="480" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="76" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:UseCaseWidget usesdiagramfillcolour="1" width="105" usesdiagramusefillcolour="1" x="426" linecolour="none" y="280" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="77" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:ActorWidget usesdiagramfillcolour="1" width="50" usesdiagramusefillcolour="1" x="79" linecolour="none" y="308" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="78" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:UseCaseWidget usesdiagramfillcolour="0" width="124" usesdiagramusefillcolour="0" x="253" linecolour="#ff0000" y="371" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="53" usefillcolor="1" xmi.id="79" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:ActorWidget usesdiagramfillcolour="0" width="34" usesdiagramusefillcolour="0" x="74" linecolour="#ff0000" y="184" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="63" usefillcolor="1" isinstance="0" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:UseCaseWidget usesdiagramfillcolour="0" width="134" usesdiagramusefillcolour="0" x="343" linecolour="#ff0000" y="57" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="53" usefillcolor="1" isinstance="0" xmi.id="4" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:UseCaseWidget usesdiagramfillcolour="1" width="120" usesdiagramusefillcolour="1" x="441" linecolour="none" y="190" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="6" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:ActorWidget usesdiagramfillcolour="1" width="133" usesdiagramusefillcolour="1" x="55" linecolour="none" y="35" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="74" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:UseCaseWidget usesdiagramfillcolour="1" width="104" usesdiagramusefillcolour="1" x="508" linecolour="none" y="430" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="75" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:ActorWidget usesdiagramfillcolour="1" width="55" usesdiagramusefillcolour="1" x="204" linecolour="none" y="480" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="76" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:UseCaseWidget usesdiagramfillcolour="1" width="105" usesdiagramusefillcolour="1" x="426" linecolour="none" y="280" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="77" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:ActorWidget usesdiagramfillcolour="1" width="50" usesdiagramusefillcolour="1" x="79" linecolour="none" y="308" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="78" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:UseCaseWidget usesdiagramfillcolour="0" width="124" usesdiagramusefillcolour="0" x="253" linecolour="#ff0000" y="371" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="53" usefillcolor="1" isinstance="0" xmi.id="79" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
     </widgets>
     <messages/>
     <associations>
-     <UML:AssocWidget totalcounta="4" indexa="1" totalcountb="3" indexb="2" widgetbid="4" widgetaid="3" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="4" indexa="1" visibilityB="200" totalcountb="3" indexb="2" widgetbid="4" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="108" starty="199" />
        <endpoint endx="343" endy="92" />
       </linepath>
      </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="4" indexa="2" totalcountb="2" indexb="1" widgetbid="6" widgetaid="3" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="4" indexa="2" visibilityB="200" totalcountb="2" indexb="1" widgetbid="6" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="108" starty="215" />
        <endpoint endx="441" endy="216" />
       </linepath>
      </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="4" widgetaid="74" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="4" roleBdoc="" widgetaid="74" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="188" starty="66" />
        <endpoint endx="343" endy="74" />
       </linepath>
      </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="2" widgetbid="75" widgetaid="76" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="2" widgetbid="75" roleBdoc="" widgetaid="76" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="259" starty="511" />
        <endpoint endx="508" endy="465" />
       </linepath>
      </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="75" widgetaid="77" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="75" roleBdoc="" widgetaid="77" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="478" starty="333" />
        <endpoint endx="560" endy="430" />
       </linepath>
      </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="4" indexa="3" totalcountb="2" indexb="1" widgetbid="77" widgetaid="3" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="4" indexa="3" visibilityB="200" totalcountb="2" indexb="1" widgetbid="77" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="108" starty="231" />
        <endpoint endx="426" endy="306" />
       </linepath>
      </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="75" widgetaid="79" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="75" roleBdoc="" widgetaid="79" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="377" starty="397" />
        <endpoint endx="508" endy="447" />
       </linepath>
      </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="79" widgetaid="78" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="79" roleBdoc="" widgetaid="78" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="129" starty="339" />
        <endpoint endx="253" endy="397" />
       </linepath>
      </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="6" widgetaid="4" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="6" roleBdoc="" widgetaid="4" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="410" starty="110" />
        <endpoint endx="501" endy="190" />
      </UML:AssocWidget>
     </associations>
    </diagram>
-   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="115" documentation="" type="400" showops="1" showpackage="0" name="Cambiar Credencial" localid="30000" showstereotype="0" showscope="1" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="115" documentation="" type="400" showops="1" showpackage="0" name="Cambiar Credencial" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
     <widgets>
-     <UML:UseCaseWidget usesdiagramfillcolour="1" width="134" usesdiagramusefillcolour="1" x="385" linecolour="none" y="71" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="4" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:ActorWidget usesdiagramfillcolour="1" width="34" usesdiagramusefillcolour="1" x="195" linecolour="none" y="32" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:ActorWidget usesdiagramfillcolour="0" width="133" usesdiagramusefillcolour="0" x="29" linecolour="#ff0000" y="92" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="63" usefillcolor="1" xmi.id="74" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:NoteWidget usesdiagramfillcolour="1" width="463" usesdiagramusefillcolour="1" x="49" linecolour="none" y="203" usesdiagramlinecolour="1" fillcolour="none" height="70" usefillcolor="1" xmi.id="116" text="El Operador selecciona un usuario e indica el nuevo numero de credencial y la fecha desde la que la usa.
+     <UML:UseCaseWidget usesdiagramfillcolour="1" width="134" usesdiagramusefillcolour="1" x="385" linecolour="none" y="71" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="4" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:ActorWidget usesdiagramfillcolour="1" width="34" usesdiagramusefillcolour="1" x="195" linecolour="none" y="32" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:ActorWidget usesdiagramfillcolour="0" width="133" usesdiagramusefillcolour="0" x="29" linecolour="#ff0000" y="92" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="63" usefillcolor="1" isinstance="0" xmi.id="74" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:NoteWidget usesdiagramfillcolour="1" width="463" usesdiagramusefillcolour="1" x="49" linecolour="none" y="203" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="70" usefillcolor="1" isinstance="0" xmi.id="116" text="El Operador selecciona un usuario e indica el nuevo numero de credencial y la fecha desde la que la usa.
 " font="Helvetica,11,-1,5,50,0,0,0,0,0" />
     </widgets>
     <messages/>
     <associations>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="4" widgetaid="3" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="4" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="229" starty="63" />
        <endpoint endx="385" endy="88" />
       </linepath>
      </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="2" widgetbid="4" widgetaid="74" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="2" widgetbid="4" roleBdoc="" widgetaid="74" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="162" starty="123" />
        <endpoint endx="385" endy="106" />
      </UML:AssocWidget>
     </associations>
    </diagram>
-   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="117" documentation="" type="400" showops="1" showpackage="0" name="Procesar Periodo" localid="30000" showstereotype="0" showscope="1" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="117" documentation="" type="400" showops="1" showpackage="0" name="Procesar Periodo" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
     <widgets>
-     <UML:UseCaseWidget usesdiagramfillcolour="1" width="120" usesdiagramusefillcolour="1" x="317" linecolour="none" y="117" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="6" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:ActorWidget usesdiagramfillcolour="1" width="34" usesdiagramusefillcolour="1" x="85" linecolour="none" y="109" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:NoteWidget usesdiagramfillcolour="1" width="325" usesdiagramusefillcolour="1" x="109" linecolour="none" y="218" usesdiagramlinecolour="1" fillcolour="none" height="106" usefillcolor="1" xmi.id="118" text="Beti indica el periodo que se debe reprocesar y si es para solo un agente o para todos.
+     <UML:UseCaseWidget usesdiagramfillcolour="1" width="120" usesdiagramusefillcolour="1" x="317" linecolour="none" y="117" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="6" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:ActorWidget usesdiagramfillcolour="1" width="34" usesdiagramusefillcolour="1" x="85" linecolour="none" y="109" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="3" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:NoteWidget usesdiagramfillcolour="1" width="325" usesdiagramusefillcolour="1" x="109" linecolour="none" y="218" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="106" usefillcolor="1" isinstance="0" xmi.id="118" text="Beti indica el periodo que se debe reprocesar y si es para solo un agente o para todos.
 El proceso puede ser muy largo." font="Helvetica,11,-1,5,50,0,0,0,0,0" />
     </widgets>
     <messages/>
     <associations>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="6" widgetaid="3" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="6" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="119" starty="140" />
        <endpoint endx="317" endy="143" />
@@ -179,15 +253,20 @@ El proceso puede ser muy largo." font="Helvetica,11,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
     </associations>
    </diagram>
-   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="119" documentation="" type="400" showops="1" showpackage="0" name="Mostrar Banda" localid="30000" showstereotype="0" showscope="1" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
+   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="812" snapy="10" showatts="1" xmi.id="119" documentation="" type="400" showops="1" showpackage="0" name="Mostrar Banda" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="Helvetica,11,-1,5,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="626" >
     <widgets>
-     <UML:ActorWidget usesdiagramfillcolour="1" width="55" usesdiagramusefillcolour="1" x="140" linecolour="none" y="92" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" xmi.id="76" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:UseCaseWidget usesdiagramfillcolour="1" width="104" usesdiagramusefillcolour="1" x="372" linecolour="none" y="84" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" xmi.id="75" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
-     <UML:NoteWidget usesdiagramfillcolour="1" width="342" usesdiagramusefillcolour="1" x="135" linecolour="none" y="195" usesdiagramlinecolour="1" fillcolour="none" height="66" usefillcolor="1" xmi.id="120" text="El agente indica el mes que quiere consultar y se le genera un reporte." font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:ActorWidget usesdiagramfillcolour="1" width="55" usesdiagramusefillcolour="1" x="140" linecolour="none" y="92" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="63" usefillcolor="1" isinstance="0" xmi.id="76" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:UseCaseWidget usesdiagramfillcolour="1" width="104" usesdiagramusefillcolour="1" x="372" linecolour="none" y="84" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="53" usefillcolor="1" isinstance="0" xmi.id="75" font="Helvetica,11,-1,5,50,0,0,0,0,0" />
+     <UML:NoteWidget usesdiagramfillcolour="1" width="342" usesdiagramusefillcolour="1" x="135" linecolour="none" y="195" instancename="" usesdiagramlinecolour="1" fillcolour="none" height="66" usefillcolor="1" isinstance="0" xmi.id="120" text="El agente indica el mes que quiere consultar y se le genera un reporte." font="Helvetica,11,-1,5,50,0,0,0,0,0" />
     </widgets>
     <messages/>
     <associations>
-     <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="75" widgetaid="76" documentation="" type="512" >
+     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="75" roleBdoc="" widgetaid="76" roleAdoc="" documentation="" type="512" changeabilityA="900" changeabilityB="900" visibilityA="200" >
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="711" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="0" linecolour="none" y="0" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="712" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,12,-1,0,50,0,0,0,0,0" />
       <linepath>
        <startpoint startx="195" starty="123" />
        <endpoint endx="372" endy="110" />
@@ -199,11 +278,13 @@ El proceso puede ser muy largo." font="Helvetica,11,-1,5,50,0,0,0,0,0" />
   <listview>
    <listitem open="1" type="800" id="-1" label="Views" >
     <listitem open="1" type="801" id="-1" label="Logical View" >
-     <listitem open="1" type="813" id="131" label="Agente" >
-      <listitem open="0" type="815" id="135" label="Agente" />
+     <listitem open="0" type="807" id="1" label="class diagram" />
+     <listitem open="1" type="813" id="125" label="DB" />
+     <listitem open="0" type="813" id="131" label="MECON_Agente" >
       <listitem open="0" type="814" id="132" label="agente" />
-      <listitem open="0" type="815" id="154" label="buscarAgente" />
       <listitem open="0" type="814" id="137" label="datos" />
+      <listitem open="0" type="815" id="135" label="Agente" />
+      <listitem open="0" type="815" id="154" label="buscarAgente" />
       <listitem open="0" type="815" id="149" label="getCuil" />
       <listitem open="0" type="815" id="133" label="getDependencia" />
       <listitem open="0" type="815" id="139" label="getHoraDesde" />
@@ -212,35 +293,36 @@ El proceso puede ser muy largo." font="Helvetica,11,-1,5,50,0,0,0,0,0" />
       <listitem open="0" type="815" id="151" label="getOtrosDatos" />
       <listitem open="0" type="815" id="134" label="getTipo" />
      </listitem>
-     <listitem open="1" type="813" id="125" label="DB" />
-     <listitem open="0" type="813" id="145" label="Dependencia" >
+     <listitem open="0" type="813" id="145" label="MECON_Dependencia" >
       <listitem open="0" type="814" id="146" label="codep" />
+      <listitem open="0" type="814" id="163" label="nombre" />
+      <listitem open="0" type="814" id="164" label="nombre_breve" />
       <listitem open="0" type="815" id="147" label="dependencia" />
       <listitem open="0" type="815" id="148" label="getAgentes" />
       <listitem open="0" type="815" id="150" label="getDependencias" />
       <listitem open="0" type="815" id="165" label="getNombre" />
       <listitem open="0" type="815" id="166" label="getNombreBreve" />
-      <listitem open="0" type="814" id="163" label="nombre" />
-      <listitem open="0" type="814" id="164" label="nombre_breve" />
      </listitem>
-     <listitem open="1" type="813" id="39" label="Hora" />
-     <listitem open="0" type="807" id="1" label="class diagram" />
+     <listitem open="1" type="813" id="39" label="MECON_Tiempo_Hora" />
     </listitem>
-    <listitem open="1" type="802" id="-1" label="Use Case View" >
-     <listitem open="1" type="811" id="76" label="Agente" />
+    <listitem open="0" type="802" id="-1" label="Use Case View" >
      <listitem open="1" type="805" id="2" label="Bandas2" />
-     <listitem open="1" type="811" id="3" label="Beti" />
-     <listitem open="1" type="812" id="4" label="Cambiar Credencial" />
      <listitem open="1" type="805" id="115" label="Cambiar Credencial" />
+     <listitem open="1" type="805" id="119" label="Mostrar Banda" />
+     <listitem open="1" type="805" id="117" label="Procesar Periodo" />
+     <listitem open="1" type="811" id="76" label="Agente" />
+     <listitem open="1" type="811" id="3" label="Beti" />
      <listitem open="1" type="811" id="74" label="Control de Accesos" />
+     <listitem open="1" type="811" id="78" label="RRHH" />
+     <listitem open="1" type="812" id="4" label="Cambiar Credencial" />
      <listitem open="1" type="812" id="77" label="Imprimir Banda" />
-     <listitem open="1" type="805" id="119" label="Mostrar Banda" />
      <listitem open="1" type="812" id="75" label="Mostrar Banda" />
      <listitem open="1" type="812" id="79" label="Mostrar Semaforo" />
-     <listitem open="1" type="805" id="117" label="Procesar Periodo" />
      <listitem open="1" type="812" id="6" label="Procesar Periodo" />
-     <listitem open="1" type="811" id="78" label="RRHH" />
     </listitem>
+    <listitem open="1" type="821" id="-1" label="Component View" />
+    <listitem open="0" type="823" id="-1" label="Diagrams" />
+    <listitem open="1" type="827" id="-1" label="Deployment View" />
    </listitem>
   </listview>
  </XMI.content>
index 657f0b124fdae6eb6f545d3187ff6ddaebfaf3f9..ea423fa3009ab7bac80d327b9f7eab61da7ad55d 100644 (file)
@@ -5,8 +5,9 @@
     <option key="config-file" value="xmi2code.config"/>
     <option key="config-file-set" value="false"/>
     <option key="handler" value="umbrello"/>
-    <option key="generator-path" value="../lib/MECON"/>
-    <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"/>
index fff7cbd5220d838de6e192a8bfa59ea016f2f8a5..d7cdb0a8340d30f5feec8503e850d77f7e2cd359 100644 (file)
@@ -4,12 +4,12 @@
                                     meconlib
 -------------------------------------------------------------------------------
 This file is part of meconlib.
-
 meconlib 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.
-
 meconlib 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.
@@ -32,7 +32,7 @@ require_once 'MECON/Tiempo/Hora.php';
 /**
  * @access public
  */
-class Agente {
+class MECON_Agente {
     /**
      * @var    int $agente
      * @access public
@@ -53,10 +53,10 @@ class Agente {
      * @access public
      */
     function getDependencia() // ~X2C
-  {
-      return $this->datos['codep'];//TODO esta no es la columna correcta
-  }
-  // -X2C
+    {
+        return $this->datos['codep'];//TODO esta no es la columna correcta
+    }
+    // -X2C
 
     // +X2C Operation 134
     /**
@@ -64,14 +64,14 @@ class Agente {
      * @access public
      */
     function getTipo() // ~X2C
-  {
-      if(!in_array('tipo_agente',array_keys($this->datos)))
-        return 'CON '.$this->datos['marco_legal'];
-      else
-        return $this->datos['tipo_agente'];
-      
-  }
-  // -X2C
+    {
+        if(!in_array('tipo_agente',array_keys($this->datos)))
+            return 'CON '.$this->datos['marco_legal'];
+        else
+            return $this->datos['tipo_agente'];
+
+    }
+    // -X2C
 
     // +X2C Operation 135
     /**
@@ -80,12 +80,12 @@ class Agente {
      * @return void
      * @access public
      */
-    function Agente($agente) // ~X2C
-  {
-      if(! is_null($agente))
-        $this->buscarAgente($agente);
-  }
-  // -X2C
+    function MECON_Agente($agente) // ~X2C
+    {
+        if(! is_null($agente))
+            $this->buscarAgente($agente);
+    }
+    // -X2C
 
     // +X2C Operation 138
     /**
@@ -93,10 +93,10 @@ class Agente {
      * @access public
      */
     function getNombre() // ~X2C
-  {
-      return $this->datos['nombre'];
-  }
-  // -X2C
+    {
+        return $this->datos['nombre'];
+    }
+    // -X2C
 
     // +X2C Operation 139
     /**
@@ -104,13 +104,13 @@ class Agente {
      * @access public
      */
     function getHoraDesde() // ~X2C
-  {
-      if(is_null($this->datos['hentra']))
-          return new Hora($this->datos['hora_desde']);
-      else
-          return new Hora($this->datos['hentra']);
-  }
-  // -X2C
+    {
+        if(is_null($this->datos['hentra']))
+            return new MECON_Tiempo_Hora($this->datos['hora_desde']);
+        else
+            return new MECON_Tiempo_Hora($this->datos['hentra']);
+    }
+    // -X2C
 
     // +X2C Operation 140
     /**
@@ -118,13 +118,13 @@ class Agente {
      * @access public
      */
     function getHoraHasta() // ~X2C
-  {
-      if(is_null($this->datos['hsale']))
-          return new Hora($this->datos['hora_hasta']);
-      else
-          return new Hora($this->datos['hsale']);
-  }
-  // -X2C
+    {
+        if(is_null($this->datos['hsale']))
+            return new MECON_Tiempo_Hora($this->datos['hora_hasta']);
+        else
+            return new MECON_Tiempo_Hora($this->datos['hsale']);
+    }
+    // -X2C
 
     // +X2C Operation 149
     /**
@@ -147,33 +147,32 @@ class Agente {
     function getOtrosDatos() // ~X2C
     {
         if(!is_null($this->datos['tipo_agente'])) {
-            $aux['tipo_doc'] = $this->datos['tipodoc']; 
-            $aux['fecha_nac'] = $this->datos['fecha_nac']; 
-            $aux['edad'] = $this->datos['edad']; 
-            $aux['estado_civil'] = $this->datos['estado_civil']; 
-            $aux['domicilio'] = $this->datos['domicilio']; 
-            $aux['puerta'] = $this->datos['num_puerta']; 
-            $aux['piso'] = $this->datos['piso']; 
-            $aux['depto'] = $this->datos['depto']; 
-            $aux['localidad'] = $this->datos['localidad']; 
-            $aux['provincia'] = $this->datos['provincia']; 
-            $aux['calle1'] = $this->datos['calle1']; 
-            $aux['calle2'] = $this->datos['calle2']; 
-            $aux['cp'] = $this->datos['cp']; 
-            $aux['telefono'] = $this->datos['telefono']; 
-            $aux['cargo'] = $this->datos['cargo']; 
-            $aux['nivel'] = $this->datos['nivel']; 
-            $aux['grado'] = $this->datos['grado']; 
-            $aux['func_ejec'] = $this->datos['func_ejec']; 
-            $aux['obra_social'] = $this->datos['obra_social']; 
-            $aux['afiliado'] = $this->datos['afiliado']; 
-            $aux['conyuge'] = $this->datos['conyuge']; 
-            $aux['fecha_nac_conyuge'] = $this->datos['fecha_nac_cony']; 
-            $aux['tipo_doc_conyuge'] = $this->datos['tipodoc_cony']; 
-            $aux['nro_doc_cony'] = $this->datos['nrodoc_cony']; 
+            $aux['tipo_doc'] = $this->datos['tipodoc'];
+            $aux['fecha_nac'] = $this->datos['fecha_nac'];
+            $aux['edad'] = $this->datos['edad'];
+            $aux['estado_civil'] = $this->datos['estado_civil'];
+            $aux['domicilio'] = $this->datos['domicilio'];
+            $aux['puerta'] = $this->datos['num_puerta'];
+            $aux['piso'] = $this->datos['piso'];
+            $aux['depto'] = $this->datos['depto'];
+            $aux['localidad'] = $this->datos['localidad'];
+            $aux['provincia'] = $this->datos['provincia'];
+            $aux['calle1'] = $this->datos['calle1'];
+            $aux['calle2'] = $this->datos['calle2'];
+            $aux['cp'] = $this->datos['cp'];
+            $aux['telefono'] = $this->datos['telefono'];
+            $aux['cargo'] = $this->datos['cargo'];
+            $aux['nivel'] = $this->datos['nivel'];
+            $aux['grado'] = $this->datos['grado'];
+            $aux['func_ejec'] = $this->datos['func_ejec'];
+            $aux['obra_social'] = $this->datos['obra_social'];
+            $aux['afiliado'] = $this->datos['afiliado'];
+            $aux['conyuge'] = $this->datos['conyuge'];
+            $aux['fecha_nac_conyuge'] = $this->datos['fecha_nac_cony'];
+            $aux['tipo_doc_conyuge'] = $this->datos['tipodoc_cony'];
+            $aux['nro_doc_cony'] = $this->datos['nrodoc_cony'];
             return $aux;
-        }else
-        {
+        } else {
             return false;
         }
     }
@@ -188,41 +187,38 @@ class Agente {
      */
     function buscarAgente($agente) // ~X2C
     {
-      $this->agente = $agente;
-      $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
-      $db = DB::connect($dsn);
-      if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
-      $sql = "SELECT * 
-              FROM web003
-             WHERE nrodoc = $agente";
-      $result = $db->query($sql);
-      if(DB::isError($result))
-        die($result->getMessage("query mal hecho"));
-      if($result->numRows() > 0)
-      {
-          $this->datos = $result->fetchRow(DB_FETCHMODE_ASSOC); 
-      }
-      else
-      {
-          $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
-          $db = DB::connect($dsn);
-          if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
-          $sql = "SELECT * 
-                  FROM Contratados
-                 WHERE nrodoc = $agente";
-          $result = $db->query($sql);
-          if(DB::isError($result))
+        $this->agente = $agente;
+        $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
+        $db = DB::connect($dsn);
+        if (DB::isError($db))
+            die ($db->getMessage("No pudo conectarse a la base"));
+        $sql = "SELECT *
+               FROM web003
+               WHERE nrodoc = $agente";
+        $result = $db->query($sql);
+        if(DB::isError($result))
             die($result->getMessage("query mal hecho"));
-          if($result->numRows() > 0)
-          {
+        if($result->numRows() > 0) {
             $this->datos = $result->fetchRow(DB_FETCHMODE_ASSOC);
-          }
-         else
-            return false;
-      }
-      return true;
+        } else {
+            $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
+            $db = DB::connect($dsn);
+            if (DB::isError($db))
+                die ($db->getMessage("No pudo conectarse a la base"));
+            $sql = "SELECT *
+                   FROM Contratados
+                   WHERE nrodoc = $agente";
+            $result = $db->query($sql);
+            if(DB::isError($result))
+                die($result->getMessage("query mal hecho"));
+            if($result->numRows() > 0) {
+                $this->datos = $result->fetchRow(DB_FETCHMODE_ASSOC);
+            } else
+                return false;
+        }
+        return true;
     }
     // -X2C
 
 } // -X2C Class :Agente
-?>
\ No newline at end of file
+?>
index cf0f9f8e332fd53c198b4d53738d1a8fa24c05bd..dbd341538d162f98bb10002e62d8ddd43200951f 100644 (file)
@@ -4,12 +4,12 @@
                                     meconlib
 -------------------------------------------------------------------------------
 This file is part of meconlib.
-
 meconlib 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.
-
 meconlib 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.
@@ -32,7 +32,7 @@ require_once 'DB.php';
 /**
  * @access protected
  */
-class Dependencia {
+class MECON_Dependencia {
     /**
      * @var    int $codep
      * @access public
@@ -60,27 +60,27 @@ class Dependencia {
      * @return void
      * @access public
      */
-    function dependencia($codep) // ~X2C
-  {
-    $this->codep = $codep;
-    $dsn = 'mysql://intranet:intranet@intranet-db/CODEP';
-    $db = DB::connect($dsn);
-    if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
-    $sql = "SELECT nombre, nombre_breve
-            FROM Dependencias
-            WHERE codigo_actual = '$this->codep' AND
-                dependencia_esta_activa = 1";
-    $result = $db->query($sql);
-    if(DB::isError($result))
-        die($result->getMessage("query mal hecho"));
-    if($result->numRows() > 0)
+    function MECON_Dependencia($codep) // ~X2C
     {
-        $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
-        $this->nombre = $row['nombre'];
-        $this->nombre_breve = $row['nombre_breve'];
+        $this->codep = $codep;
+        $dsn = 'mysql://intranet:intranet@intranet-db/CODEP';
+        $db = DB::connect($dsn);
+        if (DB::isError($db))
+            die ($db->getMessage("No pudo conectarse a la base"));
+        $sql = "SELECT nombre, nombre_breve
+               FROM Dependencias
+               WHERE codigo_actual = '$this->codep' AND
+               dependencia_esta_activa = 1";
+        $result = $db->query($sql);
+        if(DB::isError($result))
+            die($result->getMessage("query mal hecho"));
+        if($result->numRows() > 0) {
+            $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
+            $this->nombre = $row['nombre'];
+            $this->nombre_breve = $row['nombre_breve'];
+        }
     }
-  }
-  // -X2C
+    // -X2C
 
     // +X2C Operation 148
     /**
@@ -88,35 +88,37 @@ class Dependencia {
      * @access public
      */
     function getAgentes() // ~X2C
-  {
-//Planta y becarios      
-      $agentes = array();
-      $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
-      $db = DB::connect($dsn);
-      if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
-      $sql = "SELECT nrodoc 
-              FROM web003
-                 WHERE codep = '$this->codep'";
-      $result = $db->query($sql);
-      if(DB::isError($result))
-        die($result->getMessage("query mal hecho"));
-      while($row = $result->fetchRow())
-        $agentes[] = new Agente($row[0]);
-//Contratados    
-      $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
-      $db = DB::connect($dsn);
-      if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
-      $sql = "SELECT nrodoc 
-              FROM Contratados
-              WHERE codep = '$this->codep'";
-      $result = $db->query($sql);
-      if(DB::isError($result))
-        die($result->getMessage("query mal hecho"));
-      while($row = $result->fetchRow())
-        $agentes[] = new Agente($row[0]);
-      return $agentes;
-  }
-  // -X2C
+    {
+        //Planta y becarios
+        $agentes = array();
+        $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
+        $db = DB::connect($dsn);
+        if (DB::isError($db))
+            die ($db->getMessage("No pudo conectarse a la base"));
+        $sql = "SELECT nrodoc
+               FROM web003
+               WHERE codep = '$this->codep'";
+        $result = $db->query($sql);
+        if(DB::isError($result))
+            die($result->getMessage("query mal hecho"));
+        while($row = $result->fetchRow())
+            $agentes[] = new MECON_Agente($row[0]);
+        //Contratados
+        $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
+        $db = DB::connect($dsn);
+        if (DB::isError($db))
+            die ($db->getMessage("No pudo conectarse a la base"));
+        $sql = "SELECT nrodoc
+               FROM Contratados
+               WHERE codep = '$this->codep'";
+        $result = $db->query($sql);
+        if(DB::isError($result))
+            die($result->getMessage("query mal hecho"));
+        while($row = $result->fetchRow())
+            $agentes[] = new MECON_Agente($row[0]);
+        return $agentes;
+    }
+    // -X2C
 
     // +X2C Operation 150
     /**
@@ -126,19 +128,20 @@ class Dependencia {
      */
     function getDependencias() // ~X2C
     {
-      $dsn = 'mysql://intranet:intranet@intranet-db/CODEP';
-      $db = DB::connect($dsn);
-      if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
-      $sql = "SELECT codigo_actual 
-              FROM Dependencias
-                 WHERE dependencia_esta_activa = 1";
-      $result = $db->query($sql);
-      if(DB::isError($result))
-        die($result->getMessage("query mal hecho"));
-      $dependencias = array();
-      while($row = $result->fetchRow())
-        $dependencias[] = $row[0];
-      return $dependencias;
+        $dsn = 'mysql://intranet:intranet@intranet-db/CODEP';
+        $db = DB::connect($dsn);
+        if (DB::isError($db))
+            die ($db->getMessage("No pudo conectarse a la base"));
+        $sql = "SELECT codigo_actual
+               FROM Dependencias
+               WHERE dependencia_esta_activa = 1";
+        $result = $db->query($sql);
+        if(DB::isError($result))
+            die($result->getMessage("query mal hecho"));
+        $dependencias = array();
+        while($row = $result->fetchRow())
+            $dependencias[] = $row[0];
+        return $dependencias;
     }
     // -X2C
 
@@ -165,4 +168,4 @@ class Dependencia {
     // -X2C
 
 } // -X2C Class :Dependencia
-?>
\ No newline at end of file
+?>
index 8ae3f415eba5e883e517e2f3213cf8e07e12e179..336c1d98d3b386e12540f759e73a19af32bc58b4 100644 (file)
@@ -29,8 +29,7 @@ require_once('HTML/Image.php');
  * @author       Bertrand Mansion <bmansion@mamasam.com>
  * @access       public
  */
-class HTML_QuickForm_caritas extends HTML_QuickForm_element
-{   
+class MECON_HTML_QuickForm_caritas extends HTML_QuickForm_element {
     // {{{ properties
 
     /**
@@ -39,14 +38,14 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    private
      */
     var $radios = array();
-    
+
     /**
      * Default values of the SELECTs
      * @var       array
      * @access    private
      */
     var $_selected = null;
-    
+
     var $_cols = 5;
 
 
@@ -57,7 +56,7 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      */
     var $_flagFrozen = false;
 
-// +X2C Operation 533
+    // +X2C Operation 533
     /**
      * Lista archivos devolviendo un array apropiado para un SELECT.
      *
@@ -92,9 +91,8 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    void
      */
-     
-    function HTML_QuickForm_caritas($elementName=null, $elementLabel=null, $options=array(), $attributes=null)
-    {
+
+    function MECON_HTML_QuickForm_caritas($elementName=null, $elementLabel=null, $options=array(), $attributes=null) {
         HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes);
         $this->_persistantFreeze = true;
         $this->_type = 'caritas';
@@ -116,21 +114,20 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    private
      * @return    void
      */
-    function _setDefaults($options)
-    {
+    function _setDefaults($options) {
         if (isset($options['cols'])) {
             $this->setCols($options['cols']);
         }
-       /* if (isset($options['language'])) {
-            $this->setLanguage($options['language']);
-        }
-        if (isset($options['minYear'])) {
-            $this->setMinYear($options['minYear']);
-        }
-        if (isset($options['maxYear'])) {
-            $this->setMaxYear($options['maxYear']);
-        }
-      */
+        /* if (isset($options['language'])) {
+             $this->setLanguage($options['language']);
+         }
+         if (isset($options['minYear'])) {
+             $this->setMinYear($options['minYear']);
+         }
+         if (isset($options['maxYear'])) {
+             $this->setMaxYear($options['maxYear']);
+         }
+        */
     } // end func _setDefaults
 
     // }}}
@@ -142,8 +139,7 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    void
      */
-    function setCols($cols)
-    {
+    function setCols($cols) {
         $this->_cols = $cols;
     } //end func setCols
 
@@ -153,8 +149,7 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    void
      */
-    function setName($name)
-    {
+    function setName($name) {
         $this->name = $name;
     } //end func setName
 
@@ -166,8 +161,7 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    string
      */
-    function setValue($value)
-    {
+    function setValue($value) {
         $this->_selected = $value;
     } //end func getName
 
@@ -176,8 +170,7 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    string
      */
-    function setSelected($value)
-    {
+    function setSelected($value) {
         $this->_selected = $value;
     } //end func getName
 
@@ -186,8 +179,7 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    string
      */
-    function getValue()
-    {
+    function getValue() {
         return $this->_selected;
     } //end func getName
 
@@ -196,8 +188,7 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    string
      */
-    function getSelected()
-    {
+    function getSelected() {
         return $this->_selected;
     } //end func getName
 
@@ -206,8 +197,7 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    string
      */
-    function getName()
-    {
+    function getName() {
         return $this->name;
     } //end func getName
 
@@ -219,15 +209,13 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    void
      */
-    function _createRadios()
-    {
+    function _createRadios() {
         $this->caritas= array();
         $elementName = $this->name;
         $dir = MECON_DIR_FS_IMG.'/caritas';
         $cant=5;
         $i=1;
-        foreach ($this->listarArchivos($dir,'','.gif') as $nombre)
-        {
+        foreach ($this->listarArchivos($dir,'','.gif') as $nombre) {
             $this->radios[$nombre] = &new HTML_QuickForm_radio($elementName, '', '', $nombre, $this->getAttributes());
         }
     } // end func _createSelects
@@ -242,9 +230,8 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @access    public
      * @return    string
      * @throws    
- */    
-    function toHtml()
-    {
+    */
+    function toHtml() {
         $this->_createRadios();
         $strHtml = '';
         $i = 1;
@@ -287,28 +274,27 @@ class HTML_QuickForm_caritas extends HTML_QuickForm_element
      * @return    void
      * @throws    
      */
-    function onQuickFormEvent($event, $arg, &$caller)
-    {
+    function onQuickFormEvent($event, $arg, &$caller) {
         switch ($event) {
-            case 'updateValue':
+        case 'updateValue':
                 // constant values override both default and submitted ones
                 // default values are overriden by submitted
                 $value = $this->_findValue($caller->_constantValues);
+            if (null === $value) {
+                $value = $this->_findValue($caller->_submitValues);
                 if (null === $value) {
-                    $value = $this->_findValue($caller->_submitValues);
-                    if (null === $value) {
-                        $value = $this->_findValue($caller->_defaultValues);
-                    }
-                }
-                if (null !== $value) {
-                    $this->setSelected($value);
+                    $value = $this->_findValue($caller->_defaultValues);
                 }
-                break;
-            case 'setGroupValue':
-                $this->setSelected($arg);
-                break;
-            default:
-                parent::onQuickFormEvent($event, $arg, $caller);
+            }
+            if (null !== $value) {
+                $this->setSelected($value);
+            }
+            break;
+        case 'setGroupValue':
+            $this->setSelected($arg);
+            break;
+        default:
+            parent::onQuickFormEvent($event, $arg, $caller);
         }
         return true;
     } // end func onQuickFormEvent
index 6e5a8d3c1c66f5df0ab5e81279adcb2cbe7218d4..803fd315d7e3d1fab5ef26559671392666c56c0f 100644 (file)
@@ -4,12 +4,12 @@
                                     meconlib
 -------------------------------------------------------------------------------
 This file is part of meconlib.
-
 meconlib 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.
-
 meconlib 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.
@@ -33,8 +33,7 @@ require_once 'Validate.php';
  * Modificado para que cumpla con los requisitos de mecon
  *
  */
-class HTML_QuickForm_mdate extends HTML_QuickForm_date
-{   
+class MECON_HTML_QuickForm_mdate extends HTML_QuickForm_date {
     // {{{ constructor
 
     /**
@@ -47,19 +46,18 @@ class HTML_QuickForm_mdate extends HTML_QuickForm_date
      * @access    public
      * @return    void
      */
-    function HTML_QuickForm_mdate($elementName=null, $elementLabel=null, $options=array(), $attributes=null)
-    {
+    function MECON_HTML_QuickForm_mdate($elementName=null, $elementLabel=null, $options=array(), $attributes=null) {
         $this->_options = array ('es' => array (
-                                               'weekdays_short'=> array ('' => '--', 'Dom', 'Lun', 'Mar', 'Mié', 'Jue', 'Vie', 'Sáb'),
-                                               'weekdays_long' => array ('' => '--', 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'),
-                                               'months_short'  => array ('' => '--', 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'),
-                                               'months_long'   => array ('' => '--', 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septimbre', 'Octubre', 'Noviembre', 'Diciembre')
-                                )
-                        );
-                        
+                                           'weekdays_short'=> array ('' => '--', 'Dom', 'Lun', 'Mar', 'Mié', 'Jue', 'Vie', 'Sáb'),
+                                           'weekdays_long' => array ('' => '--', 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'),
+                                           'months_short'  => array ('' => '--', 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'),
+                                           'months_long'   => array ('' => '--', 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septimbre', 'Octubre', 'Noviembre', 'Diciembre')
+                                       )
+                                );
+
         parent::HTML_QuickForm_date($elementName, $elementLabel,
-            array_merge(array('language'=>'es','format'=>'d F Y'), $options),
-            $attributes);
+                                    array_merge(array('language'=>'es','format'=>'d F Y'), $options),
+                                    $attributes);
     } //end constructor
 
     // }}}
@@ -74,19 +72,18 @@ class HTML_QuickForm_mdate extends HTML_QuickForm_date
      * @access public
      * @return array An array of numeric options.
      */
-    function _createNumericOptionList($start, $end)
-    {
+    function _createNumericOptionList($start, $end) {
         $options = array();
-        //TODO 
+        //TODO
         //Verificar que esto este funcionando bien.
         $options[''] = '--';
         //Hasta aca
         for ($i = $start; $i <= $end; $i++) {
             $options[$i] = sprintf('%02d', $i);
         }
-        
+
         return $options;
-        
+
     } // end func _createNumericOptionList
 
     /**
@@ -96,12 +93,10 @@ class HTML_QuickForm_mdate extends HTML_QuickForm_date
      * @access public
      * @return object Date.
      */
-    function &getValue()
-    {
+    function &getValue() {
         if ($this->_selectedDate['Y']) {
             return new Date (sprintf("%04d-%02d-%02d 00:00:00",$this->_selectedDate['Y'],$this->_selectedDate['F'],$this->_selectedDate['d']));
-        } 
-        else {
+        } else {
             return null;
         }
     } // end func getValue
@@ -115,17 +110,18 @@ class HTML_QuickForm_mdate extends HTML_QuickForm_date
      * @access public
      * @return bool
      */
-    function validate($valor, $nombre, $formato = '')
-    {
+    function validate($valor, $nombre, $formato = '') {
         // Si viene completamente lleno, se valida con el paquete Validate.
         if ($valor['Y'] and $valor['d'] and $valor['F']) {
             $str = sprintf('%4d-%02d-%02d', $valor['Y'], $valor['F'], $valor['d']);
             return  Validate::date($str, array('format' => '%Y-%m-%d'));
-        // Si viene completamente vacio, es valido.
-        } elseif (!$valor['Y'] and !$valor['d'] and !$valor['F']) {
+            // Si viene completamente vacio, es valido.
+        }
+        elseif (!$valor['Y'] and !$valor['d'] and !$valor['F']) {
             return true;
-        // Si viene a medio completar, es invalido.
-        } else {
+            // Si viene a medio completar, es invalido.
+        }
+        else {
             return false;
         }
     } // end func validate
index fb94486fe266595957b8eca6760d74f15ec2d7bd..f5ab77b81a89533933fa06f22290954a084c1fa5 100644 (file)
@@ -34,8 +34,9 @@ class MECON_HTML_QuickFormSimple extends HTML_QuickForm {
     function MECON_HTML_QuickFormSimple($formName='', $method='post', $action='', $target='_self', $attributes=null)
     {
         parent::HTML_QuickForm($formName, $method, $action, $target, $attributes);
-        $this->registerElementType('mdate', 'MECON/HTML/QuickForm/mdate.php', 'HTML_QuickForm_mdate');
-        $this->registerRule('fecha', 'function', 'validate', 'HTML_QuickForm_mdate');
+        $this->registerElementType('mdate', 'MECON/HTML/QuickForm/mdate.php', 'MECON_HTML_QuickForm_mdate');
+        $this->registerRule('fecha', 'function', 'validate', 'MECON_HTML_QuickForm_mdate');
+        $this->registerElementType('caritas', 'MECON/HTML/QuickForm/caritas.php', 'MECON_HTML_QuickForm_caritas');
         $this->setRequiredNote('<font color="red">*</font> indica un campo obligatorio');
         $this->setJsWarnings('Hay errores en el formulario:', 'Por favor corríjalos antes de continuar.');
     }
index a5d6a21c791288e1e621f8646eb578a1f2859320..785ba4ecfc9de5908ed815df6bb0690d9453ce9a 100644 (file)
@@ -25,9 +25,9 @@ require_once "MECON/Tiempo/Intervalo.php";
  * @version $Rev: 339 $
  * @author  Gonzalo Merayo <gmeray@mecon.gov.ar>
  */
-class Novedad {
-  var $codigo = null;
-  
-  var $intervalo = null;
-  
+class MECON_Novedad {
+    var $codigo = null;
+
+    var $intervalo = null;
+
 }
index e1ce6e370b4851d52ab383217d70bfc6eeb9826d..ca6c66de64889f91de1fd36c3d88968fe21573d0 100644 (file)
@@ -30,146 +30,134 @@ require_once 'MECON/Tiempo/Hora.php';
  */
 class NovedadesDia {
 
-  var $novedades = array();
-
-  var $agente = null;
-
-  var $fecha = null;
-
-  var $_db = null;
-
-
-  function NovedadesDia($agente, $fecha)
-  {
-    #validar el tipo de $fecha
-    $this->agente = $agente;
-    $this->fecha = $fecha;
-    
-    #Ver de donde sacar esto bonito...
-    $dsn = "mysql://intranet:intranet@localhost/novedades";
-    $this->_db = DB::connect( $dsn , true);
-    if(DB::isError($this->_db))
-      die($this->_db->getMessage());
-    #Carga las novedades del agente/fecha en la lista de novedades
-    $this->BuscarLicencia();
-    $this->BuscarNovedadesTemporales();
-    $this->BuscarNovedadDiaria();
-  }
-
-  function deLicencia()
-  {
-    $licencias = array('Adp','Asa','Fal','Fran','FES/REL','Grem','Interrup','Sus','10a',  ->'10a/d','10c','10d','10g','10h','10i','10j','10j/c','13Ia','13Ia/s','13Ia/u','13Ib',->'13Ic','13Id','13Id/a','13Id/h','13Ie','13Ig','13IIa','13IIb','13IIc','13IId',      ->'13IIe','1363/97-2','14a','14b','14b1','14b2','14c','14d','14f','14g','14h','15a',  ->'15b','15c','9');
-    $anti_licencias = ('Interr/13a','Interr/9');
-    foreach($this->novedades as $nov)
-    {
-      if(in_array($nov->codigo, $anti_licencias))
+    var $novedades = array();
+
+    var $agente = null;
+
+    var $fecha = null;
+
+    var $_db = null;
+
+
+    function NovedadesDia($agente, $fecha) {
+#validar el tipo de $fecha
+        $this->agente = $agente;
+        $this->fecha = $fecha;
+
+#Ver de donde sacar esto bonito...
+
+        $dsn = "mysql://intranet:intranet@localhost/novedades";
+        $this->_db = DB::connect( $dsn , true);
+        if(DB::isError($this->_db))
+            die($this->_db->getMessage());
+#Carga las novedades del agente/fecha en la lista de novedades
+
+        $this->BuscarLicencia();
+        $this->BuscarNovedadesTemporales();
+        $this->BuscarNovedadDiaria();
+    }
+
+    function deLicencia() {
+        $licencias = array('Adp','Asa','Fal','Fran','FES/REL','Grem','Interrup','Sus','10a',  ->'10a/d','10c','10d','10g','10h','10i','10j','10j/c','13Ia','13Ia/s','13Ia/u','13Ib',->'13Ic','13Id','13Id/a','13Id/h','13Ie','13Ig','13IIa','13IIb','13IIc','13IId',      ->'13IIe','1363/97-2','14a','14b','14b1','14b2','14c','14d','14f','14g','14h','15a',  ->'15b','15c','9');
+        $anti_licencias = ('Interr/13a','Interr/9');
+        foreach($this->novedades as $nov) {
+            if(in_array($nov->codigo, $anti_licencias))
+                return false;
+            if(in_array($nov->codigo, $licencias))
+                return true;
+        }
+        return false;
+    }
+
+    function enComicion() {
+        foreach($this->novedades as $nov)
+        if($nov->codigo == 'com')
+            return true;
         return false;
-      if(in_array($nov->codigo, $licencias))
-        return true;
     }
-    return false;
-  }
-  
-  function enComicion()
-  {
-    foreach($this->novedades as $nov)
-      if($nov->codigo == 'com')
-        return true;
-    return false;
-  }
-
-  function esFranco()
-  {
-    foreach($this->novedades as $nov)
-      if($nov->codigo == 'Fran')
-        return true;
-    return false;
-  }
-
-  function debioVenir()
-  {
-    $ret = true;
-    foreach($this->novedades as $novedad)
-    {
-      if(!($novedad->codigo == 'Adde'
-         or $novedad->codigo == 'Aden'
-         or $novedad->codigo == 'Ato'
-         or $novedad->codigo == 'Atp'))
-         $ret = false;         
+
+    function esFranco() {
+        foreach($this->novedades as $nov)
+        if($nov->codigo == 'Fran')
+            return true;
+        return false;
     }
-    return $ret;
-  }
-
-  function getAtos()
-  {
-    $atos = array();
-    foreach($this->novedades as $nov)
-      if($nov->codigo == 'ato')
-        array_push($atos, $nov);
-    return $atos;
-  }
-
-  function BuscarLicencia()
-  {
-    $fecha = $this->fecha->format("%Y%m%d");
-    $query = "SELECT codnov
-              FROM web018
-              WHERE docagente = $this->agente
-              AND diadesde <= $fecha
-              AND diahasta >= $fecha";
-    $result = $this->_db->query($query);
-    if(DB::isError($result))
-      die($result->getMessage());
-    while($r = $result->fetchRow())
-    {
-      $novedad = new Novedad();
-      $novedad->codigo = $r[0];
-      array_push($this->novedades, $novedad);
+
+    function debioVenir() {
+        $ret = true;
+        foreach($this->novedades as $novedad) {
+            if(!($novedad->codigo == 'Adde'
+                    or $novedad->codigo == 'Aden'
+                    or $novedad->codigo == 'Ato'
+                    or $novedad->codigo == 'Atp'))
+                $ret = false;
+        }
+        return $ret;
     }
-  }
-  
-  function BuscarNovedadesTemporales()
-  {
-    $fecha = $this->fecha->getYear()."-".
-             $this->fecha->getMonth()."-".
-             $this->fecha->getDay();
-    $query = "SELECT novedad, desde, hasta
-              FROM parciales
-              WHERE fecha = '$fecha'
-              AND  nrodoc = $this->agente";
-    $result = $this->_db->query($query);
-    if(DB::isError($result))
-      die($result->getMessage());
-    while($r = $result->fetchRow())
-    {
-      $novedad = new Novedad();
-      $novedad->codigo = $r[0];
-      $novedad->intervalo = new Intervalo(new Hora($r[1]), new Hora($r[2]));
-      array_push($this->novedades, $novedad);
+
+    function getAtos() {
+        $atos = array();
+        foreach($this->novedades as $nov)
+        if($nov->codigo == 'ato')
+            array_push($atos, $nov);
+        return $atos;
+    }
+
+    function BuscarLicencia() {
+        $fecha = $this->fecha->format("%Y%m%d");
+        $query = "SELECT codnov
+                 FROM web018
+                 WHERE docagente = $this->agente
+                 AND diadesde <= $fecha
+                 AND diahasta >= $fecha";
+        $result = $this->_db->query($query);
+        if(DB::isError($result))
+            die($result->getMessage());
+        while($r = $result->fetchRow()) {
+            $novedad = new MECON_Novedad();
+            $novedad->codigo = $r[0];
+            array_push($this->novedades, $novedad);
+        }
+    }
+
+    function BuscarNovedadesTemporales() {
+        $fecha = $this->fecha->getYear()."-".
+                 $this->fecha->getMonth()."-".
+                 $this->fecha->getDay();
+        $query = "SELECT novedad, desde, hasta
+                 FROM parciales
+                 WHERE fecha = '$fecha'
+                 AND  nrodoc = $this->agente";
+        $result = $this->_db->query($query);
+        if(DB::isError($result))
+            die($result->getMessage());
+        while($r = $result->fetchRow()) {
+            $novedad = new MECON_Novedad();
+            $novedad->codigo = $r[0];
+            $novedad->intervalo = new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora($r[1]), new MECON_Tiempo_Hora($r[2]));
+            array_push($this->novedades, $novedad);
+        }
+
     }
 
-  }
-
-  function BuscarNovedadDiaria()
-  {
-    $mes = $this->fecha->getMonth();
-    $dia = $this->fecha->getDay() + 0; //el +0 hace que tome al dia como numero
-                                       //y no le agregue un 0 si es < que 10
-    $ano = $this->fecha->getYear();
-    $query = "SELECT novedad 
-              FROM web020
-              WHERE anio = $ano
-              AND   mes  = $mes
-              AND nrodoc = $this->agente
-              AND dia$dia = 1";
-    $result = $this->_db->query($query);
-    if($c = $result->fetchRow())
-    {
-      $codigo = $c[0];
-      $novedad = new Novedad();
-      $novedad->codigo = $codigo;
-      array_push($this->novedades, $novedad);
+    function BuscarNovedadDiaria() {
+        $mes = $this->fecha->getMonth();
+        $dia = $this->fecha->getDay() + 0; //el +0 hace que tome al dia como numero
+        //y no le agregue un 0 si es < que 10
+        $ano = $this->fecha->getYear();
+        $query = "SELECT novedad
+                 FROM web020
+                 WHERE anio = $ano
+                 AND   mes  = $mes
+                 AND nrodoc = $this->agente
+                 AND dia$dia = 1";
+        $result = $this->_db->query($query);
+        if($c = $result->fetchRow()) {
+            $codigo = $c[0];
+            $novedad = new MECON_Novedad();
+            $novedad->codigo = $codigo;
+            array_push($this->novedades, $novedad);
+        }
     }
-  }
 
 }
index 8fe1d49054cd966bc0eff4fd81a60eeb58de88c1..448888523ba493407c624878e8b5f56f7b212559 100644 (file)
@@ -4,12 +4,12 @@
                                     meconlib
 -------------------------------------------------------------------------------
 This file is part of meconlib.
-
 meconlib 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.
-
 meconlib 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.
@@ -35,344 +35,333 @@ require_once 'MECON/Tiempo/Intervalo.php';
  * @version $Rev$
  * @author  Gonzalo Merayo <gmeray@mecon.gov.ar>
  */
-class Banda {
+class MECON_Tiempo_Banda {
 
-  var $intervalos;
+    var $intervalos;
 
-  function Banda() {
-    $this->intervalos = array();
-  }
-  function Cargar($agente, $fecha)
-  {
-    // FIXME - lo que es base de datos debe VOLAR!!!!!!!
-    $dsn = "mysql://intranet:intranet@intranet-db/bandas";
-    $db =& DB::connect($dsn , true);
-    if(DB::isError($db))
-      die($db->getMessage());
+    function MECON_Tiempo_Banda() {
+        $this->intervalos = array();
+    }
 
-    $funcion = $db->getOne(
-        "SELECT E.funcion
-            FROM novedades.estado as E, novedades.web003 as S
-            WHERE
-                E.nrodoc = $agente AND
-                S.nrodoc = $agente AND
-                S.codep  = E.dependencia"
-    );
+    function Cargar($agente, $fecha) {
+        // FIXME - lo que es base de datos debe VOLAR!!!!!!!
+        $dsn = "mysql://intranet:intranet@intranet-db/bandas";
+        $db =& DB::connect($dsn , true);
+        if(DB::isError($db))
+            die($db->getMessage());
 
-    $fecha = $fecha->format("%Y%m%d");
-    $query = "SELECT A.tipo_acceso, A.hora 
-              FROM agentes G, accesos A
-              WHERE G.cred = A.cred
-              AND G.docu = $agente
-              AND A.fecha = $fecha
-              AND A.inconsistencia = 0
-              ORDER BY A.hora";
-    $result = $db->query($query);
-    if(DB::isError($result))
-      die($result->getMessage());
+        $funcion = $db->getOne(
+                       "SELECT E.funcion
+                       FROM novedades.estado as E, novedades.web003 as S
+                       WHERE
+                       E.nrodoc = $agente AND
+                       S.nrodoc = $agente AND
+                       S.codep  = E.dependencia"
+                   );
 
-    if($funcion != 'SE')
-    {//Version tough
-      $int = null;
-      while( $r = $result->fetchRow() )
-      {
-        if($r[0] == 'E') $int = new Intervalo(new Hora( $r[1] ), new Hora( $r[1] ));
-        if($r[0] == 'S' && $int != null)
-        {
-          $int->setFin( new Hora( $r[1] ) );
-          $this->agregarIntervalo( $int );
-          $int = null;
-        }
-      }
-    }
-    else
-    {
-      if($result->numRows() > 0)
-      {//Version Light o Serenos
-        $int = new Intervalo(new Hora('00:00'), new Hora('00:00'));
-        while( $r = $result->fetchRow() )
-        {
-          if($r[0] == 'E') $int = new Intervalo(new Hora( $r[1] ), new Hora( $r[1] ));
-          if($r[0] == 'S' && $int != null)
-          {
-            $int->setFin( new Hora( $r[1] ) );
-            $this->agregarIntervalo( $int );
+        $fecha = $fecha->format("%Y%m%d");
+        $query = "SELECT A.tipo_acceso, A.hora
+                 FROM agentes G, accesos A
+                 WHERE G.cred = A.cred
+                 AND G.docu = $agente
+                 AND A.fecha = $fecha
+                 AND A.inconsistencia = 0
+                 ORDER BY A.hora";
+        $result = $db->query($query);
+        if(DB::isError($result))
+            die($result->getMessage());
+
+        if($funcion != 'SE') {//Version tough
             $int = null;
-          }
-        }
-        if($int != null)
-        {
-          $int->setFin( new Hora('24:00') );
-          $this->agregarIntervalo( $int );
-          $int = null;
+            while( $r = $result->fetchRow() ) {
+                if($r[0] == 'E')
+                    $int = new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora( $r[1] ), new MECON_Tiempo_Hora( $r[1] ));
+                if($r[0] == 'S' && $int != null) {
+                    $int->setFin( new MECON_Tiempo_Hora( $r[1] ) );
+                    $this->agregarIntervalo( $int );
+                    $int = null;
+                }
+            }
+        } else {
+            if($result->numRows() > 0) {//Version Light o Serenos
+                $int = new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora('00:00'), new MECON_Tiempo_Hora('00:00'));
+                while( $r = $result->fetchRow() ) {
+                    if($r[0] == 'E')
+                        $int = new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora( $r[1] ), new MECON_Tiempo_Hora( $r[1] ));
+                    if($r[0] == 'S' && $int != null) {
+                        $int->setFin( new MECON_Tiempo_Hora( $r[1] ) );
+                        $this->agregarIntervalo( $int );
+                        $int = null;
+                    }
+                }
+                if($int != null) {
+                    $int->setFin( new MECON_Tiempo_Hora('24:00') );
+                    $this->agregarIntervalo( $int );
+                    $int = null;
+                }
+            }
         }
-      }
     }
-  }
 
-  /*
-  *
-  * Completa las salidas del medio del dia.
-  *
-  */
-  function CompletarSalidas()
-  {
-    if(count($this->intervalos) > 0)
-    {
-      $p = reset($this->intervalos);
-      $u = end($this->intervalos);
-      $p->setFin($u->fin);
-      $this->intervalos = array($p);
+    /*
+    *
+    * Completa las salidas del medio del dia.
+    *
+    */
+    function CompletarSalidas() {
+        if(count($this->intervalos) > 0) {
+            $p = reset($this->intervalos);
+            $u = end($this->intervalos);
+            $p->setFin($u->fin);
+            $this->intervalos = array($p);
+        }
     }
-  }
 
 
-  /**
-  * Agrega un intervalo a la banda
-  * Chequeando superposiciones y en orden
-  *
-  * @param Intervalo $intervalo Intervalo a agregar.
-  */
-  function agregarIntervalo($intervalo)
-  {
-    if(! is_a($intervalo, "intervalo")) return false;
-    if ($intervalo->invertido()) {
-        $intervalo->_chequear();
-        $this->agregarIntervalo(new Intervalo(new Hora('00:00'), new Hora ('24:00')));
-        $this->sacarIntervalo($intervalo);
-        return true;
-    }
-    $n_intervalos = array();
-    $insertado = false;
-    // recorre el vector de intervalos
-    foreach( $this->intervalos as $i )
-    {
-      // si se superpone con alguno, fusionar con ese
-      if($i->seSuperpone($intervalo))
-        $intervalo->fusionar($i);
-      else{
-        if($i->inicio->greater($intervalo->inicio) && ! $insertado)
-        {
-          array_push($n_intervalos, $intervalo);
-          $insertado = true;
+    /**
+    * Agrega un intervalo a la banda
+    * Chequeando superposiciones y en orden
+    *
+    * @param Intervalo $intervalo Intervalo a agregar.
+    */
+    function agregarIntervalo($intervalo) {
+        if(! is_a($intervalo, "mecon_tiempo_intervalo"))
+            return false;
+        if ($intervalo->invertido()) {
+            $intervalo->_chequear();
+            $this->agregarIntervalo(new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora('00:00'), new MECON_Tiempo_Hora ('24:00')));
+            $this->sacarIntervalo($intervalo);
+            return true;
+        }
+        $n_intervalos = array();
+        $insertado = false;
+        // recorre el vector de intervalos
+        foreach( $this->intervalos as $i ) {
+            // si se superpone con alguno, fusionar con ese
+            if($i->seSuperpone($intervalo))
+                $intervalo->fusionar($i);
+            else {
+                if($i->inicio->greater($intervalo->inicio) && ! $insertado) {
+                    array_push($n_intervalos, $intervalo);
+                    $insertado = true;
+                }
+                array_push($n_intervalos, $i);
+            }
         }
-        array_push($n_intervalos, $i);
-      }
+        if(! $insertado )
+            array_push($n_intervalos,$intervalo);
+        $this->intervalos = $n_intervalos;
+        return true;
     }
-    if(! $insertado ) array_push($n_intervalos,$intervalo);
-    $this->intervalos = $n_intervalos;
-    return true;
-  }
-
-  /**
-  * Saca 
-  *
-  *
-  */
-  function sacarBanda($banda)
-  {
-    foreach($banda->intervalos as $i)
-      $this->sacarIntervalo($i);
-  }
 
-  /**
-  * Saca un intervalo de una banda horaria.
-  *
-  */
-  function sacarIntervalo($intervalo)
-  {
-    if(! is_a($intervalo, "intervalo")) return false;
-    // Si el intervalo está vacío, no hace nada.
-    $dur = $intervalo->getDuracion();
-    if ($dur->isEmpty()) {
-        return true;
+    /**
+    * Saca 
+    *
+    *
+    */
+    function sacarBanda($banda) {
+        foreach($banda->intervalos as $i)
+        $this->sacarIntervalo($i);
     }
-    $n_intervalos = array();
-    // recorre el vector de intervalos
-    foreach( $this->intervalos as $i )
-    {
-      if($i->seSuperpone($intervalo)) {
-        $a = $i->cortar($intervalo);
-        $d = $a->getDuracion();
-        if($d->toSeconds() > 0) {
-          $n_intervalos[] = $a;
+
+    /**
+    * Saca un intervalo de una banda horaria.
+    *
+    */
+    function sacarIntervalo($intervalo) {
+        if(! is_a($intervalo, "mecon_tiempo_intervalo"))
+            return false;
+        // Si el intervalo está vacío, no hace nada.
+        $dur = $intervalo->getDuracion();
+        if ($dur->isEmpty()) {
+            return true;
         }
-        $d = $i->getDuracion();
-        if($d->toSeconds() > 0) {
-          $n_intervalos[] = $i;
+        $n_intervalos = array();
+        // recorre el vector de intervalos
+        foreach( $this->intervalos as $i ) {
+            if($i->seSuperpone($intervalo)) {
+                $a = $i->cortar($intervalo);
+                $d = $a->getDuracion();
+                if($d->toSeconds() > 0) {
+                    $n_intervalos[] = $a;
+                }
+                $d = $i->getDuracion();
+                if($d->toSeconds() > 0) {
+                    $n_intervalos[] = $i;
+                }
+            } else {
+                $n_intervalos[] = $i;
+            }
         }
-      } else {
-        $n_intervalos[] = $i;
-      }
+        $this->intervalos = $n_intervalos;
+        return true;
+
     }
-    $this->intervalos = $n_intervalos;
-    return true;
-    
-  }
 
-  function sacarTiempo($t)
-  {
-    if(! is_a($t, "date_span")) return false;
-    $n_int = array();
-    while(count($this->intervalos) > 0)
-    {
-      $int = array_shift($this->intervalos);
-      if($t->toSeconds() > 0){
-        $d = $int->getDuracion();
-        if($d->greater($t))
-        {
-          #con cortar alcanza
-          $ini = new Hora();
-          $ini->copy($int->inicio);
-          $ini->add($t);
-          /*TODO guardar este tiempo como rechazado*/$int->cortar($ini);
-          $t->setFromSeconds(0);
-        }else{
-          #con cortar no alcanza y hay que sacar...
-          $t->subtract($int->getDuracion());
-          /*TODO guardar int como rechazado*/
+    function sacarTiempo($t) {
+        if(! is_a($t, "date_span"))
+            return false;
+        $n_int = array();
+        while(count($this->intervalos) > 0) {
+            $int = array_shift($this->intervalos);
+            if($t->toSeconds() > 0) {
+                $d = $int->getDuracion();
+                if($d->greater($t)) {
+#con cortar alcanza
+                    $ini = new MECON_Tiempo_Hora();
+                    $ini->copy($int->inicio);
+                    $ini->add
+                    ($t);
+                    /*TODO guardar este tiempo como rechazado*/
+                    $int->cortar($ini);
+                    $t->setFromSeconds(0);
+                } else {
+#con cortar no alcanza y hay que sacar...
+                    $t->subtract($int->getDuracion());
+                    /*TODO guardar int como rechazado*/
+                }
+            }
+            $n_int[] = $int;
         }
-      }
-      $n_int[] = $int;
+        $this->intervalos = $n_int;
     }
-    $this->intervalos = $n_int;
-  }
 
-  /*
-  * Chequea si el intervalo pedido esta cubierto por la banda, si faltan
-  *  horas en la banta se retorna el tiempo que falta
-  *
-  * @return Date_Span el periodo faltante
-  *
-  */
-  function chequearIntervalo($intervalo)
-  {
-    if(! is_a($intervalo, "intervalo")) return false;
-    $t = new Hora();
-    foreach ($this->intervalos as $i)
-      $t->add($i->superponer($intervalo));
-    $d = $intervalo->getDuracion();
-    $d->subtract($t);
-    return $d;
-  }
+    /*
+    * Chequea si el intervalo pedido esta cubierto por la banda, si faltan
+    *  horas en la banta se retorna el tiempo que falta
+    *
+    * @return Date_Span el periodo faltante
+    *
+    */
+    function chequearIntervalo($intervalo) {
+        if(! is_a($intervalo, "mecon_tiempo_intervalo"))
+            return false;
+        $t = new MECON_Tiempo_Hora();
+        foreach ($this->intervalos as $i)
+        $t->add
+        ($i->superponer($intervalo));
+        $d = $intervalo->getDuracion();
+        $d->subtract($t);
+        return $d;
+    }
 
-  /*
-  * Chequea si la banda(parametro) esta cubierto por la banda(this),
-  *  si faltan horas en la banda(this) para llegar a banda(parametro)
-  *  se retorna el tiempo que falta
-  *
-  * @return Date_Span el periodo faltante
-  *
-  */
-  function chequearBanda($banda)
-  {
-    if(! is_a($banda, "banda")) return false;
-    $f = new Hora();
-    foreach ($banda->intervalos as $i)
-      $f->add($this->chequearIntervalo($i));
-    return $f;
-  }
+    /*
+    * Chequea si la banda(parametro) esta cubierto por la banda(this),
+    *  si faltan horas en la banda(this) para llegar a banda(parametro)
+    *  se retorna el tiempo que falta
+    *
+    * @return Date_Span el periodo faltante
+    *
+    */
+    function chequearBanda($banda) {
+        if(! is_a($banda, "mecon_tiempo_banda"))
+            return false;
+        $f = new MECON_Tiempo_Hora();
+        foreach ($banda->intervalos as $i)
+        $f->add
+        ($this->chequearIntervalo($i));
+        return $f;
+    }
 
 
-  /*
-  * Devuelve una representacion del objeto como un string.
-  *
-  * @return string Representacion del objeto.
-  *
-  */
-  function toString()
-  {
-    $s = '';
-    $t = count($this->intervalos);
-    for ($n = 0; $n < ($t - 1); $n++) {
-        $s .= "intervalo $n: [" . $this->intervalos[$n]->toString() . '] | ';
-    }
-    $n = $t - 1;
-    if ($n != -1) {
-        $s .= "intervalo $n: [" . $this->intervalos[$n]->toString() . ']';
+    /*
+    * Devuelve una representacion del objeto como un string.
+    *
+    * @return string Representacion del objeto.
+    *
+    */
+    function toString() {
+        $s = '';
+        $t = count($this->intervalos);
+        for ($n = 0; $n < ($t - 1); $n++) {
+            $s .= "intervalo $n: [" . $this->intervalos[$n]->toString() . '] | ';
+        }
+        $n = $t - 1;
+        if ($n != -1) {
+            $s .= "intervalo $n: [" . $this->intervalos[$n]->toString() . ']';
+        }
+        return $s;
     }
-    return $s;
-  }
 
-  function getIntervalos() {
-    return $this->intervalos;
-  }
+    function getIntervalos() {
+        return $this->intervalos;
+    }
 
-  /**
-   * Corta una banda, devolviendo la banda previa al punto de corte.
-   *
-   * La banda actual queda con los intervalos posteriores al punto de corte
-   * y se devuelve la banda con los intervalos anteriores.
-   * El punto de corte puede ser tanto una hora como un intervalo.
-   *
-   * @param mixed $c Donde cortar.
-   *
-   * @return object Banda Bnada anterior al punto de corte.
-   */
-  function cortar($c)
-  {
-    if(!is_a($c, 'hora') and !is_a($c, 'intervalo')) return false;
-    $b = $this->__clone();
-    $b->intervalos = array();
-    $intervalos = array();
-    foreach ($this->intervalos as $i) {
-      $a = $i->cortar($c);
-      $da = $a->getDuracion();
-      if (!$da->isEmpty()) {
-        $b->agregarIntervalo($a);
-      }
-      $di = $i->getDuracion();
-      if (!$di->isEmpty()) {
-        $intervalos[] = $i;
-      }
+    /**
+     * Corta una banda, devolviendo la banda previa al punto de corte.
+     *
+     * La banda actual queda con los intervalos posteriores al punto de corte
+     * y se devuelve la banda con los intervalos anteriores.
+     * El punto de corte puede ser tanto una hora como un intervalo.
+     *
+     * @param mixed $c Donde cortar.
+     *
+     * @return object Banda Bnada anterior al punto de corte.
+     */
+    function cortar($c) {
+        if(!is_a($c, 'mecon_tiempo_hora') and !is_a($c, 'mecon_tiempo_intervalo'))
+            return false;
+        $b = $this->__clone();
+        $b->intervalos = array();
+        $intervalos = array();
+        foreach ($this->intervalos as $i) {
+            $a = $i->cortar($c);
+            $da = $a->getDuracion();
+            if (!$da->isEmpty()) {
+                $b->agregarIntervalo($a);
+            }
+            $di = $i->getDuracion();
+            if (!$di->isEmpty()) {
+                $intervalos[] = $i;
+            }
+        }
+        $this->intervalos = $intervalos;
+        return $b;
     }
-    $this->intervalos = $intervalos;
-    return $b;
-  }
 
-  /**
-   * Devuelve el timpo total que contiene la banda.
-   *
-   * @return object Date_Span Tiempo total.
-   */
-  function total() {
-    $t = new Date_Span;
-    foreach ($this->intervalos as $i) {
-      $t->add($i->getDuracion());
+    /**
+     * Devuelve el timpo total que contiene la banda.
+     *
+     * @return object Date_Span Tiempo total.
+     */
+    function total() {
+        $t = new Date_Span;
+        foreach ($this->intervalos as $i) {
+            $t->add
+            ($i->getDuracion());
+        }
+        return $t;
     }
-    return $t;
-  }
 
-  /**
-   * Alias de Banda::total() para compatibilidad con Intervalo.
-   *
-   * @return object Date_Span Tiempo total.
-   */
-  function getDuracion() {
-    return $this->total();
-  }
+    /**
+     * Alias de Banda::total() para compatibilidad con Intervalo.
+     *
+     * @return object Date_Span Tiempo total.
+     */
+    function getDuracion() {
+        return $this->total();
+    }
 
-  /**
-   * Resetea la banda.
-   */
-  function flush() {
-    $this->intervalos = array();
-  }
+    /**
+     * Resetea la banda.
+     */
+    function flush() {
+        $this->intervalos = array();
+    }
 
-  function copy($b) {
-    $this->flush();
-    foreach ($b->intervalos as $i) {
-      $this->intervalos[] = $i->__clone();
+    function copy($b) {
+        $this->flush();
+        foreach ($b->intervalos as $i) {
+            $this->intervalos[] = $i->__clone();
+        }
     }
-  }
 
-  function __clone() {
-    $class = get_class($this);
-    $b = new $class;
-    $b->copy($this);
-    return $b;
-  }
+    function __clone() {
+        $class = get_class($this);
+        $b = new $class;
+        $b->copy($this);
+        return $b;
+    }
 
 }
 
index 46ffc0b9350d32d3f554625b3f4245b53a814e3e..34c87530ae4e62ddb22ed897e83f9e907c57a71e 100644 (file)
@@ -4,12 +4,12 @@
                                     meconlib
 -------------------------------------------------------------------------------
 This file is part of meconlib.
-
 meconlib 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.
-
 meconlib 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.
@@ -34,20 +34,22 @@ require_once 'Date/Span.php';
  * @version $Rev$
  * @author  Gonzalo Merayo <gmeray@mecon.gov.ar>
  */
-class Hora extends Date_Span {
+class MECON_Tiempo_Hora extends Date_Span {
 
-  function set($str)
-  {
-    $str = strval($str);
-    if (preg_match('/^\d+$/', $str)) {
-        if ($str < 24) {
-            $str = sprintf('0:%02d:00:00', $str );
-        } elseif ($str == 24 or $str == 2400) {
-            $str = '1:00:00:00';
-        } elseif ($str < 2400) {
-            switch (strlen($str)) {
+    function set
+        ($str) {
+        $str = strval($str);
+        if (preg_match('/^\d+$/', $str)) {
+            if ($str < 24) {
+                $str = sprintf('0:%02d:00:00', $str );
+            }
+            elseif ($str == 24 or $str == 2400) {
+                $str = '1:00:00:00';
+            }
+            elseif ($str < 2400) {
+                switch (strlen($str)) {
                 case 2:
-                    $str = sprintf('0:%02d:%02d:00', $str{0}, $str{1});
+                        $str = sprintf('0:%02d:%02d:00', $str{0}, $str{1});
                     break;
                 case 3:
                     $str = sprintf('0:%02d:%02d:00', $str{0}, $str{1} . $str{2});
@@ -55,38 +57,46 @@ class Hora extends Date_Span {
                 case 4:
                     $str = sprintf('0:%02d:%02d:00', $str{0} . $str{1}, $str{2} . $str{3});
                     break;
+                }
+            }
+            else {
+                return false;
             }
-        } else {
-            return false;
         }
-    } elseif (preg_match('/^(\d{0,2})\D(\d{1,2})$/', $str, $m)) {
-        if ($m[1] < 24 and $m[2] < 60) {
-            $str = sprintf('0:%02d:%02d:00', $m[1], $m[2]);
-        } elseif ($m[1] == 24 and $m[2] == 0) {
-            $str = '1:00:00:00';
-        } else {
-            return false;
+        elseif (preg_match('/^(\d{0,2})\D(\d{1,2})$/', $str, $m)) {
+            if ($m[1] < 24 and $m[2] < 60) {
+                $str = sprintf('0:%02d:%02d:00', $m[1], $m[2]);
+            }
+            elseif ($m[1] == 24 and $m[2] == 0) {
+                $str = '1:00:00:00';
+            }
+            else {
+                return false;
+            }
+        }
+        elseif (preg_match('/^(\d{0,2})\D(\d{1,2})\D(\d{1,2})$/', $str, $m)) {
+            if ($m[1] < 24 and $m[2] < 60 and $m[3] < 60) {
+                $str = sprintf('0:%02d:%02d:%02d', $m[1], $m[2], $m[3]);
+            }
+            elseif ($m[1] == 24 and $m[2] == 0 and $m[3] == 0) {
+                $str = '1:00:00:00';
+            }
+            else {
+                return false;
+            }
         }
-    } elseif (preg_match('/^(\d{0,2})\D(\d{1,2})\D(\d{1,2})$/', $str, $m)) {
-        if ($m[1] < 24 and $m[2] < 60 and $m[3] < 60) {
-            $str = sprintf('0:%02d:%02d:%02d', $m[1], $m[2], $m[3]);
-        } elseif ($m[1] == 24 and $m[2] == 0 and $m[3] == 0) {
-            $str = '1:00:00:00';
-        } else {
+        else {
             return false;
         }
-    } else {
-        return false;
+        $this->setFromString($str, "%D:%H:%M:%S");
+        return true;
     }
-    $this->setFromString($str, "%D:%H:%M:%S");
-    return true;
-  }
 
-  function get()
-  {
-    return $this->format("%E:%M");
-  }
+    function get
+        () {
+        return $this->format("%E:%M");
+    }
 
 }
 
-?>
\ No newline at end of file
+?>
index d69d5346eabd880f1672b441f680d90afdae26e1..01a005de29e5854bcddc94c78cc371d355768c09 100644 (file)
@@ -4,12 +4,12 @@
                                     meconlib
 -------------------------------------------------------------------------------
 This file is part of meconlib.
-
 meconlib 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.
-
 meconlib 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.
@@ -33,207 +33,217 @@ require_once 'MECON/Tiempo/Hora.php';
  * @version $Rev$
  * @author  Gonzalo Merayo <gmeray@mecon.gov.ar>
  */
-class Intervalo {
-  /**
-   *
-   * Hora de inicio del intervalo
-   *
-   * @var object Hora
-   */
-  var $inicio;    
-  
-  /**
-   *
-   * Hora de fin del intervalo
-   *
-   * @var object Hora
-   */
-  var $fin;
-
-  /**
-   * Constructor.
-   *
-   * @param Hora $inicio   Hora de inicio (por defecto cero).
-   * @param Hora $fin      Hora de fin (por defecto cero).
-   * @param bool $chequear Invierte el intervalo si la hora de
-   *                       fin es anterior a la de inicio.
-   *                       
-   */
-  function Intervalo( $inicio = null, $fin = null, $chequear = true ) {
-    if (is_null($inicio)) $inicio = new Hora;
-    if (is_null($fin)) $fin = new Hora;
-    if(!is_a($inicio, 'hora')) return false;
-    if(!is_a($fin,    'hora')) return false;
-    $this->inicio = $inicio;
-    $this->fin    = $fin;
-    if ($chequear) {
+class MECON_Tiempo_Intervalo {
+    /**
+     *
+     * Hora de inicio del intervalo
+     *
+     * @var object Hora
+     */
+    var $inicio;
+
+    /**
+     *
+     * Hora de fin del intervalo
+     *
+     * @var object Hora
+     */
+    var $fin;
+
+    /**
+     * Constructor.
+     *
+     * @param Hora $inicio   Hora de inicio (por defecto cero).
+     * @param Hora $fin      Hora de fin (por defecto cero).
+     * @param bool $chequear Invierte el intervalo si la hora de
+     *                       fin es anterior a la de inicio.
+     *                       
+     */
+    function MECON_Tiempo_Intervalo( $inicio = null, $fin = null, $chequear = true ) {
+        if (is_null($inicio))
+            $inicio = new MECON_Tiempo_Hora;
+        if (is_null($fin))
+            $fin = new MECON_Tiempo_Hora;
+        if(!is_a($inicio, 'mecon_tiempo_hora'))
+            return false;
+        if(!is_a($fin,    'mecon_tiempo_hora'))
+            return false;
+        $this->inicio = $inicio;
+        $this->fin    = $fin;
+        if ($chequear) {
+            $this->_chequear();
+        }
+    }
+
+    function _chequear() {
+        $a = $this->fin;
+        if($a->lower($this->inicio)) {
+            $tmp = $this->fin;
+            $this->fin = $this->inicio;
+            $this->inicio = $tmp;
+        }
+    }
+
+    function invertido() {
+        return $this->fin->lower($this->inicio);
+    }
+
+    function setInicio( $inicio ) {
+        if(! is_a($inicio, 'mecon_tiempo_hora'))
+            return false;
+        $this->inicio = $inicio;
         $this->_chequear();
     }
-  }
-
-  function _chequear()
-  {
-    $a = $this->fin;
-    if($a->lower($this->inicio))
-    {
-      $tmp = $this->fin;
-      $this->fin = $this->inicio;
-      $this->inicio = $tmp;
+
+    /**
+     *
+     * setFin
+     *
+     * @param var $fin
+     *
+     */
+    function setFin( $fin ) {
+        if(! is_a($fin,'mecon_tiempo_hora'))
+            return false;
+        $this->fin = $fin;
+        $this->_chequear();
     }
-  }
-
-  function invertido()
-  {
-    return $this->fin->lower($this->inicio);
-  }
-  
-  function setInicio( $inicio ) {
-    if(! is_a($inicio, "hora")) return false;
-    $this->inicio = $inicio;
-    $this->_chequear();
-  }
-
-  /**
-   *
-   * setFin
-   *
-   * @param var $fin
-   *
-   */
-  function setFin( $fin )
-  {
-    if(! is_a($fin, "hora")) return false;
-    $this->fin = $fin;
-    $this->_chequear();
-  }
-
-  function getDuracion()
-  {
-    $c = new Hora;
-    $c->copy($this->fin);
-    $c->subtract($this->inicio);
-    return $c;
-  }
-
-  // XXX - Amplié el método para comparar con varios intervalos a la vez,
-  // si el argumento no es un array, anda de todas maneras.
-  function seSuperpone( $intervalos )
-  {
-    if (!is_array($intervalos)) $intervalos = array($intervalos);
-    foreach ($intervalos as $i) {
-        if (is_a($i, "intervalo")) {
-            if ($i->fin->greaterEqual($this->inicio) &&
-                $this->fin->greaterEqual($i->inicio)) return true;
-            if ($this->fin->greaterEqual($i->inicio) &&
-                $i->fin->greaterEqual($this->inicio)) return true;
-        }
+
+    function getDuracion() {
+        $c = new MECON_Tiempo_Hora;
+        $c->copy($this->fin);
+        $c->subtract($this->inicio);
+        return $c;
     }
-    return false;
-  }
-
-  function fusionar( $f )
-  {
-    if(! is_a($f, "intervalo")) return false;
-    if(! $this->seSuperpone( $f )) return false;
-    if($f->fin->greater($this->fin))
-      $this->fin = $f->fin;
-    if($f->inicio->lower($this->inicio))
-      $this->inicio = $f->inicio;
-    return true;
-  }
-
-  function superponer( $i )
-  {
-    if(! is_a($i, "intervalo")) return false;
-    $inicio = $this->inicio;
-    $fin = $this->fin;
-    if($this->inicio->lower($i->inicio)) $inicio = $i->inicio;
-    if($this->fin->greater( $i->fin   )) $fin = $i->fin;
-    $fin->subtract($inicio);
-    return $fin;
-  }
-
-  /**
-   * Corta un intervalo, devolviendo el intervalo previo al punto de corte.
-   * El intervalo actual queda con el intervalo posterior al punto de corte.
-   * El punto de corte puede ser tanto una hora como un intervalo.
-   *
-   * @param mixed $c Donde cortar.
-   *
-   * @return object Intervalo Intervalo anterior al punto de corte.
-   */
-  function cortar($c)
-  {
-    if(is_a($c, 'hora')) {
-        return $this->cortarHora($c);
-    } elseif (is_a($c, 'intervalo')) {
-        return $this->cortarIntervalo($c);
-    } else {
+
+    // XXX - Amplié el método para comparar con varios intervalos a la vez,
+    // si el argumento no es un array, anda de todas maneras.
+    function seSuperpone( $intervalos ) {
+        if (!is_array($intervalos))
+            $intervalos = array($intervalos);
+        foreach ($intervalos as $i) {
+            if (is_a($i, 'mecon_tiempo_intervalo')) {
+                if ($i->fin->greaterEqual($this->inicio) &&
+                        $this->fin->greaterEqual($i->inicio))
+                    return true;
+                if ($this->fin->greaterEqual($i->inicio) &&
+                        $i->fin->greaterEqual($this->inicio))
+                    return true;
+            }
+        }
         return false;
     }
-  }
-
-  /**
-   * Corta un intervalo, devolviendo el intervalo previo a la hora de corte.
-   * El intervalo actual queda con el intervalo posterior a la hora de corte.
-   *
-   * @param mixed $h Donde cortar.
-   *
-   * @return object Intervalo Intervalo anterior a la hora de corte.
-   */
-  function cortarHora($h)
-  {
-    if (!is_a($h, 'hora')) return false;
-    $class = get_class($this);
-    $r = new $class;
-    $r->copy($this);
-    if($this->inicio->greater($h)) {
-      $r->setFin($r->inicio);
-      return $r;
+
+    function fusionar( $f ) {
+        if(! is_a($f, 'mecon_tiempo_intervalo'))
+            return false;
+        if(! $this->seSuperpone( $f ))
+            return false;
+        if($f->fin->greater($this->fin))
+            $this->fin = $f->fin;
+        if($f->inicio->lower($this->inicio))
+            $this->inicio = $f->inicio;
+        return true;
+    }
+
+    function superponer( $i ) {
+        if(! is_a($i, 'mecon_tiempo_intervalo'))
+            return false;
+        $inicio = $this->inicio;
+        $fin = $this->fin;
+        if($this->inicio->lower($i->inicio))
+            $inicio = $i->inicio;
+        if($this->fin->greater( $i->fin   ))
+            $fin = $i->fin;
+        $fin->subtract($inicio);
+        return $fin;
+    }
+
+    /**
+     * Corta un intervalo, devolviendo el intervalo previo al punto de corte.
+     * El intervalo actual queda con el intervalo posterior al punto de corte.
+     * El punto de corte puede ser tanto una hora como un intervalo.
+     *
+     * @param mixed $c Donde cortar.
+     *
+     * @return object Intervalo Intervalo anterior al punto de corte.
+     */
+    function cortar($c) {
+        if(is_a($c, 'mecon_tiempo_hora')) {
+            return $this->cortarHora($c);
+        }
+        elseif (is_a($c, 'mecon_tiempo_intervalo')) {
+            return $this->cortarIntervalo($c);
+        }
+        else {
+            return false;
+        }
+    }
+
+    /**
+     * Corta un intervalo, devolviendo el intervalo previo a la hora de corte.
+     * El intervalo actual queda con el intervalo posterior a la hora de corte.
+     *
+     * @param mixed $h Donde cortar.
+     *
+     * @return object Intervalo Intervalo anterior a la hora de corte.
+     */
+    function cortarHora($h) {
+        if (!is_a($h, 'mecon_tiempo_hora'))
+            return false;
+        $class = get_class($this);
+        $r = new $class;
+        $r->copy($this);
+        if($this->inicio->greater($h)) {
+            $r->setFin($r->inicio);
+            return $r;
+        }
+        if($this->fin->lowerEqual($h)) {
+            $this->setInicio($this->fin);
+        } else {
+            $this->setInicio($h);
+            $r->setFin($h);
+        }
+        return $r;
     }
-    if($this->fin->lowerEqual($h)) {
-      $this->setInicio($this->fin);
-    }else{
-      $this->setInicio($h);
-      $r->setFin($h);
+
+    /**
+     * Corta un intervalo, devolviendo el intervalo previo al intervalo de corte.
+     * El intervalo actual queda con el intervalo posterior al intervalo de corte.
+     *
+     * @param mixed $i Donde cortar.
+     *
+     * @return object Intervalo Intervalo anterior al intervalo de corte.
+     */
+    function cortarIntervalo($i) {
+        if (!is_a($i, 'mecon_tiempo_intervalo'))
+            return false;
+        $ant = $this->cortarHora($i->inicio);
+        $this->cortarHora($i->fin);
+        return $ant;
     }
-    return $r;
-  }
-
-  /**
-   * Corta un intervalo, devolviendo el intervalo previo al intervalo de corte.
-   * El intervalo actual queda con el intervalo posterior al intervalo de corte.
-   *
-   * @param mixed $i Donde cortar.
-   *
-   * @return object Intervalo Intervalo anterior al intervalo de corte.
-   */
-  function cortarIntervalo($i)
-  {
-    if (!is_a($i, 'intervalo')) return false;
-    $ant = $this->cortarHora($i->inicio);
-    $this->cortarHora($i->fin);
-    return $ant;
-  }
 
     function toString() {
         return 'inicio: ' . $this->inicio->format() . ' | fin: ' . $this->fin->format();
     }
 
     function copy($int = null) {
-        if (!(is_a($int, 'intervalo'))) return false; 
-        $this->inicio = new Hora($int->inicio->get());
-        $this->fin = new Hora($int->fin->get());
-        return true;  
+        if (!(is_a($int, 'mecon_tiempo_intervalo')))
+            return false;
+        $this->inicio = new MECON_Tiempo_Hora($int->inicio->get
+                                 ());
+        $this->fin = new MECON_Tiempo_Hora($int->fin->get
+                              ());
+        return true;
     }
 
-  function __clone() {
-    $class = get_class($this);
-    $i = new $class;
-    $i->inicio = $this->inicio->__clone();
-    $i->fin    = $this->fin->__clone();
-    return $i;
-  }
+    function __clone() {
+        $class = get_class($this);
+        $i = new $class;
+        $i->inicio = $this->inicio->__clone();
+        $i->fin    = $this->fin->__clone();
+        return $i;
+    }
 
 }
 
index bdfd064b0d96d28b03a2d851ac579b46b987df80..be7fe89584e281e710aa5a4a3ad3dfa6a41184d3 100644 (file)
@@ -4,12 +4,12 @@
                                     meconlib
 -------------------------------------------------------------------------------
 This file is part of meconlib.
-
 meconlib 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.
-
 meconlib 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.
@@ -37,28 +37,28 @@ class MECON_Usuario {
      */
     var $dni;
 
-     /**
-     * @var    string $login
-     * @access public
-     */
+    /**
+    * @var    string $login
+    * @access public
+    */
     var $login;
 
 
-   /**
-     * @var    string $nombre
-     * @access public
-     */
+    /**
+      * @var    string $nombre
+      * @access public
+      */
     var $nombre;
-   /**
-     * @var    string $dsn
-     * @access public
-     */
+    /**
+      * @var    string $dsn
+      * @access public
+      */
     var $dsn = 'mysql://intranet:intranet@bal747f.mecon.ar/usuario';
 
 
     // ~X2C
 
-// +X2C Operation 138
+    // +X2C Operation 138
     /**
      * @param  string $dni 
      *
@@ -66,38 +66,34 @@ class MECON_Usuario {
      * @access public
      */
     function ArmarconDNI($dni) // ~X2C
-  {
+    {
         $db = DB::connect($this->dsn);
-        if (DB::isError($db)) 
-        {
+        if (DB::isError($db)) {
             die ($db->getMessage("No pudo conectarse a la base"));
-        }
-        else
-        {
+        } else {
             $sql = "SELECT login,nombre
-                    from Usuario
-                    where dni = $dni";
+                   from Usuario
+                   where dni = $dni";
             $result = $db->query($sql);
 
-            if ($result->NumRows()>0){
+            if ($result->NumRows()>0) {
                 $row = $result->fetchRow();
                 $login = $row[0];
                 $nombre = $row[1];
                 $this->login=$login;
                 $this->nombre=$nombre;
                 $this->dni=$dni;
-            }
-            else {
+            } else {
                 die ('El dni '.$dni.' no existe, debe loguearse al
-                        menos una vez a la intranet.');
+                     menos una vez a la intranet.');
             }
 
         }
-  }
-  // -X2C
+    }
+    // -X2C
 
 
-// +X2C Operation 136
+    // +X2C Operation 136
     /**
      * @param  string $login 
      *
@@ -105,39 +101,35 @@ class MECON_Usuario {
      * @access public
      */
     function ArmarconLOGIN($login) // ~X2C
-  {
+    {
         $db = DB::connect($this->dsn);
-        if (DB::isError($db)) 
-        {
+        if (DB::isError($db)) {
             die ($db->getMessage("No pudo conectarse a la base"));
-        }
-        else
-        {
-            
+        } else {
+
             //$login = ereg_replace ("@", "\\\@", $login);
             $sql = "SELECT dni,nombre
-                    from Usuario
-                    where login = '$login'";
+                   from Usuario
+                   where login = '$login'";
 
             $result = $db->query($sql);
-           
-            if ($result->NumRows()>0){
+
+            if ($result->NumRows()>0) {
                 $row = $result->fetchRow();
                 $dni = $row[0];
                 $nombre = $row[1];
                 $this->dni=$dni;
                 $this->nombre=$nombre;
                 $this->login=$login;
-            }
-            else {
+            } else {
                 die ('El usuario '.$login.' no existe, debe loguearse al
-                        menos una vez a la intranet.');
+                     menos una vez a la intranet.');
             }
         }
-  }
-  // -X2C
+    }
+    // -X2C
 
-     // +X2C Operation 135
+    // +X2C Operation 135
     /**
      * @param  int $dni 
      *
@@ -145,22 +137,20 @@ class MECON_Usuario {
      * @access public
      */
     function MECON_Usuario($dni = NULL, $login = NULL) // ~X2C
-  {
-      if(! is_null($dni))
-      {
+    {
+        if(! is_null($dni)) {
             $this->ArmarconDNI($dni);
             $this->buscarUsuarioDNI($dni);
-      }
-      if(! is_null($login))
-      {
+        }
+        if(! is_null($login)) {
             $this->ArmarconLOGIN($login);
             $this->buscarUsuarioDNI($this->getDni());
-      }
-        
-  }
-  // -X2C
+        }
+
+    }
+    // -X2C
 
-  // +X2C Operation 136
+    // +X2C Operation 136
     /**
      * @param  int $uario 
      *
@@ -168,34 +158,30 @@ class MECON_Usuario {
      * @access public
      */
     function Insertar_Usuario($dni = NULL, $login = NULL, $nombre = NULL) // ~X2C
-  {
-      if((! is_null($dni)) && (! is_null($login)) && (! is_null($nombre)))
-      {
-        $db = DB::connect($this->dsn);
-        if (DB::isError($db)) 
-        {
-            die ($db->getMessage("No pudo conectarse a la base"));
-        }
-        else
-        {
-            $sql = "REPLACE INTO Usuario (login,dni,nombre) 
-                    values ('$login',$dni,'$nombre')";
-            $result = $db->query($sql);
+    {
+        if((! is_null($dni)) && (! is_null($login)) && (! is_null($nombre))) {
+            $db = DB::connect($this->dsn);
+            if (DB::isError($db)) {
+                die ($db->getMessage("No pudo conectarse a la base"));
+            } else {
+                $sql = "REPLACE INTO Usuario (login,dni,nombre)
+                       values ('$login',$dni,'$nombre')";
+                $result = $db->query($sql);
+            }
         }
-      }
-  }
-  // -X2C
+    }
+    // -X2C
 
-// +X2C Operation 136
+    // +X2C Operation 136
     /**
      * @return int
      * @access public
      */
     function getDni() // ~X2C
-  {
-      return $this->dni;
-  }
-  // -X2C
+    {
+        return $this->dni;
+    }
+    // -X2C
 
     // +X2C Operation 137
     /**
@@ -203,10 +189,10 @@ class MECON_Usuario {
      * @access public
      */
     function getLogin() // ~X2C
-  {
-      return $this->login;
-  }
-  // -X2C
+    {
+        return $this->login;
+    }
+    // -X2C
 
     // +X2C Operation 138
     /**
@@ -214,13 +200,13 @@ class MECON_Usuario {
      * @access public
      */
     function getNombre() // ~X2C
-  {
-      return $this->nombre;
-  }
-  // -X2C
+    {
+        return $this->nombre;
+    }
+    // -X2C
+
 
-   
-   // +X2C Operation 154
+    // +X2C Operation 154
     /**
      * @param  int $dni 
      *
@@ -229,44 +215,41 @@ class MECON_Usuario {
      */
     function buscarUsuarioDNI($dni) // ~X2C
     {
-      $this->dni = $dni;
-      $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
-      $db = DB::connect($dsn);
-      if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
-      $sql = "SELECT nombre
-              FROM web003
-             WHERE nrodoc = $dni";
-      $result = $db->query($sql);
-      if(DB::isError($result)) {
-        die($result->getMessage("query mal hecho"));
-      }
-      if($result->numRows() > 0)
-      {
-          $row = $result->fetchRow(); 
-          $nombre = $row[0];
-          $this->nombre = $nombre; 
-      }
-      else
-      {
-          $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
-          $db = DB::connect($dsn);
-          if (DB::isError($db)) die ($db->getMessage("No pudo conectarse a la base"));
-          $sql = "SELECT nombre 
-                  FROM Contratados
-                 WHERE nrodoc = $dni";
-          $result = $db->query($sql);
-          if(DB::isError($result))
+        $this->dni = $dni;
+        $dsn = 'mysql://intranet:intranet@intranet-db/novedades';
+        $db = DB::connect($dsn);
+        if (DB::isError($db))
+            die ($db->getMessage("No pudo conectarse a la base"));
+        $sql = "SELECT nombre
+               FROM web003
+               WHERE nrodoc = $dni";
+        $result = $db->query($sql);
+        if(DB::isError($result)) {
             die($result->getMessage("query mal hecho"));
-          if($result->numRows() > 0)
-          {
-            $row = $result->fetchRow(); 
+        }
+        if($result->numRows() > 0) {
+            $row = $result->fetchRow();
             $nombre = $row[0];
-            $this->nombre = $nombre; 
-          }
-         else
-            return false;
-      }
-      return true;
+            $this->nombre = $nombre;
+        } else {
+            $dsn = 'mysql://intranet:intranet@intranet-db/Contratados';
+            $db = DB::connect($dsn);
+            if (DB::isError($db))
+                die ($db->getMessage("No pudo conectarse a la base"));
+            $sql = "SELECT nombre
+                   FROM Contratados
+                   WHERE nrodoc = $dni";
+            $result = $db->query($sql);
+            if(DB::isError($result))
+                die($result->getMessage("query mal hecho"));
+            if($result->numRows() > 0) {
+                $row = $result->fetchRow();
+                $nombre = $row[0];
+                $this->nombre = $nombre;
+            } else
+                return false;
+        }
+        return true;
     }
     // -X2C
 
@@ -281,15 +264,15 @@ class MECON_Usuario {
     function verificarLogin($login = null) {
         if ($login) {
             $db = DB::connect($this->dsn);
-            if (PEAR::isError($db)) { 
+            if (PEAR::isError($db)) {
                 return $db;
             }
             $sql = "SELECT count(*) as cuenta FROM Usuario WHERE login = '$login'";
             $result = $db->query($sql);
-            if (PEAR::isError($result)) { 
+            if (PEAR::isError($result)) {
                 return $result;
             }
-            $row = $result->fetchRow(DB_FETCHMODE_ASSOC); 
+            $row = $result->fetchRow(DB_FETCHMODE_ASSOC);
             if ($row['cuenta'] != 0) {
                 return true;
             }
@@ -298,4 +281,4 @@ class MECON_Usuario {
     }
 
 } // -X2C Class :MECON_Usuario
-?>
\ No newline at end of file
+?>
index 737130b6b70b2280661d857f3e11604ab70c511d..a176d5826f0113e17c04ed7ceabed78f7c5c431d 100644 (file)
@@ -15,7 +15,7 @@
     $tmp = ini_get('include_path');
     ini_set('include_path', "/home/mmarrese/public_html/HTML/php:$tmp");
     require_once 'Tabla.php';
-    $TABLA2 = new Tabla ('width="500" align="right"');
+    $TABLA2 = new MECON_HTML_Tabla ('width="500" align="right"');
     $row =  array ('R0C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');
     $TABLA2->addRow($row,'cabecera'); 
     $row =  array ('R1C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');    
@@ -28,7 +28,7 @@
    
     print $tohtml."<BR><BR><BR>";
     echo 'DEPRECATED <BR>';
-    $TABLA = new Tabla ('width="500" align="right"');
+    $TABLA = new MECON_HTML_Tabla ('width="500" align="right"');
     $row =  array ('R0C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');
     $TABLA->agregarFilaCabecera($row); 
     $row =  array ('R1C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');    
@@ -52,7 +52,7 @@
     print $tohtml."<BR><BR><BR>";
 ///////////////////////////////////////////////////////////////////////////////////////////    
     echo 'PRECATED<BR>';
-    $TABLA2 = new Tabla ('width="500" align="right"');
+    $TABLA2 = new MECON_HTML_Tabla ('width="500" align="right"');
     $row =  array ('R0C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');
     $TABLA2->addRow($row,'cabecera colspan=10'); 
     $row =  array ('R1C0','R1C1','R1C2','R2C3','R2C4','R2C5','R2C6','R2C7','R2C8','R2C9');    
index 69d5cbb92174709a340c432a6367c680e1d14566..8e052c2ec46f8c34887adf37218b2ae661fd79d0 100644 (file)
@@ -9,7 +9,7 @@
                              'cache'    => 'false',
                              'simple'   => 'true'));
 
-    $abm_form = new Tabla();
+    $abm_form = new MECON_HTML_Tabla();
     $row = array ('sarasa','sarasa2');
     $abm_form->agregarFilaCabecera($row);