// JavaScript Document

function show_img(obj, PhotoNum, reqCloseFunc){
	obj.nowPhotoNum = PhotoNum;
	var slideShow = document.createElement('div');
	slideShow.id = "slideShow";
	slideShow.innerHTML = "<div id=\"slideShowBg\" onclick = \"closeSlideShow()\"></div>";
	var body=document.getElementsByTagName("body").item(0);
	slideShow.style.marginTop = body.scrollTop;
	slideShow.style.marginLeft = body.scrollLeft;
	slideShow.tObj = obj;
	body.appendChild(slideShow);
	body.style.overflow = "hidden";

	timerObjIntit(slideShow.childNodes[0]);
	slideShow.childNodes[0].nowAlpha = 0;
	slideShow.childNodes[0].timerFunc = chWHA;
	slideShow.childNodes[0].tA = 80;
	slideShow.childNodes[0].endFunc = setSlidePhotoArea;
	slideShow.closeFunc = reqCloseFunc;
	if(ie) obj.f = .9;
	else obj.f = .4;
	setTimerObj(slideShow.childNodes[0]);
}

function setSlidePhotoArea(obj){
	timerEndObj(obj);
	var slideShowObj = obj.parentNode;
	var slidePhotoArea = document.createElement('div');
	slidePhotoArea.id = "slidePhotoArea";
	slideShowObj.appendChild(slidePhotoArea);
	loadSlidePhoto();
}

function loadSlidePhoto(){
	var slidePhotoArea = returnOBJ('slidePhotoArea');
	var obj = returnOBJ('slideShow').tObj;
	slidePhotoArea.innerHTML = "<img id=\"slidePhoto\" src=\""+obj.childNodes[obj.nowPhotoNum].childNodes[0].src.replace('m_','')+"\" onload=\"setSlidePhotoTimer(this);\"><div id=\"slidePhotoBt\" onmouseout = \"this.style.visibility='hidden'\";><div id=\"slidePhotoCloseBt\" onclick = \"closeSlideShow();\"></div><div id='slidePhotoCap'><span style=\"margin:5 8;\">"+obj.childNodes[obj.nowPhotoNum+1].innerHTML+"</span></div></div>";
	if(obj.childNodes.length > 2) slidePhotoArea.childNodes[1].innerHTML += "<div id=\"slidePhotoNextBt\" onclick = \"chSlidePhoto(true)\"></div><div id=\"slidePhotoPrevBt\" onclick = \"chSlidePhoto(false)\"></div>";
	if(! obj.childNodes[obj.nowPhotoNum+1].innerHTML) slidePhotoArea.childNodes[1].childNodes[1].style.display = "none";
}

function chSlidePhoto(flag){
	var obj = returnOBJ('slideShow').tObj;
	if(flag) obj.nowPhotoNum += 2;
	else obj.nowPhotoNum -= 2;
	if(obj.nowPhotoNum >= obj.childNodes.length) obj.nowPhotoNum = 0;
	else if(obj.nowPhotoNum < 0) obj.nowPhotoNum = obj.childNodes.length - 2;
	loadSlidePhoto();
}

function setSlidePhotoTimer(obj){
	timerObjIntit(obj.parentNode);
	obj.parentNode.tH = obj.offsetHeight;
	obj.parentNode.tW = obj.offsetWidth;
	obj.parentNode.timerFunc = chSlidePhotoSize;
	if(ie) obj.parentNode.f = .9;
	else obj.parentNode.f = .9;
	setTimerObj(obj.parentNode);
}

