/*
 * for home_blogger.jsp
 * by:liudaoru @ 2007-01-05
 */
$import("page/home_blogger.js", "../lib/xParser.js");
$import("page/home_blogger.js", "../lib/prototype.js");
$import("page/home_blogger.js", "../lib/iUtil.js");
$import("page/home_blogger.js", "./right.js");
$import("page/home_blogger.js", "./head.js");

//用户从服务器获取xml路径的函数
var xmlPaths = new Array();
var _welcome_str = '<div class="ccc common_cell"><br/><br/><p>正在加载页面内容，请稍候...</p><br/><br/></div>';
//系统交互接口
//window.onload = function() {
	//head_on_load();
	//right_on_load();
	//main_on_load();
	//自动调整图片的大小
//}
function main_on_load() {
	var url = window.location.href;	

	//2007.11.16 添加，识别新的文章细览URL
	var urlMap = new URLMap(url);
	if(urlMap.available) { //url是否是给定的格式
		getUrl("./article.do?bid=" + urlMap.parentId + "&aid=" + urlMap.id);
		return;
	}
	//2007.11.16

	if(url.indexOf("page=detail") != -1) {
		//alert(param);
		getUrl("./article.do" + param);
	}
	else if(url.indexOf("page=message") != -1) {
		getUrl("./messageList.do" + param);
	}
	else if(url.indexOf("page=report") != -1) {
		getUrl("./reportPost.do" + param);
	}
	else if(url.indexOf("page=album") != -1) {
		if(url.search(/albumId=-?\d+/i) != -1) {
		 	location = "../photo/home.do" + param;
		 	//getUrl("./imageList.do" + param);
		}
		else
		 	location = "../photo/home.do" + param;
			//getUrl("./albumList.do" +  param);
	}
	else if(url.indexOf("page=bookmark") != -1) {
		getUrl("../bookmark/bookmarkList4Blog.do" + param);
	}
	else if(url.indexOf("#message") != -1) {
		getUrl("./messageList.do" + param);
	}
	else if(url.indexOf("#detail") != -1) {
		if(url.indexOf("_") != -1) {
			param = param + "#" + url.split("#")[1].split("_")[1];
		}
		//alert(param);
		getUrl("./article.do" + param);
	}
	else if(url.indexOf("#album") != -1) {
	 	location = "../photo/home.do" + param;
		//getUrl("./albumList.do" +  param);
	}
	else if(url.indexOf("#bookmark") != -1) {
		getUrl("../bookmark/bookmarkList4Blog.do" + param);
	}
	else if(url.indexOf("#image") != -1) {
		getUrl("./imageList.do" + param);
	}
	else if(url.indexOf("#list") != -1) {
		getUrl("./articleListByCategory.do" + param);
	}
	else {
		getUrl("./articleList.do" + param);
	}
	//showArtList(xmlPaths['homepageArticleList'], 'main_con'); //主页博文摘要列表
}

