function bodyLoaded(){
	roundbox();
	faq_list();
	externallink();
	superfish();
};

/* Utilities
=======================================================================================================*/

function createCookie(name,value,minutes) {
	if (minutes) {
		var date = new Date();
		date.setTime(date.getTime()+(minutes*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c  = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}


/* Superfish dropdown menus
=======================================================================================================*/

function superfish() {
	$('#firstnav > ul').superfish({
		animation: 	{ opacity:'show', height:'show' },
		speed: 'normal'
	});
}


/* Add extra markup hooks enabling css rounded corners
=======================================================================================================*/

function roundbox(){	
	$("div.roundbox")
	.css("border","0")
	.css("padding","24px");

	$("div.roundbox").wrapInner('<div class="dialog">'+
		'<div class="bd">'+
		'<div class="c">'+
		'<div class="s clearfix">'+
		'</div>'+
		'</div>'+
		'</div>'+
		'</div>'
	);
	
	$('div.dialog').prepend('<div class="hd">'+
		'<div class="c"></div>'+
		'</div>')
		.append('<div class="ft">'+
		'<div class="c"></div>'+
		'</div>'
	);
};


/* Expandable/collapsible FAQ list 
=======================================================================================================*/
function faq_list(){
	$(".faq_list dd").addClass("hide"); // hide all answers if javascript is enabled	
	
	$(".faq_list dt").click(function(){
		if($(this).attr("class")){ // collapse the clicked dt if it is already expanded
			$(this)
			.removeClass("selected")
			.next("dd")
				.removeClass("selected")
				.toggleClass("hide")
			.end()
		} else { 
			$(this) // reset the list and expand the selected element
			.siblings("dd.selected") 
				.toggleClass("hide")
			.end()
			.siblings(".selected")
				.removeClass("selected")
			.end()
			.toggleClass("selected")
			.next("dd")
				.toggleClass("hide")
				.toggleClass("selected")
			.end()
		}
	});
}


/* XHTML Strict compliant target="_blank" replacement. Use rel="external" on links to achieve same effect.
=======================================================================================================*/

function externallink(){
	$("a[rel*=external]")
	.attr("target", "_blank")
	.addClass("external"); // Add .external class for IE6 as it doesn't support attribute CSS selectors
}
