// JavaScript Document
// a6f4a4505807698e82f03bacfd7c2017

function searchbarfocus(){
	if ($F('google_q').strip().toLowerCase()=="search") {
		$('google_q').value=""
	}
	$('google_q').setStyle({color: '#272727'})
}
function searchbarblur(){
	$('google_q').value=$F('google_q').strip();
	if (($F('google_q').blank())||($F('google_q').toLowerCase()=="search")) {
		$('google_q').value="Search"
	}
	$('google_q').morph({color: '#AAAAAA'})
}
function searchbarvalidate(e){
	$('google_q').value=$F('google_q').strip();
	if (($F('google_q').toLowerCase()=="search")||($F('google_q').blank())){
		Event.stop(e)
	}
}
function emailsubscribe(e){
		Event.stop(e)
		if (!($F('jdtytr-jdtytr').blank())){
		$('btnSubscribe').update('<img src="/common/images/ajax-wait.gif" />')
			new Ajax.Request("/common/ajax/subscribe.asp",{method:'post',parameters:Form.serialize('frmSubscribe'),
						 onSuccess: function(transport){
							 var response=transport.responseText.strip() || "no response";
							 if (response=="no response"){
								 $('formresponse').update('<abbr title="(s) '+response.stripTags().strip()+'">Error: could not subscribe.</abbr>')
							 }else{
								 $('formresponse').update('<abbr title="(s) '+response.stripTags().strip()+'">Thank you. We\'ve sent you an email asking you to confirm your subscription.</abbr>')
							 }
						 },
							 onFailure: function(transport){
							 var response=transport.responseText.strip() || "no response";
								 $('formresponse').update('<abbr title="(f) '+response.stripTags().strip()+'">Error: could not subscribe.</abbr>')
							 }
						});
		}
}

document.observe("dom:loaded", function() {
  $('google_q').observe('focus', searchbarfocus)
  $('google_q').observe('blur', searchbarblur)
  $('cse-search-box').observe('submit', function(event){searchbarvalidate(event)})
  $('frmSubscribe').observe('submit', function(event){emailsubscribe(event)})
    hs.graphicsDir = '/common/images/highslide/';
	hs.showCredits = false;
	hs.registerOverlay({
		thumbnailId: null,
		overlayId: 'controlbar',
		position: 'top right',
		hideOnMouseOut: true
	});
  $$('.searchfocus').each(function(element){
		element.observe('click', scrollfocus)
  })
  initMenubars()
});

function scrollfocus(){
	new Effect.ScrollTo('google_q');
	Form.Element.focus.delay(1.1,'google_q');
	new Effect.Highlight('google_q',{delay:1.1});
}

function setPanel(iPanel) {
	if ($('tabbody')._panel==iPanel){return}
	if (($('tabbody')._panel==2)&&($('tabimages')!=null)){
		$$('.tabimage').each(function(element){element.hide()})
	}
	$('activetabs').classNames().set('activetab'+iPanel)
	new Effect.BlindDown($('tabbody'+iPanel),{duration: 0.2})
	new Effect.Appear($('tabbody'+iPanel),{duration: 0.2})
	new Effect.Appear($('tabhead'+iPanel),{duration: 0.2})
	new Effect.BlindUp($('tabbody'+$('tabbody')._panel),{duration: 0.2})
	new Effect.Fade($('tabbody'+$('tabbody')._panel),{duration: 0.2})
	new Effect.Fade($('tabhead'+$('tabbody')._panel),{duration: 0.2})
	if ((iPanel==2)&&($('tabimages')!=null)){
		new Effect.Appear($('tabimage'+$('tabbody')._image),{delay:0.2,duration:0})
	}
	$('tabbody')._panel=iPanel
	History.set('panel',iPanel);
}

function setImage(iImg) {
	if ($('tabbody')._image==iImg){return}
	$('tabimage'+iImg).show()
	$('tabimage'+$('tabbody')._image).hide()
	$('tabbody')._image=iImg
}