/* 用ajax的方式发送表单 */
function submitForm(frmId) {
	var form = $(frmId);
	
	if(!form) {
		alert("您输入的form的id不正确!");
	}
	if(TRSValidator.validate(form)) {
		var url = form.getAttribute("action");
		var eles = form.elements;
		var pars = "";
		
		for(var i = 0; i < eles.length; i += 1) {
			if(eles[i].type.toLowerCase() != "checkbox") {
				pars += eles[i].name + "=" + eles[i].value;
			}
			else {
				if(eles[i].checked) {
					pars += eles[i].name + "=" + eles[i].value;
				}
			}
			if( i != eles.length -1) {
				pars += "&";
			}
		}
		
		var myAjax = new Ajax.Request(
						url,
						{method: 'POST', parameters: pars, onComplete: function(res) {
							publickOk(res.responseText);
						}, asynchronous:true}
					);
	}
}
/* 在新窗口打开相册浏览页面 */
function showPhoto(url) {
	var win = window.open(url, "win", "width=782,height=570,top=80");
	win.focus();
}
//用于提取摘要的函数
//@param 	str:	需要处理的字符串
function getSummary(conId, str, maxSize) {
	setInnerHTML($(conId), getSummaryStr(str, maxSize));
}
function getSummaryStr(str, maxSize) {
	var sfix = "";

	/*if(str.length > maxSize) {
		sfix = "...";
	}
 
	if(str.length < maxSize) {
		obj.innerHTML = str;
		return;
	}
	*/

	if(str.length > maxSize) {
		str = str.substring(0, maxSize);
	}
	
	var from = str.lastIndexOf("<");	//最后一个<
	var to = str.lastIndexOf(">");		//最后一个>
	
	//处理切断词的情况
	var index = str.search(/[.?!。？！；][^.?!。？！；]*$/ig);

	if(index != -1) {
		if((to != -1 && index > to) || to == -1) {
			str = str.substring(0, index + 1);
		}
		else {
			//如果符号在>里面，则截取到>
			str = str.substring(0, to);
		}
	}
	//[^/x00-/xff]/
	//处理不完整的标记
	if(from != -1 && to != -1) {
		if(str.lastIndexOf("<") > str.lastIndexOf(">")) {
			//alert(str + " " + str.lastIndexOf("<") + " " + str.lastIndexOf(">"));
			str = str.substring(0, str.lastIndexOf("<"));
		}
	}
	else if(from != -1 && to == -1) {
		str = str.substring(0, str.lastIndexOf("<"));
	}
	else if(from == -1 && to != -1) {
		str = str.replace(/>/ig,"&gt;" );
	}
	else {
		//str = str.substring(0, index + 1);
	}

	return str + sfix;
	//obj.innerHTML = str + sfix;}
}
//添加友情链接的功能
/* 用ajax的方式发送表单 */
function addLink(bid) {

	if(isNaN(bid) || bid < 1) {
		return;
	}
	
	var url = "./control/link.do?action=add&uid=" + bid;
	var pars = "";

	//alert(url);
	var myAjax = new Ajax.Request(
		url,
		{method: 'POST', parameters: pars, onComplete: function(res) {
			res = res.responseText;
			if(res.length > 3000) {
				$alert("　抱歉，登录后方可加入链接!<br/><br/>　　请点击<a href='_login.do'>此处</a>登录");
				return;
			}

			var obj = res.split("&");
			if(obj.length < 2) {
				$alert("　服务器返回参数不正确!");
				return;
			}
			if(obj[0] == "1") {
				$errorMsg('<div style="padding:5px 10px;">' + obj[1] + '</div>',"",3,'选择' );
			}
			else if(obj[0] == "-1"){
				$alert('<div style="padding:5px 10px;">' + obj[1] + '</div>');
			}
			//alert(res);
		}, asynchronous:true}
	);
}
//添加文章推荐的功能
/* 用ajax的方式发送表单 */
function addArticleRecommend(articleId) {

	if(isNaN(articleId) || articleId <= 0) {
		return;
	}

	var url = "./articleOpe.do?action=recommend&aid=" + articleId;
	var pars = "";

	//alert(url);
	var myAjax = new Ajax.Request(
		url,
		{method: 'POST', parameters: pars, onComplete: function(res) {
			res = res.responseText;
			var obj = res.split("&");
			if(obj.length < 2) {
				$alert("服务器返回参数不正确!");
				return;
			}
			if(obj[0] == "0") {
				$errorMsg('<div style="padding:5px 10px;">' + obj[1] + '</div>',"",3,'选择' );
			}
			else if(obj[0] == "-1"){
				$alert('<div style="padding:5px 10px;">' + obj[1] + '</div>');
			}
		}, asynchronous:false}
	);
}
// 获取文章相关的圈子列表 
/**
 * @param articleId: 	文章的id (int)
 * @param conid:		显示圈子列表的容器id (String)
 * @param sphereConId: 	圈子所在容器的id
 * @param commentConId:	评论所在容器的id
 */
function showSphereList(articleId, conid, sphereConId, commentConId) {
	if(isNaN(articleId) || articleId <= 0) {
		return;
	}
	
	$(sphereConId).style.display = "block";
	$(commentConId).style.display = "none";

	if(!($(sphereConId).innerHTML)) {
		return;
	}

	var url = "./sphereListByArticle.do?aid=" + articleId;
	var pars = "";

	var myAjax = new Ajax.Request(
					url,
					{method: 'POST', parameters: pars, onComplete: function(res) {
						setInnerHTML($(conid), res.responseText);												
					}, asynchronous:true}
				);
}
function showCmtList(sphereConId, commentConId) {
	$(sphereConId).style.display = "none";
	$(commentConId).style.display = "block";
}
function getCommentList(url) {
	var _cont = $("cmt");
	while(_cont.hasChildNodes()){
		_cont.removeChild(_cont.childNodes[0]);
	}
	_cont.innerHTML = '<div style="font-size:14px !important;color:#333;background:#fff;border:1px solid #c0c0c0;padding: 12px 0px;"><br/>正在加载页面内容，请稍候...<br/><br/></div>';	

	var myAjax = new Ajax.Request(
						url,
						{method: 'GET', parameters: "", onComplete: setCommentList}
					);
}
function setCommentList(originalRequest) {
	var msg;
	var _cont = $("cmt");
	msg = originalRequest.responseText;
	while(_cont.hasChildNodes()){
		_cont.removeChild(_cont.childNodes[0]);
	}
	setInnerHTML(_cont, msg);
	//如果锚点对象存在,则转到相应的位置
	if($("comment")) {
		//$("comment").click();
	}
}
