function SetCookie(name, value, expires) {
	var regexp=/(\w+?)(\W)(.+)$/i;
	var Cookie=name+'='+escape(value);
	if (expires) {Cookie=Cookie+'; expires=Thursday, 31-Dec-2020 23:59:59 GMT;';};
	document.cookie=Cookie;
};

function DeleteCookie(name) {
	var regexp=/(\w+?)(\W)(.+)$/i;
	var arrayHost=regexp.exec(window.location.host);
	document.cookie=name+'=0; expires=Thursday, 01-Jan-1970 00:00:00 GMT;';
};

function GetCookie(name) {
	var cookies=document.cookie.split("; ");
	for (var i=0; i<cookies.length; i++) {
		var cookie_pair=cookies[i].split("=");
		if (cookie_pair[0]==name) {
			return cookie_pair[1];
		};
	};
	return false;
};

var X=0; var Y=1;
function GetElementPosition(Element) {
	var thisLevel=Element;
	var i=0;
	var Return=new Array(0, 0);
	while (thisLevel.parentNode.nodeName!='BODY' && i<20) {
	if (thisLevel.nodeName!='TR') {
		if (thisLevel.style) {
			Return[X]+=thisLevel.offsetLeft;
			Return[Y]+=thisLevel.offsetTop;
		} else {
			Return[X]+=thisLevel.offsetLeft;
			Return[Y]+=thisLevel.offsetTop;
		};
	};
		thisLevel=thisLevel.parentNode;
		i++;
	};
	Return[Y]+=Element.offsetHeight-5;
//	Return[Y]+=5;
	return Return;
};

function ShowToolTip(Element, ToolTipText) {
	var Overlay=document.getElementById('ToolTip');
	var content='<table><tr><td>'+ToolTipText+'</td></tr></table>';
	Overlay.innerHTML=content;
	var Position=GetElementPosition(Element);
	if (Overlay.style) {
		Overlay.style.left=Position[X]+Element.offsetWidth;
		Overlay.style.top=Position[Y];
		var Xovershot=Position[X]+Overlay.offsetWidth>window.innerWidth+window.pageXOffset;
		var Yovershot=Position[Y]+Overlay.offsetHeight>window.innerHeight+window.pageYOffset;
		if (Xovershot) {
			Overlay.style.left=window.innerWidth+window.pageXOffset-Overlay.offsetWidth-20;
			Overlay.style.top=Position[Y]+Element.offsetHeight;
		};
		if (Yovershot) {
			Overlay.style.top=window.innerHeight+window.pageYOffset-Overlay.offsetHeight;
			if (Xovershot) {
				Overlay.style.left=Position[X]-Overlay.offsetWidth-5;
			};
		};
//		Overlay.style.top=Overlay.style.top.toString()+'px';
//		Overlay.style.left=Overlay.style.left.toString()+'px';
		Overlay.style.visibility="visible";
	} else {
		Overlay.left=Position[X];
		Overlay.top=Position[Y];
		Overlay.visibility="visible";
	};
	window.status='';
	return true;
};

function HideToolTip() {
	var Overlay=document.getElementById('ToolTip');
	if (Overlay.style) {
		Overlay.style.visibility="hidden";
	} else {
		Overlay.visibility="hidden";
	};
	window.status='';
	return true;
};

function ShowBanner() {
	var BannerPlaceholder=document.getElementById('Banner');
	BannerPlaceholder.innerHTML='<a href="/"><img src="/images/banners/WoSCbanner.jpg" border="0"/></a>';
};

function CheckFormNotEmpty(form, exceptions) {
	var error_i=-1;
	var CheckBoxChecked=false;
	var CheckBoxExists=false;
	var ConfirmationRequired=false;
	for (var i=0; i<form.length; i++) {
		if (exceptions==undefined || !exceptions.match(form.elements[i].name)) {
		switch (form.elements[i].type) {
		case 'text':
		case 'password':
			if (form.elements[i].value=="") {
				alert("Field must not be empty!");
				error_i=i;
			}; break;

		case 'radio':
			error_i=i;
			var checked=false;
			var RadioOptions=eval('form.'+form.elements[i].name);
			if (RadioOptions.length!=undefined) {
				for (var i2=0; i2<RadioOptions.length; i2++) {
					if (RadioOptions[i2].checked) {
						checked=true;
						break;
					};
				};
			} else {
				checked=form.elements[i].checked;
			};
			if (checked==false) {
				alert("Choice must be made!");
			} else {
				error_i=-1;
			}; break;

		case 'checkbox':
			if (form.elements[i].name=="confirmation") {
				if (!form.elements[i].checked) {
					ConfirmationRequired=i;
				};
			} else {
				if (form.elements[i].checked==true) {
					CheckBoxChecked=true;
				};
				CheckBoxExists=true;
			}; break;

		default:
			var type=form.elements[i].type;
			var regexp=/select/;
			if (regexp.test(type)) {
				var index=form.elements[i].selectedIndex;
				if (form.elements[i].options[index].value=="") {
					alert("Selection must be made!");
					error_i=i;
				};
			}; break;
		};

		if (error_i!=-1) {
			form.elements[error_i].focus();
			return false;
		};
		};
	};

	if (CheckBoxExists && !CheckBoxChecked) {
		alert("At least one selection must be made!");
		return false;
	};
	if (ConfirmationRequired) {
		alert("Confirmation is required!");
		form.elements[ConfirmationRequired].focus();
		return false;
	}
	return true;
};