function init(pageid){
	document.observe("dom:loaded", function() {
	switch(pageid) {
		case 'home':
			$('prodlink1').observe('mouseover', function(){setImage(1);})
			$('prodlink2').observe('mouseover', function(){setImage(2);})
			$('prodlink3').observe('mouseover', function(){setImage(3);})
			$('prodlink4').observe('mouseover', function(){setImage(4);})
			$('prodlink5').observe('mouseover', function(){setImage(5);})
			$('prodlink6').observe('mouseover', function(){setImage(6);})
    		imgTab2=new Image; imgTab2.src='images/tabset/tabbg_active.jpg';
    		imgTab3=new Image; imgTab3.src='images/tabset/tableft.jpg';
    		imgTab4=new Image; imgTab4.src='images/tabset/tableft_edge.jpg';
    		imgTab11=new Image; imgTab11.src='images/tabset/tabright_edge.jpg';
    		imgTab12=new Image; imgTab12.src='images/tabset/tabset_bottom.jpg';
    		imgTab13=new Image; imgTab13.src='images/tabset/tabsetbg.jpg';
    		imgTab15=new Image; imgTab15.src='common/images/button_imagegallery_f2.gif';
			initAccordion()
			initTabs()
			initHistory()
			$('servicebranchlink').observe('click',function(e) {
															Event.stop(e);
															setPanel(3);
															new Effect.Pulsate('tab3',{pulses:3,duration:1.3});
															});
			initIframe.defer()
			break;
		case 'aboutus':
			initAccordion();
			if(History.get('accordion')==null){
				History.set('accordion','accordiontoggle1');
			}
			initHistory()
			break;
		case 'enquiryform':
			new Validation('frmRequest')
			new Texpand('Address',{autoShrink:true})
			new Texpand('InstallationAddress',{autoShrink:true})
			new Texpand('Comments',{autoShrink:true})
			initAreaOfInterestCheckboxes()
			updateProductList()
			$('Address').observe('blur',postcodeValidator)
			break;
		case 'newenquiryform':
			new Validation('frmRequest')
			initAreaOfInterestCheckboxes()
			break;
		case 'servicebranch':
			initTabs()
			initAccordion()
			initHistory()
			new Validation('frmRequest')
			new Texpand('Address',{autoShrink:true,initialHeight:48})
			new Texpand('InstallationAddress',{autoShrink:true,initialHeight:48})
			new Texpand('Comments',{autoShrink:true,initialHeight:48})
			$('Address').observe('blur',postcodeValidator)
			break;
		case 'promotion':
			new Validation('frmRequest')
			break;
		case 'dda':
			initTabs()
			initAccordion()
			initHistory()
			break;
		case 'platform':
			initTabs()
			initAccordion()
			initHistory()
			break;
		case 'service':
			initTabs()
			initAccordion()
			initHistory()
			$$('.servicebranchlink').each(function(el){el.observe('click',function(e) {
															Event.stop(e);
															setPanel(4);
															new Effect.Pulsate('tab4',{pulses:3,duration:1.3});
															});})
			break;
		case 'goods':
			initTabs()
			initAccordion()
			initHistory()
			break;
		case 'escalators':
			initTabs()
			initAccordion()
			initHistory()
			break;
		case 'mailings':
			new Validation('frmSubscribe')
			new Validation('frmUnsubscribe')
			break;
		case 'gallery':
			hs.addSlideshow({
								slideshowGroup: 'gallery',
								interval: 5000,
								repeat: false,
								useControls: false,
								fixedControls: true
							});
			hs.transitions = ['expand','crossfade'];
			hs.dimmingOpacity = 0.75;
			hs.dimmingDuration = 100;
			break;
		case 'galleryindex':
			initFilter()
			break;
		case 'newsindex':
			initFilter()
			break;
		case 'downloadsindex':
			initFilter()
			break;
	}
	})
}
function accordiontoggle(panel) {
	if (panel!=$('accordion')._openpanel){
		if ($('accordion')._openpanel!=0){
			new Effect.BlindUp ($($('accordion')._openpanel).next(0),{duration:0.2})
			$($('accordion')._openpanel).setStyle ({background:'url(/images/accordion/accordion_arrow.gif) no-repeat 295px center'})
		}
		new Effect.BlindDown ($($(panel).next(0)),{duration:0.2})
		$('accordion')._openpanel=panel
		$(panel).setStyle ({background:'url(/images/accordion/accordion_close.gif) no-repeat 266px center'})
		History.set('accordion',panel);
	}else{
		new Effect.BlindUp ($($('accordion')._openpanel).next(0),{duration:0.2})
		$($('accordion')._openpanel).setStyle ({background:'url(/images/accordion/accordion_arrow.gif) no-repeat 295px center'})
		$('accordion')._openpanel=0
		History.unset('accordion');
	}
}

