window.addEvent('domready', function() {
	var stretchers = $$('div.inner').getElements('div.t2');
	var togglers = $$('div.inner').getElements('div.t1');
	var accordion = new Accordion(togglers, stretchers, {
		display: Cookie.read('accordion'),
		alwaysHide: true,
		duration: 'short',
		opacity: false,
		onActive: function(toggler, element){
			for (var x=0; x < togglers.length; x++){
				if (togglers[x] == toggler){
					Cookie.write('accordion',x, {path: '/'});
				}
			}
			toggler.setStyle('border-bottom', '1px dashed #d1d1d1');
			toggler.getElement('span[class~=arrow]').innerHTML = '▲';
			if (!toggler.hasClass('last')) element.setStyle('border-bottom', '1px solid #d1d1d1');
		},
		onBackground: function(toggler, element){
			toggler.getElement('span[class~=arrow]').innerHTML = '▼';
			toggler.setStyle('border-bottom', (toggler.hasClass('last') ? 'none' : '1px solid #d1d1d1'));
			element.setStyle('border-bottom', 'none');
		}
	}, $('accordion'));
	accordion.display(Cookie.read('accordion'));
});

window.addEvent('domready', function(){
	var basketSlide = new Fx.Slide('basket_contents', {
		duration: 'short'
	});
	$('basket_heading').addEvent('click', function(e){
		e.stop();
		basketSlide.toggle();
	});
	basketSlide.addEvent('complete',function(){
		$('basket_heading').set('html', basketSlide.open ? 'Hide basket' : 'View basket');
	    Cookie.write('basket', basketSlide.open, {path: '/'});
	});

	if (Cookie.read('basket') != "true"){
		basketSlide.hide();
		Cookie.write('basket', basketSlide.open, {path: '/'});
		$('basket_heading').set('html','View basket');
	}
});

function show_message(msg){
	var msgSlide = new Fx.Slide('message', {
		duration: 'short'
	});
	msgSlide.slideIn();
	msgSlide.slideOut.delay(5000,msgSlide);
}

var tl = { 
	lines: [
		'Established 1988, Over 21 years trading',
		'Quality products, quality service and quality support',
		'Regional trade counters and distribution partners around the UK',
		'Stockist for all the leading manufacturers',
		'Numerous quantity rates available for most products',
		'Signal strength meter hire/trial service',
		'Regular customers receive FREE DELIVERY on our fleet of vehicles within Branch catchment area',
		'FREE Mainland UK OVERNIGHT CARRIER for orders over £100+vat',
		'International mail-order available, Europe or Worldwide!',
		'View the live stock position at all branches',
		'Full IRS Support – planning and design service, on-site survey and ongoing technical assistance.'
	],
	count: 0
};
	
function taglines(){
	
	var tlfx = new Fx.Slide($('tagline'), {
		mode: 'horizontal'
	}).hide();
	
	var tsl = function(){
		tlfx.toggle().chain(switchcounter).chain(tlfx.toggle);
	};
	
	tsl.periodical(6000, tsl);  
};

function switchcounter(){
		if (tl.count >= tl.lines.length) tl.count = 0;
		$('tagline').innerHTML = tl.lines[tl.count];
		tl.count++;
}

window.addEvent('domready', function(){
	$$('a').each(function(link){
		var r=new RegExp('\/\/'+window.location.hostname+'\/');
		if (r.exec(link.href) == null || link.rel == "ext"){
			var title = link.title ? link.title + ' (opens in new window)' : 'opens in new window';
			link.setProperties({'target':'_blank', 'title': title});
		}
	});
});

var qoc_val = function (){
	var r=new RegExp('_([0-9]+)$');
	var num = r.exec(this.id)[1];
	if (this.value != ''){
		var v=$('qoq_'+num);
		if (v.value == ''){
			v.value = 1;
		}
	}
}

var markers = {
	brighton:          ['50.838321', '-0.188682', 1],
	cardiff:           ['51.498597', '-3.139013', 1],
	dartford:          ['51.452373', '0.177534',  1],
	maidstone:         ['51.294525', '0.49826',   1],
	hemel_hempstead:   ['51.740006', '-0.477767',  1],
	exeter:            ['50.73054',  '-3.40963',  0],
	wembley:           ['51.56468',  '-0.299001', 0],
	newcastle:         ['54.966325', '-1.668569', 0],
	liverpool:         ['53.461857', '-2.944477', 0],
	cheltenham:        ['51.903696', '-2.080351', 0],
	reading:           ['51.41182',  '-1.138389', 0],
	northern_ireland:  ['54.762287', '-6.640417', 0],
	aylesbury:         ['51.821322', '-0.819312', 0],
	bournemouth:       ['50.741162', '-1.979211', 0],
	glasgow:           ['55.906165', '-4.41377',  0],
	fife:              ['56.176136', '-3.201319', 0],
	middlesbrough:     ['54.570348', '-1.174989', 0],
	sunderland:		   ['54.8429',   '-1.487969', 0],
	manchester:        ['53.485735', '-2.062562', 0]
};

function gmap(place, id){
	if (GBrowserIsCompatible()) {
		var map = new GMap2($(id));
		map.setCenter(new GLatLng(markers[place][0], markers[place][1]), 13);
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		var baseIcon = new GIcon(G_DEFAULT_ICON);
		baseIcon.shadow = "/images/map/shadow.png";
		baseIcon.iconSize = new GSize(21, 34);
		baseIcon.shadowSize = new GSize(40, 37);
		baseIcon.iconAnchor = new GPoint(11, 34);
		baseIcon.infoWindowAnchor = new GPoint(9, 2);
	
		function createMarker(point, name, counter) {
			// Create a lettered icon for this point using our icon class
			var letter = name.substring(0,1).toUpperCase();
			var letteredIcon = new GIcon(baseIcon);
			letteredIcon.image = "/images/map/"+name+".png";
			// Set up our GMarkerOptions object
			markerOptions = { icon:letteredIcon };
			var marker = new GMarker(point, markerOptions);
			GEvent.addListener(marker, "click", function() {
				marker.openInfoWindowHtml('<a href="/counters/'+name+'>'+name.replace(/_/,' ').capitalize()+(counter == 1 ? ' Trade Counter' : ' Distributor')+'</a>');
			});
			return marker;
		}
		for (var m in markers){
			var latlng = new GLatLng(markers[m][0], markers[m][1]);
			map.addOverlay(createMarker(latlng, m, markers[m][2]));
		}
	}
}

function vat_rate(){
	var t = new Date;
	var ut = parseInt(t.getTime()/1000);
	return (ut >= 1228050000 && ut < 1262264400) ? 0.15 : 0.175;
}

function calculate_carriage(){
	var cs = $('carriage_form').getElements('select.carriage');
	var r = new RegExp('£(.*)$');
	var cost = 0;
	var x=0;
	cs.each(function(c){
		var s = c.getSelected()[0].innerHTML;
		var v = r.exec(s);
		if (v.length > 0) cost += parseFloat(v[1]);
	});
	$('carriage').innerHTML = '£'+addCommas(cost.toFixed(2));
	var net_total = parseFloat($('net_total').innerHTML.substring(1).replace(/,/,''));
	var vat = ((cost + net_total) * vat_rate());
	var grand_total = vat + net_total + cost;
	$('vat_total').innerHTML = '£'+addCommas(vat.toFixed(2));
	$('grand_total').innerHTML = '£'+addCommas(grand_total.toFixed(2));
}

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;
}



