
// addEvent()
// written by Dean Edwards, 2005
// with input from Tino Zijdel, Matthias Miller, Diego Perini
//
// http://dean.edwards.name/weblog/2005/10/add-event/

function addEvent(element, type, handler) {
	if (element.addEventListener) {
		element.addEventListener(type, handler, false);
	} else {
		if (!handler.$$guid) handler.$$guid = addEvent.guid++;
		if (!element.events) element.events = {};
		var handlers = element.events[type];
		if (!handlers) {
			handlers = element.events[type] = {};
			if (element["on" + type]) {
				handlers[0] = element["on" + type];
			}
		}
		handlers[handler.$$guid] = handler;
		element["on" + type] = handleEvent;
	}
};
addEvent.guid = 1;

function removeEvent(element, type, handler) {
	if (element.removeEventListener) {
		element.removeEventListener(type, handler, false);
	} else {
		if (element.events && element.events[type]) {
			delete element.events[type][handler.$$guid];
		}
	}
};

function handleEvent(event) {
	var returnValue = true;
	event = event || fixEvent(((this.ownerDocument || this.document || this).parentWindow || window).event);
	var handlers = this.events[event.type];
	for (var i in handlers) {
		this.$$handleEvent = handlers[i];
		if (this.$$handleEvent(event) === false) {
			returnValue = false;
		}
	}
	return returnValue;
};

function fixEvent(event) {
	event.preventDefault = fixEvent.preventDefault;
	event.stopPropagation = fixEvent.stopPropagation;
	return event;
};
fixEvent.preventDefault = function() {
	this.returnValue = false;
};
fixEvent.stopPropagation = function() {
	this.cancelBubble = true;
};
// Addition by Tino Zijdel
// http://therealcrisp.xs4all.nl/upload/addEvent_dean.html
if (!window.addEventListener) {
	document.onreadystatechange = function() {
		if (window.onload && window.onload != handleEvent)
		{
			addEvent(window, 'load', window.onload);
			window.onload = handleEvent;
		}
	}
};









// end addEvent()

/*****
Image Cross Fade Redux
Version 1.0
Last revision: 02.15.2006
steve@slayeroffice.com

Please leave this notice intact. 
Rewrite of old code found here: http://slayeroffice.com/code/imageCrossFade/index.html
*****/
/*
abridgements
my.tenfingers.net
*/
/*
window.addEventListener?window.addEventListener("load",so_init,false):window.attachEvent("onload",so_init);
*/
var xd=document, imgs = new Array(), zInterval = null, current=0, pause=false;

function so_init() {
	if(!xd.getElementById || !xd.createElement)return;
	imgs = xd.getElementById("imageContainer").getElementsByTagName("img");
	// mtf revision 01.07.2009
	for(i=1;i<imgs.length;i++) {
		imgs[i].xOpacity = 0;
		imgs[i].style.display = "none";
	}
	imgs[0].style.display = "block";
	imgs[0].xOpacity = .99;
	
	setTimeout(so_xfade,3500);
}

function so_xfade() {
	cOpacity = imgs[current].xOpacity;
	nIndex = imgs[current+1]?current+1:0;

	nOpacity = imgs[nIndex].xOpacity;
	
	cOpacity-=.05; 
	nOpacity+=.05;
	
	imgs[nIndex].style.display = "block";
	imgs[current].xOpacity = cOpacity;
	imgs[nIndex].xOpacity = nOpacity;
	
	setOpacity(imgs[current]); 
	setOpacity(imgs[nIndex]);
	
	if(cOpacity<=0) {
		imgs[current].style.display = "none";
		current = nIndex;
		setTimeout(so_xfade,3500);
	} else {
		setTimeout(so_xfade,40);
	}
	
	function setOpacity(obj) {
		if(obj.xOpacity>.99) {
			obj.xOpacity = .99;
			return;
		}
		obj.style.opacity = obj.xOpacity;
		obj.style.MozOpacity = obj.xOpacity;
		obj.style.filter = "alpha(opacity=" + (obj.xOpacity*100) + ")";
	}
}




// end so_xfade()


