/* ALL FUNCTIONS!! This will contain all javascript functions used by the Control Panel */ /* for subsite navigation -- switching between My Mail, My Files, etc. */ function navSubSite(filelink) { var select = document.forms[0].elements[0]; var optionName = select.options[select.selectedIndex].value; var xslFile = ''; switch(optionName) { case 'account': xslFile = '/ControlPanel/index.htm'; break; case 'files': xslFile = '/ControlPanel/files/filesummary.htm'; // xslFile = filelink; break; case 'mail': xslFile = '/ControlPanel/mail/index.htm'; break; case 'users': xslFile = '/ControlPanel/users/summaryusers.htm'; break; case 'website': xslFile = '/ControlPanel/website/viewstatus.htm'; break; } location = '' + xslFile; } // for submitting the 'try new encoding' drop down in mail/mail_item.xsl function submitMailEncoding() { document.forms[0].sel_try_encoding.value = "yes"; document.forms[0].submit(); } // for submitting the 'delete' button for an e-mail forward function submit_deleteforward(val1) { document.forms[0].delete_address_value.value = val1; document.forms[0].submit(); } // for submitting the 'delete' button for an e-mail alias function submit_deletealias(val1) { document.forms[0].delete_alias_value.value = val1; document.forms[0].submit(); } // for checking & unchecking flags of a particular field (helpful in the mail, file, and user sections) var checkflag = 'false'; function check(field) { if (checkflag == 'false') { field.checked=true; for(i = 0; i < field.length; i++) { field[i].checked = true; } checkflag='true'; } else { field.checked=false; for(i = 0; i < field.length; i++) { field[i].checked = false; } checkflag='false'; } } // for keeping the two select boxes at the top & bottom of the screen in the webmail box contents view synchronized. var orig_select = 0; function syncselects() { var sync_select0 = document.forms[0].destFolder[0]; var sync_select1 = document.forms[0].destFolder[1]; var index; if (orig_select == sync_select0.selectedIndex) { index = sync_select1.selectedIndex; orig_select = index; sync_select0.selectedIndex = index; } else { index = sync_select0.selectedIndex; orig_select = index; sync_select1.selectedIndex = index; } } // for keeping the two select boxes at the top & bottom of the screen in the webmail box contents view synchronized. //var orig_eselect = 0; //if (document.forms[0].fields("view_encoding")) { // orig_eselect = document.forms[0].view_encoding[0]; //} function syncencs() { var sync_select0 = document.forms[0].view_encoding[0]; var sync_select1 = document.forms[0].view_encoding[1]; var index; if (document.forms[0].orig_view_encoding.value == sync_select0.options[sync_select0.selectedIndex].value) { index = sync_select1.selectedIndex; // orig_eselect = index; sync_select0.selectedIndex = index; } else { index = sync_select0.selectedIndex; // orig_eselect = index; sync_select1.selectedIndex = index; } document.forms[0].submit(); } function resetEncoding(field_value) { var sync_select0 = document.forms[0].view_encoding[0]; var sync_select1 = document.forms[0].view_encoding[1]; var index; for (index = 0; index < sync_select0.length; index++) { if (sync_select0.options[index].value == field_value) { sync_select0.selectedIndex = index; sync_select1.selectedIndex = index; } } document.forms[0].submit(); } // for displaying dialog boxes function showDialog(filename, filetitle) { if (document.all) var xMax = screen.width, yMax = screen.height; else if (document.layers) var xMax = window.outerWidth, yMax = window.outerHeight; else var xMax = 640, yMax=480; var xOffset = (xMax - 380)/2, yOffset = (yMax - 300)/2; var myConfirmWindow = window.open(filename, filetitle, "width=500,height=300,screenX="+xOffset+",screenY="+yOffset+",top="+xOffset+",left="+yOffset+""); if (myConfirmWindow.opener == null) myConfirmWindow.opener = self; } var windowname = "maincp"; function showAddress() { filename = "address_select.xsl"; filetitle = "SelectRecipient"; window.name = windowname; if (document.all) var xMax = screen.width, yMax = screen.height; else if (document.layers) var xMax = window.outerWidth, yMax = window.outerHeight; else var xMax = 640, yMax=480; var xOffset = (xMax - 380)/2, yOffset = (yMax - 300)/2; var myConfirmWindow = window.open(filename, filetitle, "scrollbars=yes,resizable=yes,width=530,height=400,screenX="+xOffset+",screenY="+yOffset+",top="+xOffset+",left="+yOffset+""); if (myConfirmWindow.opener == null) myConfirmWindow.opener = self; return false; } function closeAddress() { // fill in the selected addresses in the to, cc, and bcc fields in the parent window. var i = 0; var tos = 0; var tostring = ""; var ccs = 0; var ccstring = ""; var bccs = 0; var bccstring = ""; // alert(document.forms[0].to.length); if (document.forms[0].to != null) { if (document.forms[0].to.length == null) { if ((document.forms[0].to) && (document.forms[0].to.checked)){ tostring += document.forms[0].to.value; tos = 1; } if ((document.forms[0].cc) && (document.forms[0].cc.checked)) { ccstring += document.forms[0].cc.value; ccs = 1; } if ((document.forms[0].bcc) && (document.forms[0].bcc.checked)) { bccstring += document.forms[0].bcc.value; bccs = 1; } } for (i = 0; i <= document.forms[0].to.length; i++) { if ((document.forms[0].to[i]) && (document.forms[0].to[i].checked)) { // add a comma if you're at the second or more 'to' address or if there's already text in the "to" text field if (tos >= 1) { tostring += ", " + document.forms[0].to[i].value; } else { tostring += document.forms[0].to[i].value; } tos++; } if ((document.forms[0].cc[i]) && (document.forms[0].cc[i].checked)) { // add a comma if you're at the second or more 'cc' address or if there's already text in the "cc" text field if (ccs >= 1) { ccstring += ", " + document.forms[0].cc[i].value; } else { ccstring += document.forms[0].cc[i].value; } ccs++; } if ((document.forms[0].bcc[i]) && (document.forms[0].bcc[i].checked)) { // add a comma if you're at the second or more 'bcc' address or if there's already text in the "bcc" text field if (bccs >= 1) { bccstring += ", " + document.forms[0].bcc[i].value; } else { bccstring += document.forms[0].bcc[i].value; } bccs++; } } var epat = /^\s*$/; if (tostring != "") { var text = window.opener.document.forms[0].to.value; if (text.match(epat)) { window.opener.document.forms[0].to.value += tostring; } else { window.opener.document.forms[0].to.value += ", " + tostring; } } if (ccstring != "") { var text = window.opener.document.forms[0].cc.value; if (text.match(epat)) { window.opener.document.forms[0].cc.value += ccstring; } else { window.opener.document.forms[0].cc.value += ", " + ccstring; } } if (bccstring != "") { var text = window.opener.document.forms[0].bcc.value; if (text.match(epat)) { window.opener.document.forms[0].bcc.value += bccstring; } else { window.opener.document.forms[0].bcc.value += ", " + bccstring; } } } window.close(); } // for displaying dialog boxes function showDownload(filename, filetitle) { if (document.all) var xMax = screen.width, yMax = screen.height; else if (document.layers) var xMax = window.outerWidth, yMax = window.outerHeight; else var xMax = 640, yMax=480; var xOffset = (xMax - 380)/2, yOffset = (yMax - 300)/2; var myConfirmWindow = window.open(filename, filetitle, "width=500,height=300,screenX="+xOffset+",screenY="+yOffset+",top="+xOffset+",left="+yOffset+",menubar=yes"); if (myConfirmWindow.opener == null) myConfirmWindow.opener = self; } function submitrestore(filename) { if (document.forms[0].rtype.value=='browse') { if (document.all) var xMax = screen.width, yMax = screen.height; else if (document.layers) var xMax = window.outerWidth, yMax = window.outerHeight; else var xMax = 640, yMax=480; var xOffset = (xMax - 380)/2, yOffset = (yMax - 300)/2; var myConfirmWindow = window.open(filename, "BrowseToFile", "width=520,height=400,screenX="+xOffset+",screenY="+yOffset+",top="+xOffset+",left="+yOffset+",status=yes,resizeable=yes,scrollbars=yes,toolbar=yes"); if (myConfirmWindow.opener == null) myConfirmWindow.opener = self; } else if (document.forms[0].rtype.value=='web') { document.forms[0].getvalue.value = "Get Value"; document.forms[0].path.value="www/htdocs"; document.forms[0].submit(); } else { // if (document.forms[0].rtype.value=='home') { document.forms[0].getvalue.value = "Get Value"; document.forms[0].submit(); } } function submitbrowse(filename) { opener.document.forms[0].getvalue.value = "Get Value"; opener.document.forms[0].path.value=filename; opener.document.forms[0].submit(); } function changeViewEncoding() { document.forms[0].submit(); } // for submitting dialog boxes to the parent function doYes(field) { // submit the form field.value = "yes"; window.opener.document.forms[0].submit(); window.close(); } // for submitting dialog boxes to the parent function doRemove(fieldvalue) { // submit the form window.opener.document.forms[0].elements["deletefield"].value = "yes"; window.opener.document.globalnav.submit(); window.close(); } function doRemoveDir(fieldvalue) { window.opener.document.forms[0].path.value = fieldvalue; window.opener.document.forms[0].view_path.value = fieldvalue; // submit the form window.opener.document.forms[0].elements["deletefield"].value = "yes"; window.opener.document.globalnav.submit(); window.close(); } function doSend() { // submit the form window.opener.document.forms[0].sendfield.value = "yes"; window.opener.document.forms[0].submit(); window.close(); } function changeTimeZone() { var select = document.forms[0].timezoneselect; var val = select.options[select.selectedIndex].value; var tzcode = val.substr(0, val.indexOf(',')); var tz = val.substr(val.indexOf(',')+1); var tzinfo = tz.substr(tz.indexOf(',')+1); tz = tz.substr(0, tz.indexOf(',')); document.forms[0].timezone.value = tz; document.forms[0].timezonecode.value = tzcode; document.forms[0].timezoneinfo.value = tzinfo; } function addRemoveSig() { var sig = document.forms[0].signatureValue.value; var sigexpVal = document.forms[0].sigexpValue.value; if (document.forms[0].addSignature.checked) { // Adding signature var text = document.forms[0].message.value; var result = text+sig; document.forms[0].message.value = result; document.forms[0].message.focus(); } else { // Removing signature var sigexp = new RegExp(sigexpVal); var text = document.forms[0].message.value.replace(sigexp, ""); document.forms[0].message.value = text; document.forms[0].message.focus(); } return(true); } function selectHeader() { var select = document.forms[0].sel_header; var val = select.options[select.selectedIndex].value; if ((val == "body") || (val == "not_selected")) { document.forms[0].header.value = ""; } else { document.forms[0].header.value = val; } } function verifyCompose(showDiag, alertText) { if ( (document.forms[0].to.value.length==0) && (document.forms[0].cc.value.length==0) && (document.forms[0].bcc.value.length==0)) { alert(alertText); } else if (showDiag == "no") { document.forms[0].sendfield.value="submitted"; document.forms[0].submit(); } else { showDialog('encodingconflict.xsl','EncodingConflict'); } } function submitMove() { document.forms[0].path.value = document.forms[0].newdir.value + document.forms[0].new_path.value; document.forms[0].view_path.value = document.forms[0].newdir.value + document.forms[0].new_path.value; document.forms[0].move_save.value = "yes"; document.forms[0].submit(); } function submitRename() { document.forms[0].path.value = document.forms[0].newdir.value + document.forms[0].new_path.value; document.forms[0].view_path.value = document.forms[0].newdir.value + document.forms[0].new_path.value; document.forms[0].rename_save.value = "yes"; document.forms[0].submit(); } function submitRemove(confirmstring, alertstring, numChecks) { var showAlert = 0; if (numChecks > 1) { for (i = 0; i < numChecks; i++) { if (document.forms[0].selfile[i].checked == false) { showAlert++; } } } else if (numChecks == 1) { if (document.forms[0].selfile.checked == false) { showAlert++; } } if (showAlert == numChecks) { alert(alertstring); } else { if (confirm(confirmstring)) { document.forms[0].elements["deletefield"].value = "yes"; document.forms[0].submit(); } } } function submitSingleRemove(confirmstring, old_path) { if (confirm(confirmstring)) { document.forms[0].path.value = old_path; document.forms[0].view_path.value = old_path; document.forms[0].elements["deletefield"].value = "yes"; document.forms[0].submit(); } } function submitCompress(alertstring, numChecks) { submitCheck(alertstring, numChecks, "selfile", document.forms[0].compress, "yes"); } function submitShare(alertstring, numChecks) { submitCheck(alertstring, numChecks, "selfile", document.forms[0].share, "yes"); } function submitUnshare(alertstring, numChecks) { submitCheck(alertstring, numChecks, "selfile", document.forms[0].unshare, "yes"); } function submitRemUsers(alertstring, numChecks) { submitCheck(alertstring, numChecks, "user", document.forms[0].confirmdelete, "yes"); } function submitMoveMail(alertstring, numChecks) { submitCheck(alertstring, numChecks, "mailitem", document.forms[0].move, "yes"); } function submitRemMail(alertstring, numChecks) { submitCheck(alertstring, numChecks, "mailitem", document.forms[0].elements["delete"], "yes"); } function submitRemMailTrash(alertstring, numChecks) { submitCheck(alertstring, numChecks, "mailitem", document.forms[0].delete_from_trash, "yes"); } function submitCheck(alertstring, numChecks, formchecks, formitem, itemvalue) { var showAlert = 0; if (numChecks > 1) { for (i = 0; i < numChecks; i++) { if (document.forms[0].elements[formchecks][i].checked == false) { showAlert++; } } } else if (numChecks == 1) { if (document.forms[0].elements[formchecks].checked == false) { showAlert++; } } if (showAlert == numChecks) { alert(alertstring); } else { formitem.value = itemvalue; document.forms[0].submit(); } }