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: gestor_ordenadores.php
|
---|
8 | // Descripción :
|
---|
9 | // Gestiona el mantenimiento de la tabla de ordenadores
|
---|
10 | // *************************************************************************************************************************************************
|
---|
11 | include_once("../includes/ctrlacc.php");
|
---|
12 | include_once("../clases/AdoPhp.php");
|
---|
13 | include_once("../clases/XmlPhp.php");
|
---|
14 | include_once("../clases/ArbolVistaXML.php");
|
---|
15 | include_once("../includes/CreaComando.php");
|
---|
16 | include_once("../includes/constantes.php");
|
---|
17 | include_once("./relaciones/ordenadores_eliminacion.php");
|
---|
18 | include_once("../includes/opciones.php");
|
---|
19 | //________________________________________________________________________________________________________
|
---|
20 | $opcion=0; // Inicializa parametros
|
---|
21 |
|
---|
22 | $fotoordenador="";
|
---|
23 | $grupoid=0;
|
---|
24 | $idaula=0;
|
---|
25 | $idordenador=0;
|
---|
26 | $nombreordenador="";
|
---|
27 | $ip="";
|
---|
28 | $mac="";
|
---|
29 | $idperfilhard=0;
|
---|
30 | $idrepositorio=0;
|
---|
31 | $idmenu=0;
|
---|
32 | $idprocedimiento=0;
|
---|
33 | $idimagen=0;
|
---|
34 | $cache=0;
|
---|
35 | #### ADV
|
---|
36 | $netiface="";
|
---|
37 | $netdriver="";
|
---|
38 | ### ADV
|
---|
39 | //##agp
|
---|
40 | if($_FILES['archivo']['type']=="image/gif" || $_FILES['archivo']['type']=="image/jpeg" || $_FILES['archivo']['type']=="image/jpg" || $_FILES['archivo']['type']=="image/png" || $_FILES['archivo']['type']=="image/JPG")
|
---|
41 | {
|
---|
42 | $uploaddir ="../images/fotos/";
|
---|
43 |
|
---|
44 | $uploadfile = $uploaddir.$_FILES['archivo']['name'];
|
---|
45 |
|
---|
46 | move_uploaded_file($_FILES['archivo']['tmp_name'], $uploadfile);
|
---|
47 | #copy($_FILES['archivo']['tmp_name'], $uploadfile);
|
---|
48 | }
|
---|
49 | //##agp
|
---|
50 | if (isset($_POST["fotoordenador"])) $fotoordenador=$_POST["fotoordenador"];
|
---|
51 | if (isset($_POST["opcion"])) $opcion=$_POST["opcion"]; // Recoge parametros
|
---|
52 | if (isset($_POST["grupoid"])) $grupoid=$_POST["grupoid"];
|
---|
53 | if (isset($_POST["idaula"])) $idaula=$_POST["idaula"];
|
---|
54 | if (isset($_POST["idordenador"])) $idordenador=$_POST["idordenador"];
|
---|
55 | if (isset($_POST["identificador"])) $idordenador=$_POST["identificador"];
|
---|
56 | if (isset($_POST["nombreordenador"])) $nombreordenador=$_POST["nombreordenador"];
|
---|
57 | if (isset($_POST["ip"])) $ip=$_POST["ip"];
|
---|
58 | if (isset($_POST["mac"])) $mac=$_POST["mac"];
|
---|
59 | if (isset($_POST["idperfilhard"])) $idperfilhard=$_POST["idperfilhard"];
|
---|
60 | if (isset($_POST["idrepositorio"])) $idrepositorio=$_POST["idrepositorio"];
|
---|
61 | if (isset($_POST["idmenu"])) $idmenu=$_POST["idmenu"];
|
---|
62 | if (isset($_POST["idprocedimiento"])) $idprocedimiento=$_POST["idprocedimiento"];
|
---|
63 | if (isset($_POST["cache"])) $cache=$_POST["cache"];
|
---|
64 | if(empty($cache)) $cache=0;
|
---|
65 |
|
---|
66 | if (isset($_POST["netiface"])) $netiface=$_POST["netiface"];
|
---|
67 | if (isset($_POST["netdriver"])) $netdriver=$_POST["netdriver"];
|
---|
68 |
|
---|
69 | $tablanodo=""; // Arbol para nodos insertados
|
---|
70 | //________________________________________________________________________________________________________
|
---|
71 | $cmd=CreaComando($cadenaconexion); // Crea objeto comando
|
---|
72 | $resul=false;
|
---|
73 | if ($cmd){
|
---|
74 | if ($idaula==0)
|
---|
75 | $idaula=toma_aula($cmd,$grupoid);
|
---|
76 | $resul=Gestiona();
|
---|
77 | $cmd->Conexion->Cerrar();
|
---|
78 | }
|
---|
79 | if($opcion!=$op_movida){
|
---|
80 | echo '<HTML>';
|
---|
81 | echo '<HEAD>';
|
---|
82 | echo ' <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">';
|
---|
83 | echo '<BODY>';
|
---|
84 | echo '<P><SPAN style="visibility:hidden" id="arbol_nodo">'.$tablanodo.'</SPAN></P>';
|
---|
85 | echo ' <SCRIPT language="javascript" src="../jscripts/propiedades_ordenadores.js"></SCRIPT>';
|
---|
86 | echo '<SCRIPT language="javascript">'.chr(13);
|
---|
87 | if ($resul){
|
---|
88 | echo 'var oHTML'.chr(13);
|
---|
89 | echo 'var cTBODY=document.getElementsByTagName("TBODY");'.chr(13);
|
---|
90 | echo 'o=cTBODY.item(1);'.chr(13);
|
---|
91 | }
|
---|
92 | }
|
---|
93 | //________________________________________________________________________________________________________
|
---|
94 | $literal="";
|
---|
95 | switch($opcion){
|
---|
96 | case $op_alta :
|
---|
97 | $literal="resultado_insertar_ordenadores";
|
---|
98 | break;
|
---|
99 | case $op_modificacion:
|
---|
100 | $literal="resultado_modificar_ordenadores";
|
---|
101 | break;
|
---|
102 | case $op_eliminacion :
|
---|
103 | $literal="resultado_eliminar_ordenadores";
|
---|
104 | break;
|
---|
105 | case $op_movida :
|
---|
106 | $literal="resultado_cambiar_ordenadores";
|
---|
107 | break;
|
---|
108 | default:
|
---|
109 | break;
|
---|
110 | }
|
---|
111 | if ($resul){
|
---|
112 | if ($opcion==$op_alta )
|
---|
113 | echo $literal."(1,'".$cmd->DescripUltimoError()." ',".$idordenador.",o.innerHTML);".chr(13);
|
---|
114 | else
|
---|
115 | echo $literal."(1,'".$cmd->DescripUltimoError()." ','".$nombreordenador."');".chr(13);
|
---|
116 | }
|
---|
117 | else
|
---|
118 | echo $literal."(0,'".$cmd->DescripUltimoError()."',".$idordenador.")";
|
---|
119 |
|
---|
120 | if($opcion!=$op_movida){
|
---|
121 | echo ' </SCRIPT>';
|
---|
122 | echo '</BODY> ';
|
---|
123 | echo '</HTML>';
|
---|
124 | }
|
---|
125 | /**************************************************************************************************************************************************
|
---|
126 | Busca identificador del aula de un grupo de ordenador .Devuelve el identificador del aula a la que pertenece el grupo
|
---|
127 | Parametros:
|
---|
128 | - cmd:Una comando ya operativo (con conexión abierta)
|
---|
129 | ________________________________________________________________________________________________________*/
|
---|
130 | function toma_aula($cmd,$idgrupo){
|
---|
131 | $rs=new Recordset;
|
---|
132 | $cmd->texto="SELECT idaula FROM gruposordenadores WHERE idgrupo=".$idgrupo;
|
---|
133 | $rs->Comando=&$cmd;
|
---|
134 | if (!$rs->Abrir()) return(0); // Error al abrir recordset
|
---|
135 | $rs->Primero();
|
---|
136 | if (!$rs->EOF)
|
---|
137 | return($rs->campos["idaula"]);
|
---|
138 | else
|
---|
139 | return(0);
|
---|
140 | }
|
---|
141 | /*________________________________________________________________________________________________________
|
---|
142 | Inserta, modifica o elimina datos en la tabla ordenadores
|
---|
143 | ________________________________________________________________________________________________________*/
|
---|
144 | function Gestiona(){
|
---|
145 | global $cmd;
|
---|
146 | global $opcion;
|
---|
147 | $fotoordenador="../images/fotos/".$fotoordenador;
|
---|
148 | global $fotoordenador;
|
---|
149 | global $grupoid;
|
---|
150 | global $idordenador;
|
---|
151 | global $nombreordenador;
|
---|
152 | global $ip;
|
---|
153 | global $mac;
|
---|
154 | global $idaula;
|
---|
155 | global $idperfilhard;
|
---|
156 | global $idrepositorio;
|
---|
157 | global $idmenu;
|
---|
158 | global $idprocedimiento;
|
---|
159 | global $cache;
|
---|
160 | global $netiface;
|
---|
161 | global $netdriver;
|
---|
162 |
|
---|
163 | global $op_alta;
|
---|
164 | global $op_modificacion;
|
---|
165 | global $op_eliminacion;
|
---|
166 | global $op_movida;
|
---|
167 | global $tablanodo;
|
---|
168 |
|
---|
169 |
|
---|
170 | $cmd->CreaParametro("@grupoid",$grupoid,1);
|
---|
171 | $cmd->CreaParametro("@idaula",$idaula,1);
|
---|
172 | $cmd->CreaParametro("@idordenador",$idordenador,1);
|
---|
173 | $cmd->CreaParametro("@nombreordenador",$nombreordenador,0);
|
---|
174 | $cmd->CreaParametro("@ip",$ip,0);
|
---|
175 | $cmd->CreaParametro("@mac",$mac,0);
|
---|
176 | $cmd->CreaParametro("@idperfilhard",$idperfilhard,1);
|
---|
177 | $cmd->CreaParametro("@idrepositorio",$idrepositorio,1);
|
---|
178 | $cmd->CreaParametro("@idmenu",$idmenu,1);
|
---|
179 | $cmd->CreaParametro("@idprocedimiento",$idprocedimiento,1);
|
---|
180 | $cmd->CreaParametro("@cache",$cache,1);
|
---|
181 | $cmd->CreaParametro("@netiface",$netiface,0);
|
---|
182 | $cmd->CreaParametro("@netdriver",$netdriver,0);
|
---|
183 | $cmd->CreaParametro("@fotoordenador",$fotoordenador,0);
|
---|
184 |
|
---|
185 |
|
---|
186 | switch($opcion){
|
---|
187 | case $op_alta :
|
---|
188 | //Insertar fotoord con Values @fotoordenador
|
---|
189 | $cmd->texto="INSERT INTO ordenadores(nombreordenador,ip,mac,idperfilhard,idrepositorio,
|
---|
190 | idmenu,idproautoexec,idaula,grupoid,cache,netiface,netdriver,fotoord) VALUES (@nombreordenador,@ip,@mac,@idperfilhard,@idrepositorio,
|
---|
191 | @idmenu,@idprocedimiento,@idaula,@grupoid,@cache,@netiface,@netdriver,@fotoordenador)";
|
---|
192 |
|
---|
193 | $resul=$cmd->Ejecutar();
|
---|
194 | //echo $cmd->texto;
|
---|
195 | if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta
|
---|
196 | $idordenador=$cmd->Autonumerico();
|
---|
197 | $arbolXML=SubarbolXML_ordenadores($idordenador,$nombreordenador);
|
---|
198 | $baseurlimg="../images/signos"; // Url de las imagenes de signo
|
---|
199 | $clasedefault="texto_arbol"; // Hoja de estilo (Clase por defecto) del árbol
|
---|
200 | $arbol=new ArbolVistaXML($arbolXML,0,$baseurlimg,$clasedefault);
|
---|
201 | $tablanodo=$arbol->CreaArbolVistaXML();
|
---|
202 | }
|
---|
203 | break;
|
---|
204 | case $op_modificacion:
|
---|
205 | $cmd->texto="UPDATE ordenadores SET nombreordenador=@nombreordenador,ip=@ip,mac=@mac,idperfilhard=@idperfilhard,
|
---|
206 | idrepositorio=@idrepositorio,idmenu=@idmenu,idproautoexec=@idprocedimiento,cache=@cache,netiface=@netiface,netdriver=@netdriver,fotoord=@fotoordenador
|
---|
207 | WHERE idordenador=@idordenador";
|
---|
208 | $resul=$cmd->Ejecutar();
|
---|
209 | //echo $cmd->texto;
|
---|
210 | break;
|
---|
211 | case $op_eliminacion :
|
---|
212 | $resul=EliminaOrdenadores($cmd,$idordenador,"idordenador");// Eliminación en cascada
|
---|
213 | break;
|
---|
214 | case $op_movida :
|
---|
215 | $cmd->texto="UPDATE ordenadores SET idaula=@idaula, grupoid=@grupoid WHERE idordenador=@idordenador";
|
---|
216 | $resul=$cmd->Ejecutar();
|
---|
217 | break;
|
---|
218 | default:
|
---|
219 | break;
|
---|
220 | }
|
---|
221 | return($resul);
|
---|
222 | }
|
---|
223 | /*________________________________________________________________________________________________________
|
---|
224 | Crea un arbol XML para el nuevo nodo insertado
|
---|
225 | ________________________________________________________________________________________________________*/
|
---|
226 | function SubarbolXML_ordenadores($idordenador,$nombreordenador){
|
---|
227 | global $LITAMBITO_ORDENADORES;
|
---|
228 | $cadenaXML='<ORDENADOR';
|
---|
229 | // Atributos
|
---|
230 | $cadenaXML.=' clickcontextualnodo="menu_contextual(this,' ."'flo_".$LITAMBITO_ORDENADORES."'" .')"';
|
---|
231 | $cadenaXML.=' imagenodo="../images/iconos/ordenador.gif"';
|
---|
232 | $cadenaXML.=' infonodo="'.$nombreordenador.'"';
|
---|
233 | $cadenaXML.=' nodoid='.$LITAMBITO_ORDENADORES.'-'.$idordenador;
|
---|
234 | $cadenaXML.='></ORDENADOR>';
|
---|
235 | return($cadenaXML);
|
---|
236 | }
|
---|
237 | ?>
|
---|