function getParameter(name)
{
var paramStr=location.search;
if(paramStr.length==0)return null;
if(paramStr.charAt(0)!='?')return null;
paramStr=unescape(paramStr);
paramStr=paramStr.substring(1);
if(paramStr.length==0)return null;
var params=paramStr.split('&');
for(var i=0;i<params.length;i++)
{
var parts=params[i].split('=',2);
if(parts[0]==name)
{
if(parts.length<2||typeof(parts[1])=="undefined"||parts[1]=="undefined"||parts[1]=="null")return "";
return parts[1];
}
}
return null;
}
function getcookie(name)
{
var arg=name+"=";
var alen=arg.length,clen=document.cookie.length,i=0;
while(i<clen){
var j=i+alen;
if(document.cookie.substring(i,j)==arg) return _getCookieVal(j);
i=document.cookie.indexOf(" ",i)+1;
if(i==0)break;
}
return null;
function _getCookieVal(offset){
var endstr;
try{endstr=document.cookie.indexOf(";",offset);
if(endstr==-1)endstr=document.cookie.length;
return unescape(document.cookie.substring(offset,endstr));
}catch(e){
return ""
}
finally{}
}
}
/*
function getcookie(name)
{
var my_cookie = document.cookie;
var start = my_cookie.indexOf(name + '=');
if (start == -1) return '';
start += name.length + 1; //1 stands of '='
var end = my_cookie.indexOf(";" ,start);
if (end == -1) end = my_cookie.length;
return my_cookie.substr(start, end - start);
}
*/
function setcookie(name,value,open)
{
var nextyear = new Date();
var cookie= name + '=' + value;
if (open)
{
nextyear.setFullYear(nextyear.getFullYear() + 1);
}
else
{
nextyear.setFullYear(1970);
}
cookie += '; expires=' + nextyear.toGMTString();
cookie += '; path=/';
cookie += '; domain=wizard.webdev.com';
document.cookie=cookie;
}
function checkEmail(str)
{
//如果为空,则通过校验
if(str == "")
return true;
if (str.charAt(0) == "." || str.charAt(0) == "@" || str.indexOf('@', 0) == -1
|| str.indexOf('.', 0) == -1 || str.lastIndexOf("@") == str.length-1 || str.lastIndexOf(".") == str.length-1)
return false;
else
return true;
}
function IsDigit(digitnum)
{
if (digitnum == undefined)
{
return false;
}
if (typeof digitnum != "string")
{
return false;
}
var re=/[^0-9]/;
var ret = digitnum.match(re);
if (ret == null)
{
return true;
}
else
{
return false;
}
}
function MyParseInt(digitnum)
{
if (IsDigit(digitnum))
{
if (digitnum == "")
{
return 0;
}
else
{
return parseInt(digitnum);
}
}
else
{
return 0;
}
}
function ChkEn(w)
{
if(/^(/d|-|_|[a-z]|[A-Z])+$/.test(w))
return w;
else
return "";
}
String.prototype.trim = function()
{
return this.replace(/(^[/s]*)|([/s]*$)/g, "");
}
function f_trim(inputString) {
if (typeof inputString != 'string') { return inputString; }
var retValue = inputString;
var ch = retValue.substring(0, 1);
while (ch == ' ' || ch == '/r' || ch == '/n') {
retValue = retValue.substring(1, retValue.length);
ch = retValue.substring(0, 1);
}
ch = retValue.substring(retValue.length-1, retValue.length);
while (ch == ' ' || ch == '/r' || ch == '/n') {
retValue = retValue.substring(0, retValue.length-1);
ch = retValue.substring(retValue.length-1, retValue.length);
}
return retValue;
}
String.prototype.realLength = function()
{return this.replace(/[/u4E00-/u9FA5]|[/uFE30-/uFFA0]/gi,"**").length;}
function String.prototype.HtmlTextDecode()
{
var tmpstr = this;
var re= /"/g;
tmpstr = tmpstr.replace(re,"/"");
re =/<br//>/g;
tmpstr = tmpstr.replace(re,"/n");
re = /</g;
tmpstr = tmpstr.replace(re,"<");
re = />/g;
tmpstr = tmpstr.replace(re,">");
re = /&/g;
tmpstr = tmpstr.replace(re,"&");
return tmpstr;
}
function String.prototype.HtmlTextEncode()
{
var tmpstr = this;
var re = /&/g;
tmpstr = tmpstr.replace(re,"&");
re= /"/g;
tmpstr = tmpstr.replace(re,""");
re =///n/g;
tmpstr = tmpstr.replace(re,"<br>");
re = /</g;
tmpstr = tmpstr.replace(re,"<");
re = />/g;
tmpstr = tmpstr.replace(re,">");
return tmpstr;
}
function String.prototype.TransDoubleQuto()
{
/*
var tmpstr = this;
var re= /"/g;
tmpstr = tmpstr.replace(re,""");
return tmpstr;
*/
}
function String.prototype.TransSingleQuto()
{
/*
var tmpstr = this;
var re= /'/g;
tmpstr = tmpstr.replace(re,""");
return tmpstr;
*/
}
function ResultItem(result, resultstr)
{
this.result = result;
this.resultstr = resultstr;
}
function XmlDocCheck(xDoc)
{
if (xDoc)
{
var nodes = xDoc.selectNodes("/data");
var result = nodes[0].selectSingleNode("result").text;
if (result == 0)
{
return 0;
}
else
{
var resultstr = nodes[0].selectSingleNode("resultstr").text;
return new ResultItem(result, resultstr);
}
}
return "xDoc invalid";
}
function checkIsChinese(str)
{
if (str == "") return false;
var pattern = /^([/u4E00-/u9FA5]|[/uFE30-/uFFA0])*$/gi;
if (pattern.test(str))
return true;
else
return false;
}
function reallen( str )
{
var len = 0;
for(i=0;i<str.length;i++)
{
if(checkIsChinese(str.charAt(i))) len+=2;
else len+=1;
}
return len;
}
function cutstring(str,len)
{
var rl=0;
for(i=0;i<str.length;i++)
{
if(str.charCodeAt(i)>255)
{
rl+=2;
}
else
{
rl++;
}
if(rl>len)return str.substr(0,i);
}
return str;
}
function checklen(obj,len)
{
if(reallen(obj.value)>len)obj.value=cutstring(obj.value,len);
}
function keyup(num,obj,show)
{
var infos = document.getElementById(show);
var input = document.getElementById(obj);
curlen = reallen(obj.value);
last = num-curlen;
if(curlen<=num)
{infos.innerText="目前您输入的文字长度为"+curlen+"个字符,您还可以输入"+last+"个字符";}
else
{infos.innerText="目前您输入的文字长度为"+curlen+"个字符,已经超过"+Math.abs(last)+"个字符,请减少"+Math.abs(last)+"个字符";}
}
function IntTo2Str(tmpint) //两位字符串
{
var tmpstr="";
if (tmpint < 10)
{
tmpstr = "0" + tmpint;
}
else
{
tmpstr = tmpint;
}
return tmpstr;
}
function Date.prototype.TologTimeStr()
{
var tmpstr = IntTo2Str(this.getMonth() + 1) + "." + IntTo2Str(this.getDate()) + " " + IntTo2Str(this.getHours()) + ":" +
IntTo2Str(this.getMinutes()); // + ":" + IntTo2Str(this.getSeconds());
return tmpstr;
}
function setCookie (name, value) {
document.cookie = name + "=" + value + "; path=/;expires=Thursday,01-Jan-2099 00:00:00 GMT; domain=qq.com";
}
function getCookie(name) {
var search;
search = name + "=";
offset = document.cookie.indexOf(search);
if (offset != -1) {
offset += search.length ;
end = document.cookie.indexOf(";", offset) ;
if (end == -1)
end = document.cookie.length;
return unescape(document.cookie.substring(offset, end));
}
else
return "";
}
//copy from qzone portaljs,which used to show user qzone link..
function openUserSpace(uin){
var openUrl = "http://"+uin+".qzone.qq.com/";
if (parseInt(uin)==10){
alert("该用户使用了隐身草道具,真实身份已被隐藏");
return;
}
if (getCookie("clientver") == "")
window.open(openUrl, "space", "width=925,height=655");
else
window.top.location=openUrl;
}
var r_single_node = /selectSingleNode match="([^"]+)"/
var r_single_node_content = /<%selectSingleNode[^>]*%>((.|/n)+)<%_selectSingleNode%>/
var r_repeat_match_1 = /repeat_1 match="([^"]+)"/
var r_repeat_content_1 = /<%repeat_1[^>]*%>((.|/n)+)<%_repeat_1%>/
var r_index = /<%=index%>/g
var r_text = /<%=text%>/g
var r_attribute_global = /<%=@(/w+)(_/d)*%>/g
var r_attribute = /<%=@(/w+)%>/
//escape '
String.prototype.escapejs1 = function()
{
var _str=this.replace(/&#(/d+);/g,function($1,$2){if($2<=30)return "?";else return "&#"+$2;});
return _str.replace(//'/g, "///'").replace(/'/g, "///'").replace(/
/g, "<br>").replace(/
/g, "<br>").replace(//r/g, "<br>").replace(//n/g, "<br>");
}
//escape "
String.prototype.escapejs2 = function()
{
return this.replace(//"/g, "///"").replace(/"/g, "///"").replace(/
/g, "<br>").replace(/
/g, "<br>").replace(//r/g, "<br>").replace(//n/g, "<br>");
}
//escape ' "
String.prototype.escapejs3 = function()
{
return this.replace(//'/g, "///'").replace(//"/g, "///"").replace(/'/g, "///'").replace(/"/g, "///"").replace(/
/g, "<br>").replace(/
/g, "<br>").replace(//r/g, "<br>").replace(//n/g, "<br>");
}
function fillDIVN(divId,xDocId,fillnum,begin){
if (!xDocId) xDocId = divId;
var div = document.getElementById(divId);
if (!div) {alert("指定的模版容器不"+divId+"存在");return;}
var xDoc= g_XDoc[xDocId];
var templetHTML;
if (div.oldHTML)
{
templetHTML = div.oldHTML;
}
else
{
templetHTML = div.oldHTML = div.innerHTML;
}
templetHTML = templetHTML.replace(//[%/g,"<%").replace(/%/]/g,"%>").replace(//{%/g,"<%").replace(/%/}/g,"%>").replace(//<!--%/g,"<%").replace(/%-->/g,"%>")
div.innerHTML = doFill(templetHTML,xDoc,0,fillnum,begin);
div.style.display = ""
}
function fillDIV(divId,xDocId){
if (!xDocId) xDocId = divId;
var div = document.getElementById(divId);
if (!div) {alert("指定的模版容器不"+divId+"存在");return;}
var xDoc= g_XDoc[xDocId];
var templetHTML;
if (div.oldHTML)
{
templetHTML = div.oldHTML;
}
else
{
templetHTML = div.oldHTML = div.innerHTML;
}
templetHTML = templetHTML.replace(//[%/g,"<%").replace(/%/]/g,"%>").replace(//{%/g,"<%").replace(/%/}/g,"%>").replace(//<!--%/g,"<%").replace(/%-->/g,"%>")
div.innerHTML = doFill(templetHTML,xDoc,0);
div.style.display = ""
}
function FillTempStr(divObj, xDoc, templateStr, fillnum, begin)
{
var tmpStr = templateStr.replace(//[%/g,"<%").replace(/%/]/g,"%>").replace(//{%/g,"<%").replace(/%/}/g,"%>").replace(//<!--%/g,"<%").replace(/%-->/g,"%>");
divObj.innerHTML = doFill(tmpStr, xDoc, 0, fillnum, begin);
divObj.style.display = "";
}
function FillTempStrWithReturn(xDoc, templateStr, fillnum, begin)
{
var tmpStr = templateStr.replace(//[%/g,"<%").replace(/%/]/g,"%>").replace(//{%/g,"<%").replace(/%/}/g,"%>").replace(//<!--%/g,"<%").replace(/%-->/g,"%>");
return doFill(tmpStr, xDoc, 0, fillnum, begin);
}
function doFill(templetHTML,xDoc,xLevel, fillnum, beginnum){
var stRegPrefix = "<%repeat_"+xLevel+"//s*match=/"([^/"]+)/"[^%]*%>";
var stRegContent = "<%repeat_"+xLevel+"[^>]*%>((.|//n)+)<%_repeat_"+xLevel+"%>";
var r_repeat_match = new RegExp(stRegPrefix);
var r_repeat_match_global = new RegExp(stRegPrefix,"g");
var r_repeat_content = new RegExp(stRegContent);
var r_repeat_match_next_level = new RegExp("<%repeat_"+(xLevel+1)+" match=/"([^/"]+)/"");
if (templetHTML.match(r_repeat_match)==null){
alert("没有找到xml节点<%repeat_"+(xLevel)+"%>");
return;
}
var arPrefix = templetHTML.match(r_repeat_match_global);
var startPosition = 0;
for (var i=0;i<arPrefix.length;i++){
var st = arPrefix[i];
var nodePath = st.replace(/^.*match=/"|/".*$/g,""); //获得xml节点路径
if (st.indexOf("callback")>0)
var fnCallBack = eval(st.replace(/^.*callback=/"|/".*$/g,"")); //获得回调函数
if (st.indexOf("precallback") > 0)
var preCallBack =eval(st.replace(/^.*callbackpre=/"|/".*$/g,"")); //获得前置回调函数
startPosition = templetHTML.indexOf(st);
var endPosition = templetHTML.indexOf("<%_repeat_"+xLevel+"%>",startPosition);
var replaceContent = templetHTML.substring(startPosition,endPosition+13)
startPosition += st.length;
var repeatContent = templetHTML.substring(startPosition,endPosition); //获得内容模板
var nodes = xDoc.selectNodes(nodePath); //获得xml节点
var arContent = [];
var attributes = repeatContent.match(r_attribute_global);
var escapeFun=0;
if (attributes == null) attributes = [];
var realbegin = 0;
if (beginnum != undefined)
{
realbegin = (parseInt(beginnum) > nodes.length)?0:parseInt(beginnum);
}
var realnum = nodes.length;
if (fillnum != undefined)
{
if (parseInt(fillnum) > 0)
{
realnum = (parseInt(fillnum) < (nodes.length - realbegin))?parseInt(fillnum):(nodes.length - realbegin);
}
}
for (var j=realbegin;j<realbegin+realnum;j++){
var node = nodes[j];
if (node == undefined)
{
continue;
}
var content = repeatContent;
if (repeatContent.match(r_repeat_match_next_level)!=null) //处理子节点
content = doFill(repeatContent,node,xLevel+1)
var s = content.replace(r_index,(j+1)).replace(r_text,node.text);
if (preCallBack) //预处理
preCallBack(s, node);
for (var k=0;k<attributes.length;k++){
escapeFun=attributes[k].replace(//W/g,"").replace(/.*_(/d)/g,"$1").match(//d/);
var attrTag = attributes[k].replace(//W/g,"").replace(/_/d$/,"");
var attrValue = nodes[j].getAttribute(attrTag);
if (attrValue==null && nodes[j].selectSingleNode(attrTag)!=null)
attrValue = nodes[j].selectSingleNode(attrTag).text;
if (attrValue==null) attrValue = "";
if(escapeFun)
{
if(escapeFun>0)
{
if(attrValue)
{
attrValue=eval('attrValue.escapejs'+escapeFun+'()');
}
}
}
s = s.replace(attributes[k],attrValue);
}
arContent[j] = s;
if (fnCallBack) fnCallBack(node,arContent,j); //后处理
}
templetHTML = templetHTML.replace(replaceContent,arContent.join(""));
}
return templetHTML;
}
//通过XMLHTTP回调的请求
function fillxmlhttprequest(fillid, geturl,succeedcallback,xmlpath)
{
var xmlhttp = CreateXmlHttpObj();
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4)
{
if (xmlhttp.status == 200)
{
g_XDoc[fillid] = xmlhttp.responseXML;
var nodes = g_XDoc[fillid].selectNodes(xmlpath==undefined ? "/data/item":xmlpath);
if (nodes.length > 0)
{
fillDIV(fillid);
}
else
{
eval("document.all." + fillid + ".style.display='none'");
}
var callback = eval(succeedcallback);
if (callback) callback();
}
}
}
xmlhttp.open("GET", geturl, true);
xmlhttp.setRequestHeader("If-Modified-Since","0");
xmlhttp.setRequestHeader("Content-Type","text/html")
xmlhttp.send();
return;
}
function AsyncHttpRequest(method, url,callobj,poststr, flag)
{
var xmlhttp = CreateXmlHttpObj();
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState != 4) //加载过程中的处理, 一般情况是用一个加载中来处理
{
if (callobj.processcallback != undefined)
{
callobj.processcallback(xmlhttp, flag);
}
}
else if (xmlhttp.readyState == 4) //加载完之后的处理
{
if (xmlhttp.status == "200")
{
if (callobj.completeCallback != undefined)
{
callobj.completeCallback(xmlhttp, flag);
}
}
else
{
if(callobj.errorCallback !=undefined)
{
callobj.errorCallback(xmlhttp);
}
}
}
}
var sPoststr = "";
if (method == "GET")
{
sPoststr = "";
}
else
{
sPoststr = poststr;
}
xmlhttp.open(method, url, true);
xmlhttp.setRequestHeader("If-Modified-Since","0");
xmlhttp.setRequestHeader("Content-Type","text/html");
xmlhttp.send(sPoststr);
return;
}
function SyncHttpRequest(method, url, poststr)
{
var xmlhttp = CreateXmlHttpObj();
var sPoststr = "";
if (method == "GET")
{
sPoststr = "";
}
else
{
sPoststr = poststr;
}
xmlhttp.open(method, url, false);
xmlhttp.setRequestHeader("If-Modified-Since","0");
xmlhttp.setRequestHeader("Content-Type","text/html")
xmlhttp.send(sPoststr);
return xmlhttp;
}
/*
function AsyncHttpPostRequest(posturl, poststr, callobj, flag)
{
var xmlhttp = CreateXmlHttpObj();
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState != 4) //加载过程中的处理, 一般情况是用一个加载中来处理
{
if (callobj.processcallback != undefined)
{
callobj.processcallback(xmlhttp, flag);
}
}
else if (xmlhttp.readyState == 4) //加载完之后的处理
{
if (callobj.completeCallback != undefined)
{
callobj.completeCallback(xmlhttp, flag);
}
}
}
xmlhttp.open("POST", geturl, true);
xmlhttp.setRequestHeader("If-Modified-Since","0");
xmlhttp.setRequestHeader("Content-Type","text/html")
xmlhttp.send(poststr);
return;
}
*/
function CreateXmlHttpObj()
{
var xmlhttp=false;
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E)
{
xmlhttp = false;
}
}
//for firefox
if (!xmlhttp && typeofXMLHttpRequest!='undefined')
{
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
//通过XMLHTTP回调的请求
function fillgetxmlrequest(fillid, geturl,succeedcallback,groupid,typevalue)
{
var xmlhttp = CreateXmlHttpObj();
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4)
{
try{xmlhttp.status}catch(e){return;}
if (xmlhttp.status == 200)
{
g_XDoc[fillid] = xmlhttp.responseXML;
var result = g_XDoc[fillid].selectSingleNode("/data/result");
if (result.text == 0)
{
var nodes = g_XDoc[fillid].selectNodes("/data/item");
if (nodes.length > 0)
{
fillDIV(fillid);
document.all[fillid].style.display="";
}
else
{
eval("document.all." + fillid + ".style.display='none'");
}
var callback = eval(succeedcallback);
if (callback) callback();
}
else
{
var resultstr =g_XDoc[fillid].selectSingleNode("/data/resultstr");
window.location.href = "/error.htm?msgid="+resultstr.text+"&groupid="+groupid+"&type="+typevalue;
return ;
}
}
else
{
window.location.href = "/error.htm";
}
}
}
xmlhttp.open("GET", geturl, true);
xmlhttp.setRequestHeader("If-Modified-Since","0");
xmlhttp.setRequestHeader("Content-Type","text/html")
xmlhttp.send();
return;
}
//定义操作类型
window.onerror = function()
{
return true;
}
var LOADWEBLOGLIST = 0;
var ADDWEBLOG = 1;
var DELWEBLOG = 2;
var MODWEBLOG = 3;
var LOADWEBLOG = 4;
var LOADWEBLOGNUM =5;
var LOADCOMMENTLIST=6;
var LOADCOMMENTNUM=7;
var ADDCOMMENT=8;
var DELCOMMENT=9;
var MODIFYCOMMENT=10;
var WEBLOGSETTOP=11;
var WEBLOGCANCELTOP=12;
var WEBLOGCMCLOSE=13;
var WEBLOGCMOPEN=14;
var BATCHDELWEBLOG=15;
var BATCHMODARTICLECLASS=16;
var WEBLOGNUMOFPAGE=20; //每页论坛列表个数
var COMMENTNUMOFPAGE=10;//每页评论列表个数
var WEBLOGCOMTYPE=0;
var PHOTOCOMTYPE=1;
var OTHERERROR=-1;
var WEBLOGSRVPRERROR=-2;
var USERNOTLOGIN=-3;
var USERNOTPRIVILEGES=-4;
var QQVIPGROUPEXPIRE=-5;
var MAXCONTENTLEN=10240;
//weblogclass 操作
var LOADWEBLOGCLASS=1;
var DELWEBLOGCLASS=2;
var MODWEBLOGCLASS=3;
var ADDWEBLOGCLASS=4;
var LOADWEBLOGCLASSINDEX=5;
var MAXCLASSNAMELEN=16;
function JWebLogData()
{
/***********************/
this.DivVec = new Object();
this.xDocVec = new Object();
}
function JWebLog(groupid, classid, showuserinfo, docobj, groupuserobj, logclassobj)
{
this.groupid = groupid;
this.classid = classid; //文章所在的文件夹
this.invokeid = "webloglist";
//webloglist查询条件
this.sclassid = 0; //系统类型
this.begintime = 0; //开始时间
this.endtime = 0; //结束时间
this.weblogpage = 1; //当前查询页码
this.weblogtotalpage = 0; //总页数
this.totalnum = 0;
this.beginnum=0;
var tmpobj = docobj.getElementById("webloglist");
if (tmpobj)
{
this.templatestr = tmpobj.innerHTML;
}
else
{
tmpobj = docobj.getElementById("weblogsingle");
this.templatestr = tmpobj.innerHTML;
}
this.groupuser = groupuserobj;
this.logclassobj = logclassobj;
//附加信息
this.topList = new Object();
this.picList = new Object();
this.annexList = new Object();
this.showuserinfo = showuserinfo;
this.xDoc = undefined;
this.docobj = docobj;
this.currpage = 1;
}
function JWebLog.prototype.SetCurPage(curpage)
{
this.currpage = curpage;
}
function JWebLog.prototype.GetWebLogList(page)
{
this.LoadWeblogList((page -1)*WEBLOGNUMOFPAGE, WEBLOGNUMOFPAGE);
this.currpage = page;
this.LoadWebLogNum();
}
function JWebLog.prototype.SetPara(classid, begintime, endtime)
{
this.classid = classid;
this.begintime = begintime;
this.endtime = endtime;
}
function JWebLog.prototype.LoadWeblogList(beginnum, num)
{
var geturl = "/cgi-bin/getwebloglist?groupid=" + this.groupid + "&classid=" + this.classid
+ "&beginnum=" + beginnum + "&num=" + num + "&begintime=" + this.begintime +"&endtime=" + this.endtime;
this.beginnum = beginnum;
AsyncHttpRequest("GET", geturl, this, "", LOADWEBLOGLIST);
}
function JWebLog.prototype.AddWebLog(formobj)
{
}
function JWebLog.prototype.SetTop(logid)
{
var geturl = "/cgi-bin/weblogsettop?groupid=" + this.groupid + "&logid=" + logid;
AsyncHttpRequest("GET", geturl, this, "", WEBLOGSETTOP);
}
function JWebLog.prototype.CancelTop(logid)
{
var geturl = "/cgi-bin/weblogcanceltop?groupid=" + this.groupid + "&logid=" + logid;
AsyncHttpRequest("GET", geturl, this, "", WEBLOGCANCELTOP);
}
function JWebLog.prototype.WebLogCmClose(logid)
{
var geturl = "/cgi-bin/weblogcmclose?groupid=" + this.groupid+ "&logid="+ logid ;
AsyncHttpRequest("GET", geturl, this, "", WEBLOGCMCLOSE);
}
function JWebLog.prototype.WebLogCmOpen(logid)
{
var geturl = "/cgi-bin/weblogcmopen?groupid=" + this.groupid+ "&logid="+ logid ;
AsyncHttpRequest("GET", geturl, this, "", WEBLOGCMOPEN);
}
function JWebLog.prototype.DelWebLog(logid)
{
if (!window.confirm("你是否要真的删除这篇文章, 删除后将无法恢复"))
{
return;
}
var geturl = "/cgi-bin/delweblog?groupid=" + this.groupid+ "&logid="+ logid ;
AsyncHttpRequest("GET", geturl, this, "", DELWEBLOG);
}
function JWebLog.prototype.BatchDelWebLog(logidlist)
{
if (!window.confirm("你是否要真的批删这些文章, 删除后将无法恢复"))
{
return;
}
var geturl = "/cgi-bin/batchdelweblog?groupid=" + this.groupid+ "&logidlist="+ logidlist ;
AsyncHttpRequest("GET", geturl, this, "", BATCHDELWEBLOG);
}
function JWebLog.prototype.BatchModArticleClassId(logidlist, classid)
{
var geturl = "/cgi-bin/batchmodarticleclass?groupid=" + this.groupid+ "&logidlist="+ logidlist
+ "&logclassid=" + classid;
AsyncHttpRequest("GET", geturl, this, "", BATCHMODARTICLECLASS);
}
function JWebLog.prototype.ModifyWebLog(formobj)
{
}
//过程中的处理
function JWebLog.prototype.processcallback(xmlhttp, flag)
{
var divObj;
if (flag == LOADWEBLOGLIST)
{
divObj = this.docobj.getElementById("webloglist");
divObj.innerHTML = "<table width=100%><tr align='center'><td><img src='http://imgcache.qq.com/group/images/group101.gif'></td></tr></table>";
}
else if (flag == LOADWEBLOGNUM)
{
divObj = this.docobj.getElementById("weblogpagenum");
divObj.innerHTML = "正在加载文章个数......";
}
else if (flag == LOADWEBLOG)
{
divObj = this.docobj.getElementById("weblogsingle");
divObj.innerHTML = "<table width=100%><tr align='center'><td><img src='http://imgcache.qq.com/group/images/group101.gif'></td></tr></table>";
}
}
//后处理
function JWebLog.prototype.completeCallback(xmlhttp, flag)
{
if (flag == LOADWEBLOGLIST) //加载列表
{
//需要替换列表
this.xDoc = xmlhttp.responseXML;
var divObj = this.docobj.getElementById("webloglist");
var ret = XmlDocCheck(this.xDoc);
if (ret != 0)
{
//divObj.innerHTML = ret.resultstr;
/*if (ret.result == -3 || ret.result == -4)
{
window.location.href = "/error.htm?msgid=2&groupid=" + this.groupid;
}
else
{
window.location.href = "/error.htm?msgid=6&groupid=" + this.groupid;
}*/
this.showuserinfo.GetUserInfo(this.invokeid);
return;
}
var nodes = this.xDoc.selectNodes("/data/item");
if (nodes.length == 0 && this.beginnum == 0 )
{
var tmpstr= "";
if (this.classid == 0)
{
tmpstr = "<p align='center'>本群论坛暂时还没有贴子</p>";
}
else
{
tmpstr = "<p align='center'>本群论坛版面暂时还没有贴子</p>";
}
divObj.innerHTML = tmpstr;
this.showuserinfo.GetUserInfo(this.invokeid);
return;
}
FillTempStr(divObj, this.xDoc, this.templatestr);
var tmpobj;
//导航条
if (this.logclassobj != undefined)
{
var tmpclassname = this.logclassobj.GetClassName(this.classid);
tmpobj = this.docobj.getElementById("logclassname");
if (tmpobj)
{
if (tmpclassname != "")
tmpobj.innerHTML = " > " + tmpclassname;
}
}
var i=0;
var tmpHtml = divObj.innerHTML;
var tmpNewList = new Array();
var tmpNowDate = new Date();
var tmpNowSec = tmpNowDate.valueOf()/1000;
//alert(tmpNowSec);
for ( i=0; i < nodes.length; i++)
{
var faceid = nodes[i].selectSingleNode("faceid").text;
var uin = nodes[i].selectSingleNode("uin").text;
var logid = nodes[i].selectSingleNode("logid").text;
var logstype = MyParseInt(nodes[i].selectSingleNode("logstype").text);
var title = nodes[i].selectSingleNode("title").text;
var classid = nodes[i].selectSingleNode("classid").text;
if (this.groupuser != undefined)
{
var uininfo = this.groupuser.GetUserInfo(uin);
if (uininfo)
{
faceid = uininfo.faceid;
}
}
this.showuserinfo.SetUserInfoEvent(uin, faceid);
var flag = nodes[i].selectSingleNode("flag").text;
var pfFlag = nodes[i].selectSingleNode("pfflag").text;
if (flag == 1)
{
this.topList[logid] = 1;
}
var fflag = pfFlag & 0x02; //第二位
var pflag = pfFlag & 0x01; //第一位
if (fflag == 0x02)
{
this.annexList[logid] = 1;
}
if (pflag == 0x01)
{
this.picList[logid] = 1;
}
//时间格式替换下
var posttime = nodes[i].selectSingleNode("posttime").text;
if (tmpNowSec - parseInt(posttime) < 3*86400) //最新文章
{
tmpNewList.push(logid);
}
var tmpDate = new Date(parseInt(posttime)*1000);
var timestr = tmpDate.TologTimeStr();
var tmp = "sposttime" + logid;
tmpobj = this.docobj.getElementById(tmp);
if (tmpobj)
{
tmpobj.innerText = timestr;
}
//系统论坛类型
this.SetLogsTypeImg(logstype, logid);
}
this.showuserinfo.GetUserInfo(this.invokeid);
//显示群的类型
if (this.classid == 0)
{
var classname = "";
if (this.logclassobj != undefined)
{
if (this.logclassobj.classNameList != undefined)
{
var tmpclassid ;
for (tmpclassid in this.logclassobj.classNameList)
{
var classhreflist = this.docobj.getElementsByName(tmpclassid+"href");
for (var i=0; i < classhreflist.length ;i++)
{
classhreflist[i].innerHTML = "[" + this.logclassobj.classNameList[tmpclassid] + "]";
}
}
}
}
}
//设置最新文章标志
for (var j=0; j < tmpNewList.length; j++)
{
var tmpObj = this.docobj.getElementById("weblognew" + tmpNewList[j]);
if (tmpObj)
{
tmpObj.style.display = "block";
}
}
//设置置顶标志
var tmpLoop;
for (tmpLoop in this.topList)
{
var tmpObj = this.docobj.getElementById("weblogtop" + tmpLoop);
if (tmpObj)
{
tmpObj.style.display = "block";
}
tmpObj = this.docobj.getElementById("logtitle" + tmpLoop); //粗体显示
if (tmpObj)
{
tmpObj.className = "graynl b01"; //
}
}
//设置附件标志
for (tmpLoop in this.annexList)
{
var tmpObj = this.docobj.getElementById("Annex" + tmpLoop);
if (tmpObj)
{
tmpObj.style.display = "block";
}
}
//设置图片标志
for (tmpLoop in this.picList)
{
var tmpObj = this.docobj.getElementById("Pic" + tmpLoop);
if (tmpObj)
{
tmpObj.style.display = "block";
}
}
//显示删除链接
var opuin = getcookie("uin");
var realuin = parseInt(opuin.substr(1), 10);
var tmpstr = "weblogdel" + realuin;
var tmpList = this.docobj.getElementsByName(tmpstr);
for (var i=0; i < tmpList.length; i++)
{
tmpList[i].style.display = "block";
}
//显示批删连接
if (this.groupuser != undefined)
{
if (this.groupuser.IsAdmin(realuin))
{
var tmpobjs = this.docobj.getElementsByName("batchdel");
for (var j=0; j < tmpobjs.length; j++)
{
tmpobjs[j].style.display = "";
}
}
}
if (window.ResizeIframe)
{
ResizeIframe();
}
}
else if (flag == LOADWEBLOGNUM) //获取WEBLOG数目
{
var xDoc = xmlhttp.responseXML;
var ret = XmlDocCheck(xDoc);
if (ret != 0)
{
this.docobj.getElementById("weblogpagenum").innerHTML = "";
return;
}
var nodes = xDoc.selectNodes("/data");
var result = nodes[0].selectSingleNode("result");
var resultstr = nodes[0].selectSingleNode("resultstr");
if (result.text == 0)
{
this.totalNum = parseInt(resultstr.text);
var pageobj = this.docobj.getElementById("weblogpagenum");
if (pageobj)
{
pageobj.innerHTML = WritePageNum(this.totalNum, this.currpage, WEBLOGNUMOFPAGE, "GoWebLogPage");
pageobj.style.display = '';
}
}
else
{
var failstr = resultstr.text;
alert(failstr);
}
}
else if (flag == LOADWEBLOG)
{
this.xDoc = xmlhttp.responseXML;
var divObj = this.docobj.getElementById("weblogsingle");
if (XmlDocCheck(this.xDoc) != 0)
{
divObj.innerHTML = "加载文章失败";
this.showuserinfo.GetUserInfo(this.invokeid);
return;
}
FillTempStr(divObj, this.xDoc, this.templatestr);
var nodes = this.xDoc.selectNodes("/data/item");
var posttime = nodes[0].selectSingleNode("posttime").text;
var logcontent = nodes[0].selectSingleNode("content").text;
var vflag = nodes[0].selectSingleNode("vflag").text;
var re;
if (vflag == 1) //旧版的帖子显示图片连接
{
re = /<img onload="resizeimg(this)(.*)br>/gmi;
logcontent = logcontent.replace(re, function($1){var tmpre=/&#(/d+);/gim;
var str = $1.replace(tmpre, function($1, $2){return String.fromCharCode($2);});
return str;});
}
re = /
|
/g;
var logcontent = logcontent.replace(re, "<br>");
re = / /g;
logcontent = logcontent.replace(re, " ");
re =/ /g;
logcontent = logcontent.replace(re, " ");
this.docobj.all.webcontent.innerHTML = logcontent;
var tmpDate = new Date(parseInt(posttime)*1000);
this.docobj.all.posttimeid.innerText = tmpDate.TologTimeStr();
var classid = nodes[0].selectSingleNode("classid").text;
if (this.logclassobj != undefined)
{
//alert(this.logclassobj.GetClassName(classid));
var classname = this.logclassobj.GetClassName(classid);
if (classname == "")
{
this.docobj.all.logclassex.style.display = "none";
}
this.docobj.all.logclassname.innerHTML = classname;
}
//修改删除按钮显示属性
var opuin = getcookie("uin");
var realuin = parseInt(opuin.substr(1), 10);
var logid = nodes[0].selectSingleNode("logid").text;
var loguin = nodes[0].selectSingleNode("uin").text;
var faceid = nodes[0].selectSingleNode("faceid").text;
var posttime = nodes[0].selectSingleNode("posttime").text;
var logstype = MyParseInt(nodes[0].selectSingleNode("logstype").text);
//设置文章系统类型图标
this.SetLogsTypeImg(logstype, logid);
//采用用户最新的faceid
if (this.groupuser != undefined)
{
var uininfo = this.groupuser.GetUserInfo(loguin);
if (uininfo)
{
faceid = uininfo.faceid;
}
}
this.showuserinfo.SetUserInfoEvent(loguin, faceid);
this.showuserinfo.GetUserInfo(this.invokeid);
var cmcloseflag = nodes[0].selectSingleNode("cmcloseflag").text;
tmpobj = this.docobj.getElementById("publishcomment");
if (cmcloseflag == 1)
{
tmpobj.oldHTML = tmpobj.innerHTML;
tmpobj.innerHTML = "<p align='center'>此文章评论被关闭, 不允许评论了<p>";
}
if (this.groupuser != undefined)
{
if (this.groupuser.IsAdmin(realuin)) //是管理员
{
//删除修改按钮打开
tmpobj = this.docobj.getElementById("weblogdel");
tmpobj.style.display = "";
if (realuin == parseInt(loguin)) //管理员也必须是作者才能够修改文章
{
tmpobj = this.docobj.getElementById("weblogmod");
tmpobj.style.display = "";
}
/*
//评论回复开闭
if (cmcloseflag == 1)
{
tmpobj = this.docobj.getElementById("opencomment");
if (tmpobj)
{
tmpobj.style.display = "";
}
}
else
{
tmpobj = this.docobj.getElementById("closecomment");
if (tmpobj)
{
tmpobj.style.display = "";
}
}
*/
//置顶显示
if (nodes[0].selectSingleNode("flag").text == 1) //置顶
{
this.OnTopFlag();
}
else //已置顶
{
this.NotOnTopFlag();
}
}
else
{
if (this.groupuser.IsInGroup(realuin))
{
if (realuin == parseInt(loguin))
{
tmpobj = this.docobj.getElementById("weblogdel");
tmpobj.style.display = "";
tmpobj = this.docobj.getElementById("weblogmod");
tmpobj.style.display = "";
/*
//评论回复开闭
if (cmcloseflag == 1)
{
tmpobj = this.docobj.getElementById("opencomment");
if (tmpobj)
{
tmpobj.style.display = "";
}
}
else
{
tmpobj = this.docobj.getElementById("closecomment");
if (tmpobj)
{
tmpobj.style.display = "";
}
}
*/
}
}
}
}
//window.location.href = "#weblogsingle";
//修改iframe的高度
ResizeIframe();
}
else if (flag == DELWEBLOG)
{
var xDoc = xmlhttp.responseXML;
var nodes = xDoc.selectNodes("/data");
var result = nodes[0].selectSingleNode("result");
if (result.text == 0)
{
alert("删除文章成功");
//this.LoadWeblogList(0, WEBLOGNUMOFPAGE);
//this.LoadWebLogNum();
window.location.href = "/webloglist.html?groupid=" + this.groupid;
}
else if (result.text == USERNOTLOGIN) //没有登录
{
window.open("/cgi-bin/comm_login?p=self&url=reload", '', 'width=400,height=200');
}
else
{
var resultstr = nodes[0].selectSingleNode("resultstr");
var failstr = "删除文章失败" + resultstr.text;
alert(failstr);
}
}
else if (flag == WEBLOGSETTOP)
{
var xDoc = xmlhttp.responseXML;
var resultItem = XmlDocCheck(xDoc);
if (resultItem != 0)
{
if (resultItem.result == 2)
{
alert("置顶帖子数已满");
}
else
{
alert("置顶失败" + resultItem.result);
}
return;
}
alert("置顶成功");
this.OnTopFlag();
}
else if (flag == WEBLOGCANCELTOP)
{
var xDoc = xmlhttp.responseXML;
if (XmlDocCheck(xDoc) != 0)
{
alert("取消置顶失败");
return;
}
alert("取消置顶成功");
this.NotOnTopFlag();
}
else if (flag == WEBLOGCMOPEN)
{
var xDoc = xmlhttp.responseXML;
if (XmlDocCheck(xDoc) != 0)
{
alert("开通评论失败");
return;
}
this.OpenCommentFlag();
}
else if (flag == WEBLOGCMCLOSE)
{
var xDoc = xmlhttp.responseXML;
if (XmlDocCheck(xDoc) != 0)
{
alert("关闭评论失败");
return;
}
this.CloseCommentFlag();
}
else if (flag == BATCHDELWEBLOG)
{
var xDoc = xmlhttp.responseXML;
if (XmlDocCheck(xDoc) != 0)
{
alert("批删失败");
return;
}
window.location.href = "/webloglist.html?groupid=" + this.groupid + "&classid=" + this.classid;
}
else if (flag == BATCHMODARTICLECLASS)
{
var xDoc = xmlhttp.responseXML;
if (XmlDocCheck(xDoc) != 0)
{
alert("批转失败");
return;
}
var sUrl = "/webloglist.html?groupid=" + this.groupid + "&classid=" + this.classid;
window.location.href = sUrl;
}
}
function JWebLog.prototype.SetLogsTypeImg(logstype, logid)
{
var tmpobj = this.docobj.getElementById("losgtype" + logid);
if (tmpobj)
{