source: admin/WebConsole/includes/pintaParticiones.php @ a30baf2

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacionwebconsole3
Last change on this file since a30baf2 was 27810be, checked in by ramon <ramongomez@…>, 8 years ago

#747: Corregir fallo al detectar porcentaje de uso en grupos de ordenadores que tienen distinto número de discos.

git-svn-id: https://opengnsys.es/svn/branches/version1.1@5327 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100644
File size: 31.6 KB
Line 
1<?php
2
3include_once("../idiomas/php/".$idioma."/pintaParticiones_".$idioma.".php");
4
5/**
6 * Separa las distintas configuraciones de una cadena por disco.
7 * Ej. 1;0;1@1;1;7@1;2;131@2;0;1@2;1;7
8 * Serian dos configuraciones, para el disco 1 -> 1;0;1@1;1;7@1;2;131 y
9 * para el disco 2 -> 2;0;1@2;1;7
10 */
11function splitConfigurationsByDisk($configuraciones){
12        // Recorremos las configuraciones para separalas segun el disco al que pertenezcan
13        $diskConfigs = array();
14        $configs = split("@",$configuraciones);
15        foreach($configs as $config){
16                $parts = split(";",$config);
17                if(!isset($diskConfigs[$parts[0]])){
18                        $diskConfigs[$parts[0]] = "@";
19                }
20                else if($diskConfigs[$parts[0]] != ""){
21                        $diskConfigs[$parts[0]] .= "@";
22                }
23               
24                // Concatenamos la configuracion en el disco que corresponda
25                $diskConfigs[$parts[0]] .= $config;
26        }
27        return $diskConfigs;
28}
29
30
31
32// *************************************************************************************************************************************************
33//      UHU - 2013/15/14 - Se pintan los discos ademas de las particiones
34//      Descripción:
35//              Crea una taba html con las especificaciones de particiones de un ambito ya sea ordenador,
36//              grupo de ordenadores o aula
37//      Parametros:
38//              $configuraciones: Cadena con las configuraciones de particioners del ámbito. El formato
39//              sería una secuencia de cadenas del tipo "clave de configuración" separados por "@"
40//                      Ejemplo:1;7;30000000;3;3;0;@2;130;20000000;5;4;0;@3;131;1000000;0;0;0;0
41//________________________________________________________________________________________________________
42function pintaParticiones($cmd,$configuraciones,$idordenadores,$cc)
43{
44        global $tbKeys; // Tabla contenedora de claves de configuración
45        global $conKeys; // Contador de claves de configuración
46        global $TbMsg;
47
48
49        // Separamos las configuraciones segun el disco al que pertenezcan
50        $diskConfigs = splitConfigurationsByDisk($configuraciones);
51       
52        $columns=9;
53        echo '<tr height="16">';
54        echo '<th align="center">&nbsp;'.$TbMsg["DISK"].'&nbsp;</th>'; // Número de  disco
55        echo '<th align="center">&nbsp;'.$TbMsg["PARTITION"].'&nbsp;</th>'; // Número de partición
56        echo '<th align="center">&nbsp;'.$TbMsg["PARTITION_TYPE"].'&nbsp;</th>'; // Tipo de partición
57        echo '<th align="center">&nbsp;'.$TbMsg["FILESYSTEM_SHORT"].'&nbsp;</th>'; // Sistema de ficheros
58        echo '<th align="center">&nbsp;'.$TbMsg["INST_SO"].'&nbsp;</th>'; // Sistema Operativo Instalado
59        echo '<th align="center">&nbsp;'.$TbMsg["SIZE_KB"].'&nbsp;</th>'; // Tamaño
60        echo '<th align="center">&nbsp;'.$TbMsg["IMAGE"].'&nbsp;</th>'; // Imagen instalada
61        echo '<th align="center">&nbsp;'.$TbMsg["SOFT_PROFILE"].'&nbsp;</th>'; // Perfil software
62        echo '<th align="center">&nbsp;'.$TbMsg["CACHE_CONTENT"].'&nbsp;</th>';
63        echo '</tr>';
64
65        // Recorremos todas las configuraciones encontradas para cada disco
66        $aviso="";
67        foreach($diskConfigs as $disk => $diskConfig){
68                $disk = (int)$disk;
69                echo'<tr height="16">'.chr(13);
70                echo '<td colspan="'.$columns.'" style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #D4D0C8;">&nbsp;'.$TbMsg["DISK"].'&nbsp;'.$disk.'</td>'.chr(13);
71
72
73               
74                $auxCfg=split("@",$diskConfig); // Crea lista de particiones
75                for($i=0;$i<sizeof($auxCfg);$i++){
76                        $auxKey=split(";",$auxCfg[$i]); // Toma clave de configuracion
77                        for($k=0;$k<$conKeys;$k++){ // Busca los literales para las claves de esa partición
78                                if($tbKeys[$k]["cfg"]==$auxCfg[$i]){ // Claves encontradas
79                                        if ($tbKeys[$k]["numpar"] == 0) { // Info del disco (umpart=0)
80                                                $disksize[$tbKeys[$k]["numdisk"]] = tomaTamano($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]);
81                                                if (empty ($disksize)) {
82                                                        $disksize = '<em>'.$TbMsg["VARIABLE"].'</em>';
83                                                }
84                                                switch ($tbKeys[$k]["codpar"]) {
85                                                        case 1:  $disktable[$tbKeys[$k]["numdisk"]] = "MSDOS";
86                                                                 break;
87                                                        case 2:  $disktable[$tbKeys[$k]["numdisk"]] = "GPT";
88                                                                 break;
89                                                        case 3:  $disktable[$tbKeys[$k]["numdisk"]] = "LVM";
90                                                                 break;
91                                                        case 4:  $disktable[$tbKeys[$k]["numdisk"]] = "ZPOOL";
92                                                                 break;
93                                                        default: $disktable[$tbKeys[$k]["numdisk"]] = "";
94                                                }
95                                        }
96                                        else {  // Información de partición (numpart>0)
97                                                echo'<tr height="16">'.chr(13);
98                                                echo'<td align="center">&nbsp;</td>'.chr(13);
99                                                echo'<td align="center">'.$tbKeys[$k]["numpar"].'</td>'.chr(13);
100                                                if ($disktable[$tbKeys[$k]["numdisk"]] == "LVM" or $disktable[$tbKeys[$k]["numdisk"]] == "ZPOOL") {
101                                                        echo '<td></td>'.chr(13);
102                                                }
103                                                else {
104                                                        if (is_numeric ($tbKeys[$k]["tipopar"])) {
105                                                                echo '<td align="center"><em>'.sprintf("%02X",$tbKeys[$k]["tipopar"]).'</em></td>'.chr(13);
106                                                        }
107                                                        else {
108                                                                echo '<td align="center">'.$tbKeys[$k]["tipopar"].'</td>'.chr(13);
109                                                        }
110                                                }
111                                                $filesys=tomaSistemasFicheros($tbKeys[$k]["numpar"],$idordenadores,false,$tbKeys[$k]["numdisk"]);
112                                                echo'<td align="center">&nbsp;'.$filesys.'&nbsp;</td>'.chr(13);
113       
114                                                echo '<td align="center">&nbsp;'.tomaNombresSO($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).'&nbsp;</td>'.chr(13);
115                                                // Mostrar uso solo en clientes individuales.
116                                                $uso=tomaUso($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]);
117                                                if ($uso > 0 and strpos($idordenadores, ',') === false) {
118                                                        echo'<td style="text-align:right; background-image:url(../images/flotantes/lsu.gif); background-size:'.$uso.'% 100%; background-repeat:no-repeat"><a title="'.$TbMsg["USAGE"].': '.$uso.'%">&nbsp;'.tomaTamano($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).'&nbsp;</a></td>'.chr(13);
119                                                } else {
120                                                        echo'<td style="text-align:right">&nbsp;'.tomaTamano($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).'&nbsp;</td>'.chr(13);
121                                                }
122                                                echo'<td align="center">&nbsp;'.tomaImagenes($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).'&nbsp;</td>'.chr(13);
123
124                                                echo'<td align="center">&nbsp;'.tomaPerfiles($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).'&nbsp;</td>'.chr(13);
125
126                                                if ($filesys == "CACHE") {
127                                                        echo '<td align="leght">&nbsp;';
128                                                        $campocache = eregi_replace("[\n|\r|\n\r]", '', tomaCache($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]));
129                                                        $ima=split(",",$campocache);
130                                                        $numero=1;
131                                                        for ($x=0;$x<count($ima); $x++) {
132                                                                if(substr($ima[$x],-3)==".MB") {
133                                                                        if ( $ima[$x] == "0.MB" ){
134                                                                                echo '<font color=red><strong>'.$TbMsg["CACHE_COMPLETE"].': '.$ima[$x].'</strong></font>';
135                                                                        }else{
136                                                                                echo '<strong>'.$TbMsg["CACHE_FREESPACE"].':  '.$ima[$x].'</strong>';
137                                                                        }
138                                                                }elseif (! empty($ima[1])){
139                                                                        // $dir=is_dir('$ima');echo $dir;
140                                                                        // if ($ima == "directorio"){$dir="si";}
141                                                                        // Esto para la informacion de la imagen
142                                                                        if (substr($ima[$x],-5)==".diff"){$info="F";}elseif(substr($ima[$x],-4)==".img"){$info="F";}else{$info="D";}
143                                                                        // Esto para numerarla
144                                                                        if(substr($ima[$x],-4)==".img" || substr($ima[$x],-5)==".diff" || substr($ima[$x],-4)=="") {
145                                                                                echo '<br />('.$info.') &nbsp;'.$numero++.'.-'.$ima[$x];
146                                                                        } elseif(ereg(".sum",$ima[$x]) || ereg(".torrent",$ima[$x]) || ereg(".full.sum",$ima[$x])) {
147                                                                                echo '<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'.$ima[$x];
148                                                                                }else{
149                                                                                        echo '<br /><font color=blue>('.$info.') </font>'.$numero++.'.-<font color=blue>'.$ima[$x]."</font>";
150                                                                                        }
151                                                                }
152                                                        }
153                                                        echo '&nbsp;</td>'.chr(13);
154
155                                                } else {
156                                                        if ($tbKeys[$k]["difimagen"] > 0 ) {
157                                                                echo'<td align="center">&nbsp;'.$tbKeys[$k]["fechadespliegue"].' (* '.$tbKeys[$k]["difimagen"].')&nbsp;</td>'.chr(13);
158                                                                $aviso=$TbMsg["WARN_DIFFIMAGE"];
159                                                        } else {
160                                                                echo'<td align="center">&nbsp;'.$tbKeys[$k]["fechadespliegue"].'&nbsp;</td>'.chr(13);
161                                                        }
162                                                }
163                                       
164                                                echo'</tr>'.chr(13);
165                                        }
166                                        break;
167                                }
168                        }
169                }       
170                // Mostrar información del disco, si se ha obtenido.
171                if (!empty ($disksize)) {
172                        echo'<tr height="16">'.chr(13);
173                        echo'<td align="center">&nbsp;</td>'.chr(13);
174                        echo'<td align="center">&nbsp;'.$disktable[$disk].'&nbsp;</td>'.chr(13);
175                        echo'<td></td>'.chr(13);
176                        echo'<td></td>'.chr(13);
177                        echo'<td></td>'.chr(13);
178                        echo'<td align="right">&nbsp;<strong>'.$disksize[$disk].'</span></strong>&nbsp;</td>'.chr(13);
179                        // Creamos un campo oculto para guardar información sobre el disco y su tamaño separados por ;
180                        echo "<input type='hidden' name='disksize_".$disk."' value='".$disksize[$disk]."'/>\n";
181                        echo'<td></td>'.chr(13);
182                        echo'<td></td>'.chr(13);
183                        echo'<td></td>'.chr(13);
184                        echo'</tr>'.chr(13);
185                }
186        }
187        if (!empty($aviso)) {
188                echo '<tr><th colspan="'.$columns.'">&nbsp;* '.$aviso.'&nbsp;</th></tr>'."\n";
189        }
190        echo '<tr height="5"><td colspan="'.$columns.'" style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #FFFFFF;">&nbsp;</td></tr>';
191}
192
193
194//________________________________________________________________________________________________________
195//
196//      Descripción:
197//              (Esta función es llamada por pintaConfiguraciones que está incluida en ConfiguracionesParticiones.php)
198//              Crea una taba html con las especificaciones de particiones de un ambito ya sea ordenador,
199//              grupo de ordenadores o aula
200//      Parametros:
201//              $configuraciones: Cadena con las configuraciones de particioners del ámbito. El formato
202//              sería una secuencia de cadenas del tipo "clave de configuración" separados por "@"
203//                      Ejemplo:1;7;30000000;3;3;0;@2;130;20000000;5;4;0;@3;131;1000000;0;0;0;0
204//      Devuelve:
205//              El código html de la tabla
206// version 1.1: cliente con varios repositorios -  HTMLSELECT_imagenes: cambia parametros idordenadores por idambito
207// autor: Irina Gomez, Universidad de Sevilla
208// fecha 2015-06-17
209//________________________________________________________________________________________________________
210function pintaParticionesRestaurarImagen($cmd,$configuraciones,$idordenadores,$cc,$ambito,$idambito)
211{
212        global $tbKeys; // Tabla contenedora de claves de configuración
213        global $conKeys; // Contador de claves de configuración
214        global $TbMsg;
215        global $_SESSION;
216       
217        // Separamos las configuraciones segun el disco al que pertenezcan
218        $diskConfigs = splitConfigurationsByDisk($configuraciones);
219       
220        $columns=10;
221        echo '<TR>';
222        echo '<TH align=center>&nbsp;&nbsp;</TH>';
223        echo '<th align="center">&nbsp;'.$TbMsg["DISK"].'&nbsp;</th>'; // Número de  disco
224        echo '<TH align=center>&nbsp;'.$TbMsg["PARTITION"].'&nbsp;</TH>';
225        echo '<th align="center">&nbsp;'.$TbMsg["PARTITION_TYPE"].'&nbsp;</th>'; // Tipo de partición
226        echo '<th align="center">&nbsp;'.$TbMsg["INST_SO"].'&nbsp;</th>'; // Sistema Operativo Instalado
227        echo '<th align="center">&nbsp;'.$TbMsg["FILESYSTEM_SHORT"].'&nbsp;</th>'; // Sistema de ficheros
228        echo '<th align="center">&nbsp;'.$TbMsg["SIZE_KB"].'&nbsp;</th>'; // Tamaño
229        echo '<TH align=center>&nbsp;'.$TbMsg["SAMESYSTEM_IMAGE"].'&nbsp;</TH>';
230        echo '<TH align=center>&nbsp;'.$TbMsg["DIFFERENTSYSTEM_IMAGE"].'&nbsp;</TH>';
231        echo '<TH align=center>&nbsp;'.$TbMsg["RESTORE_METHOD"].'&nbsp;</TH>';
232        echo '</TR>';
233       
234       
235        // Recorremos todas las configuraciones encontradas para cada disco
236       
237        foreach($diskConfigs as $disk => $diskConfig){
238                $disk = (int)$disk;
239                echo'<tr height="16">'.chr(13);
240                echo '<td colspan="'.$columns.'" style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #D4D0C8;">&nbsp;'.$TbMsg["DISK"].'&nbsp;'.$disk.'</td>'.chr(13);
241                 
242                $auxCfg=split("@",$diskConfig); // Crea lista de particiones
243                for($i=0;$i<sizeof($auxCfg);$i++){
244                        $auxKey=split(";",$auxCfg[$i]); // Toma clave de configuracion
245                        for($k=0;$k<$conKeys;$k++){ // Busca los literales para las claves de esa partición
246                                if($tbKeys[$k]["cfg"]==$auxCfg[$i]){ // Claves encontradas
247                                    if($tbKeys[$k]["numpar"]!=0){    // No es info. del disco (part. 0)
248                                        $swcc=$tbKeys[$k]["clonable"];
249                                        if($swcc){
250                                                echo '<TR>'.chr(13);
251                                                echo '<TD align=center>&nbsp;&nbsp;</TD>';
252                                                $icp=$cc."_".$tbKeys[$k]["numdisk"]."_".$tbKeys[$k]["numpar"]; // Identificador de la configuración-partición
253                                                echo '<TD ><input type=radio idcfg="'.$cc.'" id="'.$icp.'" name="particion" value='.$tbKeys[$k]["numdisk"].";".$tbKeys[$k]["numpar"].'></TD>'.chr(13);
254                                                echo '<TD align=center>&nbsp;'.$tbKeys[$k]["numpar"].'&nbsp;</TD>'.chr(13);
255                                                echo '<TD align=center>&nbsp;'.$tbKeys[$k]["tipopar"].'&nbsp;</TD>'.chr(13);
256                                                echo '<TD align=center>&nbsp;'.tomaNombresSO($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).'&nbsp;</TD>'.chr(13);       
257                                                echo'<TD align=center>&nbsp;'.tomaSistemasFicheros($tbKeys[$k]["numpar"],$idordenadores,false,$tbKeys[$k]["numdisk"]).'&nbsp;</TD>'.chr(13);
258                                                echo'<TD align=center>&nbsp;'.tomaTamano($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).'&nbsp;</TD>'.chr(13);   
259                                                echo '<TD>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,true,$idambito,$ambito).'</TD>';
260                                                echo '<TD>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,false,$idambito,$ambito).'</TD>';
261       
262                                                //Clonación
263                                                $metodos="UNICAST=UNICAST-CACHE".chr(13);
264                                                $metodos.="UNICAST-DIRECT=UNICAST-DIRECT".chr(13);
265                                                $metodos.="MULTICAST " . mcast_syntax($cmd,$ambito,$idambito) . "=MULTICAST-CACHE".chr(13);
266                                                $metodos.="MULTICAST-DIRECT " . mcast_syntax($cmd,$ambito,$idambito) . "=MULTICAST-DIRECT".chr(13);
267                                                $metodos.="TORRENT " . torrent_syntax($cmd,$ambito,$idambito) . "=TORRENT-CACHE";
268       
269                                                $TBmetodos["UNICAST-CACHE"]=1;
270                                                $TBmetodos["UNICAST-DIRECT"]=2;
271                                                $TBmetodos["MULTICAST-CACHE"]=3;
272                                                $TBmetodos["MULTICAST-DIRECT"]=4;
273                                                $TBmetodos["TORRENT-CACHE"]=5;
274                                                $idxc=$_SESSION["protclonacion"];
275                                                if ($idxc == "UNICAST") {
276                                                        $idxc = "UNICAST-DIRECT";
277                                                }
278                                                echo '<TD>'.HTMLCTESELECT($metodos,"protoclonacion_".$icp,"estilodesple","",$TBmetodos[$idxc],100).'</TD>';
279                                                echo '</TR>'.chr(13);
280                                        }
281                                    }
282                                }
283                        }
284                }
285        }
286        echo '<TR height=5><TD colspan='.$columns.' style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #FFFFFF;">&nbsp;</TD></TR>';
287}
288
289/*________________________________________________________________________________________________________
290
291        Descripción:
292                (Esta función es llamada por pintaConfiguraciones que está incluida en ConfiguracionesParticiones.php)
293                Crea una taba html con las especificaciones de particiones de un ambito ya sea ordenador,
294                grupo de ordenadores o aula
295        Parametros:
296                $configuraciones: Cadena con las configuraciones de particioners del ámbito. El formato
297                                                sería una secuencia de cadenas del tipo "clave de configuración" separados por "@"
298                                                Ejemplo:1;7;30000000;3;3;0;@2;130;20000000;5;4;0;@3;131;1000000;0;0;0;0
299                $idordenadores: cadena con los identificadores de los ordenadores que forman parte del bloque
300                $cc: Identificador de la configuración
301        Devuelve:
302                El código html de la tabla
303________________________________________________________________________________________________________*/
304function pintaParticionesConfigurar($cmd,$configuraciones,$idordenadores,$cc)
305{
306
307        global $tbKeys; // Tabla contenedora de claves de configuración
308        global $conKeys; // Contador de claves de configuración
309        global $TbMsg;
310
311        $colums=7;
312        echo '<TR id="TR_'.$cc.'">';
313        echo '<TH align=center><IMG src="../images/iconos/eliminar.gif"></TH>';
314        echo '<TH align=center>&nbsp;'.$TbMsg[8].'&nbsp;</TH>';
315        echo '<TH align=center>&nbsp;'.$TbMsg[24].'&nbsp;</TH>';
316        echo '<TH align=center>&nbsp;'.$TbMsg[27].'&nbsp;</TH>';
317        echo '<TH align=center>&nbsp;'.$TbMsg[22].'&nbsp;</TH>';
318        echo '<TH align=center>&nbsp;'.$TbMsg[21].'&nbsp;</TH>';
319        echo '<TH align=center>&nbsp;'.$TbMsg[14].'&nbsp;</TH>';       
320        echo '</TR>';
321
322        $aviso=false;
323        $auxCfg=split("@",$configuraciones); // Crea lista de particiones
324        for($i=0;$i<sizeof($auxCfg);$i++){
325                $auxKey=split(";",$auxCfg[$i]); // Toma clave de configuracion
326                for($k=1;$k<$conKeys;$k++){ // Busca los literales para las claves de esa partición
327                        if($tbKeys[$k]["cfg"]==$auxCfg[$i]){ // Claves encontradas
328                                if($tbKeys[$k]["numdisk"]==1){ // Solo tratar disco 1
329                                        if($tbKeys[$k]["numpar"]>0){ // Solo particiones (número>0)
330                                                $icp=$cc."_".$k; // Identificador de la configuración-partición
331                                                echo '<tr id="TR_'.$icp.'" align="center">';
332                                                echo '<td><input type="checkbox" onclick="eliminaParticion(this,\''.$icp.'\')"></td>';
333                                                echo '<td>'.HTMLSELECT_particiones($tbKeys[$k]["numpar"]).'</td>';
334                                                echo '<td>'.HTMLSELECT_tipospar($cmd,$tbKeys[$k]["tipopar"]).'</td>';
335                                                $sf=tomaSistemasFicheros($tbKeys[$k]["numpar"],$idordenadores,true);
336                                                echo '<td>'.HTMLSELECT_sistemasficheros($cmd,$sf).'</td>';
337                                                $tm=tomaTamano($tbKeys[$k]["numpar"],$idordenadores);
338                                                echo '<td><input type="text" style="width:100" value="'.$tm.'"></td>';         
339                                                echo '<td>'.tomaNombresSO($tbKeys[$k]["numpar"],$idordenadores).'</td>';                                       
340                                                echo '<td>'.opeFormatear().'</td>';
341                                                echo '</tr>';
342                                        } else {
343                                                if ($tbKeys[$k]["codpar"]!=1) { // Aviso tabla no MSDOS.
344                                                        $aviso=true;
345                                                }
346                                        }
347                                } else {                        // Aviso: más de un disco.
348                                        $aviso=true;
349                                }
350                        }
351                }
352        }
353        // Marcar fin de zona de datos de la tabla.
354        echo '<TR id="TRIMG_'.$cc.'" height=5><TD colspan='.$colums.' style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #FFFFFF;">&nbsp;</TD></TR>';
355        // Mostrar aviso: solo disco 1 con tabla MSDOS.
356        if ($aviso) {
357                echo '<tr><th colspan='.$colums.'">'.$TbMsg["CONFIG_NODISK1MSDOS"].'</th></tr>';
358        }
359        // Botones de añadir y confirmar.
360        echo '<TR height=30><TD style="BACKGROUND-COLOR: #FFFFFF;" colspan='.$colums.' align=center>';
361        echo '  <A href="#add" style="text-decoration:none">
362                                                <IMG id="IMG_'.$icp.'" border=0 src="../images/boton_insertar.gif"
363                                                value="'.$k.'" onclick="addParticion(this,'.$cc.')"></A>
364                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
365                                        <A href="#add" style="text-decoration:none">
366                                                <IMG border=0 src="../images/boton_aceptar.gif" onclick="Confirmar('.$cc.')"></A></TD>
367                                        </TR>';
368}
369
370/*
371//
372//      Descripcion:
373//              (Esta funci�n es llamada por pintaConfiguraciones que est� incluida en ConfiguracionesParticiones.php)
374//              Crea una taba html con las especificaciones de particiones de un ambito ya sea ordenador,
375//              grupo de ordenadores o aula
376//      Parametros:
377//              $configuraciones: Cadena con las configuraciones de particioners del �mbito. El formato
378//              ser�a una secuencia de cadenas del tipo "clave de configuraci�n" separados por "@"
379//                      Ejemplo:1;7;30000000;3;3;0;@2;130;20000000;5;4;0;@3;131;1000000;0;0;0;0
380//      Devuelve:
381//              El c�digo html de la tabla
382//________________________________________________________________________________________________________
383//
384//
385*/
386function pintaParticionesRestaurarImagenSincronizacion1($cmd,$configuraciones,$idordenadores,$cc,$ambito,$idambito)
387{
388        global $tbKeys; // Tabla contenedora de claves de configuraci�n
389        global $conKeys; // Contador de claves de configuraci�n
390        global $TbMsg;
391        global $_SESSION;
392       
393        // Separamos las configuraciones segun el disco al que pertenezcan
394        $diskConfigs = splitConfigurationsByDisk($configuraciones);
395       
396        $columns=14;
397        echo '<TR>';
398        echo '<TH align=center>&nbsp;&nbsp;</TH>';
399        echo '<th align="center">&nbsp;'.$TbMsg["DISK"].'&nbsp;</th>'; // Número de  disco
400        echo '<TH align=center>&nbsp;'.$TbMsg["PARTITION"].'&nbsp;</TH>';
401        echo '<th align="center">&nbsp;'.$TbMsg["PARTITION_TYPE"].'&nbsp;</th>'; // Tipo de partición
402        echo '<th align="center">&nbsp;'.$TbMsg["INST_SO"].'&nbsp;</th>'; // Sistema Operativo Instalado
403        echo '<th align="center">&nbsp;'.$TbMsg["FILESYSTEM_SHORT"].'&nbsp;</th>'; // Sistema de ficheros
404        echo '<th align="center">&nbsp;'.$TbMsg["SIZE_KB"].'&nbsp;</th>'; // Tamaño
405        echo '<TH align=center>&nbsp;'.$TbMsg[10].'&nbsp;</TH>';
406        echo '<TH align=center>&nbsp;'.$TbMsg[16].'&nbsp;</TH>';       
407        echo '<TH align=center>&nbsp;'.$TbMsg["SYNC_METHOD"].'&nbsp;</TH>';
408        echo '<TH align=center>&nbsp;'.$TbMsg["SEND"].'&nbsp;</TH>';
409        echo '  <TH align=center>&nbsp;<dfn  title="'.$TbMsg["TITLE_W"].'">W</dfn> &nbsp;</TH>';
410        echo '  <TH align=center>&nbsp;<dfn  title="'.$TbMsg["TITLE_E"].'">E</dfn> &nbsp;</TH>';
411        echo '  <TH align=center>&nbsp;<dfn  title="'.$TbMsg["TITLE_C"].'">C</dfn> &nbsp;</TH>';
412        echo '</TR>';
413
414       
415        // Recorremos todas las configuraciones encontradas para cada disco
416       
417        foreach($diskConfigs as $disk => $diskConfig){
418                $disk = (int)$disk;
419                echo'<tr height="16">'.chr(13);
420                echo '<td colspan="'.$columns.'" style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #D4D0C8;">&nbsp;'.$TbMsg["DISK"].'&nbsp;'.$disk.'</td>'.chr(13);
421             
422                $auxCfg=split("@",$diskConfig); // Crea lista de particiones
423                for($i=0;$i<sizeof($auxCfg);$i++){
424                        $auxKey=split(";",$auxCfg[$i]); // Toma clave de configuracion
425                        for($k=0;$k<$conKeys;$k++){ // Busca los literales para las claves de esa partici�n
426                                if($tbKeys[$k]["cfg"]==$auxCfg[$i]){ // Claves encontradas
427                                        $swcc=$tbKeys[$k]["clonable"];
428                                        echo '<TR>'.chr(13);
429                                        echo '<TD align=center>&nbsp;&nbsp;</TD>';
430                                        if($swcc){
431                                                $icp=$cc."_".$tbKeys[$k]["numdisk"]."_".$tbKeys[$k]["numpar"]; // Identificador de la configuraci�n-partici�n
432                                                echo '<TD align=center><input type=radio idcfg="'.$cc.'" id="'.$icp.'" name="particion" value='.$tbKeys[$k]["numdisk"].";".$tbKeys[$k]["numpar"].'></TD>'.chr(13);
433                                                echo '<TD align=center>&nbsp;'.$tbKeys[$k]["numpar"].'&nbsp;</TD>'.chr(13);
434                                                echo '<TD align=center>&nbsp;'.$tbKeys[$k]["tipopar"].'&nbsp;</TD>'.chr(13);
435                                                echo '<TD align=center>&nbsp;'.tomaNombresSO($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).'&nbsp;</TD>'.chr(13);       
436                                                echo'<TD align=center>&nbsp;'.tomaSistemasFicheros($tbKeys[$k]["numpar"],$idordenadores,false,$tbKeys[$k]["numdisk"]).'&nbsp;</TD>'.chr(13);
437                                                echo'<TD align=center>&nbsp;'.tomaTamano($tbKeys[$k]["numpar"],$idordenadores,$tbKeys[$k]["numdisk"]).'&nbsp;</TD>'.chr(13);   
438                                                echo '<TD align=center>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,true,$idordenadores,$ambito).'</TD>';
439                                                $metodos="CACHE=".$TbMsg[13].chr(13);
440                                                $metodos.="REPO=".$TbMsg[9];           
441                                                echo '<TD align=center>'.HTMLCTESELECT($metodos,"desplemet_".$icp,"estilodesple","",1,100).'</TD>';
442                                               
443                                                $metodos="SYNC0="."  ".chr(13);
444                                                $metodos.="SYNC1=".$TbMsg["SYNC1_DIR"].chr(13);                                         
445                                                $metodos.="SYNC2=".$TbMsg["SYNC2_FILE"];               
446                                                echo '<TD align=center>'.HTMLCTESELECT($metodos,"desplesync_".$icp,"estilodesple","",1,100).'</TD>';                                                           
447                                                       
448                                                $metodos="UNICAST="."Unicast".chr(13);                                         
449                                                $metodos.="MULTICAST_". mcast_syntax($cmd,$ambito,$idambito) ."="."Multicast".chr(13);         
450                                                $metodos.="TORRENT_". torrent_syntax($cmd,$ambito,$idambito) ."="."Torrent".chr(13);
451                                                $metodos.="RSYNC=Rsync";
452                                                echo '<TD align=center>'.HTMLCTESELECT($metodos,"despletpt_".$icp,"estilodesple","",1,100).'</TD>';                                                             
453                                               
454                                                echo '<td align=center><input type=checkbox name="whole" id="whl-'.$icp.'"></td>';     
455                                                echo '<td align=center><input type=checkbox name="paramb" checked id="eli-'.$icp.'"></td>';     
456                                                echo '<td align=center><input type=checkbox name="compres" id="cmp-'.$icp.'"></td>';   
457                                                                               
458                                        }
459                                        echo '</TR>'.chr(13);
460                                }
461                        }
462                }
463        }       
464
465        echo '<TR height=5><TD colspan='.$columns.' style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #FFFFFF;">&nbsp;</TD></TR>';
466        echo '<tr><th colspan="14">'.$TbMsg["WARN_PROTOCOL"].'</th></tr>';
467}
468/**
469 * Las funcion pintaParticionesRestaurarImagenSincronizacion1 sustituye a las funciones
470 * pintaParticionesRestaurarSoftIncremental y pintaParticionesRestaurarImagenBasica
471 * para volver a usarlas tan sólo hay que ir al fichero comandos/RestaurarImagenBasica o comandos/RestaurarSoftIncremental y cambiar la
472 * llamada a la función que queramos en el parametro de pintaConfiguraciones.
473 * Actualmente en ambos ficheros llaman a la función pintaParticionesRestaurarImagenSincronizacion1 ya que pintan
474 * exactamente lo mismo.
475 *
476
477//*********************************************************************************************
478//      FUNCIONES
479//*********************************************************************************************
480//
481//      Descripci�n:
482//              (Esta funci�n es llamada por pintaConfiguraciones que est� incluida en ConfiguracionesParticiones.php)
483//              Crea una taba html con las especificaciones de particiones de un ambito ya sea ordenador,
484//              grupo de ordenadores o aula
485//      Parametros:
486//              $configuraciones: Cadena con las configuraciones de particioners del �mbito. El formato
487//              ser�a una secuencia de cadenas del tipo "clave de configuraci�n" separados por "@"
488//                      Ejemplo:1;7;30000000;3;3;0;@2;130;20000000;5;4;0;@3;131;1000000;0;0;0;0
489//      Devuelve:
490//              El c�digo html de la tabla
491//________________________________________________________________________________________________________
492//
493//
494function pintaParticionesRestaurarSoftIncremental($cmd,$configuraciones,$idordenadores,$cc,$ambito,$idambito)
495{
496        global $tbKeys; // Tabla contenedora de claves de configuraci�n
497        global $conKeys; // Contador de claves de configuraci�n
498        global $TbMsg;
499        global $_SESSION;
500       
501        // Separamos las configuraciones segun el disco al que pertenezcan
502        $diskConfigs = splitConfigurationsByDisk($configuraciones);
503       
504        $columns=9;
505        echo '<TR>';
506        echo '<TH align=center>&nbsp;&nbsp;</TH>';
507        echo '<th align="center">&nbsp;'.$TbMsg["DISK"].'&nbsp;</th>'; // Número de  disco
508        echo '<TH align=center>&nbsp;'.$TbMsg["PARTITION"].'&nbsp;</TH>';
509        echo '<th align="center">&nbsp;'.$TbMsg["PARTITION_TYPE"].'&nbsp;</th>'; // Tipo de partición
510        echo '<th align="center">&nbsp;'.$TbMsg["INST_SO"].'&nbsp;</th>'; // Sistema Operativo Instalado
511        echo '<th align="center">&nbsp;'.$TbMsg["FILESYSTEM_SHORT"].'&nbsp;</th>'; // Sistema de ficheros
512        echo '<th align="center">&nbsp;'.$TbMsg["SIZE_KB"].'&nbsp;</th>'; // Tamaño
513        echo '<TH align=center>&nbsp;'.$TbMsg[10].'&nbsp;</TH>';
514        echo '<TH align=center>&nbsp;'.$TbMsg[16].'&nbsp;</TH>';       
515        echo '</TR>';
516
517       
518        // Recorremos todas las configuraciones encontradas para cada disco
519       
520        foreach($diskConfigs as $disk => $diskConfig){
521                $disk = (int)$disk;
522                echo'<tr height="16">'.chr(13);
523                echo '<td colspan="'.$columns.'" style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #D4D0C8;">&nbsp;'.$TbMsg["DISK"].'&nbsp;'.$disk.'</td>'.chr(13);
524             
525                $auxCfg=split("@",$diskConfig); // Crea lista de particiones
526                for($i=0;$i<sizeof($auxCfg);$i++){
527                        $auxKey=split(";",$auxCfg[$i]); // Toma clave de configuracion
528                        for($k=0;$k<$conKeys;$k++){ // Busca los literales para las claves de esa partici�n
529                                if($tbKeys[$k]["cfg"]==$auxCfg[$i]){ // Claves encontradas
530                                        $swcc=$tbKeys[$k]["clonable"];
531                                        echo '<TR>'.chr(13);
532                                        echo '<TD align=center>&nbsp;&nbsp;</TD>';
533                                        if($swcc){
534                                                $icp=$cc."_".$tbKeys[$k]["numpar"]; // Identificador de la configuraci�n-partici�n
535                                                echo '<TD align=center><input type=radio idcfg="'.$cc.'" id="'.$icp.'" name="particion" value='.$tbKeys[$k]["numpar"].'></TD>'.chr(13);
536                                                echo '<TD align=center>&nbsp;'.$tbKeys[$k]["numpar"].'&nbsp;</TD>'.chr(13);
537                                                echo '<TD align=center>&nbsp;'.$tbKeys[$k]["tipopar"].'&nbsp;</TD>'.chr(13);
538                                                echo '<TD align=center>&nbsp;'.tomaNombresSO($tbKeys[$k]["numpar"],$idordenadores).'&nbsp;</TD>'.chr(13);       
539                                                echo'<TD align=center>&nbsp;'.tomaSistemasFicheros($tbKeys[$k]["numpar"],$idordenadores).'&nbsp;</TD>'.chr(13);
540                                                echo'<TD align=center>&nbsp;'.tomaTamano($tbKeys[$k]["numpar"],$idordenadores).'&nbsp;</TD>'.chr(13);   
541                                                echo '<TD align=center>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,true,$idordenadores,$ambito).'</TD>';
542                                                $metodos="CACHE=".$TbMsg[13].chr(13);
543                                                $metodos.="REPO=".$TbMsg[9];           
544                                                echo '<TD align=center>'.HTMLCTESELECT($metodos,"desplemet_".$icp,"estilodesple","",1,100).'</TD>';
545                                                       
546                                        }
547                                        echo '</TR>'.chr(13);
548                                }
549                        }
550                }
551        }       
552        echo '<TR height=5><TD colspan='.$columns.' style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #FFFFFF;">&nbsp;</TD></TR>';
553}
554
555//*********************************************************************************************
556//      FUNCIONES
557//*********************************************************************************************
558//
559//      Descripci�n:
560//              (Esta funci�n es llamada por pintaConfiguraciones que est� incluida en ConfiguracionesParticiones.php)
561//              Crea una taba html con las especificaciones de particiones de un ambito ya sea ordenador,
562//              grupo de ordenadores o aula
563//      Parametros:
564//              $configuraciones: Cadena con las configuraciones de particioners del �mbito. El formato
565//              ser�a una secuencia de cadenas del tipo "clave de configuraci�n" separados por "@"
566//                      Ejemplo:1;7;30000000;3;3;0;@2;130;20000000;5;4;0;@3;131;1000000;0;0;0;0
567//      Devuelve:
568//              El c�digo html de la tabla
569//________________________________________________________________________________________________________
570//
571//
572function pintaParticionesRestaurarImagenBasica($cmd,$configuraciones,$idordenadores,$cc,$ambito,$idambito)
573{
574        global $tbKeys; // Tabla contenedora de claves de configuraci�n
575        global $conKeys; // Contador de claves de configuraci�n
576        global $TbMsg;
577        global $_SESSION;
578       
579        // Separamos las configuraciones segun el disco al que pertenezcan
580        $diskConfigs = splitConfigurationsByDisk($configuraciones);
581       
582        $columns=9;
583        echo '<TR>';
584        echo '<TH align=center>&nbsp;&nbsp;</TH>';
585        echo '<th align="center">&nbsp;'.$TbMsg["DISK"].'&nbsp;</th>'; // Número de  disco
586        echo '<TH align=center>&nbsp;'.$TbMsg["PARTITION"].'&nbsp;</TH>';
587        echo '<th align="center">&nbsp;'.$TbMsg["PARTITION_TYPE"].'&nbsp;</th>'; // Tipo de partición
588        echo '<th align="center">&nbsp;'.$TbMsg["INST_SO"].'&nbsp;</th>'; // Sistema Operativo Instalado
589        echo '<th align="center">&nbsp;'.$TbMsg["FILESYSTEM_SHORT"].'&nbsp;</th>'; // Sistema de ficheros
590        echo '<th align="center">&nbsp;'.$TbMsg["SIZE_KB"].'&nbsp;</th>'; // Tamaño
591        echo '<TH align=center>&nbsp;'.$TbMsg[10].'&nbsp;</TH>';
592        echo '<TH align=center>&nbsp;'.$TbMsg[16].'&nbsp;</TH>';
593        echo '</TR>';
594
595        // Recorremos todas las configuraciones encontradas para cada disco
596       
597        foreach($diskConfigs as $disk => $diskConfig){
598                $disk = (int)$disk;
599                echo'<tr height="16">'.chr(13);
600                echo '<td colspan="'.$columns.'" style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #D4D0C8;">&nbsp;'.$TbMsg["DISK"].'&nbsp;'.$disk.'</td>'.chr(13);
601             
602                $auxCfg=split("@",$diskConfig); // Crea lista de particiones
603                for($i=0;$i<sizeof($auxCfg);$i++){
604                        $auxKey=split(";",$auxCfg[$i]); // Toma clave de configuracion
605                        for($k=0;$k<$conKeys;$k++){ // Busca los literales para las claves de esa partici�n
606                                if($tbKeys[$k]["cfg"]==$auxCfg[$i]){ // Claves encontradas
607                                        $swcc=$tbKeys[$k]["clonable"];
608                                        if($swcc){
609                                                echo '<TR>'.chr(13);
610                                                echo '<TD align=center>&nbsp;&nbsp;</TD>';
611                                                $icp=$cc."_".$tbKeys[$k]["numpar"]; // Identificador de la configuraci�n-partici�n
612                                                echo '<TD align=center><input type=radio idcfg="'.$cc.'" id="'.$icp.'" name="particion" value='.$tbKeys[$k]["numpar"].'></TD>'.chr(13);
613                                                echo '<TD align=center>&nbsp;'.$tbKeys[$k]["numpar"].'&nbsp;</TD>'.chr(13);
614                                                echo '<TD align=center>&nbsp;'.$tbKeys[$k]["tipopar"].'&nbsp;</TD>'.chr(13);
615                                                echo '<TD align=center>&nbsp;'.tomaNombresSO($tbKeys[$k]["numpar"],$idordenadores).'&nbsp;</TD>'.chr(13);       
616                                                echo'<TD align=center>&nbsp;'.tomaSistemasFicheros($tbKeys[$k]["numpar"],$idordenadores).'&nbsp;</TD>'.chr(13);
617                                                echo'<TD align=center>&nbsp;'.tomaTamano($tbKeys[$k]["numpar"],$idordenadores).'&nbsp;</TD>'.chr(13);   
618                                                echo '<TD align=center>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,true,$idordenadores,$ambito).'</TD>';
619                                                $metodos="CACHE=".$TbMsg[13].chr(13);
620                                                $metodos.="REPO=".$TbMsg[9];           
621                                                echo '<TD align=center>'.HTMLCTESELECT($metodos,"desplemet_".$icp,"estilodesple","",1,100).'</TD>';
622                                        }
623                                }
624                        }
625                }
626        }       
627        echo '<TR height=5><TD colspan='.$columns.' style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #FFFFFF;">&nbsp;</TD></TR>';
628}
629**/
630
Note: See TracBrowser for help on using the repository browser.