mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-13 03:27:39 +03:00
Resolve #1225 by using optional link tracking
This commit is contained in:
parent
d2c59d2e1c
commit
d55ce60cc5
42 changed files with 153 additions and 46 deletions
|
|
@ -208,6 +208,7 @@ export const
|
|||
|
||||
result = {
|
||||
hasExternals: false,
|
||||
tracking: false,
|
||||
linkedData: []
|
||||
},
|
||||
|
||||
|
|
@ -398,10 +399,14 @@ export const
|
|||
if ('A' === name) {
|
||||
value = oElement.href;
|
||||
if (!/^([a-z]+):/i.test(value)) {
|
||||
setAttribute('data-x-broken-href', value);
|
||||
setAttribute('data-x-href-broken', value);
|
||||
delAttribute('href');
|
||||
} else {
|
||||
oElement.href = stripTracking(value);
|
||||
if (oElement.href != value) {
|
||||
result.tracking = true;
|
||||
setAttribute('data-x-href-tracking', value);
|
||||
}
|
||||
setAttribute('target', '_blank');
|
||||
// setAttribute('rel', 'external nofollow noopener noreferrer');
|
||||
}
|
||||
|
|
@ -423,9 +428,8 @@ export const
|
|||
*/
|
||||
|
||||
let skipStyle = false;
|
||||
if (hasAttribute('src')) {
|
||||
value = stripTracking(delAttribute('src'));
|
||||
|
||||
value = delAttribute('src');
|
||||
if (value) {
|
||||
if ('IMG' === name) {
|
||||
oElement.loading = 'lazy';
|
||||
let attachment;
|
||||
|
|
@ -462,12 +466,18 @@ export const
|
|||
oStyle.display = 'none';
|
||||
// setAttribute('style', 'display:none');
|
||||
setAttribute('data-x-src-hidden', value);
|
||||
// result.tracking = true;
|
||||
}
|
||||
else if (httpre.test(value))
|
||||
{
|
||||
setAttribute('data-x-src', value);
|
||||
let src = stripTracking(value);
|
||||
if (src != value) {
|
||||
result.tracking = true;
|
||||
setAttribute('data-x-src-tracking', value);
|
||||
}
|
||||
setAttribute('data-x-src', src);
|
||||
result.hasExternals = true;
|
||||
oElement.alt || (oElement.alt = value.replace(/^.+\/([^/?]+).*$/, '$1').slice(-20));
|
||||
oElement.alt || (oElement.alt = src.replace(/^.+\/([^/?]+).*$/, '$1').slice(-20));
|
||||
}
|
||||
else if (value.startsWith('data:image/'))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -118,6 +118,7 @@ export class MessageModel extends AbstractModel {
|
|||
isHtml: false,
|
||||
hasImages: false,
|
||||
hasExternals: false,
|
||||
hasTracking: false,
|
||||
|
||||
pgpSigned: null,
|
||||
pgpVerified: null,
|
||||
|
|
@ -373,6 +374,7 @@ export class MessageModel extends AbstractModel {
|
|||
let result = msgHtml(this);
|
||||
this.hasExternals(result.hasExternals);
|
||||
this.hasImages(!!result.hasExternals);
|
||||
this.hasTracking(!!result.tracking);
|
||||
this.linkedData = result.linkedData;
|
||||
body.innerHTML = result.html;
|
||||
if (!this.isSpam && FolderUserStore.spamFolder() != this.folder) {
|
||||
|
|
|
|||
|
|
@ -109,7 +109,8 @@ export class MailMessageView extends AbstractViewRight {
|
|||
actionsMenu: null,
|
||||
// viewer
|
||||
viewFromShort: '',
|
||||
dkimData: ['none', '', '']
|
||||
dkimData: ['none', '', ''],
|
||||
nowTracking: false
|
||||
});
|
||||
|
||||
this.moveAction = moveAction;
|
||||
|
|
@ -208,6 +209,7 @@ export class MailMessageView extends AbstractViewRight {
|
|||
// TODO: make first param a user setting #683
|
||||
this.viewFromShort(message.from.toString(false, true));
|
||||
this.dkimData(message.dkim[0] || ['none', '', '']);
|
||||
this.nowTracking(false);
|
||||
} else {
|
||||
MessagelistUserStore.selectedMessage(null);
|
||||
|
||||
|
|
@ -500,6 +502,17 @@ export class MailMessageView extends AbstractViewRight {
|
|||
currentMessage().showExternalImages();
|
||||
}
|
||||
|
||||
showTracking() {
|
||||
const msg = currentMessage(), body = msg?.body;
|
||||
if (body && msg.hasTracking()) {
|
||||
let attr = 'data-x-href-tracking';
|
||||
body.querySelectorAll('a['+attr+']').forEach(node => node.href = node.getAttribute(attr));
|
||||
// attr = 'data-x-src-tracking';
|
||||
// body.querySelectorAll('img['+attr+']').forEach(node => node.src = node.getAttribute(attr));
|
||||
this.nowTracking(true);
|
||||
}
|
||||
}
|
||||
|
||||
whitelistText(txt) {
|
||||
let value = (SettingsUserStore.viewImagesWhitelist().trim() + '\n' + txt).trim();
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam-Score",
|
||||
"HAS_VIRUS_WARNING": "WARNUNG: Virus erkannt",
|
||||
"TAGS": "Stichworte",
|
||||
"NEW_TAG": "Neues Schlagwort"
|
||||
"NEW_TAG": "Neues Schlagwort",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Wichtig",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Puntuación de spam",
|
||||
"HAS_VIRUS_WARNING": "ADVERTENCIA: virus detectado",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Puntuzioa",
|
||||
"HAS_VIRUS_WARNING": "KONTUZ: virusa detektatu da",
|
||||
"TAGS": "Etiketak",
|
||||
"NEW_TAG": "Etiketa berria"
|
||||
"NEW_TAG": "Etiketa berria",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Garrantzitsua",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Score de spam",
|
||||
"HAS_VIRUS_WARNING": "ATTENTION : virus détecté",
|
||||
"TAGS": "Étiquettes",
|
||||
"NEW_TAG": "Nouvelle étiquette"
|
||||
"NEW_TAG": "Nouvelle étiquette",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "FIGYELEM: vírust észleltünk",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Punteggio Spam",
|
||||
"HAS_VIRUS_WARNING": "AVVISO: rilevato virus",
|
||||
"TAGS": "Tag",
|
||||
"NEW_TAG": "Nuovo tag"
|
||||
"NEW_TAG": "Nuovo tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Importante",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "警告: ウィルスが検出されました",
|
||||
"TAGS": "タグ",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "重要",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Søppelvurdering",
|
||||
"HAS_VIRUS_WARNING": "ADVARSEL: virus oppdaget",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spamscore",
|
||||
"HAS_VIRUS_WARNING": "WAARSCHUWING: virus gedetecteerd",
|
||||
"TAGS": "Labels",
|
||||
"NEW_TAG": "Nieuwe label"
|
||||
"NEW_TAG": "Nieuwe label",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Belangrijk",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Punktacja\/Reputacja spamu",
|
||||
"HAS_VIRUS_WARNING": "Uwaga: wykryto wirusa!",
|
||||
"TAGS": "Tagi",
|
||||
"NEW_TAG": "Nowy tag"
|
||||
"NEW_TAG": "Nowy tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Ważne",
|
||||
|
|
@ -386,7 +388,8 @@
|
|||
"IMAGEURL": "Odnośnik obrazu",
|
||||
"IMAGEUPLOAD": "Wybierz obraz",
|
||||
"UNDO": "Cofnij",
|
||||
"REDO": "Ponów"
|
||||
"REDO": "Ponów",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Ogólne",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Pontuação de Spam",
|
||||
"HAS_VIRUS_WARNING": "AVISO: vírus detetado",
|
||||
"TAGS": "Etiquetas",
|
||||
"NEW_TAG": "Nova etiqueta"
|
||||
"NEW_TAG": "Nova etiqueta",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Importante",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Pontuação de Spam",
|
||||
"HAS_VIRUS_WARNING": "AVISO: vírus detetado",
|
||||
"TAGS": "Etiquetas",
|
||||
"NEW_TAG": "Nova etiqueta"
|
||||
"NEW_TAG": "Nova etiqueta",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Importante",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Оценка спама",
|
||||
"HAS_VIRUS_WARNING": "ВНИМАНИЕ: Обнаружен вирус!",
|
||||
"TAGS": "Метки",
|
||||
"NEW_TAG": "Новая метка"
|
||||
"NEW_TAG": "Новая метка",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Важное",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "VARNING: virus upptäckt",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Spam Score",
|
||||
"HAS_VIRUS_WARNING": "WARNING: virus detected",
|
||||
"TAGS": "Tags",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Important",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "Điểm số thư rác",
|
||||
"HAS_VIRUS_WARNING": "BÁO ĐỘNG ĐỎ: phát hiện có virut trong thư",
|
||||
"TAGS": "Thẻ",
|
||||
"NEW_TAG": "New tag"
|
||||
"NEW_TAG": "New tag",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "Quan trọng",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "垃圾邮件分数",
|
||||
"HAS_VIRUS_WARNING": "警告:检测到病毒",
|
||||
"TAGS": "标签",
|
||||
"NEW_TAG": "新标签"
|
||||
"NEW_TAG": "新标签",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "重要",
|
||||
|
|
|
|||
|
|
@ -153,7 +153,9 @@
|
|||
"SPAM_SCORE": "垃圾郵件計分",
|
||||
"HAS_VIRUS_WARNING": "警告: 已偵測到病毒",
|
||||
"TAGS": "標籤",
|
||||
"NEW_TAG": "新增標籤"
|
||||
"NEW_TAG": "新增標籤",
|
||||
"ENABLE_TRACKING_LINKS": "Enable tracking links",
|
||||
"TRACKING_ENABLED": "Links are now tracked when clicked!"
|
||||
},
|
||||
"MESSAGE_TAGS": {
|
||||
"$important": "重要",
|
||||
|
|
|
|||
|
|
@ -287,6 +287,11 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div class="btn-toolbar" data-bind="visible: message().hasTracking()">
|
||||
<div class="btn" data-bind="visible: !nowTracking(), click: showTracking" data-icon="🔗" data-i18n="MESSAGE/ENABLE_TRACKING_LINKS"></div>
|
||||
<div class="alert" data-bind="visible: nowTracking" data-i18n="MESSAGE/TRACKING_ENABLED" style="margin:0"></div>
|
||||
</div>
|
||||
|
||||
<div data-bind="visible: message().pgpEncrypted()">
|
||||
<div class="openpgp-control encrypted" data-bind="css: {success: message().pgpDecrypted()}">
|
||||
<span data-icon="🔒" data-i18n="OPENPGP/ENCRYPTED_MESSAGE"></span>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue