diff options
author | ramon <ramongomez@us.es> | 2013-06-07 12:32:48 +0000 |
---|---|---|
committer | ramon <ramongomez@us.es> | 2013-06-07 12:32:48 +0000 |
commit | 92cf666284b71405123a463aa9dec894ac9132f7 (patch) | |
tree | d48bc1f30bbd8f10aa4d667346f41c14e9bef521 | |
parent | 0390d464f9d793a549a52cf4922bb82f98c8677a (diff) |
#601: Integrar código de revisión r3860 con mejoras en asistente de particionado para grupos de ordenadores.
git-svn-id: https://opengnsys.es/svn/branches/version1.0@3861 a21b9725-9963-47de-94b9-378ad31fedc9
4 files changed, 48 insertions, 32 deletions
diff --git a/admin/WebConsole/asistentes/AsistenteParticionado.php b/admin/WebConsole/asistentes/AsistenteParticionado.php index fa8a0eff..8a0cae7a 100644 --- a/admin/WebConsole/asistentes/AsistenteParticionado.php +++ b/admin/WebConsole/asistentes/AsistenteParticionado.php @@ -98,7 +98,17 @@ function doOnload(){ : '.$textambito.'</U></span> </span></p>'; $sws=0x11111; // Mostrar todas las configuraciones diferentes. - pintaConfiguraciones($cmd,$idambito,$ambito,7,$sws,false); + $configuraciones = pintaConfiguraciones($cmd,$idambito,$ambito,7,$sws,false); + global $tbKeys; // Tabla contenedora de claves de configuración + global $conKeys; // Contador de claves de configuración + $mindisks = 1; + foreach($configuraciones as $configuracion){ + // Separamos las configuraciones segun el disco al que pertenezcan + $diskConfigs = splitConfigurationsByDisk($configuracion); + // En diskconfigs tendremos un array con tantas configuraciones como discos, + // no quedamos con su length que será el minimo numero de discos + $mindisks = count($diskConfigs); + } ?> <form align=center name="fdatos" > @@ -107,7 +117,11 @@ function doOnload(){ <tr> <td> <?php echo $TbMsg[35].":\n"; // Disco ?> - <input type="text" id="n_disk" name="n_disk" value="1" onchange="calculateFreeDisk(document.fdatos)"> + <select id="n_disk" onchange="calculateFreeDisk(document.fdatos)"> + <?php for($d = 1; $d <= $mindisks; $d++){ + echo "<option value=\"$d\">$d</option>\n"; + } ?> + </select> </td> </tr> <tr> diff --git a/admin/WebConsole/asistentes/jscripts/asistentes.js b/admin/WebConsole/asistentes/jscripts/asistentes.js index 9e714aa3..de5ee450 100644 --- a/admin/WebConsole/asistentes/jscripts/asistentes.js +++ b/admin/WebConsole/asistentes/jscripts/asistentes.js @@ -364,6 +364,19 @@ function clickPartitionCheckbox (form, npart, isGPT) { } } +/** + * Dado un numero de disco, recorre todos los input hidden con nombre disksize_"disco" + * y devuelve el de menor valor + */ +function getMinDiskSize(disk){ + var diskSizeArray = document.getElementsByName("disksize_"+disk); + var minSize = diskSizeArray[0].value; + for(var i= 1; i < diskSizeArray.length; i++){ + if(diskSizeArray[i].value < minSize) + minSize = diskSizeArray[i].value; + } + return minSize; +} // Código para calcular el espacio libre del disco. function calculateFreeDisk(form) { @@ -373,8 +386,9 @@ function calculateFreeDisk(form) { } // Capturamos el disco seleccionado var disk = document.getElementById("n_disk").value; - // Buscamos el input hidden para el disco seleccionado - var diskSize = document.getElementById("disksize_"+disk).value; + // Buscamos por nombre todos los campos disksize_"disk" y nos quedamos con el de menor valor + var diskSize = getMinDiskSize(disk); + var freeDisk=document.getElementById("freedisk"); freeDisk.value=diskSize; @@ -411,7 +425,7 @@ function calculateFreeGPTDisk(form) { // Capturamos el disco seleccionado var disk = document.getElementById("n_disk").value; // Buscamos el input hidden para el disco seleccionado - var diskSize = document.getElementById("disksize_"+disk).value; + var diskSize = getMinDiskSize(disk); document.getElementById('freediskGPT').value=diskSize; var freeDisk=document.getElementById("freediskGPT"); diff --git a/admin/WebConsole/includes/ConfiguracionesParticiones.php b/admin/WebConsole/includes/ConfiguracionesParticiones.php index fe71dc5c..bf5b1e6a 100644 --- a/admin/WebConsole/includes/ConfiguracionesParticiones.php +++ b/admin/WebConsole/includes/ConfiguracionesParticiones.php @@ -162,6 +162,7 @@ function cargaCaves($cmd,$idambito,$ambito,$sws,$swr) } /*________________________________________________________________________________________________________ UHU - 2013/05/14 - Se añade la clave número de disco + UHU - 2013/06/06 - Se añade un return de las configuraciones detectadas Dibuja la tabla de configuración de las particiones de un grupo de ordenadores Parámetros de la función: @@ -261,6 +262,7 @@ function pintaConfiguraciones($cmd,$idambito,$ambito,$colums,$sws,$swr,$pintaPar if (!$rs->Abrir()) return; // Error al abrir recordset $rs->Primero(); $cc=0; // Contador de configuraciones + $configuraciones = array(); echo '<table id="tabla_conf" width="95%" class="tabla_listados_sin" align="center" border="0" cellpadding="0" cellspacing="1">'; while (!$rs->EOF){ $cc++; @@ -269,7 +271,7 @@ function pintaConfiguraciones($cmd,$idambito,$ambito,$colums,$sws,$swr,$pintaPar echo pintaOrdenadores($cmd,$rs->campos["idordenadores"],10,$cc); echo '</td></tr>'; //Muestra particiones y configuración - + $configuraciones[$cc-1] = $rs->campos["configuraciones"]; echo $pintaParticionesFunction($cmd,$rs->campos["configuraciones"],$rs->campos["idordenadores"],$cc,$ambito,$idambito); $rs->Siguiente(); } @@ -278,6 +280,8 @@ function pintaConfiguraciones($cmd,$idambito,$ambito,$colums,$sws,$swr,$pintaPar } echo "</table>"; $rs->Cerrar(); + + return $configuraciones; } //________________________________________________________________________________________________________ // Descripción: diff --git a/admin/WebConsole/includes/pintaParticiones.php b/admin/WebConsole/includes/pintaParticiones.php index 98de5d51..33cc316f 100644 --- a/admin/WebConsole/includes/pintaParticiones.php +++ b/admin/WebConsole/includes/pintaParticiones.php @@ -146,34 +146,18 @@ function pintaParticiones($cmd,$configuraciones,$idordenadores,$cc) // Mostrar información del disco, si se ha obtenido. if (!empty ($disksize)) { echo'<tr height="16">'.chr(13); - echo'<td align="center"> </td>'.chr(13); - echo'<td align="center"> '.$disktable[$disk].' </td>'.chr(13); - echo'<td></td>'.chr(13); - echo'<td></td>'.chr(13); - echo'<td></td>'.chr(13); - echo'<td align="right"> <strong>'.$disksize[$disk].'</span></strong> </td>'.chr(13); - // Creamos un campo oculto para guardar información sobre el disco y su tamaño separados por ; - echo "<input type='hidden' id='disksize_".$disk."' value='".$disksize[$disk]."'/>"; - echo'<td></td>'.chr(13); - echo'<td></td>'.chr(13); + echo'<td align="center"> </td>'.chr(13); + echo'<td align="center"> '.$disktable[$disk].' </td>'.chr(13); + echo'<td></td>'.chr(13); + echo'<td></td>'.chr(13); + echo'<td></td>'.chr(13); + echo'<td align="right"> <strong>'.$disksize[$disk].'</span></strong> </td>'.chr(13); + // Creamos un campo oculto para guardar información sobre el disco y su tamaño separados por ; + echo "<input type='hidden' name='disksize_".$disk."' value='".$disksize[$disk]."'/>\n"; + echo'<td></td>'.chr(13); + echo'<td></td>'.chr(13); echo'<td></td>'.chr(13); echo'</tr>'.chr(13); - - /* - foreach($disksize as $disk=>$size){ - echo'<tr height="16">'.chr(13); - echo'<td align="center"> '.$TbMsg[35].' '.$disk.'</td>'.chr(13); - echo'<td align="center"> '.$disktable[$disk].' </td>'.chr(13); - echo'<td></td>'.chr(13); - echo'<td></td>'.chr(13); - echo'<td align="right"> '.$size.' </td>'.chr(13); - echo'<td></td>'.chr(13); - echo'<td></td>'.chr(13); - echo'<td></td>'.chr(13); - echo'<td></td>'.chr(13); - echo'</tr>'.chr(13); - } - */ } } echo '<tr height="5"><td colspan="'.$columns.'" style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #FFFFFF;"> </td></tr>'; |