﻿function setStyle(obj, styleStr){
	var styles = styleStr.split(";");
	var key, value;
	for(var i = 0; i < styles.length; i++){
		key = styles[i].substring(0, styles[i].indexOf(":"));
		value = styles[i].substring(styles[i].indexOf(":") + 1);
		obj.style[key] = value;
	}
}
function setAttribute(obj, attrStr){
	var attrs = attrStr.split(";");
	var key, value;
	for(var i = 0; i < attrs.length; i++){
		key = attrs[i].substring(0, attrs[i].indexOf(":"));
		value = attrs[i].substring(attrs[i].indexOf(":") + 1);
		obj[key] = value;
	}
}
function createHTMLTag(tagName, innerHTML, attribute, style, parentObj){
	var element = document.createElement(tagName);
	if(innerHTML)
		element.innerHTML = innerHTML;
	if(attribute)
		setAttribute(element, attribute);
	if(style)
		setStyle(element, style);
	if(parentObj)
		parentObj.appendChild(element);
	return element;
}
function show(id, url, popular, container, entryNumber){
	var feed = new google.feeds.Feed(url);
	feed.setNumEntries(entryNumber);
	var handler = function(result){
		if(!result.error){
			var title;
			if(id > 0){
				container.firstChild.innerHTML = "";
				result.feed.title = result.feed.title.replace(":: 痞客邦 PIXNET ::", "");
				title = createHTMLTag("a", result.feed.title, "href:" + result.feed.link + ";target:_blank;id:" + id, "color:#000000", container.firstChild);
				title.onmousedown = updatePopular;
			}
			var table = createHTMLTag("table", null, null, "tableLayout:fixed;width:100%", container.lastChild.previousSibling);
			var row, cell, date, title;
			var today = new Date();
			var isToday;
			for(var i = 0; i < result.feed.entries.length && i < entryNumber; i++){
				var entry = result.feed.entries[i];
				date = new Date(entry.publishedDate);
				row = table.insertRow(-1);
				cell = row.insertCell(-1);
				title = createHTMLTag("div", null, "id:" + id, "wordBreak:break-all;overflow:hidden;height:20px", cell);
				if(id > 0)
					title.onmousedown = updatePopular;
				if(today.getYear() == date.getYear() && today.getMonth() == date.getMonth() && today.getDate() == date.getDate()){
					title.style.fontWeight = "bold";
					isToday = true;
				}else{
					isToday = false;
				}
				createHTMLTag("a", entry.title.replace("@", ""), "href:" + entry.link + ";target:_blank", "color:#000000", title);
				cell = row.insertCell(-1);
				cell.width = "70";
				cell.style.color = "#555555";
				if(!isNaN(date.getMonth()) && !isNaN(date.getDate()) && !isNaN(date.getHours()) && !isNaN(date.getMinutes())){
					if(isToday){
						cell.innerHTML = "今天 " + date.getHours() + ":" + date.getMinutes();
					}else{
						cell.innerHTML = (date.getMonth()+1) + "/" + date.getDate() + " " + date.getHours() + ":" + date.getMinutes();
					}
				}
				if(id > 0 && (today.getTime() - date.getTime()) < 3600000){
					updateArticle(entry.title, entry.link, date.getTime());
				}
			}
			if(id > 0){
				createHTMLTag("span", "熱門指數：", null, "color:#aa0000", container.lastChild);
				createHTMLTag("span", popular, null, null, container.lastChild);
				createHTMLTag("a", "詳細資訊", "className:detail;target:_top;href:/blog/?id=" + id + "&page=" + page, null, container.lastChild);
				//container.innerHTML += "<fb:like href='http://lottery.pada.biz/?id=" + id + "' show_faces='false' width='110'></fb:like>";
				//FB.XFBML.parse(container);
				var facebook = createHTMLTag("iframe", null, "scrolling:no;frameBorder:0;allowTransparency:true", "border:none;overflow:hidden;width:100px;height:19px", container.lastChild);
				facebook.src = "http://www.facebook.com/plugins/like.php?href=http://lottery.pada.biz/%3Fid%3D" + id + "&layout=button_count&show_faces=false&width=450&action=recommend&colorscheme=light&height=20";
			}
		}
	}
	if(id > 0){
		container.style.display = "block";
		container.firstChild.innerHTML = "讀取中……";
	}
	feed.load(handler);
}
function updatePopular(){
	sendRequest("/UpdatePopular", "post", "id=" + this.id + "&page=" + page, null);
}
function updateArticle(title, url, time){
	sendRequest("/UpdateArticle", "post", "title=" + encodeURIComponent(title) + "&url=" + encodeURIComponent(url) + "&time=" + time, null);
}
function join(){
	var u = document.getElementById("url");
	var code = document.getElementById("code");
	if(u.value == "" || code.value == ""){
		alert("請輸入網址和驗證碼");
		return;
	}else if(u.value.indexOf("http://") != 0){
		alert("網址必須以 http:// 開頭");
		return;
	}else if(u.value.length < 15 || u.value.indexOf(".") < 0){
		alert("網址不合法");
		return;
	}else{
		for(var i = 0; i < oldURL.length; i++){
			if(u.value == oldURL[i]){
				alert("請勿重複提交網址");
				return;
			}
		}
	}
	var handler = function(req){
		var result = req.getResponseHeader("result");
		if(result == 0){
			alert("提交成功，請等待站方人員審核相關性。");
			oldURL[oldURL.length] = u.value;
		}else if(result == 1){
			alert("網址必須以 http:// 開頭");
		}else if(result == 2){
			alert("驗證碼輸入錯誤");
		}else{
			alert("資料庫錯誤");
		}
		u.value = "";
		code.value = "";
		document.getElementById("codeimg").src = "/SecureCode?random=" + (new Date()).getTime();
	}
	sendRequest("/Join", "post", "url=" + encodeURIComponent(u.value) + "&code=" + code.value, handler);
}
function setCookie(name, value, expiredays){
	var exdate = new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie = name + "=" + escape(value) + ((expiredays==null) ? "" : ";expires=" + exdate.toGMTString()) + ";path=/";
}
function getCookie(name, notFoundReturn){
	if(document.cookie.length > 0){
		var start=document.cookie.indexOf(name + "=");
		if(start > -1){
			start = start + name.length + 1;
			var end = document.cookie.indexOf(";", start);
			if (end == -1)
				end = document.cookie.length;
			return unescape(document.cookie.substring(start, end));
		}
	}
	return notFoundReturn;
}
