Create new keyword/tag/label for message #419

This commit is contained in:
the-djmaze 2022-10-05 17:25:30 +02:00
parent 7c00f2d903
commit 99ff07507e
40 changed files with 98 additions and 41 deletions

View file

@ -152,6 +152,10 @@ export class MessageModel extends AbstractModel {
});
}
toggleTag(keyword) {
toggleTag(this, keyword);
}
_reset() {
this.folder = '';
this.uid = 0;

View file

@ -140,7 +140,7 @@ export class MailMessageView extends AbstractViewRight {
.filter(item => item?.download /*&& !item?.isLinked()*/ && item?.checked())
.length,
tagsAllowed: () => FolderUserStore.currentFolder() ? FolderUserStore.currentFolder().tagsAllowed() : false,
tagsAllowed: () => FolderUserStore.currentFolder()?.tagsAllowed(),
messageVisibility: () => !MessageUserStore.loading() && !!currentMessage(),
@ -526,6 +526,17 @@ export class MailMessageView extends AbstractViewRight {
}
}
newTag() {
let message = currentMessage();
if (message) {
let keyword = prompt(i18n('MESSAGE/NEW_TAG'), '')?.trim();
if (keyword.length) {
message.toggleTag(keyword);
FolderUserStore.currentFolder().permanentFlags.push(keyword);
}
}
}
pgpDecrypt() {
const oMessage = currentMessage();
PgpUserStore.decrypt(oMessage).then(result => {

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "zip تنزيل كـ",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Свали като ZIP файл",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Stáhnout jako zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Hent som zip-fil",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Als ZIP-Datei herunterladen",
"SPAM_SCORE": "Spam-Score",
"HAS_VIRUS_WARNING": "WARNUNG: Virus erkannt",
"TAGS": "Stichworte"
"TAGS": "Stichworte",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Wichtig",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Μεταφόρτωση σαν zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Download as zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Download as zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Descargar todo (archivo ZIP)",
"SPAM_SCORE": "Puntuación de spam",
"HAS_VIRUS_WARNING": "ADVERTENCIA: virus detectado",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Laadi alla .zip failina",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "دریافت با پسوند zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Lataa zip-tiedostona",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Télécharger le zip",
"SPAM_SCORE": "Score de spam",
"HAS_VIRUS_WARNING": "ATTENTION : virus détecté",
"TAGS": "Étiquettes"
"TAGS": "Étiquettes",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Letöltés zip fájlként",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "FIGYELEM: vírust észleltünk",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Unduh sebagai berkas zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Sækja sem .zip skrá",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Scarica come archivio ZIP",
"SPAM_SCORE": "Punteggio Spam",
"HAS_VIRUS_WARNING": "AVVISO: rilevato virus",
"TAGS": "Tag"
"TAGS": "Tag",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Importante",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Zipとしてダウンロード",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "警告: ウィルスが検出されました",
"TAGS": "タグ"
"TAGS": "タグ",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "重要",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": ".zip 파일로 다운로드",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Atsisiųsti zip archyvą",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Download as zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Last ned som zip-fil",
"SPAM_SCORE": "Søppelvurdering",
"HAS_VIRUS_WARNING": "ADVARSEL: virus oppdaget",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Download als zip",
"SPAM_SCORE": "Spamscore",
"HAS_VIRUS_WARNING": "WAARSCHUWING: virus gedetecteerd",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Belangrijk",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Pobierz jako plik zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Baixar como zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Transferir em arquivo zip",
"SPAM_SCORE": "Pontuação de Spam",
"HAS_VIRUS_WARNING": "AVISO: vírus detetado",
"TAGS": "Marcadores"
"TAGS": "Marcadores",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Importante",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Transferir em arquivo zip",
"SPAM_SCORE": "Pontuação de Spam",
"HAS_VIRUS_WARNING": "AVISO: vírus detetado",
"TAGS": "Marcadores"
"TAGS": "Marcadores",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Importante",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Download as zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Сохранить как zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Prevziať ako zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Prenesi kot .zip datoteko",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Ladda ner som ZIP-fil",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "VARNING: virus upptäckt",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Download as zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Завантажити як zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Tải xuống dạng zip",
"SPAM_SCORE": "Điểm số thư rác",
"HAS_VIRUS_WARNING": "BÁO ĐỘNG ĐỎ: phát hiện có virut trong thư",
"TAGS": "Thẻ"
"TAGS": "Thẻ",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Quan trọng",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "下载为zip压缩包",
"SPAM_SCORE": "垃圾邮件分数",
"HAS_VIRUS_WARNING": "警告:检测到病毒",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -148,7 +148,8 @@
"LINK_DOWNLOAD_AS_ZIP": "Download as zip",
"SPAM_SCORE": "Spam Score",
"HAS_VIRUS_WARNING": "WARNING: virus detected",
"TAGS": "Tags"
"TAGS": "Tags",
"NEW_TAG": "New tag"
},
"MESSAGE_TAGS": {
"$important": "Important",

View file

@ -197,10 +197,15 @@
<span data-bind="html: message().tagsToHTML()"></span>
<div class="btn-group" data-bind="registerBootstrapDropdown: true" style="display: inline-block">
<a class="btn btn-thin btn-transparent dropdown-toggle fontastic" id="tags-dropdown-id" href="#" tabindex="-1"></a>
<menu class="dropdown-menu right-edge" role="menu" aria-labelledby="tags-dropdown-id" data-bind="foreach: message().tagOptions()">
<menu class="dropdown-menu right-edge" role="menu" aria-labelledby="tags-dropdown-id">
<div data-bind="foreach: message().tagOptions()">
<li role="presentation">
<a href="#" tabindex="-1" data-icon="☐" data-bind="click: toggle, text: label, title: value, attr: { class: css, 'data-icon': checked ? '☑' : '☐' }"></a>
</li>
</div>
<li role="presentation" class="dividerbar">
<a href="#" tabindex="-1" data-icon="✚" data-bind="click: newTag" data-i18n="MESSAGE/NEW_TAG"></a>
</li>
</menu>
</div>
</div>