source: admin/WebConsole/comandos/EliminarImagenCache.php @ 5d05b06

Last change on this file since 5d05b06 was e32794a, checked in by Ramón M. Gómez <ramongomez@…>, 6 years ago

#834: Fixing more code cleanup: file encoding, CSS units, HTML tags, and trailing spaces.

  • Property mode set to 100644
File size: 20.2 KB
Line 
1<?php
2// *************************************************************************************************************************************************
3// Nombre del fichero: EliminarImagenCache.php
4// Descripci????n :
5//              Implementaci????n?????? del comando "Eliminar Imagen Cache"
6// date: 13-junio-2013
7// Cambio: se incluye mensaje equipos sin configuracion. En la funcion tabla_configuracion incluye cabecera de la tabla.
8// *************************************************************************************************************************************************
9include_once("../includes/ctrlacc.php");
10include_once("../clases/AdoPhp.php");
11include_once("../includes/constantes.php");
12include_once("../includes/comunes.php");
13include_once("../includes/CreaComando.php");
14include_once("../includes/HTMLSELECT.php");
15include_once("../includes/HTMLCTESELECT.php");
16include_once("../includes/TomaDato.php");
17include_once("../idiomas/php/".$idioma."/comandos/eliminarimagencache_".$idioma.".php");
18include_once("../idiomas/php/".$idioma."/comandos/opcionesacciones_".$idioma.".php");
19//________________________________________________________________________________________________________
20include_once("./includes/capturaacciones.php");
21$funcion="EjecutarScript";
22$idc=$_SESSION["widcentro"];
23$ipservidor=$_SERVER['SERVER_ADDR'];
24//________________________________________________________________________________________________________
25$cmd=CreaComando($cadenaconexion);
26if (!$cmd)
27        Header('Location: '.$pagerror.'?herror=2'); // Error de conexi??n con servidor B.D.
28//___________________________________________________________________________________________________
29?>
30<HTML>
31<HEAD>
32<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
33<TITLE>Administración web de aulas</TITLE>
34<LINK rel="stylesheet" type="text/css" href="../estilos.css">
35<SCRIPT language="javascript" src="./jscripts/EliminarImagenCache.js"></SCRIPT>
36<SCRIPT language="javascript" src="../clases/jscripts/HttpLib.js"></SCRIPT>
37<?php echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/comandos/eliminarimagencache_'.$idioma.'.js"></SCRIPT>'?>
38<?php echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/comandos/comunescomandos_'.$idioma.'.js"></SCRIPT>'?>
39<SCRIPT language="javascript" src="./jscripts/comunescomandos.js"></SCRIPT>
40</HEAD>
41<BODY>
42<?php
43
44switch($ambito){
45                case $AMBITO_CENTROS :
46                        $urlimg='../images/iconos/centros.gif';
47                        $textambito=$TbMsg[0];
48                        break;
49                case $AMBITO_GRUPOSAULAS :
50                        $urlimg='../images/iconos/carpeta.gif';
51                        $textambito=$TbMsg[1];
52                        $cmd->texto="SELECT DISTINCT ordenadores.idrepositorio
53                                FROM aulas
54                                LEFT JOIN ordenadores ON ordenadores.idaula=aulas.idaula
55                                WHERE aulas.idaula=$idambito";
56                        break;
57                case $AMBITO_AULAS :
58                        $urlimg='../images/iconos/aula.gif';
59                        $textambito=$TbMsg[2];//#agp
60                                $cmd->texto="SELECT DISTINCT ordenadores.idrepositorio
61                                FROM aulas
62                                LEFT JOIN ordenadores ON ordenadores.idaula=aulas.idaula
63                                WHERE aulas.idaula=$idambito";
64                        $rs=new Recordset;
65                        $rs->Comando=&$cmd;
66                        if (!$rs->Abrir()) return($tablaHtml); // Error al abrir recordset
67                        $rs->Primero();
68                        $idx=0;
69                        while (!$rs->EOF){
70                        $rs->Siguiente();
71                        $idx++;     }
72                        $cuentarepos=$idx; // Guarda contador
73                        $rs->Cerrar();
74                                        if ($cuentarepos==1){
75                                        $cmd->texto="SELECT repositorios.ip
76                                        FROM repositorios
77                                        INNER JOIN ordenadores ON ordenadores.idrepositorio=repositorios.idrepositorio
78                                        AND ordenadores.idaula='$idambito'
79                                        GROUP BY ip";
80                                        $rs=new Recordset;
81                                        $rs->Comando=&$cmd;
82                                        if (!$rs->Abrir()) return($tablaHtml); // Error al abrir recordset
83                                        $rs->Primero();
84                                        $iprepositorioord=$rs->campos["ip"];
85                                        if ( $iprepositorioord == $ipservidor ){$cuentarepos=1;}else{$cuentarepos=2;}
86                                        $rs->Cerrar();
87                                                                                }//#agp
88                        break;
89
90                case $AMBITO_GRUPOSORDENADORES :
91                        $urlimg='../images/iconos/carpeta.gif';
92                        $textambito=$TbMsg[3];//#agp
93                                $cmd->texto="SELECT DISTINCT ordenadores.idrepositorio
94                                 FROM aulas
95                                 LEFT JOIN ordenadores ON ordenadores.idaula=aulas.idaula
96                                 WHERE aulas.idaula=ordenadores.idaula
97                                 AND aulas.idcentro='$idc'
98                                 AND ordenadores.grupoid=".$idambito;
99                        $rs=new Recordset;
100                        $rs->Comando=&$cmd;
101                        if (!$rs->Abrir()) return($tablaHtml); // Error al abrir recordset
102                        $rs->Primero();
103                        $idx=0;
104                        while (!$rs->EOF){
105                        $rs->Siguiente();
106                        $idx++;     }
107                        $cuentarepos=$idx; // Guarda contador
108                        $rs->Cerrar();
109                                        if ($cuentarepos==1){
110                                                $cmd->texto="SELECT repositorios.ip
111                                                FROM repositorios
112                                                INNER JOIN ordenadores ON ordenadores.idrepositorio=repositorios.idrepositorio
113                                                AND ordenadores.grupoid='$idambito'
114                                                GROUP BY ip";
115                                                $rs=new Recordset;
116                                                $rs->Comando=&$cmd;
117                                                if (!$rs->Abrir()) return($tablaHtml); // Error al abrir recordset
118                                                $rs->Primero();
119                                                $iprepositorioord=$rs->campos["ip"];
120                                                if ( $iprepositorioord == $ipservidor ){$cuentarepos=1;}else{$cuentarepos=2;}
121                                                $rs->Cerrar();
122                                                                                }//#agp
123                        break;
124
125                case $AMBITO_ORDENADORES :
126                        $urlimg='../images/iconos/ordenador.gif';
127                        $textambito=$TbMsg[4];//#agp
128                                $cmd->texto="SELECT repositorios.ip
129                                 FROM repositorios
130                                 INNER JOIN ordenadores ON ordenadores.idrepositorio=repositorios.idrepositorio
131                                 AND ordenadores.idordenador=$idambito";//#agp
132                        $rs=new Recordset;
133                        $rs->Comando=&$cmd;
134                        if (!$rs->Abrir()) return($tablaHtml); // Error al abrir recordset
135                        $rs->Primero();
136                                                $iprepositorioord=$rs->campos["ip"];
137                                                if ( $iprepositorioord == $ipservidor ){$cuentarepos=1;}else{$cuentarepos=2;}
138                        $rs->Cerrar();//#agp
139                        break;
140        }
141
142        echo '<p align=center><span class=cabeceras>'.$TbMsg[5].'&nbsp;</span><br>';
143        echo '<img src="'.$urlimg.'">&nbsp;&nbsp;<span align=center class=subcabeceras><u>'.$textambito.': '.$nombreambito.'</u></span>&nbsp;&nbsp;</span></p>';
144?>
145<!-- //#agp-->
146<?php
147    // Mensaje aviso limitacion version si hay dos repositorios
148    if ($cuentarepos >1){ ?>
149         <TABLE  id="tabla" align=center border=0 cellPadding=1 cellSpacing=1 class=tabla_datos>
150                <TR>
151                <TH align=center >&nbsp;
152                <?php if ($ambito==16){
153                        echo $TbMsg[17]."</br>".$nombreambito.$TbMsg[16]."</br>".$TbMsg[18];
154                }else{
155                        echo $TbMsg[17]."</br>".$nombreambito.$TbMsg[15]."</br>".$TbMsg[18]; }
156                ?>&nbsp;</TH> </TR>
157
158        </TABLE> 
159<?php }?>
160<!-- //#agp-->
161
162        <P align=center><SPAN class=subcabeceras><?php echo $TbMsg[7] ?></SPAN></P>
163
164<form align=center name="fdatos"> 
165     <?php echo tabla_configuraciones($cmd,$idambito); ?>
166</form>
167<P></P>
168<!-- //#agp-->
169
170<?php
171        //________________________________________________________________________________________________________
172        include_once("./includes/formularioacciones.php");
173        //________________________________________________________________________________________________________
174        include_once("./includes/opcionesacciones.php");
175        //________________________________________________________________________________________________________
176?>
177</BODY>
178</HTML>
179
180<?php
181/**************************************************************************************************************************************************
182        Recupera los datos de un ordenador
183                Parametros:
184                - cmd: Una comando ya operativo (con conexi??nabierta) 
185                - ido: El identificador del ordenador
186________________________________________________________________________________________________________*/
187function TomaPropiedades($cmd,$idambito)
188{
189       
190        $rs=new Recordset;
191        $cmd->texto="SELECT     COUNT(ordenadores.idordenador) AS numordenadores, aulas.* ,
192                                GROUP_CONCAT(DISTINCT CAST( ordenadores.idmenu AS char( 11 ) ) 
193                                ORDER BY ordenadores.idmenu SEPARATOR ',' ) AS idmenus,
194                                GROUP_CONCAT(DISTINCT CAST( ordenadores.idrepositorio AS char( 11 ) ) 
195                                ORDER BY ordenadores.idrepositorio SEPARATOR ',' ) AS idrepositorios,
196                                GROUP_CONCAT(DISTINCT CAST( ordenadores.idperfilhard AS char( 11 ) ) 
197                                ORDER BY ordenadores.idperfilhard SEPARATOR ',' ) AS idperfileshard,
198                                GROUP_CONCAT(DISTINCT CAST( ordenadores.cache AS char( 11 ) ) 
199                                ORDER BY ordenadores.cache SEPARATOR ',' ) AS caches,
200                                GROUP_CONCAT(DISTINCT CAST( ordenadores.idproautoexec AS char( 11 ) ) 
201                                ORDER BY ordenadores.idproautoexec SEPARATOR ',' ) AS idprocedimientos
202                        FROM aulas
203                        LEFT OUTER JOIN ordenadores ON ordenadores.idaula = aulas.idaula
204                        WHERE aulas.idaula =".$idambito."
205                        GROUP BY aulas.idaula";
206
207        $rs->Comando=&$cmd;
208        if (!$rs->Abrir()) return(false); // Error al abrir recordset
209        if (!$rs->EOF){
210                $idaula=$rs->campos["idaula"];
211                $nombreaula=$rs->campos["nombreaula"];
212                $urlfoto=$rs->campos["urlfoto"];
213                if ($urlfoto=="" ) $urlfoto="aula.jpg";
214                $cagnon=$rs->campos["cagnon"];
215                $pizarra=$rs->campos["pizarra"];
216                $ubicacion=$rs->campos["ubicacion"];
217                $comentarios=$rs->campos["comentarios"];
218                $puestos=$rs->campos["puestos"];
219                $horaresevini=$rs->campos["horaresevini"];
220                $horaresevfin=$rs->campos["horaresevfin"];
221                $grupoid=$rs->campos["grupoid"];
222                $modomul=$rs->campos["modomul"];
223                $ipmul=$rs->campos["ipmul"];
224                $pormul=$rs->campos["pormul"];
225                $velmul=$rs->campos["velmul"];
226#################### ADV               
227                $router=$rs->campos["router"];
228                $netmask=$rs->campos["netmask"];
229                $modp2p=$rs->campos["modp2p"];
230                $timep2p=$rs->campos["timep2p"];
231###################### ADV
232###################### UHU
233                $validacion=$rs->campos["validacion"];
234                $paginalogin=$rs->campos["paginalogin"];
235                $paginavalidacion=$rs->campos["paginavalidacion"];
236###################### UHU
237
238                $ordenadores=$rs->campos["numordenadores"];
239                $idmenu=$rs->campos["idmenus"];
240                if(count(explode(",",$idmenu))>1) $idmenu=0;
241                $idrepositorio=$rs->campos["idrepositorios"];
242                if(count(explode(",",$idrepositorio))>1) $idrepositorio=0;
243                $idperfilhard=$rs->campos["idperfileshard"];
244                if(count(explode(",",$idperfilhard))>1) $idperfilhard=0;
245                $cache=$rs->campos["caches"];
246                if(count(explode(",",$cache))>1) $cache=0;
247                $idmenu=$rs->campos["idmenus"];
248                if(count(explode(",",$idmenu))>1) $idmenu=0;
249                $idprocedimiento=$rs->campos["idprocedimientos"];
250                if(count(explode(",",$idprocedimiento))>1) $idprocedimiento=0;
251
252                $gidmenu=$idmenu;
253                $gidprocedimiento=$idprocedimiento;
254                $gidrepositorio=$idrepositorio;
255                $gidperfilhard=$idperfilhard;
256                $gcache=$cache;
257
258                $rs->Cerrar();
259                return(true);
260        }
261        return(false);
262}
263
264/*________________________________________________________________________________________________________
265        Crea la tabla de configuraciones y perfiles a crear
266________________________________________________________________________________________________________*/
267
268function tabla_configuraciones($cmd,$idambito){
269
270        global $TbMsg;
271                global $cuentarepos;
272        global $idc;
273        global $ambito;
274        global $idambito;
275        global $nombreambito;
276
277        global $AMBITO_CENTROS;
278        global $AMBITO_GRUPOSAULAS;
279        global $AMBITO_AULAS;
280        global $AMBITO_GRUPOSORDENADORES;
281        global $AMBITO_ORDENADORES;
282
283switch($ambito){
284                case $AMBITO_CENTROS :
285                        $urlimg='../images/iconos/centros.gif';
286                        break;
287
288                case $AMBITO_GRUPOSAULAS :
289                        $cmd->texto="SELECT * FROM ordenadores,aulas,ordenadores_particiones
290                                        JOIN grupos USING(idgrupo)
291                                        JOIN sistemasficheros USING(idsistemafichero)
292                                        WHERE ordenadores_particiones.idordenador=ordenadores.idordenador
293                                        AND ordenadores.idaula=aulas.idaula
294                                        AND grupos.nombregrupo='$nombreambito'
295                                        AND grupos.idcentro='$idc'
296                                        AND sistemasficheros.nemonico='CACHE'";
297                        break;
298
299                case $AMBITO_AULAS :
300                        $cmd->texto="SELECT * FROM ordenadores,aulas,ordenadores_particiones
301                                        JOIN sistemasficheros USING(idsistemafichero)
302                                        WHERE ordenadores_particiones.idordenador=ordenadores.idordenador
303                                        AND ordenadores.idaula=aulas.idaula
304                                        AND aulas.nombreaula='$nombreambito'
305                                        AND aulas.idcentro='$idc'
306                                        AND sistemasficheros.nemonico='CACHE'";
307                        break;
308
309                case $AMBITO_GRUPOSORDENADORES :
310                        $cmd->texto="SELECT * FROM ordenadores,aulas,ordenadores_particiones,gruposordenadores
311                                        JOIN sistemasficheros USING(idsistemafichero)
312                                        WHERE ordenadores_particiones.idordenador=ordenadores.idordenador
313                                        AND ordenadores.idaula=aulas.idaula
314                                        AND gruposordenadores.idaula=aulas.idaula
315                                        AND aulas.idcentro='$idc'
316                                        AND sistemasficheros.nemonico='CACHE'
317                                        AND ordenadores.grupoid='$idambito'";
318                        break;
319
320                case $AMBITO_ORDENADORES :
321                        $cmd->texto="SELECT * FROM ordenadores,ordenadores_particiones
322                                        JOIN sistemasficheros USING(idsistemafichero)
323                                        WHERE ordenadores_particiones.idordenador=ordenadores.idordenador
324                                        AND ordenadores.nombreordenador='$nombreambito'
325                                        AND sistemasficheros.nemonico='CACHE'";
326                        break;
327        }
328
329        $tablaHtml="";
330
331        $rs=new Recordset;
332        $rs->Comando=&$cmd;
333        if (!$rs->Abrir()) return($tablaHtml); // Error al abrir recordset
334        $rs->Primero();
335
336        while (!$rs->EOF){
337
338                                                        $cache=$rs->campos["cache"];
339                                                        $idordenador=$rs->campos["idordenador"];
340                                                        $ima=explode(",",$cache);
341                                                        for ($x=0;$x<count($ima); $x++)
342                                                        {
343                                                                if(preg_match("/.img/",$ima[$x])  ) //si contiene .img son ficheros de imagen
344                                                                {
345                                                                        if (preg_match("/.img.sum/",$ima[$x]) or preg_match("/.img.torrent/",$ima[$x]) or preg_match("/.img.full.sum/",$ima[$x]) )//Si el nombre contiene .img.sum o img.torrent o img.full.sum
346                                                                        {}else{$esdir[]="f";
347                                                                                if (preg_match("/.img.diff/",$ima[$x]))
348                                                                                {
349                                                                                        $ima[$x] = str_replace(".img.diff", "", $ima[$x]); //quitar todos los .img
350                                                                                        $ima[$x]=trim($ima[$x]);
351                                                                                        $nombreimagenes[]="f-".$ima[$x];
352                                                                                }else{
353                                                                                        $ima[$x] = str_replace(".img", "", $ima[$x]); //quitar todos los .img
354                                                                                        $ima[$x]=trim($ima[$x]);
355                                                                                        $nombreimagenes[]="f-".$ima[$x];
356                                                                                        }
357                                                                                        }
358                                                                }elseif (preg_match("/.MB/",$ima[$x])){
359                                                                        }else{  // Es un directorio
360                                                                                        $ima[$x]=trim($ima[$x]);
361                                                                                        $nombreimagenes[]="d-".$ima[$x];
362                                                                                        $esdir[]="d";
363                                                                                }
364                                                        }
365       
366                $rs->Siguiente();
367                        }
368                $rs->Cerrar();
369
370        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
371
372                $sin_duplicados=array_unique($nombreimagenes);
373
374                if (empty($sin_duplicados)) {
375                        // Equipo sin configuracion en base de datos.
376                        $inicioTabla='<table id="tabla_conf" width="95%" class="tabla_listados_sin" align="center" border="0" cellpadding="0" cellspacing="1">'.chr(13);
377                        $inicioTabla.='<tr><th align="center" >'.$TbMsg["CONFIG_NOCONFIG"].'</th><tr>'.chr(13);
378                }else{
379                        // Equipo con configuracion en BD
380                        // Incluimos primera linea de la tabla.
381                        $inicioTabla='<TABLE  id="tabla_conf" align=center border=0 cellPadding=1 cellSpacing=1 class=tabla_datos>'.chr(13);
382                        $inicioTabla.='         <TR>'.chr(13);
383                        $inicioTabla.='         <TH align=center>&nbsp;'.$TbMsg[11].'&nbsp;</TH>'.chr(13);
384                        $inicioTabla.='         <TH align=center>&nbsp;'.$TbMsg[19].'&nbsp;</TH>'.chr(13);
385                        $inicioTabla.='         <TH align=center>&nbsp;'.$TbMsg[12].'&nbsp;</TH>'.chr(13);
386                        $inicioTabla.='         <TH align=center>&nbsp;'.$TbMsg[10].'&nbsp;</TH>'.chr(13);
387                        if ($cuentarepos==1)
388                                $inicioTabla.='         <TH align=center>&nbsp;'.$TbMsg[13].'&nbsp;</TH>'.chr(13);
389                        }
390
391                echo $inicioTabla;
392                $numdir=0;
393                $contar=1;
394                foreach($sin_duplicados as $value){ //imprimimos $sin_duplicados
395               
396                        // Eliminino las f- y d-
397                        $value=explode("-",$value);
398                        $value=$value[1];
399                       
400                        if (empty($value) && $ambito == $AMBITO_ORDENADORES){
401                                // Equipo sin imagenes en la cache.
402                                $inicioTabla='<table id="tabla_conf" width="25%" class="tabla_listados_sin" align="center" border="0" cellpadding="0" cellspacing="1">'.chr(13);
403                                $inicioTabla.='<tr><th align="center" >NO '.$TbMsg["7"].'</th><tr>'.chr(13);
404                                echo $inicioTabla;
405                        }elseif (empty($value)){ $numdir++;
406                                }else{
407                                        $nombrefichero=$value.'.img';
408                                        $tamanofich=exec("du -h /opt/opengnsys/images/$nombrefichero");
409                                        if ($tamanofich==""){$tamanofich=$TbMsg[14];}
410                                        $tamanofich=explode("/",$tamanofich);     
411                                        $todo=".*";
412                                        if ($esdir[$numdir] == "d"){$ruta[$numdir]='rm%20-r%20/opt/opengnsys/cache/opt/opengnsys/images/'.$value;}else{$ruta[$numdir]='rm%20-r%20/opt/opengnsys/cache/opt/opengnsys/images/'.$value.$todo;}
413                                        echo '<TR>'.chr(13);
414                                        echo '<TD align=center>&nbsp;'.$contar.'&nbsp;</TD>'.chr(13);
415                                        if ($esdir[$numdir]=="d"){echo '<TD align=center><div style="color: blue">&nbsp;D&nbsp;</div></TD>'.chr(13);}else{echo '<TD align=center>&nbsp;F&nbsp;</TD>'.chr(13);}
416                                        echo '<TD align=center ><input type="radio" name="codigo"  value='.$ruta[$numdir].'></TD>'.chr(13);
417                                        if ($esdir[$numdir]=="d"){echo '<TD align=center><div style="color: blue">&nbsp;'.$value.'&nbsp;</div></TD>'.chr(13);}else{echo '<TD align=center>&nbsp;'.$value.'&nbsp;</TD>'.chr(13);}
418                                        if ($cuentarepos==1){echo '<TD align=center>&nbsp;'.$tamanofich[0].'</TD>'.chr(13);}
419                                        echo '</TR>'.chr(13);
420                                        $contar++;$numdir++;
421                                        }
422                }
423                echo "</table>".chr(13);
424                                                       
425
426return($tablaHtml);
427}
428
429?>
430
Note: See TracBrowser for help on using the repository browser.