//Experimental - please ignore
//iphone sniffer
/*
function iphoneSniff(){
	if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) {
		alert("hello iphone");
	}
}
*/

//create function for flash to call to delete itself (and div)
function flashDestroy(){
	$('homeAnim').destroy();
}

//reset site width for enhanced users
function siteReset() {
	var site = $('site');
	if(site){

		//fix safari bug
		//15 = width of safari scrollbar
		//1 = fix for 1 pixel alignment
		var macOffset = 0;
		var macPixel = 0;
		var winPixel = 0;
		if(Browser.Engine.webkit){
			macOffset = 15;
			macPixel = 1;
			//fix for windows safari
			if(Browser.Platform.win){
				winPixel = 2;
			}
		}
		
		var newWidth = parseInt((985-62) + ((window.getSize().x - 985) / 2));
		
		//remove margins from core build
		site.setStyle('margin', '0');
		
		if(window.getSize().x < 1003){
			//restore expected/core behaviour when browser is a smaller width than the site
			site.setStyles({
				"float": "left",
				"width": "100%",
				"margin-left": "19",
				"padding-left": "52"
			});
		}else{
			site.setStyles({
				"width": parseInt(newWidth-(macOffset/2)+macPixel)-winPixel,
				"margin-left": parseInt(newWidth-985+62-(macOffset/2)),
				"float": "none",
				"padding-left": "62"
			});
		}
		
	}
}

//resize home tab
function homeTabResize(){
	var newHeight = $$('.mastHead')[0].getCoordinates().height;
	var divPadding = 20;
	var TabGraphicHeight = 154;
	
	//IE6 min-height fix
	if(Browser.Engine.version == 4 & newHeight < 155){
		$$('.mastHead')[0].setStyles({
			"height": 155
		});
		newHeight = 155;
	}
	
	//resize tab
	$$('.navSectortabs li.item00 a')[0].setStyles({
		"height": newHeight -= divPadding,
		"background-position-y": (newHeight-TabGraphicHeight)/2+(divPadding/2)
	});

}

