/*
 * Thickbox 3 - One Box To Rule Them All.
 * By Cody Lindley (http://www.codylindley.com)
 * Copyright (c) 2007 cody lindley
 * Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php
*/
		  
var tb_pathToImage = "/images/ajax/ajax_loader.gif";
var tb_closeCaption = "Close";
var tb_closeCaption2 = "";

/*
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('$(9).2K(8(){1u(\'a.19, 3o.19, 3g.19\');1y=1q 1s();1y.Q=2C});8 1u(1G){$(1G).d(8(){6 t=L.I||L.1Z||F;6 a=L.n||L.1R;6 g=L.1M||K;1b(t,a,g);L.2z();E K})}8 1b(D,c,Y){3k{3(1A 9.m.G.23==="1x"){$("m","H").k({v:"1W%",o:"1W%"});$("H").k("1V","2N");3(9.1S("1p")===F){$("m").q("<18 5=\'1p\'></18><4 5=\'B\'></4><4 5=\'7\'></4>");$("#B").d(u)}}b{3(9.1S("B")===F){$("m").q("<4 5=\'B\'></4><4 5=\'7\'>");$("#B").d(u)}}3(D===F){D=""}$("m").q("<4 5=\'C\'><1H Q=\'"+1y.Q+"\' /></4>");$(\'#C\').2v();6 16;3(c.W("?")!==-1){16=c.3n(0,c.W("?"))}b{16=c}6 1D=/\\.2p|\\.2o|\\.2m|\\.2j|\\.2i/g;6 T=16.2f().2d(1D);3(T==\'.2p\'||T==\'.2o\'||T==\'.2m\'||T==\'.2j\'||T==\'.2i\'){1C="";1F="";14="";1l="";1j="";N="";1w="";1v=K;3(Y){r=$("a[@1M="+Y+"]").3a();1Y(p=0;((p<r.1d)&&(N===""));p++){6 2Z=r[p].n.2f().2d(1D);3(!(r[p].n==c)){3(1v){1l=r[p].I;1j=r[p].n;N="<1c 5=\'1U\'>&1e;&1e;<a n=\'#\'>2Q &2O;</a></1c>"}b{1C=r[p].I;1F=r[p].n;14="<1c 5=\'22\'>&1e;&1e;<a n=\'#\'>&2L; 2J</a></1c>"}}b{1v=1Q;1w="1s "+(p+1)+" 2G "+(r.1d)}}}M=1q 1s();M.1o=8(){M.1o=F;6 1n=1O();6 x=1n[0]-1L;6 y=1n[1]-1L;6 f=M.o;6 j=M.v;3(f>x){j=j*(x/f);f=x;3(j>y){f=f*(y/j);j=y}}b 3(j>y){f=f*(y/j);j=y;3(f>x){j=j*(x/f);f=x}}U=f+30;1a=j+2D;$("#7").q("<a n=\'\' 5=\'1I\' I=\'1m\'><1H 5=\'2B\' Q=\'"+c+"\' o=\'"+f+"\' v=\'"+j+"\' 1R=\'"+D+"\'/></a>"+"<4 5=\'2A\'>"+D+"<4 5=\'2y\'>"+1w+14+N+"</4></4><4 5=\'2x\'><a n=\'#\' 5=\'P\' I=\'1m\'>"+2w+"</a> "+2u+"</4>");$("#P").d(u);3(!(14==="")){8 X(){3($(9).O("d",X)){$(9).O("d",X)}$("#7").s();$("m").q("<4 5=\'7\'></4>");1b(1C,1F,Y);E K}$("#22").d(X)}3(!(N==="")){8 1i(){$("#7").s();$("m").q("<4 5=\'7\'></4>");1b(1l,1j,Y);E K}$("#1U").d(1i)}9.15=8(e){3(e==F){z=2r.1E}b{z=e.2q}3(z==27){u()}b 3(z==3m){3(!(N=="")){9.15="";1i()}}b 3(z==3l){3(!(14=="")){9.15="";X()}}};13();$("#C").s();$("#1I").d(u);$("#7").k({R:"S"})};M.Q=c}b{6 2n=c.2l(/^[^\\?]+\\??/,\'\');6 J=2k(2n);U=(J[\'o\']*1)+30||3j;1a=(J[\'v\']*1)+3i||3h;11=U-30;12=1a-3f;3(c.W(\'2e\')!=-1){2c=c.1B(\'3e\');$("#7").q("<4 5=\'2b\'><4 5=\'1z\'>"+D+"</4><4 5=\'2a\'><a n=\'#\' 5=\'P\' I=\'1m\'>28</a> 26 25 24</4></4><18 3d=\'0\' 3c=\'0\' Q=\'"+2c[0]+"\' 5=\'1k\' 1Z=\'1k\' G=\'o:"+(11+29)+"l;v:"+(12+17)+"l;\' 1o=\'21()\'> </18>")}b{3($("#7").k("R")!="S"){3(J[\'20\']!="1Q"){$("#7").q("<4 5=\'2b\'><4 5=\'1z\'>"+D+"</4><4 5=\'2a\'><a n=\'#\' 5=\'P\'>28</a> 26 25 24</4></4><4 5=\'A\' G=\'o:"+11+"l;v:"+12+"l\'></4>")}b{$("#B").O();$("#7").q("<4 5=\'A\' 3b=\'39\' G=\'o:"+11+"l;v:"+12+"l;\'></4>")}}b{$("#A")[0].G.o=11+"l";$("#A")[0].G.v=12+"l";$("#A")[0].38=0;$("#1z").H(D)}}$("#P").d(u);3(c.W(\'37\')!=-1){$("#A").H($(\'#\'+J[\'36\']).H());13();$("#C").s();$("#7").k({R:"S"})}b 3(c.W(\'2e\')!=-1){13();3(35[\'1k\']===1x){$("#C").s();$("#7").k({R:"S"});$(9).32(8(e){6 1f=e.1E;3(1f==27){u()}})}}b{$("#A").31(c+="&2Y="+(1q 2X().2W()),8(){13();$("#C").s();1u("#A a.19");$("#7").k({R:"S"})})}}3(!J[\'20\']){9.2V=8(e){3(e==F){z=2r.1E}b{z=e.2q}3(z==27){u()}}}}2U(e){}}8 21(){$("#C").s();$("#7").k({R:"S"})}8 u(){$("#2T").O("d");$("#B").O("d");$("#P").O("d");$("#7").2S("2R",8(){$(\'#7,#B,#1p\').s()});$("#C").s();3(1A 9.m.G.23=="1x"){$("m","H").k({v:"1T",o:"1T"});$("H").k("1V","")}9.15="";E K}8 13(){$("#7").k({2P:\'-\'+1X((U/2),10)+\'l\',o:U+\'l\'});3(!(2M.33.34&&1A 2I==\'8\')){$("#7").k({2H:\'-\'+1X((1a/2),10)+\'l\'})}}8 2k(1r){6 1g={};3(!1r){E 1g}6 1t=1r.1B(/[;&]/);1Y(6 i=0;i<1t.1d;i++){6 V=1t[i].1B(\'=\');3(!V||V.1d!=2){2F}6 1f=1P(V[0]);6 1h=1P(V[1]);1h=1h.2l(/\\+/g,\' \');1g[1f]=1h}E 1g}8 1O(){6 Z=9.2E;6 w=2g.1N||2t.1N||(Z&&Z.1K)||9.m.1K;6 h=2g.1J||2t.1J||(Z&&Z.2h)||9.m.2h;2s=[w,h];E 2s}',62,211,'|||if|div|id|var|TB_window|function|document||else|url|click||imageWidth||||imageHeight|css|px|body|href|width|TB_Counter|append|TB_TempArray|remove||tb_remove|height||||keycode|TB_ajaxContent|TB_overlay|TB_load|caption|return|null|style|html|title|params|false|this|imgPreloader|TB_NextHTML|unbind|TB_closeWindowButton|src|display|block|urlType|TB_WIDTH|KeyVal|indexOf|goPrev|imageGroup|de||ajaxContentW|ajaxContentH|tb_position|TB_PrevHTML|onkeydown|baseURL||iframe|thickbox|TB_HEIGHT|tb_show|span|length|nbsp|key|Params|val|goNext|TB_NextURL|TB_iframeContent|TB_NextCaption|Close|pagesize|onload|TB_HideSelect|new|query|Image|Pairs|tb_init|TB_FoundURL|TB_imageCount|undefined|imgLoader|TB_ajaxWindowTitle|typeof|split|TB_PrevCaption|urlString|keyCode|TB_PrevURL|domChunk|img|TB_ImageOff|innerHeight|clientWidth|150|rel|innerWidth|tb_getPageSize|unescape|true|alt|getElementById|auto|TB_next|overflow|100|parseInt|for|name|modal|tb_showIframe|TB_prev|maxHeight|Key|Esc|or||close||TB_closeAjaxWindow|TB_title|urlNoQuery|match|TB_iframe|toLowerCase|window|clientHeight|bmp|gif|tb_parseQuery|replace|png|queryString|jpeg|jpg|which|event|arrayPageSize|self|tb_closeCaption2|show|tb_closeCaption|TB_closeWindow|TB_secondLine|blur|TB_caption|TB_Image|tb_pathToImage|60|documentElement|continue|of|marginTop|XMLHttpRequest|Prev|ready|lt|jQuery|hidden|gt|marginLeft|Next|fast|fadeOut|TB_imageOff|catch|onkeyup|getTime|Date|random|urlTypeTemp||load|keyup|browser|msie|frames|inlineId|TB_inline|scrollTop|TB_modal|get|class|hspace|frameborder|TB_|45|input|440|40|630|try|188|190|substr|area'.split('|'),0,{}))
*/