function initTabs(){
	if ($('tabset')!=null){
		$('activetabs').select('td').each(function(e){
										  e.observe('click',function(){setPanel(e.identify().substr(3));})
										  })
		$('tabbody')._panel=1
		$('tabbody')._image=1
	}
}

function initAccordion(){
	if ($('accordion')!=null){
			$$('.accordion_content_holder').each(function(acc){acc.hide();})
			$('accordion')._openpanel=0
			$$('.accordion_toggle').each(function(accordion) {
												  accordion.observe('click',function(){accordiontoggle($(accordion).identify())})
												  });
			$('accordion_top_pane').observe('click',function(){accordiontoggle($('accordion_top_pane').next('.accordion_toggle').identify())});
			$('accordion_bottom_pane').observe('click',function(){accordiontoggle($('accordion_bottom_pane').next('.accordion_toggle').identify())});
	}
}

function initHistory(){
	History.Observer.start();
	if ($('tabset')!=null){ History.Registry.set({id:'panel', onStateChange:setPanel}); }
	if ($('accordion')!=null){History.Registry.set({id:'accordion', onStateChange:accordiontoggle});}
	if(History.get('panel')!=null){setPanel(History.get('panel'))}
	if(History.get('accordion')!=null){accordiontoggle(History.get('accordion'))}
}

function initFilter(){
    filterImg0=new Image; filterImg0.src='/common/images/checkbox_off.gif';
    filterImg1=new Image; filterImg1.src='/common/images/checkbox_group.gif';
    filterImg2=new Image; filterImg2.src='/common/images/checkbox_pass.gif';
    filterImg3=new Image; filterImg3.src='/common/images/checkbox_plat.gif';
    filterImg4=new Image; filterImg4.src='/common/images/checkbox_dda.gif';
    filterImg5=new Image; filterImg5.src='/common/images/checkbox_service.gif';
    filterImg6=new Image; filterImg6.src='/common/images/checkbox_esc.gif';
    filterImg7=new Image; filterImg7.src='/common/images/checkbox_goods.gif';
	styleFilter()
	$('buttonstatus')._count=0
	if ($$('.imagegallery').size()>0){
		$('buttonstatus')._itemdesc="gallery"
		$('buttonstatus')._itemdescs="galleries"
		$('buttonstatus')._identity="gallery"
	}
	if ($$('.downloadsindex').size()>0){
		$('buttonstatus')._itemdesc="collection"
		$('buttonstatus')._itemdescs="collections"
		$('buttonstatus')._identity="downloads"
	}
	if ($$('.newsindex').size()>0){
		$('buttonstatus')._itemdesc="item"
		$('buttonstatus')._itemdescs="items"
		$('buttonstatus')._identity="news"
	}
	$('buttonpanelhead').observe('click',toggleFilter)
	$$('#buttontable input[type="checkbox"]').each(function(el){
															el.observe('click',function(event){
																						 doFilter(Event.element(event))
																						 setDimmed(Event.element(event))
																						 })
															doFilter(el)
															setDimmed(el)
															})
}

function styleFilter(){
	$$('#buttontable input[type="checkbox"]').each(function(el){
															el.setStyle('position:absolute;left:-2000px')
															})
}

function setDimmed(areabutton){
	if ($(areabutton).checked){
 	  $(areabutton).up('label').removeClassName('checkbox_off').addClassName('checkbox_on')
	}else{
 	  $(areabutton).up('label').removeClassName('checkbox_on').addClassName('checkbox_off')
	}
}

function toggleFilter(){
	if($('buttontable').visible())
	{
		$('filterArrow').src='/common/images/filter_down.gif'
		}else{
		$('filterArrow').src='/common/images/filter_up.gif'
	}
	new Effect.toggle('buttontable','blind',{duration:0.3})
}

