merge of 'bbbcd22c1bfa8a23c1a03e53be92046ecec2a3b3'

and 'd2e102506b6eee11a573475e7277568977b959a5'

Monotone-Parent: bbbcd22c1bfa8a23c1a03e53be92046ecec2a3b3
Monotone-Parent: d2e102506b6eee11a573475e7277568977b959a5
Monotone-Revision: 8c852e4b9e947a653debd71411c75952266f7034

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2008-08-26T03:23:11
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2008-08-26 03:23:11 +00:00
7 changed files with 64 additions and 33 deletions

View File

@@ -654,27 +654,23 @@ function onAddressBookRemove(event) {
var nodes = selector.getSelectedNodes();
if (nodes.length > 0) {
var node = $(nodes[0]);
if (node.readAttribute("id") == "/personal") {
window.alert(labels["Your personal address book cannot be deleted."]);
node.deselect();
var owner = node.getAttribute("owner");
if (owner == "nobody") {
var label = labels["You cannot remove nor unsubscribe from a public addressbook."];
window.alert(label);
}
else if (node.hasClassName("remote")) {
window.alert(labels["Global address books cannot be deleted."]);
else if (owner == UserLogin) {
var folderIdElements = node.getAttribute("id").split(":");
var abId = folderIdElements[0].substr(1);
deletePersonalAddressBook(abId);
var personal = $("/personal");
personal.selectElement();
onFolderSelectionChange();
}
else {
node.deselect();
var owner = node.getAttribute("owner");
if (owner == UserLogin) {
var folderIdElements = node.getAttribute("id").split(":");
var abId = folderIdElements[0].substr(1);
deletePersonalAddressBook(abId);
var personal = $("/personal");
personal.selectElement();
onFolderSelectionChange();
}
else {
var folderId = node.getAttribute("id");
unsubscribeFromFolder(folderId, owner, onFolderUnsubscribeCB, folderId);
}
}
}
@@ -682,18 +678,24 @@ function onAddressBookRemove(event) {
}
function deletePersonalAddressBook(folderId) {
var label
= labels["Are you sure you want to delete the selected address book?"];
if (window.confirm(label)) {
if (document.deletePersonalABAjaxRequest) {
document.deletePersonalABAjaxRequest.aborted = true;
document.deletePersonalABAjaxRequest.abort();
if (folderId == "personal") {
var label = labels["You cannot remove nor unsubscribe from your personal addressbook."];
window.alert(label);
}
else {
var label
= labels["Are you sure you want to delete the selected address book?"];
if (window.confirm(label)) {
if (document.deletePersonalABAjaxRequest) {
document.deletePersonalABAjaxRequest.aborted = true;
document.deletePersonalABAjaxRequest.abort();
}
var url = ApplicationBaseURL + folderId + "/deleteFolder";
document.deletePersonalABAjaxRequest
= triggerAjaxRequest(url, deletePersonalAddressBookCallback,
folderId);
}
}
var url = ApplicationBaseURL + folderId + "/deleteFolder";
document.deletePersonalABAjaxRequest
= triggerAjaxRequest(url, deletePersonalAddressBookCallback,
folderId);
}
}
function deletePersonalAddressBookCallback(http) {