


		
		// change these values.  
		var downTimeStarts = new Date("December 12, 2001 08:00:00");
		var expires = new Date("December 12, 2002 08:00:00");
		var PreventSignOn = false;		// This is to set whether to prevent sign ons during the period.
		downTimeStarts = downTimeStarts.getTime();
		expires = expires.getTime();
		
		function spectrumUp() {
			var now = new Date();
			if ((now <= expires) && (now >= downTimeStarts) && (PreventSignOn)) {
				alert("");
				return false;
			}
			else return true;
		}
		
		var buttonClicked = false;
		var soAlertMsg = "";
		
		function checkNum(numstr) {
			var Msg = "";
			if (numstr.value == "") Msg = Msg + "\u2022 You did not enter your Member Number.\n";
			else {
				var pattern = /^\d+$/g	
				if(!numstr.value.match(pattern)) Msg = Msg + "\u2022 The Member Number should be numbers only.\n";
				if (numstr.value.length <  3) Msg = Msg + "\u2022 The Member Number should be at least three digits.\n";
			}
			if (Msg != "") numstr.value = "";
			soAlertMsg = soAlertMsg + Msg;
			return (Msg == "");
		}
		
		var cookiesEnabled = false
		
		function checkCookies() {
			var Msg = ""
			if (!cookiesEnabled)  {
				soAlertMsg = soAlertMsg + "\u2022 Cookies required: We need to set some non-persistent cookies in order to continue. Please enable cookies in your browser, reload the page, and try again.\n"
				document.getElementById("cookiewarning").style.display = "";
				return false;
			} else return true;
		}
		
		function checkboxcheck(){
			alert('Sorry, but it looks like you have disabled cookies, which are required if you want changing this setting to have any effect. Please re-enable cookies, reload the page, and then try again.');return false;
		}
		
		function validForm(form,e) {
			soAlertMsg = "";

			var clickedFirstOnButton = false; 
			if(e){
				if(document.getElementById("signonEntry").className == "") { 
					clickedFirstOnButton = true; 
				}
			}
			onlineBanking(true);
			
			if(!clickedFirstOnButton) {
				setTimeout(function(){
				if (form.remember.checked) {  	// Is "Remember Member Number" checked?
					setUserName(form);			// save the member number.
					setCheckMemory(true);		// record the fact that this was O.K. to keep checked.
				} else {						// Otherwise...
					ClearCookie("MemberNumber");// Erase the member number from the user's disk
					setCheckMemory(false);		// record the fact that the member explicitely unchecked the box
				}								// so that they don't have to do it again next time
			
				if (!buttonClicked) {
					var method = "new";
					if (spectrumUp()) {
						var NumOK = checkNum(form.User)
						var CookiesOK = (method == "new") ? checkCookies() : true;
						if (NumOK && CookiesOK) {
							buttonClicked = true;
							window.status = "Verifying Access Information.  One moment please...";
							document.SignOn.User.value = form.User.value;
							document.SignOn.submit();
						} else if (soAlertMsg != "") alert("Unable to sign on. You must correct the following problems in order to proceed:\n\n" + soAlertMsg);
					}
					
				}
					else alert("Your login request has already been submitted.");
				},200)
			}
		}
		
		
		function fillForm() {
			//** fill in user name from cookie
			
			if (getCheckMemory()) {  						// user has left box checked last time
				document.Logon.User.value = getUserName()	// retreive number from cookie
				if(document.Logon.User.value != "") onlineBanking(false)
			} else {
				document.Logon.User.value= "";
			}
			ClearCookie("VoyID"); //get rid of old PM cookie
			
			var ThreeDays = 3 * 24 * 60 * 60 * 1000;
			var expDate = new Date();
				fixDate(expDate);
			expDate.setTime (expDate.getTime() - ThreeDays);
			document.cookie = "VoyID=X; expires=" + expDate.toGMTString() + "; path=/; domain=.providentcu.org";
			return true;
		}
		
		
		function GetCookie (name) {
			//  Returns the value of the specified cookie or null if the cookie doesn't exist
			var result = null;
			var myCookie = " " + document.cookie + ";";
			var searchName = " " + name + "=";
			var startOfCookie = myCookie.indexOf(searchName)
			var endOfCookie;
		
			if (startOfCookie != -1) {
				startOfCookie += searchName.length; // skip past cookie name
				endOfCookie = myCookie.indexOf(";", startOfCookie);
				result = unescape(myCookie.substring(startOfCookie, endOfCookie));
			}
			return result;
		}
		
		function GetSubCookie(cookieName,key){
			var value = ""
			
			var allKeys = GetCookie (cookieName)
			if (allKeys) {
				allKeys = allKeys.split("&")
				for(var pair = 0; pair < allKeys.length; pair++) {
					if(allKeys[pair].indexOf(key + "=") > -1) {	
						var value = allKeys[pair].split("=")[1]
					}
				}
			}
			return value;
		}
		
		function SetCookie(name, value, expires, path, domain, secure) {
			// Adds or replaces a cookie. Use null for parameters that you don't care about
			var expString = ((expires == null)
		
			? "" : ("; expires=" + expires.toGMTString()))
		
			var pathString = ((path == null) ? "" : ("; path=" + path))
			var domainString = ((domain == null)
		
			? "" : ("; domain=" + domain))
		
			var secureString = ((secure == true) ? "; secure" : "")
			
			if(value.indexOf("=") > -1) {	
				var subKey = value.split("=")[0]
				var subValue = value.split("=")[1]
				
				main = GetCookie(name)// Such as "userprefs". Don't overwrite contents
				if(main != null) {
					if(main.indexOf("" + subKey + "=") > -1) {  // key exists already within this named cookie
						var pattern = new RegExp("" + subKey + "=[^;=&]", "gi");
						main = main.replace(pattern,value)
					} else {
						if(main != "") main += "&"
						main += value
					}
					value = main;
				}
			}
			value = escape(value)
			value = value.replace(/%3D/gi,"=")
			value = value.replace(/%26/gi,"&")
			document.cookie = name + "=" + (value) + expString + pathString + domainString + secureString;
		}
		
		function ClearCookie(name) {
			// Removes a cookie by setting an expiration date three days in the past
			var ThreeDays = 3 * 24 * 60 * 60 * 1000;
			var expDate = new Date();
				fixDate(expDate);
			expDate.setTime (expDate.getTime() - ThreeDays);
			document.cookie = name + "=ImOutOfHere; expires="
			+ expDate.toGMTString();
		}
		
		function fixDate(date) {
			// date - any instance of the Date object
			// * you should hand all instances of the Date object to this function for "repairs"
			var base = new Date(0);
			var skew = base.getTime();
			if (skew > 0)
			date.setTime(date.getTime() - skew);
		}
		
		function getUserName() {
			var name = GetCookie("MemberNumber");
			if (!name) name = "";
			//else document.Logon.pin.focus();		
			return name;
		}
		
		function setUserName(theForm) {
			var now = new Date();
			fixDate(now);
			now.setTime(now.getTime() + 31 * 24 * 60 * 60 * 1000);
			var name = theForm.User.value;
			if (!name) name = "";
			SetCookie("MemberNumber", name, now);
			return name;
		}
		
		function setCheckMemory(TF) {
			if (TF) {
				var now = new Date();
				fixDate(now);
				now.setTime(now.getTime() + 31 * 24 * 60 * 60 * 1000 * 3);
				SetCookie("userprefs", "RememberIfChecked=1", now, "/", "providentcu.org");
			}
			else {
				SetCookie("userprefs", "RememberIfChecked=0", now, "/", "providentcu.org");
			}
		}
		
		function getCheckMemory(TF) {
			var val = GetSubCookie("userprefs", "RememberIfChecked");
			//if (val == "1" || val == null || val == "") {
			if (val == "1") {
				document.Logon.remember.checked = true;
				return true;
			} else {
				document.Logon.remember.checked = false;
				return false;
			}
			
		}
		
		// This stuff handles "Return" or "Enter" key being pressed:
		
		var nextfield = "User"; // name of first box on page
		netscape = "";
		ver = navigator.appVersion; len = ver.length;
		for(iln = 0; iln < len; iln++) if (ver.charAt(iln) == "(") break;
		netscape = (ver.charAt(iln+1).toUpperCase() != "C");
		
		function keyDown(DnEvents) { // handles keypress
			var focusForm = document.Logon;
			// determines whether Netscape or Internet Explorer
			k = (netscape) ? DnEvents.which : window.event.keyCode;
			if (k == 13 || k == 3) { // enter key pressed

				method = "new";
				if (nextfield == "method") nextfield = "done"
				if (nextfield == "pin") nextfield = "done"
				if (nextfield == "done") {
					validForm(focusForm);
					return false; // submit, we finished all fields
				}
				else if (nextfield == "ignore") {
					return true; // let the link handle it
				}
				else { // we're not done yet, send focus to next box
					eval("document." + focusForm.name + "." + nextfield + ".focus()");
					return false;
				}
			}
		}