function doFilter(areabutton){
	strArea=$(areabutton).identify()
	if (!($(areabutton).checked)){
		$$('.'+strArea).each(function(stack){
									  arrVisible=stack.readAttribute('rel').gsub(' ','').split(',')
									  tmpCatCount=arrVisible.size()
									  arrVisible=arrVisible.without(strArea)
									  stack.writeAttribute({rel:arrVisible.join(',')})
									  if((arrVisible.size()==0)&&(tmpCatCount>0)){
										$('buttonstatus')._count=$('buttonstatus')._count-1
										  if ($('buttonstatus')._identity=="gallery"){
										  	new Effect.Morph(stack,{style:'width:0;margin-right:0;',duration:0.5})
										  }
										  if ($('buttonstatus')._identity=="news"){
										  	new Effect.Fade(stack,{duration:0.4})
											//stack.hide()
										  }
										  if ($('buttonstatus')._identity=="downloads"){
										  	new Effect.Fade(stack,{duration:0.4})
											//stack.hide()
										  }
									  }
									  })
	}
	if ($(areabutton).checked){
		$$('.'+strArea).each(function(stack){
									  if(stack.readAttribute('rel').blank()){
										$('buttonstatus')._count=$('buttonstatus')._count+1
										  if ($('buttonstatus')._identity=="gallery"){
											  new Effect.Morph(stack,{style:'width:169px;margin-right:10px;',duration:0.5})
										  }
										  if ($('buttonstatus')._identity=="news"){
											  //new Effect.BlindDown(stack,{duration:0.5})
										  	new Effect.Appear(stack,{duration:0.4})
											//stack.show()
										  }
										  if ($('buttonstatus')._identity=="downloads"){
											  //new Effect.BlindDown(stack,{duration:0.5})
										  	new Effect.Appear(stack,{duration:0.4})
											//stack.show()
										  }
									  }
									  arrVisible=stack.readAttribute('rel').gsub(' ','')
									  if (arrVisible.blank()){
										  strVisible=strArea
									  }else{
										  arrVisible=arrVisible.split(',')
										  arrVisible.push(strArea)
										  strVisible=arrVisible.join(',')
									  }
									  stack.writeAttribute({rel:strVisible})
									  })
	}
	updateGalleryCount()
}

