FechaDescripciónImporte"; ################################################################################### #FUNCIONES ################################################################################### # Dibujar Footer function RefFooter($Tesoreria_version) { echo "
ÁreaEnsayo $Tesoreria_version por Rodax Software S.L
"; return; } # Dibujar Cabecera function RefHeader($Itemid) { global $database; echo ""; $database->setQuery("SELECT name from #__menu WHERE id='$Itemid'"); $menuname = $database->loadResult(); echo "$menuname"; echo "

"; return; } /////////////////////////////////////////////////////////////////////////////////////// // Función que nos escribe el script necesario para el listado de cuotas de los usuarios // function ScriptListaCuotas() { echo ""; } /////////////////////////////////////////////////////////////////////////////////////// // Función que nos muestra el listado de cuotas de los usuarios // function verListaTesoreria($idtrimestre, $idano) { global $database, $my, $trimestres, $meses, $cabecera, $Perfiles; $tabclass = array( 'sectiontableentry1', 'sectiontableentry2' ); ScriptListaCuotas(); //COMBO TRIMESTRE $listatri = '"; //COMBO ANO $listano = '"; //FORMULARIO DE VISTA //Campos Ocultos echo "

"; echo ''; echo ''; echo ''; echo ''; echo ''; echo '' .'
'; echo 'Ver '; //Campos Visibles echo $listatri; echo ' de '; echo $listano; echo ''; //Solo podra Tesorero, administrador y superadministrador if (($Perfiles->esTesorero()) || strtolower($my->usertype) == 'administrator' || strtolower($my->usertype) == 'super administrator' ) echo ''. LIT_ANAANO .''; echo ''; echo '

