📄 all.js
字号:
try{
if (gIsIE || gIsSafari) fileCtls[j].parentNode.childNodes[1].innerText = files[i];
}catch(e){}
}
}
if (!isExist) {
var name = files[i] + " |";
var pos = attachlist.indexOf(name);
if (pos != -1) {
attachlist = attachlist.substr(0, pos) + attachlist.substr(pos + name.length, attachlist.length - pos - name.length);
}
}
}
if (mF.S("fmailid").value != mailid) {
mF.S("fmailid").value = mailid;
setTimeout("ReloadFrm(GetLeftWin())",0);
}
mF.LoadValue();
if (attachlist) mF.S("fattachlist").value += attachlist;
setTimeout(function(){showInfo(msg ? msg : (ParseStr((new Date()).getHours(), 2) + ":" + ParseStr((new Date()).getMinutes(), 2) + " " + top.msgSendErrorSaveOK));}, 0);
if (IsDialogShow("btn_exit_notsave")) return GetDialogObj("btn_exit_notsave").onclick();
if (!notDisable) mF.DisableAll(false);
mF.bIsEnableAutoSave = true;
}
//flag: 0-hide 1-info 2-rate; bImg: is disp load img; parm: parameter
function ShowProcess(flag, isShowImg, parm, parm2, isHasCancel)
{
var id = "load_process";
var f = GetActionWin();
var bar = S(id, f);
if (flag == 0)
{
Show(bar, false);
return;
}
if (!IsShow(bar))
{
if (!ShowActionWinProcess(isHasCancel))
{
return;
}
}
var info = S(id+"_info", f);
if (flag == 2)
{
if (parm2 != null)
{
S(id + "_plan_info", f).innerHTML = parm2;
}
parm = parseInt(parm);
parm = isNaN(parm) ? 0 : (parm < 0 ? 0 : (parm > 100 ? 100 : parm));
S(id + "_plan_rate", f).innerHTML = parm + "%";
S(id + "_plan_bar", f).style.width = parm + "%";
Show(S(id+"_plan", f), true);
Show(S(id+"_img", f), false);
Show(info, false);
}
else
{
if (parm != null)
{
info.innerHTML = parm;
}
Show(S(id+"_plan", f), false);
Show(S(id+"_img", f), isShowImg);
Show(info, true);
}
}
function ShowActionWinProcess(isHasCancel)
{
var b = GetActionWin().document.body;
if (!b) return false;
var val = [[240, -120, "padding:0 38px 0 28px;width:174px!important;width:240px;"], [214, -107, "padding:0 0 0 28px;width:170px!important;width:214px;"]][isHasCancel ? 0 : 1];
b.innerHTML =
"<body>" +
"<link rel='stylesheet' type='text/css' href='"+GetPath("css", true)+"comm.css' />" +
"<link rel='stylesheet' type='text/css' href='"+GetPath("css", true)+"skin"+GetPath("skin")+".css' />" +
'<div id="load_process" style="width:' + val[0] + 'px;height:20px;position:absolute;left:50%;margin-left:' + val[1] + 'px;text-align:left;">' +
'<div id="load_process_plan" class="autosave autosave_txt" style="display:none;">' +
'<div style="font:1px;height:12px;border:1px solid white;width:104px;text-align:left;float:left;margin:4px 3px 0 0">' +
'<div id="load_process_plan_bar" style="background:#fff;height:8px;margin:1px 0 0 0;width:0%;"></div>' +
'</div>' +
'<div style="width:78px;line-height:18px;">' +
'<span id="load_process_plan_info">发信中</span>:<span id="load_process_plan_rate" style="width:35px;text-align:right;">0%</span>' +
'</div>' +
'</div>' +
'<div id="load_process_info" class="autosave autosave_txt" style="display:none;line-height:20px;text-align:center;' + val[2] + '"></div>' +
'<div id="load_process_img" style="display:none;position:absolute;margin:-18px 0 0 5px!important;margin:-18px 0 0 5px;">' +
'<img src="'+GetPath("image", true)+'ico_loading.gif" style="width:16px;height:16px;">' +
'</div>' +
(isHasCancel ? '<div id="load_process_cancel" class="autosave" style="position:absolute;margin:-19px 0 0 200px!important;margin:-20px 0 0 200px;">[<a href="javascript:void(0);" onclick="top.GetMainWin().CancelDoSend();" style="color:white;">取消</a>]</div>' : '') +
'</div>' +
"</body>";
b.className = "tipbg pos_center";
b.style.textAlign = "center";
b.style.width = "100%";
return true;
}
function GetProcessInfo()
{
var id = "load_process";
var f = GetActionWin();
if (IsShow(S(id, f)))
{
var info1 = S(id + "_plan_rate", f);
var info2 = S(id + "_info", f);
if (info2 && IsShow(info2))
{
return info2.innerHTML;
}
if (info1 && IsShow(S(id + "_plan", f)))
{
return parseInt(info1.innerHTML);
}
}
return "";
}
function CancelDoSend()
{
var w = GetMainWin();
if (w.gSendMailObj)
{
top.isAbortByUser = true;
w.gSendMailObj.StopUpload();
w.gSendMailObj = null;
}
else
{
var f = top.S("sendmailFrame");
if (f)
{
f.src = "about:blank";
}
}
RecodeComposeStatus(3, null, 0);
ShowProcess(0);
ErrorProcess();
}
function QuickDoSend(frm, value)
{
CreatePanel(top, 'sendmailFrame', null, 'DoSendFinishCheck(this)');
ShowProcess(1, 1, msgSend, null, true);
DisableCtl('source', true);
frm.content.value = value;
frm.target = "sendmailFrame";
frm.submit();
DisableCtl('sendbtn', true);
}
function EmptyFolder() {
return confirm("你确认要清空文件夹吗?");
}
function EmptyFolder_inSpam() {
return confirm("你确认要删除在垃圾邮件箱中的所有邮件吗?");
}
function MoveFolder(id,index,fun)
{
var Fids=SN("F_ID");
for (var i=0; i<Fids.length;i++ ) {
if (Fids[i].id == id) break;
}
var j=-1;
j= fun=="up"? (i==0?(i+Fids.length-1):i-1) : ((i + 1)%Fids.length);
GetMainWin().idx1=i;
GetMainWin().idx2=j;
if (j>=0) {
var sf=Gel("frm");
sf.folder2.value = Fids[j].id;
sf.index2.value = Fids[j].value;
sf.folder1.value=id;
sf.index1.value=index;
sf.folderid.value=id;
sf.fun.value="updateindex";
SubmitToActionFrm(sf);
}
}
function SwitchFolder(id, bForce, win) {
var lw = GetLeftWin();
var b = (lw == win && top.gFolderNoneSeled == true);
try
{
var folder_table = S("folder", lw);
var folder_td = GelTags("li", folder_table);
var len = folder_td.length;
for(var i = 0; i < len; i++)
{
if(!folder_td[i].id)
{
continue;
}
folder_td[i].className = "fs";
};
var folder = S(id+"_td", lw);
if (!b)
{
folder.className = "fn";
}
switch(folder.parentNode.id)
{
case "pop_folder":
case "my_folder":
ShowFolder(folder.parentNode.id, 1);
break;
}
if (bForce)
{
if (top.gMyFolderStatus != null && top.gMyFolderStatus != S("my_folder", lw).style.display)
{
ShowFolder("my_folder");
}
if (top.gPopFolderStatus != null && top.gPopFolderStatus != S("pop_folder", lw).style.display)
{
ShowFolder("pop_folder");
}
top.gMyFolderStatus = null;
top.gPopFolderStatus = null;
}
//这里的判断必现后于 folder 的收缩变化
setTimeout(function()
{
if (top.gFolderMyScrollTop)
{
S("my_folder", lw).scrollTop = top.gFolderMyScrollTop;
top.gFolderMyScrollTop = null;
}
if (top.gFolderPopScrollTop)
{
S("pop_folder", lw).scrollTop = top.gFolderPopScrollTop;
top.gFolderPopScrollTop = null;
}
if (top.gFolderAllScrollTop)
{
S("folder", lw).scrollTop = top.gFolderAllScrollTop;
top.gFolderMyScrollTop = null;
}
if (id != "folder_none" && id != "folder_newmail")
{
ScrollIntoMidView(folder, folder.parentNode.clientHeight == 0 ? S("folder", lw) : folder.parentNode);
}
}, 0);
}
catch(ex) {}
top.gFolderNoneSeled = (id == "folder_none" || id == "folder_newmail" || b);
}
function SelectAll(flag) {
var mail_list_table = S('list');
var mail_list_checkbox = GelTags("input", mail_list_table);
for(var i = mail_list_checkbox.length - 1;i >= 0; i--) {
mail_list_checkbox[i].checked = flag;
}
}
function SelectReadMail(flag) {
var mail_list_table = S('list');
var mail_list_checkbox = GelTags("input", mail_list_table);
for(var i = mail_list_checkbox.length - 1;i >= 0; i--) {
mail_list_checkbox[i].checked = (mail_list_checkbox[i].getAttribute('unread') != flag);
}
}
function ReplaySelect(obj) {
var type = obj.value;
var frm = obj.form;
if(type == "all") {
frm.to.value = frm.toAll.value;
frm.cc.value = frm.ccSrc.value;
if (Gel("more1")) {
Show(Gel("more1"), false);
Show(Gel("more2"), true);
}
} else {
frm.to.value = frm.toFrom.value;
frm.cc.value = "";
if (Gel("more1")) {
Show(Gel("more1"), true);
Show(Gel("more2"), false);
}
}
}
function RenameFolder(FolderID) {
sNewName=prompt("请输入新名字\n\n\n","");
if(sNewName!=null) {
Gel("frm").name.value=sNewName;
Gel("frm").folderid.value=FolderID;
Gel("frm").fun.value="rename";
SubmitToActionFrm(Gel("frm"));
}
}
function Trim(sStr)
{
return sStr.replace(/(^\s+)|(\s+$)/ig,"");
}
function ShowQuickReply(isShow)
{
Show(S('quickreply'), isShow);
Show(S('upreply'), !isShow);
RunUrlWithSid("/cgi-bin/getcomposedata?Fun=setshowquickreply&isShowQuickReply=" + (isShow ? 0 : 1));
}
function HiddenReceipt()
{
var receiptDiv = S("receiptDiv");
if(receiptDiv) Show(receiptDiv, false);
}
function ParseStr(val, len) {
var str = val.toString();
for (var i = str.length; i < len; i++) {
str = "0" + str;
}
return str;
}
function CheckAddrSelected() {
var List = GelTags("input");
for (var Loop = 0; Loop < List.length; Loop++) {
if (List[Loop].type == "checkbox" && List[Loop].checked) {
return true;
}
}
return false;
}
function PGV() {}
function InitAutoComplete() {
var inputNames = [ "to","cc", "bcc"];
var defaltTxt = ["", "", ""];
var defaultCss = ["", "", ""];
var clickObjNames = ["to_btn", "cc_btn", "bcc_btn"];
var rightWidth = [null, null, null];
var targetObj = [null, null, null];
for(var i=0,len=inputNames.length;i<len;i++) {
var input = S(inputNames[i]);
if (input) (new QQMail.AutoCompleteAllAddr()).Init(input, AutoCompleteFrm, S("AutoCompleteFrmId"), true, defaltTxt[i], defaultCss[i], S(clickObjNames[i]), rightWidth[i], targetObj[i]);
}
}
function ErrorProcess() {
try{GetMainWin().ErrorCallBack();}catch(e){try{top.ErrorCallBack();}catch(e){}}
}
function IsDisableCtl(name) {
var ctls = SN(name);
for (i = ctls.length - 1; i >= 0; i--) {
if (ctls[i].disabled) return true;
}
return false;
}
function DisableCtl(name, isDisabled) {
var ctls = SN(name);
for (i = ctls.length - 1; i >= 0; i--) {
ctls[i].disabled = isDisabled;
}
}
function DisableAll(isDisabled) {
try{EnableAutoSave(!isDisabled);}catch(e){}
DisableCtl("sendbtn", isDisabled);
DisableCtl("savebtn", isDisabled);
try{GetDialogObj("btn_exit_save").disabled = isDisabled;}catch(e){}
}
function VerifyCode(sSubTmpl)
{
var mF = GetMainWin();
frmVerify=S("frmVerify",mF);
frmVerify.src="/cgi-bin/readtemplate?templatename=verifycode&subtmpl="+sSubTmpl+ "&sid="+ GetSid();
Show(frmVerify, true);
}
//folderlist api
function FolderListResize()
{
var f = GetLeftWin();
if (!S("folder", f) || !S("my_folder", f) || !S("pop_folder", f)) return;
var cur = ((S("my_folder", f).style.display == "none") ? S("pop_folder", f) : S("my_folder", f));
var dh = parseInt(f.document.body.clientHeight);
var s = dh < 440;
var p = cur.scrollHeight > (dh - 398);
var nt = f.g_bIsNoteEnabled == "1" ? 0 : 42;
S("folder", f).style.height = dh > 120 ? dh - 120 : 1;
S("folder", f).style.overflow = s ? "auto" : "hidden";
S("folder", f).style.margin = s ? "0 5px 0 0" : "0";
cur.style.height = s ? "" : (p ? (dh - 398) + nt : cur.scrollHeight );
cur.style.overflow = s ? "" : (p ? "auto" : "");
cur.style.overflowX = s ? "hidden" : (p ? "hidden" : "hidden");
}
function ShowFolder(fid, bForce)
{
var fs = ["my_folder", "pop_folder"];
var f = GetLeftWin();
if (!f)
{
return;
}
for (var i = fs.length - 1; i >= 0; i--)
{
var b = (fs[i] == fid ? (S(fid, f).style.display == "none" || bForce ? 1 : 0) : 0);
var c = (fs[i] == fid ? (S(fid, f).style.display == "none" || bForce ? 0 : 1) : 1);
Show(S(fs[i], f), b);
Show(S(fs[i]+"_mg", f), b);
Show(S(fs[i]+"_nb", f), c);
S(fs[i] + "_img", f).className = (b ? "img_b hidefd" : "img_b showfd");
S("my_folder_nf", f).style.fontWeight = IsShow(S("my_folder", f)) ? "normal" : "bold";
S("pop_folder_nf", f).style.fontWeight = IsShow(S("pop_folder", f)) ? "normal" : "bold";
}
setTimeout("top.FolderListResize();", 0);
}
function GetFolderUnread(fid) {
return OptFolderUnread(0, fid);
}
function SetFolderUnread(fid, val, noBold) {
OptFolderUnread(1, fid, val ? val : 0, noBold);
}
function OptFolderUnread(type, fid, val, noBold) {
o = S("folder_" + fid, GetLeftWin());
if (!o) return;
var s = gIsIE || gIsSafari ? o.innerText : o.textContent;
var p = s.indexOf("(");
if (p != -1) {
var v = s.substring(p + 1, s.indexOf(")"));
if (type == 0) return parseInt(v);
o.innerHTML = (val == 0 ? s.substring(0, p) : StrReplace(o.innerHTML, "\\("+v+"\\)", "("+val+")"));
}
else {
if (type == 0 || val == 0) return 0;
o.innerHTML = noBold ? (s + "(" + val + ")") : ("<b>" + s + "</b><b>(" + val + ")</b>");
}
}
function DoFolderEmpty(folderid, frm) {
frm.folderid.value=folderid;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -