git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_Intranet/trunk/src@1 e2b1556b-49f8-d141-9351-52d6861a72d9
80 lines
1.9 KiB
PHP
80 lines
1.9 KiB
PHP
<?php
|
|
/*
|
|
* Clase ListaVacaciones
|
|
*
|
|
* Contiene una lista de vacaciones de un mes de todos los empleados.
|
|
*
|
|
*/
|
|
include_once("Objects/Vacaciones.php");
|
|
include_once("BD.php");
|
|
|
|
class ListaVacaciones{
|
|
|
|
//Atributos:
|
|
|
|
/* Una lista de vacaciones. */
|
|
protected $vacaciones = null;
|
|
|
|
/* Usuario que posee activa la sesión. */
|
|
protected $usuario;
|
|
|
|
/* Mes del calendario a considerar. */
|
|
private $mes;
|
|
|
|
/* Año del calendario a considerar. */
|
|
private $anio;
|
|
|
|
/* Idioma */
|
|
private $locale;
|
|
|
|
//Constructor:
|
|
|
|
/**
|
|
* Crea un objeto Lista de Vacaciones para un empleado para un mes y año concreto.
|
|
* @param usuario - Dueño de la sesión.
|
|
* @param mes - Mes que contempla las vacaciones.
|
|
* @param anio - Año que contempla las vacaciones.
|
|
* @param locale - Contenido del fichero de idioma.
|
|
*/
|
|
function ListaVacaciones($usuario,$mes,$anio, $locale){
|
|
$this->usuario=$usuario;
|
|
if(($this->usuario->tieneRol(1)) || ($this->usuario->tieneRol(4))){
|
|
if($mes < 10){
|
|
//Me aseguro de que no tenga cero delante
|
|
$mes = $mes + 0;
|
|
//Y le pongo el cero delante.
|
|
$mes = "0".$mes;
|
|
}
|
|
$this->mes=$mes;
|
|
$this->anio=$anio;
|
|
$this->locale = $locale;
|
|
}else{
|
|
$error = $this->locale['3028'];
|
|
throw new Exception($error);
|
|
return false;
|
|
exit;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Acceso a las vacaciones de todos los empleados del mes.
|
|
*/
|
|
function getVacaciones(){
|
|
if($this->vacaciones == null){
|
|
$this->vacaciones = array();
|
|
$consulta = "SELECT oid FROM vacaciones WHERE fecha LIKE '".$this->anio."-".$this->mes."%' GROUP BY oid";
|
|
$bd = new BD();
|
|
if($resultado = $bd->execQuery($consulta)){
|
|
while($rows = mysql_fetch_array($resultado)){
|
|
$p = new Vacaciones($this->usuario,$rows["oid"],$this->mes,$this->anio, $this->locale);
|
|
$this->vacaciones[] = $p;
|
|
}
|
|
}
|
|
}
|
|
|
|
return $this->vacaciones;
|
|
}
|
|
|
|
}
|
|
?>
|