'; //DETALLES //Dibujamos cabecera switch ($idtrimestre) { case 0: $cadenaAux = "('01','02','03')"; break; case 1: $cadenaAux = "('04','05','06')"; break; case 2: $cadenaAux = "('07','08','09')"; break; case 3: $cadenaAux = "('10','11','12')"; break; default: $cadenaAux = ""; break; } //Dibujamos detalle $cadena = "SELECT t.*, DATE_FORMAT(t.fecha, '%Y'), DATE_FORMAT(t.fecha, '%m'), c.title" . "\nFROM #__tesoreria as t" . "\nLEFT JOIN #__categories AS c ON c.id = t.catid" . "\nWHERE DATE_FORMAT(t.fecha, '%Y')='". $idano ."'"; if ($cadenaAux != "") $cadena .= "\nAND DATE_FORMAT(t.fecha, '%m') in ". $cadenaAux; $cadena .= "\nORDER BY t.catid, t.fecha"; $database->setQuery($cadena); $rows = $database->loadObjectList(); //Dibujamos tablas de ingresos y gastos $catidAnt = ""; $subTotal = 0; $Total = 0; $k = 0; foreach ($rows as $row1){ //Cabeceras if ($catidAnt == "" || $catidAnt != $row1->catid) { if ($catidAnt != ""){ echo "". LIT_TOTAL ."". number_format($subTotal, 2,',','.') ." €"; echo ""; $Total = $subTotal; $subTotal = 0; } $catidAnt = $row1->catid; echo ""; echo ''; echo ''; echo '
'. $row1->title .'
'; //Solo podra Tesorero, administrador y superadministrador if (($Perfiles->esTesorero()) || strtolower($my->usertype) == 'administrator' || strtolower($my->usertype) == 'super administrator' ) echo "catid ."','" . $row1->title ."')>". LIT_ANAAPU .""; echo '
'; echo ""; echo $cabecera; } //Detalles if ($row1->published == 1) { echo ''; $k = 1 - $k; //CheckBox para eliminar entradas if (($Perfiles->esTesorero()) || strtolower($my->usertype) == 'administrator' || strtolower($my->usertype) == 'super administrator' ) echo ""; else echo ""; echo ""; echo ""; echo ""; echo ""; } $subTotal = $subTotal + $row1->cuantia; } echo ""; echo "
".$row1->fecha ."".$row1->descripcion ."".number_format($row1->cuantia, 2,',','.')." €
". LIT_TOTAL ."". number_format($subTotal, 2,',','.')." €
"; $Total = $Total - $subTotal; echo ''; echo ''; echo '
'. LIT_TES .'   '. number_format($Total, 2,',','.') .' €
'; echo '
'; return; } ///////////////////////////////////////////////////////////////////////////////////////////// // Función que crea las entradas del nuevo año pasado por parametro en tabla cuotas // de todos y cada uno de los usuarios de la página // function anadir ($numentrada, $literal, $idtrimestre, $idano){ echo ''; echo ''; echo ''; echo ''; ScriptListaCuotas(); echo "
"; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo '' .''; echo ''; echo ''; echo '' .''; echo ''; echo ''; echo '' .''; echo ''; echo '
'. LIT_ANADIR .'  '. $literal .''; echo '' .'Guardar'; echo '' .'Cancelar'; echo '
'. LIT_FECHA .'' .''; echo '
'. LIT_DESCRIPCION .''; echo '
'. LIT_CUANTIA .' €'; echo '
'; echo '
'; return ("True"); } function eliminar ($numentrada){ global $database; $cadena = "delete from #__tesoreria" . "\nWHERE id = " . $numentrada; $database->setQuery($cadena); if (!$database->query()) { //echo $database->getErrorMsg(); return ("False"); exit; } return ("True"); } ///////////////////////////////////////////////////////////////////////////////////////////// // Función que añade los 4 trimestrs por defecto a un nuevo año // function anadirAno() { global $database; $resultado = 'True'; //Hallamos el año a añadir $cadena = "SELECT MAX(DATE_FORMAT(fecha, '%Y')) as ano FROM #__tesoreria"; $database->setQuery($cadena); $rows = $database->loadObjectList(); if (!$rows[0]->ano) { $Aux = getDate(); $AnoAux = $Aux["year"]; } else $AnoAux = $rows[0]->ano+1; //Hallamos las categorias a añadir (ingresos y gastos) $cadena = "SELECT * FROM #__categories WHERE section = 'com_tesoreria' order by id"; $database->setQuery($cadena); if ($database->query()) { $rows = $database->loadObjectList(); $i=0; foreach ($rows as $row1){ $cat[$i] = $row1->id; $i++; } } else $resultado = 'False';; //Insertamos los 4 trimestres por defecto al nuevo año for($i=0; $i < count($cat); $i++) { $cadena = "INSERT INTO #__tesoreria (catid, fecha, descripcion, cuantia, published)" ."\nVALUES (". $cat[$i] . ", '". $AnoAux ."-01-01', '', '0','0')," ."\n (". $cat[$i] . ", '". $AnoAux ."-04-01', '', '0','0')," ."\n (". $cat[$i] . ", '". $AnoAux ."-07-01', '', '0','0')," ."\n (". $cat[$i] . ", '". $AnoAux ."-10-01', '', '0','0')"; $database->setQuery($cadena); if (!$database->query()) echo "Error de insercion"; $resultado = 'False'; } return ($resultado); } ///////////////////////////////////////////////////////////////////////////////////////////// // Función que graba la nueva entrada // function grabar ($catid, $fecha, $descripcion, $cuantia){ global $database; $cadena = "INSERT INTO #__tesoreria (catid, fecha, descripcion, cuantia, published)" ."\nVALUES (". $catid . ", '". $fecha ."', '". $descripcion ."', ". $cuantia .",'1')"; $database->setQuery($cadena); if (!$database->query()) { echo $database->getErrorMsg(); return ("False"); } else return ("True"); } ################################################################################### #CUERPO ################################################################################### //Chequeamos acceso if ($my->usertype){ //Establecemos el perfil del usuario $Perfiles = new Perfiles($my->id, $database) ; # Estilo de vista if ($obrens_verlista=="1" AND $op=="") $op = "list"; //Por defecto se posiciona en el trimestre y año actuales $fecha = getdate(); if ($idtrimestre=="") { switch($fecha["mon"]) { case 1: case 2: case 3: $idtrimestre = 0; break; case 4: case 5: case 6: $idtrimestre = 1; break; case 7: case 8: case 9: $idtrimestre = 2; break; default: $idtrimestre = 3; } } if ($idano=="") { $idano = $fecha["year"]; } # Cabecera RefHeader($Itemid); # Contenido switch ($op) { case 'list': verListaTesoreria($idtrimestre, $idano); break; case 'opAnadirAno': anadirAno(); $returnlink = "index.php?option=$option&Itemid=$Itemid&idtrimestre=$idtrimestre&idano=$idano"; mosRedirect("$returnlink", ""); break; case 'opAnadir': anadir($numentrada, $literal, $idtrimestre, $idano); break; case 'opEliminar' : eliminar($numentrada); $returnlink = "index.php?option=$option&Itemid=$Itemid&idtrimestre=$idtrimestre&idano=$idano"; mosRedirect("$returnlink", ""); break; case 'opGrabar': grabar ($catid, $fechaent, $descripcion, $cuantia); $returnlink = "index.php?option=$option&Itemid=$Itemid&idtrimestre=$idtrimestre&idano=$idano"; mosRedirect("$returnlink", ""); break; default: break; } # Footer if ($obrens_verfooter == "1") RefFooter($Tesoreria_version); } //No esta autorizado la session se ha terminado else { echo _NOT_AUTH; echo "
"; echo _DO_LOGIN; } ?>