diff --git a/UI/WebServerResources/MailerUI.js b/UI/WebServerResources/MailerUI.js index a2c35ed55..fe7fe3aa8 100644 --- a/UI/WebServerResources/MailerUI.js +++ b/UI/WebServerResources/MailerUI.js @@ -68,6 +68,7 @@ function openAddressbook(sender) { function onMenuSharing(event) { var folderID = document.menuTarget.getAttribute("dataname"); var type = document.menuTarget.getAttribute("datatype"); + if (type == "additional") window.alert(clabels["The user rights cannot be" + " edited for this object!"]); @@ -475,6 +476,7 @@ function messageListCallback(http) { var row = $("row_" + selected); if (row) { row.select(); + lastClickedRow = row.rowIndex - $(row).up('table').down('thead').getElementsByTagName('tr').length; div.scrollTop = row.rowIndex * row.getHeight(); // scroll to selected message } else @@ -1297,11 +1299,11 @@ function buildMailboxes(accountName, encoded) { return account; } -function onMenuCreateFolder(event) { +function onMenuCreateFolder(event) { log ("onMenuCreateFolder " + document.menuTarget); var name = window.prompt(labels["Name :"], ""); if (name && name.length > 0) { var folderID = document.menuTarget.getAttribute("dataname"); - var urlstr = URLForFolderID(folderID) + "/createFolder?name=" + name; + var urlstr = URLForFolderID(folderID) + "/createFolder?name=" + name; log ("create " + urlstr); triggerAjaxRequest(urlstr, folderOperationCallback); } } @@ -1329,7 +1331,6 @@ function onMenuDeleteFolder(event) { function onMenuExpungeFolder(event) { var folderID = document.menuTarget.getAttribute("dataname"); var urlstr = URLForFolderID(folderID) + "/expunge"; - triggerAjaxRequest(urlstr, folderRefreshCallback, folderID); } diff --git a/UI/WebServerResources/UIxMailEditor.js b/UI/WebServerResources/UIxMailEditor.js index 5e94ed0b2..be10667e4 100644 --- a/UI/WebServerResources/UIxMailEditor.js +++ b/UI/WebServerResources/UIxMailEditor.js @@ -272,7 +272,7 @@ function onRemoveAttachments() { function attachmentDeleteCallback(http) { if (http.readyState == 4) { - if (http.status == 204) { + if (isHttpStatus204(http.status)) { var node = http.callbackData; node.parentNode.removeChild(node); } diff --git a/UI/WebServerResources/generic.js b/UI/WebServerResources/generic.js index b3c9d070b..a372e8d16 100644 --- a/UI/WebServerResources/generic.js +++ b/UI/WebServerResources/generic.js @@ -623,7 +623,8 @@ function onBodyClickMenuHandler(event) { hideMenu(document.currentPopupMenu); Event.stopObserving(document.body, "click", onBodyClickMenuHandler); - preventDefault(event); + if (event) + preventDefault(event); } function hideMenu(menuNode) { @@ -1167,9 +1168,12 @@ function initMenu(menuDIV, callbacks) { popupSubmenu.bindAsEventListener(node)); } } - else + else { Event.observe(node, "mouseup", + onBodyClickMenuHandler); + Event.observe(node, "click", $(callback).bindAsEventListener(node)); + } } else node.addClassName("disabled");