source: admin/WebConsole/includes/pintaParticiones.php @ 7cf3d39

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 7cf3d39 was 9ca55ab, checked in by ramon <ramongomez@…>, 9 years ago

#676: Activar automáticamente módulo para ZFS; detección correcta de ZPOOL y mostrar datos en tabla de configuración.

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

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