source: admin/WebConsole/comandos/jscripts/Configurar.js @ 1c69be8

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 1c69be8 was df8abeb, checked in by alonso <alonso@…>, 12 years ago

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

  • Property mode set to 100644
File size: 7.3 KB
Line 
1// *************************************************************************************************************************************************
2// Libreria de scripts de Javascript
3// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
4// Fecha Creación: 2009-2010
5// Fecha Última modificación: Agosto-2010
6// Nombre del fichero: Configurar.js
7// Descripción :
8//              Este fichero implementa las funciones javascript del fichero Configurar.php (Comandos)
9// *************************************************************************************************************************************************
10
11var atributos; // Variable global
12
13//________________________________________________________________________________________________________
14//
15//      Elimina una fila de una tabla de configuraciones perteneciente a las propiedades de una partición
16//      Parametros:
17//              icp: Identificador de la configuración-partición
18//              o: Objeto checkbox que invoca la función
19//________________________________________________________________________________________________________
20
21function eliminaParticion(icp,o)
22{
23        var res=confirm(TbMsg[4]); // Pide confirmación
24        if(!res){
25                o.checked=false;
26                return;
27        }
28        var tbCfg = document.getElementById("tabla_conf"); // Recupera objeto <TABLE>
29        var trCfg = document.getElementById("TR_"+icp); // Recupera <TR> de la fila a eliminar
30        var tbodyObj=tbCfg.firstChild; // Recupera hijo <TBODY> del objeto <TABLE>
31        tbodyObj.removeChild(trCfg); // Elimina nodo <TR> completo
32}
33//________________________________________________________________________________________________________
34
35function addParticion(objImg,cc)
36{
37        var tbCfg = document.getElementById("tabla_conf"); // Recupera objeto <TABLE>
38        var tbodyObj=tbCfg.firstChild; // Recupera hijo <TBODY> del objeto <TABLE>
39               
40        var trImg=document.getElementById("TRIMG_"+cc); // Recupera <TR> de los botones para insertar antes
41
42        var k=objImg.getAttribute('value'); // Toma siguiente identificador de nodo
43        var icp=cc+"_"+k; // Identificador de la configuración-partición
44
45        /* Crea objeto TR y lo añade al TBODY de la tabla*/     
46        var nwTR = document.createElement('TR');
47        nwTR.setAttribute("id","TR_"+icp);
48        tbodyObj.insertBefore(nwTR,trImg); // Inserta nodo <TR> completo
49        var patron = document.getElementById("TR_patron"); // Recupera <TR> patron
50        nwTR.innerHTML=patron.innerHTML;
51        /* Actualiza objeto checkbox nuevo para que actue como los demás */
52        var nwCHK = document.getElementById("CHK_patron"); // Recupera reciente chekcbox
53        var fclbk="eliminaParticion('"+icp+"');";
54        nwCHK.setAttribute("onclick",fclbk);   
55        nwCHK.removeAttribute("id");                           
56        /* Incrementa para siguiente identificador de nodo */                           
57        k++;                   
58        objImg.setAttribute('value',k);         
59}
60//________________________________________________________________________________________________________
61//
62//      Confirma un bloque de configuración de particiones
63//      Parametros:
64//              idordenadores: Identificadores de los ordenadores a los que se aplicará el comando
65//              cc: Identificador de la configuración (bloque de particiones)
66//      Especificaciones:
67//              Cuando un comando se va a aplicar a un conjunto aleatorio de ordenaores, el código del
68//              ámbito será cero y la variable idambito contendrá la cadena con los identificadores de
69//              los oordenadores separados por coma (este dato aparece en esta función como promer parámetro)
70//________________________________________________________________________________________________________
71 
72function Confirmar(cc)
73{
74        if(comprobarDatos(cc)){
75                var RC="@";
76                var disco=1; // Siempre disco 1
77                atributos+=RC+"dsk="+disco+RC; // Le añade a la variable global el parámetro disco
78                //alert(atributos)
79                if(document.fdatosejecucion.ambito.value!=AMBITO_ORDENADORES){
80                        var tbOrd= document.getElementById("tbOrd_"+cc); // Recupera tabla de ordenadores de la configuración
81                        var idordenadores=tbOrd.getAttribute('value'); // Toma identificadores de los ordenadores
82                        var cadenaid=document.fdatos.cadenaid.value; // Cadena de identificadores de todos los ordenadores del ámbito
83                        if(idordenadores!=cadenaid){ // Si no son iguales es que el ámbito de aplicación es restringido
84                                document.fdatosejecucion.ambito.value=0; // Ambito de aplicación restringido
85                                document.fdatosejecucion.idambito.value=idordenadores;
86                        }
87                }       
88                document.fdatosejecucion.atributos.value=atributos;     
89                //filtrado();           
90                document.fdatosejecucion.submit();             
91        }
92}
93//________________________________________________________________________________________________________
94//
95//      Confirma un bloque de configuración de particiones
96//      Parametros:
97//              cc: Identificador de la configuración (bloque de particiones)
98//________________________________________________________________________________________________________
99 
100function comprobarDatos(cc)     
101{
102        // Indices de campos a recuperar
103        var ipar=1;
104        var icodpar=2;
105        var isysfi=3;
106        var itama=4;
107        var iope=6;
108       
109        var SL="#";
110        var TB="$";
111       
112        var tbpar=new Array(); // Para control de particiones duplicadas
113        atributos="cfg="; // Inicializa variable global de parámetros del comando
114       
115        var trCfg = document.getElementById("TR_"+cc); // Recupera primer <TR> de la configuración
116        trCfg=trCfg.nextSibling; // Primera fila de particiones
117        while(trCfg.id!="TRIMG_"+cc){
118                var par=tomavalorDesple(trCfg.childNodes[ipar].childNodes[0]); // Partición
119                if(par==0){
120                        alert(TbMsg[1]);
121                        trCfg.childNodes[ipar].childNodes[0].focus();
122                        return(false);
123                }       
124                if(tbpar[par]==1){ // Existe ya una partición con ese número
125                        alert(TbMsg[0]);
126                        trCfg.childNodes[ipar].childNodes[0].focus();
127                        return(false);
128                }
129                tbpar[par]=1;
130                var codpar=tomavalorDesple(trCfg.childNodes[icodpar].childNodes[0]); // Tipo de partición
131                if(codpar==0){
132                        alert(TbMsg[2]);
133                        trCfg.childNodes[icodpar].childNodes[0].focus();
134                        return(false);
135                }       
136
137                var sysfi=tomatextDesple(trCfg.childNodes[isysfi].childNodes[0]); // Sistema de ficheros
138       
139                var tama=trCfg.childNodes[itama].childNodes[0].value; // Tamaño de partición
140                if(tama==0){
141                        alert(TbMsg[3]);
142                        trCfg.childNodes[itama].childNodes[0].focus();
143                        return(false);
144                }
145                var ope=tomavalorDesple(trCfg.childNodes[iope].childNodes[0]); // Operación a realizar 
146       
147                trCfg=trCfg.nextSibling; // Primera fila de particiones
148                /* Compone formato del comando */
149                atributos+="par="+par+TB+"cpt="+codpar+TB+"sfi="+sysfi+TB+"tam="+tama+TB+"ope="+ope+SL;
150        }                                                                                                                                                       
151        return(true);
152}
153//________________________________________________________________________________________________________
154//
155// Devuelve el valor seleccionado de un desplegable cualquiera
156//________________________________________________________________________________________________________
157
158function tomavalorDesple(desplegable)
159{
160        var idx=desplegable.selectedIndex; // Indice seleccionado en el desplegable
161        var val=desplegable.options[idx].value; // Valor seleccionado en el desplegable
162        return(val);
163}
164//________________________________________________________________________________________________________
165//
166// Devuelve el valor seleccionado de un desplegable cualquiera
167//________________________________________________________________________________________________________
168
169function tomatextDesple(desplegable)
170{
171        var idx=desplegable.selectedIndex; // Indice seleccionado en el desplegable
172        var txt=desplegable.options[idx].text; // Valor seleccionado en el desplegable
173        return(txt);
174}
175
Note: See TracBrowser for help on using the repository browser.