// General scripts

// Google analytics

//var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
//document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

try {
var pageTracker = _gat._getTracker("UA-3080456-1");
pageTracker._trackPageview();
} catch(err) {};

// Online Banking

function setAction() {
	if(	document.Remote.loginTo.selectedIndex == 1){
		document.Remote.nmUID.value = document.Remote.AccessID.value;
		document.Remote.action = 'https://www.securecashmgnt.com/EBC_EBC1961/EBC1961.ASP?WCI=Process&WCE=RemoteLogon&IRL=T';
		pageTracker._trackPageview('/onlinebanking/business');
	}
	else
	{
	document.Remote.action = 'https://ns.bankbyweb.net/pbi_pbi1961/pbi1961.asp?WCI=RemoteLogin&Rt=211373102&LogonBy=connect3&PRMACCESS=Account';
	pageTracker._trackPageview('/onlinebanking/personal');
	}
}

function doLoginRefresh(){
	if (document.Remote.AccessIDVisible.value != "" ){
		document.Remote.AccessID.value = document.Remote.AccessIDVisible.value;
		document.Remote.AccessIDVisible.value = "";
	setAction();
	document.Remote.submit();
	}
	else
	{
	alert("\n Please Enter a valid Access ID and Password.  Thank you!\n\n\t"); 
	return false;
	}	
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

// mootools
window.addEvent('domready', function() {
	// Table Alternating colors
	var count = 0;
	$$('table.styledtable tr').each(function(el) {
	el.addClass(count++ % 2 == 0 ? 'odd' : 'even');
	});
	
	// Tabs
	if ($(document.body).hasClass('h_tabs')) {
		var tabs = new MGFX.Tabs('.tabs','.tabpanels',{
		autoplay: true,
		transitionDuration:0,
		slideInterval:6000,
		hover:true
		});	
	};
	
	// Category Tabs
	
	function catEqualHeights() {
		var catHeight = 0;
		catDivs = $$('#catFeaturesxybg','.catFeatPanels');
		catDivs.each( function(e){ if (e.offsetHeight > catHeight){  catHeight = e.offsetHeight; }});
		$$('.catFeatPanels').setStyle( 'height', (catHeight - 83) + 'px' );
		$$('#catFeatures').setStyle( 'height', (catHeight - 11) + 'px' );
	};
	
	if ($(document.body).hasClass('featuretabs')) {
		catEqualHeights();
		var tabs = new MGFX.Tabs('.catTabs','.catFeatPanels',{
		autoplay: true,
		transitionDuration:0,
		slideInterval:6000,
		hover:false
		});	
	};
	
	// Tabs Panel Pages with varible height
	
	if ($(document.body).hasClass('tabpanelsbox')) {
		tabs_array = $$('.tabs li a');
		tabs_li_array = $$('.tabs li');
		panels_array = $$('.tabpanels');
		tabs_array.each( function(e, index){ 
			e.addEvent('mouseenter', function(event){ 
				event.stop();
				pageChosen = e.href;
				//alert(pageChosen);
				//$('tabpanels_ajax_box').load(pageChosen);
				tabs_array.removeClass('active');
				e.toggleClass('active');
				tabs_li_array.removeClass('active');
				tabs_li_array[index].toggleClass('active');
				panels_array.setStyle('display', 'none');
				panels_array[index].setStyle('display', 'block');
			});
		});
	};
	
	//Locator Map
	if ($(document.body).hasClass('locationmap')) {
		
		//master counties list for select list and associative array lookup
		var counties = new Array("Barnstable","Berkshire","Bristol","Dukes","Essex","Franklin","Hampden","Hampshire","Middlesex","Nantucket","Norfolk","Plymouth","Suffolk","Worcester");
		counties.sort(); //sort the list to cover any mistakes 
		
		//associative array of cities related to counties
		var cities = new Array();
		cities["Barnstable"] = "Barnstable,Bourne,Brewster,Chatham,Dennis,Eastham,Falmouth,Harwich,Mashpee,Orleans,Provincetown,Sandwich,Truro,Wellfleet,Yarmouth";
		cities["Berkshire"] = "Adams,Alford,Becket,Cheshire,Clarksburg,Dalton,Egremont,Florida,Great Barrington,Hancock,Hinsdale,Lanesborough,Lee,Lenox,Monterey,Mount Washington,New Ashford,New Marlborough,North Adams,Otis,Peru,Pittsfield,Richmond,Sandisfield,Savoy,Sheffield,Stockbridge,Tyringham,Washington,West Stockbridge,Williamstown,Windsor";
		cities["Bristol"] = "Acushnet,Attleboro,Berkley,Dartmouth,Dighton,Easton,Fairhaven,Fall River,Freetown,Mansfield,New Bedford,North Attleborough,Norton,Raynham,Rehoboth,Seekonk,Somerset,Swansea,Taunton,Westport";
		cities["Dukes"] = "Chilmark,Edgartown,Gay Head,Gosnold,Oak Bluffs,Tisbury,West Tisbury";
		cities["Essex"] = "Amesbury,Andover,Beverly,Boxford,Danvers,Essex,Georgetown,Gloucester,Groveland,Hamilton,Haverhill,Ipswich,Lawrence,Lynn,Lynnfield,Manchester-by-the-Sea,Marblehead,Merrimac,Methuen,Middleton,Nahant,Newbury,Newburyport,North Andover,Peabody,Rockport,Rowley,Salem,Salisbury,Saugus,Swampscott,Topsfield,Wenham,West Newbury";
		cities["Franklin"] = "Ashfield,Bernardston,Buckland,Charlemont,Colrain,Conway,Deerfield,Erving,Gill,Greenfield,Hawley,Heath,Leverett,Leyden,Monroe,Montague,New Salem,Northfield,Orange,Rowe,Shelburne,Shutesbury,Sunderland,Warwick,Wendell,Whately";  
		cities["Hampden"] = "Agawam,Blandford,Brimfield,Chester,Chicopee,East Longmeadow,Granville,Hampden,Holland,Holyoke,Longmeadow,Ludlow,Monson,Montgomery,Palmer,Russell,Southwick,Springfield,Tolland,Wales,West Springfield,Westfield,Wilbraham";
		cities["Hampshire"] = "Amherst,Belchertown,Chesterfield,Cummington,Easthampton,Goshen,Granby,Hadley,Hatfield,Huntington,Middlefield,Northampton,Pelham,Plainfield,South Hadley,Southampton,Ware,Westhampton,Williamsburg,Worthington";
		cities["Middlesex"] = "Acton,Arlington,Ashby,Ashland,Ayer,Bedford,Belmont,Billerica,Boxborough,Burlington,Cambridge,Carlisle,Chelmsford,Concord,Dracut,Dunstable,Everett,Framingham,Groton,Holliston,Hopkinton,Hudson,Lexington,Lincoln,Littleton,Lowell,Malden,Marlborough,Maynard,Medford,Melrose,Natick,Newton,North Reading,Pepperell,Reading,Sherborn,Shirley,Somerville,Stoneham,Stow,Sudbury,Tewksbury,Townsend,Tyngsborough,Wakefield,Waltham,Watertown,Wayland,Westford,Weston,Wilmington,Winchester,Woburn";
		cities["Nantucket"] = "Nantucket"; 
		cities["Norfolk"] = "Avon,Bellingham,Braintree,Brookline,Canton,Cohasset,Dedham,Dover,Foxborough,Franklin,Holbrook,Medfield,Medway,Millis,Milton,Needham,Norfolk,Norwood,Plainville,Quincy,Randolph,Sharon,Stoughton,Walpole,Wellesley,Westwood,Weymouth,Wrentham";
		cities["Plymouth"] = "Abington,Bridgewater,Brockton,Carver,Duxbury,East Bridgewater,Halifax,Hanover,Hanson,Hingham,Hull,Kingston,Lakeville,Marion,Marshfield,Mattapoisett,Middleborough,Norwell,Pembroke,Plymouth,Plympton,Rochester,Rockland,Scituate,Wareham,West Bridgewater,Whitman";
		cities["Suffolk"] = "Boston,Chelsea,Revere,Winthrop";   
		cities["Worcester"] = "Ashburnham,Athol,Auburn,Barre,Berlin,Blackstone,Bolton,Boylston,Brookfield,Charlton,Clinton,Douglas,Dudley,East Brookfield,Fitchburg,Gardner,Grafton,Hardwick,Harvard,Holden,Hopedale,Hubbardston,Lancaster,Leicester,Leominster,Lunenburg,Mendon,Milford,Millbury,Millville,New Braintree,North Brookfield,Northborough,Northbridge,Oakham,Oxford,Paxton,Petersham,Phillipston,Princeton,Royalston,Rutland,Shrewsbury,Southborough,Southbridge,Spencer,Sterling,Sturbridge,Sutton,Templeton,Upton,Uxbridge,Warren,Webster,West Boylston,West Brookfield,Westborough,Westminster,Winchendon,Worcester"; 
		
		//onchange county select list, build the cities select list
		function getCities(locChosen){
			//var countySelect = document.getElementById("county_select");

			var cities_array = cities[locChosen].split(','); //make a city array
			cities_array.sort(); //sort the list to cover any mistakes
		
			var citySelect = document.getElementById("city_select");
			citySelect.options.length = 0; //clear the city_select options
			
			
			var select_txt_option = new Element('option', {
				"text": "Select a city..."
			  }).inject(citySelect, 'inside');
			
			//traverse cities array, build an option for each city, add it to the city select
			var i = 0;
			for(i=0; i<cities_array.length; i++){
				var cityOption = document.createElement('option');
				cityOption.text = cities_array[i];
				cityOption.value = cities_array[i];
				
				//add option to the end of the list
				try {
				citySelect.add(cityOption, null); //might not work in IE
			} catch(ex) {
				citySelect.add(cityOption); //IE
			}
			}	
		}
		
		var locChosen = "";
		var step1_div = document.getElementById("locationstep1");
		var step2_div = document.getElementById("locationstep2");
		var locAreas = $$('#locationimgmap area');
		
		// Animation of first step
		var step1_div_fx = new Fx.Morph(step1_div, {duration: 'long', transition: Fx.Transitions.Bounce.easeOut});
				step1_div_fx.start({
					'left': [50, 0]
				});
		
		// Action for each area of the image map
		locAreas.each( function(e){ 
			e.addEvent('click', function(event){ 
				event.stop();
				locChosen = e.alt;
				getCities(locChosen);
				step2_div.style.visibility = "visible";
				var step2_div_fx = new Fx.Morph(step2_div, {duration: 'long', transition: Fx.Transitions.Bounce.easeOut});
				step2_div_fx.start({
					'left': [50, 0]
				});

			});
		});
		
		// Action as city is selected
		$('city_select').addEvent('change', function() {
			var citySelected = this.get('value');
			reg = /\s+/;
			citySelected.replace(reg,'+');
			cityUrl = 'SiteContent/City/' + citySelected + '.aspx';
			$('locationpage').load(cityUrl);
			$('county_name').set('html', locChosen);
			$('city_name').set('html', citySelected);
			Mediabox.scanPage.delay(1000);
		});

	};
		

	// Subnav Accordion
	var myAccordion = new Accordion($('subnav'), 'h3.toggler', 'div.element', {
		opacity: false,
		onActive: function(toggler, element){
			toggler.setStyle('background-position', '175px -26px');
		},
		onBackground: function(toggler, element){
			toggler.setStyle('background-position', '175px 2px');
		}
	});
	myAccordion.display(openNavIndex);
});
