// shared javascript function

function getPageLocation(pageIndex) {
    var _url = location.href;
    var _n = _url.lastIndexOf("?");
    if(_n==(-1))
        return _url + "?page=" + pageIndex;
    var query = _url.substring(_n+1);
    var pairs = query.split("&");
    var newQuery = "";
    for(var i=0; i<pairs.length; i++) {
        var pos = pairs[i].indexOf("=");
        if(pos==-1) continue;
        var argname = pairs[i].substring(0,pos);
        if(argname=="page") continue;
        newQuery = newQuery + pairs[i] + "&";
    }
    return _url.substring(0,_n+1) + newQuery + "page=" + pageIndex;
}

function channel_onmouseover(obj) {
	obj.className="channel-hot";
}

function channel_onmouseout(obj) {
	if(getChannel()!=obj.id.substring("channel_".length))
		obj.className="channel";
}

function channel_onclick(obj) {
	window.open("/" + obj.id.substring("channel_".length) + "/start.jspx");
}

function manage_onclick(obj) {
	location.assign("/manage/" + obj.id.substring("channel_".length) + "/start.jspx");
}

function getChannel() {
	var url = location.pathname.substring(1);
	if(url.indexOf("manage/")!=(-1))
		url = url.substring("manage/".length);
	var n = url.indexOf("/");
	if(n==(-1))
		return null;
	return url.substring(0, n);
}

function tr_onmouseover(obj) {
	obj.style.backgroundColor="#EEEEEE";
}

function tr_onmouseout(obj) {
	obj.style.backgroundColor="#FFFFFF";
}

function do_signout(h) {
	var url = location.href;
	var path = location.pathname;
	if(path.indexOf("/runtime/")==0 || path.indexOf("/admin/")==0)
		url="/home/start.jspx";
	h.href="/runtime/signout.jspx?url=" + encodeURIComponent(url);
}

function checkSignon(_form){
	if(!validate_form(_form))
		return false;
	var u=document.getElementById("l_username");
	u.value=u.value.toLowerCase();
	var p=document.getElementById("l_password0");
	document.getElementById("l_password").value=hex_md5(u.value + "_JaVaEeDeV.CoM_" + p.value);
	p.value=fakepwd(p.value);
	return true;
}

function checkComment(cmt_content) {
	var text=document.getElementById(cmt_content).value;
	if(text==null || text=="" || text.length<10){
		alert("为了避免无意义的内容，您发表的内容至少需要10个字！");
		return false;
	}
	return true;
}

function getParam(_param) {
	var query = location.search.substring(1);
	var pairs = query.split("&");
	for(var i=0;i<pairs.length;i++) {
		var pos = pairs[i].indexOf("=");
		if(pos==-1)continue;
		var argname=pairs[i].substring(0,pos);
		if(argname==_param){
			var value=pairs[i].substring(pos+1).replace(/\+/g,' ');
			return decodeURIComponent(value);
		}
	}
	return null;
}

function getPageLocation(pageIndex) {
    var _url = location.href;
    var _n = _url.lastIndexOf("?");
    if(_n==(-1))
        return _url + "?page=" + pageIndex;
    var query = _url.substring(_n+1);
    var pairs = query.split("&");
    var newQuery = "";
    for(var i=0; i<pairs.length; i++) {
        var pos = pairs[i].indexOf("=");
        if(pos==-1) continue;
        var argname = pairs[i].substring(0,pos);
        if(argname=="page") continue;
        newQuery = newQuery + pairs[i] + "&";
    }
    return _url.substring(0,_n+1) + newQuery + "page=" + pageIndex;
}

function fakepwd(pwd){
	var s=""
	for(var i=0;i<pwd.length;i++)
  		s=s+"#";
	return s;
}

function confirmPost(msg,formId){
	if(confirm(msg)){
		document.getElementById(formId).submit();
	}
}

function confirmUrl(msg,url){
	if(confirm(msg)){
		location.assign(url);
	}
}

function executeAction(selectObj){
	if(selectObj.value=="-")
		return;
	var _form = selectObj.form;
	var opt = selectObj.options[selectObj.selectedIndex];
	var url = selectObj.value;
	if(url!=null && url!="" && url!=opt.text) {
		if(confirm("确定要执行操作：" + opt.text)) {
			if(_form==null) {
				location.assign(url);
			}
			else {
				_form.action=url;
				_form.submit();
			}
		}
		else{
			selectObj.selectedIndex=0;
		}
	}
}

function jumpUrl(selectObj, prefix){
	if(selectObj.value=="-")
		return;
	location.assign(prefix + selectObj.value);
}

function jumpBoard(selectObj){
	if(selectObj.selectedIndex==0)
		return;
	location.assign("/bbs/board.jspx?id=" + selectObj.value);
}

function show(obj){
	document.getElementById(obj).style.display="";
}

function hide(obj){
	document.getElementById(obj).style.display="none";
}

function toggle(obj){
	var o = document.getElementById(obj);
	if(o.style.display=="none")
		o.style.display="";
	else
		o.style.display="none";
}

function isIE(){
	return navigator.userAgent.indexOf("MSIE")>=0;
}

function copy(s) {
	if(isIE()){
		alert("已将访问地址复制到剪贴板！");
		window.clipboardData.setData("Text", s);
	}
	else{
		alert("很抱歉，只有IE浏览器才能支持复制！");
	}
}

