// JavaScript Document
/*
function wrapFish() {
	var catfish = document.getElementById('catfish');
	var subelements = [];
	for (var i = 0; i < document.body.childNodes.length; i++) {
 		subelements[i] = document.body.childNodes[i];
	}

	var zip = document.createElement('div');    // Create the outer-most div (zip)
	zip.id = 'zip';                      // call it zip

	for (var i = 0; i < subelements.length; i++) {
	zip.appendChild(subelements[i]); 
	}
	document.body.appendChild(zip); // add the major div
	document.body.appendChild(catfish); // add the catfish after the zip
}

addLoadEvent(function() {
	wrapFish();
});
*/
/* Simon Willison's addLoadEvent -- replaces the normal 'window.load = ...' allowing
you to stack multiple events on the page load event -- you can only have one event on 
'window.onload' - details @ http://www.sitepoint.com/blog-post-view.php?id=171578 */
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

function destroycatfish() /* catfish closer function */
{
	var catfish = document.getElementById('catfish').style.display = 'none';
	//document.body.removeChild(catfish); /* clip catfish off the tree */
	document.getElementsByTagName('html')[0].style.padding= '0'; /* reset the padding at the bottom */
	return false; /* disable the link's 'linkiness' -- so it won't jump you up the top of the page */
}
function closelink() /* attach the catfish closer function to the link */
{
	var closelink = document.getElementById('closeme'); /* find the 'close this' link */
	closelink.onclick = destroycatfish; /* attach the destroy function to it's 'onclick' */
}


function setCookie(cookieName,cookieValue,nDays) {
	var today = new Date();
	var expire = new Date();
	if (nDays==null || nDays==0) nDays=1;
	expire.setTime(today.getTime() + 3600000*24*nDays);
	document.cookie = cookieName+"="+escape(cookieValue)+ ";expires="+expire.toGMTString();
} 	   
function getCookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f
	
	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );
		
		
		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
	
		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}

function cancelTimeout(){
	clearTimeout(timer);
}

addLoadEvent(function() { 
	if(show_catfish){
		//check if cookie exists
		if(getCookie('catfish') && cookie){
			//do nothing
		} else {
			document.getElementById('catfish').style.display = 'block';
			closelink(); //attach close link
			//set timeout to close catfish
			if(timeout){
				timer = setTimeout('destroycatfish()', (timeout*1000));
			}
			if(cookie)
				setCookie('catfish',1,1);
		}
	}
});