/*	

	Dusted Design Partners Limited

*/
var expanders = false;

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

printLink = function() {
	if (document.getElementById("footer-print")) {
		var printBut = document.getElementById("footer-print");
		printBut.onclick=function() {
			if (window.print) {
				if (expanders) {
					mooFx("expandAll");
				}
				window.print();
			} else {
				alert("Unfortunately your browser doesn't support printing via Javascript.\nTo print this page please select \"File > Print...\" in your browser's menu.");
			}
			return false;
		}
	}
}

function stripe(id) {
	var even = false;
	var evenColor = arguments[1] ? arguments[1] : "#fff";
	var oddColor = arguments[2] ? arguments[2] : "#eee";
	var statList = document.getElementById(id);
	
	if (! statList) { return; }
	
	var lis = statList.getElementsByTagName("li");
	
	for (var h = 0; h < lis.length; h++) {
		var myli = lis[h]
		if (! hasClass(myli) && ! myli.style.backgroundColor) {
			myli.style.backgroundColor = even ? evenColor : oddColor;
		}
		even =  ! even;
	}
}
expandCheck = function() {
	var linkArray = document.getElementById("expanders").getElementsByTagName("dt");
	var expandAll = document.getElementById("expand-all");
	for (var i=0; i<linkArray.length; i++) {
		if (linkArray[i].expanded) {
			allExpanded = true;
			expandAll.innerHTML = "Close all";
			continue;
		} else {
			allExpanded = false;
			expandAll.innerHTML = "Expand all";
			break;
		}
	}
}
mooFx = function(arg){
	if (document.getElementById("expanders")) {
		var deetArray = document.getElementById("expanders").getElementsByTagName("dd");
		var linkArray = document.getElementById("expanders").getElementsByTagName("dt");
		var expandAll = document.getElementById("expand-all");
		if (arg == "expandAll") {
			if (linkArray) {
				for (var i=0; i<linkArray.length; i++) {
					if (linkArray[i].expanded == false) {
						var whatAnswer = linkArray[i].getAttribute('id');
						refOffset = whatAnswer.indexOf('X')+1;
		  				refEnd = whatAnswer.length;
		  				newDest = whatAnswer.substring(refOffset, refEnd);
						myHeight = new fx.Height(newDest, {duration: 400});
						myHeight.toggle();
						linkArray[i].expanded = true;
		  				linkArray[i].className=linkArray[i].className.replace(new RegExp("closed\\b"), "expanded");
					}
				}
			}
		} else if (arg == "closeAll") {
			for (var i=0; i<linkArray.length; i++) {
				if (linkArray[i].expanded == true) {
					var whatAnswer = linkArray[i].getAttribute('id');
					refOffset = whatAnswer.indexOf('X')+1;
	  				refEnd = whatAnswer.length;
	  				newDest = whatAnswer.substring(refOffset, refEnd);
					myHeight = new fx.Height(newDest, {duration: 400});
					myHeight.toggle();
					linkArray[i].expanded = false;
	  				linkArray[i].className=linkArray[i].className.replace(new RegExp("expanded\\b"), "closed");
				}
			}
		} else {
			for (var i=0; i<deetArray.length; i++) {
				myHeight = new fx.Height(deetArray[i], {duration: 400});
				myHeight.hide();
			}
			for (var i=0; i<linkArray.length; i++) {
				linkArray[i].className = "closed";
				linkArray[i].expanded = false;
				linkArray[i].onclick=function() {
					var whatAnswer = this.getAttribute('id');
					refOffset = whatAnswer.indexOf('X')+1;
	  				refEnd = whatAnswer.length;
	  				newDest = whatAnswer.substring(refOffset, refEnd);
					myHeight = new fx.Height(newDest, {duration: 400});
					myHeight.toggle();
					if (this.expanded) {
	  					this.className=this.className.replace(new RegExp("expanded\\b"), "closed");
	  					this.expanded = false;
					} else {
	  					this.className=this.className.replace(new RegExp("closed\\b"), "expanded");
	  					this.expanded = true;
					}
					expandCheck();
					return false;
				}
				linkArray[i].onmouseover=function() {
					this.className = this.className +" over";
				}
				linkArray[i].onmouseout=function() {
					this.className = this.className.replace(new RegExp("over\\b"), "");
				}
			}
		}
		expandAll.onclick=function() {
			if (allExpanded) {
				mooFx("closeAll");
			} else {
				mooFx("expandAll");
			}
			return false;
		}
	}
	expandCheck();
}


window.onload = function() {
	printLink();
}