window.addEvent('domready', function(){

	//external links
	$$('a[rel=external]').set('target', '_blank');

	//reset site width for enhanced users
	siteReset();
	
	
	//image tooltips
	var imageTips = $$('.imageHolder');
	if(imageTips[0]){
		createTooltip();
	}
	

	//zoom level for IE7
	//var rect = document.body.getBoundingClientRect();
	//var zoomLevel = Math.round((rect.right-rect.left)/document.body.clientWidth * 100);
	//alert("IE7 Zoom level = "+zoomLevel);

	//zoom level for IE8
	//default DPI is 96, this changes at different zoom levels
	//alert("IE8 Zoom level = "+window.screen.deviceXDPI * 100/96);

	//resize home tab
	try{
	    homeTabResize();
	    //resize home tab on text resize also.
	    var utrd = new uTRD();
	    utrd.add(homeTabResize);
	}
	catch(e) {}
	
	//add rounded corners to sector tabs in IE only
	if(Browser.Engine.trident){
		$$('.navSectortabs ul li a').each(function(el, i){
          new Element('div', {id: 'top'}).inject(el, 'before');
          new Element('div', {id: 'bottom'}).inject(el, 'after');
 		});
	};
	
	

	//show/hide registration page profile information
	//set cookie to remember if it had been opened
	
	if($$('#slide')[0]){
		
		var profileSlide = $('slide');
		var slide = $('slide');
		var slideBtn = $('slideIn');
		
		slide.addClass('hideSlide');
		
		if($$('div.error')[0]){
			slide.removeClass('hideSlide');						
			slide.addClass('showSlide');
		}else{
			slide.addClass('hideSlide');
		}
			
		/*
		var profileCookie = Cookie.read('profileStatus');		
 		if(profileCookie == null){
			profileSlide.addClass('hideSlide');
			//alert("no cookie");
 		}else {
			profileSlide.addClass('showSlide');
			//alert("yes cookie");
		}
		*/	
		slideBtn.addEvent('click', function(e){
			e.stop();
			profileSlide.toggleClass('hideSlide');
			//var profileCookie = Cookie.write('profileStatus', true);
		}); 


	};
	
	//prepare colour selector
	//$(document.body).setStyle("background-image","none");
	if(!$$('table.content')[0]){
		new Element('div', {id: 'colorSelect', html:'<img src="/_common/img/colourStrip3.jpg" usemap="#colour-map" border="0" alt="Image for colour picker" width="19" height="2230"/><map id="colour-map" name="colour-map"><area shape="rect" coords="0,0,19,65" href="#" alt="blue" title="blue" /><area shape="rect" coords="0,65,19,109" href="#" alt="pink" title="pink" /><area shape="rect" coords="0,132,19,152" href="#" alt="pink" title="pink" /><area shape="rect" coords="0,174,19,283" href="#" alt="yellow" title="yellow" /><area shape="rect" coords="0,282,19,391" href="#" alt="green" title="green" /><area shape="rect" coords="0,391,19,499" href="#" alt="pink" title="pink" /><area shape="rect" coords="0,890,19,977" href="#" alt="yellow" title="yellow" /><area shape="rect" coords="0,1107,19,1172" href="#" alt="green" title="green" /><area shape="rect" coords="0,1237,19,1346" href="#" alt="blue" title="blue" /><area shape="rect" coords="0,1346,19,1432" href="#" alt="pink" title="pink" /><area shape="rect" coords="0,1432,19,1477" href="#" alt="green" title="green" /><area shape="rect" coords="0,1477,19,1563" href="#" alt="blue" title="blue" /></map>'}).inject($('site'), 'before');
		$('colorSelect').setStyle("height", window.getScrollSize().y);
		$$('#colour-map area').each(function(el, i){
			el.addEvent('click', function(event){
				new Event(event).stop();
				//get current colour name
				var currentColour = this.getProperty('alt');
				//remove any classes that may exist already
				$$('body').removeClass('yellow').removeClass('green').removeClass('blue').removeClass('pink');
				//add new class from image map (current element)
				$$('body').addClass(currentColour);
				//set cookie for session only
				var cookieColour = Cookie.write('cookieColour', currentColour, {path: '/'});
			});
	 	});
 	}
 	
 	//add colour from cookie (if exists)
 	if(!$$('table.content')[0]){
	 	var testCookie = Cookie.read('cookieColour');
	 	if(testCookie != null){
	 		//remove any classes that may exist already
	 		$$('body').removeClass('yellow').removeClass('green').removeClass('blue').removeClass('pink');
	 		//add colour from cookie
	 		$$('body').addClass(Cookie.read('cookieColour'));
	 	}
 	}else{
 		$$('body').removeClass('yellow').removeClass('green').removeClass('blue').removeClass('pink');
	 	$$('body').addClass('yellow');
 		
 	}
 	
 	//check if this is the home and show flash intro
 	//check for the existence of the 'selected' class on the main home link
 	//var isFlash = $$('.nav1 li')[0].hasClass('selected');
 	var isFlash = $$('body')[0].hasClass('home');
 	if(isFlash){
 		//selected class on home link found
 		
 		//test if this is a firstrun
 		var testCookie = Cookie.read('cookieFirstRun');
 		if(testCookie == null){

 		//create new div to hold flash swf
 		new Element('div', {id: 'homeAnim'}).inject($$('.footer')[0], 'after');
 		
 		//adjust height & width
 		$('homeAnim').setStyles({
 			"top": $$('.header')[0].getCoordinates().height,
			"height": $$('.mastHead')[0].getCoordinates().height + $$('.feature')[0].getCoordinates().height,
			"width": $$('.header')[0].getCoordinates().width
		});
		
		//add first run cookie for session only
		
		//set cookie for session only
		var cookieFirstRun = Cookie.write('cookieFirstRun', true);
 		
 		//add swf to div contents
 		var obj = new Swiff('/_common/swf/homeAnim.swf', {
			id: 'homeAnim',
			container: 'homeAnim',
			version: 10,
			width: '100%',
			height: '100%',
			params: {
				wMode: 'transparent'
			}
		});
		}else{
			//add id to target for flash
			$$('.mastHead')[0].set('id', 'homeRepeatAnim');
			var oldHeight = $('homeRepeatAnim').getCoordinates().height;
			
			//get text to populate flash
			var flashText = $('homeRepeatAnim').getElement('h1').get('text');
			
			//add swf to div contents
	 		var obj = new Swiff('/_common/swf/homeRepeatAnim.swf', {
				id: 'homeRepeatAnim',
				container: 'homeRepeatAnim',
				version: 10,
				width: '100%',
				height: oldHeight,
				params: {
					wMode: 'opaque'
				},
				vars: {
					flashText: flashText
				}
			});
		
		}
 		
 	}
 	
 	//check if sector home and show flash
 	var isFlashSector = $$('.displayAnimation')[0];
 	if(isFlashSector){
 		//add id to target for flash
		$$('.mastHead')[0].set('id', 'homeRepeatAnim');
		var oldHeight = $('homeRepeatAnim').getCoordinates().height;
		
		//get text to populate flash
		var flashText = $('homeRepeatAnim').getElement('h1').get('text');
		
		//add swf to div contents
 		var obj = new Swiff('/_common/swf/sectorHomeRepeatAnim.swf', {
			id: 'homeRepeatAnim',
			container: 'homeRepeatAnim',
			version: 10,
			width: '100%',
			height: oldHeight,
			params: {
				wMode: 'opaque'
			},
			vars: {
				flashText: flashText
			}
		});
 	}
 	
 	//Remove enquiry button from contact us for JS users
 	if($$('.EnquiryButton')[0]){
 		$$('.EnquiryButton')[0].destroy();
 	}
 	
	//Site Show
	setTimeout('$(document.body).setStyle("visibility","visible");', 200);
	
	
	//Multibox
	new multiBox('mb', {
		overlay: new overlay(),
		descClassName: 'mbDesc',
		openFromLink: false
	});

	
	//Clear the text from the Postcode box on the Network page, on click
	if($$('.networkFilterSearch')[0]){
		$$("li.from input").addEvent('click', function(event){
			this.value = "";
		});
	}
	
});

