source: admin/ogAdmSources/ogAdmWebCon/gestores/gestor_tareas.php @ e42f34e

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 e42f34e was 8964f9b, checked in by ramon <ramongomez@…>, 16 years ago

Resstructuración de trunk.

git-svn-id: https://opengnsys.es/svn/trunk@390 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100644
File size: 10.8 KB
Line 
1<?
2// *************************************************************************************************************************************************
3// Aplicación WEB: Hidra
4// Copyright 2003-2005  José Manuel Alonso. Todos los derechos reservados.
5// Fecha Creación: Año 2003-2004
6// Fecha Última modificación: Marzo-2005
7// Nombre del fichero: gestor_tareas.php
8// Descripción :
9//              Gestiona el mantenimiento de la tabla de tareas
10// *************************************************************************************************************************************************
11include_once("../includes/ctrlacc.php");
12include_once("../clases/AdoPhp.php");
13include_once("../clases/XmlPhp.php");
14include_once("../clases/ArbolVistaXML.php");
15include_once("../clases/SockHidra.php");
16include_once("../includes/CreaComando.php");
17include_once("../includes/constantes.php");
18include_once("../includes/opciones.php");
19include_once("./relaciones/tareas_eliminacion.php");
20//________________________________________________________________________________________________________
21$opcion=0; // Inicializa parametros
22
23$idtarea=0;
24$descripcion="";
25$comentarios="";
26$grupoid=0;
27$swc=0; // switch de cliente, esta pagina la llama el cliente a través del browser
28
29if (isset($_GET["opcion"])) $opcion=$_GET["opcion"]; // Recoge parametros
30
31if (isset($_GET["idtarea"])) $idtarea=$_GET["idtarea"];
32if (isset($_GET["descripcion"])) $descripcion=$_GET["descripcion"];
33if (isset($_GET["comentarios"])) $comentarios=$_GET["comentarios"];
34if (isset($_GET["grupoid"])) $grupoid=$_GET["grupoid"];
35if (isset($_GET["identificador"])) $idtarea=$_GET["identificador"];
36if (isset($_GET["swc"])) $swc=$_GET["swc"];
37
38$tablanodo=""; // Arbol para nodos insertados
39
40$cmd=CreaComando($cadenaconexion); // Crea objeto comando
41$resul=false;
42if ($cmd){
43        $resul=Gestiona();
44        $cmd->Conexion->Cerrar();
45}
46// *************************************************************************************************************************************************
47?>
48<HTML>
49<HEAD>
50<BODY>
51<?
52        $literal="";
53        switch($opcion){
54                case $op_alta :
55                        $literal="resultado_insertar_tareas";
56                        break;
57                case $op_modificacion:
58                        $literal="resultado_modificar_tareas";
59                        break;
60                case $op_eliminacion :
61                        $literal="resultado_eliminar_tareas";
62                        break;
63                case $op_movida :
64                        $literal="resultado_mover";
65                        break;
66                case $op_ejecucion :
67                        $literal="resultado_ejecutar_tareas";
68                        break;
69                default:
70                        break;
71        }
72echo '<p><span id="arbol_nodo">'.$tablanodo.'</span></p>';
73if ($resul){
74        if(empty($swc)){
75                echo '<SCRIPT language="javascript">'.chr(13);
76                echo 'var oHTML'.chr(13);
77                echo 'var cTBODY=document.all.tags("TBODY");'.chr(13);
78                echo 'o=cTBODY.item(1);'.chr(13);
79                if ($opcion==$op_alta )
80                        echo 'window.parent.'.$literal."(1,'".$cmd->DescripUltimoError()." ',".$idtarea.",o.innerHTML);".chr(13);
81                else
82                        echo 'window.parent.'.$literal."(1,'".$cmd->DescripUltimoError()." ',".$idtarea.");".chr(13);
83                echo '</SCRIPT>';
84        }
85        else{
86                echo '<SCRIPT language="javascript">'.chr(13);
87                echo 'alert("El item se ha ejecutado correctamente");'.chr(13);
88                echo 'location.href="../varios/menucliente.php?iph='.$_SESSION["ogCliente"].'";'.chr(13);
89                echo '</SCRIPT>';
90        }               
91}
92else{
93        if(empty($swc)){
94                echo '<SCRIPT language="javascript">';
95                echo "  window.parent.".$literal."(0,'".$cmd->DescripUltimoError()."',".$idtarea.")";
96                echo '</SCRIPT>';
97        }
98        else{
99                echo '<SCRIPT language="javascript">'.chr(13);
100                echo 'alert("***ATENCIÓN:El item NO se ha podido ejecutar");'.chr(13);
101                echo 'location.href="../varios/menucliente.php?iph='.$_SESSION["ogCliente"].'";'.chr(13);
102                echo '</SCRIPT>';
103        }
104}
105?>
106</BODY>
107</HTML>
108<?
109/**************************************************************************************************************************************************
110        Inserta, modifica o elimina datos en la tabla tareas
111________________________________________________________________________________________________________*/
112function Gestiona(){
113        global $EJECUCION_TAREA;
114
115        global  $cmd;
116        global  $opcion;
117
118        global  $idcentro;
119        global  $idtarea;
120        global  $descripcion;
121        global  $comentarios;
122        global  $grupoid;
123
124        global  $op_alta;
125        global  $op_modificacion;
126        global  $op_eliminacion;
127        global  $op_movida;
128        global  $op_ejecucion;
129
130        global  $tablanodo;
131
132        $cmd->CreaParametro("@idcentro",$idcentro,1);
133        $cmd->CreaParametro("@idtarea",$idtarea,1);
134        $cmd->CreaParametro("@descripcion",$descripcion,0);
135        $cmd->CreaParametro("@comentarios",$comentarios,0);
136        $cmd->CreaParametro("@grupoid",$grupoid,1);
137
138        switch($opcion){
139                case $op_alta :
140                        $cmd->texto="INSERT INTO tareas (descripcion,comentarios,idcentro,grupoid) VALUES (@descripcion,@comentarios,@idcentro,@grupoid)";
141                        $resul=$cmd->Ejecutar();
142                        if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta
143                                $idtarea=$cmd->Autonumerico();
144                                $arbolXML=SubarbolXML_tareas($idtarea,$descripcion,"");
145                                $baseurlimg="../images/signos"; // Url de las imagenes de signo
146                                $clasedefault="texto_arbol"; // Hoja de estilo (Clase por defecto) del árbol
147                                $arbol=new ArbolVistaXML($arbolXML,0,$baseurlimg,$clasedefault);
148                                $tablanodo=$arbol->CreaArbolVistaXML();
149                        }
150                        break;
151                case $op_modificacion:
152                        $cmd->texto="UPDATE tareas SET descripcion=@descripcion,comentarios=@comentarios WHERE idtarea=@idtarea";
153                        $resul=$cmd->Ejecutar();
154                        break;
155                case $op_eliminacion :
156                        $resul=EliminaTareas($cmd,$idtarea,"idtarea"); 
157                        break;
158                case $op_movida :
159                        $cmd->texto="UPDATE tareas SET  grupoid=@grupoid WHERE idtarea=@idtarea";
160                        $resul=$cmd->Ejecutar();
161                        break;
162                case $op_ejecucion :
163                                        $resul=EjecutandoTareas();
164                        break;
165                default:
166                        break;
167        }
168        return($resul);
169}
170/*________________________________________________________________________________________________________
171        Crea un arbol XML para el nuevo nodo insertado
172________________________________________________________________________________________________________*/
173function SubarbolXML_tareas($idtarea,$descripcion,$urlimg){
174                global $LITAMBITO_TAREAS;
175                $cadenaXML='<TAREA';
176                // Atributos`
177                if      ($urlimg!="")
178                        $cadenaXML.=' imagenodo="'.$urlimg;
179                else
180                        $cadenaXML.=' imagenodo="../images/iconos/tareas.gif"';
181                $cadenaXML.=' infonodo="'.$descripcion;
182                $cadenaXML.=' nodoid='.$LITAMBITO_TAREAS.'-'.$idtarea;
183                $cadenaXML.=' clickcontextualnodo="menu_contextual(this,' ."'flo_".$LITAMBITO_TAREAS."'" .')"';
184                $cadenaXML.='>';
185                $cadenaXML.='</TAREA>';
186                return($cadenaXML);
187}
188//________________________________________________________________________________________________________
189function EjecutandoTareas(){
190
191        global $EJECUCION_COMANDO;
192        global $EJECUCION_TAREA;
193        global $PROCESOS;
194        global $ACCION_INICIADA;
195        global $ACCION_SINERRORES;
196        global $idcentro;
197        global $servidorhidra;
198        global $hidraport;
199        global  $idtarea;
200        global  $cmd;
201
202        $shidra=new SockHidra($servidorhidra,$hidraport);
203
204        $ambitarea="";
205        $paramtarea="cmd=";
206
207        $tbComandos="";
208        $tabla_comandos="";
209        $cont_comandos=0;
210
211        $rs=new Recordset;
212        $cmd->texto="SELECT * FROM tareas_comandos WHERE idtarea=".$idtarea;
213        $cmd->texto.=" ORDER by tareas_comandos.orden";
214        $rs->Comando=&$cmd;
215        if (!$rs->Abrir()) return(false); // Error al abrir recordset
216        $rs->Primero();
217        // Recorre tareas-comandos
218        while (!$rs->EOF){
219                        $tbComandos["idcomando"]=$rs->campos["idcomando"];
220                        $tbComandos["ambito"]=$rs->campos["ambito"];
221                        $tbComandos["idambito"]=$rs->campos["idambito"];
222                        $tbComandos["parametros"]=$rs->campos["parametros"];
223                        $tbComandos["idnotificador"]=$rs->campos["idtareacomando"];
224                        $tabla_comandos[$cont_comandos]=$tbComandos;
225                        $cont_comandos++;
226
227                        $ambitarea.=$rs->campos["ambito"].":".$rs->campos["idambito"].";";
228                        $paramtarea.=$rs->campos["idtareacomando"].";";
229                       
230                        $rs->Siguiente();
231        }
232        $rs->Cerrar();
233
234        $ambitarea=substr($ambitarea,0,strlen($ambitarea)-1); // Quita la coma final
235        $paramtarea=substr($paramtarea,0,strlen($paramtarea)-1); // Quita la coma final
236
237        //Creación parametros para inserción
238        $cmd->CreaParametro("@tipoaccion","",1);
239        $cmd->CreaParametro("@idtipoaccion",0,1);
240        $cmd->CreaParametro("@cateaccion",$PROCESOS,1);
241        $cmd->CreaParametro("@ambito",0,1);
242        $cmd->CreaParametro("@idambito",0,1);
243        $cmd->CreaParametro("@ambitskwrk","",0);
244        $cmd->CreaParametro("@fechahorareg","",0);
245        $cmd->CreaParametro("@estado",$ACCION_INICIADA,0);
246        $cmd->CreaParametro("@resultado",$ACCION_SINERRORES,0);
247        $cmd->CreaParametro("@idcentro",$idcentro,1);
248        $cmd->CreaParametro("@parametros","",0);       
249        $cmd->CreaParametro("@accionid",0,1);   
250        $cmd->CreaParametro("@idnotificador",0,1);     
251
252        // Insertar accion:tarea --------------------------------------------------------------------
253        $cmd->ParamSetValor("@tipoaccion",$EJECUCION_TAREA);
254        $cmd->ParamSetValor("@idtipoaccion",$idtarea);
255        $cmd->ParamSetValor("@ambito",0);
256        $cmd->ParamSetValor("@idambito",0);
257        $cmd->ParamSetValor("@ambitskwrk",$ambitarea);
258        $cmd->ParamSetValor("@fechahorareg",date("d/m/y H:i:s"));
259        $cmd->ParamSetValor("@parametros",$paramtarea);
260        $cmd->texto="INSERT INTO acciones (tipoaccion,idtipoaccion,cateaccion,ambito,idambito,ambitskwrk,fechahorareg,estado,resultado,idcentro,parametros,accionid,idnotificador) VALUES (@tipoaccion,@idtipoaccion,@cateaccion,@ambito,@idambito,@ambitskwrk,@fechahorareg,@estado,@resultado,@idcentro,@parametros,0,0)";
261        $resul=$cmd->Ejecutar();
262        if(!$resul) return(false);
263
264        $accionid=$cmd->Autonumerico(); // Toma identificador dela acción
265
266        // Insertar acciones:comandos
267        $shidra=new SockHidra($servidorhidra,$hidraport);
268        for ($i=0;$i<$cont_comandos;$i++){
269                $tbComandos=$tabla_comandos[$i];
270                $cmd->ParamSetValor("@tipoaccion",$EJECUCION_COMANDO);
271                $cmd->ParamSetValor("@idtipoaccion",$tbComandos["idcomando"]);
272                $cmd->ParamSetValor("@ambito",$tbComandos["ambito"]);
273                $cmd->ParamSetValor("@idambito",$tbComandos["idambito"]);
274                $cmd->ParamSetValor("@ambitskwrk","");
275                $cmd->ParamSetValor("@fechahorareg",date("d/m/y H:i:s"));
276                $cmd->ParamSetValor("@parametros",$tbComandos["parametros"]);
277                $cmd->ParamSetValor("@accionid",$accionid);
278                $cmd->ParamSetValor("@idnotificador",$tbComandos["idnotificador"]);
279                $cmd->texto="INSERT INTO acciones (tipoaccion,idtipoaccion,cateaccion,ambito,idambito,ambitskwrk,fechahorareg,estado,resultado,idcentro,parametros,accionid,idnotificador) VALUES (@tipoaccion,@idtipoaccion,@cateaccion,@ambito,@idambito,@ambitskwrk,@fechahorareg,@estado,@resultado,@idcentro,@parametros,@accionid,@idnotificador)";
280                $resul=$cmd->Ejecutar();
281                if(!$resul) return(false);
282                $tbComandos["parametros"].="ids=".$cmd->Autonumerico().chr(13);
283
284                if ($shidra->conectar()){ // Se ha establecido la conexión con el servidor hidra
285                        $shidra->envia_comando($tbComandos["parametros"]);
286                        $shidra->desconectar();
287                }
288        }
289        return(true);
290}
291?>
Note: See TracBrowser for help on using the repository browser.