window.addEvent('domready', function()	{
	$$('.make.button').makeButton();
	$$('.make.labelled').setLabel();
	$$('.make.tabs').makeTabs();
	$$('.change.into.tabs').changeIntoTabs();
	$$('.make.linked').makeAllClickable();
	$$('.make.expandable').makeExpandable();
	$$('.give.hover').giveHoverState();
	$$('INPUT[type=text], INPUT[type=password], TEXTAREA, SELECT').giveFocusClassOnSelect();
	//Customised versions of the above functions for eVision (Events)
	$$('.change.into.customtabs').customChangeIntoTabs();
	$$('.make.customExpandable').customMakeExpandable();
	
	//For "EventsExhibitorSearch.aspx" page. Activate correct tab depending on "?type=" in querystring
	if ($defined(Browser.getQueryString('type'))) {
		var searchTab = Browser.getQueryString('type').toUpperCase();	
		$$('.tab_block li').removeClass('current');
		switch(searchTab) {
			case 'K':
				$$('.tab_block li h2.search_keyword').getParent().addClass('current');
				break;
			case 'C':
				$$('.tab_block li h2.search_category').getParent().addClass('current');
				break;
			case 'Z':
				$$('.tab_block li h2.search_az').getParent().addClass('current');
				break;
			case 'R':
				$$('.tab_block li h2.search_location').getParent().addClass('current');
				break;
		}
	}
	
	// Slideshow
	$$('.slideShowContent').each(function(slideShowContent) {

		// Instantiate class
		var slideshow = new SlideShow(slideShowContent,{
			delay: 7000,
			autoplay: true
		});

		// Slideshow pause/play
		var slideShowPlayPause = $$('.slideShowButtons span');
		slideShowPlayPause.each(function(button) {

			// If autoplay is true then add appropriate nav classes 
			slideshow.options.autoplay === true ? button.addClass('pause') : button.addClass('play');

			// Add click event
			button.addEvent('click', function(){
				if(button.hasClass('pause')) {
					slideshow.pause();
					button.removeClass('pause').addClass('play');
				}
				else if(button.hasClass('play')) {
					slideshow.play();
					button.removeClass('play').addClass('pause');
				}
			});
		});

		// Slideshow navigation
		var slideShowNav = $$('.slideShowNav li');
		slideShowNav.each(function(item, index) {
			item.addEvent('click', function() {

			// pause the slide show when navigation is clicked
			if(slideShowPlayPause.hasClass('pause')) {
				slideShowPlayPause.removeClass('pause').addClass('play')
				slideshow.pause();
			}
				slideshow.show(index, {
					transition: slideshow.options.transition,
					duration: slideshow.options.duration
				});
			});

		});

		// Slide navigation - toggle selected class
		slideshow.addEvent('show', function(navItem) {
			slideShowNav[navItem.previous.index].removeClass('selected');
			slideShowNav[navItem.next.index].addClass('selected');
		});

	});
	
});

(function($) {

	$(function(){
		$('a.thickbox').each(function()	{
			href = $(this).attr('href');
			$(this).attr('href', href.replace(/\?/, "?js=yes&"));
		});		
		
		mainInit();
	
		$('div.active').makeTabs();
	
		// apply PNG fix to the following selectors
		if ($.browser.msie && $.browser.version<7) {
			$.ifixpng.pixel = '/magazine/graphics/pixel.gif';
			$('#logo img[@src$=.png], .footer_ad, .seo_nav, .standenquiry').ifixpng();
		}
	
		// focus states on form fields
		$('#columns :text, #columns :password, #columns textarea').css({backgroundColor:'#FFF', color:'#333'})
			.focus(function() {
				$(this).css({backgroundColor:'#FFFFB7', color:'#000', borderColor:'#000'}); })
			.blur(function() { 
				$(this).css({backgroundColor:'#FFF', color:'#333', borderColor:'#999'});
		});
	
		// write out print button for users with JS enabled
		$('.page_options li').removeClass('first');
		$('.page_options ul').prepend('<li class="first"><a href="javascript:window.print()" class="po_print">Print</a></li>');
		$('.page_options .po_print').addClass('wvTip');
		$('.paging_results').append('<span class="print"><a href="javascript:window.print()">Print</a></span>');
	
		// disables buttons
		$('#register .termsandconditions input.button, .myNewsletters .button, #blogPost #comments_form .button').attr('disabled','disabled').css({cursor:'default', opacity:.5});
	
		// toggle button style depending on checkbox state
		$('.termsandconditions .formOptions :checkbox, .newsletterformSleeve .formOptions :checkbox, #story #comments_form .note :checkbox, .uploadAgreement :checkbox, #blogPost #comments_form :checkbox').click(function(){
			if(this.checked) {$('#register .termsandconditions input.button, .myNewsletters .button, #story #comments_form .button, .uploadAgreement .button, #blogPost #comments_form .button').attr('disabled','').css({cursor:'pointer', opacity:'1'});}
			else {$('#register .termsandconditions input.button, .myNewsletters .button, #story #comments_form .button, .uploadAgreement .button, #blogPost #comments_form .button').attr('disabled','disabled').css({cursor:'default', opacity:.5});}
		});
	
		// newsletters box, clear text
		$('#newsletter_block #news_email').css({backgroundColor:'#898989', color:'#000', borderColor:'#686868'})
			.focus(function() {
				$(this).css({backgroundColor:'#FFFFB7'});
				if($(this).val() == "Enter email address") $(this).val(''); })
			.blur(function() {
				$(this).css({backgroundColor:'#898989', color:'#000', borderColor:'#686868'});
				if($(this).val() == "") $(this).val("Enter email address");});
		
		//feedback button
		$('<div class="feedback_close"><a href="#">Close form overlay</a></div>').appendTo('.feedback_box .inner_sleeve');
		$('.feedback_box .feedback_close').click(function(){ $(this).parents('.feedback_box').remove(); return false;});

		//My library page - highlight correct tab depending on "?type=" in querystring		
		page = location.href;
		libraryPage = page.indexOf('?type=');
		if (libraryPage > 0) {
			var tab = (page.substr(libraryPage+6,1)).toUpperCase();
			switch(tab) {
				case 'T':
				  	$('.tab_block a:contains("Discussions")').click();
				  	break;
				case 'B':
				  	$('.tab_block a:contains("Blogs")').click();
				  	break;
			}
		}

		$('#story .relatedimages_block a.thickbox_image').each(function(){
			href = $(this).attr('href');
			// *************
			if(href.match('js=yes'))	alert('js=yes still hardcoded');
			// *************
			$(this).attr('href', href.replace(/\.aspx$/g, ".aspx?js=yes&"));
		});
	
		// Link form behaviour in footer promo
		$('#promo_container input.button').click(function() {
			var SiteRelocate = $('#siteName option:selected').attr('value');
	
			if(SiteRelocate != "") {
				window.parent.location.href = SiteRelocate;
			}
	
			return false;
		});
		function mainInit() {
			$('#mainnav').SetupMenu();
		}
		
		//Center the navigation
		var footernav_ul_width = 0;
		$('#footernav .sleeve>ul>li').each(function(){
			footernav_ul_width += $(this).outerWidth();
		});
		$('#footernav .sleeve>ul').css('width',footernav_ul_width+3);
		
		//Center the seo navigation
		/*var footernav_ul_width = 0;
		$('#footer ul.seo_nav>li').each(function(){
			footernav_ul_width += $(this).outerWidth();
		});
		$('#footer ul.seo_nav').css('width',footernav_ul_width+3);*/

	});

})(jQuery);
