/*
 * Thickbox 3.1 - 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	imgLoader		=	new Image() ;
var	imgCloseButton	=	new Image() ;
$(document).ready(function(){
	tb_init('a.thickbox, area.thickbox, input.thickbox');
	imgLoader.src		=	"/images/loadingAnimation.gif" ;
	imgCloseButton.src	=	"/themes/default/images/thickbox_closebutton.gif" ;
});
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) {
//	try {
		if	(typeof(document.body.style.maxHeight) === "undefined")	{	//if IE 6
			if	($('#TB_overlay').size() == 0)	{	//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	($('#TB_overlay').size() == 0)	{
				$("body").append("<div id='TB_overlay'></div><div id='TB_window'></div>");
				$("#TB_overlay").click(tb_remove);
			}
		}
		var	pos			=	tb_pos([208,13]) ;
		if	($('img.tb_loading').size() == 0)	$(imgLoader).appendTo("body").addClass('tb_loading') ;
		$('img.tb_loading').show().css({
			marginTop	:	pos[1] + 'px' ,
			marginLeft	:	pos[0] + 'px'
		}) ;

		caption			=	(caption===null) ? "" : caption ;
		var baseURL		=	(url.indexOf("?") !== -1) ? url.substr(0, url.indexOf("?")) : url ;
		var urlString	=	/\.jpeg$|\.jpe$|\.jpg$|\.png$|\.gif$|\.bmp$/ ;
		var urlType		=	baseURL.toLowerCase().match(urlString) ;

		if	(urlType == '.jpg' || urlType == '.jpeg' || urlType == '.jpe' || urlType == '.png' || urlType == '.gif' || urlType == '.bmp'){	//code to show images
			var	TB_PrevCaption	=	"";
			var	TB_PrevURL		=	"";
			var	TB_PrevHTML		=	"";
			var	TB_NextCaption	=	"";
			var	TB_NextURL		=	"";
			var	TB_NextHTML		=	"";
			var	TB_imageCount	=	"";
			var	TB_FoundURL		=	false;

			if	(imageGroup){
				var	TB_TempArray	=	$('a[@rel=' + imageGroup + ']').get() ;

				for	(var 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='#'>後一張 &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; 前一張</a></span>";
						}
					}
					else	{
						TB_FoundURL		= true;
						TB_imageCount	= "照片 " + (TB_Counter + 1) +" 之 "+ (TB_TempArray.length) ;
					}
				}
			}

			var	imgPreloader		=	new Image();
			imgPreloader.onload		=	function()	{	// Resizing large images - orginal by Christian Montoya edited by me.
				imgPreloader.onload =	null ;
				var pagesize		=	tb_getPageSize();
				var x				=	pagesize[0] - 60 ;
				var y				=	pagesize[1] - 100 ;
				var imageWidth		=	imgPreloader.width;
				var imageHeight 	=	imgPreloader.height;
				TB_WIDTH		=	Math.min(imageWidth,x) ;
				TB_HEIGHT		=	Math.min(imageHeight,y) ;
				$("#TB_window").append("<TABLE CELLSPACING='0' CELLPADDING='0' BORDER='0'><TR><TD COLSPAN='2'><DIV ID='tb_gallery' STYLE='overflow:none'></DIV></TD></TR>"
								+	"<TR VALIGN='top'><TD WIDTH='90%' STYLE='padding-top:10px;'>"
								+	caption+"<P CLASS='TB_secondLine'>" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "</P></TD>"
								+	"<TD WIDTH='10%' ALIGN='right' STYLE='padding-top:10px;'><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'></A></div></TD></TR></TABLE>") ;
				$(imgCloseButton).appendTo('A#TB_closeWindowButton').css('border','none') ;
				$(imgPreloader).appendTo('#tb_gallery') ;
				$('#tb_gallery').css({
						border		:	'#888 solid 1px' ,
						width		:	TB_WIDTH + 'px' ,
						height		:	TB_HEIGHT + 'px'}) ;
				$('<TABLE CELLSPACING="0" CELLPADDING="0" CLASS="tb_indicator"><TR><TD></TD></TR></TABLE>').insertAfter('#tb_gallery') ;
				if	(x < imageWidth)	$('#tb_gallery').css('overflow-x','scroll') ;
				if	(y < imageHeight)	$('#tb_gallery').css('overflow-y','scroll') ;
				$('TABLE.tb_indicator').animate({width: (TB_WIDTH + 2) + 'px'},5000) ;
				$("#TB_closeWindowButton").click(tb_remove);
				TB_HEIGHT	+=	60 ;
				
				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){
					var	keycode	=	(e == null) ? event.keyCode : e.which ;
					if		(keycode == 27)	tb_remove();
					else if	(keycode == 39)	{
						if	(!(TB_NextHTML == ""))	{	document.onkeydown = ""; goNext(); }
					}
					else if	(keycode == 37)	{
						if	(!(TB_PrevHTML == ""))	{	document.onkeydown = "" ; goPrev() ; }
					}
				};
				
				var	pos	=	tb_pos([TB_WIDTH,TB_HEIGHT]) ;
				$("#TB_window").css({
					marginLeft	:	pos[0] + 'px'	,
					marginTop	:	pos[1] + 'px'	,
					width		:	TB_WIDTH + 'px'
				});
				$("img.tb_loading").remove();
				$("#TB_ImageOff").click(tb_remove);
				$("#TB_window").css({display:"block"});
			};
			imgPreloader.src	=	url ;
		}
//	} catch(e) { }
}

function	tb_showIframe(){
	$("img.tb_loading").remove();
	$("#TB_window").css({display:"block"});
}

function	tb_remove() {
	$("#TB_imageOff").unbind("click");
	$("#TB_closeWindowButton").unbind("click") ;
	$("#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_HideSelect').trigger("unload").unbind().remove();});
	$("img.tb_loading").hide();
	document.onkeydown	= "";
	document.onkeyup	= "";
	return false;
}
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_pos(size)	{
	var pagesize	=	tb_getPageSize();
	var	sh			=	document.documentElement.scrollTop	|| document.body.scrollTop ;
	var	sw			=	document.documentElement.scrollLeft || document.body.scrollLeft ;
	var	ml			=	parseInt((pagesize[0] - size[0]) / 2 + sw ,10).toString() ;
	var	mt			=	parseInt((pagesize[1] - size[1]) / 2 + sh ,10).toString() ;
	return	[ml,mt] ;
}
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 ;
}
function	tb_detectMacXFF() {
	var userAgent = navigator.userAgent.toLowerCase();
	if (userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox')!=-1)	return	true ;
}