
function searchFocus(e)

{

    var element = document.getElementById(e);

    if(element.value != '')

    {

        element.value = '';

    }

}



function searchBlur(e)

{

    var element = document.getElementById(e);

    if(element.value == '')

    {

        element.value = 'Site Search';

    }

}



function MM_showHideLayers() { //v6.0

  var i,p,v,obj,args=MM_showHideLayers.arguments;

  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];

    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }

    obj.visibility=v; }

}

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_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_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];}

}



function ChangeClass(ID, Class){

	document.getElementById(ID).className=Class;

}



function Q2ExternalLink(){
	if(confirm("You are leaving the Bank's web site.\n\nThe web site you have selected is an external one located on another server. The Bank has no responsibility for any external Web site. It neither endorses the information, content, presentation, or accuracy nor makes any warranty, express or implied, regarding any external site.")){
		return true;
	} else {
		return false;
	}
}

function Q2mail(){
	if(confirm("Information provided through this email link is transmitted over an unsecured connection. Please do not send information such as account numbers, account service requests or other personal information. Please contact us in person, by telephone or by mail with confidential information.")){
		return true;
	} else {
		return false;
	}
}

function CheckBoxCheck(type){
	if(type == 0){
		if(document.Q2OnlineLogin.forgot_password[0].checked){
			document.Q2OnlineLogin.forgot_password[1].checked = false;
			document.Q2OnlineLogin.password.disabled = true;
		} else {
			document.Q2OnlineLogin.password.disabled = false;
		}
	} else if(type == 1){
		if(document.Q2OnlineLogin.forgot_password[1].checked){
			document.Q2OnlineLogin.forgot_password[0].checked = false;
			document.Q2OnlineLogin.password.disabled = true;
		} else {
			document.Q2OnlineLogin.password.disabled = false;
		}
	}
}






function validateData(t){
	var checkMessage = "";
	var checkMessageField = "";
	var validateCount = 0;
	var requiredCount = 0;
	for (i=0; i<t.length; i++) {
		if (t[i].alt == undefined){
			Alt = "0";
		} else {
			Alt = t[i].alt;
		}
		if(t[i].value == "" && Alt.indexOf("req") != -1 && t[i].type != "checkbox"){
			t[i].className = "ReqField";
			requiredCount = requiredCount + 1;
		} else if(t[i].type == "checkbox" && Alt.indexOf("req") != -1){
			if(!t[i].checked){
				t[i].className = "ReqField";
				requiredCount = requiredCount + 1;
			} else {
				t[i].className = "";
			}
		} else if(Alt.indexOf("ssn") != -1){
			if(checkSSN(t[i].value) == true ){
				t[i].className = "";
			} else {
				validateCount = validateCount + 1;
				checkMessageField = t[i];
				checkMessage = "The Social Security Number you entered does not appear to be valid. Please enter it in the format: 000-00-0000";
			}
		} else if(Alt.indexOf("homephone") != -1 ){
			if(checkPhone(t[i].value)){
				t[i].className = "";
			} else {
				validateCount = validateCount + 1;
				checkMessageField = t[i];
				checkMessage = "The Home Phone Number you entered does not appear to be valid.\n\nPlease enter it in the format: (000) 000-0000 x0000";
			}
        } else if(Alt.indexOf("workphone") != -1 ){
			if(checkPhone(t[i].value)){
				t[i].className = "";
			} else {
				validateCount = validateCount + 1;
				checkMessageField = t[i];
				checkMessage = "The Work Phone Number you entered does not appear to be valid.\n\nPlease enter it in the format: (000) 000-0000 x0000";
			}
		} else if(Alt.indexOf("email") != -1 ){
			if(checkEmail(t[i].value)){
				t[i].className = "";
			} else {
				validateCount = validateCount + 1;
				checkMessageField = t[i];
				checkMessage = "The Email Address you entered does not appear to be valid.\n\nPlease enter it in the format: johndoe@somewhere.com";
			}
		} else if(Alt.indexOf("zip") != -1 ){
			if(checkZip(t[i].value)){
				t[i].className = "";
			} else {
				validateCount = validateCount + 1;
				checkMessageField = t[i];
				checkMessage = "The Zip Code you entered does not appear to be valid.\n\nPlease enter it in the format: 00000 or 00000-0000";
				}
			} else if(Alt.indexOf("UserID") != -1 && t[i].value != ""){
			if(checkUserID(t[i].value) == true){
				t[i].className = "";
			} else {
				validateCount = validateCount + 1;
				checkMessageField = t[i];
				checkMessage = "User ID must be between 8 and 12 characters.";
			}
		} else {
			t[i].className = "";
		}
	}

	if(requiredCount != 0){
		alert("The highlighted fields are required.  Please complete them before submitting.");
		return false;
	} else if(validateCount != 0){
		checkMessageField.className = "ReqField";
		alert(checkMessage);
		return false;
	}else {
		return true;
	}
}

