function gE(e) {
	return document.getElementById(e);
}
function wH(e,h) {
	e.innerHTML=h;
}

function makeRequest(para, loadingFunc, doneFunc) {
	http_request = false;
	xmldoc = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();

		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	}
	else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
			xmldoc = new ActiveXObject("Msxml2.DOMDocument");
			alert (xmlDoc);
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
			}
		}
	}
	if (!http_request) {
		alert('無法建立 XMLHTTP 介面！');
		return false;
	}
	http_request.onreadystatechange = function() {
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				eval(doneFunc + "(http_request.responseText)" );
			} else {
				alert('連接伺服器時發生問題，請稍後再試。');
			}
		} else {
			eval(loadingFunc + "(http_request.responseText)" );
		}
	}
	http_request.open('GET', "worklist/" + para, true);
	http_request.send(null);
}

function sOp(e) {
	if (gE("rowButtons-" + e.id).className != "optionsHide") {
		gE("rowButtons-" + e.id).style.display = "inline"
	}
}

function hOp(e) {
	gE("rowButtons-" + e.id).style.display = "none"
}

function preview(id) {
	postID = id;
	gE("rowButtons-" + id).className = "optionsHide";
	var previewBox = gE("preview-" + id);
	previewBox.style.display = "block";
	makeRequest(id+".php", "searchLoading", "searchDone");
}

function searchLoading() {
	wH(gE("preview-" + postID), "正在取得資料……");
}

function searchDone(out) {
	var teaser = out;
	var id = postID;
	var permalink = gE("permalink-" + id).href;
	teaser += '<p class="previewFooter"><span><img alt="關閉預覽視窗" src="cancel.gif" /><a href="javascript:closePreview(\'' + id + '\')">關閉預覽視窗</a></span>';
	teaser += '<img alt="前往作品網頁" src="arrow_right.gif" /><a href="' + permalink + '">前往作品網頁</a></p>';
	wH(gE("preview-" + id), teaser);
	postID = 0;
}

function closePreview(id) {
	gE("preview-" + id).style.display = "none";
	gE("rowButtons-" + id).className = "options";
}