var slideShowMargin = 6;
function chSlidePhotoSize(obj){
//	alert(obj.tH);
	var scrSize = returnWinSize();
	if(obj.tH +  slideShowMargin > scrSize[1] || obj.tW + slideShowMargin > scrSize[0]){
		var slidePhotoRatio = Math.min( Math.round( (scrSize[1]-100)/obj.tH  *10 ) , Math.round( (scrSize[0]-100)/obj.tW *10 ) );
		var tHeight = Math.round(obj.tH * slidePhotoRatio/10) + slideShowMargin;
		var tWidth = Math.round(obj.tW * slidePhotoRatio/10) + slideShowMargin;
	}
	else{
		var tHeight = obj.tH + slideShowMargin;
		var tWidth = obj.tW + slideShowMargin;
	}
	if(Math.abs(tWidth - obj.offsetWidth) > 5){
		obj.style.width = Math.round((tWidth - obj.offsetWidth) * obj.f) + obj.offsetWidth;
		obj.style.height = Math.round((tHeight - obj.offsetHeight) * obj.f) + obj.offsetHeight;
		obj.style.marginTop = -Math.round(obj.offsetHeight/2);
		obj.style.marginLeft = -Math.round(obj.offsetWidth/2);
	}
	else{
		timerEndObj(obj);
		obj.style.width = tWidth;
		obj.style.height = tHeight;
		obj.childNodes[0].width = tWidth - slideShowMargin;
		obj.childNodes[0].height = tHeight - slideShowMargin;
		obj.childNodes[0].top = obj.childNodes[0].left = slideShowMargin/2;
		obj.style.marginTop = -Math.round(tHeight/2);
		obj.style.marginLeft = -Math.round(tWidth/2);
		
		timerObjIntit(obj.childNodes[0]);
		ch_alpha(obj.childNodes[0], 0);
		obj.childNodes[0]. nowAlpha = 0;
		obj.childNodes[0].style.visibility = 'visible';
		obj.childNodes[0].tA = 100;
		obj.childNodes[0].timerFunc = chWHA;
		obj.childNodes[0].endFunc = chSlideAlphaEnd;
		if(ie) obj.childNodes[0].f = .6;
		else obj.childNodes[0].f = .3;
		setTimerObj(obj.childNodes[0]);
	}
}

var slideAlpha = 0;
function chSlideAlphaEnd(obj){
	timerEndObj(obj);
	var slidePhotoArea = returnOBJ('slidePhotoArea');
	slidePhotoArea.childNodes[0].onmouseover= function(){slidePhotoArea.childNodes[1].style.visibility = 'visible';};
	slidePhotoArea.childNodes[0].onclick= function(){slidePhotoArea.childNodes[1].style.visibility = 'visible';};
	addEvent(window, 'resize', setSlideShowSize, false);
}

function setSlideShowSize(){
	var scrSize = returnWinSize();
	var slidePhotoArea = returnOBJ('slidePhotoArea');
	if(slidePhotoArea){
		if(slidePhotoArea.tH + slideShowMargin > scrSize[1] || slidePhotoArea.tW + slideShowMargin > scrSize[0]){
			var slidePhotoRatio = Math.min( Math.round( (scrSize[1]-100)/slidePhotoArea.tH *10 ) , Math.round( (scrSize[0]-100)/slidePhotoArea.tW *10 ) );
			var tHeight = Math.round(slidePhotoArea.tH * slidePhotoRatio/10) + slideShowMargin;
			var tWidth = Math.round(slidePhotoArea.tW * slidePhotoRatio/10) + slideShowMargin;
		}
		else{
			var tHeight = slidePhotoArea.tH + slideShowMargin;
			var tWidth = slidePhotoArea.tW + slideShowMargin;
		}
		slidePhotoArea.style.width = tWidth;
		slidePhotoArea.style.height = tHeight;
		slidePhotoArea.childNodes[0].width = tWidth - slideShowMargin;
		slidePhotoArea.childNodes[0].height = tHeight - slideShowMargin;
		slidePhotoArea.childNodes[0].top = slidePhotoArea.childNodes[0].left = slideShowMargin/2;
		slidePhotoArea.style.marginTop = -Math.round(tHeight/2);
		slidePhotoArea.style.marginLeft = -Math.round(tWidth/2);
	}
}

function closeSlideShow(){
	var slideShow = returnOBJ('slideShow');
	timerEndObj(slideShow);
	if(slideShow.childNodes[1]) slideShow.removeChild(slideShow.childNodes[1]);
	timerEndObj(slideShow.childNodes[0]);
	timerObjIntit(slideShow.childNodes[0]);
	slideShow.childNodes[0].timerFunc = chWHA;
	slideShow.childNodes[0].tA = 0;
	slideShow.childNodes[0].endFunc = closeSlideShowEnd;
	if(ie) slideShow.childNodes[0].f = .8;
	else slideShow.childNodes[0].f = .4;
	setTimerObj(slideShow.childNodes[0]);
}

function closeSlideShowEnd(obj){
	eval(returnOBJ('slideShow').closeFunc);
	timerEndObj(obj);
	obj.parentNode.parentNode.removeChild(obj.parentNode);
	removeEvent(window, 'resize', setSlideShowSize, false);
	var body=document.getElementsByTagName("body").item(0);
	body.style.overflow = "auto";
}
