﻿var curpage='';
var navKeepOpen=false;
var navKeepOpenTimer=0;
var nav2Current=null;
var previewResizeTimer;

function $(x) { return document.getElementById(x); }

function buildBlock2(td,ct,n) {
	var e=document.createElement('span');
	e.innerHTML='<table cellpadding="0" cellspacing="0"><tr><td class="titletop">\
					<div class="title">\
						<table cellspacing="0" cellpadding="0">\
							<tr style="height: 0px">\
								<td><img src="/images/title-left.png" style="vertical-align: top" /></td>\
								<td class="titleinner">'+(ct==null?n.title:ct.innerHTML)+'</td>\
								<td><img src="/images/title-right.png" style="vertical-align: top" /></td>\
							</tr>\
						</table>\
					</div>\
				</td></tr>\
				<tr><td class="titlemiddle">\
'+n.innerHTML+'\
				</td></tr>\
				<tr><td><img src="/images/topic-bottom.png" /><br /><br /></td></tr></table>';
				
	td.appendChild(e);
}

function buildNav(td,pn) {
	var e=document.createElement('div');
	e.className='left';
	var t='<a href="/">首頁</a> &gt; '+pn.title+($('pagetitle').innerHTML.length>0?(' &gt; '+$('pagetitle').innerHTML):'')+' &gt; <span id="cnavhs" onmouseover="navover()" onmouseout="navout(0)">'+$('pagetitle').title+'▼</span>';
	t+='<div id="cnav" onmouseover="navkeep()" onmouseout="navout(0)" class="hidecontent" style="width: '+pn.style.width+'">';
	
	var c=0;
	var o;

	nodes=pn.childNodes;
	for (c=0;c<nodes.length;c++) {
		if ((o=nodes[c]).tagName=='A') {
			t+='<a href="'+o.href+'" class="nava" onmouseover="navkeep()" onclick="return navgo(\''+o.href+'\')" style="width: '+pn.style.width+'">'+o.innerHTML+'</a>';
		}
	}
	
	t+='</div>';
	t+='<br /><br />';
	e.innerHTML=t;
	td.appendChild(e);
}
/*
function navcallback(t) {
	t=t.substr(t.indexOf('<!-- DATA'+':START -->'));
	t=t.substr(t.indexOf('">')+2);
	t=t.substr(0,t.indexOf('<!-- DATA'+':END -->'));
	t=t.substr(0,t.lastIndexOf('</div>'));
	$('pagecontent').innerHTML=t;
	buildBlocks();
	// alert('curpage='+curpage);
	// location.href='#'+curpage;
}
*/
function navgo(n) {
	/*
	curpage=n.substr(n.indexOf('=')+1);
	location.href='#'+curpage;
	AjaxAddJob('navgo',n,'get','',navcallback);
	if (nav2Current) {
		navKeepOpen=false;
		nav2out();
	}
	*/
	location.href=n;
	return false;
}

function nav2over(n) {
	if (navKeepOpenTimer) clearTimeout(navKeepOpenTimer);
	var o=$('n'+n);
	var e=$('navbubble'+n);
	
	var l=o.offsetWidth-8;
	var t=4;
	
	while (o!=document.body) {
		if (o.nodeType==1 && o.nodeName!='TR') {
			l+=o.offsetLeft;
			t+=o.offsetTop;
		}
		o=o.parentNode;
	}
	
	e.style.left=l+'px';
	e.style.top=t+'px';
	e.className='navbubble';
	navKeepOpen=false;
	navKeepOpenTimer=0;
	if (nav2Current) nav2Current.className='navbubble hidecontent';
	nav2Current=e;
}

function navover() {
	if (navKeepOpenTimer) clearTimeout(navKeepOpenTimer);
	var e=$('cnav');
	var o=$('cnavhs');
	var l=0;
	var t=o.offsetHeight-2;
	
	while (o!=document.body) {
		if (o.nodeType==1 && o.nodeName!='TR') {
			l+=o.offsetLeft;
			t+=o.offsetTop;
		}
		o=o.parentNode;
	}
	
	e.style.left=l+'px';
	e.style.top=t+'px';
	e.className='';
	navKeepOpen=false;
	navKeepOpenTimer=0;
}

function navkeep() {
	navKeepOpen=true;
}

function navout(n) {
	if (n==0) {
		navKeepOpen=false;
		navKeepOpenTimer=setTimeout('navout(2)',100);
	} else if (n==1 || navKeepOpen==false) {
		var e=$('cnav');
		e.className='hidecontent';
	}
}

function nav2out(n) {
	if (n==0) {
		navKeepOpen=false;
		navKeepOpenTimer=setTimeout('nav2out(2)',100);
	} else if (nav2Current!=null && (n==1 || navKeepOpen==false)) {
		nav2Current.className='navbubble hidecontent';
		nav2Current=null;
	}
}

