jQuery.cookie=function(name,value,options){if(typeof value!='undefined'){options=options||{};if(value===null){value='';options.expires=-1}var expires='';if(options.expires&&(typeof options.expires=='number'||options.expires.toUTCString)){var date;if(typeof options.expires=='number'){date=new Date();date.setTime(date.getTime()+(options.expires*24*60*60*1000))}else{date=options.expires}expires='; expires='+date.toUTCString()}var path=options.path?'; path='+(options.path):'';var domain=options.domain?'; domain='+(options.domain):'';var secure=options.secure?'; secure':'';document.cookie=[name,'=',encodeURIComponent(value),expires,path,domain,secure].join('')}else{var cookieValue=null;if(document.cookie&&document.cookie!=''){var cookies=document.cookie.split(';');for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length+1)==(name+'=')){cookieValue=decodeURIComponent(cookie.substring(name.length+1));break}}}return cookieValue}};
$(function(){jQuery.highlight=document.body.createTextRange?function(node,te){var r=document.body.createTextRange();r.moveToElementText(node);for(var i=0;r.findText(te);i++){r.pasteHTML('<span class="highlight">'+r.text+'<\/span>');r.collapse(false)}}:function(node,te){var pos,skip,spannode,middlebit,endbit,middleclone;skip=0;if(node.nodeType==3){pos=node.data.toUpperCase().indexOf(te);if(pos>=0){spannode=document.createElement('span');spannode.className='highlight';middlebit=node.splitText(pos);endbit=middlebit.splitText(te.length);middleclone=middlebit.cloneNode(true);spannode.appendChild(middleclone);middlebit.parentNode.replaceChild(spannode,middlebit);skip=1}}else if(node.nodeType==1&&node.childNodes&&!/(script|style)/i.test(node.tagName)){for(var i=0;i<node.childNodes.length;++i){i+=$.highlight(node.childNodes[i],te)}}return skip}});jQuery.fn.removeHighlight=function(){this.find("span.highlight").each(function(){with(this.parentNode){replaceChild(this.firstChild,this);normalize()}});return this};
$(function(){

	$(window).load(function(){
		$(".float_left").each(function(){
			var $t = $(this);
			$t.parent("li").wrapText("<span style='float:right; width:"+(520-$t.width())+"px'/>").addClass("clearer")
			.end()
			.parents("p").addClass("clearer");
		});
		$(".float_right").each(function(){
			var $t = $(this);
			$t.parent("li").wrapText("<span style='float:left; width:"+(520-$t.width())+"px'/>").addClass("clearer")
			.end()
			.parents("p").addClass("clearer");
		});
		$(".section:not(.hard) img").not(".icon_img, img[src*=tick]").each(function(){
			$t = $(this);
			var caption = $t.attr("title")||$t.attr("alt");
			$t.wrap("<div class='image_box'/>");
			$t.parent().addClass($t.attr("class")).append("<p class='caption'>"+caption+"</p>");
			$t.removeAttr("class");
			var img = $(this);
			var imgbox = img.parent();
			imgbox.width(img.width());
		});
	});
	$("a[href$=jpg]:has(.image_box)")
	.filter("[href$=jpg],[href$=gif],[href$=png]")
	.find(".image_box")
	.append("<p class='img_link'>Click for larger image</p>");

	if ($.browser.msie)
	$("#form_sitesearch").hover(function(){$(this).toggleClass("bright_search");},function(){$(this).toggleClass("bright_search");})
	
	//little hack to get the embed the YouTube movie.
	$(".section a[href*=c_Lop53sxK0]").after(
	"<object width='480' height='295'><param name='movie' value='http://www.youtube.com/v/c_Lop53sxK0&hl=en&fs=1&rel=0&color1=0x006699&color2=0x54abd6'></param><param name='allowFullScreen' value='true'></param><param name='allowscriptaccess' value='always'></param><embed src='http://www.youtube.com/v/c_Lop53sxK0&hl=en&fs=1&rel=0&color1=0x006699&color2=0x54abd6' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' width='480' height='295'></embed></object>"
	);

	var search_term = window.location.toString().split("search_term=").pop().split("&").shift();
	if (search_term.length > 1) {
		search_term = search_term.replace(/\+/g," ").replace(/\s+/g," ");
		var search_terms = search_term.split(" ");
		$(".section, h1, #column1 ,#search_results ol").not("#search_results").each(function(){
			$.highlight(this, search_term.toUpperCase());
			for (var i = 0; i < search_terms.length; i++) {
				if (search_terms[i].length > 1) {
					$.highlight(this, search_terms[i].toUpperCase());
				}
			}
		});
	}	
	
	$.gaTracker('UA-3890847-6');
});


jQuery.fn.wrapText = function(html){ 
  return this.each(function(){ 

        $(this.childNodes).filter("[@nodeType=3]").each(function(){ 
                if($.trim(this.nodeValue).length > 0) 
                        $(this).wrap(html) 
        }) 

  }); 
}; 

/* ga.js Tracking */
(function($){$.gaTracker=function(code,opts){opts=jQuery.extend({external:'/external/',mailto:'/mailtos/',download:'/downloads/',extensions:['pdf','doc','xls','csv','jpg','gif','mp3','swf','txt','ppt','zip','gz','dmg','xml','js']},opts);function decorateLink(u){var trackingURL='';if(u.indexOf('://')==-1&&u.indexOf('mailto:')!=0){var ext=u.split('.')[u.split('.').length-1];var exts=opts.extensions;for(i=0;i<exts.length;i++){if(ext==exts[i]){trackingURL=opts.download+u;break}}}else{if(u.indexOf('mailto:')==0){trackingURL=opts.mailto+u.substring(7)}else{var regex=/([^:\/]+)*(?::\/\/)*([^:\/]+)(:[0-9]+)*\/?/i;var linkparts=regex.exec(u);var urlparts=regex.exec(location.href);if(linkparts[2]!=urlparts[2])trackingURL=opts.external+u}}return trackingURL}function addTracking(){$.pageTracker=_gat._getTracker(code);$.pageTracker._initData();$.pageTracker._trackPageview();$('a').each(function(){var u=$(this).attr('href');if(typeof(u)!='undefined'){var newLink=decorateLink(u);if(newLink.length){$(this).click(function(){$.pageTracker._trackPageview(newLink)})}}})}function initGA(){try{var gaURL=(location.href.indexOf('https')==0?'https://ssl':'http://www');gaURL+='.google-analytics.com/ga.js';$.getScript(gaURL,function(){addTracking()})}catch(err){console.log('Failed to load Google Analytics:'+err)}}initGA()}})(jQuery);