function checkSSN(t){
	var matchArr = t.match(/^(\d{3})-?\d{2}-?\d{4}$/);
	var numDashes = t.split('-').length - 1;
	if (matchArr == null || numDashes == 1) {
		return false;
	} else if (parseInt(matchArr[1],10)==0) {
		return false;
	} else {
		return true;
	}
}

function checkUserID(t){
	var matchArr = t.match(/^.{8,12}$/);
    if (matchArr == null) { 
    	return false;
    } else {
    	return true;
    }

}

function checkPhone(t){
	//var matchArr = t.match(/^\(\d\d\d\) \d\d\d-\d\d\d\d$/);
	var matchArr = t.match(/^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,3})|(\(?\d{2,3}\)?))(-| )?(\d{3,4})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/);
	if (matchArr == null){
		return false;
	} else {
		return true;
	}
}

function checkEmail(t){
	var matchArr = t.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*\.(\w{2}|(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum))$/);
	if (matchArr == null){
		return false;
	} else {
		return true;
	}
}

function checkZip(t){
	var matchArr = t.match(/^\d{5}(-\d{4})?$/);
	if (matchArr == null){
		return false;
	} else {
		return true;
	}
}

function UpdateTotal(t){
	if(t.value == ""){
		t.value = 0;
	}
	RunningTotal = parseInt(document.getElementById("50EEQuantity").value) * 25;
	RunningTotal = RunningTotal + (parseInt(document.getElementById("75EEQuantity").value) * 37.50);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("100EEQuantity").value) * 50);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("200EEQuantity").value) * 100);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("500EEQuantity").value) * 250);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("1000EEQuantity").value) * 500);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("5000EEQuantity").value) * 2500);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("10000EEQuantity").value) * 5000);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("50IQuantity").value) * 50);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("75IQuantity").value) * 75);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("100IQuantity").value) * 100);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("200IQuantity").value) * 200);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("500IQuantity").value) * 500);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("1000IQuantity").value) * 1000);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("5000IQuantity").value) * 5000);
	RunningTotal = RunningTotal + (parseInt(document.getElementById("10000IQuantity").value) * 10000);
	document.getElementById("TotalPurchasePrice").value = addCommas(RunningTotal.toFixed(2));
	t.select();
}