function buildBlocks() {
	var c=0;
	var e;
	var td=$('tdContent');
	var pn=$('pagenav');
	var pt=$('pagetitle');
	td.innerHTML='';
	
	if (pt) document.title=pt.title+' - '+pt.innerHTML+' (小熊工作室)';
	if (pn) buildNav(td,pn);

	var ct=null;
	var nodes=$('pagecontent').childNodes;
	var n;
	var added=0;
	
	for (c=0; c<nodes.length; c++) {
		if ((n=nodes[c]).tagName=='DIV') {
			if (n.className=='ct') {
				ct=n;
				
				while ((n=nodes[++c]).nodeType!=1);
			}
			if (n.className=='c') {
				buildBlock2(td,ct,n);
				added=1;
			}
			ct=null;
		}
	}
	
	n=document.createElement('scriptdiv');
	var t='';
	
	nodes=$('pagecontent').getElementsByTagName('SCRIPT');
	for (c=0; c<nodes.length; c++) {
		/*
		n=document.createElement('script');
		n.defer=true;
		n.innerHTML=nodes[c].innerHTML;
		td.appendChild(n);
		*/
		t+='<scr'+'ipt type="text/javascript" language="JavaScript" defer="true">'+nodes[c].innerHTML+'</scr'+'ipt>';
	}
	n.innerHTML=t;
	td.appendChild(n);
	
	if (!added) {
		td.innerHTML='錯誤：無法載入內容 '+curpage;
	}
	
	// setTimeout('resizeMask()',1000);
	resizeMask();
	$('pagecontent').innerHTML='';
	
	// $('permalink').href=$('permalink').innerHTML='http://www.studiokuma.com/home.php?page='+curpage;
}

function download($node,$filetype,$prjtype,$site) {
	// window.open("/download.php?node="+$node+"&filetype="+$filetype+"&prjtype="+$prjtype+($site?"&site="+$site:''),"kumadownload","width=450; height=430; scrollbars=yes");
	AjaxAddJob('download',"/download2.php?node="+$node+"&filetype="+$filetype+"&prjtype="+$prjtype+($site?"&site="+$site:''),'GET','',downloadcallback);
}

function download_e($node,$filetype,$prjtype,$site) {
	AjaxAddJob('download',"/download2_e.php?node="+$node+"&filetype="+$filetype+"&prjtype="+$prjtype+($site?"&site="+$site:''),'GET','',downloadcallback);
}

function downloadcallback(t) {
	// alert(t);
	t=t.substr(t.indexOf('<body'));
	t=t.substr(t.indexOf('>')+1);
	t=t.substr(0,t.indexOf('</body>'));
	
	var p=$('preview');
	p.innerHTML=t;
	previewResizeTimer=setTimeout('resizeDownload()',500);
}

function resizeDownload() {
	var p=$('preview');
	p.style.left=(document.body.clientWidth-450)/2+'px';
	p.style.top=(document.documentElement.scrollTop||document.body.scrollTop)+(((document.documentElement.clientHeight||document.body.clientHeight)-450)/2)+'px';
	p.style.width='450px';
	p.style.height='450px';
	$('mask').style.display='block';
	p.style.visibility='visible';
	resizeMask();
}

function resizeMask() {
	var m=$('mask');
	m.style.height=document.body.scrollHeight+'px';
	m.style.width=document.body.scrollWidth+'px';
}

function showPreview(f) {
	$('preview').innerHTML='<a href="javascript:void(0)" onclick="closePreview()"><img id="imgPreview" src="'+f+'" border="0" /></a>';
	previewResizeTimer=setInterval('resizePreview()',500);
}

function resizePreview() {
	var i=$('imgPreview');
	
	if (i.width>0) {
		previewResizeTimer=clearInterval(previewResizeTimer);
		var p=$('preview');
		p.style.left=(document.body.clientWidth-(i.width+50))/2+'px';
		p.style.top=(document.documentElement.scrollTop||document.body.scrollTop)+(((document.documentElement.clientHeight||document.body.clientHeight)-i.height+50)/2)+'px';
		$('mask').style.display='block';
		p.style.visibility='visible';
		resizeMask();
	}
}

function closePreview() {
	$('mask').style.display='none';
	$('preview').style.visibility='hidden';
}

function getThumb(f,d,x) {
	if (x==null) x=f;
	return '<tr><td><a href="javascript:void(0)" onclick="showPreview(\''+x+'\')"><img src="'+f+'" style="width: 200px" border="0" /></td><td>'+d+'</td></tr>\n';
}
/*
function hashCheck() {
	if (location.hash.substr(1)!=curpage && location.hash.indexOf('/')!=-1) {
		curpage=location.hash.substr(1);
		AjaxAddJob('navgo','?page='+curpage,'get','',navcallback);
	}
}
*/

