| 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 2009-2010 | 
|---|
| 6 | // Fecha Última modificación: Agosto-2010 | 
|---|
| 7 | // Nombre del fichero: accionmenu.php | 
|---|
| 8 | // Descripción : | 
|---|
| 9 | //              Administra la inclusión de items en menus (procedimientos,tareas y trabajos de un determinado Centro) | 
|---|
| 10 | // ************************************************************************************************************************************************* | 
|---|
| 11 | include_once("../includes/ctrlacc.php"); | 
|---|
| 12 | include_once("../clases/AdoPhp.php"); | 
|---|
| 13 | include_once("../includes/constantes.php"); | 
|---|
| 14 | include_once("../includes/opciones.php"); | 
|---|
| 15 | include_once("../includes/comunes.php"); | 
|---|
| 16 | include_once("../includes/CreaComando.php"); | 
|---|
| 17 | include_once("../includes/HTMLSELECT.php"); | 
|---|
| 18 | include_once("../includes/HTMLCTESELECT.php"); | 
|---|
| 19 | include_once("../includes/CreaComando.php"); | 
|---|
| 20 | include_once("../idiomas/php/".$idioma."/accionmenu_".$idioma.".php"); | 
|---|
| 21 | //________________________________________________________________________________________________________ | 
|---|
| 22 | $idtipoaccion=0; | 
|---|
| 23 | $descripcionaccion=""; | 
|---|
| 24 | $tipoaccion=0; | 
|---|
| 25 |  | 
|---|
| 26 | $idmenu=0; | 
|---|
| 27 | $descripcionmenu=""; | 
|---|
| 28 |  | 
|---|
| 29 | if (isset($_GET["idtipoaccion"])) $idtipoaccion=$_GET["idtipoaccion"]; | 
|---|
| 30 | if (isset($_GET["descripcionaccion"])) $descripcionaccion=$_GET["descripcionaccion"]; | 
|---|
| 31 | if (isset($_GET["tipoaccion"])) $tipoaccion=$_GET["tipoaccion"]; | 
|---|
| 32 |  | 
|---|
| 33 | if (isset($_GET["idmenu"])) $idmenu=$_GET["idmenu"]; | 
|---|
| 34 | if (isset($_GET["descripcionmenu"])) $descripcionmenu=$_GET["descripcionmenu"]; | 
|---|
| 35 |  | 
|---|
| 36 | if(empty($idmenu)) $op=1; else $op=2; // Viene de "acciones" o de "menus" | 
|---|
| 37 | //________________________________________________________________________________________________________ | 
|---|
| 38 | $cmd=CreaComando($cadenaconexion); // Crea objeto comando | 
|---|
| 39 | if (!$cmd) | 
|---|
| 40 | Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D. | 
|---|
| 41 | //________________________________________________________________________________________________________ | 
|---|
| 42 | if($op==1){ // Viene de "acciones" | 
|---|
| 43 | switch($tipoaccion){ | 
|---|
| 44 | case $EJECUCION_PROCEDIMIENTO : | 
|---|
| 45 | $urlimg='../images/iconos/procedimiento.gif'; | 
|---|
| 46 | $litacion=$TbMsg[2]; | 
|---|
| 47 | $litdescri=$descripcionaccion; | 
|---|
| 48 | break; | 
|---|
| 49 | case $EJECUCION_TAREA : | 
|---|
| 50 | $urlimg='../images/iconos/tareas.gif'; | 
|---|
| 51 | $litacion=$TbMsg[3]; | 
|---|
| 52 | $litdescri=$descripcionaccion; | 
|---|
| 53 | break; | 
|---|
| 54 | } | 
|---|
| 55 | } | 
|---|
| 56 | else{ // Viene de menus | 
|---|
| 57 | $urlimg='../images/iconos/menu.gif'; | 
|---|
| 58 | $litacion=$TbMsg[4]; | 
|---|
| 59 | $litdescri=$descripcionmenu; | 
|---|
| 60 | } | 
|---|
| 61 | //________________________________________________________________________________________________________ | 
|---|
| 62 | ?> | 
|---|
| 63 | <HTML> | 
|---|
| 64 | <HEAD> | 
|---|
| 65 | <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> | 
|---|
| 66 | <LINK rel="stylesheet" type="text/css" href="../estilos.css"> | 
|---|
| 67 | <SCRIPT language="javascript" src="../jscripts/opciones.js"></SCRIPT> | 
|---|
| 68 | <SCRIPT language="javascript" src="../jscripts/accionmenu.js"></SCRIPT> | 
|---|
| 69 | <SCRIPT language="javascript" src="../jscripts/comunes.js"></SCRIPT> | 
|---|
| 70 | <SCRIPT language="javascript" src="../clases/jscripts/HttpLib.js"></SCRIPT> | 
|---|
| 71 | <? echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/accionmenu_'.$idioma.'.js"></SCRIPT>'?> | 
|---|
| 72 | </HEAD> | 
|---|
| 73 | <BODY> | 
|---|
| 74 | <FORM  name="fdatos"> | 
|---|
| 75 | <input type=hidden value="<? echo $idcentro?>" id=idcentro> | 
|---|
| 76 | <input type=hidden value="<? echo $idtipoaccion?>" id=idtipoaccion> | 
|---|
| 77 | <input type=hidden value="<? echo $tipoaccion?>" id=tipoaccion> | 
|---|
| 78 | </FORM> | 
|---|
| 79 | <P align=center class=cabeceras> | 
|---|
| 80 | <? echo $litcabecera ?><br> | 
|---|
| 81 | <span align=center class=subcabeceras><?echo $TbMsg[1]?></span> <img src="../images/iconos/menus.gif"><br><br> | 
|---|
| 82 | <span align=center class=presentaciones> | 
|---|
| 83 | <img src="<? echo $urlimg?>">    | 
|---|
| 84 | <u><? echo $litacion?></u>: <? echo $litdescri?></span> | 
|---|
| 85 | </P> | 
|---|
| 86 | <DIV align=center id="Layer_items"> | 
|---|
| 87 | <TABLE width="90%" class="tabla_listados" cellspacing=1 cellpadding=0 > | 
|---|
| 88 | <TR id="TR_menus"> | 
|---|
| 89 | <TH> </TH> | 
|---|
| 90 |  | 
|---|
| 91 | <? | 
|---|
| 92 | if($op==1) // Si viene desde "acciones" ... | 
|---|
| 93 | echo '<TH>'.$TbMsg[9].'</TH>'; | 
|---|
| 94 | else | 
|---|
| 95 | echo '<TH align=center>'.$TbMsg[15].'</TH>'; | 
|---|
| 96 | ?> | 
|---|
| 97 | <TH><?echo $TbMsg[10]?></TH> | 
|---|
| 98 | <TH><?echo $TbMsg[11]?></TH> | 
|---|
| 99 | <TH><?echo $TbMsg[12]?></TH> | 
|---|
| 100 | <TH><?echo $TbMsg[13]?></TH> | 
|---|
| 101 | <? | 
|---|
| 102 | if($op==2){ // Si viene desde "menus" ... | 
|---|
| 103 | echo '<TH style="visibility:hidden"> </TH>'; | 
|---|
| 104 | echo '<TH style="visibility:hidden"> </TH>'; | 
|---|
| 105 | } | 
|---|
| 106 | ?> | 
|---|
| 107 | </TR> | 
|---|
| 108 | <? | 
|---|
| 109 | //________________________________________________________________________________________________________ | 
|---|
| 110 |  | 
|---|
| 111 | if(!empty($idmenu)) // Viene de la página de menús | 
|---|
| 112 | { | 
|---|
| 113 | $cmd->texto="SELECT menus.idmenu,menus.descripcion as descripcionmenu, | 
|---|
| 114 | acciones_menus.idtipoaccion,acciones_menus.tipoaccion, | 
|---|
| 115 | acciones_menus.tipoitem,acciones_menus.idurlimg, | 
|---|
| 116 | acciones_menus.descripitem,acciones_menus.orden | 
|---|
| 117 | FROM menus | 
|---|
| 118 | INNER JOIN acciones_menus ON acciones_menus.idmenu=menus.idmenu | 
|---|
| 119 | WHERE acciones_menus.idmenu=".$idmenu." | 
|---|
| 120 | ORDER BY acciones_menus.tipoitem,menus.descripcion"; | 
|---|
| 121 |  | 
|---|
| 122 | pintaMenus($cmd,$idmenu,0,2); | 
|---|
| 123 | } | 
|---|
| 124 | else | 
|---|
| 125 | { | 
|---|
| 126 | $cmd->texto="SELECT menus.idmenu,menus.descripcion as descripcionmenu, | 
|---|
| 127 | acciones_menus.idtipoaccion,acciones_menus.tipoaccion, | 
|---|
| 128 | acciones_menus.tipoitem,acciones_menus.idurlimg, | 
|---|
| 129 | acciones_menus.descripitem,acciones_menus.orden | 
|---|
| 130 | FROM menus | 
|---|
| 131 | INNER JOIN acciones_menus ON acciones_menus.idmenu=menus.idmenu | 
|---|
| 132 | WHERE (acciones_menus.idtipoaccion=".$idtipoaccion." AND acciones_menus.tipoaccion=".$tipoaccion.") | 
|---|
| 133 | ORDER BY menus.descripcion"; | 
|---|
| 134 |  | 
|---|
| 135 | $idmenus=pintaMenus($cmd,$idtipoaccion,$tipoaccion,1)."0"; // Añade el identificador 0 | 
|---|
| 136 | $cmd->texto="SELECT menus.idmenu,menus.descripcion as descripcionmenu, | 
|---|
| 137 | 0 as idtipoaccion,0 as tipoaccion, | 
|---|
| 138 | 0 as tipoitem,'' as idurlimg, | 
|---|
| 139 | '' as descripitem,0 as orden | 
|---|
| 140 | FROM menus | 
|---|
| 141 | WHERE idmenu NOT IN (".$idmenus.") | 
|---|
| 142 | ORDER BY menus.descripcion"; | 
|---|
| 143 |  | 
|---|
| 144 | pintaMenus($cmd,$idtipoaccion,$tipoaccion,1); | 
|---|
| 145 | } | 
|---|
| 146 | //________________________________________________________________________________________________________ | 
|---|
| 147 | ?> | 
|---|
| 148 | </TABLE> | 
|---|
| 149 | </DIV> | 
|---|
| 150 | <BR> | 
|---|
| 151 | <TABLE align=center> | 
|---|
| 152 | <TR> | 
|---|
| 153 | <TD><A href="#botones"><IMG border=0 src="../images/boton_confirmar.gif" onclick="javascript:confirmar(<? echo $op?>)" ></A></TD> | 
|---|
| 154 | </TR> | 
|---|
| 155 | </TABLE> | 
|---|
| 156 | <BR> | 
|---|
| 157 | <DIV id="Layer_nota" align=center> | 
|---|
| 158 | <SPAN align=center class=notas><I><? echo$TbMsg[14]?></I></SPAN> | 
|---|
| 159 | </DIV> | 
|---|
| 160 | </FORM> | 
|---|
| 161 |  | 
|---|
| 162 |  | 
|---|
| 163 | </BODY> | 
|---|
| 164 | </HTML> | 
|---|
| 165 | <? | 
|---|
| 166 | //________________________________________________________________________________________________________ | 
|---|
| 167 | // Descripción: | 
|---|
| 168 | //      Muestra la tabla de items a incluir en menús | 
|---|
| 169 | //      Parámetros: | 
|---|
| 170 | //              $cmd: Objeto comando (Operativo) | 
|---|
| 171 | //              $identificador: Identificador de la acción si viene de acciones, identificador del menu si viene de "menus" | 
|---|
| 172 | //              $tipoaccion: Tipo de acción (Procedimiento o Tarea | 
|---|
| 173 | //              $op: Indica si esta página se ejecuta desde "acciones" o desde "menus" | 
|---|
| 174 | //                               1: desde acciones | 
|---|
| 175 | //                               2: desde menus | 
|---|
| 176 | //________________________________________________________________________________________________________ | 
|---|
| 177 |  | 
|---|
| 178 | function pintaMenus($cmd,$identificador,$tipoaccion,$op) | 
|---|
| 179 | { | 
|---|
| 180 | global $TbMsg; | 
|---|
| 181 | global $ITEM_PUBLICO; | 
|---|
| 182 | global $ITEM_PRIVADO; | 
|---|
| 183 | global $op_modificacion; | 
|---|
| 184 | global $descripcionaccion; | 
|---|
| 185 | global $EJECUCION_PROCEDIMIENTO; | 
|---|
| 186 | global $EJECUCION_TAREA; | 
|---|
| 187 |  | 
|---|
| 188 | // echo $cmd->texto; | 
|---|
| 189 | $idmenus=""; // Identificadores de menus para segunda consulta | 
|---|
| 190 | $litcabecera=$TbMsg[0]; | 
|---|
| 191 | $rs=new Recordset; | 
|---|
| 192 | $rs->Comando=&$cmd; | 
|---|
| 193 | if(!$rs->Abrir()) | 
|---|
| 194 | Header('Location: '.$pagerror.'?herror=3'); // Error de lectura | 
|---|
| 195 |  | 
|---|
| 196 | while (!$rs->EOF){ | 
|---|
| 197 | $idmenus.=$rs->campos["idmenu"].","; | 
|---|
| 198 | echo '<TR>'; | 
|---|
| 199 | /* Ckeckbox para incluir o eliminar items en el menú */ | 
|---|
| 200 | echo '<TD align=center>'; | 
|---|
| 201 | echo '<INPUT  id='.$rs->campos["idmenu"].' type=checkbox '; | 
|---|
| 202 | switch($op){ | 
|---|
| 203 | case 1: // Se ejecuta desde "acciones" | 
|---|
| 204 | if($rs->campos["idtipoaccion"]==$identificador && $rs->campos["tipoaccion"]==$tipoaccion) | 
|---|
| 205 | echo ' value="1" checked '; | 
|---|
| 206 | else | 
|---|
| 207 | echo ' value="0"'; | 
|---|
| 208 | break; | 
|---|
| 209 | case 2: // Se ejecuta desde "menus" | 
|---|
| 210 | if($rs->campos["idmenu"]==$identificador) | 
|---|
| 211 | echo ' value="1" checked '; | 
|---|
| 212 | else | 
|---|
| 213 | echo ' value="0"'; | 
|---|
| 214 | break; | 
|---|
| 215 | } | 
|---|
| 216 | echo '></INPUT></TD>'; | 
|---|
| 217 |  | 
|---|
| 218 | /* Nombre del menú  si viene de "acciones" o tipo de acción si viene desde "menus" */ | 
|---|
| 219 | if($op==1) | 
|---|
| 220 | echo '<TD align=center> '.$rs->campos["descripcionmenu"].'</TD>'; | 
|---|
| 221 | else{ | 
|---|
| 222 | switch($rs->campos["tipoaccion"]){ | 
|---|
| 223 | case $EJECUCION_PROCEDIMIENTO : | 
|---|
| 224 | $urlimg='../images/iconos/procedimiento.gif'; | 
|---|
| 225 | break; | 
|---|
| 226 | case $EJECUCION_TAREA : | 
|---|
| 227 | $urlimg='../images/iconos/tareas.gif'; | 
|---|
| 228 | break; | 
|---|
| 229 | } | 
|---|
| 230 | echo '<TD align=center><IMG src="'.$urlimg.'"></TD>'; | 
|---|
| 231 | } | 
|---|
| 232 |  | 
|---|
| 233 | /* Tipo de item */ | 
|---|
| 234 | $parametros=$ITEM_PUBLICO."=".$TbMsg[5]."".chr(13); | 
|---|
| 235 | $parametros.=$ITEM_PRIVADO."=".$TbMsg[6].""; | 
|---|
| 236 | echo '<TD align=center>'.HTMLCTESELECT($parametros,"tipositems-".$rs->campos["idmenu"],"estilodesple","",$rs->campos["tipoitem"],70).'</TD>'; | 
|---|
| 237 |  | 
|---|
| 238 | /* Imagen del item */ | 
|---|
| 239 | echo '<TD align=center>'; | 
|---|
| 240 | echo HTMLSELECT($cmd,0,'iconos',$rs->campos["idurlimg"],'idicono','descripcion',160,"","","idtipoicono=2"); | 
|---|
| 241 | echo '</TD>'; | 
|---|
| 242 |  | 
|---|
| 243 | /* Descripción del item */ | 
|---|
| 244 | $descripitem=$rs->campos["descripitem"]; | 
|---|
| 245 | if(empty($descripitem)) $descripitem=$descripcionaccion; | 
|---|
| 246 | echo '<TD align=center><INPUT class="formulariodatos" id=descripitem-'.$rs->campos["idmenu"].' | 
|---|
| 247 | style="WIDTH:300px" type=text value="'.$descripitem.'"></INPUT></TD>'; | 
|---|
| 248 | // Orden del item del item | 
|---|
| 249 | $orden=$rs->campos["orden"]; | 
|---|
| 250 | if(empty($orden)) $orden=1; | 
|---|
| 251 | echo '<TD align=center><INPUT class="formulariodatos" id=orden-'.$rs->campos["idmenu"].' | 
|---|
| 252 | style="WIDTH:20px" type=text value="'.$orden.'"></INPUT></TD>'; | 
|---|
| 253 |  | 
|---|
| 254 | if($op==2){ // Si viene desde "menus" ... | 
|---|
| 255 | echo '<TD style="visibility:hidden" align=center>'.$rs->campos["idtipoaccion"].'</TD>'; | 
|---|
| 256 | echo '<TD style="visibility:hidden" align=center>'.$rs->campos["tipoaccion"].'</TD>'; | 
|---|
| 257 | } | 
|---|
| 258 | echo '</TR>'; | 
|---|
| 259 | $rs->Siguiente(); | 
|---|
| 260 | } | 
|---|
| 261 | $rs->Cerrar(); | 
|---|
| 262 | return($idmenus); // retorna identificadores de menus implicados en la consulta | 
|---|
| 263 | } | 
|---|
| 264 | ?> | 
|---|
| 265 |  | 
|---|