/*!!!!!!!!!!!!!!!!! edit below this line at your own risk !!!!!!!!!!!!!!!!!!!!!!!*/

//on page load call tb_init
$(document).ready(function(){   
	tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox
	imgLoader = new Image();// preload image
	imgLoader.src = tb_pathToImage;
});

//add thickbox to href & area elements that have a class of .thickbox
function tb_init(domChunk){
	$(domChunk).click(function(){
	var t = this.title || this.name || null;
	var a = this.href || this.alt;
	var g = this.rel || false;
	tb_show(t,a,g);
	this.blur();
	return false;
	});
}

function tb_show(caption, url, imageGroup) {//function called when the user clicks on a thickbox link

	try {
		if (typeof document.body.style.maxHeight === "undefined") {//if IE 6
			$("body","html").css({height: "100%", width: "100%"});
			$("html").css("overflow","hidden");
			if (document.getElementById("TB_HideSelect") === null) {//iframe to hide select elements in ie6
				$("body").append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay'></div><div id='TB_window'></div>");
				$("#TB_overlay").click(tb_remove);
			}
		}else{//all others
			if(document.getElementById("TB_overlay") === null){
				$("body").append("<div id='TB_overlay'></div><div id='TB_window'>");
				$("#TB_overlay").click(tb_remove);
			}
		}
		
		if(caption===null){caption="";}
		$("body").append("<div id='TB_load'><img src='"+imgLoader.src+"' /></div>");//add loader to the page
		$('#TB_load').show();//show loader
		
		var baseURL;
	   if(url.indexOf("?")!==-1){ //ff there is a query string involved
			baseURL = url.substr(0, url.indexOf("?"));
	   }else{ 
	   		baseURL = url;
	   }
	   
	   var urlString = /\.jpg|\.jpeg|\.png|\.gif|\.bmp/g;
	   var urlType = baseURL.toLowerCase().match(urlString);

		if(urlType == '.jpg' || urlType == '.jpeg' || urlType == '.png' || urlType == '.gif' || urlType == '.bmp'){//code to show images
				
			TB_PrevCaption = "";
			TB_PrevURL = "";
			TB_PrevHTML = "";
			TB_NextCaption = "";
			TB_NextURL = "";
			TB_NextHTML = "";
			TB_imageCount = "";
			TB_FoundURL = false;
			if(imageGroup){
				TB_TempArray = $("a[@rel="+imageGroup+"]").get();
				for (TB_Counter = 0; ((TB_Counter < TB_TempArray.length) && (TB_NextHTML === "")); TB_Counter++) {
					var urlTypeTemp = TB_TempArray[TB_Counter].href.toLowerCase().match(urlString);
						if (!(TB_TempArray[TB_Counter].href == url)) {						
							if (TB_FoundURL) {
								TB_NextCaption = TB_TempArray[TB_Counter].title;
								TB_NextURL = TB_TempArray[TB_Counter].href;
								TB_NextHTML = "<span id='TB_next'>&nbsp;&nbsp;<a href='#'>Next &gt;</a></span>";
							} else {
								TB_PrevCaption = TB_TempArray[TB_Counter].title;
								TB_PrevURL = TB_TempArray[TB_Counter].href;
								TB_PrevHTML = "<span id='TB_prev'>&nbsp;&nbsp;<a href='#'>&lt; Prev</a></span>";
							}
						} else {
							TB_FoundURL = true;
							TB_imageCount = "Image " + (TB_Counter + 1) +" of "+ (TB_TempArray.length);											
						}
				}
			}

			imgPreloader = new Image();
			imgPreloader.onload = function(){		
			imgPreloader.onload = null;
				
			// Resizing large images - orginal by Christian Montoya edited by me.
			var pagesize = tb_getPageSize();
			var x = pagesize[0] - 70;
			var y = pagesize[1] - 70;
			var imageWidth = imgPreloader.width;
			var imageHeight = imgPreloader.height;
			if (imageWidth > x) {
				imageHeight = imageHeight * (x / imageWidth); 
				imageWidth = x; 
				if (imageHeight > y) { 
					imageWidth = imageWidth * (y / imageHeight); 
					imageHeight = y; 
				}
			} else if (imageHeight > y) { 
				imageWidth = imageWidth * (y / imageHeight); 
				imageHeight = y; 
				if (imageWidth > x) { 
					imageHeight = imageHeight * (x / imageWidth); 
					imageWidth = x;
				}
			}
			// End Resizing
			
			TB_WIDTH = imageWidth + 30;
			TB_HEIGHT = imageHeight + 60;
			$("#TB_window").append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+"'/></a>" + "<div id='TB_caption'>"+caption+"<div id='TB_secondLine'>" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'>"+tb_closeCaption+"</a> "+tb_closeCaption2+"</div>"); 		
			
			$("#TB_closeWindowButton").click(tb_remove);
			
			if (!(TB_PrevHTML === "")) {
				function goPrev(){
					if($(document).unbind("click",goPrev)){$(document).unbind("click",goPrev);}
					$("#TB_window").remove();
					$("body").append("<div id='TB_window'></div>");
					tb_show(TB_PrevCaption, TB_PrevURL, imageGroup);
					return false;	
				}
				$("#TB_prev").click(goPrev);
			}
			
			if (!(TB_NextHTML === "")) {		
				function goNext(){
					$("#TB_window").remove();
					$("body").append("<div id='TB_window'></div>");
					tb_show(TB_NextCaption, TB_NextURL, imageGroup);				
					return false;	
				}
				$("#TB_next").click(goNext);
				
			}

			document.onkeydown = function(e){ 	
				if (e == null) { // ie
					keycode = event.keyCode;
				} else { // mozilla
					keycode = e.which;
				}
				if(keycode == 27){ // close
					tb_remove();
				} else if(keycode == 190){ // display previous image
					if(!(TB_NextHTML == "")){
						document.onkeydown = "";
						goNext();
					}
				} else if(keycode == 188){ // display next image
					if(!(TB_PrevHTML == "")){
						document.onkeydown = "";
						goPrev();
					}
				}	
			};
			
			tb_position();
			$("#TB_load").remove();
			$("#TB_ImageOff").click(tb_remove);
			$("#TB_window").css({display:"block"}); //for safari using css instead of show
			};
			
			imgPreloader.src = url;
		}else{//code to show html pages
			
			var queryString = url.replace(/^[^\?]+\??/,'');
			var params = tb_parseQuery( queryString );

			TB_WIDTH = (params['width']*1) + 30 || 630; //defaults to 630 if no paramaters were added to URL
			TB_HEIGHT = (params['height']*1) + 40 || 440; //defaults to 440 if no paramaters were added to URL
			ajaxContentW = TB_WIDTH - 30;
			ajaxContentH = TB_HEIGHT - 45;
			
			if(url.indexOf('TB_iframe') != -1){				
					urlNoQuery = url.split('TB_');		
					$("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a> or Esc Key</div></div><iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent' style='width:"+(ajaxContentW + 29)+"px;height:"+(ajaxContentH + 17)+"px;' onload='tb_showIframe()'> </iframe>");
				}else{
					if($("#TB_window").css("display") != "block"){
						if(params['modal'] != "true"){
						$("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a> or Esc Key</div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px'></div>");
						}else{
						$("#TB_overlay").unbind();
						$("#TB_window").append("<div id='TB_ajaxContent' class='TB_modal' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px;'></div>");	
						}
					}else{
						$("#TB_ajaxContent")[0].style.width = ajaxContentW +"px";
						$("#TB_ajaxContent")[0].style.height = ajaxContentH +"px";
						$("#TB_ajaxContent")[0].scrollTop = 0;
						$("#TB_ajaxWindowTitle").html(caption);
					}
			}
					
			$("#TB_closeWindowButton").click(tb_remove);
			
				if(url.indexOf('TB_inline') != -1){	
					$("#TB_ajaxContent").html($('#' + params['inlineId']).html());
					tb_position();
					$("#TB_load").remove();
					$("#TB_window").css({display:"block"}); 
				}else if(url.indexOf('TB_iframe') != -1){
					tb_position();
					if(frames['TB_iframeContent'] === undefined){//be nice to safari
						$("#TB_load").remove();
						$("#TB_window").css({display:"block"});
						$(document).keyup( function(e){ var key = e.keyCode; if(key == 27){tb_remove();}});
					}
				}else{
					$("#TB_ajaxContent").load(url += "&random=" + (new Date().getTime()),function(){//to do a post change this load method
						tb_position();
						$("#TB_load").remove();
						tb_init("#TB_ajaxContent a.thickbox");
						$("#TB_window").css({display:"block"});
					});
				}
			
		}

		if(!params['modal']){
			document.onkeyup = function(e){ 	
				if (e == null) { // ie
					keycode = event.keyCode;
				} else { // mozilla
					keycode = e.which;
				}
				if(keycode == 27){ // close
					tb_remove();
				}	
			};
		}
		
	} catch(e) {
		//nothing here
	}
}

