source: admin/WebConsole/comandos/CrearImagen.php @ 40bba64

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 40bba64 was de7bba2, checked in by ramon <ramongomez@…>, 13 years ago

#551: Corregir algunos avisos en PHP y elección correcta del repositorio por defecto al crear imagen.

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

  • Property mode set to 100644
File size: 11.4 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: CrearImagen.php
8// Descripción :
9//              Implementación del comando "CrearImagen.php"
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/TomaDato.php");
18include_once("../idiomas/php/".$idioma."/comandos/crearimagen_".$idioma.".php");
19include_once("../idiomas/php/".$idioma."/comandos/opcionesacciones_".$idioma.".php");
20
21//________________________________________________________________________________________________________
22include_once("./includes/capturaacciones.php");
23//________________________________________________________________________________________________________
24$cmd=CreaComando($cadenaconexion);
25if (!$cmd)
26        Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D.
27//________________________________________________________________________________________________________
28$resul=tomaPropiedades($cmd,$idambito);
29if (!$resul){
30                Header('Location: '.$pagerror.'?herror=3'); // Error de recuperación de datos.
31}
32//________________________________________________________________________________________________________
33?>
34<HTML>
35<TITLE>Administración web de aulas</TITLE>
36<HEAD>
37        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
38<LINK rel="stylesheet" type="text/css" href="../estilos.css">
39<SCRIPT language="javascript" src="./jscripts/CrearImagen.js"></SCRIPT>
40<SCRIPT language="javascript" src="../clases/jscripts/HttpLib.js"></SCRIPT>
41<? echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/comandos/crearimagen_'.$idioma.'.js"></SCRIPT>'?>
42<? echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/comandos/comunescomandos_'.$idioma.'.js"></SCRIPT>'?>
43<SCRIPT language="javascript" src="./jscripts/comunescomandos.js"></SCRIPT>
44</HEAD>
45<BODY>
46<?
47        $urlimg='../images/iconos/ordenador.gif';
48        $textambito=$TbMsg[15];
49
50        echo '<p align=center><span class=cabeceras>'.$TbMsg[0].'&nbsp;</span><br>';
51        echo '<IMG src="'.$urlimg.'">&nbsp;&nbsp;<span align=center class=subcabeceras>
52                        <U>'.$TbMsg[14].': '.$textambito.','.$nombreambito.'</U></span>&nbsp;&nbsp;</span></p>';
53?>     
54<P align=center><SPAN align=center class=subcabeceras><? echo $TbMsg[6] ?></SPAN></P>
55
56<FORM align=center name="fdatos"> 
57                <TABLE  id="tabla_conf" align=center border=0 cellPadding=1 cellSpacing=1 class=tabla_datos>
58                        <TR>
59                                <TH align=center>&nbsp;&nbsp;</TH>
60                                <TH align=center>&nbsp;<? echo $TbMsg[8] ?>&nbsp;</TH>
61                                <TH align=center>&nbsp;<? echo $TbMsg[13] ?>&nbsp;</TH>
62                                <TH align=center>&nbsp;<? echo $TbMsg[9] ?>&nbsp;</TH>
63                                <TH align=center>&nbsp;<? echo $TbMsg[10] ?>&nbsp;</TD>
64                                <TH align=center>&nbsp;<? echo $TbMsg[11] ?>&nbsp;</TD>
65                        </TR>
66                                <?                                     
67                                        echo tablaConfiguraciones($cmd,$idambito,$idrepositorio);
68                                ?>
69                </TABLE>
70</FORM>         
71
72<?
73        //________________________________________________________________________________________________________
74        include_once("./includes/formularioacciones.php");
75        //________________________________________________________________________________________________________
76        //________________________________________________________________________________________________________
77        include_once("./includes/opcionesacciones.php");
78        //________________________________________________________________________________________________________
79?>
80</BODY>
81</HTML>
82<?
83/**************************************************************************************************************************************************
84        Recupera los datos de un ordenador
85                Parametros:
86                - cmd: Una comando ya operativo (con conexiónabierta) 
87                - ido: El identificador del ordenador
88________________________________________________________________________________________________________*/
89function tomaPropiedades($cmd,$ido){
90        global $nombreordenador;
91        global $ip;
92        global $mac;
93        global $idperfilhard;
94        global $idrepositorio;
95        $rs=new Recordset;
96        $cmd->texto="SELECT nombreordenador,ip,mac,idperfilhard,idrepositorio FROM ordenadores WHERE idordenador='".$ido."'";
97        $rs->Comando=&$cmd;
98        if (!$rs->Abrir()) return(false); // Error al abrir recordset
99        $rs->Primero();
100        if (!$rs->EOF){
101                $nombreordenador=$rs->campos["nombreordenador"];
102                $ip=$rs->campos["ip"];
103                $mac=$rs->campos["mac"];
104                $idperfilhard=$rs->campos["idperfilhard"];
105                $idrepositorio=$rs->campos["idrepositorio"];
106                $rs->Cerrar();
107                return(true);
108        }
109        else
110                return(false);
111}
112/*________________________________________________________________________________________________________
113        Crea la etiqueta html <SELECT> de los perfiles softwares
114________________________________________________________________________________________________________*/
115function HTMLSELECT_imagenes($cmd,$idrepositorio,$idperfilsoft,$particion,$masterip)
116{
117        $SelectHtml="";
118        $cmd->texto="SELECT imagenes.idimagen,imagenes.descripcion,imagenes.nombreca,imagenes.idperfilsoft, repositorios.nombrerepositorio
119                                FROM  imagenes INNER JOIN repositorios on imagenes.idrepositorio = repositorios.idrepositorio
120                                WHERE imagenes.idrepositorio=".$idrepositorio ." OR repositorios.ip='" .$masterip ."'";
121        //echo $cmd->texto;
122        $rs=new Recordset;
123        $rs->Comando=&$cmd;
124        $SelectHtml.= '<SELECT class="formulariodatos" id="despleimagen_'.$particion.'" style="WIDTH: 300">';
125        $SelectHtml.= '    <OPTION value="0"></OPTION>';
126        if ($rs->Abrir()){
127                $rs->Primero();
128                while (!$rs->EOF){
129                        $SelectHtml.='<OPTION value="'.$rs->campos["idimagen"]."_".$rs->campos["nombreca"]."_".$rs->campos["nombreca"].'"';
130                        if($idperfilsoft==$rs->campos["idperfilsoft"]) $SelectHtml.=" selected ";
131                        $SelectHtml.='>';
132                        $SelectHtml.= $rs->campos["descripcion"]. ' -- '. $rs->campos['nombrerepositorio']  . '</OPTION>';
133                        $rs->Siguiente();
134                }
135                $rs->Cerrar();
136        }
137        $SelectHtml.= '</SELECT>';
138        return($SelectHtml);
139}
140
141function HTMLSELECT_imagenesORIGINAL($cmd,$idrepositorio,$idperfilsoft,$particion,$masterip)
142{
143        $SelectHtml="";
144        $cmd->texto="SELECT imagenes.idimagen,imagenes.descripcion,imagenes.nombreca,imagenes.idperfilsoft
145                                FROM  imagenes INNER JOIN repositorios on imagenes.idrepositorio = repositorios.idrepositorio
146                                WHERE imagenes.idrepositorio=".$idrepositorio ." OR repositorios.ip='" .$masterip ."'";
147        //echo $cmd->texto;
148        $rs=new Recordset;
149        $rs->Comando=&$cmd;
150        $SelectHtml.= '<SELECT class="formulariodatos" id="despleimagen_'.$particion.'" style="WIDTH: 300">';
151        $SelectHtml.= '    <OPTION value="0"></OPTION>';
152        if ($rs->Abrir()){
153                $rs->Primero();
154                while (!$rs->EOF){
155                        $SelectHtml.='<OPTION value="'.$rs->campos["idimagen"]."_".$rs->campos["nombreca"]."_".$rs->campos["nombreca"].'"';
156                        if($idperfilsoft==$rs->campos["idperfilsoft"]) $SelectHtml.=" selected ";
157                        $SelectHtml.='>';
158                        $SelectHtml.= $rs->campos["descripcion"].'</OPTION>';
159                        $rs->Siguiente();
160                }
161                $rs->Cerrar();
162        }
163        $SelectHtml.= '</SELECT>';
164        return($SelectHtml);
165}
166
167
168/*________________________________________________________________________________________________________
169        Crea la etiqueta html <SELECT> de los repositorios
170________________________________________________________________________________________________________*/
171function HTMLSELECT_repositorios($cmd,$idcentro,$idrepositorio,$particion,$masterip){
172        $SelectHtml="";
173        $rs=new Recordset;
174        $cmd->texto='SELECT idrepositorio, nombrerepositorio, ip FROM repositorios WHERE idrepositorio="'.$idrepositorio .'" OR ip="'.$masterip.'"';
175        $rs->Comando=&$cmd;
176
177        if (!$rs->Abrir()) return($SelectHtml); // Error al abrir recordset
178        $SelectHtml.= '<SELECT class="formulariodatos" id="desplerepositorios_'.$particion.'" style="WIDTH: 250">';
179        $rs->Primero();
180        while (!$rs->EOF){
181                $SelectHtml.='<OPTION value="'.$rs->campos["ip"].'"';
182                if($rs->campos["idrepositorio"]==$idrepositorio) $SelectHtml.=" selected ";
183                $SelectHtml.='>';
184                $SelectHtml.= $rs->campos["nombrerepositorio"];
185                $SelectHtml.='</OPTION>';
186                $rs->Siguiente();
187        }
188        $SelectHtml.= '</SELECT>';
189        $rs->Cerrar();
190        return($SelectHtml);
191}
192/*________________________________________________________________________________________________________
193        Crea la tabla de configuraciones y perfiles a crear
194________________________________________________________________________________________________________*/
195function tablaConfiguraciones($cmd,$idordenador,$idrepositorio)
196{
197        global $idcentro;
198        global $TbMsg;
199        $tablaHtml="";
200        $rs=new Recordset;
201        $cmd->texto="SELECT ordenadores.ip AS masterip,ordenadores_particiones.numpar,ordenadores_particiones.codpar,ordenadores_particiones.tamano,
202                                ordenadores_particiones.idnombreso,nombresos.nombreso,tipospar.tipopar,tipospar.clonable,
203                                imagenes.nombreca,imagenes.descripcion as imagen,perfilessoft.idperfilsoft,
204                                perfilessoft.descripcion as perfilsoft,sistemasficheros.descripcion as sistemafichero
205                                FROM ordenadores
206                                INNER JOIN ordenadores_particiones ON ordenadores_particiones.idordenador=ordenadores.idordenador
207                                LEFT OUTER JOIN nombresos ON nombresos.idnombreso=ordenadores_particiones.idnombreso
208                                INNER JOIN tipospar ON tipospar.codpar=ordenadores_particiones.codpar
209                                LEFT OUTER JOIN imagenes ON imagenes.idimagen=ordenadores_particiones.idimagen
210                                LEFT OUTER JOIN perfilessoft ON perfilessoft.idperfilsoft=ordenadores_particiones.idperfilsoft
211                                LEFT OUTER JOIN sistemasficheros ON sistemasficheros.idsistemafichero=ordenadores_particiones.idsistemafichero
212                                WHERE ordenadores.idordenador=$idordenador ORDER BY ordenadores_particiones.numpar";
213        //echo  $cmd->texto;
214        $rs->Comando=&$cmd;
215        $rs=new Recordset;
216        $rs->Comando=&$cmd;
217        if (!$rs->Abrir()) return($tablaHtml); // Error al abrir recordset
218        $rs->Primero();
219        while (!$rs->EOF){
220                $swcc=$rs->campos["clonable"] && !empty($rs->campos["idnombreso"]);
221                $swc=$rs->campos["idperfilsoft"]>0; // Una partición es clonable si posee un identificador de perfil software           
222                $swccc=$swcc && $swcc;
223                $tablaHtml.='<TR>'.chr(13);
224                if($swccc){
225                        $tablaHtml.='<TD><input type=radio name="particion" value="'.$rs->campos["numpar"]."_".$rs->campos["codpar"].'"></TD>'.chr(13);
226                        $tablaHtml.='<TD align=center>&nbsp;'.$rs->campos["numpar"].'&nbsp;</TD>'.chr(13);
227                        $tablaHtml.='<TD align=center>&nbsp;'.$rs->campos["tipopar"].'&nbsp;</TD>'.chr(13);
228                        if(empty($rs->campos["nombreso"]) && !empty($rs->campos["idnombreso"])) // Si el identificador del S.O. no es nulo pero no hay descripción
229                                $tablaHtml.='<TD align=center>&nbsp;'.'<span style="FONT-SIZE:10px;     COLOR: red;" >'.$TbMsg[12].'</span></TD>'.chr(13);
230                        else
231                                $tablaHtml.='<TD>&nbsp;'.$rs->campos["nombreso"].'&nbsp;</TD>'.chr(13);
232                        $tablaHtml.='<TD>'.HTMLSELECT_imagenes($cmd,$idrepositorio,$rs->campos["idperfilsoft"],$rs->campos["numpar"],$rs->campos["masterip"]).'</TD>';
233                        $tablaHtml.='<TD>'.HTMLSELECT_repositorios($cmd,$idcentro,$idrepositorio,$rs->campos["numpar"],$rs->campos["masterip"]).'</TD>';
234                        $tablaHtml.='<TD>&nbsp;</TD>';
235                }
236                $tablaHtml.='</TR>'.chr(13);   
237                $rs->Siguiente();
238        }
239        $rs->Cerrar();
240        return($tablaHtml);
241}
242?>
Note: See TracBrowser for help on using the repository browser.