(function($) {
		
    $(function(){
	    mainInit();
    	
	    $('div.active').makeTabs();

	// The below script is for Directories 'CompanySearchResults' page. It will stop working if moved to another file.
	// Company search results - activate correct tab depending on "?type=" in querystring
	page = window.location.href;
	companySearchResults = page.indexOf('?type=');
	if (companySearchResults > 0) {
		var tab = (page.substr(companySearchResults+6,1)).toUpperCase();
		switch(tab) {
			case 'B':
				$('.tab_block a:contains("Supplier")').click();
				break;
			case 'C':
				$('.tab_block a:contains("a-z")').click();
				break;
		}
	}

	    /*==Advanced search==*/
	    /*=== show more or less ===*/
	    var showMoreList = $('#rightcolumn .advancedSearch ul.filter');
	    var showMoreList2 = $('#rightcolumn .advancedSearch ul.filter_date');
	    var showMoreText = $(showMoreList).siblings('p').children('a');
	    var showMoreText2 = $(showMoreList2).siblings('p').children('a');

	    //works out whether selected filter is inside the dropdown. If it is then open the dropdown on page load.
	    $(showMoreList).children('li').each(function(count){
		    if($(this).hasClass('selected')){
			    if(count>5)
				    $(this).parent().siblings('p').addClass('showless').children('a').text('Fewer sections');
			    else
				    $(this).parent().siblings('p').addClass('showmore').children('a').text('More sections');
		    }
	    });
	    $(showMoreList2).children('li').each(function(count){
		    if($(this).hasClass('selected')){
			    if(count>5)
				    $(this).parent().siblings('p').addClass('showless').children('a').text('Fewer dates');
			    else
				    $(this).parent().siblings('p').addClass('showmore').children('a').text('More dates');
		    }
	    });
    	
	    /*hides more than 6 results*/
	    $('#rightcolumn .advancedSearch ul.filter_date li:gt(5)').wrapAll('<div class="hidden"></div>');
	    $('#rightcolumn .advancedSearch ul.filter li:gt(5)').wrapAll('<div class="hidden"></div>');
	    if ($(showMoreText).parent().hasClass('showmore')) { $(showMoreList).children('div.hidden').hide(); }
	    if ($(showMoreText2).parent().hasClass('showmore')) { $(showMoreList2).children('div.hidden').hide(); }

	    $(showMoreText).click(function(){
	    /*if there's a showmore class, hide the more than 6 results in a new div*/
		    if ($(this).text('Fewer sections').parent().hasClass('showmore')) {$(this).parent().removeClass('showmore').addClass('showless').siblings('ul.filter').children('div.hidden').slideDown('fast');}
	    /*else remove class and allow hiding of extra content*/
		    else if ($(this).text('More sections').parent().hasClass('showless')) {$(this).parent().removeClass('showless').addClass('showmore').siblings('ul.filter').children('div:visible').slideUp('fast');}
		    return false;
	    });
	    $(showMoreText2).click(function(){
	    /*if there's a showmore class, hide the more than 6 results in a new div*/
		    if ($(this).text('Fewer dates').parent().hasClass('showmore')) {$(this).parent().removeClass('showmore').addClass('showless').siblings('ul.filter_date').children('div.hidden').slideDown('fast');}
	    /*else remove class and allow hiding of extra content*/
		    else if ($(this).text('More dates').parent().hasClass('showless')) {$(this).parent().removeClass('showless').addClass('showmore').siblings('ul.filter_date').children('div:visible').slideUp('fast');}
		    return false;
	    });
	
	
	// Apply PNG fix to the following selectors
	if ($.browser.msie && $.browser.version<7) {
		$.ifixpng.pixel = '/magazine/graphics/pixel.gif';
		$('#logo img[@src$=.png]').ifixpng();
	}

	/* setup focus states on form fields */
	$('#addlinks, #addtags, #mp_direcory_home #content input[type=text], #mp_direcory_home #content select, #content div.formbox input[type=text], #content div.formbox input[type=password], #content div.formbox input[type=file], #content div.formbox textarea, #rightcolumn .formbox .text, #rightcolumn .formbox select, #inform fieldset.informcontent input[type=text], #inform fieldset.informcontent input[type=file], #inform fieldset.informcontent select, #inform fieldset.informcontent textarea, #emailsignup input[type=text], .informcontent table input').css({backgroundColor:'#FFF', color:'#8C8C8C'}).focus(function() { $(this).css({backgroundColor:'#FFFFB7', color:'#000'}); }).blur(function() { $(this).css({backgroundColor:'#FFF', color:'#8C8C8C'}); });
	
	//inform text input style
	$('.informcontent table input[type="text"]').css('border','1px solid #999');

	/* Page Tools */
	// Write out print button for users with JS enabled
	$('.page_options ul, .job_options ul, #getListedAmend .options ul').prepend('<li><a href="javascript:window.print()" class="po_print">Print</a></li>');
	$('.paging_results').append('<span class="print"><a href="javascript:window.print()">Print</a></span>');

	$('.refine_search a.refine').click(function() {
		$(this).toggleClass('up');
		$('.refinesearch').toggleClass('hide');

		return false;
	});

	/* Clear on click function */
	//$('.clearme').one('focus', function() { $(this).val(''); });

	//stops inheriting the height for the auto height
	$('#rightcolumn .active.searches .active_block ul, .searches .filter ul').css('height','auto');

	// Initially disable buttons
	$('#register .termsandconditions input.button, .myNewsletters .button, #story #comments_form .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});}
	});

	//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;});

	// for my library page
	$('#myLibrary').load(function(){
		var currentQueryString = new Querystring();
		var tab = currentQueryString.get("type","S")
		//Setup everything properly.
		if (tab == 'T')
			$('#MyLibrarySavedDiscussions').click();
		if (tab == 'B')
			$('#MyLibrarySavedBlogs').click();
	});

});

function buttonOver() {
	if ($(this).is(':not(.over)')) {
		if ($.browser.msie && $.browser.version<7) $(this).iunfixpng();
		this.src.match(/_over\..../) ? null : this.src = this.src.replace(/\.(...)$/,'_over.$1');

		if ($.browser.msie && $.browser.version<7) $(this).ifixpng();
		$(this).addClass('over');
	}
}

function buttonOut() {
	if ($(this).is('.over')) {
		if ($.browser.msie && $.browser.version<7) $(this).iunfixpng();
		this.src = this.src.replace(/_over\.(...)$/,'.$1')

		if ($.browser.msie && $.browser.version<7) $(this).ifixpng();
		$(this).removeClass('over');
	}
}


function mainInit() {
	$('#mainnav').SetupMenu();
}

    
})(jQuery);