window.addEvent('resize', function(){
	
	//reset site width for enhanced users when the browser is resized
	siteReset();
	
});



function createTooltip(){
	var tip = new Element('div').inject(document.body);
	var arrow = new Element('div').inject(tip);
	var h2 = new Element('h2').inject(tip);
	var h3 = new Element('h3').inject(tip);
	var h4 = new Element('h4').inject(tip);
	var p = new Element('p').inject(tip);
	tip.setStyle('display', 'none');
	
	$$('.imageHolder ul li').each(function(el,i){
		//console.log(el);
		if(el.getElement('img')){
			
			el.getElement('img').set('alt', '');
			
			el.addEvent('mouseover', function(e){
				//console.log('over: '+i);
				
				tip.removeClass('tooltipLeft');
				arrow.removeClass('arrowRight');
				tip.addClass('tooltipRight');
				arrow.addClass('arrowLeft');
				
				if(!$$('div#pnlSignupBox')[0] && ((i > 7 && i < 11) || (i > 18 && i < 22) || (i > 29 && i < 33))){
					tip.removeClass('tooltipRight');
					arrow.removeClass('arrowLeft');
					tip.addClass('tooltipLeft');
					arrow.addClass('arrowRight');
				}
				//tip.addClass('tooltipLeft');
				//arrow.addClass('arrowRight');
				
				h2.set('text', tipInfo[i].name.replace('&amp;', '&'));
				h3.set('text', tipInfo[i].sectors.replace('&amp;', '&'));
				h4.set('text', tipInfo[i].type.replace('&amp;', '&'));
				p.set('text', tipInfo[i].info.replace('&amp;', '&'));
				
				//tip.inject(el);
				//tip.setStyle('display', 'block');
				//showTip = true;
				timer1 = (function(){showTip = true;}).delay(400);
				timer2 = positionTip.delay(500, tip);
				//timer = positionTip.periodical(5, tip, e);
			});
			el.addEvent('mouseout', function(e){
				//console.log('out: '+i);
				//tip.dispose();
				
				showTip = false;
				$clear(timer1);
				$clear(timer2);
				tip.setStyle('display', 'none');
			});
		}
	});
}

var timer1, timer2;
var showTip = false;
var mouse = {x:0, y:0};

document.addEvent('mousemove', function(e){
	e = new Event(e);
	mouse.x = e.page.x;
	mouse.y = e.page.y;
})

function positionTip(){
	//console.log(mouse.x);
	this.setStyles({
		'display': 'block',
		'left': mouse.x,
		'top': mouse.y
	});
	if(showTip){
		timer = positionTip.delay(5, this);
	}else{
		this.setStyles({
		'display': 'none'
	});
	}
}


