mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-09-29 09:00:31 +00:00
merge of '1cc8e4f0b5a7e08d0cdb102c7f221df7ec72af37'
and '3f6c57e715b0ee7af5182cb7a04ea8cc6df72a2a' Monotone-Parent: 1cc8e4f0b5a7e08d0cdb102c7f221df7ec72af37 Monotone-Parent: 3f6c57e715b0ee7af5182cb7a04ea8cc6df72a2a Monotone-Revision: 884877bd53c2d3dbf1a3a0b3b87f122ccdec9640 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2007-08-16T22:12:12 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
@@ -301,6 +301,12 @@ DIV.mailer_unreadicon a
|
||||
}
|
||||
|
||||
/* fields (key/value UI), eg used in mail viewer */
|
||||
INPUT#editDraftButton
|
||||
{
|
||||
position: absolute;
|
||||
top: 2.5em;
|
||||
right: 1em;
|
||||
}
|
||||
|
||||
TABLE.mailer_fieldtable
|
||||
{
|
||||
|
||||
@@ -6,6 +6,7 @@ var currentMessages = new Array();
|
||||
var maxCachedMessages = 20;
|
||||
var cachedMessages = new Array();
|
||||
var currentMailbox = null;
|
||||
var currentMailboxType = "";
|
||||
|
||||
var usersRightsWindowHeight = 320;
|
||||
var usersRightsWindowWidth = 400;
|
||||
@@ -31,12 +32,14 @@ function openMessageWindow(msguid, url) {
|
||||
}
|
||||
|
||||
function onMessageDoubleClick(event) {
|
||||
//resetSelection(window);
|
||||
var msguid = this.parentNode.id.substr(4);
|
||||
|
||||
return openMessageWindow(msguid,
|
||||
ApplicationBaseURL + currentMailbox + "/"
|
||||
+ msguid + "/popupview");
|
||||
var action;
|
||||
|
||||
if (currentMailboxType == "draft")
|
||||
action = "edit";
|
||||
else
|
||||
action = "popupview";
|
||||
|
||||
return openMessageWindowsForSelection(action, true);
|
||||
}
|
||||
|
||||
function toggleMailSelect(sender) {
|
||||
@@ -140,19 +143,26 @@ function reopenToRemoveLocationBar() {
|
||||
|
||||
/* mail list reply */
|
||||
|
||||
function openMessageWindowsForSelection(action) {
|
||||
function openMessageWindowsForSelection(action, firstOnly) {
|
||||
if (document.body.hasClassName("popup"))
|
||||
win = openMessageWindow(window.messageId,
|
||||
window.messageURL + "/" + action /* url */);
|
||||
window.messageURL + "/" + action);
|
||||
else {
|
||||
var messageList = $("messageList");
|
||||
var rows = messageList.getSelectedRowsId();
|
||||
var idset = "";
|
||||
for (var i = 0; i < rows.length; i++)
|
||||
win = openMessageWindow(rows[i].substr(4) /* msguid */,
|
||||
ApplicationBaseURL + currentMailbox
|
||||
+ "/" + rows[i].substr(4)
|
||||
+ "/" + action /* url */);
|
||||
if (rows.length > 0) {
|
||||
if (firstOnly)
|
||||
openMessageWindow(rows[0].substr(4),
|
||||
ApplicationBaseURL + currentMailbox
|
||||
+ "/" + rows[0].substr(4)
|
||||
+ "/" + action);
|
||||
else
|
||||
for (var i = 0; i < rows.length; i++)
|
||||
openMessageWindow(rows[i].substr(4),
|
||||
ApplicationBaseURL + currentMailbox
|
||||
+ "/" + rows[i].substr(4)
|
||||
+ "/" + action);
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
@@ -342,13 +352,13 @@ function onMailboxTreeItemClick(event) {
|
||||
$("searchValue").value = "";
|
||||
initCriteria();
|
||||
|
||||
var datatype = this.parentNode.getAttribute("datatype");
|
||||
if (datatype == "account" || datatype == "additional") {
|
||||
currentMailboxType = this.parentNode.getAttribute("datatype");
|
||||
if (currentMailboxType == "account" || currentMailboxType == "additional") {
|
||||
currentMailbox = mailbox;
|
||||
$("messageContent").innerHTML = "";
|
||||
var body = $("messageList").tBodies[0];
|
||||
for (var i = body.rows.length - 1; i > 0; i--)
|
||||
body.deleteRow(i);
|
||||
for (var i = body.rows.length; i > 0; i--)
|
||||
body.deleteRow(i-1);
|
||||
}
|
||||
else
|
||||
openMailbox(mailbox);
|
||||
@@ -372,6 +382,22 @@ function refreshMailbox() {
|
||||
return false;
|
||||
}
|
||||
|
||||
function onComposeMessage() {
|
||||
var topWindow = getTopWindow();
|
||||
if (topWindow)
|
||||
topWindow.composeNewMessage();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function composeNewMessage() {
|
||||
var account = currentMailbox.split("/")[1];
|
||||
var url = ApplicationBaseURL + "/" + account + "/compose";
|
||||
window.open(url, null,
|
||||
"width=680,height=520,resizable=1,scrollbars=1,toolbar=0,"
|
||||
+ "location=0,directories=0,status=0,menubar=0,copyhistory=0");
|
||||
}
|
||||
|
||||
function openMailbox(mailbox, reload, idx) {
|
||||
if (mailbox != currentMailbox || reload) {
|
||||
currentMailbox = mailbox;
|
||||
@@ -669,12 +695,20 @@ function configureLinksInMessage() {
|
||||
else
|
||||
Event.observe(anchors[i], "click",
|
||||
onMessageAnchorClick);
|
||||
|
||||
var editDraftButton = $("editDraftButton");
|
||||
if (editDraftButton)
|
||||
Event.observe(editDraftButton, "click", onMessageEditDraft);
|
||||
}
|
||||
|
||||
function onMessageContentMenu(event) {
|
||||
popupMenu(event, 'messageContentMenu', this);
|
||||
}
|
||||
|
||||
function onMessageEditDraft(event) {
|
||||
return openMessageWindowsForSelection("edit", true);
|
||||
}
|
||||
|
||||
function onEmailAddressClick(event) {
|
||||
popupMenu(event, 'addressMenu', this);
|
||||
}
|
||||
@@ -1276,10 +1310,18 @@ function onMenuDeleteFolder(event) {
|
||||
}
|
||||
}
|
||||
|
||||
function onMenuExpungeFolder(event) {
|
||||
var folderID = document.menuTarget.getAttribute("dataname");
|
||||
var urlstr = URLForFolderID(folderID) + "/expunge";
|
||||
|
||||
triggerAjaxRequest(urlstr, folderRefreshCallback, folderID);
|
||||
}
|
||||
|
||||
function onMenuEmptyTrash(event) {
|
||||
var folderID = document.menuTarget.getAttribute("dataname");
|
||||
var urlstr = URLForFolderID(folderID) + "/emptyTrash";
|
||||
triggerAjaxRequest(urlstr, folderOperationCallback);
|
||||
|
||||
triggerAjaxRequest(urlstr, folderRefreshCallback, folderID);
|
||||
}
|
||||
|
||||
function folderOperationCallback(http) {
|
||||
@@ -1290,21 +1332,34 @@ function folderOperationCallback(http) {
|
||||
window.alert(labels["Operation failed"].decodeEntities());
|
||||
}
|
||||
|
||||
function folderRefreshCallback(http) {
|
||||
if (http.readyState == 4
|
||||
&& http.status == 204) {
|
||||
var oldMailbox = http.callbackData;
|
||||
if (oldMailbox == currentMailbox)
|
||||
refreshCurrentFolder();
|
||||
}
|
||||
else
|
||||
window.alert(labels["Operation failed"].decodeEntities());
|
||||
}
|
||||
|
||||
function getMenus() {
|
||||
var menus = {}
|
||||
menus["accountIconMenu"] = new Array(null, null, onMenuCreateFolder, null,
|
||||
null, null);
|
||||
menus["inboxIconMenu"] = new Array(null, null, null, "-", null,
|
||||
onMenuCreateFolder, null, "-", null,
|
||||
onMenuCreateFolder, onMenuExpungeFolder,
|
||||
"-", null,
|
||||
onMenuSharing);
|
||||
menus["trashIconMenu"] = new Array(null, null, null, "-", null,
|
||||
onMenuCreateFolder, null,
|
||||
onMenuCreateFolder, onMenuExpungeFolder,
|
||||
onMenuEmptyTrash, "-", null,
|
||||
onMenuSharing);
|
||||
menus["mailboxIconMenu"] = new Array(null, null, null, "-", null,
|
||||
onMenuCreateFolder,
|
||||
onMenuRenameFolder,
|
||||
null, onMenuDeleteFolder, "-", null,
|
||||
onMenuExpungeFolder,
|
||||
onMenuDeleteFolder, "-", null,
|
||||
onMenuSharing);
|
||||
menus["addressMenu"] = new Array(newContactFromEmail, newEmailTo, null);
|
||||
menus["messageListMenu"] = new Array(onMenuOpenMessage, "-",
|
||||
|
||||
@@ -210,18 +210,16 @@ function createAttachment(node, list) {
|
||||
}
|
||||
|
||||
function clickedEditorSave(sender) {
|
||||
document.pageform.action = "save";
|
||||
document.pageform.submit();
|
||||
refreshOpener();
|
||||
document.pageform.action = "save";
|
||||
document.pageform.submit();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function clickedEditorDelete(sender) {
|
||||
document.pageform.action = "delete";
|
||||
document.pageform.submit();
|
||||
refreshOpener();
|
||||
window.close();
|
||||
document.pageform.action = "delete";
|
||||
document.pageform.submit();
|
||||
window.close();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user