function updateGalleryCount(){
	if ($('buttonstatus')._count==1){strItemDesc=$('buttonstatus')._itemdesc}else{strItemDesc=$('buttonstatus')._itemdescs}
	if ($$('#buttontable input[type="checkbox"]:checked').size()==1){strCatDesc="category"}else{strCatDesc="categories"}
	$('buttonstatus').update('Showing <strong>#{count}</strong> #{itemdesc} in <strong>#{categories}</strong> #{catdesc}.'.interpolate({
			count:$('buttonstatus')._count,
			itemdesc:strItemDesc,
			categories:$$('#buttontable input[type="checkbox"]:checked').size(),
			catdesc:strCatDesc,
			itemdescs:$('buttonstatus')._itemdescs
	}))
}
function checkDownload(el){
	if (Cookie.get('download_registration')=='complete'){
		strURL=$(el).readAttribute('href')
		strEmail=Cookie.get('download_registration_email')
		pageTracker._trackEvent('Downloads','PDF',strURL)
		new Ajax.Request("/common/ajax/download.asp",{method:'post',parameters:{strURL:strURL,strEmail:strEmail},
					 onSuccess: function(transport){document.location=strURL},
					 onFailure: function(transport){document.location=strURL}
					});
		return false;
	}else{
		hs.expandDuration=0
		hs.restoreDuration=0
		hs.Expander.prototype.onAfterExpand=function(){hs.expandDuration=250}
		hs.Expander.prototype.onAfterClose=function(){hs.restoreDuration=250}
		hs.htmlExpand(el,{src: '/common/register.asp?strURL='+$(el).readAttribute('href')+'&strCategories='+encodeURIComponent($(el).readAttribute('rel')),contentId: 'downloadReg',objectType:'iframe',align: 'center',slideshowGroup: 'download_registration',dimmingOpacity:0.9})
		return false;
	}
}
function registered(strURL,strEmail){
	oneYear=31536000
	oneDay=86400
	Cookie.set('download_registration','complete',oneYear)
	Cookie.set('download_registration_email',strEmail,oneYear)
	pageTracker._trackEvent('Downloads','PDF',strURL)
	objImage = new Image()
	objImage.src="http://www.googleadservices.com/pagead/conversion/1072573947/?label=ir_hCIqbpQEQ-9u4_wM&guid=ON&script=0"
	objImage.src="http://www.googleadservices.com/pagead/conversion/1072362408/?label=W2NnCO3RrwEQqOer_wM&guid=ON&script=0"
	hs.close()
	document.location=strURL
}
function alreadyRegistered(strURLin,strEmailIn){
	new Ajax.Request("/common/ajax/download.asp",{method:'post',parameters:{strURL:strURLin,strEmail:strEmailIn},
				 onSuccess: function(transport){registered(strURLin,strEmailIn)},
				 onFailure: function(transport){registered(strURLin,strEmailIn)}
				});
	registered(strURL,strEmail)
}
function filter(selection){
	switch(selection){
		case 'all':
			$$('#buttontable input[type="checkbox"]').each(function(el){
																	el.checked=true
																	setDimmed(el)
																	doFilter(el)
																	})
			break;
		case 'none':
			$$('#buttontable input[type="checkbox"]').each(function(el){
																	el.checked=false
																	setDimmed(el)
																	doFilter(el)
																	})
			break;
	}
}
var RollIt = {
    timeout : null,
    showPopup : function(e){
        clearTimeout(this.timeout);
        if($(e).style.display == 'none'){
				$$('div.mainsubmenu').each(function(el){el.hide()})
			   e.show()
        }
    },
    hidePopup : function(e){
        if($(e).style.display == 'none'){
            clearTimeout(this.timeout);
        }else{
            this.timeout = setTimeout(function(){e.hide()},200);
        }
    }    
}
function initMenubars(){
	$$('#menubar .container>a').each(function(el){
								   el.observe('mouseover',function(event){RollIt.showPopup(Event.element(event).previous('.mainsubmenu'))})
								   el.observe('click',function(event){$$('div.mainsubmenu').each(function(el){el.hide()})})
								   el.observe('mouseout',function(event){RollIt.hidePopup(Event.element(event).previous('.mainsubmenu'))})
								   })
	$$('div.mainsubmenu').each(function(el){
								   el.observe('mouseover',function(event){RollIt.showPopup(this)})
								   el.observe('mouseout',function(event){RollIt.hidePopup(this)})
								   el.observe('click',function(event){RollIt.hidePopup(this)})
								   })
}
function initAreaOfInterestCheckboxes(){
	$$('#areaofinterest input[type="checkbox"]').each(function(el){
									   el.observe('click',updateProductList)
															   })
}
function updateProductList(){
	var checkboxes = []
	checkboxes.clear()
	$$('#areaofinterest input:checked').each(function(e) {checkboxes.push(" "+e.value)});
	strProductlist=checkboxes.flatten().toString().strip()
	if (!strProductlist.blank()){
		if (!$('prodlitselect').visible()){
			$('prodlitselect').show()
			new Effect.Highlight('prodlitselect',{duration:2,endcolor:'#F5F5F5'})
		}
		$('prodlist').update("("+strProductlist+")")
	}else{
		$('prodlist').update()
		$('lit_product').checked=false
		new Effect.Fade('prodlitselect',{duration:0.3})
	}
}
function isValidPostcode(p) {
	var postcodeRegEx = /[A-Z]{1,2}[0-9]{1,2}[A-Z]{0,1} ?[0-9][A-Z]{2}/i;
	return postcodeRegEx.test(p);
}
function postcodeValidator(){
	$('Address').value=$F('Address').strip()
	arrAddress=$F('Address').split('\n')
	arrAddress.each(function(strAdr){
							 if (isValidPostcode(strAdr)){
								 $('Postcode').value=strAdr.toUpperCase()
								 $('Address').value=arrAddress.without(strAdr).join('\n')
								 }
							 })
}
function initIframe(){
	$('productfocusiframe').src="/common/iframes/fpslides.asp?rnd="+Math.random().toString()
}