
function getCookie(cookieName) {
    var cStart, cEnd;
    if (document.cookie.length > 0) {
        cStart = document.cookie.indexOf(cookieName + "=");
        if (cStart != -1) {
            cStart += cookieName.length+1;
            cEnd = document.cookie.indexOf(";", cStart);
            if (cEnd == -1) cEnd = document.cookie.length;
            return unescape(document.cookie.substring(cStart, cEnd));
        }
    }
    return null;
}

function setCookie(cookieName, cookieValue, cookieDays) {
    var expDate = new Date();
    expDate.setTime(expDate.getTime() + (cookieDays * 24 * 3600 * 1000));
    document.cookie = cookieName + "=" + escape(cookieValue) + "; expires=" + expDate.toGMTString();
}


function redirect(currentLocation, isRedirect) {
	if(isRedirect) {
		if (getCookie("TopLocation") == "Personal") {
			parent.location.href = "./personal.html";
		} else {
			parent.location.href = "./business.html";
		}
	} else {
		setCookie("TopLocation", currentLocation, 365);
	}
}

function isEmail(str) {
	// are regular expressions supported?
	var supported = 0;
	if (window.RegExp) {
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}
	if (!supported) return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$");
	return (!r1.test(str) && r2.test(str));
}

function checkRequired(form) {
	for (var i = 0; i < form.elements.length; i++) {
		if ((form.elements[i].className.match('Required')) && (form.elements[i].value == '')) {
			switch(form.elements[i].id) {
				case "fName":
					showError('First Name is a required field');
					document.getElementById('lbl_fName').innerHTML='<span class=\"errorFlag\">First Name:</strong>';
					document.getElementById('lbl_lName').innerHTML='<strong>Last Name:</span>';
					document.getElementById('lbl_email').innerHTML='<strong>E-mail Name:</span>';
					break;
				case "lName":
					showError('Last Name is a required field');
					document.getElementById('lbl_fName').innerHTML='<strong>First Name:</strong>';
					document.getElementById('lbl_lName').innerHTML='<span class=\"errorFlag\">Last Name:</strong>';
					document.getElementById('lbl_email').innerHTML='<strong>E-mail Name:</span>';
					break;
				case "email":
					showError('E-mail is a required field');
					document.getElementById('lbl_fName').innerHTML='<strong>First Name:</strong>';
					document.getElementById('lbl_lName').innerHTML='<strong>Last Name:</strong>';
					document.getElementById('lbl_email').innerHTML='<span class=\"errorFlag\">E-mail Name:</span>';
					break;
				case "USDollar":
					showError('You must select whether or not the account is a US Dollar account.');
					break;
				case "jointAccount":
					showError('You must select whether or not the account is a joint account');
					break;
				case "institutionNum":
					showError('Please enter all the digits in the institution number');
					break;
				case "transitNum":
					showError('Please enter all the digits in the transit number');
					break;
				case "accountNum":
					showError('Please enter all the digits in the account number');
					break;
				case "AccountfName":
					showError('Please enter the account holder\'s first name');
					break;
				case "AccountlName":
					showError('Please enter the account holder\'s last name');
					break;
				default:
					showError(document.getElementById('lbl_' + form.elements[i].id).innerHTML + ' is a required field');
					break;
			}
			return false;
		} else if((form.elements[i].id == 'email') && !(isEmail(form.elements[i].value))) {
			showError('E-mail address is invalid.');
			document.getElementById('lbl_fName').innerHTML='<strong>First Name:</strong>';
			document.getElementById('lbl_lName').innerHTML='<strong>Last Name:</strong>';
			document.getElementById('lbl_email').innerHTML='<span class=\"errorFlag\">E-mail Name:</span>';
			return false;
		}
	}
	return true;
	
}

