source: admin/WebConsole/comandos/RestaurarImagen.php @ af8cca4

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 af8cca4 was ad1f809, checked in by adv <adv@…>, 14 years ago

version 1.0.1 #357 comando->Restaurar(torrent,multicast,unicast), comando->CrearImagen? en cache MASTER-REPOSITORIO

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

  • Property mode set to 100644
File size: 14.3 KB
Line 
1<?
2// *************************************************************************************************************************************************
3// Aplicación WEB: ogAdmWebCon
4// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
5// Fecha Creación: Año 2009-2010
6// Fecha Última modificación: Agosto-2010
7// Nombre del fichero: RestaurarImagenOrdenador.php
8// Descripción :
9//              Implementación del comando "RestaurarImagen" (Ordenadores)
10// *************************************************************************************************************************************************
11include_once("../includes/ctrlacc.php");
12include_once("../clases/AdoPhp.php");
13include_once("../includes/constantes.php");
14include_once("../includes/comunes.php");
15include_once("../includes/CreaComando.php");
16include_once("../includes/HTMLSELECT.php");
17include_once("../includes/HTMLCTESELECT.php");
18include_once("../includes/TomaDato.php");
19include_once("../includes/ConfiguracionesParticiones.php");
20include_once("../includes/RecopilaIpesMacs.php");
21include_once("../idiomas/php/".$idioma."/comandos/restaurarimagen_".$idioma.".php");
22//________________________________________________________________________________________________________
23include_once("./includes/capturaacciones.php");
24//________________________________________________________________________________________________________
25$cmd=CreaComando($cadenaconexion);
26if (!$cmd)
27        Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D.
28//________________________________________________________________________________________________________
29//
30// Captura parámetros
31//________________________________________________________________________________________________________
32
33$ambito=0;
34$idambito=0;
35
36// Agrupamiento por defecto
37$fk_sysFi=0;
38$fk_tamano=0;
39$fk_nombreSO=0;
40
41if (isset($_GET["idambito"])) $idambito=$_GET["idambito"];
42if (isset($_GET["ambito"])) $ambito=$_GET["ambito"];
43
44if (isset($_POST["idambito"])) $idambito=$_POST["idambito"];
45if (isset($_POST["ambito"])) $ambito=$_POST["ambito"];
46
47if (isset($_POST["fk_sysFi"])) $fk_sysFi=$_POST["fk_sysFi"];
48if (isset($_POST["fk_tamano"])) $fk_tamano=$_POST["fk_tamano"];
49if (isset($_POST["fk_nombreSO"])) $fk_nombreSO=$_POST["fk_nombreSO"];
50
51//________________________________________________________________________________________________________
52?>
53<HTML>
54<TITLE>Administración web de aulas</TITLE>
55<HEAD>
56        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
57<LINK rel="stylesheet" type="text/css" href="../estilos.css">
58<STYLE TYPE="text/css"></STYLE>
59<SCRIPT language="javascript" src="./jscripts/RestaurarImagen.js"></SCRIPT>
60<SCRIPT language="javascript" src="../clases/jscripts/HttpLib.js"></SCRIPT>
61<SCRIPT language="javascript" src="./jscripts/comunescomandos.js"></SCRIPT>
62<SCRIPT language="javascript" src="../jscripts/constantes.js"></SCRIPT>
63<? echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/comandos/comunescomandos_'.$idioma.'.js"></SCRIPT>'?>
64<? echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/comandos/restaurarimagen_'.$idioma.'.js"></SCRIPT>'?>
65</HEAD>
66<BODY>
67<?
68        switch($ambito){
69                        case $AMBITO_AULAS :
70                                $urlimg='../images/iconos/aula.gif';
71                                $textambito=$TbMsg[2];
72                                break;
73                        case $AMBITO_GRUPOSORDENADORES :
74                                $urlimg='../images/iconos/carpeta.gif';
75                                $textambito=$TbMsg[3];
76                                break;
77                        case $AMBITO_ORDENADORES :
78                                $urlimg='../images/iconos/ordenador.gif';
79                                $textambito=$TbMsg[4];
80                                break;
81        }
82        echo '<p align=center><span class=cabeceras>'.$TbMsg[5].'</span><br>'; // Cabecera
83        echo '<IMG src="'.$urlimg.'">&nbsp;&nbsp;<span align=center class=subcabeceras>
84                                <U>'.$TbMsg[6].': '.$textambito.','.$nombreambito.'</U></span>&nbsp;&nbsp;</span></p>'; // Subcebecera
85        echo '<P align=center><SPAN align=center class=subcabeceras>'.$TbMsg[19].'</SPAN></P>';         
86        if($ambito!=$AMBITO_ORDENADORES){       
87                $cadenaid="";
88                $cadenaip="";
89                $cadenamac="";
90                RecopilaIpesMacs($cmd,$ambito,$idambito);               
91        ?>
92                <FORM action="RestaurarImagen.php" name="fdatos" method="POST">
93                                <INPUT type="hidden" name="idambito" value="<? echo $idambito?>">
94                                <INPUT type="hidden" name="ambito" value="<? echo $ambito?>">   
95                                <INPUT type="hidden" name="cadenaid" value="<? echo $cadenaid?>">                               
96                                <TABLE class="tabla_busquedas" align=center border=0 cellPadding=0 cellSpacing=0>
97                                <TR>
98                                        <TH height=15 align="center" colspan=14><? echo $TbMsg[18]?></TH>
99                                </TR>
100                                <TR>
101                                        <TD align=right><? echo $TbMsg[30]?></TD>
102                                        <TD align=center><INPUT type="checkbox" value="<? echo $msk_sysFi?>" name="fk_sysFi" <? if($fk_sysFi==$msk_sysFi) echo " checked "?>></TD>
103                                        <TD width="20" align=center>&nbsp;</TD>
104
105                                        <TD align=right><? echo $TbMsg[32]?></TD>
106                                        <TD align=center><INPUT type="checkbox" value="<? echo $msk_tamano?>" name="fk_tamano" <? if($fk_tamano==$msk_tamano) echo " checked "?>></TD>
107                                        <TD width="20" align=center>&nbsp;</TD>
108                               
109                                        <TD align=right><? echo $TbMsg[31]?></TD>
110                                        <TD align=center><INPUT type="checkbox" value="<? echo $msk_nombreSO?>" name="fk_nombreSO" <? if($fk_nombreSO==$msk_nombreSO) echo " checked "?>></TD>
111                                        <TD width="20" align=center>&nbsp;</TD>                         
112                                </TR>
113                                <TR>
114                                        <TD height=2 style="BORDER-TOP:#999999 1px solid;" align="center" colspan=14>&nbsp;</TD>                       
115                                </TR>
116                                <TR>
117                                        <TD height=20 align="center" colspan=14>
118                                                <A href=#>
119                                                <IMG border=0 src="../images/boton_confirmar.gif" onclick="document.fdatos.submit()"></A></TD>                 
120                                </TR>
121                        </TABLE>
122                </FORM>
123<?
124        }
125        $sws=$fk_sysFi |  $fk_tamano | $fk_nombreSO;
126        pintaConfiguraciones($cmd,$idambito,$ambito,9,$sws,false);     
127        //________________________________________________________________________________________________________
128        include_once("./includes/formularioacciones.php");
129        //________________________________________________________________________________________________________
130        //________________________________________________________________________________________________________
131        include_once("./includes/opcionesacciones.php");
132        //________________________________________________________________________________________________________
133?>
134</BODY>
135</HTML>
136<?
137//________________________________________________________________________________________________________
138//
139//      Descripción:
140//              (Esta función es llamada por pintaConfiguraciones que está incluida en ConfiguracionesParticiones.php)
141//              Crea una taba html con las especificaciones de particiones de un ambito ya sea ordenador,
142//              grupo de ordenadores o aula
143//      Parametros:
144//              $configuraciones: Cadena con las configuraciones de particioners del ámbito. El formato
145//              sería una secuencia de cadenas del tipo "clave de configuración" separados por "@"
146//                      Ejemplo:1;7;30000000;3;3;0;@2;130;20000000;5;4;0;@3;131;1000000;0;0;0;0
147//      Devuelve:
148//              El código html de la tabla
149//________________________________________________________________________________________________________
150function pintaParticiones($cmd,$configuraciones,$idordenadores,$cc,$ambito,$idambito)
151{
152        global $tbKeys; // Tabla contenedora de claves de configuración
153        global $conKeys; // Contador de claves de configuración
154        global $TbMsg;
155        global $_SESSION;
156        $colums=8;
157        echo '<TR>';
158        echo '<TH align=center>&nbsp;&nbsp;</TH>';
159        echo '<TH align=center>&nbsp;'.$TbMsg[8].'&nbsp;</TH>';
160        echo '<TH align=center>&nbsp;'.$TbMsg[24].'&nbsp;</TH>';
161        echo '<TH align=center>&nbsp;'.$TbMsg[31].'&nbsp;</TH>';
162        echo '<TH align=center>&nbsp;'.$TbMsg[27].'&nbsp;</TH>';
163        echo '<TH align=center>&nbsp;'.$TbMsg[22].'&nbsp;</TH>';
164        echo '<TH align=center>&nbsp;'.$TbMsg[10].'&nbsp;</TH>';
165        echo '<TH align=center>&nbsp;'.$TbMsg[11].'&nbsp;</TH>';
166        echo '<TH align=center>&nbsp;'.$TbMsg[9].'&nbsp;</TH>';
167        echo '</TR>';
168
169        $auxCfg=split("@",$configuraciones); // Crea lista de particiones
170        for($i=0;$i<sizeof($auxCfg);$i++){
171                $auxKey=split(";",$auxCfg[$i]); // Toma clave de configuracion
172                for($k=0;$k<$conKeys;$k++){ // Busca los literales para las claves de esa partición
173                        if($tbKeys[$k]["cfg"]==$auxCfg[$i]){ // Claves encontradas
174                                $swcc=$tbKeys[$k]["clonable"];
175                                echo '<TR>'.chr(13);
176                                if($swcc){
177                                        $icp=$cc."_".$tbKeys[$k]["numpar"]; // Identificador de la configuración-partición
178                                        echo '<TD ><input type=radio idcfg="'.$cc.'" id="'.$icp.'" name="particion" value='.$tbKeys[$k]["numpar"].'></TD>'.chr(13);
179                                        echo '<TD align=center>&nbsp;'.$tbKeys[$k]["numpar"].'&nbsp;</TD>'.chr(13);
180                                        echo '<TD align=center>&nbsp;'.$tbKeys[$k]["tipopar"].'&nbsp;</TD>'.chr(13);
181                                       
182                                        //echo '<TD>&nbsp;'.$tbKeys[$k]["nombreso"].'&nbsp;</TD>'.chr(13);
183                                        echo '<TD align=center>&nbsp;'.tomaNombresSO($tbKeys[$k]["numpar"],$idordenadores).'&nbsp;</TD>'.chr(13);       
184                                       
185                                        //echo'<TD align=center>&nbsp;'.$tbKeys[$k]["sistemafichero"].'&nbsp;</TD>'.chr(13);
186                                        echo'<TD align=center>&nbsp;'.tomaSistemasFicheros($tbKeys[$k]["numpar"],$idordenadores).'&nbsp;</TD>'.chr(13);
187
188                                        //echo'<TD align=rigth>&nbsp;'.formatomiles($tbKeys[$k]["tamano"]).'&nbsp;</TD>'.chr(13);
189                                        echo'<TD align=center>&nbsp;'.tomaTamano($tbKeys[$k]["numpar"],$idordenadores).'&nbsp;</TD>'.chr(13);   
190                                                                       
191                                        echo '<TD>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,true,$idordenadores,$ambito).'</TD>';
192                                        echo '<TD>'.HTMLSELECT_imagenes($cmd,$tbKeys[$k]["idimagen"],$tbKeys[$k]["numpar"],$tbKeys[$k]["codpar"],$icp,false,$idordenadores,$ambito).'</TD>';
193                                                //Clonación
194                                       
195                                        $metodos="UNICAST=UNICAST".chr(13);
196                                        $metodos.=mcast_syntax($cmd,$ambito,$idambito) . "=MULTICAST".chr(13);
197                                        $metodos.="TORRENT peer:60=TORRENT";
198                                       
199                                        $TBmetodos["UNICAST"]=1;
200                                        $TBmetodos["MULTICAST"]=2;
201                                        $TBmetodos["TORRENT"]=3;
202                                        $idxc=$_SESSION["protclonacion"];
203                                        echo '<TD>'.HTMLCTESELECT($metodos,"protoclonacion_".$icp,"estilodesple","",$TBmetodos[$idxc],100).'</TD>';
204                                }
205                                echo '<TR>'.chr(13);
206                        }
207                }
208        }       
209        echo '<TR height=5><TD colspan='.$colums.' style="BORDER-TOP: #999999 1px solid;BACKGROUND-COLOR: #FFFFFF;">&nbsp;</TD></TR>';
210}
211/*________________________________________________________________________________________________________
212        Crea la etiqueta html <SELECT> de los perfiles softwares
213________________________________________________________________________________________________________*/
214function HTMLSELECT_imagenes($cmd,$idimagen,$numpar,$codpar,$icp,$sw,$idordenadores,$ambito)
215{
216        $SelectHtml="";
217        $cmd->texto="SELECT *,repositorios.ip as iprepositorio  FROM  imagenes
218                                INNER JOIN repositorios ON repositorios.idrepositorio=imagenes.idrepositorio";
219        if($sw) // Imágenes con el mismo tipo de partición
220                $cmd->texto.=   "       WHERE imagenes.codpar=".$codpar;                                                               
221        else
222                $cmd->texto.=   "       WHERE imagenes.codpar<>".$codpar;               
223               
224        $cmd->texto.=" AND imagenes.numpar>0 AND imagenes.codpar>0 AND imagenes.idrepositorio>0 "; // La imagene debe existir y estar creada   
225   
226        $idordenador1 = explode(",",$idordenadores);
227        $idordenador=$idordenador1[0];
228        if ($ambito == 16)
229                $cmd->texto.=" AND repositorios.idrepositorio=(select idrepositorio from ordenadores where ordenadores.idordenador=" .$idordenador .") OR repositorios.ip=(select ip from ordenadores where ordenadores.idordenador=". $idordenador .")";
230    else
231        $cmd->texto.=" AND repositorios.idrepositorio=(select idrepositorio from ordenadores where ordenadores.idordenador=" .$idordenador .")";
232   
233
234
235        //echo $cmd->texto;
236
237        $rs=new Recordset;
238        $rs->Comando=&$cmd;
239        if($sw) $des=1; else $des=0;
240        $SelectHtml.= '<SELECT class="formulariodatos" id="despleimagen_'.$icp.'_'.$des.'" style="WIDTH:220">';
241        $SelectHtml.= '    <OPTION value="0"></OPTION>';
242
243        if ($rs->Abrir()){
244                $rs->Primero();
245                while (!$rs->EOF){
246                        $SelectHtml.='<OPTION value="'.$rs->campos["idimagen"]."_".$rs->campos["nombreca"]."_".$rs->campos["iprepositorio"]."_".$rs->campos["idperfilsoft"].'"';
247                        if($idimagen==$rs->campos["idimagen"]) $SelectHtml.=" selected ";
248                        $SelectHtml.='>';
249                        $SelectHtml.= $rs->campos["descripcion"].'</OPTION>';
250                        $rs->Siguiente();
251                }
252                $rs->Cerrar();
253        }
254        $SelectHtml.= '</SELECT>';
255        return($SelectHtml);
256}
257/*________________________________________________________________________________________________________
258        Crea la etiqueta html <SELECT> de los repositorios
259________________________________________________________________________________________________________*/
260function HTMLSELECT_repositorios($cmd,$idcentro,$idrepositorio,$particion){
261        $SelectHtml="";
262        $rs=new Recordset;
263       
264        $cmd->texto="SELECT nombrerepositorio,ip FROM  repositorios";
265        $rs->Comando=&$cmd;
266
267        if (!$rs->Abrir()) return($SelectHtml); // Error al abrir recordset
268        $SelectHtml.= '<SELECT class="formulariodatos" id="desplerepositorios_'.$particion.'" style="WIDTH: 200">';
269        $rs->Primero();
270        while (!$rs->EOF){
271                $SelectHtml.='<OPTION value="'.$rs->campos["ip"].'"';
272                if($rs->campos["idrepositorio"]==$idrepositorio) $SelectHtml.=" selected ";
273                $SelectHtml.='>';
274                $SelectHtml.= $rs->campos["nombrerepositorio"];
275                $SelectHtml.='</OPTION>';
276                $rs->Siguiente();
277        }
278        $SelectHtml.= '</SELECT>';
279        $rs->Cerrar();
280        return($SelectHtml);
281}
282
283
284function mcast_syntax($cmd,$ambito,$idambito)
285{
286//if (isset($_GET["idambito"])) $idambito=$_GET["idambito"];
287if ($ambito == 4)
288{
289$cmd->texto='SELECT aulas.pormul,aulas.ipmul,aulas.modomul,aulas.velmul,aulas.modp2p,aulas.timep2p FROM  aulas where aulas.idaula=' . $idambito ;
290}
291
292if ($ambito == 8)
293{
294$cmd->texto='SELECT aulas.pormul,aulas.ipmul,aulas.modomul,aulas.velmul,aulas.modp2p,aulas.timep2p FROM  aulas JOIN gruposordenadores ON aulas.idaula=gruposordenadores.idaula where gruposordenadores.idgrupo=' . $idambito ;
295}
296
297if ($ambito == 16)
298{
299$cmd->texto='SELECT aulas.pormul,aulas.ipmul,aulas.modomul,aulas.velmul,aulas.modp2p,aulas.timep2p FROM  aulas JOIN ordenadores ON ordenadores.idaula=aulas.idaula where ordenadores.idordenador=' . $idambito ;
300}
301
302        $rs=new Recordset;
303        $rs->Comando=&$cmd;
304if ($rs->Abrir()){
305                $rs->Primero();
306        $mcastsyntax.='MULTICAST ' . $rs->campos["pormul"] . ':';
307                       
308                $rs->Siguiente();
309                switch ($rs->campos["modomul"])
310                {
311                        case 1:
312                            $mcastsyntax.="half-duplex:";
313                                break;
314                        default:
315                            $mcastsyntax.="full-duplex:";
316                                break;
317                }                       
318                $rs->Siguiente();
319                $mcastsyntax.=$rs->campos["ipmul"] . ':';
320               
321                $rs->Siguiente();
322                $mcastsyntax.=$rs->campos["velmul"] .'M:';
323               
324        $rs->Cerrar();
325        }
326                $mcastsyntax.="50:";
327                        $mcastsyntax.="60";
328        return($mcastsyntax);   
329}
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344?>
Note: See TracBrowser for help on using the repository browser.