source: admin/WebConsole/includes/pintaParticiones.php @ 0ebb81b

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 0ebb81b was 0ebb81b, checked in by ramon <ramongomez@…>, 7 years ago

#834: Simplificar código CSS.

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

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