diff options
author | alonso <alonso@us.es> | 2010-10-23 09:34:04 +0000 |
---|---|---|
committer | alonso <alonso@us.es> | 2010-10-23 09:34:04 +0000 |
commit | 3ec149cb19165453434984c88e8ba03f648e578e (patch) | |
tree | 9d315751684c2c27ed66ad645aeea52ce9027859 /admin/WebConsole/jscripts/accionmenu.js | |
parent | 550b680d176cbccfecfe35fad440dd570d90ba5b (diff) |
git-svn-id: https://opengnsys.es/svn/trunk@1314 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'admin/WebConsole/jscripts/accionmenu.js')
-rw-r--r-- | admin/WebConsole/jscripts/accionmenu.js | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/admin/WebConsole/jscripts/accionmenu.js b/admin/WebConsole/jscripts/accionmenu.js new file mode 100644 index 00000000..8cef7d9c --- /dev/null +++ b/admin/WebConsole/jscripts/accionmenu.js @@ -0,0 +1,121 @@ +// ************************************************************************************************************************************************* +// Libreria de scripts de Javascript +// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla +// Fecha Creación: 2009-2010 +// Fecha Última modificación: Agosto-2010 +// Nombre del fichero: accionmenu.js +// Descripción : +// Este fichero implementa las funciones javascript del fichero accionmenu.php +// ************************************************************************************************************************************************* +var altas,bajas,modificaciones; +//________________________________________________________________________________________________________ +// Devuelve el valor seleccionado de un desplegable cualquiera +//________________________________________________________________________________________________________ +function tomavalorDesple(desplegable) +{ + var idx=desplegable.selectedIndex; // Indice seleccionado en el desplegable + var val=desplegable.options[idx].value; // Valor seleccionado en el desplegable + return(val); +} +//________________________________________________________________________________________________________ +// +// Envía la información para dar de alta, baja o modificar items en un menu +// Parámetros: +// $op: Indica si esta página se ejecuta desde "acciones" o desde "menus" +// 1: desde acciones +// 2: desde menus +//________________________________________________________________________________________________________ +function confirmar(op) +{ + var ELEMENT_NODE=1; // Tipo de nodo + altas=bajas=modificaciones=""; + + if(op==1){ + var idtipoaccion=document.fdatos.idtipoaccion.value; + var tipoaccion=document.fdatos.tipoaccion.value; + } + // Indices de campos a recuperar + var ichk=0; // Checkbox + var imenu=1; // Nombre del menu + var itipo=2; // Tipo de item + var iurlimg=3; // Url de la imagen + var iitem=4; // Literal del item + var iorden=5; // Orden de ejecución + var iidtipoaccion=6; // Identificación de la acción + var itipoaccion=7; // Identificación del tipo de acción + + var trMnu = document.getElementById("TR_menus"); // Recupera la tabla de menu + trMnu=trMnu.nextSibling; // Primera fila de particiones + while(trMnu){ + if(trMnu.nodeType==ELEMENT_NODE){ + var ochk=trMnu.childNodes[ichk].childNodes[0]; + var otipo=trMnu.childNodes[itipo].childNodes[0]; + var ourlimg=trMnu.childNodes[iurlimg].childNodes[0]; + var oitem=trMnu.childNodes[iitem].childNodes[0]; + var oorden=trMnu.childNodes[iorden].childNodes[0]; + + var idmenu=ochk.id; // Identificador del menu + var std=ochk.value; // Estado original del checkbox 1=seleccionado 0=No seleccionado + var tipo=tomavalorDesple(otipo); + var urlimg=tomavalorDesple(ourlimg); + var item=oitem.value; + var orden=oorden.value; + + if(op==2){ + var idtipoaccion=trMnu.childNodes[iidtipoaccion].innerHTML; + var tipoaccion=trMnu.childNodes[itipoaccion].innerHTML; + } + /* Control de errores */ + if(ochk.checked){ + if(item==""){ // Descripción del item + alert(TbMsg[0]); + oitem.focus(); + return(false); + } + if(orden=="" || orden<0 || !IsNumeric(orden)){ + alert(TbMsg[1]); + oorden.focus(); + return(false); + } + } + /* Compone parametros */ + if(ochk.checked){ // El checbox está seleccionado, alta o modificación + var prm=idmenu+","+idtipoaccion+","+tipoaccion; + prm+=","+tipo +","+urlimg+","+item+","+orden; + if(std>0) // Originalmente estaba seleccionado, se trata de una modificación + modificaciones+=prm+";"; + else + altas+=prm+";"; + } + else{ // Baja + if(std>0){ // Si originariamente estaba marcado se trata de una baja + var prm=idmenu+","+idtipoaccion+","+tipoaccion; + bajas+=prm+";"; + } + } + } + trMnu=trMnu.nextSibling; // Primera fila de particiones + } + + /* LLamada a la gestión */ + var wurl="../gestores/gestor_accionmenu.php"; + var prm="altas="+altas+"&bajas="+bajas+"&modificaciones="+modificaciones; + CallPage(wurl,prm,"retornoGestion","POST"); +} +//______________________________________________________________________________________________________ +function retornoGestion(resul) +{ + if(resul.length>0){ + eval(resul) + } +} +//________________________________________________________________________________________________________ +function resultado_gestion_accionmenu(resul,descrierror){ + if (!resul){ // Ha habido algún error en la inserción + alert(descrierror) + return + } + alert(TbMsg[3]) + location.href="../nada.php"; +} + |