diff options
Diffstat (limited to 'admin')
12 files changed, 179 insertions, 7 deletions
diff --git a/admin/Database/ogAdmBD-1.1.0pre.sql b/admin/Database/ogAdmBD-1.1.0pre.sql index 4fbdd038..48f24a37 100644 --- a/admin/Database/ogAdmBD-1.1.0pre.sql +++ b/admin/Database/ogAdmBD-1.1.0pre.sql @@ -70,6 +70,13 @@ CREATE PROCEDURE addcols() BEGIN ALTER TABLE ordenadores ADD oglivedir VARCHAR(50) NOT NULL DEFAULT 'ogLive'; END IF; + # Añadir campo para directorio de ogLive asociado al cliente (ticket #768). + IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS + WHERE COLUMN_NAME='oglivedir' AND TABLE_NAME='aulas' AND TABLE_SCHEMA=DATABASE()) + THEN + ALTER TABLE aulas + ADD oglivedir VARCHAR(50) NOT NULL DEFAULT 'ogLive'; + END IF; # Eliminar campos no usado en inventario de hardware (ticket #713). IF EXISTS (SELECT * FROM information_schema.COLUMNS WHERE COLUMN_NAME='pci' AND TABLE_NAME='tipohardwares' AND TABLE_SCHEMA=DATABASE()) diff --git a/admin/Database/ogAdmBD.sql b/admin/Database/ogAdmBD.sql index 18e8e67b..a3801da2 100644 --- a/admin/Database/ogAdmBD.sql +++ b/admin/Database/ogAdmBD.sql @@ -133,6 +133,7 @@ CREATE TABLE IF NOT EXISTS `aulas` ( `paginalogin` varchar(100), `paginavalidacion` varchar(100), `inremotepc` tinyint DEFAULT '0', + `oglivedir` varchar(50) NOT NULL DEFAULT 'ogLive', PRIMARY KEY (`idaula`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; diff --git a/admin/WebConsole/gestores/gestor_aulas.php b/admin/WebConsole/gestores/gestor_aulas.php index 65f30bf8..2e96c0fd 100644 --- a/admin/WebConsole/gestores/gestor_aulas.php +++ b/admin/WebConsole/gestores/gestor_aulas.php @@ -37,6 +37,8 @@ $horaresevfin=0; $idmenu=0; $idproautoexec=0; $idrepositorio=0; +### AGP +$oglive="ogLive"; $idperfilhard=0; $modomul=0; $ipmul=""; @@ -85,6 +87,7 @@ if (isset($_POST["horaresevfin"])) $horaresevfin=$_POST["horaresevfin"]; if (isset($_POST["idmenu"])) $idmenu=$_POST["idmenu"]; if (isset($_POST["idprocedimiento"])) $idproautoexec=$_POST["idprocedimiento"]; if (isset($_POST["idrepositorio"])) $idrepositorio=$_POST["idrepositorio"]; +if (isset($_POST["seleoglive"])) $oglive=$_POST["seleoglive"]; if (isset($_POST["idperfilhard"])) $idperfilhard=$_POST["idperfilhard"]; if (isset($_POST["modomul"])) $modomul=$_POST["modomul"]; if (isset($_POST["ipmul"])) $ipmul=$_POST["ipmul"]; @@ -190,6 +193,7 @@ function Gestiona(){ global $idmenu; global $idproautoexec; global $idrepositorio; + global $oglive; global $idperfilhard; global $gidmenu; @@ -240,6 +244,7 @@ function Gestiona(){ $cmd->CreaParametro("@idmenu",$idmenu,1); $cmd->CreaParametro("@idproautoexec",$idproautoexec,1); $cmd->CreaParametro("@idrepositorio",$idrepositorio,1); + $cmd->CreaParametro("@idrepositorio",$idrepositorio,1); $cmd->CreaParametro("@idperfilhard",$idperfilhard,1); $cmd->CreaParametro("@ntp",$ntp,0); $cmd->CreaParametro("@dns",$dns,0); @@ -267,12 +272,12 @@ function Gestiona(){ cagnon, pizarra, ubicacion, comentarios, puestos, horaresevini, horaresevfin, router, netmask, ntp, dns, proxy, modomul, ipmul, pormul, velmul, - modp2p, timep2p, validacion, paginalogin, paginavalidacion) + modp2p, timep2p, validacion, paginalogin, paginavalidacion, oglivedir) VALUES (@idcentro, @grupoid, @nombreaula, @urlfoto, @inremotepc, @cagnon, @pizarra, @ubicacion, @comentarios, @puestos, @horaresevini, @horaresevfin, @router, @netmask, @ntp, @dns, @proxy, @modomul, @ipmul, @pormul, @velmul, - @modp2p, @timep2p, @validacion, @paginalogin, @paginavalidacion)"; + @modp2p, @timep2p, @validacion, @paginalogin, @paginavalidacion, @oglivedir)"; $resul=$cmd->Ejecutar(); if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta $idaula=$cmd->Autonumerico(); @@ -292,7 +297,8 @@ function Gestiona(){ router=@router,netmask=@netmask, ntp=@ntp, dns=@dns, proxy=@proxy, modomul=@modomul, ipmul=@ipmul, pormul=@pormul, velmul=@velmul, modp2p=@modp2p, timep2p=@timep2p, validacion=@validacion, - paginalogin=@paginalogin, paginavalidacion=@paginavalidacion + paginalogin=@paginalogin, paginavalidacion=@paginavalidacion, + oglivedir=@oglivedir WHERE idaula=@idaula"; $resul=$cmd->Ejecutar(); if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta @@ -303,6 +309,7 @@ function Gestiona(){ $clsUpdate.="idproautoexec=@idproautoexec,"; if($idrepositorio>0 || $gidrepositorio>0) $clsUpdate.="idrepositorio=@idrepositorio,"; + $clsUpdate .="oglivedir=@oglivedir,"; if($idperfilhard>0 || $gidperfilhard>0) $clsUpdate.="idperfilhard=@idperfilhard,"; // UHU - Actualiza la validacion en los ordenadores diff --git a/admin/WebConsole/gestores/gestor_ordenadores.php b/admin/WebConsole/gestores/gestor_ordenadores.php index 8ad5bb42..9a0c0110 100644 --- a/admin/WebConsole/gestores/gestor_ordenadores.php +++ b/admin/WebConsole/gestores/gestor_ordenadores.php @@ -35,6 +35,8 @@ $ip=""; $mac=""; $idperfilhard=0; $idrepositorio=0; +### AGP +$oglive="ogLive"; $idmenu=0; $idprocedimiento=0; $idimagen=0; @@ -72,6 +74,7 @@ if (isset($_POST["ip"])) $ip=$_POST["ip"]; if (isset($_POST["mac"])) $mac=str_replace(":","",$_POST["mac"]); if (isset($_POST["idperfilhard"])) $idperfilhard=$_POST["idperfilhard"]; if (isset($_POST["idrepositorio"])) $idrepositorio=$_POST["idrepositorio"]; +if (isset($_POST["seleoglive"])) $oglive=$_POST["seleoglive"]; if (isset($_POST["idmenu"])) $idmenu=$_POST["idmenu"]; if (isset($_POST["idprocedimiento"])) $idprocedimiento=$_POST["idprocedimiento"]; @@ -177,6 +180,7 @@ function Gestiona(){ global $idaula; global $idperfilhard; global $idrepositorio; + global $oglive; global $idmenu; global $idprocedimiento; global $netiface; @@ -208,6 +212,7 @@ function Gestiona(){ $cmd->CreaParametro("@mac",$mac,0); $cmd->CreaParametro("@idperfilhard",$idperfilhard,1); $cmd->CreaParametro("@idrepositorio",$idrepositorio,1); + $cmd->CreaParametro("@oglivedir",$oglive,0); $cmd->CreaParametro("@idmenu",$idmenu,1); $cmd->CreaParametro("@idprocedimiento",$idprocedimiento,1); $cmd->CreaParametro("@netiface",$netiface,0); @@ -247,8 +252,8 @@ function Gestiona(){ // Crear fichero TFTP/PXE por defecto para el nuevo ordenador. createBootMode ($cmd, "", $idordenador, $idioma); //Insertar fotoord con Values @fotoordenador - $cmd->texto="INSERT INTO ordenadores(nombreordenador,numserie,ip,mac,idperfilhard,idrepositorio, - idmenu,idproautoexec,idaula,grupoid,netiface,netdriver,fotoord,validacion,paginalogin,paginavalidacion) VALUES (@nombreordenador,@numserie,@ip,@mac,@idperfilhard,@idrepositorio, + $cmd->texto="INSERT INTO ordenadores(nombreordenador,numserie,ip,mac,idperfilhard,idrepositorio,oglivedir, + idmenu,idproautoexec,idaula,grupoid,netiface,netdriver,fotoord,validacion,paginalogin,paginavalidacion) VALUES (@nombreordenador,@numserie,@ip,@mac,@idperfilhard,@idrepositorio,@oglivedir, @idmenu,@idprocedimiento,@idaula,@grupoid,@netiface,@netdriver,@fotoordenador,@validacion,@paginalogin,@paginavalidacion)"; } $resul=$cmd->Ejecutar(); @@ -263,7 +268,7 @@ function Gestiona(){ break; case $op_modificacion: $cmd->texto="UPDATE ordenadores SET nombreordenador=@nombreordenador,numserie=@numserie,ip=@ip,mac=@mac,idperfilhard=@idperfilhard, - idrepositorio=@idrepositorio,idmenu=@idmenu,idproautoexec=@idprocedimiento,netiface=@netiface,netdriver=@netdriver,fotoord=@fotoordenador,validacion=@validacion,paginalogin=@paginalogin,paginavalidacion=@paginavalidacion + idrepositorio=@idrepositorio,oglivedir=@oglivedir,idmenu=@idmenu,idproautoexec=@idprocedimiento,netiface=@netiface,netdriver=@netdriver,fotoord=@fotoordenador,validacion=@validacion,paginalogin=@paginalogin,paginavalidacion=@paginavalidacion WHERE idordenador=@idordenador"; $resul=$cmd->Ejecutar(); // Actualizar fichero TFTP/PXE a partir de la plantilla asociada. diff --git a/admin/WebConsole/idiomas/php/cat/propiedades_aulas_cat.php b/admin/WebConsole/idiomas/php/cat/propiedades_aulas_cat.php index 4ed56b2a..95ef8aab 100644 --- a/admin/WebConsole/idiomas/php/cat/propiedades_aulas_cat.php +++ b/admin/WebConsole/idiomas/php/cat/propiedades_aulas_cat.php @@ -40,10 +40,14 @@ $TbMsg[30]="Validació"; $TbMsg[31]="Pà gina login"; $TbMsg[32]="Pà gina validació"; // UHU +// AGP +$TbMsg[33]="ogLive"; +$TbMsg[34]="*** Existeixen Equips amb diferents ogLive ***"; $TbMsg[495]="Data/Caché"; $TbMsg[509]="Foto ordinador"; $TbMsg[5091]="Afegir foto"; $TbMsg[5092]="Veure fotos"; +// AGP // Ramón $TbMsg['PROP_NTPIP']="IP Servidor NTP <em>(opcional)</em>"; $TbMsg['PROP_DNSIP']="IP Servidor DNS <em>(opcional)</em>"; diff --git a/admin/WebConsole/idiomas/php/cat/propiedades_ordenadores_cat.php b/admin/WebConsole/idiomas/php/cat/propiedades_ordenadores_cat.php index 3c964d89..b15e741c 100644 --- a/admin/WebConsole/idiomas/php/cat/propiedades_ordenadores_cat.php +++ b/admin/WebConsole/idiomas/php/cat/propiedades_ordenadores_cat.php @@ -20,11 +20,14 @@ $TbMsg[11]="Menó"; $TbMsg[12]="Grandària Caché"; $TbMsg[13]="Interficie de Xarxa"; $TbMsg[14]="Driver de Xarxa"; +// AGP +$TbMsg[18]="ogLive"; $TbMsg[509]="Foto ordinador"; $TbMsg[5091]="Afegir foto"; $TbMsg[5092]="Veure fotos"; $TbMsg[495]="Data/Caché"; $TbMsg[4951]="Caché lliure"; +// AGP $TbMsg["PROP_SERIALNO"]="Nº de serie"; $TbMsg["WARN_NOTDETECTED"]="<em>(no detectado)</em>"; ?> diff --git a/admin/WebConsole/idiomas/php/eng/propiedades_aulas_eng.php b/admin/WebConsole/idiomas/php/eng/propiedades_aulas_eng.php index 76c1d624..3a0b2ac0 100644 --- a/admin/WebConsole/idiomas/php/eng/propiedades_aulas_eng.php +++ b/admin/WebConsole/idiomas/php/eng/propiedades_aulas_eng.php @@ -40,10 +40,14 @@ $TbMsg[30]="Validation"; $TbMsg[31]="Login page"; $TbMsg[32]="Validation page"; // UHU +// AGP +$TbMsg[33]="ogLive"; +$TbMsg[34]="*** There are equipment with different ogLive ***"; $TbMsg[495]="Cache content"; $TbMsg[509]="Computer picture"; $TbMsg[5091]="Insert picture"; $TbMsg[5092]="View pictures"; +// AGP // Ramón $TbMsg['PROP_NTPIP']="NTP Server IP <em>(optional)</em>"; $TbMsg['PROP_DNSIP']="DNS Server IP <em>(optional)</em>"; diff --git a/admin/WebConsole/idiomas/php/eng/propiedades_ordenadores_eng.php b/admin/WebConsole/idiomas/php/eng/propiedades_ordenadores_eng.php index 9e8a7304..cb356ac8 100644 --- a/admin/WebConsole/idiomas/php/eng/propiedades_ordenadores_eng.php +++ b/admin/WebConsole/idiomas/php/eng/propiedades_ordenadores_eng.php @@ -19,12 +19,14 @@ $TbMsg[10]="Repository"; $TbMsg[11]="Menu"; $TbMsg[12]="Cache size"; $TbMsg[13]="Network interface"; -$TbMsg[14]="Network driver"; +// AGP +$TbMsg[18]="ogLive"; $TbMsg[509]="Computer Photo"; $TbMsg[5091]="Insert Photo"; $TbMsg[5092]="View Images"; $TbMsg[495]="Content Cache"; $TbMsg[4951]="Cache Free"; +// AGP $TbMsg["PROP_SERIALNO"]="Serial No."; $TbMsg["WARN_NOTDETECTED"]="<em>(does not detected)</em>"; ?> diff --git a/admin/WebConsole/idiomas/php/esp/propiedades_aulas_esp.php b/admin/WebConsole/idiomas/php/esp/propiedades_aulas_esp.php index e9ce1a7d..7d48c88f 100644 --- a/admin/WebConsole/idiomas/php/esp/propiedades_aulas_esp.php +++ b/admin/WebConsole/idiomas/php/esp/propiedades_aulas_esp.php @@ -40,10 +40,14 @@ $TbMsg[30]="Validación"; $TbMsg[31]="Página login"; $TbMsg[32]="Página validación"; // UHU +// AGP +$TbMsg[33]="ogLive"; +$TbMsg[34]="*** Existen equipos con diferentes ogLive ***"; $TbMsg[495]="Fecha/Caché"; $TbMsg[509]="Foto ordenador"; $TbMsg[5091]="Insertar foto"; $TbMsg[5092]="Ver fotos"; +// AGP // Ramón $TbMsg['PROP_NTPIP']="IP Servidor NTP <em>(opcional)</em>"; $TbMsg['PROP_DNSIP']="IP Servidor DNS <em>(opcional)</em>"; diff --git a/admin/WebConsole/idiomas/php/esp/propiedades_ordenadores_esp.php b/admin/WebConsole/idiomas/php/esp/propiedades_ordenadores_esp.php index 24c23aab..10a8ae0e 100644 --- a/admin/WebConsole/idiomas/php/esp/propiedades_ordenadores_esp.php +++ b/admin/WebConsole/idiomas/php/esp/propiedades_ordenadores_esp.php @@ -25,11 +25,14 @@ $TbMsg[15]="Validación"; $TbMsg[16]="Pagina login"; $TbMsg[17]="Pagina validación"; // UHU +// AGP +$TbMsg[18]="ogLive"; $TbMsg[509]="Foto ordenador"; $TbMsg[5091]="Insertar foto"; $TbMsg[5092]="Ver fotos"; $TbMsg[495]="Fecha/Caché"; $TbMsg[4951]="Caché libre"; +//AGP $TbMsg["PROP_SERIALNO"]="Nº de serie"; $TbMsg["WARN_NOTDETECTED"]="<em>(no detectado)</em>"; ?> diff --git a/admin/WebConsole/propiedades/propiedades_aulas.php b/admin/WebConsole/propiedades/propiedades_aulas.php index fbac1acc..dea0c63c 100644 --- a/admin/WebConsole/propiedades/propiedades_aulas.php +++ b/admin/WebConsole/propiedades/propiedades_aulas.php @@ -397,6 +397,87 @@ function abrir_ventana(URL){ echo '<TD colspan=3>'.HTMLSELECT($cmd,$idcentro,'repositorios',$idrepositorio,'idrepositorio','nombrerepositorio',330).'</TD>'; ?> </TR> +<!---- AGP ------------------------------------------------------------------------------- OGLIVE ---------------------------------------------------------------------------------------------------------> + <TR> + <th align=center> <?echo $TbMsg[33]?> </th> +<?php +// Comprobamos si todos los ordenadores tienen el mismo ogLives +$cmd->texto="SELECT oglivedir,nombreordenador FROM ordenadores WHERE idaula=".$idaula." GROUP BY oglivedir"; +$rs=new Recordset; +$rs->Comando=&$cmd; +if (!$rs->Abrir()) return(true); // Error al abrir recordset +$rs->Primero(); +$cont=0; + while (!$rs->EOF){ + $bdordnombreordenador[]=$rs->campos["nombreordenador"]; + $bdordoglivedir[]=$rs->campos["oglivedir"]; + $cont++; + $rs->Siguiente(); + } +$rs->Cerrar(); + + +// Consultamos la tabla aulas +$cmd->texto="SELECT * FROM aulas WHERE idaula=".$idaula; +$rs=new Recordset; +$rs->Comando=&$cmd; +if (!$rs->Abrir()) return(true); // Error al abrir recordset +$rs->Primero(); + if (!$rs->EOF){ + $bdogLive=$rs->campos["oglivedir"]; + } +$rs->Cerrar(); + + if ($opcion==$op_eliminacion){ + echo '<td colspan="3">'.$bdogLive.'</td>'; + }else{ + +$ogcli=("bash /opt/opengnsys/bin/oglivecli list > /opt/opengnsys/www/tmp/ogcliaula.txt"); +$listogcli=shell_exec($ogcli); +$listogcli=shell_exec("cat /opt/opengnsys/www/tmp/ogcliaula.txt"); +//$listogcli=split(" ",$listogcli); + +echo '<TD colspan=3><select class="formulariodatos" name="seleoglive" style="width:330">'."\n"; +echo '<option value="ogLive">ogLive (por defecto)</option>'; +$num=0; + +// Apertura y lectura de fichero +$file = fopen("/opt/opengnsys/www/tmp/ogcliaula.txt", "r") or exit("Unable to open file!"); +//Output a line of the file until the end is reached +while(!feof($file)) +{ + $oglive=fgets($file); + if (ereg("ogLive",$oglive)){ + $oglive=substr($oglive,1); + $oglive=trim($oglive); + //echo '<option value="'.$oglilve.'">'.$oglive.'</option>'; + $Selectcli=""; + $Selectcli.= '<option value="'.$oglive.'"'; + If ($bdogLive==$oglive) $Selectcli.= ' selected ' ; + $Selectcli.= '>'.$oglive.'</OPTION>'; + echo $Selectcli; + } +$num++; +} +fclose($file); +///////////////////////////////// +if ($cont >1){ + echo ' </select><br><font color=red><strong>'.$TbMsg[34]." ==></strong></font>\n "; + $i=0; + echo '<select>'; + foreach ($bdordnombreordenador as $datos) { + if ($bdogLive != $bdordoglivedir[$i]){ + echo '<option>'.$bdordnombreordenador[$i].'</option>'; + } + $i++; + } + echo '</select>'; +}else{ + echo ' </select>'."\n"; + } + } +?> + </TR> <!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> <TR> <TH align=center> <?echo $TbMsg[20]?> </TH> diff --git a/admin/WebConsole/propiedades/propiedades_ordenadores.php b/admin/WebConsole/propiedades/propiedades_ordenadores.php index 033c6218..7c746f89 100644 --- a/admin/WebConsole/propiedades/propiedades_ordenadores.php +++ b/admin/WebConsole/propiedades/propiedades_ordenadores.php @@ -193,6 +193,57 @@ function abrir_ventana(URL){ echo '<TD colspan=3>'.HTMLSELECT($cmd,$idcentro,'repositorios',$idrepositorio,'idrepositorio','nombrerepositorio',250).'</TD>'; ?> </TR> +<!---- AGP -------------------------------------------------------------------- OGLIVE ---------------------------------------------------------------------------------------------------------> + <TR> + <th align=center> <?echo $TbMsg[18]?> </th> +<?php +$cmd->texto="SELECT * FROM ordenadores WHERE idordenador=".$idordenador; +$rs=new Recordset; +$rs->Comando=&$cmd; +if (!$rs->Abrir()) return(true); // Error al abrir recordset +$rs->Primero(); + if (!$rs->EOF){ + $bdogLive=$rs->campos["oglivedir"]; + } +$rs->Cerrar(); + + if ($opcion==$op_eliminacion){ + echo '<td colspan="3">'.$bdogLive.'</td>'; + }else{ + +$ogcli=("bash /opt/opengnsys/bin/oglivecli list > /opt/opengnsys/www/tmp/ogcliordenador.txt"); +$listogcli=shell_exec($ogcli); +$listogcli=shell_exec("cat /opt/opengnsys/www/tmp/ogcliordenador.txt"); +//$listogcli=split(" ",$listogcli); + +echo '<TD colspan=3><select class="formulariodatos" name="seleoglive" style=width:250>'."\n"; +echo '<option value="ogLive">ogLive (por defecto)</option>'; +$num=0; + +// Apertura y lectura de fichero +$file = fopen("/opt/opengnsys/www/tmp/ogcliordenador.txt", "r") or exit("Unable to open file!"); +//Output a line of the file until the end is reached +while(!feof($file)) +{ + $oglive=fgets($file); + if (ereg("ogLive",$oglive)){ + $oglive=substr($oglive,1); + $oglive=trim($oglive); + //echo '<option value="'.$oglilve.'">'.$oglive.'</option>'; + $Selectcli=""; + $Selectcli.= '<option value="'.$oglive.'"'; + If ($bdogLive==$oglive) $Selectcli.= ' selected ' ; + $Selectcli.= '>'.$oglive.'</OPTION>'; + echo $Selectcli; + } +$num++; +} +fclose($file); +///////////////////////////////// +echo ' </select>'."\n"; + } +?> + </TR> <!-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> <TR> <th align=center> <?echo $TbMsg[11]?> </th> |