function addCommas(nStr){
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

function TextCounter(field, cntfield, maxlimit) {
    if (field.value.length > maxlimit) {
        field.value = field.value.substring(0, maxlimit);
    } else {
        cntfield.value = maxlimit - field.value.length;
    }
}



// LiveValidation 1.3 (standalone version)
// Copyright (c) 2007-2008 Alec Hill (www.livevalidation.com)
// LiveValidation is licensed under the terms of the MIT License
var LiveValidation=function(B,A){this.initialize(B,A);};LiveValidation.VERSION="1.3 standalone";LiveValidation.TEXTAREA=1;LiveValidation.TEXT=2;LiveValidation.PASSWORD=3;LiveValidation.CHECKBOX=4;LiveValidation.SELECT=5;LiveValidation.FILE=6;LiveValidation.massValidate=function(C){var D=true;for(var B=0,A=C.length;B<A;++B){var E=C[B].validate();if(D){D=E;}}return D;};LiveValidation.prototype={validClass:"LV_valid",invalidClass:"LV_invalid",messageClass:"LV_validation_message",validFieldClass:"LV_valid_field",invalidFieldClass:"LV_invalid_field",initialize:function(D,C){var A=this;if(!D){throw new Error("LiveValidation::initialize - No element reference or element id has been provided!");}this.element=D.nodeName?D:document.getElementById(D);if(!this.element){throw new Error("LiveValidation::initialize - No element with reference or id of '"+D+"' exists!");}this.validations=[];this.elementType=this.getElementType();this.form=this.element.form;var B=C||{};this.validMessage=B.validMessage||"Thankyou!";var E=B.insertAfterWhatNode||this.element;this.insertAfterWhatNode=E.nodeType?E:document.getElementById(E);this.onValid=B.onValid||function(){this.insertMessage(this.createMessageSpan());this.addFieldClass();};this.onInvalid=B.onInvalid||function(){this.insertMessage(this.createMessageSpan());this.addFieldClass();};this.onlyOnBlur=B.onlyOnBlur||false;this.wait=B.wait||0;this.onlyOnSubmit=B.onlyOnSubmit||false;if(this.form){this.formObj=LiveValidationForm.getInstance(this.form);this.formObj.addField(this);}this.oldOnFocus=this.element.onfocus||function(){};this.oldOnBlur=this.element.onblur||function(){};this.oldOnClick=this.element.onclick||function(){};this.oldOnChange=this.element.onchange||function(){};this.oldOnKeyup=this.element.onkeyup||function(){};this.element.onfocus=function(F){A.doOnFocus(F);return A.oldOnFocus.call(this,F);};if(!this.onlyOnSubmit){switch(this.elementType){case LiveValidation.CHECKBOX:this.element.onclick=function(F){A.validate();return A.oldOnClick.call(this,F);};case LiveValidation.SELECT:case LiveValidation.FILE:this.element.onchange=function(F){A.validate();return A.oldOnChange.call(this,F);};break;default:if(!this.onlyOnBlur){this.element.onkeyup=function(F){A.deferValidation();return A.oldOnKeyup.call(this,F);};}this.element.onblur=function(F){A.doOnBlur(F);return A.oldOnBlur.call(this,F);};}}},destroy:function(){if(this.formObj){this.formObj.removeField(this);this.formObj.destroy();}this.element.onfocus=this.oldOnFocus;if(!this.onlyOnSubmit){switch(this.elementType){case LiveValidation.CHECKBOX:this.element.onclick=this.oldOnClick;case LiveValidation.SELECT:case LiveValidation.FILE:this.element.onchange=this.oldOnChange;break;default:if(!this.onlyOnBlur){this.element.onkeyup=this.oldOnKeyup;}this.element.onblur=this.oldOnBlur;}}this.validations=[];this.removeMessageAndFieldClass();},add:function(A,B){this.validations.push({type:A,params:B||{}});return this;},remove:function(B,D){var E=false;for(var C=0,A=this.validations.length;C<A;C++){if(this.validations[C].type==B){if(this.validations[C].params==D){E=true;break;}}}if(E){this.validations.splice(C,1);}return this;},deferValidation:function(B){if(this.wait>=300){this.removeMessageAndFieldClass();}var A=this;if(this.timeout){clearTimeout(A.timeout);}this.timeout=setTimeout(function(){A.validate();},A.wait);},doOnBlur:function(A){this.focused=false;this.validate(A);},doOnFocus:function(A){this.focused=true;this.removeMessageAndFieldClass();},getElementType:function(){switch(true){case (this.element.nodeName.toUpperCase()=="TEXTAREA"):return LiveValidation.TEXTAREA;case (this.element.nodeName.toUpperCase()=="INPUT"&&this.element.type.toUpperCase()=="TEXT"):return LiveValidation.TEXT;case (this.element.nodeName.toUpperCase()=="INPUT"&&this.element.type.toUpperCase()=="PASSWORD"):return LiveValidation.PASSWORD;case (this.element.nodeName.toUpperCase()=="INPUT"&&this.element.type.toUpperCase()=="CHECKBOX"):return LiveValidation.CHECKBOX;case (this.element.nodeName.toUpperCase()=="INPUT"&&this.element.type.toUpperCase()=="FILE"):return LiveValidation.FILE;case (this.element.nodeName.toUpperCase()=="SELECT"):return LiveValidation.SELECT;case (this.element.nodeName.toUpperCase()=="INPUT"):throw new Error("LiveValidation::getElementType - Cannot use LiveValidation on an "+this.element.type+" input!");default:throw new Error("LiveValidation::getElementType - Element must be an input, select, or textarea!");}},doValidations:function(){this.validationFailed=false;for(var C=0,A=this.validations.length;C<A;++C){var B=this.validations[C];switch(B.type){case Validate.Presence:case Validate.Confirmation:case Validate.Acceptance:this.displayMessageWhenEmpty=true;this.validationFailed=!this.validateElement(B.type,B.params);break;default:this.validationFailed=!this.validateElement(B.type,B.params);break;}if(this.validationFailed){return false;}}this.message=this.validMessage;return true;},validateElement:function(A,C){var D=(this.elementType==LiveValidation.SELECT)?this.element.options[this.element.selectedIndex].value:this.element.value;if(A==Validate.Acceptance){if(this.elementType!=LiveValidation.CHECKBOX){throw new Error("LiveValidation::validateElement - Element to validate acceptance must be a checkbox!");}D=this.element.checked;}var E=true;try{A(D,C);}catch(B){if(B instanceof Validate.Error){if(D!==""||(D===""&&this.displayMessageWhenEmpty)){this.validationFailed=true;this.message=B.message;E=false;}}else{throw B;}}finally{return E;}},validate:function(){if(!this.element.disabled){var A=this.doValidations();if(A){this.onValid();return true;}else{this.onInvalid();return false;}}else{return true;}},enable:function(){this.element.disabled=false;return this;},disable:function(){this.element.disabled=true;this.removeMessageAndFieldClass();return this;},createMessageSpan:function(){var A=document.createElement("span");var B=document.createTextNode(this.message);A.appendChild(B);return A;},insertMessage:function(B){this.removeMessage();if((this.displayMessageWhenEmpty&&(this.elementType==LiveValidation.CHECKBOX||this.element.value==""))||this.element.value!=""){var A=this.validationFailed?this.invalidClass:this.validClass;B.className+=" "+this.messageClass+" "+A;if(this.insertAfterWhatNode.nextSibling){this.insertAfterWhatNode.parentNode.insertBefore(B,this.insertAfterWhatNode.nextSibling);}else{this.insertAfterWhatNode.parentNode.appendChild(B);}}},addFieldClass:function(){this.removeFieldClass();if(!this.validationFailed){if(this.displayMessageWhenEmpty||this.element.value!=""){if(this.element.className.indexOf(this.validFieldClass)==-1){this.element.className+=" "+this.validFieldClass;}}}else{if(this.element.className.indexOf(this.invalidFieldClass)==-1){this.element.className+=" "+this.invalidFieldClass;}}},removeMessage:function(){var A;var B=this.insertAfterWhatNode;while(B.nextSibling){if(B.nextSibling.nodeType===1){A=B.nextSibling;break;}B=B.nextSibling;}if(A&&A.className.indexOf(this.messageClass)!=-1){this.insertAfterWhatNode.parentNode.removeChild(A);}},removeFieldClass:function(){if(this.element.className.indexOf(this.invalidFieldClass)!=-1){this.element.className=this.element.className.split(this.invalidFieldClass).join("");}if(this.element.className.indexOf(this.validFieldClass)!=-1){this.element.className=this.element.className.split(this.validFieldClass).join(" ");}},removeMessageAndFieldClass:function(){this.removeMessage();this.removeFieldClass();}};var LiveValidationForm=function(A){this.initialize(A);};LiveValidationForm.instances={};LiveValidationForm.getInstance=function(A){var B=Math.random()*Math.random();if(!A.id){A.id="formId_"+B.toString().replace(/\./,"")+new Date().valueOf();}if(!LiveValidationForm.instances[A.id]){LiveValidationForm.instances[A.id]=new LiveValidationForm(A);}return LiveValidationForm.instances[A.id];};LiveValidationForm.prototype={initialize:function(B){this.name=B.id;this.element=B;this.fields=[];this.oldOnSubmit=this.element.onsubmit||function(){};var A=this;this.element.onsubmit=function(C){return(LiveValidation.massValidate(A.fields))?A.oldOnSubmit.call(this,C||window.event)!==false:false;};},addField:function(A){this.fields.push(A);},removeField:function(C){var D=[];for(var B=0,A=this.fields.length;B<A;B++){if(this.fields[B]!==C){D.push(this.fields[B]);}}this.fields=D;},destroy:function(A){if(this.fields.length!=0&&!A){return false;}this.element.onsubmit=this.oldOnSubmit;LiveValidationForm.instances[this.name]=null;return true;}};var Validate={Presence:function(B,C){var C=C||{};var A=C.failureMessage||"Can't be empty!";if(B===""||B===null||B===undefined){Validate.fail(A);}return true;},Numericality:function(J,E){var A=J;var J=Number(J);var E=E||{};var F=((E.minimum)||(E.minimum==0))?E.minimum:null;var C=((E.maximum)||(E.maximum==0))?E.maximum:null;var D=((E.is)||(E.is==0))?E.is:null;var G=E.notANumberMessage||"Must be a number!";var H=E.notAnIntegerMessage||"Must be an integer!";var I=E.wrongNumberMessage||"Must be "+D+"!";var B=E.tooLowMessage||"Must not be less than "+F+"!";var K=E.tooHighMessage||"Must not be more than "+C+"!";if(!isFinite(J)){Validate.fail(G);}if(E.onlyInteger&&(/\.0+$|\.$/.test(String(A))||J!=parseInt(J))){Validate.fail(H);}switch(true){case (D!==null):if(J!=Number(D)){Validate.fail(I);}break;case (F!==null&&C!==null):Validate.Numericality(J,{tooLowMessage:B,minimum:F});Validate.Numericality(J,{tooHighMessage:K,maximum:C});break;case (F!==null):if(J<Number(F)){Validate.fail(B);}break;case (C!==null):if(J>Number(C)){Validate.fail(K);}break;}return true;},Format:function(C,E){var C=String(C);var E=E||{};var A=E.failureMessage||"Not valid!";var B=E.pattern||/./;var D=E.negate||false;if(!D&&!B.test(C)){Validate.fail(A);}if(D&&B.test(C)){Validate.fail(A);}return true;},Email:function(B,C){var C=C||{};var A=C.failureMessage||"Must be a valid email address!";Validate.Format(B,{failureMessage:A,pattern:/^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i});return true;},Length:function(F,G){var F=String(F);var G=G||{};var E=((G.minimum)||(G.minimum==0))?G.minimum:null;var H=((G.maximum)||(G.maximum==0))?G.maximum:null;var C=((G.is)||(G.is==0))?G.is:null;var A=G.wrongLengthMessage||"Must be "+C+" characters long!";var B=G.tooShortMessage||"Must not be less than "+E+" characters long!";var D=G.tooLongMessage||"Must not be more than "+H+" characters long!";switch(true){case (C!==null):if(F.length!=Number(C)){Validate.fail(A);}break;case (E!==null&&H!==null):Validate.Length(F,{tooShortMessage:B,minimum:E});Validate.Length(F,{tooLongMessage:D,maximum:H});break;case (E!==null):if(F.length<Number(E)){Validate.fail(B);}break;case (H!==null):if(F.length>Number(H)){Validate.fail(D);}break;default:throw new Error("Validate::Length - Length(s) to validate against must be provided!");}return true;},Inclusion:function(H,F){var F=F||{};var K=F.failureMessage||"Must be included in the list!";var G=(F.caseSensitive===false)?false:true;if(F.allowNull&&H==null){return true;}if(!F.allowNull&&H==null){Validate.fail(K);}var D=F.within||[];if(!G){var A=[];for(var C=0,B=D.length;C<B;++C){var I=D[C];if(typeof I=="string"){I=I.toLowerCase();}A.push(I);}D=A;if(typeof H=="string"){H=H.toLowerCase();}}var J=false;for(var E=0,B=D.length;E<B;++E){if(D[E]==H){J=true;}if(F.partialMatch){if(H.indexOf(D[E])!=-1){J=true;}}}if((!F.negate&&!J)||(F.negate&&J)){Validate.fail(K);}return true;},Exclusion:function(A,B){var B=B||{};B.failureMessage=B.failureMessage||"Must not be included in the list!";B.negate=true;Validate.Inclusion(A,B);return true;},Confirmation:function(C,D){if(!D.match){throw new Error("Validate::Confirmation - Error validating confirmation: Id of element to match must be provided!");}var D=D||{};var B=D.failureMessage||"Does not match!";var A=D.match.nodeName?D.match:document.getElementById(D.match);if(!A){throw new Error("Validate::Confirmation - There is no reference with name of, or element with id of '"+D.match+"'!");}if(C!=A.value){Validate.fail(B);}return true;},Acceptance:function(B,C){var C=C||{};var A=C.failureMessage||"Must be accepted!";if(!B){Validate.fail(A);}return true;},Custom:function(D,E){var E=E||{};var B=E.against||function(){return true;};var A=E.args||{};var C=E.failureMessage||"Not valid!";if(!B(D,A)){Validate.fail(C);}return true;},now:function(A,D,C){if(!A){throw new Error("Validate::now - Validation function must be provided!");}var E=true;try{A(D,C||{});}catch(B){if(B instanceof Validate.Error){E=false;}else{throw B;}}finally{return E;}},fail:function(A){throw new Validate.Error(A);},Error:function(A){this.message=A;this.name="ValidationError";}};
