/* SWFObject v2.1 <http://code.google.com/p/swfobject/>
	Copyright (c) 2007-2008 Geoff Stearns, Michael Williams, and Bobby van der Sluis
	This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/

//
var project_abbrv = '';

var tab;
var mode;

var ie6 = false /*@cc_on || @_jscript_version < 5.7 @*/;
var temp_string = '';
var i = 0;
var temp = null;
var page_vars = {};
var view_setter = {};

/** general cross browser, array, string and other helper functions */

// search for and return value of string between one or two sub strings
function fStringBetween(in_src, in_beginning, in_ending) {
	var i = in_src.indexOf(in_beginning) + in_beginning.length;

	if(i >= 0) {
		if(in_ending != null) {
			if((t = in_src.indexOf(in_ending, i)) >= 0) {
				return in_src.substring(i, t);
			} else {
				return in_src.substring(i);
			}
		} else {
			return in_src.substring(i);
		}
	}

	return null;
}

function fGetArrayWithout(in_element, in_array) {
	var return_array = new Array();

	for(var i in in_array) {
		if(in_array[i] != in_element) {
			return_array[i] = in_array[i];
		}
	}

	return return_array;
}

function fRemoveFromArray(in_element, in_array) {
	for(var i in in_array) {
		if(in_array[i] == in_element) {
			in_array = in_array.splice(i, 0);
		}
	}

	return in_array;
}

function fTrim(str, chars) {
	return fLtrim(fRtrim(str, chars), chars);
}
 
function fLtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}
 
function fRtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

function fPrettyGET(in_number) {
	var vars_prefix = document.domain + '/';
	var i = document.location.href.indexOf(vars_prefix) + vars_prefix.length;
	var vars = null;
	
	if(i > 0) {
		vars_prefix = document.location.href.substring(i);
		vars = vars_prefix.split('/');

		if(vars != null && vars[in_number] != null) {
			return vars[in_number];
		}
	}

	return null;
}

function fAddClass(element, classname) {
	var cur_class = element.className;
	var index = 0;
	
	if(index = cur_class.indexOf(classname) >= 0) {
		return element.className;
	} else {
		if(element.className.length > 0) {
			element.className += (' ' + classname);
		} else {
			element.className = classname;
		}
	}
	
	return element.className;
}

function fRemoveClass(element, classname) {
	var cur_class = element.className;
	var index = 0;

	if(index = cur_class.indexOf(classname) == -1) {
		return element.className;
	} else {
		var str_before = cur_class.substring(0, index);
		var str_after = fTrim(cur_class.substring(index + classname.length), ' ');

		if(str_after.length > 0) {
			str_after += ' ';
		}

		element.className = str_before + str_after;
	}

	return element.className;
}

// read "get" variable from url
function fGET(in_var) {
	var i = document.location.href.indexOf(in_var + '=') + in_var.length + 1;
	
	if(i > 0) {
		if((t = document.location.href.indexOf('&', i)) >= 0) {
			return document.location.href.substring(i, t);
		} else {
			return document.location.href.substring(i);
		}
	}

	return null;
}

// cross browser add event listener for IE and FF
function fAddEventListener(in_object, in_event, in_function) {
	if (in_object.attachEvent) {
		in_object.attachEvent("on" + in_event, in_function);
	} else if (in_object.addEventListener) {
		in_object.addEventListener(in_event, in_function, false);
	}
}

function fGetAttribute(in_element, in_attribute_name, in_fail) {
	if(in_element != null) {
		switch(in_attribute_name) {
			case 'style':
				if(in_element.style) return in_element.style;
				break;
			case 'class':
			case 'className':
				if(in_element.className) return in_element.className;
			default:
				if(in_element.getAttribute(in_attribute_name) != null) {
					return in_element.getAttribute(in_attribute_name);
				}
		}
	}

	return in_fail != null ? in_fail : '';
}

/** on page load, initialize for section */

