📄 common.js
字号:
}
}
else
{
if(is_object('uploadmode'+i))
document.getElementById('uploadmode'+i).style.display='none';
}
}
}
/******************************************
* postIt()
* submit upload form
******************************************/
var rParam='';
function postIt()
{
// reset the form action url
document.uploadform.action=actions[currentmode];
// upu uploader
UPUENABLED =0;
if(currentmode==1&&UPUENABLED==1)
{
startUploading();
upuInit(document.uploadform);
return 1;
}
// validate file types before uplaod
var ok = validateUpload();
if(ok==false) return false;
// set uploading interface
startUploading();
// process flash upload
if(currentmode==4)
{
flashObj("flashUpload").saveCookie(document.cookie);
flashObj("flashUpload").uploadFiles();
return;
}
// collect param to sen in progress url
var sid = document.uploadform.sessionid.value;
iTotal = escape("-1");
rParam = "iTotal=" + iTotal;
rParam += "&iRead=0";
rParam += "&iStatus=1";
rParam += "&iNums="+max_uploads;
rParam += "&iMode="+currentmode;
rParam += "&sessionid=" + sid;
// if progress is syn mode, disable the ajax use!
if(currentmode==1&&cgi_prog_mode=='ajax') AjaxRequest(rParam);
if(currentmode==2&&url_prog_mode=='ajax') AjaxRequest(rParam);
if(currentmode==3&&ftp_prog_mode=='ajax') AjaxRequest(rParam);
// submit form
document.uploadform.submit();
return true;
}
/******************************************
* showResponse()
* process the response of progress bar
******************************************/
function showResponse(originalRequest)
{
var parts= new Array();
var params=originalRequest.responseText;
//alert('Response:'+params);
//start to upload,
if(params.substring(0,5)=='start')
{
rParam = params.substring(6);
setTimeout("AjaxRequest(rParam);",2000);
}
else
{
parts = params.split(',');
if(parts.length>5)
{
var url = parts[6];
// fail to get the correct data, use lastSuccessParam
if(url.substring(0,7)!='iTotal=' && url!='')
{
var url = lastSuccessParam;
}
else
{
showProgress(params);
}
}
else
{
//alert('Fail Response:'+params+lastSuccessParam);
var url = lastSuccessParam;
}
if(url.length>5)
{
setTimeout("AjaxRequest('"+url+"');",2000);
}
}
}
/******************************************
* stopUpload()
* disable future ajax request of progress bar
******************************************/
function stopUpload()
{
stopupload = true;
}
/******************************************
* AjaxRequest()
* send progress bar request
******************************************/
var lastSuccessUrl = '';
function AjaxRequest(rParam)
{
if(uploadDone==1) return;
var url=document.uploadform.returnurl.value;
lastSuccessParam = rParam;
//alert(url+rParam+'&url='+progress_url+'&r='+Math.random());
var myAjax = new Ajax.Request(
url,
{method: 'get', parameters: rParam+'&url='+progress_url+'&r='+Math.random(), onComplete: showResponse,onFailure: reportError}
);
}
/******************************************
* reportError()
* for debuging
******************************************/
function reportError(request)
{
alert(originalRequest.responseText);
alert('Sorry. There was an error.');
}
/******************************************
* AjaxSubmit(formname,holder)
* submi the form with the 'formname',
* if holder is specifed, show the content in holder
* @param string
* @param string
******************************************/
function AjaxSubmit(formname,holder)
{
var url = $(formname).action;
var httpmethod = $(formname).method;
var Param = Form.serialize(formname);
if(holder)
var myAjax = new Ajax.Updater (
holder,
url,
{method: httpmethod, parameters: Param,evalScripts: true}
);
else
{
var success = function(t){submitComplete(t, formname);}
var failure = function(t){submitFailed(t, formname);}
var myAjax = new Ajax.Request (
url,
{method:httpmethod, parameters:Param, onSuccess:success, onFailure:failure}
);
}
}
/******************************************
* is_object(id)
* check if the object with the 'id' exists
* @param string
* @return bool
******************************************/
function is_object(id)
{
return document.getElementById(id) != null;
}
/******************************************
* in_array(name,arr)
* check name exists in array 'arr'
* @param string
* @param array
* @return bool
******************************************/
function in_array(name,arr)
{
name=name.toLowerCase();
var last=name.lastIndexOf('.');
var ok=0;
if(last!=-1)
{
var ext=name.substring(last+1);
if(ext!='')
{
var exts=arr.split(',');
for(var i=0;i<exts.length;i++)
{
if(exts[i]==ext) return 1;
}
}
else
{
return 0;
}
}
else
{
return 0;
}
return 0;
}
/**
* Emulates unhtmlspecialchars in vBulletin
*
* @param string String to process
*
* @return string
*/
function unhtmlspecialchars(str)
{
f = new Array(/</g, />/g, /"/g, /&/g);
r = new Array('<', '>', '"', '&');
for (var i in f)
{
str = str.replace(f[i], r[i]);
}
return str;
}
/**
* Emulates PHP's htmlspecialchars()
*
* @param string String to process
*
* @return string
*/
function htmlspecialchars(str)
{
//var f = new Array(/&(?!#[0-9]+;)/g, /</g, />/g, /"/g);
var f = new Array(
(is_mac && is_ie ? new RegExp('&', 'g') : new RegExp('&(?!#[0-9]+;)', 'g')),
new RegExp('<', 'g'),
new RegExp('>', 'g'),
new RegExp('"', 'g')
);
var r = new Array(
'&',
'<',
'>',
'"'
);
for (var i = 0; i < f.length; i++)
{
str = str.replace(f[i], r[i]);
}
return str;
}
function ClipBoard(id)
{
var ccc = MM_findObj(id);
if (document.all){
ccc.value = ccc.innerText;
Copied = ccc.createTextRange();
Copied.execCommand("Copy");
alert("URL copied!");
}
else
{
alert('Close this box and press \'CTL-c\' to copy');
ccc.focus();
ccc.select();
}
}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function highlight(id) {
var field = MM_findObj(id);
field.focus();
field.select();
}
function toggle(el) {
lyr = document.getElementById(el);
if (lyr.style.display != 'block') { lyr.style.display = 'block'; }
else { lyr.style.display = 'none'; }
}
function checkAll()
{
for (var i=0;i<document.myform.elements.length;i++)
{
var e = document.myform.elements[i];
if (e.type == 'checkbox' && e.name != 'allbox'&& !e.disabled)
e.checked = document.myform.allbox.checked;
}
}
function opConfirm(text, conf)
{
for (var i=0;i<document.myform.elements.length;i++)
{
var e = document.myform.elements[i];
if (e.type == 'checkbox' && e.name != 'allbox' && e.checked == 1 ) {
if (conf) {
return confirm(text);
} else {
return 1;
}
}
}
return false;
}
var emailfilter=/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i
function checkmail(e){
var returnval=emailfilter.test(e)
return returnval;
}
function getexpirydate( nodays){
var UTCstring;
Today = new Date();
nomilli=Date.parse(Today);
Today.setTime(nomilli+nodays*24*60*60*1000);
UTCstring = Today.toUTCString();
return UTCstring;
}
function getcookie(cookiename) {
var cookiestring=""+document.cookie;
var index1=cookiestring.indexOf(cookiename);
if (index1==-1 || cookiename=="") return "";
var index2=cookiestring.indexOf(';',index1);
if (index2==-1) index2=cookiestring.length;
return unescape(cookiestring.substring(index1+cookiename.length+1,index2));
}
function setcookie(name,value)
{
duration=30;
cookiestring=name+"="+escape(value)+";EXPIRES="+getexpirydate(duration);
document.cookie=cookiestring;
}
function delcookie(name)
{
cookiestring=name+"="+escape('')+";EXPIRES="+getexpirydate(-1);
document.cookie=cookiestring;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -