// vars
var BCSPCA_COOKIE_PATH = "/"; // "/" will allow the cookie to work at any path
var BCSPCA_COOKIE_DOMAIN = ""; // e.g. bcspca.org (leaving the www off lets cookies work across subdomains


// FONTS
var BCSPCA_FONT_COOKIE_NAME = "bcspcaFont";
var BCSPCA_FONT_COOKIE = WM_readCookie( 'bcspcaFont' );
var BCSPCA_FONT_CSS_TITLE = BCSPCA_FONT_COOKIE ? BCSPCA_FONT_COOKIE : null;

// _____________________________________________________________ WebMonkey cookies
/*
WM_setCookie(), WM_readCookie(), WM_killCookie()
A set of functions that eases the pain of using cookies.

Source: Webmonkey Code Library
(http://www.hotwired.com/webmonkey/javascript/code_library/)

Author: Nadav Savio
*/

// This next little bit of code tests whether the user accepts cookies.
function WM_browserAcceptsCookies() {
	var WM_acceptsCookies = false;
	if ( document.cookie == '' ) {
		document.cookie = 'WM_acceptsCookies=yes'; // Try to set a cookie.
		if ( document.cookie.indexOf( 'WM_acceptsCookies=yes' ) != -1 ) {
			WM_acceptsCookies = true;
		} // If it succeeds, set variable
	} else { // there was already a cookie
		WM_acceptsCookies = true;
	}
	
	return ( WM_acceptsCookies );
}

function WM_setCookie( name, value, hours, path, domain, secure ) {
	if ( WM_browserAcceptsCookies() ) { // Don't waste your time if the browser doesn't accept cookies.
		var numHours = 0;
		var not_NN2 = ( navigator && navigator.appName
					&& (navigator.appName == 'Netscape')
					&& navigator.appVersion
					&& (parseInt(navigator.appVersion) == 2) ) ? false : true;

		if ( hours && not_NN2 ) { // NN2 cannot handle Dates, so skip this part
			if ( (typeof(hours) == 'string') && Date.parse(hours) ) { // already a Date string
				numHours = hours;
			} else if ( typeof(hours) == 'number' ) { // calculate Date from number of hours
				numHours = ( new Date((new Date()).getTime() + hours*3600000) ).toGMTString();
			}
		}
		
		document.cookie = name + '=' + escape(value) + ((numHours)?(';expires=' + numHours):'') + ((path)?';path=' + path:'') + ((domain)?';domain=' + domain:'') + ((secure && (secure == true))?'; secure':''); // Set the cookie, adding any parameters that were specified.
	}
} // WM_setCookie

function WM_readCookie( name ) {
	if ( document.cookie == '' ) { // there's no cookie, so go no further
	    return false;
	} else { // there is a cookie
	    var firstChar, lastChar;
		var theBigCookie = document.cookie;
		firstChar = theBigCookie.indexOf(name);	// find the start of 'name'
		var NN2Hack = firstChar + name.length;
		if ( (firstChar != -1) && (theBigCookie.charAt(NN2Hack) == '=') ) { // if you found the cookie
			firstChar += name.length + 1; // skip 'name' and '='
			lastChar = theBigCookie.indexOf(';', firstChar); // Find the end of the value string (i.e. the next ';').
			if (lastChar == -1) lastChar = theBigCookie.length;
			return unescape( theBigCookie.substring(firstChar, lastChar) );
		} else { // If there was no cookie of that name, return false.
			return false;
		}
	}	
} // WM_readCookie

function WM_killCookie( name, path, domain ) {
	var theValue = WM_readCookie( name ); // We need the value to kill the cookie
	if ( theValue ) {
		document.cookie = name + '=' + theValue + '; expires=Fri, 13-Apr-1970 00:00:00 GMT' + ((path)?';path=' + path:'') + ((domain)?';domain=' + domain:''); // set an already-expired cookie
	}
} // WM_killCookie

function setFontStyleSheet(BCSPCA_FONT_CSS_TITLE) {
	var i, a;
	for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
		_a = a.className == "fontcss";
		_b = a.getAttribute("rel").indexOf("style") != -1;
		_c = a.getAttribute("title");
		if(_a && _b && _c) {
			a.disabled = true;
			if(a.getAttribute("title") == BCSPCA_FONT_CSS_TITLE) a.disabled = false;
		}
	}
}

function getFontStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.className == "fontcss" && a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) {
    	return a.getAttribute("title");
    	}
  }
  return null;
}



// COOKIE SET
window.onunload = function(e) {
	// Font Cookie
  if (getFontStyleSheet() != null) {
  	if (getFontStyleSheet() != BCSPCA_FONT_COOKIE) {
	  	WM_setCookie(BCSPCA_FONT_COOKIE_NAME, getFontStyleSheet(), 24*31, BCSPCA_COOKIE_PATH, BCSPCA_COOKIE_DOMAIN, '');
	}
  } else {
  	WM_killCookie(BCSPCA_FONT_COOKIE_NAME, BCSPCA_COOKIE_PATH, BCSPCA_COOKIE_DOMAIN );
  }
}

// removed some window.onload functions that didn't seem relevant

addOnLoadHandler(function(){setFontStyleSheet(BCSPCA_FONT_CSS_TITLE);});	

