function addEvent( obj, type, fn ) {
	if (obj.addEventListener) {
		obj.addEventListener( type, fn, false );
		EventCache.add(obj, type, fn);
	}
	else if (obj.attachEvent) {
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
		EventCache.add(obj, type, fn);
	}
	else {
		obj["on"+type] = obj["e"+type+fn];
	}
}

var EventCache = function(){
	var listEvents = [];
	return {
		listEvents : listEvents,
		add : function(node, sEventName, fHandler){
			listEvents.push(arguments);
		},
		flush : function(){
			var i, item;
			for(i = listEvents.length - 1; i >= 0; i = i - 1){
				item = listEvents[i];
				if(item[0].removeEventListener){
					item[0].removeEventListener(item[1], item[2], item[3]);
				};
				if(item[1].substring(0, 2) != "on"){
					item[1] = "on" + item[1];
				};
				if(item[0].detachEvent){
					item[0].detachEvent(item[1], item[2]);
				};
				item[0][item[1]] = null;
			};
		}
	};
}();
addEvent(window,'unload',EventCache.flush);

function treeexpand() {
	// Make sure we can do it
	if (!document.getElementById) return false;
	if (!document.getElementById('loans')) return false;
	if (!document.getElementsByTagName) return false;	
	
	// Hide all the sublists
	var uls = document.getElementById('loans').getElementsByTagName('ul');
	for (var i = 0, ulsLen = uls.length; i < ulsLen; i++) {
		uls[i].style.display = 'none';
	}

	// hijax the onclick
	var as = document.getElementById('loans').getElementsByTagName('a');
	for (var i = 0, asLen = as.length; i < asLen; i++) {
		as[i].onclick = function() {
				toggle(this);
				return false;
			}
	}
}

function toggle(obj) {
	// if a main category, background image plus/minus
	if (obj.parentNode.parentNode.className != "sublist" && obj.className != "single") {
		obj.className = (obj.className != 'expanded' ? 'expanded' : 'closed');
	}
	// else toggle fontweight and reset all others
	else {
		var bas = document.getElementById('loans').getElementsByTagName('a');
		for (var b = 0, bLen = bas.length; b < bLen; b++) {
			if (bas[b].parentNode.parentNode.className == "sublist") {		
				bas[b].style.fontWeight = 'normal';
			}			
		}
		obj.style.fontWeight = 'bold';
	}
	// get all the sublists for that link
	var theul = obj.parentNode.getElementsByTagName('ul');	
	// if a main category, toggle visibility
	for (var i = 0, ulLen = theul.length; i < ulLen; i++) {
		theul[i].style.display = (theul[i].style.display != 'none' ? 'none' : '' );
	}
	
	var divs = document.getElementById('description').getElementsByTagName('div');
	for (var i = 0, dsLen = divs.length; i < dsLen; i++) {
		divs[i].className = "hidden";
	}
	
	var toshow = obj.href.split("#");
	if (document.getElementById(toshow[1])) {
		document.getElementById(toshow[1]).className = "show";
	} else {
		document.getElementById('pageintro').className = "show";
	}
}

function setuprates() {
	// Make sure we can do it
	if (!document.getElementById) return false;
	if (!document.getElementById('ratesnav')) return false;
	if (!document.getElementsByTagName) return false;
	
	// hijax the onclick
	var as = document.getElementById('ratesnav').getElementsByTagName('a');
	for (var i = 0, asLen = as.length; i < asLen; i++) {
		as[i].onclick = function() {
				togglet(this);
				return false;
			}
	}
}

// toggle rates tables
function togglet(obj) {
	// set all the rates to non-active state except the one clicked
	var bas = document.getElementById('ratesnav').getElementsByTagName('a');
	for (var i = 0, basLen = bas.length; i < basLen; i++) {
		bas[i].className = "";
	}	
	obj.className = "arate";

	// get all the tables and hide them
	var ts = document.getElementById('boxtwo').getElementsByTagName('table');
	for (var i = 0, tsLen = ts.length; i < tsLen; i++) {
		ts[i].className = "hidden";
	}	
	
	//show the one of interest
	var toshow = obj.getAttribute("href").split("#");
	document.getElementById(toshow[1]).className = "show";	
}

function hideDesc() {
	// Make sure we can do it
	if (!document.getElementById) return false;
	if (!document.getElementById('description')) return false;
	if (!document.getElementsByTagName) return false;
	
	var divs = document.getElementById('description').getElementsByTagName('div');
	for (var i = 1, dsLen = divs.length; i < dsLen; i++) {
		divs[i].className = "hidden";
	}	
	
}