//
// getElementsByClassName()
/*
	Developed by Robert Nyman, http://www.robertnyman.com
	Code/licensing: http://code.google.com/p/getelementsbyclassname/
*/	
var getElementsByClassName = function (className, tag, elm){
	if (document.getElementsByClassName) {
		getElementsByClassName = function (className, tag, elm) {
			elm = elm || document;
			var elements = elm.getElementsByClassName(className),
				nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
				returnElements = [],
				current;
			for(var i=0, il=elements.length; i<il; i+=1){
				current = elements[i];
				if(!nodeName || nodeName.test(current.nodeName)) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	else if (document.evaluate) {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = "",
				xhtmlNamespace = "http://www.w3.org/1999/xhtml",
				namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
				returnElements = [],
				elements,
				node;
			for(var j=0, jl=classes.length; j<jl; j+=1){
				classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
			}
			try	{
				elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
			}
			catch (e) {
				elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
			}
			while ((node = elements.iterateNext())) {
				returnElements.push(node);
			}
			return returnElements;
		};
	}
	else {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = [],
				elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
				current,
				returnElements = [],
				match;
			for(var k=0, kl=classes.length; k<kl; k+=1){
				classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
			}
			for(var l=0, ll=elements.length; l<ll; l+=1){
				current = elements[l];
				match = false;
				for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
					match = classesToCheck[m].test(current.className);
					if (!match) {
						break;
					}
				}
				if (match) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	return getElementsByClassName(className, tag, elm);
};

// end getElementsByClassName()
//
// getElementsByAttribute()
/*
	Copyright Robert Nyman, http://www.robertnyman.com
	Free to use if this text is included
*/
function getElementsByAttribute(oElm, strTagName, strAttributeName, strAttributeValue){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	var oAttributeValue = (typeof strAttributeValue != "undefined")? new RegExp("(^|\\s)" + strAttributeValue + "(\\s|$)") : null;
	var oCurrent;
	var oAttribute;
	for(var i=0; i<arrElements.length; i++){
		oCurrent = arrElements[i];
		oAttribute = oCurrent.getAttribute && oCurrent.getAttribute(strAttributeName);
		if(typeof oAttribute == "string" && oAttribute.length > 0){
			if(typeof strAttributeValue == "undefined" || (oAttributeValue && oAttributeValue.test(oAttribute))){
				arrReturnElements.push(oCurrent);
			}
		}
	}
	return arrReturnElements;
}
// end getElementsByAttribute()
//
// adapted from Eric Pascarello version
function snapTo(x)
{
	var e = document.getElementById(x);
 var h = 0;
 while(e != null)
 {
  h += e.offsetTop;
  e = e.offsetParent;
 }
 window.scrollTo(0,h);
}
//
// my.tenfingers.net scripts below
/* 
 * showMe() Copyright 2010 RC Pierce
 * v.0.9.2.100719.110127
 */
function initViewer(elementId)
{
 restoreElement = document.getElementById(elementId);
 if(restoreElement)
 {
  Viewer.createViewPort();
 };
};
function reTool(x)
{
 var k = document.getElementById(x).getElementsByTagName('a');
 for(var j = 0, c = k.length; j < c; j++)
 {
  k[j].setAttributeNode(attr('title',k[j].firstChild.nodeValue));
  k[j].setAttributeNode(attr('onclick','showMe(this);'));
 };
};
function closeMe()
{
 viewPort.innerHTML = "";
 viewPort.style.border = 'none';
 restoreElement.style.display = 'block';
 flagId = "";
 snapTo('main');
};
function reHash(x)
{
 return x.substr(x.indexOf("#")).replace(/\#/,"");
};
function showMe(thisElement)
{
 var selectId = reHash(thisElement.href);
 if(flagId===selectId) return;
 if(!flagId)
 {
   restoreElement.style.display = 'none';
 } else {
  flagId = selectId;
 };
 var selectElement = document.getElementById(selectId);
 var echoElement = document.createElement('div');
 echoElement.innerHTML = selectElement.innerHTML;
 viewPort.innerHTML = "";
 Closer.createButton();
 viewPort.appendChild(formElement);
 viewPort.appendChild(echoElement);
 viewPort.style.border = '3px double #D9D49A';
 snapTo('imd');
};
var Closer =
{
 createButton: function()
 {
  formElement = document.createElement('form');
  formElement.setAttributeNode(attr('action',""));
  inputElement = document.createElement('input');
  inputElement.setAttributeNode(attr('type','button'));
  inputElement.setAttributeNode(attr('value','Close'));
  formElement.appendChild(inputElement);
  inputElement.onclick = closeMe;
 }
};
var Viewer = 
{
 createViewPort: function()
 {  
  viewPort = document.createElement('div');
  viewPort.setAttributeNode(attr('id','imd'));
  restoreElement.parentNode.insertBefore(viewPort,restoreElement);
  flagId = "";
 }
};

// end ShowMe()

// utility methods
function appendAnchor(r,e)
{
 var v = document.createElement('a');
 v.href = r;
 document.getElementById(e).appendChild(v);
 return v;
};
function attr(x,y)
{
 var z = document.createAttribute(x);
 z.nodeValue = y;
 return z;
};
// toggle view port between divs used in plow main page
function setLocation(x)
{
 var ul = ['irma','chauvin','edgerton'];
 for(var i=0,n=ul.length;i<n;i++)
 {
  if(ul[i]===x)
  {
   document.getElementById(ul[i]).style.display = "block";
			snapTo('where');
  } else {
   document.getElementById(ul[i]).style.display = "none";
  }; 
 };	 
};
			/*
   var loc = window.location.href;
			var lochash = loc.substr(0,loc.lastIndexOf('/')) + '/#' + ul[i];
			window.location.href = lochash;
			*/
// disable Enter key on form controls
function stopRKey(evt)
{ 
 var evt = (evt) ? evt : ((event) ? event : null); 
 var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null); 
 if ((evt.keyCode == 13) && (node.type=="text"))  {return false;} 
};
//
function oops()
{
 alert('Parameter error');
	return;
};
/*
 * by RC Pierce
 * Revision 080522 v2.4
 * latest revision 081127
 */
// v2.2.081127.1
// v2.2.100428.1
function clearErrs()
{
 var x = ['nameError','phoneError','mailError','expError'];
	var k = 0;
 while ( k < x.length ) {
  document.getElementById(x[k]).style.display = "none";
  k++;
	}
};
// v2.2.081127.1.100719.1554
function passed()
{
 var form = document.getElementById('xform');
 var simple = /^.+@.+\..+$/ ;
 clearErrs();
 if (!form.name.value)
 {
  document.getElementById('nameError').style.display = "block";
  form.name.select();
  form.name.focus();
  return false
  } else
  if (!form.phone.value)
  {
   document.getElementById('phoneError').style.display = "block";
   form.phone.select();
   form.phone.focus();
   return false
   } else
   if (!form.email.value)
   {
    document.getElementById('mailError').style.display = "block";
    form.email.select();
    form.email.focus();
    return false
    } else
    if (!simple.test(form.email.value))
    {
     document.getElementById('expError').style.display = "block";
     form.email.select();
     form.email.focus();
     return false
    };
 return true
};
// mailTo()
// version 3.080427.4.100719.1625.
//
function mailTo(x,y)
{
 if(!document.getElementById || !document.createTextNode) return;
 else if(!document.getElementById(x) || !document.getElementById(x).nodeName==='a') return;
 var i=parseInt(y,10);
 if(isNaN(i) || i <= 0 || i > addr.length) return;
 else i--;
 var addrElement = document.getElementById(x);
 var textNode = addr[i][0], isRecipient = addr[i][4];
 if(textNode)
 {
  addrElement.parentNode.insertBefore(document.createTextNode(textNode+' '), addrElement);
 };
 addrElement.setAttributeNode(attr('title',addr[i][1]));
 addrElement.setAttributeNode(attr('href','mailto:'+addr[i][2]+'@'+addr[i][3]));
 addrElement.innerHTML = isRecipient ? isRecipient+'@'+addr[i][5] : addr[i][5];
};

var addr = [];
addr[0]=['E-Mail:','Wainwright and District FCS','wdfcs','silvercrest.ca','wdfcs','silvercrest.ca'];
addr[1]=['','Cathy Charlton, FCS Director','fcsdirector','silvercrest.ca','fcsdirector','silvercrest.ca'];
addr[2]=['Or by E-Mail to','','fcsdirector','silvercrest.ca','fcsdirector','silvercrest.ca'];
addr[3]=['','Tara Bird, FCS Office Manager','fcsom','silvercrest.ca','fcsom','silvercrest.ca'];
addr[4]=['','Chantelle Raulino, FCS Secretary','fcssecretary','silvercrest.ca','fcssecretary','silvercrest.ca'];
addr[5]=['','Susan McCulley','lah','incentre.net','lah','incentre.net'];
addr[6]=['','Bobbi-Jo Marriott, PLC Extended Programs','wdplc','incentre.net','wdplc','incentre.net'];
addr[7]=['','Kari Aykroyd, Early Childhood Development','ecd','silvercrest.ca','ecd','silvercrest.ca'];
addr[8]=['','Penny De Marsh, PLC Daytime Programs','wdplc2','incentre.net','wdplc2','incentre.net'];
addr[9]=['','Valerie MacEachern, Parent Link On Wheels','plcor','incentre.net','','Valerie MacEachern'];
addr[10]=['E-mail:','Penny De Marsh, PLC Daytime Programs','wdplc2','incentre.net','wdplc2','incentre.net'];
addr[11]=['E-mail:','Kari Watchel, Provost FCSS','fcsscomprog','telus.net','fcsscomprog','telus.net'];
addr[12]=['','Kari Watchel, Provost FCSS Programs','fcsscomprog','telus.net','fcsscomprog','telus.net'];
addr[13]=['','Dr. Ken Harrison','fcscounsellor','silvercrest.ca','fcscounsellor','silvercrest.ca'];
addr[14]=['','Living at Home Service','wdfcs','silvercrest.ca','wdfcs','silvercrest.ca'];
addr[15]=['','Valerie MacEachern, Parent Link On Wheels','plcor','incentre.net','plcor','incentre.net'];
addr[16]=['','','','','',''];
addr[17]=['','Diane Bachelder, TIPS Program','dbachelder','cafcl.org','dbachelder','cafcl.org'];
addr[18]=['','Lynn Jacobson, CAFCL Public Relations','ljacobson','cafcl.org','ljacobson','cafcl.org'];
addr[19]=['E-mail:','Susan McCulley, ECH','susan.mcculley','ech.ab.ca','susan.mcculley','ech.ab.ca'];
addr[20]=['','Report errors and broken links','webmaster','wdfcs.ca','','Notify webmaster'];
addr[21]=['','Contact wdfcs.ca Webmaster','webmaster','wdfcs.ca','webmaster','wdfcs.ca'];
addr[22]=['E-mail:','Submit a resume','fcsdirector','silvercrest.ca','fcsdirector','silvercrest.ca'];
addr[23]=['','Living At Home Program','lah','incentre.net','lah','incentre.net'];
addr[24]=['','Community Program Assistant','lah','incentre.net','','Susan McCulley'];
addr[25]=['','Living At Home Program','lah','incentre.net','','Susan McCulley'];
addr[26]=['','Dr. Ken Harrison','fcscounsellor','silvercrest.ca','','Dr. Ken Harrison'];
addr[27]=['','Family Programs','ecd','silvercrest.ca','','Kari Aykroyd'];
addr[28]=['','PLC Daytime Programs','wdplc2','incentre.net','','Penny De Marsh'];
addr[29]=['','Parent Link Program','fcsscomprog','telus.net','','Kari Watchel'];
addr[30]=['','PLC Outreach & Parent Link On Wheels','plcor','incentre.net','','Valerie MacEachern'];
addr[31]=['','Youth Programs','fcsdirector','silvercrest.ca','','Cathy Charlton'];
addr[32]=['','PLC Extended Programs','wdplc','incentre.net','','Bobbi-Jo Marriott'];
addr[33]=['','Bobbi-Jo Marriott, PLC Extended Programs','wdplc','incentre.net','wdplc','incentre.net'];
addr[34]=['','','','','',''];
addr[35]=['','','','','',''];
addr[36]=['','','','','',''];
addr[37]=['','E-mail for tickets or information','kschaffer','telusmail.net','','Tara Schaffer'];
addr[38]=['','E-mail Bobbi at PLC','wdplc','incentre.net','','Bobbi'];
addr[39]=['','E-mail Penny at PLC','wdplc2','incentre.net','','Penny'];
addr[40]=['E-mail:','Village of Chauvin','dhicks','cciwireless.ca','dhicks','cciwireless.ca'];
addr[41]=['E-mail:','Village of Edgerton','info','edgerton-oasis.ca','info','edgerton-oasis.ca'];
addr[42]=['E-mail:','Village of Irma','info','irma.ca','info','irma.ca'];
addr[43]=['E-mail:','','','','',''];

// end mailTo()






//
// setInputTag()
// v2.2.081127.1.100426.1
function setInputTag(x)
{
 var local = ['webmaster','ss','lah','cs','fp','yp','plc','plp','plow'], at = "@", domain = "wdfcs.ca";
 var a = parseInt(x,10);
     x = isNaN(a) ? 0 : Math.abs(a);
     x = x < local.length ? x : 0;
 var parenTag = document.getElementById('redirect');
	var inputTag = document.createElement('input');
 inputTag.setAttributeNode(attr('value',local[x] + at + domain));
 inputTag.setAttributeNode(attr('type','hidden'));
 inputTag.setAttributeNode(attr('name','recipient'));
 parenTag.appendChild(inputTag);
};

/* 
 v1.0.090109.100717.1511.0729.1711
 by RC Pierce Copyright 2006-2010
 Use by permission with above line in tact.
 open new window for PDF and select external links
 dependency: attr(), addEvent()
 */
function windowOpen(x)
{
 var y = x.href;
 window.open(y,'newWindow','height=582,width=782,status=yes,resizable=yes,scrollbars=yes,toolbar=yes,location=yes,menubar=yes');
};
function inPage(x)
{
 return x.match(/\/#/);
};
function filter(x)
{
 var xHref = x.replace(/download\.php\?file\=/, '');
 xHref = xHref.replace(/index\.php\?file\=/, '');
	xHref = xHref.replace(/\?file\=/, '');
 return xHref;
};
function pdfTest(x)
{
 var pdf = /\.pdf/;
 return (!pdf.test(x)) ? "Opens link in new window" : "Opens PDF in a new window";
};
//
function newWindow(x)
{
 if(!document.getElementById || !document.getElementsByTagName) return;
 if(!document.getElementById(x)) return;
 newWindows(document.getElementById(x).getElementsByTagName('a'));
};
function newWindows(ux)
{
 for(var k = 0, m = ux.length, url, val; k < m; k++)
 {
  if(!inPage(ux[k].href))
  {
   url = filter(ux[k].href);
   val = "windowOpen(this); return false;";
   ux[k].href = url;
   ux[k].title = pdfTest(url);
   ux[k].setAttributeNode(attr('onclick',val));
   ux[k].setAttributeNode(attr('target','_blank'));
  };
 };
};
function newWindowClass(u)
{
 if(!u) return;
 for(var i = 0, n = u.length; i < n; i++)
 {
  newWindows(u[i].getElementsByTagName('a'));
 };
};





// end newWindow();
//
function linkTrackingClass(u)
{
 if(!u) return
 for(var i = 0, n = u.length; i < n; i++)
 {
  u[i].href = "/cgi-bin/axs/ax.pl?" + u[i].href;
 };
};

// window load events
addEvent(window,"load",function()
 {
  var classNames = ['pdf','web','www','win','adobe','star'];
  for(var i = 0, n = classNames.length; i < n; i++)
  {
   newWindowClass(getElementsByClassName(classNames[i]));
  };
  if(document.getElementById('submit'))
  {
   document.getElementById('submit').innerHTML += '<input type="submit" value="Submit" id="send" \/>';
   document.getElementById('feedback').style.display = "block";
  };
 }
);
//axs 2 tracking system plug-in by RC Pierce Copyright 2007-2010 v.1.2.101117
addEvent(window,'load',function()
 {
  if(document.getElementById('axs'))
  {
   var ax = document.getElementById('axs');
   ax.innerHTML = "";
   ax.style.display = 'none';
   var img = document.createElement('img');
   ax.appendChild(img);
   img.src = '/cgi-bin/axs/ax.pl?trans.gif&ref='+document.referrer;
   img.width = 1;
   img.height = 1;
   img.title = 'AXS';
   linkTrackingClass(getElementsByAttribute(document.body, "a", "rel", "external"));
		};
 }
)
// end axs()
