/// Copyrights on all original parts, 2009 by Tejon
/// Provided under the Cwn Annwn terms of use statement:
///  http://www.clanannwn.net/legal.php
/// Javascript for toggling the display of a popover window based
/// on a cookie and the date.

var closepop = 0;

function initPopover(delay){
  var cookieMS = readCookie("popover");
  var myDate = new Date();
  closepop = 0;

  if(delay < 0){return true;}

  var nowMS = myDate.getTime();

  if(cookieMS < 0) { return true;}  //Opted out

  if(nowMS > cookieMS) {

    document.getElementById("popover1").style.display = "block";
  }
  return true;
}

function closePop(name){

  if(closepop==1){
    document.getElementById("popover1").style.display = "none";
  } else {
    document.getElementById(name).style.display = "none";
    closepop=1;
  }
  return true;
}

function popoverSetexpire(delay){
  var myDate = new Date();
  var expireMS = myDate.getTime() + delay*1000;
  if(delay < 0) { expireMS = -1;}
  createCookie("popover",expireMS,180);
  return true;
}


/* third party code
    cookie handlers, adapted by Tejon. Originally from
	quirksmode.org */

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
		var expires = "; expires=" + date.toGMTString();
	}
	else var expires = "";
	document.cookie = name + "=" + value + expires + "; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for (var i = 0; i < ca.length; i++) {
		var c = ca[i];
		while (c.charAt(0) == ' ') c = c.substring(1, c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name, "", -1);
}


function addEvent(obj, type, fn) {
	if (obj.attachEvent) {
		obj['e' + type+fn] = fn;
		obj[type + fn] = function(){ obj['e' + type + fn](window.event); }
		obj.attachEvent('on' + type, obj[type + fn]);
	} else
		obj.addEventListener(type, fn, false);
}
function removeEvent(obj, type, fn) {
	if (obj.detachEvent) {
		obj.detachEvent('on' + type, obj[type + fn]);
		obj[type + fn] = null;
	} else
		obj.removeEventListener(type, fn, false);
}

function addLoadEvent(fn) {
	addEvent(window, 'load', fn);
}

function toggleDisplay(id, show, hide) {
	var e = document.getElementById(id);
	e.style.display = e.style.display == 'none' ? 'block' : 'none';
	if (show && hide) {
		this.innerHTML = e.style.display == 'none' ? show : hide;
	}
}

