//Master Javascript file
//version:   4.0
//email:     leigh.howells@headscape.co.uk
//website:   http://www.headscape.co.uk


// Loads up the various functions we are going to use
$(document).ready(function() {
    jsEnabled();
    flashEnabled();
    popup('a[rel]');
    addCurvyCornersSmall();
    addCurvyCorners();
    initFacebox();
    initRollovers();
    openShut();
    searchBoxes();
});

// Adds a class to the body to style differently depending on whether Javascript is enabled.
function jsEnabled() {
    $("body").addClass("jsenabled");
}
function flashEnabled() {
    if (deconcept.SWFObjectUtil.getPlayerVersion().major < 8) {
        $("body").addClass("noflashversion");
    } else {
        $("body").addClass("hasflashversion");
    }
}

//Manages popup windows using facebox
function popup(Elem) {
	$(Elem).click(function(){
			var theUrl = this.href.split("#")
			var addr = (theUrl[0] + " #" + theUrl[1] + " > *");
			if (this.rel == "screenshot") {
				var c = $("<div id='" + theUrl[1] + "'><div  style='text-align:center;'><img src='/scripts/facebox/loading.gif' /></div></div>");
			};
			if (this.rel == "video") {
			    var c = $("<div id='video'><div  style='text-align:left;'><img src='/scripts/facebox/loading.gif' /></div></div>");
			};
			if (this.rel == "signup") {
			    var c = $("<div id='signup'><div  style='text-align:left;'><img src='/scripts/facebox/loading.gif' /></div></div>");
			};
			if (this.rel == "loginpop") {
			    var c = $("<div id='loginpop'><div  style='text-align:left;'><img src='/scripts/facebox/loading.gif' /></div></div>");
			};
			$(c).load(addr, function(){
				jQuery.facebox(c);
				//csLinks("#facebox li a");
			});
			return false;
	});
};


// JavaScript Document
function initRollovers() {

  if (!document.getElementById) return

    var aPreLoad = new Array();
    var sTempSrc;
    var aImages = document.getElementsByTagName('img');

    for (var i = 0; i < aImages.length; i++) {
    if (aImages[i].className == 'imgover') {
      var src = aImages[i].getAttribute('src');
      var ftype = src.substring(src.lastIndexOf('.'), src.length);
      var hsrc = src.replace(ftype, '_o'+ftype);

      aImages[i].setAttribute('hsrc', hsrc);

      aPreLoad[i] = new Image();
      aPreLoad[i].src = hsrc;

      aImages[i].onmouseover = function() {
      sTempSrc = this.getAttribute('src');
      this.setAttribute('src', this.getAttribute('hsrc'));
    }

    aImages[i].onmouseout = function() {
      if (!sTempSrc) sTempSrc = this.getAttribute('src').
          replace('_o'+ftype, ftype);
        this.setAttribute('src', sTempSrc);
      }
    }
  }
}


//Initialise facebox popups
function initFacebox() {
  $('a[rel*=facebox]').facebox()
}

/*Toggles current FAQ open and shut on clicking question*/
function openShut() {
	$(document).ready(function(){
		$(".lAnswer").hide();
		$(".lQuestion").click(function() {
			$(this).next(".lAnswer").toggle(500);
			
		});
	});
}


// Toggle the search form rows
function searchBoxes() {
	$("#searchForm dl").each(
		function(){
			var sTitle = $(this).find("dt");
			var sForm = $(this).find("dd");
			sTitle.fadeTo(0, 0.5);
			sTitle.click(
				function() {
					sForm.toggle(800);
					return false;
				}
			);
			sTitle.toggle(
				function(){
					$(this).fadeTo(2000, 1);
					sTitle.css({"color":"#fff"});
					sTitle.css({"background-position":"0 0.5em"});
				},
				function(){
					$(this).fadeTo(2000, 0.5);
					sTitle.css({"background-position":""});
				}
			);
		}
	);
}

// Creates white corners with oultines
function addCurvyCorners() {
	$(".curvedBox").corner({
	tl: { radius: 14 },
	tr: { radius: 14 },
	bl: { radius: 14 },
	br: { radius: 14 },
	antiAlias: true,
	autoPad: false,
	validTags: ["div"]}
	);
}

// Creates white corners with oultines
function addCurvyCornersSmall() {
	$(".curvedBoxSmall").corner({
	tl: { radius: 11 },
	tr: { radius: 11 },
	bl: { radius: 11 },
	br: { radius: 11 },
	antiAlias: true,
	autoPad: true,
	validTags: ["div"]}
	);
}