/** Funciones para mensajes de usuario **/
var msgUsuario = new Array(); //lista de mensajes
var msgUsuarioDB = new Array();
var minX = 37, maxX = 67; //valores iniciales para la barra de notificacion
var x = minX; //valor para mover la barra de notificacion
var idTO; //ID para time-outs
var msgUsuarioPend = 0; //numero de notificaciones pendientes (sin procesar)
var httpRequest; //objeto para acceso via AJAX al servidor
var codigoMensaje;
//Muestra la barra con el mensaje de numero de notificaciones pendientes.
function mensajesUsuario() {
if(document.getElementById("mensajesUsuario").style.visibility != "visible"){
codigoMensaje=buscarMensaje();
if(codigoMensaje!=""){
retrMensajesUsuario();
var el = document.getElementById("mensajesUsuario");
el.style.visibility = "visible";
if(true){
ac="
Mensajes | X |
";
for(i=0;i"+msgUsuarioDB[i]+" | "
//ac+=msgUsuarioDB[i]+"
";
}
ac+="
";
el.innerHTML =ac;
}else{
el.innerHTML ="";
}
x = minX;
moverMensajesUsuario(1);
return this.msgUsuarioDB.length;
}
}
}
//Mediante AJAX obtiene la lista de mensajes del día
function retrMensajesUsuario(msgPoll) {
msgPoll=5000;
if( window.XMLHttpRequest ){
httpRequest = new XMLHttpRequest(); // No Internet Explorer
}
else{
httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); // Internet Explorer
}
httpRequest.open("GET", "FBSMU?consMensajesUsuario=true&codigoMensaje="+codigoMensaje, false);
httpRequest.send(null);
fillListMensajesUsuario(msgUsuario);
//}
if (msgPoll)
//setTimeout("retrMensajesUsuario(" + msgPoll + ");", msgPoll);
setTimeout("retrMensajesUsuario(" + 600000 + ");", 600000);
}
//Llena la lista de notificaciones
function fillListMensajesUsuario(msgUsuario) {
this.msgUsuarioDB = new Array();
if (httpRequest.readyState == 4) {
msgUsuario=separarCampos(httpRequest.responseText);
var msgUsuarioButton = document.getElementById("msgUsuarioButton");
}
}
//Mueve la barra de notificacion con animacion
function moverMensajesUsuario(d) {
var el = document.getElementById("mensajesUsuario");
if (x <= minX)
x = minX;
el.style.bottom = x + "px";
if (d == "1") {
x += 1;
el.style.visibility = "visible";
} else
x -= 1;
if(x <= maxX && x >= minX)
idTO = setTimeout("moverMensajesUsuario(" + d + ")", 1);
}
//Abre la lista de notificaciones
function seleccionarMensajesUsuario() {
var html = '';
var el = document.getElementById('listaMsgUsuario');
clearTimeout(idTO);
moverMsgUsuario(0);
el.style.visibility = 'visible';
var hei = (1 + msgUsuario.length) * 22;
if (hei > 350)
hei = 350;
el.style.height = hei + 'px';
html += '';
el.innerHTML = html;
}
//Va a la transaccion indicada por la notificacion en la que se hace clic
function MsgUsuarioIr(idx) {
var el = document.getElementById("listaMsgUsuario");
el.style.visibility = "hidden";
globalVars["cambio"] = "pt('" + msgUsuario[idx][1] + ":" + msgUsuario[idx][2] + "')";
if(msgUsuario.length==0){
document.getElementById("msgUsuarioButton").style.visibility = "hidden";
}
if (msgUsuario[idx][3] == "true") {
httpRequest = getHTTPObject();
httpRequest.open("GET", "FBSMU?procMensajesUsuario=true&fmsgUsuario=" + escape(msgUsuario[idx][4]), false);
httpRequest.send(null);
}
pt(msgUsuario[idx][1] + ":" + msgUsuario[idx][2]);
}
//Funcion que busca en los formularios un elemento del cual se tenga que mostrar un mensaje
function buscarMensaje(){
if(document.fb!=null){
msj="";
for(i=0; i")
var arregloLocal = new Array();
for(k=1;k'));
}
if(msgUsuarioDB.length==0){
var el = document.getElementById("mensajesUsuario");
el.style.display = "none";
}
}