summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIrina Gómez <irinagomez@us.es>2019-11-22 13:21:17 +0100
committerIrina Gómez <irinagomez@us.es>2019-11-22 13:21:17 +0100
commit560358b544ca716b2ce3c6e2c3602d16264d2644 (patch)
tree47fbde496ec1aab9ec4d0aefa23853b98c14b855
parent00f0fe235854eccde71724e675dadfb5e8d30500 (diff)
#914 Fix error in repository properties when list images of organization unit with subdirectory separated.
-rw-r--r--admin/WebConsole/propiedades/propiedades_repositorios.php50
1 files changed, 44 insertions, 6 deletions
diff --git a/admin/WebConsole/propiedades/propiedades_repositorios.php b/admin/WebConsole/propiedades/propiedades_repositorios.php
index 7bdb6713..9321b4a7 100644
--- a/admin/WebConsole/propiedades/propiedades_repositorios.php
+++ b/admin/WebConsole/propiedades/propiedades_repositorios.php
@@ -7,6 +7,7 @@
// Nombre del fichero: propiedades_repositorios.php
// Descripción :
// Presenta el formulario de captura de datos de un repositorio para insertar,modificar y eliminar
+// Version 1.1.1: Si las OU están separadas por directorios, sólo muestra las imágenes del subdir definido
// **********************************************************************************************************
include_once("../includes/ctrlacc.php");
include_once("../includes/opciones.php");
@@ -28,11 +29,14 @@ $grupoid=0;
$comentarios="";
$ordenadores=0; // Número de ordenador a los que da servicio
$numordenadores=0; // Número de ordenador a los que da servicio
+$dirOU=""; // Directorio de la unidad organizativa
if (isset($_GET["opcion"])) $opcion=$_GET["opcion"]; // Recoge parametros
if (isset($_GET["idrepositorio"])) $idrepositorio=$_GET["idrepositorio"];
if (isset($_GET["grupoid"])) $grupoid=$_GET["grupoid"];
if (isset($_GET["identificador"])) $idrepositorio=$_GET["identificador"];
+$idcentro = (isset($_SESSION["widcentro"])) ? $_SESSION["widcentro"] : "";
+
//________________________________________________________________________________________________________
$cmd=CreaComando($cadenaconexion); // Crea objeto comando
if (!$cmd)
@@ -42,6 +46,9 @@ if ($opcion!=$op_alta){
if (!$resul)
Header('Location: '.$pagerror.'?herror=3'); // Error de recuperaci�n de datos.
}
+// Obtenemos directorio de la Unidad Organizativa
+if ($idcentro != "") TomaDirectorioOU($cmd,$idcentro);
+
//________________________________________________________________________________________________________
//#########################################################################
@@ -161,10 +168,13 @@ if($apiKeyRepo != ""){
</TR>
<?php
// Si tenemos informacion del repositorio remoto, mostramos las imagenes
- if($repoWithApi == true && is_array($repoImages)){
- echo "<tr class='tabla_listados_sin'><th colspan='4'>".$TbMsg['MSG_CONTENT']." $repodir</th></tr>\n";
+ if ($repoWithApi == true) {
+ $cabeceraTabla= "<tr class='tabla_listados_sin'><th colspan='4'>".$TbMsg['MSG_CONTENT']." $repodir</th></tr>\n".
+ "<tr><td>".$TbMsg['MSG_IMAGE']." (".$TbMsg['MSG_TYPE'].")</td><td>".$TbMsg['MSG_SIZE']."</td><td>".$TbMsg['MSG_MODIFIED']."</td><td>".$TbMsg['MSG_PERMISSIONS']."</td></tr>\n";
-echo "<tr><td>".$TbMsg['MSG_IMAGE']." (".$TbMsg['MSG_TYPE'].")</td><td>".$TbMsg['MSG_SIZE']."</td><td>".$TbMsg['MSG_MODIFIED']."</td><td>".$TbMsg['MSG_PERMISSIONS']."</td></tr>\n";
+ if ($dirOU == "" && is_array($repoImages) && !empty($repoImages)) {
+ echo $cabeceraTabla;
+ $cabeceraTabla = "";
foreach($repoImages as $image){
echo "<tr class='tabla_listados_sin'>";
echo "<td>".$image->name." (".$image->type.")</td>";
@@ -173,16 +183,20 @@ echo "<tr><td>".$TbMsg['MSG_IMAGE']." (".$TbMsg['MSG_TYPE'].")</td><td>".$TbMsg[
echo "<td>".$image->mode."</td>";
echo "</tr>\n";
}
- foreach($repoOus as $ou) {
+ }
+ foreach($repoOus as $ou) {
+ if ($dirOU != "" && $ou->subdir != $dirOU) continue;
+ echo $cabeceraTabla;
+ $cabeceraTabla = "";
foreach($ou->images as $image) {
echo "<tr class='tabla_listados_sin'>";
echo "<td>".$ou->subdir." / ".$image->name." (".$image->type.")</td>";
- echo "<td>".$image->size." bytes</td>";
+ echo "<td>".humanSize($image->size)."</td>";
echo "<td>".$image->modified."</td>";
echo "<td>".$image->mode."</td>";
echo "</tr>\n";
}
- }
+ }
}
?>
<?php }else { ?>
@@ -237,3 +251,27 @@ EOT;
$rs->Cerrar();
return(true);
}
+
+//______________________________________________________________________________
+// Recupera directorio de la unidad organizativa (si no están separados '')
+// Parametros:
+// - cmd: Una comando ya operativo (con conexión abierta)
+// - id: El identificador del repositorio
+//________________________________________________________________________________________________________
+function TomaDirectorioOU($cmd,$idOU){
+ global $dirOU;
+ $cmd->texto=<<<EOT
+SELECT if(ogunit=1, directorio, "") AS dirOU
+ FROM entidades, centros
+ WHERE idcentro='$idOU';
+EOT;
+ $rs=new Recordset;
+ $rs->Comando=&$cmd;
+ if (!$rs->Abrir()) return(true); // Error al abrir recordset
+ $rs->Primero();
+ if (!$rs->EOF){
+ $dirOU=$rs->campos["dirOU"];
+ }
+ $rs->Cerrar();
+ return(true);
+}