function CheckFormAtLeastOneGTZ(form, special_allowed) {
	var TextBoxExists=false;
	for (var i=0; i<form.length; i++) {
		if (form.elements[i].type=="text") {
			TextBoxExists=true;
			if (form.elements[i].value>0) {
				form.elements[i].value=form.elements[i].value.replace(/^0+/g, "");
				return true;
			} else if (special_allowed && special_allowed.match(form.elements[i].value)) {
				return true;
			};
		};
	};

	if (TextBoxExists) {
		alert("At least one field must be greater than 0!");
		return false;
	};
};

function CheckFormAtLeastOneChecked(form) {
	for (var i=0; i<form.length; i++) {
		if (form.elements[i].type=="checkbox" && form.elements[i].checked==true) {
			return true;
		};
	};

	alert("At least one selection must be made!");
	return false;
};

function CheckInputNumbersOnly(input, specialallowed, min, max) {
	var RE_toremove=new RegExp('[^\\d'+specialallowed+']', 'g');
	input.value=input.value.replace(RE_toremove, "");
	input.value=input.value.replace(/^0+/g, "");
	if (input.value=="") {
		input.value="0";
	};
	if (input.value==Number(input.value)) {
		if (!isNaN(min) && input.value<min) {
			input.value=min;
		};
		if (!isNaN(max) && input.value>max) {
			input.value=max;
		};
	};
};

function CheckFormTotal(form, min, max) {
	var Total=new Number(0);
	for (var i=0; i<form.length; i++) {
		if (form.elements[i].type=="text") {
			Total+=new Number(form.elements[i].value);
		};
	};

	if (!isNaN(min) && Total<min) {
		alert("The total must not be less than "+min+"!");
		return false;
	}

	if (!isNaN(max) && Total>max) {
		alert("The total must not be more than "+max+"!");
		return false;
	};
	return true;
};

function CheckSelectedCount(form, max, additional_info) {
	var Total=0;
	for (var i=0; i<form.length; i++) {
		if (form.elements[i].type=="checkbox" && form.elements[i].checked==true) {
			Total++;
		};
	};

	if (!isNaN(max) && Total>max) {
		alert("Not more than "+max+((additional_info)?" "+additional_info+" ":"")+" can be selected!");
		return false;
	};
	return true;
};

function CheckInputName(input, specialallowed) {
	input.value=input.value.replace(/(^\s+|\s+$)/g, "");
	var regexp=new RegExp("[^\\w"+specialallowed+"]", "g");
	input.value=input.value.replace(regexp, "");
};

function DisableSubmit(Form) {
	for (i=0; i<Form.length; i++) {
		if (Form.elements[i].type.toLowerCase()=="submit") {
			Form.elements[i].disabled=true;
		};
	};
	return true;
};

function HideAlertMsg() {
	document.getElementById('AlertMsg').style.visibility='hidden';
	FocusTextBox();
};

function FocusTextBox() {
	var alertpresent=document.getElementById('AlertMsg');
	if (document.forms[0] && (alertpresent==undefined || alertpresent.style.visibility=='hidden')) {
	for (var i=0; i<document.forms[0].elements.length; i++) {
		switch (document.forms[0].elements[i].type.toLowerCase()) {
		case 'text':
		case 'password':
		case 'textarea':
		case 'file':
			if (document.forms[0].elements[i].value=='') {
				document.forms[0].elements[i].focus();
				return;
			};
		};
	};
	};
};

var SCURL='';
var SCURL_this='';
var LordGuildAppointment=2;
//document.onload=FocusTextBox;

