﻿/**
 * 1) 本插件修改自做啥JS插件；
 * 2) 本插件使用了做啥的Tag API；
 */
var zuosa_comments_badge = new zuosa_comments_Badge();
var count = 50; 
function zuosaCallback(obj){
zuosa_comments_badge.init("zuosa_div", obj); 
}
function zuosa_comments_Badge(){
this._self = null;
this._data = null;
this._count = 50;
this.init = function(id, data){
this._self = window.document.getElementById(id);
this._self.innerHTML =
'<font id="zuosa_box_title"></font>'
+ '<div id="zuosa_update_list"></div>'
+ '';
this._data = data;
this.build();
};
this.build = function(){
var sb = [];if (this._data.length!=0){sb.push('<ol class="commentlist"><p class="box blueword"><a href="http://zuosa.com/Status/searchtag.aspx?tag='+location.href.replace(/#[A-Za-z-0-9]+/g, "")+'" target="_blank" title="more">'+this._data.length+' Zuosa Comment(s)</a> | <a href="http://z.api.li/" target="_blank">Powered by Zuosa inside</a></p>');}
for(var i = 0; i < this._data.length; i++){
if (i % 2 == 0) classname='odd'; else classname='even';
var o = this._data[i];
if (o.mms_img_pre==undefined){
sb.push('<li class="'+classname+'"><p class="comm_author"><a href="http://zuosa.com/'+o.user.screen_name+'" target="_blank" title="'+o.user.name+'"><img src="'+o.user.profile_image_url+'" class="profile_image"></a><a href="http://zuosa.com/'+o.user.screen_name+'" target="_blank" title="'+o.user.name+'">'+o.user.name+'</a><br /><span class="comm_time"><a href="http://zuosa.com/statuses/' + o.id + '" target="_blank">'
+ this.relative_time2(o.created_at) + '</a> form Zuosa</span></p><div class="clear"></div><p>'+o.text.replace(/\[[^\]]+\]/g,"") + '</p></li>');
}else{
temp = o.text.replace("http://zuosa.com/Statuses/", "");
temp = temp.replace(o.id, "");
temp = temp.replace(/\[[^\]]+\]/g,"");
sb.push('<li class="'+classname+'"><p class="comm_author"><a href="http://zuosa.com/'+o.user.screen_name+'" target="_blank" title="'+o.user.name+'"><img src="'+o.user.profile_image_url+'" class="profile_image"></a><a href="http://zuosa.com/'+o.user.screen_name+'" target="_blank" title="'+o.user.name+'">'+o.user.name+'</a><br /><span class="comm_time"><a href="http://zuosa.com/statuses/' + o.id + '" target="_blank">'
+ this.relative_time2(o.created_at) + '</a> from Zuosa</span></p><div class="clear"></div><p>'+ temp + '</p></li>');
}
o = null;
} if (this._data.length!=0){sb.push('</ol>');}
this._self.childNodes[1].innerHTML = sb.join("");
var nodes = this._self.childNodes[1].childNodes;
var w = this._self.offsetWidth - 0;
for(var i = 0; i < nodes.length; i++){
nodes[i].style.width = w + "px";
}
nodes = null;
};

	this.relative_time2 = function(time_value){
		var values = time_value.split(" ");
		time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
		var parsed_date = Date.parse(time_value)-1000*60*60*8; //we user +0800 timezone.
		var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
		var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
		delta = delta + (relative_to.getTimezoneOffset() * 60);
		if(delta < 60){
			return 'less than 1 min';
		}else if(delta < 120){
			return 'about 1 min ago';
		}else if(delta < (45*60)){
			return (parseInt(delta / 60)).toString() + ' min ago';
		}else if(delta < (90*60)){
			return 'about 1 hour ago';
		}else if(delta < (24*60*60)){
			return 'about ' + (parseInt(delta / 3600)).toString() + ' hours ago';
		}else if(delta < (48*60*60)){
			return '1 day ago';
		}else{
			return (parseInt(delta / 86400)).toString() + ' days ago';
		}
	};
}

function zuosacomments_js(){
if (document.form1.status.value==""){document.form1.status.focus();alert("您啥也没说呀");return false;} 
else{document.form1.status.value='[ '+location.href.replace(/#[A-Za-z-0-9]+/g, "")+' ] @ifire '+document.form1.status.value;try{document.form1.submit();}catch(er){};alert("留言已经提交, 稍后刷新会显示，不必理会输入框中残留的文字。");return true;}
}
document.write('<div id="zuosa_div"><div id="zuosa_update_list"></div></div><script text="text/javascript" src="http://api.zuosa.com/tag/search.json?&callback=zuosaCallback&tag='+encodeURIComponent(location.href.replace(/#[A-Za-z-0-9]+/g, ""))+'"></script>'); 
