246 lines
7.3 KiB
JavaScript
246 lines
7.3 KiB
JavaScript
|
|
function portal_comment_requote(cid, aid) {
|
|
var x = new Ajax();
|
|
x.get('portal.php?mod=portalcp&ac=comment&op=requote&cid='+cid+'&aid='+aid+'&inajax=1', function(s){
|
|
jq('message').focus();
|
|
ajaxinnerhtml(jq('message'), s);
|
|
});
|
|
$(".cover_div").slideToggle(0);
|
|
$("#cform").slideToggle(0);
|
|
}
|
|
|
|
function jq(id) {
|
|
return !id ? null : document.getElementById(id);
|
|
}
|
|
|
|
function browserVersion(types) {
|
|
var other = 1;
|
|
for(i in types) {
|
|
var v = types[i] ? types[i] : i;
|
|
if(USERAGENT.indexOf(v) != -1) {
|
|
var re = new RegExp(v + '(\\/|\\s|:)([\\d\\.]+)', 'ig');
|
|
var matches = re.exec(USERAGENT);
|
|
var ver = matches != null ? matches[2] : 0;
|
|
other = ver !== 0 && v != 'mozilla' ? 0 : other;
|
|
}else {
|
|
var ver = 0;
|
|
}
|
|
eval('BROWSER.' + i + '= ver');
|
|
}
|
|
BROWSER.other = other;
|
|
}
|
|
|
|
function Ajax(recvType, waitId) {
|
|
var aj = new Object();
|
|
aj.loading = '请稍候...';
|
|
aj.recvType = recvType ? recvType : 'XML';
|
|
aj.waitId = waitId ? jq(waitId) : null;
|
|
aj.resultHandle = null;
|
|
aj.sendString = '';
|
|
aj.targetUrl = '';
|
|
aj.setLoading = function(loading) {
|
|
if(typeof loading !== 'undefined' && loading !== null) aj.loading = loading;
|
|
};
|
|
aj.setRecvType = function(recvtype) {
|
|
aj.recvType = recvtype;
|
|
};
|
|
aj.setWaitId = function(waitid) {
|
|
aj.waitId = typeof waitid == 'object' ? waitid : jq(waitid);
|
|
};
|
|
aj.createXMLHttpRequest = function() {
|
|
var request = false;
|
|
if(window.XMLHttpRequest) {
|
|
request = new XMLHttpRequest();
|
|
if(request.overrideMimeType) {
|
|
request.overrideMimeType('text/xml');
|
|
}
|
|
} else if(window.ActiveXObject) {
|
|
var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
|
|
for(var i=0; i<versions.length; i++) {
|
|
try {
|
|
request = new ActiveXObject(versions[i]);
|
|
if(request) {
|
|
return request;
|
|
}
|
|
} catch(e) {}
|
|
}
|
|
}
|
|
return request;
|
|
};
|
|
aj.XMLHttpRequest = aj.createXMLHttpRequest();
|
|
aj.showLoading = function() {
|
|
if(aj.waitId && (aj.XMLHttpRequest.readyState != 4 || aj.XMLHttpRequest.status != 200)) {
|
|
aj.waitId.style.display = '';
|
|
aj.waitId.innerHTML = '<span><img src="' + IMGDIR + '/loading.gif" class="vm"> ' + aj.loading + '</span>';
|
|
}
|
|
};
|
|
aj.processHandle = function() {
|
|
if(aj.XMLHttpRequest.readyState == 4 && aj.XMLHttpRequest.status == 200) {
|
|
if(aj.waitId) {
|
|
aj.waitId.style.display = 'none';
|
|
}
|
|
if(aj.recvType == 'HTML') {
|
|
aj.resultHandle(aj.XMLHttpRequest.responseText, aj);
|
|
} else if(aj.recvType == 'XML') {
|
|
if(!aj.XMLHttpRequest.responseXML || !aj.XMLHttpRequest.responseXML.lastChild || aj.XMLHttpRequest.responseXML.lastChild.localName == 'parsererror') {
|
|
aj.resultHandle('' , aj);
|
|
} else {
|
|
aj.resultHandle(aj.XMLHttpRequest.responseXML.lastChild.firstChild.nodeValue, aj);
|
|
}
|
|
} else if(aj.recvType == 'JSON') {
|
|
var s = null;
|
|
try {
|
|
s = (new Function("return ("+aj.XMLHttpRequest.responseText+")"))();
|
|
} catch (e) {
|
|
s = null;
|
|
}
|
|
aj.resultHandle(s, aj);
|
|
}
|
|
}
|
|
};
|
|
aj.get = function(targetUrl, resultHandle) {
|
|
targetUrl = hostconvert(targetUrl);
|
|
setTimeout(function(){aj.showLoading()}, 250);
|
|
aj.targetUrl = targetUrl;
|
|
aj.XMLHttpRequest.onreadystatechange = aj.processHandle;
|
|
aj.resultHandle = resultHandle;
|
|
var attackevasive = isUndefined(attackevasive) ? 0 : attackevasive;
|
|
if(window.XMLHttpRequest) {
|
|
aj.XMLHttpRequest.open('GET', aj.targetUrl);
|
|
aj.XMLHttpRequest.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
|
|
aj.XMLHttpRequest.send(null);
|
|
} else {
|
|
aj.XMLHttpRequest.open("GET", targetUrl, true);
|
|
aj.XMLHttpRequest.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
|
|
aj.XMLHttpRequest.send();
|
|
}
|
|
};
|
|
aj.post = function(targetUrl, sendString, resultHandle) {
|
|
targetUrl = hostconvert(targetUrl);
|
|
setTimeout(function(){aj.showLoading()}, 250);
|
|
aj.targetUrl = targetUrl;
|
|
aj.sendString = sendString;
|
|
aj.XMLHttpRequest.onreadystatechange = aj.processHandle;
|
|
aj.resultHandle = resultHandle;
|
|
aj.XMLHttpRequest.open('POST', targetUrl);
|
|
aj.XMLHttpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
|
aj.XMLHttpRequest.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
|
|
aj.XMLHttpRequest.send(aj.sendString);
|
|
};
|
|
aj.getJSON = function(targetUrl, resultHandle) {
|
|
aj.setRecvType('JSON');
|
|
aj.get(targetUrl+'&ajaxdata=json', resultHandle);
|
|
};
|
|
aj.getHTML = function(targetUrl, resultHandle) {
|
|
aj.setRecvType('HTML');
|
|
aj.get(targetUrl+'&ajaxdata=html', resultHandle);
|
|
};
|
|
return aj;
|
|
}
|
|
|
|
function getHost(url) {
|
|
var host = "null";
|
|
if(typeof url == "undefined"|| null == url) {
|
|
url = window.location.href;
|
|
}
|
|
var regex = /^\w+\:\/\/([^\/]*).*/;
|
|
var match = url.match(regex);
|
|
if(typeof match != "undefined" && null != match) {
|
|
host = match[1];
|
|
}
|
|
return host;
|
|
}
|
|
|
|
function hostconvert(url) {
|
|
if(!url.match(/^https?:\/\//)) url = SITEURL + url;
|
|
var url_host = getHost(url);
|
|
var cur_host = getHost().toLowerCase();
|
|
if(url_host && cur_host != url_host) {
|
|
url = url.replace(url_host, cur_host);
|
|
}
|
|
return url;
|
|
}
|
|
|
|
function $F(func, args, script) {
|
|
var run = function () {
|
|
var argc = args.length, s = '';
|
|
for(i = 0;i < argc;i++) {
|
|
s += ',args[' + i + ']';
|
|
}
|
|
eval('var check = typeof ' + func + ' == \'function\'');
|
|
if(check) {
|
|
eval(func + '(' + s.substr(1) + ')');
|
|
} else {
|
|
setTimeout(function () {checkrun();}, 50);
|
|
}
|
|
};
|
|
var checkrun = function () {
|
|
if(JSLOADED[src]) {
|
|
run();
|
|
} else {
|
|
setTimeout(function () {checkrun();}, 50);
|
|
}
|
|
};
|
|
script = script || 'common_extra';
|
|
src = JSPATH + script + '.js?' + VERHASH;
|
|
if(!JSLOADED[src]) {
|
|
appendscript(src);
|
|
}
|
|
return checkrun();
|
|
}
|
|
|
|
function ajaxupdateevents(obj, tagName) {
|
|
$F('_ajaxupdateevents', arguments, 'ajax');
|
|
}
|
|
|
|
function ajaxupdateevent(o) {
|
|
$F('_ajaxupdateevent', arguments, 'ajax');
|
|
}
|
|
|
|
function ajaxget(url, showid, waitid, loading, display, recall) {
|
|
$F('_ajaxget', arguments, 'ajax');
|
|
}
|
|
|
|
function ajaxpost(formid, showid, waitid, showidclass, submitbtn, recall) {
|
|
$F('_ajaxpost', arguments, 'ajax');
|
|
}
|
|
|
|
function ajaxmenu(ctrlObj, timeout, cache, duration, pos, recall, idclass, contentclass) {
|
|
$F('_ajaxmenu', arguments, 'ajax');
|
|
}
|
|
|
|
function ajaxinnerhtml(showid, s) {
|
|
$F('_ajaxinnerhtml', arguments, 'ajax');
|
|
}
|
|
|
|
var BROWSER = {};
|
|
var USERAGENT = navigator.userAgent.toLowerCase();
|
|
browserVersion({'ie':'msie','firefox':'','chrome':'','opera':'','safari':'','mozilla':'','webkit':'','maxthon':'','qq':'qqbrowser','rv':'rv'});
|
|
if(BROWSER.safari || BROWSER.rv) {
|
|
BROWSER.firefox = true;
|
|
}
|
|
BROWSER.opera = BROWSER.opera ? opera.version() : 0;
|
|
|
|
HTMLNODE = document.getElementsByTagName('head')[0].parentNode;
|
|
if(BROWSER.ie) {
|
|
BROWSER.iemode = parseInt(typeof document.documentMode != 'undefined' ? document.documentMode : BROWSER.ie);
|
|
HTMLNODE.className = 'ie_all ie' + BROWSER.iemode;
|
|
}
|
|
|
|
var CSSLOADED = [];
|
|
var JSLOADED = [];
|
|
var JSMENU = [];
|
|
JSMENU['active'] = [];
|
|
JSMENU['timer'] = [];
|
|
JSMENU['drag'] = [];
|
|
JSMENU['layer'] = 0;
|
|
JSMENU['zIndex'] = {'win':200,'menu':300,'dialog':400,'prompt':500};
|
|
JSMENU['float'] = '';
|
|
var CURRENTSTYPE = null;
|
|
var discuz_uid = isUndefined(discuz_uid) ? 0 : discuz_uid;
|
|
var creditnotice = isUndefined(creditnotice) ? '' : creditnotice;
|
|
var cookiedomain = isUndefined(cookiedomain) ? '' : cookiedomain;
|
|
var cookiepath = isUndefined(cookiepath) ? '' : cookiepath;
|
|
var EXTRAFUNC = [], EXTRASTR = '';
|
|
EXTRAFUNC['showmenu'] = [];
|