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 2003-2004 |
---|
6 | // Fecha Última modificación: Noviembre-2005 |
---|
7 | // Nombre del fichero: gestor_programaciones.php |
---|
8 | // Descripción : |
---|
9 | // Gestiona las programaciones de tareas y trabajos |
---|
10 | // ************************************************************************************************************************************************* |
---|
11 | include_once("../includes/ctrlacc.php"); |
---|
12 | include_once("../clases/AdoPhp.php"); |
---|
13 | include_once("../includes/comunes.php"); |
---|
14 | //________________________________________________________________________________________________________ |
---|
15 | $op_alta=1; |
---|
16 | $op_modificacion=2; |
---|
17 | $op_eliminacion=3; |
---|
18 | $op_suspension=4; |
---|
19 | |
---|
20 | $pswop=0; // opcion alta,modificación o eliminación |
---|
21 | $pidprogramacion=0; // Identificador de la programación si se trata de mofdificación o eliminación |
---|
22 | $pidentificador=0; // Identificador de la tarea o el trabajo que se está programando |
---|
23 | $ptipoaccion=0; // Tipo de acción:tarea o trabajo |
---|
24 | $pnombrebloque=""; // Nombre del bloque de programación |
---|
25 | $pannos=""; // Valor hexadecimal que indica los años elegidos |
---|
26 | $pmeses=""; // Valor hexadecimal que indica los meses elegidos |
---|
27 | $pdiario=""; // Valor hexadecimal que indica los dias elegidos en modalidad simple ( un sólo mes ) |
---|
28 | $pdias=""; // Valor hexadecimal que indica los días elegidos |
---|
29 | $psemanas=""; // Valor hexadecimal que indica las semanas elegidas |
---|
30 | $phoras=""; // Valor hexadecimal que indica las horas elegidas |
---|
31 | $pampm=0; // Valor que indica la modalidad a.m.=0 p.m.= 1 |
---|
32 | $pminutos=0; // Valor decimal que indica los minutos |
---|
33 | $psegundos=0; // Valor decimal que indica los segundos |
---|
34 | $phorasini=""; // Valor hexadecimal que indica las horas hasta elegidas |
---|
35 | $pampmini=0; // Valor que indica la modalidad a.m.=0 p.m.= 1 hora hasta |
---|
36 | $pminutosini=0; // Valor decimal que indica los minutos hasa |
---|
37 | $phorasfin=""; // Valor hexadecimal que indica las horas hasta elegidas |
---|
38 | $pampmfin=0; // Valor que indica la modalidad a.m.=0 p.m.= 1 hora hasta |
---|
39 | $pminutosfin=0; // Valor decimal que indica los minutos hasa |
---|
40 | |
---|
41 | $wsw_sus=""; // programación suspendida |
---|
42 | |
---|
43 | if (isset($_GET["wswop"])) $pswop=$_GET["wswop"]; |
---|
44 | if (isset($_GET["widprogramacion"])) $pidprogramacion=$_GET["widprogramacion"]; |
---|
45 | if (isset($_GET["widentificador"])) $pidentificador=$_GET["widentificador"]; |
---|
46 | if (isset($_GET["wtipoaccion"])) $ptipoaccion=$_GET["wtipoaccion"]; |
---|
47 | if (isset($_GET["wnombrebloque"])) $pnombrebloque=$_GET["wnombrebloque"]; |
---|
48 | if (isset($_GET["wannos"])) $pannos=$_GET["wannos"]; |
---|
49 | if (isset($_GET["wmeses"])) $pmeses=$_GET["wmeses"]; |
---|
50 | if (isset($_GET["wdiario"])) $pdiario=$_GET["wdiario"]; |
---|
51 | if (isset($_GET["wdias"])) $pdias=$_GET["wdias"]; |
---|
52 | if (isset($_GET["wsemanas"])) $psemanas=$_GET["wsemanas"]; |
---|
53 | if (isset($_GET["whoras"])) $phoras=$_GET["whoras"]; |
---|
54 | if (isset($_GET["wampm"])) $pampm=$_GET["wampm"]; |
---|
55 | if (isset($_GET["wminutos"])) $pminutos=$_GET["wminutos"]; |
---|
56 | if (isset($_GET["wsegundos"])) $psegundos=$_GET["wsegundos"]; |
---|
57 | if (isset($_GET["whorasini"])) $phorasini=$_GET["whorasini"]; |
---|
58 | if (isset($_GET["wampmini"])) $pampmini=$_GET["wampmini"]; |
---|
59 | if (isset($_GET["wminutosini"])) $pminutosini=$_GET["wminutosini"]; |
---|
60 | if (isset($_GET["whorasfin"])) $phorasfin=$_GET["whorasfin"]; |
---|
61 | if (isset($_GET["wampmfin"])) $pampmfin=$_GET["wampmfin"]; |
---|
62 | if (isset($_GET["wminutosfin"])) $pminutosfin=$_GET["wminutosfin"]; |
---|
63 | |
---|
64 | if (isset($_GET["wsw_sus"])) $wsw_sus=$_GET["wsw_sus"]; |
---|
65 | |
---|
66 | if(empty($pminutos)) $pminutos=0; |
---|
67 | if(empty($psegundos)) $psegundos=0; |
---|
68 | if(empty($pminutosini)) $pminutosini=0; |
---|
69 | if(empty($pminutosfin)) $pminutosfin=0; |
---|
70 | |
---|
71 | if($wsw_sus=='true') |
---|
72 | $psw_sus=1; |
---|
73 | else |
---|
74 | $psw_sus=0 ; |
---|
75 | |
---|
76 | $cmd=CreaComando($cadenaconexion); // Crea objeto comando |
---|
77 | $resul=false; |
---|
78 | if ($cmd){ |
---|
79 | $resul=Gestiona(); |
---|
80 | $cmd->Conexion->Cerrar(); |
---|
81 | } |
---|
82 | // ************************************************************************************************************************************************* |
---|
83 | ?> |
---|
84 | <HTML> |
---|
85 | <HEAD> |
---|
86 | <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> |
---|
87 | <BODY> |
---|
88 | <? |
---|
89 | if($pswop!=$op_suspension){ |
---|
90 | if (!$resul){ // Ha ocurrido algún error |
---|
91 | $reporerr=$cmd->UltimoError(); |
---|
92 | $repordes=$cmd->DescripUltimoError(); |
---|
93 | echo '<SCRIPT language="javascript">'; |
---|
94 | echo ' window.parent.error_programacion('.$reporerr.',"'.$repordes.'")'; |
---|
95 | echo '</SCRIPT>'; |
---|
96 | } |
---|
97 | else{ // programacion registrada correctamente |
---|
98 | switch($pswop){ |
---|
99 | case $op_modificacion : |
---|
100 | $idr=$pidprogramacion; // Identificador de la programacion modificada |
---|
101 | $swop=$op_modificacion; |
---|
102 | break; |
---|
103 | case $op_alta: |
---|
104 | $idr=$pidprogramacion; // Identificador de la programacion nueva |
---|
105 | $swop=$op_alta; |
---|
106 | break; |
---|
107 | case $op_eliminacion : |
---|
108 | $idr=$pidprogramacion; // Identificador de la programacion eliminada |
---|
109 | $swop=$op_eliminacion; |
---|
110 | break; |
---|
111 | default: |
---|
112 | break; |
---|
113 | } |
---|
114 | echo '<SCRIPT language="javascript">'; |
---|
115 | echo ' window.parent.registro_programacion('.$idr.',"'.$pnombrebloque.'",'.$swop.')'; |
---|
116 | echo '</SCRIPT>'; |
---|
117 | } |
---|
118 | } |
---|
119 | else{ |
---|
120 | |
---|
121 | if (!$resul){ // Ha ocurrido algún error |
---|
122 | $reporerr=0; |
---|
123 | $repordes="Error al suspender la programación"; |
---|
124 | echo '<SCRIPT language="javascript">'; |
---|
125 | echo ' window.parent.error_programacion('.$reporerr.',"'.$repordes.'")'; |
---|
126 | echo '</SCRIPT>'; |
---|
127 | } |
---|
128 | else{ // programacion registrada correctamente |
---|
129 | echo '<SCRIPT language="javascript">'; |
---|
130 | echo ' window.parent.resultado_suspender_programacion()'; |
---|
131 | echo '</SCRIPT>'; |
---|
132 | } |
---|
133 | } |
---|
134 | ?> |
---|
135 | </BODY> |
---|
136 | </HTML> |
---|
137 | <? |
---|
138 | // ************************************************************************************************************************************************* |
---|
139 | function Gestiona(){ |
---|
140 | global $cmd; |
---|
141 | global $pswop; |
---|
142 | global $pidprogramacion; |
---|
143 | global $pidentificador; |
---|
144 | global $ptipoaccion; |
---|
145 | global $pnombrebloque; |
---|
146 | global $pannos; |
---|
147 | global $pmeses; |
---|
148 | global $pdiario; |
---|
149 | global $pdias; |
---|
150 | global $psemanas; |
---|
151 | global $phoras; |
---|
152 | global $pampm; |
---|
153 | global $pminutos; |
---|
154 | global $psegundos; |
---|
155 | global $phorasini; |
---|
156 | global $pampmini; |
---|
157 | global $pminutosini; |
---|
158 | global $phorasfin; |
---|
159 | global $pampmfin; |
---|
160 | global $pminutosfin; |
---|
161 | global $psw_sus; |
---|
162 | global $op_alta; |
---|
163 | global $op_modificacion; |
---|
164 | global $op_eliminacion; |
---|
165 | global $op_suspension; |
---|
166 | |
---|
167 | $cmd->CreaParametro("@idprogramacion",$pidprogramacion,1); |
---|
168 | |
---|
169 | $cmd->CreaParametro("@tipoaccion",$ptipoaccion,1); |
---|
170 | $cmd->CreaParametro("@identificador",$pidentificador,1); |
---|
171 | $cmd->CreaParametro("@nombrebloque",$pnombrebloque,0); |
---|
172 | $cmd->CreaParametro("@annos",$pannos,1); |
---|
173 | $cmd->CreaParametro("@meses",$pmeses,1); |
---|
174 | $cmd->CreaParametro("@diario",$pdiario,1); |
---|
175 | $cmd->CreaParametro("@dias",$pdias,1); |
---|
176 | $cmd->CreaParametro("@semanas",$psemanas,1); |
---|
177 | $cmd->CreaParametro("@horas",$phoras,1); |
---|
178 | $cmd->CreaParametro("@ampm",$pampm,1); |
---|
179 | $cmd->CreaParametro("@minutos",$pminutos,1); |
---|
180 | $cmd->CreaParametro("@segundos",$psegundos,1); |
---|
181 | $cmd->CreaParametro("@inihoras",$phorasini,1); |
---|
182 | $cmd->CreaParametro("@iniampm",$pampmini,1); |
---|
183 | $cmd->CreaParametro("@iniminutos",$pminutosini,1); |
---|
184 | $cmd->CreaParametro("@finhoras",$phorasfin,1); |
---|
185 | $cmd->CreaParametro("@finampm",$pampmfin,1); |
---|
186 | $cmd->CreaParametro("@finminutos",$pminutosfin,1); |
---|
187 | $cmd->CreaParametro("@suspendida",$psw_sus,1); |
---|
188 | |
---|
189 | switch($pswop){ |
---|
190 | case $op_alta : |
---|
191 | $cmd->texto="INSERT INTO programaciones(tipoaccion,identificador,nombrebloque,annos,meses,diario,dias,semanas,horas,ampm,minutos,segundos,horasini,ampmini,minutosini,horasfin,ampmfin,minutosfin,suspendida) VALUES (@tipoaccion,@identificador,@nombrebloque,@annos,@meses,@diario,@dias,@semanas,@horas,@ampm,@minutos,@segundos,@inihoras,@iniampm,@iniminutos,@finhoras,@finampm,@finminutos,@suspendida)"; |
---|
192 | $resul=$cmd->Ejecutar(); |
---|
193 | if($resul) |
---|
194 | $pidprogramacion=$cmd->Autonumerico(); |
---|
195 | break; |
---|
196 | case $op_modificacion: |
---|
197 | $cmd->texto="UPDATE programaciones SET nombrebloque=@nombrebloque,annos=@annos,meses=@meses,diario=@diario,dias=@dias,semanas=@semanas,horas=@horas,ampm=@ampm,minutos=@minutos,segundos=@segundos,horasini=@inihoras,ampmini=@iniampm,minutosini=@iniminutos,horasfin=@finhoras,ampmfin=@finampm,minutosfin=@finminutos,suspendida=@suspendida WHERE idprogramacion=@idprogramacion"; |
---|
198 | $cmd->Traduce(); |
---|
199 | $resul=$cmd->Ejecutar(); |
---|
200 | break; |
---|
201 | case $op_eliminacion : |
---|
202 | $cmd->texto="DELETE FROM programaciones WHERE idprogramacion=".$pidprogramacion; |
---|
203 | $resul=$cmd->Ejecutar(); |
---|
204 | break; |
---|
205 | case $op_suspension : |
---|
206 | $cmd->texto="UPDATE programaciones SET suspendida=@suspendida WHERE identificador=@identificador AND tipoaccion=@tipoaccion"; |
---|
207 | $resul=$cmd->Ejecutar(); |
---|
208 | break; |
---|
209 | default: |
---|
210 | break; |
---|
211 | } |
---|
212 | return($resul); |
---|
213 | } |
---|
214 | // ************************************************************************************************************************************************* |
---|
215 | // Devuelve una objeto comando totalmente operativo (con la conexión abierta) |
---|
216 | // Parametros: |
---|
217 | // - cadenaconexion: Una cadena con los datos necesarios para la conexión: nombre del servidor |
---|
218 | // usuario,password,base de datos,etc separados por coma |
---|
219 | //________________________________________________________________________________________________________ |
---|
220 | function CreaComando($cadenaconexion){ |
---|
221 | $strcn=split(";",$cadenaconexion); |
---|
222 | $cn=new Conexion; |
---|
223 | $cmd=new Comando; |
---|
224 | $cn->CadenaConexion($strcn[0],$strcn[1],$strcn[2],$strcn[3],$strcn[4]); |
---|
225 | if (!$cn->Abrir()) return (false); |
---|
226 | $cmd->Conexion=&$cn; |
---|
227 | return($cmd); |
---|
228 | } |
---|
229 | ?> |
---|
230 | |
---|
231 | |
---|