function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//swap language
function WO_swapLanguage(lang) {
	var loc = document.location + "";
	var startpos = loc.indexOf("/", 8);
	//alert(loc);
	loc = "/" + lang + "/" + loc.substring(startpos + 4);
	
	///alert(loc);
	window.open(loc, "_self");
}

//Number Formatting
function FormatNumber(number) {
number = '' + number;
if (number.length > 3) {
var mod = number.length % 3;
var output = (mod > 0 ? (number.substring(0,mod)) : '');
for (i=0 ; i < Math.floor(number.length / 3); i++) {
if ((mod == 0) && (i == 0))
output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
else
output+= ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
}
return (output);
}
else return number;
}

//PopUp
function doPopup(_url, wname, status, target) {
	win=open(_url, wname, 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=400,height=400', "_blank");
	if(win!=null)win.focus();
	
}

function WO_openWindow(URL, width, height, name) 
{
	//alert (window.screen.width);
	 
	if (width == null || width == 0) {
		//width = window.screen.width / 2;
		width = 500;
	}
		
	if (height == null || height == 0) {
		//height = window.screen.height / 2;
		height = 400;
	}
		
	if (name == null || name == '') {
		name = 'PopupWindow';
	}
	win=open('', name, 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width='+width+',height='+height);

	if (win != null) 
	{
		if (win.opener == null) 
		{
			win.opener = self;
		}
		win.location.href=URL;
 		if (win.focus) win.focus();
   }
}

function WO_openWindow2(URL, name, para){
	if (name == null || name == '') {
		name = 'PopupWindow';
	}

	win=window.open('', name, para);
	if (win != null) 
	{
		if (win.opener == null) 
		{
			win.opener = self;
		}
		win.location.href=URL;
 		if (win.focus) win.focus();
   }
	
	
}

//Auto Tab
var isNN = (navigator.appName.indexOf("Netscape")!=-1);
function autoTab(input,len, e) {
var keyCode = (isNN) ? e.which : e.keyCode; 
var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
if(input.value.length >= len && !containsElement(filter,keyCode)) {
input.value = input.value.slice(0, len);
input.form[(getIndex(input)+1) % input.form.length].focus();
}
function containsElement(arr, ele) {
var found = false, index = 0;
while(!found && index < arr.length)
if(arr[index] == ele)
found = true;
else
index++;
return found;
}
function getIndex(input) {
var index = -1, i = 0, found = false;
while (i < input.form.length && index == -1)
if (input.form[i] == input)index = i;
else i++;
return index;
}
return true;
}

function getObj(objName){
	if (isNN) {
		return document.getElementById(objName);
	}else{
		return document.all[objName];
	}
	/*var retObj = document.all[objName];
	
	if (retObj==null){
		retObj = document[objName];
	}
	
	if (retObj==null){
		retObj = document.getElementById(objName);
	}*/
	
	return retObj;
}

function resetFrm(){
	window.open(window.location,"_self");
}

function WO_showDate()
{
	
	var theDate = new Date();
	var theMonth = new Array();
	theMonth[0] = "January";
	theMonth[1] = "Frbruary";
	theMonth[2] = "March";
	theMonth[3] = "April";
	theMonth[4] = "May";
	theMonth[5] = "June";
	theMonth[6] = "July";
	theMonth[7] = "August";
	theMonth[8] = "September";
	theMonth[9] = "October";
	theMonth[10] = "November";
	theMonth[11] = "December";
		
	var dstr = theDate.getDate()+' ' + theMonth[theDate.getMonth()] +', '+theDate.getFullYear();
	
	document.write(dstr);
}

function removeOption(input,full){
	var inputObj = getObj(input);
	var lastIndex = 0;
	if(!full) lastIndex = 1;
	
	for(var i=inputObj.options.length; i>lastIndex; i--){
		inputObj.options[i - 1] = null;
	}
}

function addOption(input, value, text){
	var inputObj = getObj(input);
						
	inputObj.options[inputObj.options.length] = new Option(text, value);
}

function setYear(yearInputName, minYearInputName){
	var dateObj = new Date();
	var currentYear = dateObj.getFullYear();
	
	removeOption(yearInputName, false);
	
	var startingYear = getObj(minYearInputName).value;
	var endingYear = currentYear;
	
	if(startingYear == "") startingYear = endingYear - 80;
	//if(endingYear == "") endingYear = 0;
	
	for(var i = startingYear; i <= endingYear; i++){
		addOption(yearInputName, i, i);
	}
}

function setYear2(yearInputName){
	var dateObj = new Date();
	var currentYear = dateObj.getFullYear();
	
	removeOption(yearInputName, false);
	
	var startingYear = currentYear;
	var endingYear = currentYear + 20;
	
	for(var i = startingYear; i <= endingYear; i++){
		addOption(yearInputName, i, i);
	}
}

function checkYear(year, month, day){
	var monthObj = getObj(month);
	var selectedMonth = monthObj.options[monthObj.selectedIndex].value;

	if(selectedMonth == 2){
		checkMonth(year, month, day);
	}
}

function checkMonth(year, month, day){
	var dayObj = getObj(day);
	var monthObj = getObj(month);
	var yearObj = getObj(year);
	var selectedYear = yearObj.options[yearObj.selectedIndex].value;
	var maxDay = "";

	maxDay = getMaxDay(monthObj.options[monthObj.selectedIndex].value, selectedYear);
	
	if(dayObj.length - 1 > maxDay){
		var current_day_length = dayObj.length - 1;
		for(var i = current_day_length; i > maxDay; i--){dayObj.remove(i);}
	}
	else if(dayObj.length - 1 < maxDay){
		var current_day_length = dayObj.length - 1;
		for(var i = current_day_length; i < maxDay; i++){
			var newOption = document.createElement('option');
  			newOption.text = i + 1;
  			newOption.value = i + 1;
			try{
				dayObj.add(newOption,null);
			}
			catch(ex){
				dayObj.add(newOption);
			}
		}
	}
}

function getMaxDay(monthValue, selectedYear){
	switch(monthValue){
		case "01":
		case "03":
		case "05":
		case "07":
		case "08":
		case "10":
		case "12":
			return 31;
			break;
		case "04":
		case "06":
		case "09":
		case "11":
			return 30;
			break;
		default:
			return checkLeapYear(selectedYear);
	}
}

function checkLeapYear(year){
	if((year % 100 != 0 && year % 4 == 0) || (year % 400 == 0)){
		return 29;
	}
	else{
		return 28;
	}
}
/* Oxfam Corporate Site begin */
function bookmark(){
	addToFavorite(location.href, document.title);
}

function addToFavorite(url,title){
	if(window.sidebar){ //Firefox, must be placed in front of IE section
		window.sidebar.addPanel(title,url,"");
	}
	else if((window.external) && (parseInt(navigator.appVersion) >= 4)){ //IE
		window.external.AddFavorite(url,title);
	}
}

function changeFontSize(obj,mode){
	var tagList = new Array("div","span","tr","td","font","p");
	
	for(var i=0; i<tagList.length; i++){
		var tags = obj.getElementsByTagName(tagList[i]);
		for(var j=0; j<tags.length; j++){
			if(tags[j].style.fontSize == "") tags[j].style.fontSize = 16 + mode + "px";
			else{
				var originalFontSize = tags[j].style.fontSize;
				var size = parseInt(originalFontSize.replace("px",""));
				tags[j].style.fontSize = size + mode + "px";
			}
		}
	}
}

/*function changeFontSize(obj,counter,mode) {
	var tempIdPrefix = "textResize";
	var tagName = obj.tagName;
	
	//alert("tagName: "+ tagName);
	if(tagName != undefined){
	    //define a temp. id for the tag
		var currentId = "";
		if(obj.id) currentId = obj.id;
		else{
			currentId = tempIdPrefix + counter;
			obj.id = currentId;
		}

		//if font-size is defined, increase the font-size
		if(getObj(currentId).style.fontSize){
			var s = parseInt(getObj(currentId).style.fontSize.replace("px",""));
			
			if(mode == "increase") s += 1;
			else if(mode == "decrease") s -= 1;
		
			getObj(currentId).style.fontSize = s + "px";
		}
		
		//remove the temp.id to avoid crashing
		if(currentId.indexOf(tempIdPrefix) != -1) obj.id = "";
	}
	
	//loop for the childNodes
	var i = 0;
	var currentElementChild = obj.childNodes[i];
	while(currentElementChild){
		counter++;
		changeFontSize(currentElementChild,counter,mode);
		i++;
		currentElementChild = obj.childNodes[i];
	}
}*/

function submitFrm(frmObj){
	var result = validateFrm(frmObj);
					
	if(result == true){
		//frmObj.submit();
		return true;
	}
	else{
		return false;
	}
}

function validateFrm(frmObj){
	if (validation(frmObj)){
		//frmObj.submit();
		return true;
	}
	else{
		return false;
	}
}

function httpsRedirect(){
	if(window.location.protocol == "http:") window.location = window.location.href.replace("http://","https://");
}
/* Oxfam Corporate Site end */