var startPage, lastPart, startID, tabsOrNo


function setStart(startMenu) {
	var strStart = startMenu.options[startMenu.selectedIndex].value; 
	switch (strStart) {
		case "estatement":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SOestatements";
			break;
		case "billmanager":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SObills";
			break;
		case "newcd":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "newcd";
			document.SignOn.EchoStartID.value = "SObalances";
			break;
		case "newmm":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "newmm";
			document.SignOn.EchoStartID.value = "SObalances";
			break;
		case "stoppay":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "stoppay";
			document.SignOn.EchoStartID.value = "SObalances";
			break;
		case "transfer":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SOtransfer";
			break;
		case "transferxaccount":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "transferxaccount";
			document.SignOn.EchoStartID.value = "SOtransfer";
			break;
		case "transferprincipal":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "transferprincipal";
			document.SignOn.EchoStartID.value = "SOtransfer";
			break;
		case "transferwire":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "transferwire";
			document.SignOn.EchoStartID.value = "SOtransfer";
			break;
		case "transferwithdraw":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "transferwithdraw";
			document.SignOn.EchoStartID.value = "SOtransfer";
			break;
		case "securee-mail":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SOreceived";
			break;
		case "securecompose":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SOcompose";
			break;
		case "securesent":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SOsent";
			break;
		case "changepin":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SOPIN";
			break;
		case "changequestions":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SOchallengePM";
			break;
		case "changeimage":
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SOpassmarkPM";
			break;
		default:
			document.SignOn.EchoStartHere.value = "A";
			document.SignOn.EchoLastPart.value = "";
			document.SignOn.EchoStartID.value = "SObalances";
	}
}

