source: admin/WebConsole/comandos/includes/FiltradoAmbito.php @ 7a8ab05

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 7a8ab05 was 3997593, checked in by alonso <alonso@…>, 12 years ago

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

  • Property mode set to 100644
File size: 12.6 KB
Line 
1<?php
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 2012
6// Fecha Última modificación: Febrero-2012
7// Nombre del fichero: FiltradoAmbito.php
8// Descripción :
9//              Colección de funciones en php y javascript que implementan la posibilidad de aplicar filtro de selección
10//              a un determinado grupo de ordenadores dentro de un aula para aplicarles comandos.
11//
12// ********************************************************************************************************************
13//
14include_once("../idiomas/php/".$idioma."/estados_".$idioma.".php");
15
16$cadenaip="";
17$cid=0; // Identificadores para tablas de ordenadores
18switch($ambito)
19{
20        case $AMBITO_CENTROS :
21                $cmd->texto="SELECT idcentro,nombrecentro FROM centros WHERE idcentro=".$idambito;
22                RecorriendoCentro($cmd);
23                break;
24        case $AMBITO_GRUPOSAULAS :
25                $cmd->texto="SELECT idgrupo,nombregrupo FROM grupos WHERE tipo=".$AMBITO_GRUPOSAULAS." AND idgrupo=".$idambito;
26                RecorriendoGruposAulas($cmd);
27                break;
28        case $AMBITO_AULAS :
29                $cmd->texto="SELECT idaula,nombreaula FROM aulas WHERE idaula=".$idambito;
30                RecorriendoAulas($cmd);
31                break;
32        case $AMBITO_GRUPOSORDENADORES :
33                $cmd->texto="SELECT idgrupo,nombregrupoordenador FROM gruposordenadores WHERE idgrupo=".$idambito;
34                RecorriendoGruposOrdenadores($cmd);
35                break;
36}
37echo '<P><INPUT type="hidden" id="cadenaip" value="'.$cadenaip.'"></P>';
38//________________________________________________________________________________________________________
39//
40function RecorriendoCentro($cmd)
41{
42        global $AMBITO_GRUPOSAULAS;
43        global $TbMsg;
44               
45        $rs=new Recordset;
46        $rs->Comando=&$cmd;
47        if (!$rs->Abrir()) return; // Error al abrir recordset
48        $rs->Primero();
49        if(!$rs->EOF){
50                $idcentro=$rs->campos["idcentro"];
51                $nombrecentro=$rs->campos["nombrecentro"];
52               
53                $urlimg='../images/iconos/centros.gif';
54                $ambito=$TbMsg[0];
55                echo '<p align=center><IMG src="'.$urlimg.'">&nbsp;&nbsp;
56                <span align=center class=subcabeceras><U>'.$ambito.':'.$nombrecentro.'</U></span></p>';
57       
58                $cmd->texto="SELECT idgrupo,nombregrupo FROM grupos WHERE idcentro=".$idcentro." AND grupoid=0
59                                                AND tipo=".$AMBITO_GRUPOSAULAS." ORDER BY nombregrupo ";
60                RecorriendoGruposAulas($cmd);
61                $cmd->texto="SELECT idaula,nombreaula FROM aulas WHERE idcentro=".$idcentro." AND grupoid=0 ORDER BY nombreaula";
62                RecorriendoAulas($cmd);
63        }
64        $rs->Cerrar();
65}
66//________________________________________________________________________________________________________
67//
68function RecorriendoGruposAulas($cmd)
69{
70        global $AMBITO_GRUPOSAULAS;
71        global $TbMsg;
72       
73        $rs=new Recordset;
74        $rs->Comando=&$cmd;
75        if (!$rs->Abrir()) return; // Error al abrir recordset
76        $rs->Primero();
77        while (!$rs->EOF){
78                $idgrupo=$rs->campos["idgrupo"];
79                $nombregrupo=$rs->campos["nombregrupo"];
80               
81                $urlimg='../images/iconos/carpeta.gif';
82                $ambito=$TbMsg[1];
83                echo '<p align=center><IMG src="'.$urlimg.'">&nbsp;&nbsp;
84                <span align=center class=subcabeceras><U>'.$ambito.':'.$nombregrupo.'</U></span></p>';         
85               
86                $cmd->texto="SELECT idgrupo,nombregrupo FROM grupos WHERE grupoid=".$idgrupo."
87                                                AND tipo=".$AMBITO_GRUPOSAULAS." ORDER BY nombregrupo";
88                RecorriendoGruposAulas($cmd);
89                $cmd->texto="SELECT idaula,nombreaula FROM aulas WHERE  grupoid=".$idgrupo." ORDER BY nombreaula";
90                RecorriendoAulas($cmd);
91                $rs->Siguiente();
92        }
93        $rs->Cerrar();
94}
95//________________________________________________________________________________________________________
96//
97function RecorriendoAulas($cmd)
98{
99        global $TbMsg;
100
101        $rs=new Recordset;
102        $rs->Comando=&$cmd;
103        if (!$rs->Abrir()) return; // Error al abrir recordset
104        $rs->Primero();
105        while (!$rs->EOF){
106                $idaula=$rs->campos["idaula"];
107                $nombreaula=$rs->campos["nombreaula"];
108               
109                $urlimg='../images/iconos/aula.gif';
110                $ambito=$TbMsg[2];
111                echo '<p align=center><IMG src="'.$urlimg.'">&nbsp;&nbsp;
112                <span align=center class=subcabeceras><U>'.$ambito.':'.$nombreaula.'</U></span></p>';           
113                               
114                $cmd->texto="SELECT idordenador,nombreordenador,ip,mac FROM ordenadores WHERE  idaula=".$idaula;
115                RecorriendoOrdenadores($cmd);
116                $rs->Siguiente();
117        }
118        $rs->Cerrar();
119}
120//________________________________________________________________________________________________________
121//
122function RecorriendoGruposOrdenadores($cmd)
123{
124        global $TbMsg;
125       
126        $rs=new Recordset;
127        $rs->Comando=&$cmd;
128        if (!$rs->Abrir()) return; // Error al abrir recordset
129        $rs->Primero();
130        while (!$rs->EOF){
131                $idgrupo=$rs->campos["idgrupo"];
132                $nombregrupo=$rs->campos["nombregrupo"];
133               
134                $urlimg='../images/iconos/carpeta.gif';
135                $ambito=$TbMsg[3];
136                echo '<p align=center><IMG src="'.$urlimg.'">&nbsp;&nbsp;
137                <span align=center class=subcabeceras><U>'.$ambito.':'.$nombregrupo.'</U></span></p>'; 
138               
139                $cmd->texto="SELECT idgrupo,nombregrupoordenador FROM gruposOrdenadores WHERE grupoid=".$idgrupo." ORDER BY nombregrupoordenador";
140                RecorriendoGruposOrdenadores($cmd);
141                $cmd->texto="SELECT idordenador,nombreordenador,ip,mac FROM ordenadores WHERE  grupoid=".$idgrupo;
142                RecorriendoOrdenadores($cmd);
143                $rs->Siguiente();
144        }
145        $rs->Cerrar();
146}
147//____________________________________________________________________________________________________
148//
149function RecorriendoOrdenadores($cmd)
150{
151        global $TbMsg;
152        global $cadenaip;
153        global $cid;           
154                       
155        $cid++;         
156        $cmd->texto.= " ORDER BY nombreordenador";
157        $rs=new Recordset;
158        $rs->Comando=&$cmd;
159        if (!$rs->Abrir()) return; // Error al abrir recordset
160        $rs->Primero();
161        $htmlCode="";
162        $con=0;
163
164        $htmlCode.='
165<TABLE border=0 class="tabla_busquedas" align=center>
166<TR>
167
168<TD align="center">'.$TbMsg["STATUS_OFF"].'</TD>
169<TD><INPUT  type="checkbox" checked onclick="selector(this,1,'.$cid.')"></TD>
170               
171<TD align="center">'.$TbMsg["STATUS_BSY"].'</TD>
172<TD><INPUT   type="checkbox" checked onclick="selector(this,2,'.$cid.')"></TD>
173
174<TD align="center">'.$TbMsg["STATUS_OPG"].'</TD>
175<TD><INPUT  type="checkbox" checked onclick="selector(this,3,'.$cid.')"></TD>
176
177<TD align="center">'.$TbMsg["STATUS_WXP"].'</TD>
178<TD><INPUT  type="checkbox" checked onclick="selector(this,4,'.$cid.')"></TD>
179
180<TD align="center">'.$TbMsg["STATUS_LNX"].'</TD>
181<TD><INPUT  type="checkbox" checked onclick="selector(this,5,'.$cid.')"></TD>
182
183</TR>
184</TABLE>';
185       
186        $htmlCode.='<BR>';                                     
187        $htmlCode.='<TABLE id="tbo-'.$cid.'" border=0 align=center>';
188        $htmlCode.='<TR>';
189               
190        while (!$rs->EOF){
191                $htmlCode.='<TD style="BORDER-BOTTOM: #999999 1px solid;BORDER-LEFT: #999999 1px solid;BORDER-RIGHT: #999999 1px solid;BORDER-TOP: #999999 1px solid;">';
192                $nombreordenador=$rs->campos["nombreordenador"];
193                $ip=$rs->campos["ip"];
194                $cadenaip.=$ip.";";
195                $htmlCode.='<TABLE  cellspacing=1 cellpadding=0>';
196                $htmlCode.='    <TR><TD align="center"><img sondeo="ordenador_OFF.gif" id="img-'.$ip.'" width=24 src="../images/ordenador_OFF.gif"></TD></TR>';
197                $htmlCode.='    <TR><TD align="center"><SPAN style="FONT-SIZE:9px;      COLOR: #4f4f4f;">'.$nombreordenador.'</SPAN></TD></TR>';                       
198                $htmlCode.='    <TR><TD align="center"><SPAN style="FONT-SIZE:8px;      COLOR: #4f4f4f;">'.$ip.'</SPAN></TD></TR>';                     
199                $htmlCode.='    <TR><TD align="center"><INPUT id="chk-'.$ip.'" type="checkbox" checked></TD></TR>';     
200                $htmlCode.='</TABLE>';
201                $htmlCode.='</TD>';
202                $con++;
203                if($con>15){
204                        $htmlCode.='</TR>';
205                        $htmlCode.='<TR>';
206                        $con=0;
207                }
208                $rs->Siguiente();
209        }
210        $htmlCode.='</TR>';
211        $htmlCode.='</TABLE>';
212        echo $htmlCode;
213}
214//______________________________________________________________________________________________________
215//
216echo '<SCRIPT language="javascript">';
217echo 'var cid='.$cid.';';
218echo '</SCRIPT>';
219?>
220<SCRIPT language="javascript">
221function Sondeo(){
222        var ambito=<? echo $ambito?>;
223        var idambito=<? echo $idambito?>;
224        var wurl="../principal/sondeo.php";
225        var prm="ambito="+ambito+"&idambito="+idambito+"&sw=1";
226        CallPage(wurl,prm,"retornoSondeo","POST");
227        setTimeout("respuestaSondeo();",100);   
228}
229//______________________________________________________________________________________________________
230//
231function retornoSondeo(resul)
232{
233        // No se hace nada
234}
235//________________________________________________________________________________________________________
236//
237function respuestaSondeo(){
238        var ambito=<? echo $ambito?>;
239        var idambito=<? echo $idambito?>;
240        var wurl="../principal/sondeo.php";
241        var prm="ambito="+ambito+"&idambito="+idambito+"&sw=2";
242        CallPage(wurl,prm,"retornorespuestaSondeo","POST");
243        setTimeout("respuestaSondeo();",5000); 
244}
245//______________________________________________________________________________________________________
246//
247function retornorespuestaSondeo(resul)
248{
249        if(resul.length>0){
250                var ip=""; // Dirección IP del ordenador
251                var so=""; // Sistema operativo activo
252                var objOrd=null; // Objeto ordenador
253                var imgOrd="";
254                var cadena=resul.split(";");
255                for (var i=0;i<cadena.length;i++){
256                        var dual=cadena[i].split("/");
257                        ip=dual[0].replace(/\n*/,"");
258                        so=dual[1];
259                        objOrd=document.getElementById("img-"+ip);
260                        if(objOrd){
261                                        imgOrd=soIMG(so);
262                                        if(objOrd.getAttribute("sondeo")!=imgOrd){
263                                                objOrd.setAttribute("src", "../images/"+imgOrd);
264                                                objOrd.setAttribute("sondeo",imgOrd);
265                                                var objChk=document.getElementById("chk-"+ip);
266                                                if(objChk)
267                                                        objChk.checked=true;
268                                        }
269                        }               
270                }
271        }
272}
273//______________________________________________________________________________________________________
274//
275function soIMG(so)
276{
277        var MimgOrdenador="";
278        switch(so){
279                                case 'INI':
280                                                                MimgOrdenador="ordenador_INI.gif";  // Cliente ocupado
281                                                                break;
282                                case 'BSY':
283                                                                MimgOrdenador="ordenador_BSY.gif";  // Cliente ocupado
284                                                                break;
285                                case 'OPG':
286                                                                MimgOrdenador="ordenador_OPG.gif";  // Cliente Rembo
287                                                                break;
288                                case 'WS2':
289                                                                MimgOrdenador="ordenador_WS2.gif"; // Windows Server 2003
290                                                                break;
291                                case 'W2K':
292                                                                MimgOrdenador="ordenador_W2K.gif"; // Windows 2000
293                                                                break;
294                                case 'WXP':
295                                                                MimgOrdenador="ordenador_WXP.gif"; // Windows XP
296                                                                break;
297                                case 'WNT':
298                                                                MimgOrdenador="ordenador_WNT.gif"; // Windows NT
299                                                                break;
300                                case 'W95':
301                                                                MimgOrdenador="ordenador_W95.gif"; // Windows 95
302                                                                break;
303                                case 'W98':
304                                                                MimgOrdenador="ordenador_W98.gif"; // Windows 98
305                                                                break;
306                                case 'WML':
307                                                                MimgOrdenador="ordenador_WML.gif"; // Windows Millenium
308                                                                break;
309                                case 'WIN':
310                                                                MimgOrdenador="ordenador_WXP.gif"; // Windows
311                                                                break;                                                         
312                                case 'LNX':
313                                                                MimgOrdenador="ordenador_LNX.gif"; // Linux
314                                                                break;
315                                default:
316                                                                MimgOrdenador="ordenador_OFF.gif"; // Apagado
317                                                                break;
318        }
319        return(MimgOrdenador);
320}
321//______________________________________________________________________________________________________
322//
323function selector(oSLCT,op,id)
324{
325        var sw=oSLCT.checked;
326        var objTB=document.getElementById("tbo-"+id);
327       
328                if(objTB){
329                        var imagenes = objTB.getElementsByTagName('img');
330                        for(var i=0;i<imagenes.length;i++){
331                                var ip=imagenes[i].id.split("-")[1];
332                                var estado=imagenes[i].getAttribute("sondeo");
333                               
334                                var oCHK = document.getElementById('chk-'+ip); // Recupera checkbox
335
336                                switch(parseInt(op)){
337                                        case 1: // Apagados                                             
338                                                if(estado=="ordenador_OFF.gif")
339                                                        oCHK.checked=sw;
340                                                break; 
341                                               
342                                        case 2: // Ocupados
343                                                if(estado=="ordenador_BSY.gif")
344                                                        oCHK.checked=sw;
345                                                break;
346                                               
347                                        case 3: // Opengnsys
348                                                if(estado=="ordenador_OPG.gif")
349                                                        oCHK.checked=sw;
350                                                break;
351                                               
352                                        case 4: // Windows
353                                                if(estado=="ordenador_WXP.gif")
354                                                        oCHK.checked=sw;
355                                                break;
356                                               
357                                        case 5: // Linux
358                                                if(estado=="ordenador_LNX.gif")
359                                                        oCHK.checked=sw;
360                                                break;
361
362       
363                                }
364                        }
365                }
366}
367
368//______________________________________________________________________________________________________
369//
370function filtrado()
371{
372        var ipes="";
373        for(j=1;j<=cid;j++){
374
375                var objTB=document.getElementById("tbo-"+j);
376                if(objTB){
377                        var imagenes = objTB.getElementsByTagName('img');
378                        for(var i=0;i<imagenes.length;i++){
379                                var ip=imagenes[i].id.split("-")[1];
380                                var oCHK = document.getElementById('chk-'+ip); // Recupera checkbox                     
381                                if(oCHK.checked){
382                                        ipes+=ip+";";
383                                }
384                        }
385                }
386        }
387        var preipes=document.getElementById("cadenaip").value;
388        if(preipes!=ipes)
389                document.fdatosejecucion.filtro.value=ipes;
390        else
391                document.fdatosejecucion.filtro.value="";
392}
393</SCRIPT>
394
Note: See TracBrowser for help on using the repository browser.