function addToFav(title,url) {
	window.external.AddToFavorite(title,url);
}

function deleteArticleComment(username,commentId){
	if(g_username==username){
		document.write('<img title="删除这个评论" src="/i/icon/delete.gif" width="16" height="16" align="absmiddle" style="cursor:pointer" onclick="confirmUrl(\'您确定要删除这个评论？\',\'/manage/blog/delete.jspx?object=Comment&source=blog&commentId='+commentId+'\')" />');
	}
}

function setRankDesc(n){
	var _desc=document.getElementById("rank_desc");
	if(n==1)
		_desc.innerHTML="太差了";
	if(n==2)
		_desc.innerHTML="还凑合";
	if(n==3)
		_desc.innerHTML="一般吧";
	if(n==4)
		_desc.innerHTML="还不错";
	if(n==5)
		_desc.innerHTML="非常棒";
	for(var i=1;i<=n;i++) {
		document.getElementById("rank_"+i).src="/i/rank/star-y.gif";
	}
	for(var j=n+1;j<=5;j++) {
		document.getElementById("rank_"+j).src="/i/rank/star-n.gif";
	}
}

function rankIt(n){
	var _desc=document.getElementById("rank_desc");
	_desc.innerHTML="评分已保存";
	for(var i=1;i<=5;i++){
		var _r=document.getElementById("rank_"+i);
		_r.onmouseover=doNothing;
		_r.onmouseout=doNothing;
		_r.onclick=doNothing;
		_r.className="";
	}
	document.getElementById("rank_hidden").value=n;
	document.getElementById("rank_form").submit();
}

function doNothing(){}

function makeRank(_needSignon, _s, _type, _id){
	if(g_signon){
		document.write('<div>' + _s + '：<img src="/i/rank/star-y.gif" style="display:none" /> ');
		for(var i=1;i<=5;i++){
			document.write('<img src="/i/rank/star-n.gif" width="14" height="13" align="absmiddle" id="rank_' + i + '" onmouseover="setRankDesc(' + i + ')" onclick="rankIt(' + i + ')" class="hand" />');
		}
		document.write(' <span id="rank_desc"></span><form id="rank_form" name="rank_form" method="post" action="/runtime/rank.jspx" target="rank_iframe" style="display:none">');
		document.write('<input name="type" type="hidden" value="' + _type + '" />');
		document.write('<input name="id" type="hidden" value="' + _id + '" />');
		document.write('<input name="rank" id="rank_hidden" type="hidden" value="" />');
		document.writeln('</form><iframe name="rank_iframe" src="about:blank" style="display:none"></iframe></div>');
	}
	else{
		document.write('<div>' + _needSignon + '</div>');
	}
}

function writeLicense(lic){
	var t="未知";
	var s=lic.toLowerCase();
	if(s=="$") s="com";
	if(s=="apache") t="Apache License";
	else if(s=="bsd") t="BSD License";
	else if(s=="epl") t="Eclipse Public License";
	else if(s=="gpl") t="General Public License";
	else if(s=="lgpl") t="Lesser General Public License";
	else if(s=="mit") t="MIT License";
	else if(s=="spl") t="Sun Public License";
	else if(s=="free") t="其他免费许可";
	else if(s=="com") t="商业许可";
	document.write('<a href="/runtime/license.html#' + s + '" target="_blank">' + t + '</a>');
}

function copyright(){
	document.write('<div style="text-align:center"><a href="javascript:void(0)" target="_self" onclick="window.external.addFavorite(\'http://www.javaeedev.com\',\'JavaEE开发网\')">加入收藏</a> - <a href="javascript:void(0)" target="_self" onclick="this.style.behavior=\'url(#default#homepage)\';this.setHomePage(\'http://www.javaeedev.com\')">设为首页</a> - <a href="/runtime/privacy.html" target="_blank">隐私保护</a> - <a href="/runtime/contact.html" target="_blank">联系我们</a> - <a href="/runtime/help.html" target="_blank">获得帮助</a> - <a href="/runtime/report.jspx" target="_blank">投诉举报</a></div>');
	document.write('<div style="text-align:center">JavaEE开发网——为JavaEE开发添加动力！</div>');
	document.write('<div style="text-align:center">版权所有&copy;2007-2009，<a href="http://www.javaeedev.com" target="_blank">www.javaeedev.com</a> 京ICP备<a href="http://www.miibeian.gov.cn/" target="_blank">09038208</a>号</div>');
}

function deleteTopic(boardId,topicId){
	if(g_signon){
		if(g_boards.indexOf(boardId)!=(-1)){
			document.write('<img src="/i/icon/delete.gif" title="删除" width="16" height="16" align="absmiddle" class="hand" onclick="if(confirm(\'版主请确认：删除这个话题？\')) location.assign(\'/bbs/manage.jspx?object=Topic&id=' + topicId + '\');" />');
		}
	}
}

function deleteReply(boardId,replyId){
	if(g_signon){
		if(g_boards.indexOf(boardId)!=(-1)){
			document.write('<img src="/i/icon/delete.gif" title="删除" width="16" height="16" align="absmiddle" class="hand" onclick="if(confirm(\'版主请确认：删除这个回复？\')) location.assign(\'/bbs/manage.jspx?object=Reply&id=' + replyId + '\');" />');
		}
	}
}
