Hola, tengo un sitio de contactos y muchos de ellos salen de la pagina sin desloguearse, por lo tanto siguen apareciendo como en linea, el problema es para los demas usuarios que los ven en ese status ; ya que tengo la funcion de que si esta en linea puedes chatear con quien aparece "en linea", por lo tanto muchos usuarios que ya abandonaron la pagina no responden al chat , por que evidentemente ya salieron de la pagina, entonces viene la queja de los usuarios de que muchos "en linea" no responden .
Si alguien me puede orientar , sobre cual seria el problema y sobre todo como podria resolverlo, o si se les ocurre un herramienta sencilla de como hacer que los usuarios antes de cerrar la pagina opriman en "salir" o "log out"
O mejor, que despues de que cierren la pagina se desloguee automaticamente.
he intentado con esto:
<body onUnload="window.alert('Al salir recuerda desloguearte ,de lo contrario seguiras apareciendo como EN LINEA')">
pero el problema es que aparece incluso si cambian de secciones dentro de mi pagina , y eso es molesto para ellos.
Tambien he intentado con esto:
function control_close(e) {
if(!e) e = window.event;
e.cancelBubble = true;
e.returnValue = 'Los cambios realizados se perderán, si no los GUARDASTE'; //Este es el mensaje que mostraremos
if (e.stopPropagation) {
e.stopPropagation();
e.preventDefault();
}
}
window.onbeforeunload=control_close;
Pero tampoco me funciona.
Por lo tanto creo que se podria reslover desde la base de datos o algo asi, donde con un temporizador se desloguee despues de cierto tiempo , pero tambien hay usuarios que permanecen en la pagina por un periodo de 30 minutos y otros que solo entran 2 minutos y se van, por lo que para los que siguen en linea (realmente) los deslogueria en el tiempo marcado en el temporzador, y eso tambien es molesto.
Bueno ,realmente estoy en apuros y me super urge alguna sugerencia.
Gracias por sus aportes.