mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-09-01 11:47:19 +00:00
(feat) ability to set folders as drafts/trash/sent
This commit is contained in:
@@ -377,6 +377,16 @@
|
||||
return Mailbox.$$resource.post(this.id, 'expunge');
|
||||
};
|
||||
|
||||
/**
|
||||
* @function $setFolderAs
|
||||
* @memberof Mailbox.prototype
|
||||
* @desc Set a folder as Drafts/Sent/Trash
|
||||
* @returns a promise of the HTTP operation
|
||||
*/
|
||||
Mailbox.prototype.$setFolderAs = function(type) {
|
||||
return Mailbox.$$resource.post(this.id, 'setAs' + type + 'Folder');
|
||||
};
|
||||
|
||||
/**
|
||||
* @function $emptyTrash
|
||||
* @memberof Mailbox.prototype
|
||||
|
||||
@@ -26,7 +26,8 @@
|
||||
vm.confirmDelete = confirmDelete;
|
||||
vm.markFolderRead = markFolderRead;
|
||||
vm.share = share;
|
||||
vm.iconForFolder = iconForFolder;
|
||||
vm.metadataForFolder = metadataForFolder;
|
||||
vm.setFolderAs = setFolderAs;
|
||||
|
||||
if ($state.current.name == 'mail' && vm.accounts.length > 0 && vm.accounts[0].$mailboxes.length > 0) {
|
||||
// Redirect to first mailbox of first account if no mailbox is selected
|
||||
@@ -276,22 +277,30 @@
|
||||
}
|
||||
} // share
|
||||
|
||||
function iconForFolder(folder) {
|
||||
function metadataForFolder(folder) {
|
||||
if (folder.type == 'inbox')
|
||||
return 'inbox';
|
||||
return {name: folder.name, icon:'inbox'};
|
||||
else if (folder.type == 'draft')
|
||||
return 'drafts';
|
||||
return {name: l('DraftsFolderName'), icon: 'drafts'};
|
||||
else if (folder.type == 'sent')
|
||||
return 'send';
|
||||
return {name: l('SentFolderName'), icon: 'send'};
|
||||
else if (folder.type == 'trash')
|
||||
return 'delete';
|
||||
return {name: l('TrashFolderName'), icon: 'delete'};
|
||||
else if (folder.type == 'additional')
|
||||
return 'folder_shared';
|
||||
return {name: folder.name, icon: 'folder_shared'};
|
||||
|
||||
//if ($rootScope.currentFolder == folder)
|
||||
// return 'folder_open';
|
||||
|
||||
return 'folder';
|
||||
return {name: folder.name, icon: 'folder'};
|
||||
}
|
||||
|
||||
function setFolderAs(folder, type) {
|
||||
folder.$setFolderAs(type).then(function() {
|
||||
folder.$account.$getMailboxes({reload: true});
|
||||
}, function(error) {
|
||||
Dialog.alert(l('Warning'), error);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user