allora te la faccio ancora più semplice con un altro metodo :-)
codice:
onload = function() {
	function refreshAdmin() {
		var lv = new LoadVars();
		lv.load('pagina_update.php');
	}
	setIntervall(refreshAdmin, (1000 * 120));
}
in pagina_update.php aggiornerai il tempo di permanenza dell' admin così da sapere di 2 minuti in 2 minuti se tale admin è ancora connesso o meno.

Tale pagina sarà la stessa che farà l'update ad ogni click o cambio pagina, così non sprechi risorse.

Se arrivo e cambio pagina entro 2 minuti, pagina_update.php aggiornerà il mio tempo di permanenza, se invece arrivo e resto in una pagina per più di 2 minuti, dopo ogni 2 minuti il javascript aggiornerà il mio stato tramite la pagina pagina_update.php la quale potrà usare sessioni o quello che ti pare

LoadVars.js