/*--------------------
[custom JS styles]

Project: South East Coast Ambulance Service
Last change: 13.04.2010
Assigned to: Felicity Evans
--------------------*/

//Outside document ready to avoid FOUC
if($.cookie("CONTRAST")) {
	$("#contrast").attr("href",$.cookie("CONTRAST"));
}

$(document).ready(function() {

	// Before main calls for YAF forum compatibility
	
	/* Over-label function
	http://scott.sauyet.com/thoughts/archives/2007/03/31/overlabel-with-jquery */
	jQuery.fn.overlabel = function(){
		this.each(function(index){
			var label = $(this);
			var field;
			var id = this.htmlFor || label.attr('for');
			if (id && (field = document.getElementById(id))) {
				var control = $(field);
				label.addClass("overlabel-apply");
				if (field.value !== '') {
					label.css("text-indent", "-1000px");
				}
				control.focus(function(){
					label.css("text-indent", "-1000px");
				}).blur(function(){
					if (this.value === '') {
						label.css("text-indent", "0px");
					}
				});
				label.click(function(){
					var label = $(this);
					var field;
					var id = this.htmlFor || label.attr('for');
					if (id && (field = document.getElementById(id))) {
						field.focus();
					}
				});
			}
		});
	};
	
   
	$("fieldset.siteSearch label").addClass("overlabel");
	$("fieldset.siteSearch label.overlabel").overlabel();
	
	if ($.browser.msie && $.browser.version.substr(0, 1) < 7) {
		DD_belatedPNG.fix('.mainFeature ul#content-slider-inside li div.info,.cboxIE #cboxTopLeft,.cboxIE #cboxTopCenter,.cboxIE #cboxTopRight,.cboxIE #cboxBottomLeft,.cboxIE #cboxBottomCenter,.cboxIE #cboxBottomRight,.cboxIE #cboxMiddleLeft,.cboxIE #cboxMiddleRight');
		$('.mainFeature ul.navigation li').hover(
		function(){
			$(this).addClass("hover");
		},
		function(){
			$(this).removeClass("hover");
		});
	} 
	
	$('.mainFeature li').hover(function(){
		$(this).siblings('li').removeClass('on');
		$(this).addClass('on');
	});
	
	$('.mainFeature li:first').addClass('on');
	
	contentSlider($('#content ul.tabs li'));
	
	// Latest news on homepage
	$('.newsLink a').click(function(){
		$('.newsLink a').removeClass('on');
		$(this).addClass('on');		
		$('.homeNews li').removeClass('stackTop');
		$(this).closest('li').addClass('stackTop');
		return false;
	});
	
	contrastLink();
	printLink();
	resizeText();
	
	//tooltips
	$('ul.chart li a').each(function() {
		 var el = $(this);
		 var span = $(el).find("span").html();
		 el.attr('title', span);
    });
	
	$('ul.chart li a[title!=""], #content ul.imageResults li .download a, a.tooltip').betterTooltip({speed: 150, delay: 300});
	
	//lightboxes
	$("#content ul.imageResults li .container a").colorbox({width:"600px", height:"550px", iframe:true});
	
	//Autofill text inputs
	autoFill($("input.ac"), "Name, department, or job title");
	
	//Shorten search submit value if JS is on
	$(".mainNav .submit").attr('value','GO');
	
	//Child selector for IE6
	$(".standard-content #mainCol > img").addClass("childSel");
	
	//Staff directory
	/*$(".directory a").click(function() {
		$(".directory li").removeClass("active");
		$(this).parent().addClass("active");
		$(".listing li").removeClass("active");
		$("#results-" + $(this).attr('rel')).addClass("active");
		return false;
	});*/
	
	//nth selection
	$(".headerLinks li:last-child,#mainCol .chart .chartSect li:last-child").addClass("last-child");
	$("#mainCol .chart .chartSect li:first-child").addClass("first-child");
	
	//Committee expand
	$("div.committee p.desc").append('&nbsp;<a href="#" class="expand">view all</a>');
	$("div.committee p.desc").click(function(){
		$(this).toggleClass("expanded");
		if ($(this).children("a.expand").text() == 'view all') {
			$(this).next("p.more").slideDown("fast");
			$(this).children("a.expand").text("hide all");
		} else {
			$(this).next("p.more").slideUp("fast");
			$(this).children("a.expand").text("view all");
		}
		return false;
	});
	$("div.committee p.desc a.expand").click(function(){ 
		$(this).parent().parent("div.committee").toggleClass("expanded");
		$(this).toggleClass("expanded");
		if ($(this).text() == 'view all') {
			$(this).parent('p.desc').next("p.more").slideDown('fast');
			$(this).text("hide all");
		} else {
			$(this).parent('p.desc').next("p.more").slideUp('fast');
			$(this).text("view all");
		}
		return false;
	});
	
	//Remove margin between extra col related boxes
	$('#extraCol > div.relatedLinks:last').addClass('relatedLinksLast');
	
});