// based off of the tab and mode, run another initialization function
function fathomFrontEnd() {
	var section = null;
	var page_type = null;
	var detail = null;
	var category = null;
	
	section = fPrettyGET(0);
	section = section.substr(0, section.indexOf('.'));
	
	enableTooltips();
	$('.hidden').bgiframe();

	if(section != null) {
		if(section != 'bad_page_name') {
			var outgoing_links = new Array();
			var outgoing_emails = new Array();

			page_vars.outgoing_links_urls = new Array();
			page_vars.outgoing_email_addresses = new Array();
			
			var valid_domain = 'simsburybank.com';
			
			var all_links = document.getElementsByTagName('a');
			var cur_href = '';
			var outgoing = false;
			var all_hrefs = '';

			if(all_links != null && all_links.length > 0) {
				for(i = 0; i < all_links.length; i++) { //
					cur_href = fGetAttribute(all_links[i], 'href', '');

					all_hrefs += cur_href;
					
					if(cur_href != '') {
						if((cur_href.indexOf('http://') >= 0 || cur_href.indexOf('www') >= 0) && (cur_href.indexOf(valid_domain) == -1 && cur_href.indexOf('fathomdev.net') == -1)) {
							all_links[i].href = '#';
							all_links[i].rel = 'outgoing_link-' + outgoing_links.length;
							all_links[i].target = '_self';
							outgoing_links.push(all_links[i]);
							page_vars.outgoing_links_urls.push(cur_href);
						} else if(cur_href.indexOf('mailto:') >= 0) {
							all_links[i].href = 'javascript:void(0);';
							all_links[i].rel = 'outgoing_email-' + outgoing_emails.length;
							all_links[i].target = '_self';
							outgoing_emails.push(all_links[i]);
							page_vars.outgoing_email_addresses.push(cur_href)
						}
					}
				}
			}

			for(i = 0; i < outgoing_links.length; i++) {
				fAddEventListener(outgoing_links[i], 'click', warnOfOutgoingLink);
			}

			for(i = 0; i < outgoing_emails.length; i++) {
				fAddEventListener(outgoing_emails[i], 'click', warnOfOutgoingEmail);
			}
		}
	}
}

function confirmation(x,y) {
	var answer = confirm(y)
	if (answer) {
		window.location = x;
	} else { }
}

function warnOfOutgoingEmail(e) {
	targ = fGetTarget(e);
	if(targ.tagName == 'SPAN' || targ.tagName == 'B') {
		targ = targ.parentNode;
	}

	rel = fGetAttribute(targ, 'rel', '');
	
	if(rel.length > 0) {
		outgoing_email = page_vars.outgoing_email_addresses[parseInt(rel.substring(15))];
		confirmation(outgoing_email,'Emails are not encrypted therefore we advise you not to send account or other sensitive information via email.');
	}
}

function warnOfOutgoingLink(e) {
	targ = fGetTarget(e);
	if(targ.tagName == 'SPAN' || targ.tagName == 'B') {
		targ = targ.parentNode;
	}

	rel = fGetAttribute(targ, 'rel', '');
	
	if(rel.length > 0) {
		outgoing_link = page_vars.outgoing_links_urls[parseInt(rel.substring(14))];
		
		if(outgoing_link.indexOf('http://') == 0) {
			outgoing_link = outgoing_link.substring(7);
		}

		goToUrl(outgoing_link);
	}
}

// run initialization function after page load
if(typeof(MooTools) != "undefined") { 
	window.addEvent('domready', fathomFrontEnd);
} else {
	fAddEventListener(window, 'load', fathomFrontEnd);
}

function fGetTarget(in_event) {
	return in_event.srcElement != null ? in_event.srcElement : in_event.target;
}

function fInclude(libraryName, hardInclude) {
	var scripts = document.getElementsByTagName('script');
	
	var scr = document.createElement("script");

	scr.type="text/javascript";
	scr.src = libraryName;

	// we could append this new node in different ways, for now this is workign in IE 6+, FF, and Safari 3+
	if(hardInclude != null && hardInclude == true) {
		//document.writeln('<script type="text/javascript" src="' + libraryName + '"><\/script>');
	} else {
		scripts[0].parentNode.appendChild(scr);
	}
	//scripts[scripts.length].parentNode.insertBefore(libraryName ,scripts[scripts.length]);
	//
}

function fFindMyForm(element) {
	if(element.nodeName == 'FORM' || element.nodeName == 'form') {
		return element;
	}

	if(element.parentNode != null) {
		return fFindMyForm(element.parentNode);
	}

	return null;
}

