/*@cc_on _d=document;eval('var document=_d')@*/
var preLoadImg = new Object();window.onload = function(){};window.onunload = function(){};var mousePosition = 0;var scrollflag = false;var boxDocument;var isiPad;var boxDocumentLength = 0;var thumbnailContainerRoot;var windowRoot;var wariai = 0;var op = 35;var currentNumber= 0;var nowPosition = -1;
$(document).ready(function(){
	$("#thumbnailArea").css("padding-bottom",0);
	isiPad = (navigator.userAgent.match(/iPhone/i)) ==null && (navigator.userAgent.match(/iPad/i) == null);
	$("#thumbnailArea").css({"height":62,"overflow":"hidden"});
	if(isiPad){
		$("#thumbnailContainer").css({"width":4000,"overflow":"hidden","position":"absolute","left":35,"margin-left":0});
	}else{
		$("#thumbnailContainer").css({"width":4000,"overflow":"hidden","margin-left":35});
	}
	$("#prev").css("display","inline");
	$("#next").css("display","inline");
	$("img.rollover").each(function(){
		var imgSrc = this.src;
		var sep = imgSrc.lastIndexOf('.');
		var onSrc = imgSrc.substr(0, sep) + '_ovr' + imgSrc.substr(sep, 4);
		preLoadImg[imgSrc] = new Image();
		preLoadImg[imgSrc].src = onSrc;
		$(this).hover(function() {
			if($(this).css("opacity")==1){
				this.src = onSrc;
				$(this).css("cursor","pointer");
			}else{
				$(this).css("cursor","default");
			}
		},function() {
			this.src = imgSrc;
		});
	});
	$("img.rollover2").mouseover(function(){
		$("img.rollover2").fadeOut(100,function(){
			$("img.rollover2").fadeIn(400);
		});
	});
	boxDocument = $("div.box");
	boxDocumentLength = boxDocument.length;
	for(var i = 0 ; i < boxDocumentLength ; i++)dock(i);
	$("#thumbnailArea").hover(function(kmouse){
		mousePosition = kmouse.pageX;scrollflag = true;
	},function(kmouse){
		nowPosition = -1;
		scrollflag = false;
		mousePosition = kmouse.pageX-$(window).scrollLeft();
	}).mousemove(function(kmouse){
		mousePosition = kmouse.pageX-$(window).scrollLeft();
	});
	thumbnailContainerRoot = $("#thumbnailContainer");
	windowRoot = $(window);
	if(isiPad){
		setInterval(thumbnailMoving,20);
	}else{
		setInterval(thumbnailMoving_ipad,20);
	}
	$('div.box a').lightBox();
	if(isiPad){
		if($(window).scrollLeft()+$(window).width() > 800){
			$("#content").css("width",$(window).scrollLeft()+$(window).width());
		}else{
			$("#content").css("width",800);
		};
		$(window).scroll(function(){
			if($(window).scrollLeft()+$(window).width() > 800){
				$("#content").css("width",$(window).scrollLeft()+$(window).width());
			}else{
				$("#content").css("width",800);
			};
		});
		$(window).resize(function(){
			if($(window).scrollLeft()+$(window).width() > 800){
				$("#content").css("width",$(window).scrollLeft()+$(window).width());
			}else{
				$("#content").css("width",800);
			};
		});
	};
});
var floatLeft = 35.0
function thumbnailMoving(){
	var winWid = windowRoot.width();
	if(scrollflag == true){
		if(mousePosition > winWid*3/5){
			wariai = (mousePosition-winWid*3/5)/(winWid*2/5)*60;
			op = thumbnailContainerRoot.offset().left - wariai;
		}else if(mousePosition < winWid*2/5){
			wariai = (winWid*2/5-mousePosition)/(winWid*2/5)*60;
			op = thumbnailContainerRoot.offset().left + wariai;
		}
	};
	winWid = windowRoot.width();
	if(boxDocumentLength*61+72-$(document).width()< 0){
		op = 35;
	}else{
		if(op>35){
			op = 35;
		}else if(op< -72-(boxDocumentLength*61-winWid)+($(document).width()-winWid)){
			op = -72-(boxDocumentLength*61-winWid)+($(document).width()-winWid);
		};
	};
	if(op-floatLeft > 0.1 || op-floatLeft < -0.1){
		floatLeft = floatLeft +(op-floatLeft)/8;
		thumbnailContainerRoot.css("left",floatLeft);
	}
	for(var i = 0 ; i < boxDocumentLength ; i++){
		var imgDocument = boxDocument.eq(i).find("img");
		if(currentNumber ==i){
			if(1 - parseFloat(imgDocument.css("opacity")) >0.02)imgDocument.css("opacity",(1- parseFloat(imgDocument.css("opacity")))/4+parseFloat(imgDocument.css("opacity")));
			imgDocument.css("border-color","#808080");
		}else{
			if(nowPosition != -1){
				if(i == nowPosition){
					if(1 - parseFloat(imgDocument.css("opacity")) >0.02)imgDocument.css("opacity",(1- parseFloat(imgDocument.css("opacity")))/4+parseFloat(imgDocument.css("opacity")));
					imgDocument.css("border-color","#808080");
				}else{
					if(parseFloat(imgDocument.css("opacity")) - 0.4 >0.02)imgDocument.css("opacity",(0.4- parseFloat(imgDocument.css("opacity")))/8+parseFloat(imgDocument.css("opacity")));
					imgDocument.css("border-color","#ffffff");
				};
			}else{
				if(parseFloat(imgDocument.css("opacity")) - 0.4 >0.02)imgDocument.css("opacity",(0.4- parseFloat(imgDocument.css("opacity")))/8+parseFloat(imgDocument.css("opacity")));
				imgDocument.css("border-color","#ffffff");
			};
		};
	};
};
function thumbnailMoving_ipad(){
	var winWid = windowRoot.width();
	winWid = windowRoot.width();
	if(boxDocumentLength*61+72-$(document).width() < 0){
		op = 35;
	}else{
		if(op>35){
			op = 35;
		}else if(op< -72-(boxDocumentLength*61-winWid-($(document).width()-winWid))){
			op = -72-(boxDocumentLength*61-winWid-($(document).width()-winWid));
		};
	};
	if(op-floatLeft > 0.1 || op-floatLeft < -0.1){
		floatLeft = floatLeft +(op-floatLeft)/8;
		thumbnailContainerRoot.css("margin-left",floatLeft);
	}
	for(var i = 0 ; i < boxDocumentLength ; i++){
		var imgDocument = boxDocument.eq(i).find("img");
		if(currentNumber ==i){
			if(1 - parseFloat(imgDocument.css("opacity")) >0.02)imgDocument.css("opacity",(1- parseFloat(imgDocument.css("opacity")))/4+parseFloat(imgDocument.css("opacity")));
			imgDocument.css("border-color","#808080");
		}else{
			if(nowPosition != -1){
				if(i == nowPosition){
					if(1 - parseFloat(imgDocument.css("opacity")) >0.02)imgDocument.css("opacity",(1- parseFloat(imgDocument.css("opacity")))/4+parseFloat(imgDocument.css("opacity")));
					imgDocument.css("border-color","#808080");
				}else{
					if(parseFloat(imgDocument.css("opacity")) - 0.4 >0.02)imgDocument.css("opacity",(0.4- parseFloat(imgDocument.css("opacity")))/8+parseFloat(imgDocument.css("opacity")));
					imgDocument.css("border-color","#ffffff");
				};
			}else{
				if(parseFloat(imgDocument.css("opacity")) - 0.4 >0.02)imgDocument.css("opacity",(0.4- parseFloat(imgDocument.css("opacity")))/8+parseFloat(imgDocument.css("opacity")));
				imgDocument.css("border-color","#ffffff");
			};
		};
	};
};

