--- /dev/null
+<?php
+// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
+// +--------------------------------------------------------------------+
+// | HORAS EXTRA |
+// +--------------------------------------------------------------------+
+// | Sistema de Horas Extra - Ministerio de EconomÃa - Argentina |
+// +--------------------------------------------------------------------+
+// | Creado: lun abr 22 16:05:33 ART 2002 |
+// | Autor: Gonzalo Merayo <gmeray@mecon.gov.ar> |
+// +--------------------------------------------------------------------+
+//
+// $URL: http://portal.mecon.ar/svn/he/tronco/src/lib/he/HE/Novedad.php $
+// $Rev: 339 $
+// $Date: 2003-04-10 16:07:47 -0300 (Thu, 10 Apr 2003) $
+// $Author: llucar $
+//
+
+require_once "MECON/Tiempo/Intervalo.php";
+
+/**
+ * Representa un Intervalo entre 2 horas del mismo dia
+ *
+ * @package HE
+ * @abstract
+ * @version $Rev: 339 $
+ * @author Gonzalo Merayo <gmeray@mecon.gov.ar>
+ */
+class Novedad {
+ var $codigo = null;
+
+ var $intervalo = null;
+
+}
--- /dev/null
+<?php
+// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
+// +--------------------------------------------------------------------+
+// | HORAS EXTRA |
+// +--------------------------------------------------------------------+
+// | Sistema de Horas Extra - Ministerio de EconomÃa - Argentina |
+// +--------------------------------------------------------------------+
+// | Creado: lun abr 22 16:05:33 ART 2002 |
+// | Autor: Gonzalo Merayo <gmeray@mecon.gov.ar> |
+// +--------------------------------------------------------------------+
+//
+// $URL: http://portal.mecon.ar/svn/he/tronco/src/lib/he/HE/NovedadesDia.php $
+// $Rev: 380 $
+// $Date: 2003-05-08 18:40:47 -0300 (Thu, 08 May 2003) $
+// $Author: gmeray $
+//
+
+require_once 'DB.php';
+require_once 'Date.php';
+require_once 'MECON/Novedad.php';
+require_once 'MECON/Tiempo/Hora.php';
+
+/**
+ * Representa un Intervalo entre 2 horas del mismo dia
+ *
+ * @package HE
+ * @abstract
+ * @version $Rev: 380 $
+ * @author Gonzalo Merayo <gmeray@mecon.gov.ar>
+ */
+class NovedadesDia {
+
+ var $novedades = array();
+
+ var $licencia = null;
+
+ 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 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 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());
+ if( $r = $result->fetchRow() )
+ $this->licencia = $r[0];
+ }
+
+ 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 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);
+ }
+ }
+
+}