/* global top */
top.WEBSOCKET_INITIALIZING = 0;
top.WEBSOCKET_CONNECTED = 1;
top.WEBSOCKET_CLOSING = 2;
top.WEBSOCKET_CLOSED = 3;
var socket;
function getSocketObject(URL, poolName, idUsuario, puerto) {
var URLws;
if (window.location.hostname === 'localhost' || window.location.hostname === '192.168.2.229') {
URLws = "ws://".concat(window.location.host, URL);
} else {
URLws = "ws://".concat(window.location.host, ":", puerto, URL);
}
//console.log(URLws);
socket = new WebSocket(URLws);
//console.log(socket);
socket.onmessage = onMessage;
registro = '' + poolName + '' + idUsuario + '';
socket.onopen = function () {
socket.send(registro);
};
}
function registrySession(URL, poolName, idUsuario, puerto) {
if (socket === undefined) {
getSocketObject(URL, poolName, idUsuario, puerto);
}
}
function sendDatosSocket(usuarioEnvio, idDistribuidor, peticion) {
console.log("envio de informacion");
if (socket.readyState === top.WEBSOCKET_CONNECTED) {
actions = '' + usuarioEnvio + '' + idDistribuidor + '' + peticion + '0';
socket.send(actions);
} else {
console.log("error al enviar los datos (falla en la conexion con el socket.sendDatosSocket)");
}
}
function onMessage(datosRecibidos) {
xmlDoc = parseXml(datosRecibidos.data);
console.log(datosRecibidos.data);
if (xmlDoc.documentElement.nodeName === "Notification") {
notificaciones = xmlDoc.getElementsByTagName("Action");
var type, value;
for (var x = 0; x < notificaciones[0].childNodes.length; x++) {
if (notificaciones[0].childNodes[x].tagName === "type") {
type = notificaciones[0].childNodes[x].textContent;
} else if (notificaciones[0].childNodes[x].tagName === "value") {
value = notificaciones[0].childNodes[x].textContent;
}
}
switch (type) {
case '1':
document.getElementById("DesktopTooltipSystem").style.display = "block";
document.getElementById("DesktopTooltipSystem").innerHTML = value;
break;
case '2':
document.getElementById("DesktopTooltipAssign").style.display = "block";
document.getElementById("DesktopTooltipAssign").innerHTML = value;
break;
case '3':
document.getElementById("DesktopTooltipUsers").style.display = "block";
document.getElementById("DesktopTooltipUsers").innerHTML = value;
break;
case '4':
document.getElementById("DesktopTooltipCallCenter").style.display = "block";
document.getElementById("DesktopTooltipCallCenter").innerHTML = value;
break;
case '5':
document.getElementById("DesktopTooltipRoom").style.display = "block";
document.getElementById("DesktopTooltipRoom").innerHTML = value;
break;
case '6':
document.getElementById("DesktopTooltipPublications").style.display = "block";
document.getElementById("DesktopTooltipPublications").innerHTML = value;
break;
case '8':
document.getElementById("DesktopTooltipAssign").style.display = "block";
document.getElementById("DesktopTooltipAssign").innerHTML = value;
window.application.openModalDialog(window, 'Subasta', '/8.0/workspace//socket/websocketsubasta.html', 800, 400, this);
break;
default :
console.log("La peticion fue incorrecta");
}
} else {
console.log(datosRecibidos.data);
}
}
var parseXml;
if (typeof window.DOMParser != "undefined") {
parseXml = function (xmlStr) {
return (new window.DOMParser()).parseFromString(xmlStr, "text/xml");
};
} else if (typeof window.ActiveXObject != "undefined" &&
new window.ActiveXObject("Microsoft.XMLDOM")) {
parseXml = function (xmlStr) {
var xmlDoc = new window.ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = "false";
xmlDoc.loadXML(xmlStr);
return xmlDoc;
};
} else {
throw new Error("No XML parser found");
}
///*oculta el valor de la subasta*/
//function ocultarValorToolTipSubasta(){
// document.getElementById("DesktopTooltipAuctions").style.display = "none";
// }