function dock(i){
	$(".box").eq(i).find("img").css("opacity", 0.4);
	$(".box").eq(i).mouseover(function(){
		nowPosition = i;
	}).mouseout(function(){
		nowPosition = -1;
	});
};

(function($) {	$.fn.lightBox = function(settings){
	settings = jQuery.extend({imageArray:[],activeImage:0},settings);
	$("#prev").find("img").css("opacity",0.6);
	$("#prev").click(function(){
		if(changeflag)return false;
		settings.activeImage--;
		if(settings.activeImage == -1){
			settings.activeImage = 0;
		}else{
			_set_image_to_view();
			currentNumber = settings.activeImage;
		};
		return false;
	});
	$("#next").click(function(){
		if(changeflag)return false;
		settings.activeImage++;
		if(settings.activeImage ==jQueryMatchedObj.length){
			settings.activeImage = jQueryMatchedObj.length-1;
		}else{
			_set_image_to_view();
			currentNumber = settings.activeImage;
		};
		return false;
	});
	var jQueryMatchedObj = this;
	var hflag = false;
	var changeflag = false;
	_initialize();
	hflag = true;
	_preload_neighbor_images()
	function _initialize(){
		_start(this,jQueryMatchedObj);
		return false;
	};
	function _start(objClicked,jQueryMatchedObj){
		if(changeflag)return false;
		settings.imageArray.length = 0;
		settings.activeImage=0;
		for(var i = 0; i < jQueryMatchedObj.length;i++){
			settings.imageArray.push(new Array(jQueryMatchedObj[i].getAttribute('href'),jQueryMatchedObj[i].getAttribute('title')));
		};
		if(hflag)while(settings.imageArray[settings.activeImage][0]!=objClicked.getAttribute('href'))settings.activeImage++;
		if(currentNumber != settings.activeImage){
			currentNumber=settings.activeImage;
			if(hflag)_set_image_to_view();
		};
	};

	function _set_image_to_view() {
		if(scrollflag == false)op = -settings.activeImage*61+$(document).width()/2-44;
		if(!isiPad)op = -settings.activeImage*61+$(document).width()/2-44;
		changeflag = true;
		$('#loader').show();
		$('#loader').stop();
		$('#loader').css({"opacity":0});
		$('#loader').animate({"opacity":1},1200);
		
		$('#galleryImg').stop();
		$('#galleryImg').animate({"opacity":0},200,function(){
			if (window.opera) { 
				preloadingfile_opera();
			}else{
				preloadingfile();
			}
		});
		if(settings.activeImage == 0){
			$("#prev").find("img").css("opacity",0.6);
			$("#next").find("img").css("opacity",1);
		}else if(settings.activeImage == jQueryMatchedObj.length-1){
			$("#prev").find("img").css("opacity",1);
			$("#next").find("img").css("opacity",0.6);
		}else{
			$("#prev").find("img").css("opacity",1);
			$("#next").find("img").css("opacity",1);
		};
	};
	
	function preloadingfile_opera(){
		$('#galleryImg').attr('src','');
		$('#galleryImg').attr('src',settings.imageArray[settings.activeImage][0]);
		_show_image();
	}
	function preloadingfile(){
		var objImagePreloader = new Image();
		objImagePreloader.onload = function() {
			$('#galleryImg').attr('src',settings.imageArray[settings.activeImage][0]);
			_show_image();
			objImagePreloader.onload=function(){};
		};
		objImagePreloader.src = settings.imageArray[settings.activeImage][0];
	}
	
	function _show_image() {
		changeflag = false;
		/*$('#loader').stop();*/
		$('#loader').animate({"opacity":0},200);
		/*$('#galleryImg').stop();*/
		$('#galleryImg').animate({"opacity":1},900);
		_preload_neighbor_images();
		_show_image_data();
	};
	function _show_image_data() {
		$('#aside').hide();
		if( settings.imageArray[settings.activeImage][1] ){
			$('#aside').html(settings.imageArray[settings.activeImage][1]).show();
		}else{
			$('#aside').html("").hide();
		};
	};
	function _preload_neighbor_images() {
		if((settings.imageArray.length-1)>settings.activeImage){
			objNext = new Image();
			objNext.src = settings.imageArray[settings.activeImage + 1][0];
		};
		if(settings.activeImage>0){
			objPrev=new Image();
			objPrev.src = settings.imageArray[settings.activeImage -1][0];
		};
	};
	return this.unbind('click').click(_initialize);
};
})
(jQuery);