function fSubmitMyForm(element) {
	var theform = fFindMyForm(element);
	if(theform) {
		for(i = 0; i < document.forms.length; i++) {
			if(document.forms[i].id == theform.id) {
				document.forms[i].submit();
			}
		}
	}
}

	function __xmlhttp_request()
	{
		var XMLHttpObject;
			
		if(window.XMLHttpRequest)
		{
			XMLHttpObject = new XMLHttpRequest();
		}
		else if(window.ActiveXObject)
		{
			XMLHttpObject = new ActiveXObject("Microsoft.XMLHTTP"); 
		}
			
		return XMLHttpObject;
	}
	
	function __get_events()
	{
		var formObject = document.forms['theForm'];
		
		if(formObject)
		{
			var XMLHttpObject = __xmlhttp_request();
			
			XMLHttpObject.open('POST','rpc.php?mode=validate');
			
			XMLHttpObject.onreadystatechange = function()
			{
				if(XMLHttpObject.readyState == 4)
				{
					if(XMLHttpObject.status == 200)
					{
						xmlData = XMLHttpObject.responseXML;
						
						if(xmlData.getElementsByTagName("date")[0].firstChild.nodeValue.toLowerCase() == "null" || xmlData.getElementsByTagName("end")[0].firstChild.nodeValue.toLowerCase() == "null")
						{
							alert('Fatal Error ! ');
							return false;
						}
						else
						{
							date = xmlData.getElementsByTagName("date")[0].firstChild.nodeValue.split("-");
							dateElements = new Array('day','month','year');
							
							end = xmlData.getElementsByTagName("end")[0].firstChild.nodeValue.split("-");
							endDateElements = new Array('endday','endmonth','endyear');
							
							for(i=0 ; i<dateElements.length ; i++)
							{	
								if(formObject[dateElements[i]])
								{	
									for(j=0 ; j<formObject[dateElements[i]].options.length ; j++)
									{
										if(formObject[dateElements[i]].options[j].value == date[i])
										{
											formObject[dateElements[i]].options[j].selected = true;	
											break;
										}
									}
								}	
								
								if(formObject[endDateElements[i]])
								{	
									for(j=0 ; j<formObject[endDateElements[i]].options.length ; j++)
									{
										if(formObject[endDateElements[i]].options[j].value == end[i])
										{
											formObject[endDateElements[i]].options[j].selected = true;											
											break;
										}
									}
								}														
							}
							
							window.location.href = "?start=" + date[1] + "/" + date[0] + "/" + date[2] + "&end=" + end[1] + "/" + end[0] + "/" + end[2];
							return false;																	
						}						
					}
				}
			}
			
			string = "date=" + formObject['month'].options[formObject['month'].selectedIndex].value + "/" + formObject['day'].options[formObject['day'].selectedIndex].value + "/" + formObject['year'].options[formObject['year'].selectedIndex].value + "&end=" + formObject['endmonth'].options[formObject['endmonth'].selectedIndex].value + "/" + formObject['endday'].options[formObject['endday'].selectedIndex].value + "/" + formObject['endyear'].options[formObject['endyear'].selectedIndex].value;
			
			XMLHttpObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			XMLHttpObject.send(string);
		}
	}
	
	function __toggle_buttons(value)
	{
		var formObject = document.forms['theForm'];
		
		for(i=0 ; i<formObject.elements.length ; i++)
		{
			if(formObject.elements[i].type == "button" || formObject.elements[i].type == "reset" || formObject.elements[i].type == "submit")
			{
				formObject.elements[i].disabled = (value == 'y' ? true : false);			
			}
		}	
	}

	function __search_events()
	{
		var formObject = document.forms['theForm'];
		var error = false;
		
		if(formObject)
		{
			if(formObject['keyword'].value.replace(/\s+/g).length == 0 || formObject['keyword'].value.toLowerCase() == "enter keywords")
			{
				error = true;
				
				alert('Please enter a keyword ! ');
				formObject['keyword'].focus();				
			}
			
			if(error)
			{
				return false;
			}	
			else
			{
				formObject.method = 'get';
				formObject.submit();
				
				return true;
			}		
		}
	}	

	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_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 goToUrl(x){
		MM_showHideLayers('hiddenLayer','','show');
		document.getElementById('url').innerHTML='<a href="http://' + x + '" target="_new" onclick="MM_showHideLayers(\'hiddenLayer\',\'\',\'hide\');" >Continue</a>';

	}