/* functions */

function contentSlider(el){
	$(el).parent('ul').children('li:first-child').addClass('on');
	$('.anchor').hide().filter(':first-child').show();
	if ($(el).parents("div").hasClass("mainFeature")) {// variation for homepage
		$(el).hover(function(){
			$(this).addClass("on").siblings().removeClass("on");
			var thisContent = $(this).find("a").attr('href');
			$(thisContent).siblings().hide();
			$(thisContent).show();
		});
		$(el).click(function(){
			var thisContent = $(this).find("a").attr('href');
			var goToLink = $(thisContent).find("a").attr('href');
			window.location.href = goToLink;
			return false;
		});
		$(el).find("a").focus(function(){
			$(this).parents("li").addClass("on").siblings().removeClass("on");
			var thisContent = $(this).attr('href');
			$(thisContent).siblings().hide();
			$(thisContent).show();
		});
		
	}
	else {
		$(el).click(function(){
			$(this).addClass("on").siblings().removeClass("on");
			var thisContent = $(this).find("a").attr('href');
			$(thisContent).siblings().hide();
			$(thisContent).show();
			return false;
		})
	}
}

function contrastLink() {
	var contrastLinks = '<li class="nml"><a href="#" rel="contrast" class="styleswitch">Normal contrast</a></li><li class="pnk"><a href="#" rel="contrast-pnk" class="styleswitch">Pink background</a></li><li class="ylw"><a href="#" rel="contrast-ylw" class="styleswitch">Yellow background</a></li><li class="blk"><a href="#" rel="contrast-blk" class="styleswitch">Black background</a></li></li><li class="textSize"><a class="sml on" href="">A</a> <a class="mdm" href="">A</a> <a class="lrg" href="">A</a></li>';
	$('#header ul.headerLinks').not('.forum-content #header ul.headerLinks').append(contrastLinks);
	$(".styleswitch").click(function(){
		var contrast = "/templates/default/css/system/" + ($(this).attr('rel')) + ".css";
		$("#contrast").attr('href',contrast);
		$.cookie("CONTRAST",contrast, {expires: 365, path: '/'});
		return false;
	});
}

function printLink() {
	var javaScriptControls =  '<li class="print"><a href="#print">Print page</a>';
	$('#header ul.headerLinks').not('.forum-content #header ul.headerLinks').prepend(javaScriptControls);
	
	$('#header ul.headerLinks li.print a').click(function() {
		window.print();
		return false;
	});
}

function resizeText(){
	if($.cookie('TEXT_SIZE')) {
		var cookieVal = $.cookie('TEXT_SIZE');
		$('body').addClass(cookieVal);
		$('#header ul.headerLinks li.textSize a').removeClass("on");
		$('#header ul.headerLinks li.textSize a.' + cookieVal).addClass("on");
	}
	$('#header ul.headerLinks li.textSize a').live('click', function() {
		var textSize = $(this).attr('class').split(" ")[0];
		$('body').removeClass('on sml mdm lrg').addClass(textSize);
		$('#header ul.headerLinks li.textSize a').removeClass("on");
		$(this).addClass("on");
		$.cookie('TEXT_SIZE',textSize, { path: '/', expires: 10000 });
		return false;
	});

}

//auto fill search field
function autoFill(id, v){
    $(id).attr({
        value: v
    }).focus(function(){
        if($(this).val()==v){
            $(this).val("").css({
                color: "#333"
            });
        }
    }).blur(function(){
        if($(this).val()==""){
            $(this).val(v);
        }
    });
}

//open link in new tab
$(function(){
    $('a.new-window').click(function(){
        window.open(this.href);
        return false;
    });
});

