Fin pruebas primeros ficheros.

git-svn-id: https://opengnsys.es/svn/trunk@599 a21b9725-9963-47de-94b9-378ad31fedc9
remotes/github/debian-pkg
alonso 2009-11-20 11:41:40 +00:00
parent 632c368e9f
commit dc00c0f0e6
9 changed files with 179 additions and 67 deletions

View File

@ -191,7 +191,7 @@ INSERT INTO `comandos` (`idcomando`, `descripcion`, `nfuncion1`, `nfuncion2`, `n
(11, 'Generar software Incremental', '', '', '', '', 'CrearSoftwareIncremental', '', '', '', '', '', '../comandos/CrearSoftIncremental.php', 16, 'ifs;ifh;par;icr', 'nfn;iph;par;ifs;ifh;nem;icr', '', 1, '2', 0),
(12, 'Activar Rembo Off Line', 'RemboOffline', 'RemboOffline', 'RemboOffline', 'RemboOffline', 'RemboOffline', '', '../comandos/RemboOffline.php', '../comandos/RemboOffline.php', '../comandos/RemboOffline.php', '../comandos/RemboOffline.php', '../comandos/RemboOffline.php', 31, 'iph', 'nfn;iph', '', 1, '2', 0),
(13, 'Tomar Configuracion', 'TomaConfiguracion', 'TomaConfiguracion', 'TomaConfiguracion', 'TomaConfiguracion', 'TomaConfiguracion', '', '../comandos/TomaConfiguracion.php', '../comandos/TomaConfiguracion.php', '../comandos/TomaConfiguracion.php', '../comandos/TomaConfiguracion.php', '../comandos/TomaConfiguracion.php', 31, 'iph', 'nfn;iph', '', 1, '2', 0),
(14, 'Iniciar Sesión', 'IniciarSesion', 'IniciarSesion', 'IniciarSesion', 'IniciarSesion', 'IniciarSesion', '', '../comandos/IniciarSesion.php', '../comandos/IniciarSesion.php', '../comandos/IniciarSesion.php', '../comandos/IniciarSesion.php', '../comandos/IniciarSesion.php', 31, 'iph', 'nfn;iph', '', 1, '2', 1);
(14, 'Iniciar Sesion', 'IniciarSesion', 'IniciarSesion', 'IniciarSesion', 'IniciarSesion', 'IniciarSesion', '', '../comandos/IniciarSesion.php', '../comandos/IniciarSesion.php', '../comandos/IniciarSesion.php', '../comandos/IniciarSesion.php', '../comandos/IniciarSesion.php', 31, 'iph;par', 'nfn;iph;par', '', 1, '2', 1);
-- --------------------------------------------------------

View File

@ -977,6 +977,10 @@ int GestionTramas(TRAMA *trama)
if(res==0)
return(Reiniciar(trama,nwtrama));
res=strcmp(nombrefuncion,"IniciarSesion");
if(res==0)
return(Reiniciar(trama,nwtrama));
res=strcmp(nombrefuncion,"RESPUESTA_InclusionCliente");
if(res==0)
return(RESPUESTA_InclusionCliente(trama));
@ -1305,6 +1309,41 @@ int Reiniciar(TRAMA *trama,TRAMA *nwtrama)
return(res);
}
//______________________________________________________________________________________________________
// Función: IniciSesion
//
// Descripción:
// Inicia Sesión en algún sistema operativo instalado en la máquina
// Parámetros:
// - trama: Trama recibida con las especificaciones del comando
// - nwtrama: Nueva trama a enviar al servidor con la respuesta de la acción, si ésta procede
// Devuelve:
// true si el proceso fue correcto o false en caso contrario
// *** En ese proceso se devuelve correcto aún sabiendo que no se se sabe si va a funcionar
// pero esto evita que si se ha lanzado con seguimiento, la tarea no quede sin norificar.
//______________________________________________________________________________________________________
int IniciarSesion(TRAMA *trama,TRAMA *nwtrama)
{
int res;
char *particion=TomaParametro("par",trama->parametros);
char *disco=(char*)ReservaMemoria(2);
sprintf(disco,"1"); // Siempre el disco 1
sprintf(nwtrama->parametros,"nfn=RESPUESTA_IniciarSesion\r");
res=RespuestaEjecucionComando(trama,nwtrama,true);
int herror;
sprintf(cmdshell,"%s/bootFS",HIDRASCRIPTS);
sprintf(parametros,"%s %s %s","bootFS",disco,particion);
herror=EjecutarScript(cmdshell,parametros,NULL,true);
if(herror){
UltimoErrorScript(herror,"IniciarSesion()"); // Se ha producido algún error
return(false);
}
return(res);
}
//______________________________________________________________________________________________________
// Función: Actualizar
//
// Descripción:

Binary file not shown.

View File

@ -397,6 +397,10 @@ int gestiona_comando(TramaRepos *trmInfo)
if(resul==0)
return(RegistraComando(trmInfo));
resul=strcmp(nombrefuncion,"IniciarSesion");
if(resul==0)
return(RegistraComando(trmInfo));
resul=strcmp(nombrefuncion,"FicheroOperador");
if(resul==0)
return(FicheroOperador(trmInfo));

View File

@ -291,6 +291,13 @@ void gestiona_comando(SOCKET s,TRAMA trama)
respuesta_cortesia(s);
return;
}
resul=strcmp(nombrefuncion,"RESPUESTA_IniciarSesion");
if(resul==0){
RESPUESTA_Reiniciar(s,parametros);
respuesta_cortesia(s);
return;
}
resul=strcmp(nombrefuncion,"RESPUESTA_ExecShell");
if(resul==0){
RESPUESTA_ExecShell(s,parametros);

View File

@ -6,7 +6,7 @@
// Fecha Última modificación: Marzo-2005
// Nombre del fichero: IniciarSesion.php
// Descripción :
// Implementaci<EFBFBD> del comando "Iniciar Sesión"
// Implementación<EFBFBD> del comando "Iniciar Sesión"
// *************************************************************************************************************************************************
include_once("../includes/ctrlacc.php");
include_once("../clases/AdoPhp.php");
@ -108,7 +108,7 @@ if (!$resul)
<TH align=center>&nbsp;&nbsp;</TH>
<TH align=center>&nbsp;<? echo $TbMsg[8] ?>&nbsp;</TH>
<TH align=center>&nbsp;<? echo $TbMsg[9] ?>&nbsp;</TH>
<TH align=center>&nbsp;<? echo $TbMsg[10] ?>&nbsp;</TD></TR>
</TR>
<?
echo tabla_configuraciones($cmd,$idordenador);
?>
@ -157,52 +157,6 @@ function toma_propiedades($cmd,$ido){
else
return(false);
}
/*________________________________________________________________________________________________________
Crea la etiqueta html <SELECT> de los perfiles softwares
________________________________________________________________________________________________________*/
function HTMLSELECT_perfiles($cmd,$idcentro,$tipopart,$particion,$idordenador){
$SelectHtml="";
$rs=new Recordset;
/*
$cmd->texto="SELECT imagenes.descripcion,perfilessoft.idperfilsoft,perfilessoft.descripcion as perfil,tiposos.nemonico
FROM tiposos
INNER JOIN softwares ON tiposos.idtiposo = softwares.idtiposo
INNER JOIN perfilessoft_softwares ON softwares.idsoftware = perfilessoft_softwares.idsoftware
INNER JOIN perfilessoft ON perfilessoft.idperfilsoft = perfilessoft_softwares.idperfilsoft
INNER JOIN imagenes ON perfilessoft.idperfilsoft = imagenes.idperfilsoft
WHERE perfilessoft.idcentro=".$idcentro;
*/
$cmd->texto="SELECT imagenes.descripcion,ordenador_perfilsoft.idperfilsoft FROM imagenes
INNER JOIN perfilessoft ON perfilessoft.idperfilsoft=imagenes.idperfilsoft
INNER JOIN ordenador_perfilsoft ON ordenador_perfilsoft .idperfilsoft=perfilessoft.idperfilsoft
WHERE ordenador_perfilsoft.particion=".$particion."
AND ordenador_perfilsoft.idordenador=".$idordenador."
AND perfilessoft.idcentro=".$idcentro;
// Cuesti<74> partici<63> oculta
/*
$swo=substr ($tipopart,0,1);
if($swo=="H")
$tipopart=substr ($tipopart,1,strlen($tipopart)-1);
$cmd->texto.=" AND (tiposos.tipopar = '".$tipopart."' OR tiposos.tipopar ='H".$tipopart."' )";
$cmd->texto.=" AND tiposos.tipopar = '".$tipopart."'";
*/
$rs->Comando=&$cmd;
if (!$rs->Abrir()) return(0); // Error al abrir recordset
$SelectHtml.= '<SELECT class="formulariodatos" id="desple_'.$particion.'" style="WIDTH: 300">';
$SelectHtml.= ' <OPTION value="0"></OPTION>';
$rs->Primero();
while (!$rs->EOF){
$SelectHtml.='<OPTION value="'.$rs->campos["idperfilsoft"].'">';
$SelectHtml.= $rs->campos["descripcion"].'</OPTION>';
$rs->Siguiente();
}
$SelectHtml.= '</SELECT>';
$rs->Cerrar();
return($SelectHtml);
}
/*________________________________________________________________________________________________________
Crea la tabla de configuraciones y perfiles a crear
________________________________________________________________________________________________________*/
@ -224,11 +178,10 @@ function tabla_configuraciones($cmd,$idordenador){
$nombreso=$ValorParametros["nombreso"]; // Toma nombre del sistema operativo
if(!empty($tiposo)){
$tablaHtml.='<TR>'.chr(13);
$tablaHtml.='<TD ><input type=checkbox name=particion_'.$particion.' value='.$particion.'></TD>'.chr(13);
$tablaHtml.='<TD ><input type="radio" name="particion" value='.$particion.'></TD>'.chr(13);
$tablaHtml.='<TD align=center>&nbsp;'.$particion.'&nbsp;</TD>'.chr(13);
$tablaHtml.='<TD>&nbsp;'.$nombreso.'&nbsp;</TD>'.chr(13);
$tiposo=$ValorParametros["tiposo"];
$tablaHtml.='<TD>'.HTMLSELECT_perfiles($cmd,$idcentro,$tipopart,$particion,$idordenador).'</TD>';
$tablaHtml.='</TR>'.chr(13);
}
}

View File

@ -0,0 +1,111 @@
<?
// *************************************************************************************************************************************************
// Aplicación WEB: ogAdmWebCon
// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
// Fecha Creación: Año 2003-2004
// Fecha Última modificación: Marzo-2005
// Nombre del fichero: gestor_Apagar.php
// Descripción :
// Gestor del comando "IniciarSesion"
// *************************************************************************************************************************************************
include_once("../../includes/ctrlacc.php");
include_once("../../clases/AdoPhp.php");
include_once("../../clases/SockHidra.php");
include_once("../../includes/constantes.php");
include_once("../../includes/comunes.php");
include_once("../../includes/cuestionacciones.php");
include_once("../../includes/CreaComando.php");
//________________________________________________________________________________________________________
$identificador=0;
$nombrefuncion="";
$ejecutor="";
$cadenaip="";
$particion="";
if (isset($_GET["particion"])) $particion=$_GET["particion"];
include_once("../../includes/cuestionaccionescab.php");
$fp = fopen('../'.$fileparam,"r");
$parametros= fread ($fp, filesize ("../".$fileparam));
fclose($fp);
$ValorParametros=extrae_parametros($parametros,chr(13),'=');
$identificador=$ValorParametros["identificador"];
$nombrefuncion=$ValorParametros["nombrefuncion"];
$ejecutor=$ValorParametros["ejecutor"];
$cadenaip=$ValorParametros["cadenaip"];
$ambito=$ValorParametros["ambito"];
$idambito=$ValorParametros["idambito"];
$cmd=CreaComando($cadenaconexion); // Crea objeto comando
$resul=false;
if ($cmd){
$resul=Gestiona($cmd);
$cmd->Conexion->Cerrar();
}
//________________________________________________________________________________________________________
?>
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<BODY>
<?
if ($resul){
echo '<SCRIPT language="javascript">';
echo 'window.parent.resultado_iniciarsesion(1)'.chr(13);
echo '</SCRIPT>';
}
else{
echo '<SCRIPT language="javascript">';
echo 'window.parent.resultado_iniciarsesion(0)'.chr(13);
echo '</SCRIPT>';
}
?>
</BODY>
</HTML>
<?
// *************************************************************************************************************************************************
function Gestiona($cmd){
global $ACCION_SINERRORES; // Activa y con algún error
global $ACCION_INICIADA;
global $idcentro;
global $identificador;
global $nombrefuncion;
global $ejecutor;
global $cadenaip;
global $ambito;
global $idambito;
global $EJECUCION_COMANDO;
global $PROCESOS;
global $servidorhidra;
global $hidraport;
global $particion;
$shidra=new SockHidra($servidorhidra,$hidraport);
$cmd->CreaParametro("@tipoaccion",$EJECUCION_COMANDO,1);
$cmd->CreaParametro("@idtipoaccion",$identificador,1);
$cmd->CreaParametro("@cateaccion",$PROCESOS,1);
$cmd->CreaParametro("@ambito",$ambito,1);
$cmd->CreaParametro("@idambito",$idambito,1);
$cmd->CreaParametro("@fechahorareg",date("y/m/d H:i:s"),0);
$cmd->CreaParametro("@estado",$ACCION_INICIADA,0);
$cmd->CreaParametro("@resultado",$ACCION_SINERRORES,0);
$cmd->CreaParametro("@idcentro",$idcentro,1);
$cmd->CreaParametro("@parametros","",0);
$cmd->CreaParametro("@descripcion","",0);
$cmd->CreaParametro("@idtarea",0,1);
$cmd->CreaParametro("@idprocedimiento",0,1);
$cmd->CreaParametro("@idcomando",0,1);
$parametros=$ejecutor;
$parametros.="nfn=".$nombrefuncion.chr(13);
$parametros.="iph=".$cadenaip.chr(13);
$parametros.="par=".$particion.chr(13);
$cmd->ParamSetValor("@parametros",$parametros);
return(CuestionAcciones($cmd,$shidra,$parametros));
}
?>

View File

@ -1,4 +1,4 @@
// *************************************************************************************************************************************************
// *************************************************************************************************************************************************
// Libreria de scripts de Javascript
// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
// Fecha Creación:2003-2004
@ -18,16 +18,14 @@ function confirmar(){
var idambito=document.fdatos.idambito.value;
tb_conf=document.getElementById("tabla_conf");
var ochecks=tb_conf.getElementsByTagName('INPUT')
var perfiles=""
var particion;
for(var i=0;i<ochecks.length;i++){
if(ochecks[i].checked){
var particion=ochecks[i].value
desple=document.getElementById("desple_"+particion);
perfiles+=particion+"_"+desple.value+";"
particion=ochecks[i].value
}
}
var wurl="./gestores/gestor_IniciarSesion.php"
wurl+="?cadenaip="+cadenaip+"&identificador="+identificador+"&nombrefuncion="+nombrefuncion+"&ejecutor="+ejecutor+"&tipotrama="+tipotrama+"&ambito="+ambito+"&idambito="+idambito+"&perfiles="+perfiles
wurl+="?cadenaip="+cadenaip+"&identificador="+identificador+"&nombrefuncion="+nombrefuncion+"&ejecutor="+ejecutor+"&tipotrama="+tipotrama+"&ambito="+ambito+"&idambito="+idambito+"&particion="+particion
wurl+="&" +compone_urlejecucion();
ifr=document.getElementById("iframes_comodin"); // Toma objeto Iframe
ifr.src=wurl; // LLama a la p<>ina gestora
@ -52,27 +50,19 @@ function comprobar_datos(){
for(var i=0;i<ochecks.length;i++){
if(ochecks[i].checked){
op++;
var particion=ochecks[i].value
desple=document.getElementById("desple_"+particion);
var p=desple.selectedIndex
if (p==0){
alert(TbMsg[0])
desple.focus()
return(false)
}
}
}
if(op==0){
alert(TbMsg[1])
return(false);
}
return(comprobar_datosejecucion())
return(true)
}
//________________________________________________________________________________________________________
//
// Comprobar retorno
//________________________________________________________________________________________________________
function resultado_IniciarSesion(resul){
function resultado_iniciarsesion(resul){
if (!resul){
alert(CTbMsg[1]);
return

View File

@ -0,0 +1,8 @@
//________________________________________________________________________________________________________
//
// Fichero de idiomas javascripts: crearperfilsoftware_esp.js
// Idioma: Español
//________________________________________________________________________________________________________
TbMsg=new Array;
TbMsg[0]="";
TbMsg[1]="Debe elegir al menos una partición";