//helper functions below
function tb_showIframe(){
	$("#TB_load").remove();
	$("#TB_window").css({display:"block"});
}

function tb_remove() {
 	$("#TB_imageOff").unbind("click");
	$("#TB_overlay").unbind("click");
	$("#TB_closeWindowButton").unbind("click");
	$("#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_HideSelect').remove();});
	$("#TB_load").remove();
	if (typeof document.body.style.maxHeight == "undefined") {//if IE 6
		$("body","html").css({height: "auto", width: "auto"});
		$("html").css("overflow","");
	}
	document.onkeydown = "";
	return false;
}

function tb_position() {
$("#TB_window").css({marginLeft: '-' + parseInt((TB_WIDTH / 2),10) + 'px', width: TB_WIDTH + 'px'});
	if ( !(jQuery.browser.msie && typeof XMLHttpRequest == 'function')) { // take away IE6
		$("#TB_window").css({marginTop: '-' + parseInt((TB_HEIGHT / 2),10) + 'px'});
	}
}

function tb_parseQuery ( query ) {
   var Params = {};
   if ( ! query ) {return Params;}// return empty object
   var Pairs = query.split(/[;&]/);
   for ( var i = 0; i < Pairs.length; i++ ) {
      var KeyVal = Pairs[i].split('=');
      if ( ! KeyVal || KeyVal.length != 2 ) {continue;}
      var key = unescape( KeyVal[0] );
      var val = unescape( KeyVal[1] );
      val = val.replace(/\+/g, ' ');
      Params[key] = val;
   }
   return Params;
}

function tb_getPageSize(){
	var de = document.documentElement;
	var w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
	var h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight;
	arrayPageSize = [w,h];
	return arrayPageSize;
}