function show_warning(url) {
	var message = 	"You are being redirected to the " + url.title + " site.\n\n" +
					"Riverview Community Bank Web Site contains links to third-party Web Sites. These linked sites are not under the control of Riverview Community Bank, and Riverview Community Bank is not responsible for and makes no representation as to the accuracy of the contents of any linked site or any link contained in a linked site. Riverview Community Bank is providing these links only as a convenience to its customers, and the inclusion of a link does not imply endorsement of the linked site by Riverview Community Bank.";
	if(confirm(message)) {
		window.open(url.href,'riverviewlink','');	
	}
}

function show_warning2(url) {
	var message = 	"You are being redirected to the website of Riverview's credit card partner, Elan Financial Services, Inc. Upon entering the site, please review the Elan Privacy Policy and Security Standard.";
	if(confirm(message)) {
		window.open(url.href,'riverviewlink','');	
	}
}

function show_warning3(url) {
	var message = 	"You are being redirected to the website of Riverview's Merchant Bankcard partner, Merchant e-Solutions. Upon entering the site, please review the Merchant e-Solutions Privacy Policy and Security Standard.";
	if(confirm(message)) {
		window.open(url.href,'riverviewlink','');	
	}
}

addEvent(window,'load',treeexpand);
addEvent(window,'load',setuprates);

function verifyForm() {
	if (document.getElementById("contactus")) {	
		document.getElementById("contactus").onsubmit = function() {
			var name = document.getElementById("fullname");
			var email = document.getElementById("email");
			var email2 = document.getElementById("email2");
		
			if (name.value=="") {
				alert("Please enter your name");
				return false;
			}
			
			if (email.value=="" || !email.value.indexOf("@")) {
				alert("Please enter a valid email address");
				return false;
			}
			
			if (email.value != email2.value) {
				alert("Please verify your email address.");
				return false;
			}				
		}
	}
}
addEvent(window,'load',verifyForm);

function setHome() {
	if (document.getElementById("businesspage") && getCookie("home")) {
		if ( getCookie("home") == "businesspage" ) return true;
	}

	if (document.getElementById("personalpage") && getCookie("home")) {
		if ( getCookie("home") == "personalpage" ) return true;
	}

	if (document.getElementById("businesspage") || (document.getElementById("personalpage") && getCookie("home"))) {
		
		var homelink = document.createElement("a");
		homelink.setAttribute("id","makehome");
		homelink.setAttribute("href","#");
		
		homelink.onclick = function () {
			if (document.getElementById("businesspage")) {
				setCookie("home","businesspage");
			} else { setCookie("home","personalpage"); }
			
			document.getElementById("sidenav").removeChild(this);
		}
		
		var hometext = document.createTextNode("Make this your Riverview Homepage");
		homelink.appendChild(hometext);

		var sidedivs = document.getElementById("sidenav").getElementsByTagName("div");
		
		document.getElementById("sidenav").insertBefore(homelink, sidedivs[0]);
	}
}
addEvent(window,'load',setHome);

// Cookies get/set/delete
function getCookie( name ) {
	var start = document.cookie.indexOf( name + "=" );
	var len = start + name.length + 1;
	if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) {
		return null;
	}
	if ( start == -1 ) return null;
	var end = document.cookie.indexOf( ";", len );
	if ( end == -1 ) end = document.cookie.length;
	return unescape( document.cookie.substring( len, end ) );
}

function setCookie( name, value, expires, path, domain, secure ) {
	var today = new Date();
	today.setTime( today.getTime() );
	if ( expires ) {
		expires = expires * 1000 * 60 * 60 * 24;
	}
	var expires_date = new Date( today.getTime() + (expires) );
	document.cookie = name+"="+escape( value ) +
		( ( expires ) ? ";expires="+expires_date.toGMTString() : "" ) + //expires.toGMTString()
		( ( path ) ? ";path=" + path : "" ) +
		( ( domain ) ? ";domain=" + domain : "" ) +
		( ( secure ) ? ";secure" : "" );
}

function deleteCookie( name, path, domain ) {
	if ( getCookie( name ) ) document.cookie = name + "=" +
			( ( path ) ? ";path=" + path : "") +
			( ( domain ) ? ";domain=" + domain : "" ) +
			";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}
