mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-10 06:58:27 +03:00
Better Sieve rainloop.user script handling
This commit is contained in:
parent
f080a302b1
commit
4cfd6479ce
51 changed files with 92 additions and 99 deletions
|
|
@ -82,11 +82,9 @@ export class AbstractModel {
|
|||
}
|
||||
|
||||
revivePropertiesFromJson(json) {
|
||||
let model = this.constructor;
|
||||
if (!model.validJson(json)) {
|
||||
return false;
|
||||
}
|
||||
forEachObjectEntry(json, (key, value) => {
|
||||
const model = this.constructor,
|
||||
valid = model.validJson(json);
|
||||
valid && forEachObjectEntry(json, (key, value) => {
|
||||
if ('@' !== key[0]) try {
|
||||
key = key[0].toLowerCase() + key.slice(1);
|
||||
switch (typeof this[key])
|
||||
|
|
@ -104,9 +102,12 @@ export class AbstractModel {
|
|||
case 'string':
|
||||
this[key] = typeCast(this[key], value);
|
||||
break;
|
||||
// fall through
|
||||
case 'undefined':
|
||||
default:
|
||||
console.log(`Undefined ${model.name}.${key} not set`);
|
||||
// this[key] = value;
|
||||
break;
|
||||
// default:
|
||||
// console.log((typeof this[key])+` ${model.name}.${key} not revived`);
|
||||
// console.log((typeof this[key])+' '+(model.name)+'.'+key+' not revived');
|
||||
}
|
||||
} catch (e) {
|
||||
|
|
@ -114,7 +115,7 @@ export class AbstractModel {
|
|||
console.error(e);
|
||||
}
|
||||
});
|
||||
return true;
|
||||
return valid;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,10 +53,10 @@ export class FilterModel extends AbstractModel {
|
|||
actionValueFourth: '',
|
||||
actionValueFourthError: false,
|
||||
|
||||
actionMarkAsRead: false,
|
||||
markAsRead: false,
|
||||
|
||||
actionKeep: true,
|
||||
actionNoStop: false,
|
||||
keep: true,
|
||||
stop: true,
|
||||
|
||||
actionType: FilterAction.MoveTo
|
||||
});
|
||||
|
|
@ -181,24 +181,24 @@ export class FilterModel extends AbstractModel {
|
|||
return true;
|
||||
}
|
||||
|
||||
toJson() {
|
||||
toJSON() {
|
||||
return {
|
||||
// '@Object': 'Object/Filter',
|
||||
ID: this.id,
|
||||
Enabled: this.enabled() ? 1 : 0,
|
||||
Name: this.name(),
|
||||
Conditions: this.conditions.map(item => item.toJson()),
|
||||
ConditionsType: this.conditionsType(),
|
||||
Name: this.name,
|
||||
Conditions: this.conditions,
|
||||
ConditionsType: this.conditionsType,
|
||||
|
||||
ActionType: this.actionType(),
|
||||
ActionValue: this.actionValue(),
|
||||
ActionValueSecond: this.actionValueSecond(),
|
||||
ActionValueThird: this.actionValueThird(),
|
||||
ActionValueFourth: this.actionValueFourth(),
|
||||
ActionValue: this.actionValue,
|
||||
ActionValueSecond: this.actionValueSecond,
|
||||
ActionValueThird: this.actionValueThird,
|
||||
ActionValueFourth: this.actionValueFourth,
|
||||
|
||||
Keep: this.actionKeep() ? 1 : 0,
|
||||
Stop: this.actionNoStop() ? 0 : 1,
|
||||
MarkAsRead: this.actionMarkAsRead() ? 1 : 0
|
||||
Keep: this.keep() ? 1 : 0,
|
||||
Stop: this.stop() ? 1 : 0,
|
||||
MarkAsRead: this.markAsRead() ? 1 : 0
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -216,15 +216,14 @@ export class FilterModel extends AbstractModel {
|
|||
* @returns {?FilterModel}
|
||||
*/
|
||||
static reviveFromJson(json) {
|
||||
json.id = json.ID;
|
||||
delete json.ID;
|
||||
const filter = super.reviveFromJson(json);
|
||||
if (filter) {
|
||||
filter.id = '' + (filter.id || '');
|
||||
filter.conditions(
|
||||
(json.Conditions || []).map(aData => FilterConditionModel.reviveFromJson(aData)).filter(v => v)
|
||||
);
|
||||
filter.actionKeep(0 != json.Keep);
|
||||
filter.actionNoStop(0 == json.Stop);
|
||||
filter.actionMarkAsRead(1 == json.MarkAsRead);
|
||||
}
|
||||
return filter;
|
||||
}
|
||||
|
|
@ -241,7 +240,7 @@ export class FilterModel extends AbstractModel {
|
|||
|
||||
filter.conditionsType(this.conditionsType());
|
||||
|
||||
filter.actionMarkAsRead(this.actionMarkAsRead());
|
||||
filter.markAsRead(this.markAsRead());
|
||||
|
||||
filter.actionType(this.actionType());
|
||||
|
||||
|
|
@ -252,8 +251,8 @@ export class FilterModel extends AbstractModel {
|
|||
filter.actionValueThird(this.actionValueThird());
|
||||
filter.actionValueFourth(this.actionValueFourth());
|
||||
|
||||
filter.actionKeep(this.actionKeep());
|
||||
filter.actionNoStop(this.actionNoStop());
|
||||
filter.keep(this.keep());
|
||||
filter.stop(this.stop());
|
||||
|
||||
filter.conditions(this.conditions.map(item => item.cloneSelf()));
|
||||
|
||||
|
|
|
|||
|
|
@ -81,13 +81,13 @@ export class FilterConditionModel extends AbstractModel {
|
|||
|
||||
// static reviveFromJson(json) {}
|
||||
|
||||
toJson() {
|
||||
toJSON() {
|
||||
return {
|
||||
// '@Object': 'Object/FilterCondition',
|
||||
Field: this.field(),
|
||||
Type: this.type(),
|
||||
Value: this.value(),
|
||||
ValueSecond: this.valueSecond()
|
||||
Field: this.field,
|
||||
Type: this.type,
|
||||
Value: this.value,
|
||||
ValueSecond: this.valueSecond
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -125,7 +125,7 @@ function filtersToSieveScript(filters)
|
|||
// actions
|
||||
block ? result.push('{') : (sTab = '');
|
||||
|
||||
if (filter.actionMarkAsRead() && ['None','MoveTo','Forward'].includes(filter.actionType())) {
|
||||
if (filter.markAsRead() && ['None','MoveTo','Forward'].includes(filter.actionType())) {
|
||||
require.imap4flags = 1;
|
||||
result.push(sTab + 'addflag "\\\\Seen";');
|
||||
}
|
||||
|
|
@ -182,7 +182,7 @@ function filtersToSieveScript(filters)
|
|||
break; }
|
||||
case 'Forward':
|
||||
if (value) {
|
||||
if (filter.actionKeep()) {
|
||||
if (filter.keep()) {
|
||||
require.fileinto = 1;
|
||||
result.push(sTab + 'fileinto "INBOX";');
|
||||
}
|
||||
|
|
@ -201,7 +201,7 @@ function filtersToSieveScript(filters)
|
|||
break;
|
||||
}
|
||||
|
||||
filter.actionNoStop() || result.push(sTab + 'stop;');
|
||||
filter.stop() && result.push(sTab + 'stop;');
|
||||
|
||||
block && result.push('}');
|
||||
|
||||
|
|
@ -213,7 +213,7 @@ function filtersToSieveScript(filters)
|
|||
'/*',
|
||||
'BEGIN:FILTER:' + filter.id,
|
||||
'BEGIN:HEADER',
|
||||
btoa(unescape(encodeURIComponent(JSON.stringify(filter.toJson())))).match(split).join(eol) + 'END:HEADER',
|
||||
btoa(unescape(encodeURIComponent(JSON.stringify(filter)))).match(split).join(eol) + 'END:HEADER',
|
||||
'*/',
|
||||
filter.enabled() ? '' : '/* @Filter is disabled ',
|
||||
filterToString(filter, require),
|
||||
|
|
@ -290,13 +290,12 @@ export class SieveScriptModel extends AbstractModel
|
|||
return !this.nameError();
|
||||
}
|
||||
|
||||
toJson() {
|
||||
toJSON() {
|
||||
return {
|
||||
name: this.name(),
|
||||
active: this.active() ? 1 : 0,
|
||||
body: this.body()
|
||||
name: this.name,
|
||||
active: this.active,
|
||||
body: this.body
|
||||
// body: this.allowFilters() ? this.body() : this.filtersToRaw()
|
||||
// filters: this.filters.map(item => item.toJson())
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -316,13 +315,7 @@ export class SieveScriptModel extends AbstractModel
|
|||
const script = super.reviveFromJson(json);
|
||||
if (script) {
|
||||
if (script.allowFilters()) {
|
||||
script.filters(
|
||||
Array.isArray(json.filters) && json.filters.length
|
||||
? json.filters.map(aData => FilterModel.reviveFromJson(aData)).filter(v => v)
|
||||
: sieveScriptToFilters(script.body())
|
||||
);
|
||||
} else {
|
||||
script.filters([]);
|
||||
script.filters(sieveScriptToFilters(script.body()));
|
||||
}
|
||||
script.canBeDeleted(SIEVE_FILE_NAME !== json.name);
|
||||
script.exists(true);
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ export class SieveScriptPopupView extends rl.pluginPopupView {
|
|||
// this.close();
|
||||
}
|
||||
},
|
||||
script.toJson()
|
||||
script.toJSON()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -95,6 +95,7 @@
|
|||
@media screen and (max-width: 999px) {
|
||||
#rl-settings-subscreen {
|
||||
padding: 10px;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#rl-right {
|
||||
|
|
|
|||
|
|
@ -66,8 +66,7 @@ class SieveStorage implements FiltersInterface
|
|||
'@Object' => 'Object/SieveScript',
|
||||
'name' => self::SIEVE_FILE_NAME,
|
||||
'active' => false,
|
||||
'body' => '',
|
||||
'filters' => []
|
||||
'body' => ''
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "تعليمها بـ مقروءة",
|
||||
"REPLY_INTERVAL_LABEL": "فترة الرد (بلأيام)",
|
||||
"KEEP_LABEL": "الإحتفاظ بها",
|
||||
"STOP_LABEL": "لاتتوقف عن المعالجة بالشروط",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "الموضوع (خياري)",
|
||||
"VACATION_MESSAGE_LABEL": "الرسالة",
|
||||
"VACATION_RECIPIENTS_LABEL": "Recipients (comma separated)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Отбележи като прочетено",
|
||||
"REPLY_INTERVAL_LABEL": "За колко време (дни)",
|
||||
"KEEP_LABEL": "Запази",
|
||||
"STOP_LABEL": "Да не спира да обработва правилата",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Тема (незадължително)",
|
||||
"VACATION_MESSAGE_LABEL": "Съобщение",
|
||||
"VACATION_RECIPIENTS_LABEL": "Получатели (разделени със запетая)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Odznačit jako přečtené",
|
||||
"REPLY_INTERVAL_LABEL": "Interval odpovědi (dny)",
|
||||
"KEEP_LABEL": "Zachovat",
|
||||
"STOP_LABEL": "Neukončovat zpracování pravidel",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Předmět (volitelný)",
|
||||
"VACATION_MESSAGE_LABEL": "Zpráva",
|
||||
"VACATION_RECIPIENTS_LABEL": "Příjemci (odděleni čárkou)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Markér som læst",
|
||||
"REPLY_INTERVAL_LABEL": "Svarinterval (dage)",
|
||||
"KEEP_LABEL": "Behold",
|
||||
"STOP_LABEL": "Forsæt med at tjekke regler",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Emne (valgfrit)",
|
||||
"VACATION_MESSAGE_LABEL": "Meddelelse",
|
||||
"VACATION_RECIPIENTS_LABEL": "Modtagere (kommaseparerede)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Als Gelesen markieren",
|
||||
"REPLY_INTERVAL_LABEL": "Antwortintervall (Tage)",
|
||||
"KEEP_LABEL": "Behalten",
|
||||
"STOP_LABEL": "Weiterverarbeitung der Regeln nicht verhindern",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Betreff (optional)",
|
||||
"VACATION_MESSAGE_LABEL": "Nachricht",
|
||||
"VACATION_RECIPIENTS_LABEL": "Empfänger (durch Komma getrennt)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Σήμανε σαν διαβασμένο",
|
||||
"REPLY_INTERVAL_LABEL": "Μεσοδιάστημα απαντήσεων (σε ημέρες)",
|
||||
"KEEP_LABEL": "Κράτησε",
|
||||
"STOP_LABEL": "Μην σταματάς να επεξεργάζεσαι κανόνες",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Θέμα (προαιρετικό)",
|
||||
"VACATION_MESSAGE_LABEL": "Μήνυμα",
|
||||
"VACATION_RECIPIENTS_LABEL": "Παραλήπτες (χωρισμένοι με κόμμα)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Mark as read",
|
||||
"REPLY_INTERVAL_LABEL": "Reply interval (days)",
|
||||
"KEEP_LABEL": "Keep",
|
||||
"STOP_LABEL": "Don't stop processing rules",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Subject (optional)",
|
||||
"VACATION_MESSAGE_LABEL": "Message",
|
||||
"VACATION_RECIPIENTS_LABEL": "Recipients (comma separated)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Mark as read",
|
||||
"REPLY_INTERVAL_LABEL": "Reply interval (days)",
|
||||
"KEEP_LABEL": "Keep",
|
||||
"STOP_LABEL": "Don't stop processing rules",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Subject (optional)",
|
||||
"VACATION_MESSAGE_LABEL": "Message",
|
||||
"VACATION_RECIPIENTS_LABEL": "Recipients (comma separated)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Marcar como leído",
|
||||
"REPLY_INTERVAL_LABEL": "Intervalo de respuesta (días)",
|
||||
"KEEP_LABEL": "Mantener",
|
||||
"STOP_LABEL": "Don't stop processing rules",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Asunto (opcional)",
|
||||
"VACATION_MESSAGE_LABEL": "Mensaje",
|
||||
"VACATION_RECIPIENTS_LABEL": "Destinatarios (separados por coma)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Märgi loetuks",
|
||||
"REPLY_INTERVAL_LABEL": "Vastuse intervall (päevades)",
|
||||
"KEEP_LABEL": "Salvesta",
|
||||
"STOP_LABEL": "Ära peata reeglite protsessimist",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Pealkiri (valikuline)",
|
||||
"VACATION_MESSAGE_LABEL": "Sõnum",
|
||||
"VACATION_RECIPIENTS_LABEL": "Saajad (eraldatud komaga)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Markatu irakurri bezala",
|
||||
"REPLY_INTERVAL_LABEL": "Erantzuteko tartea (egunak)",
|
||||
"KEEP_LABEL": "Mantenu",
|
||||
"STOP_LABEL": "Ez geratu arazoak prozesatzeaz",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Gaia (hautazkoa)",
|
||||
"VACATION_MESSAGE_LABEL": "Mezua",
|
||||
"VACATION_RECIPIENTS_LABEL": "Hartzaileak (komaz bananduta)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "علامت بعنوان خوانده شده",
|
||||
"REPLY_INTERVAL_LABEL": "دوره جواب (بر پایه روز)",
|
||||
"KEEP_LABEL": "نگهداشتن",
|
||||
"STOP_LABEL": "پردازش قوانین را متوقف نکن",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "موضوع (اختیاری)",
|
||||
"VACATION_MESSAGE_LABEL": "پیام",
|
||||
"VACATION_RECIPIENTS_LABEL": "گیرندگان (جداسازی با , )",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Merkitse luetuksi",
|
||||
"REPLY_INTERVAL_LABEL": "Vastaus intervalli (päivissä)",
|
||||
"KEEP_LABEL": "Säästä",
|
||||
"STOP_LABEL": "Älä lopeta sääntöjen prosessointia",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Aihe (valinnainen)",
|
||||
"VACATION_MESSAGE_LABEL": "Viesti",
|
||||
"VACATION_RECIPIENTS_LABEL": "Vastaanottajat (erotettu pilkulla)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Marquer comme lu",
|
||||
"REPLY_INTERVAL_LABEL": "Délai de réponse (jours)",
|
||||
"KEEP_LABEL": "Garder",
|
||||
"STOP_LABEL": "Ne pas arrêter le traitement des règles",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Sujet (optionnel)",
|
||||
"VACATION_MESSAGE_LABEL": "Message",
|
||||
"VACATION_RECIPIENTS_LABEL": "Destinataires (séparés par des virgules)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Megjelölés olvasottként",
|
||||
"REPLY_INTERVAL_LABEL": "Válasz időköz (nap)",
|
||||
"KEEP_LABEL": "Megtart",
|
||||
"STOP_LABEL": "Ne hagyja abba a szabályok feldolgozását",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Tárgy (nem kötelező)",
|
||||
"VACATION_MESSAGE_LABEL": "Üzenet",
|
||||
"VACATION_RECIPIENTS_LABEL": "Címzettek (vesszővel elválasztva)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Tandai sudah dibaca",
|
||||
"REPLY_INTERVAL_LABEL": "Selang waktu balasan (hari)",
|
||||
"KEEP_LABEL": "Tahan",
|
||||
"STOP_LABEL": "Jangan hentikan peraturan proses",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Subjek (opsional)",
|
||||
"VACATION_MESSAGE_LABEL": "Pesan",
|
||||
"VACATION_RECIPIENTS_LABEL": "Penerima (dipisahkan koma)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Merkja sem lesið",
|
||||
"REPLY_INTERVAL_LABEL": "Bil milli svara (dagar)",
|
||||
"KEEP_LABEL": "Halda",
|
||||
"STOP_LABEL": "Ekki hætta að vinna með reglur",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Viðfangsefni (valkvætt)",
|
||||
"VACATION_MESSAGE_LABEL": "Skilaboð",
|
||||
"VACATION_RECIPIENTS_LABEL": "Viðtakendur (aðgreindir með kommu)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Marca come letto",
|
||||
"REPLY_INTERVAL_LABEL": "Intervallo di risposta (giorni)",
|
||||
"KEEP_LABEL": "Mantieni",
|
||||
"STOP_LABEL": "Non interrompere l'elaborazione delle regole",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Oggetto (opzionale)",
|
||||
"VACATION_MESSAGE_LABEL": "Messaggio",
|
||||
"VACATION_RECIPIENTS_LABEL": "Destinatari (separati da virgola)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "既読にする",
|
||||
"REPLY_INTERVAL_LABEL": "返信間隔(日)",
|
||||
"KEEP_LABEL": "保持",
|
||||
"STOP_LABEL": "ルールの処理を止めない",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "件名(オプション)",
|
||||
"VACATION_MESSAGE_LABEL": "メッセージ",
|
||||
"VACATION_RECIPIENTS_LABEL": "受信者(カンマ区切り)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "읽음 표시",
|
||||
"REPLY_INTERVAL_LABEL": "회신 주기 (일)",
|
||||
"KEEP_LABEL": "Keep",
|
||||
"STOP_LABEL": "Don't stop processing rules",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "제목 (옵션)",
|
||||
"VACATION_MESSAGE_LABEL": "메시지",
|
||||
"VACATION_RECIPIENTS_LABEL": "수신인 (쉼표 분리)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Žymėti skaitytu",
|
||||
"REPLY_INTERVAL_LABEL": "Atsakymų intervalai (dienomis)",
|
||||
"KEEP_LABEL": "laikyti",
|
||||
"STOP_LABEL": "Nesustoti vykdyti taisykles",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Tema (nebūtina)",
|
||||
"VACATION_MESSAGE_LABEL": "Žinutė",
|
||||
"VACATION_RECIPIENTS_LABEL": "Recipients (comma separated)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Mark as read",
|
||||
"REPLY_INTERVAL_LABEL": "Reply interval (days)",
|
||||
"KEEP_LABEL": "Keep",
|
||||
"STOP_LABEL": "Don't stop processing rules",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Subject (optional)",
|
||||
"VACATION_MESSAGE_LABEL": "Message",
|
||||
"VACATION_RECIPIENTS_LABEL": "Recipients (comma separated)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Merk som lest",
|
||||
"REPLY_INTERVAL_LABEL": "Svar-intervall (dager)",
|
||||
"KEEP_LABEL": "Behold",
|
||||
"STOP_LABEL": "Ikke slutt å bruke regler",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Emne (valgfritt)",
|
||||
"VACATION_MESSAGE_LABEL": "Melding",
|
||||
"VACATION_RECIPIENTS_LABEL": "Mottakere (adskilt med komma)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Markeer als gelezen",
|
||||
"REPLY_INTERVAL_LABEL": "Antwoord interval (dagen)",
|
||||
"KEEP_LABEL": "Behoud",
|
||||
"STOP_LABEL": "Stop niet met uitvoeren van volgende filters",
|
||||
"STOP_LABEL": "Stop met het uitvoeren van de volgende filters",
|
||||
"VACATION_SUBJECT_LABEL": "Onderwerp (optioneel)",
|
||||
"VACATION_MESSAGE_LABEL": "Bericht",
|
||||
"VACATION_RECIPIENTS_LABEL": "Ontvangers (comma gescheiden)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Oznacz jako przeczytane",
|
||||
"REPLY_INTERVAL_LABEL": "Interwał odpowiedzi (dni)",
|
||||
"KEEP_LABEL": "Zachowaj",
|
||||
"STOP_LABEL": "Nie zatrzymuj przetwarzania reguł",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Temat (opcjonalnie)",
|
||||
"VACATION_MESSAGE_LABEL": "Wiadomość",
|
||||
"VACATION_RECIPIENTS_LABEL": "Odbiorcy (rodzielone przecinkami)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Marcar como Lida",
|
||||
"REPLY_INTERVAL_LABEL": "Responder intervalo (dias)",
|
||||
"KEEP_LABEL": "Manter",
|
||||
"STOP_LABEL": "Não parar o processamento das regras",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Assunto (opcional)",
|
||||
"VACATION_MESSAGE_LABEL": "Mensagem",
|
||||
"VACATION_RECIPIENTS_LABEL": "Destinatários (separados por vírgulas)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Marcar como lida",
|
||||
"REPLY_INTERVAL_LABEL": "Intervalo de resposta (dias)",
|
||||
"KEEP_LABEL": "Manter",
|
||||
"STOP_LABEL": "Não parar de processar as regras",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Assunto (opcional)",
|
||||
"VACATION_MESSAGE_LABEL": "Mensagem",
|
||||
"VACATION_RECIPIENTS_LABEL": "Destinatários (separados por vírgula)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Marcar como lida",
|
||||
"REPLY_INTERVAL_LABEL": "Intervalo de resposta (dias)",
|
||||
"KEEP_LABEL": "Manter",
|
||||
"STOP_LABEL": "Não parar de processar as regras",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Assunto (opcional)",
|
||||
"VACATION_MESSAGE_LABEL": "Mensagem",
|
||||
"VACATION_RECIPIENTS_LABEL": "Destinatários (separados por vírgula)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Mark as read",
|
||||
"REPLY_INTERVAL_LABEL": "Reply interval (days)",
|
||||
"KEEP_LABEL": "Keep",
|
||||
"STOP_LABEL": "Don't stop processing rules",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Subject (optional)",
|
||||
"VACATION_MESSAGE_LABEL": "Message",
|
||||
"VACATION_RECIPIENTS_LABEL": "Recipients (comma separated)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Отметить как прочитанное",
|
||||
"REPLY_INTERVAL_LABEL": "Отвечать каждые (в днях)",
|
||||
"KEEP_LABEL": "Сохранить копию",
|
||||
"STOP_LABEL": "Не преращать обработку правил",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Тема (необязательно)",
|
||||
"VACATION_MESSAGE_LABEL": "Сообщение",
|
||||
"VACATION_RECIPIENTS_LABEL": "Получатели (через запятую)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Označiť ako prečítané",
|
||||
"REPLY_INTERVAL_LABEL": "Interval odpovede (v dňoch)",
|
||||
"KEEP_LABEL": "Ponechať",
|
||||
"STOP_LABEL": "Pokračovať vo vykonávaní pravidiel",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Predmet (voliteľne)",
|
||||
"VACATION_MESSAGE_LABEL": "Správa",
|
||||
"VACATION_RECIPIENTS_LABEL": "Adresáti (oddelení čiarkou)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Označi kot prebrano",
|
||||
"REPLY_INTERVAL_LABEL": "Interval odgovorov (dnevi)",
|
||||
"KEEP_LABEL": "Obdrži",
|
||||
"STOP_LABEL": "Ne prenehaj z obdelovanjem pravil",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Zadeva (izbirno)",
|
||||
"VACATION_MESSAGE_LABEL": "Sporočilo",
|
||||
"VACATION_RECIPIENTS_LABEL": "Prejemniki (ločeni z vejico)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Markera som läst",
|
||||
"REPLY_INTERVAL_LABEL": "Svarsintervall (dagar)",
|
||||
"KEEP_LABEL": "Behåll",
|
||||
"STOP_LABEL": "Sluta inte bearbeta andra regler",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Ämne (valfritt)",
|
||||
"VACATION_MESSAGE_LABEL": "Meddelande",
|
||||
"VACATION_RECIPIENTS_LABEL": "Mottagare (kommaseparerade)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Okundu olarak işaretle",
|
||||
"REPLY_INTERVAL_LABEL": "Reply interval (days)",
|
||||
"KEEP_LABEL": "Keep",
|
||||
"STOP_LABEL": "Don't stop processing rules",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Konu (Opsiyonel)",
|
||||
"VACATION_MESSAGE_LABEL": "Mesaj",
|
||||
"VACATION_RECIPIENTS_LABEL": "Recipients (comma separated)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Mark as read",
|
||||
"REPLY_INTERVAL_LABEL": "Reply interval (days)",
|
||||
"KEEP_LABEL": "Keep",
|
||||
"STOP_LABEL": "Don't stop processing rules",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Тема (не обов'язково)",
|
||||
"VACATION_MESSAGE_LABEL": "Повідомлення",
|
||||
"VACATION_RECIPIENTS_LABEL": "Отримувачі (розділяти комами)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Đánh dấu đã đọc",
|
||||
"REPLY_INTERVAL_LABEL": "Khoảng cách phản hồi (ngày)",
|
||||
"KEEP_LABEL": "Giữ lại",
|
||||
"STOP_LABEL": "Không dừng những quy định xử lý thư này",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Tiêu đề thư (không bắt buộc)",
|
||||
"VACATION_MESSAGE_LABEL": "Nội dung thư thông báo bạn đang nghỉ lễ",
|
||||
"VACATION_RECIPIENTS_LABEL": "Người nhận (phân ra bởi dấu phẩy)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "标记为已读",
|
||||
"REPLY_INTERVAL_LABEL": "答复间隔 (天) ",
|
||||
"KEEP_LABEL": "保留邮件",
|
||||
"STOP_LABEL": "继续匹配其他规则",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "主题 (可选)",
|
||||
"VACATION_MESSAGE_LABEL": "内容",
|
||||
"VACATION_RECIPIENTS_LABEL": "收件人 (半角逗号“,”分隔)",
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@
|
|||
"MARK_AS_READ_LABEL": "Mark as read",
|
||||
"REPLY_INTERVAL_LABEL": "Reply interval (days)",
|
||||
"KEEP_LABEL": "Keep",
|
||||
"STOP_LABEL": "Don't stop processing rules",
|
||||
"STOP_LABEL": "Stop further processing of rules",
|
||||
"VACATION_SUBJECT_LABEL": "Subject (optional)",
|
||||
"VACATION_MESSAGE_LABEL": "Message",
|
||||
"VACATION_RECIPIENTS_LABEL": "Recipients (comma separated)",
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'POPUPS_FILTER/STOP_LABEL',
|
||||
value: actionNoStop
|
||||
value: stop
|
||||
}
|
||||
}"></div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,21 +8,21 @@
|
|||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'POPUPS_FILTER/KEEP_LABEL',
|
||||
value: actionKeep
|
||||
value: keep
|
||||
}
|
||||
}"></div>
|
||||
<div data-bind="visible: $root.allowMarkAsRead, component: {
|
||||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'POPUPS_FILTER/MARK_AS_READ_LABEL',
|
||||
value: actionMarkAsRead
|
||||
value: markAsRead
|
||||
}
|
||||
}"></div>
|
||||
<div data-bind="component: {
|
||||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'POPUPS_FILTER/STOP_LABEL',
|
||||
value: actionNoStop
|
||||
value: stop
|
||||
}
|
||||
}"></div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,14 +8,14 @@
|
|||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'POPUPS_FILTER/MARK_AS_READ_LABEL',
|
||||
value: actionMarkAsRead
|
||||
value: markAsRead
|
||||
}
|
||||
}"></div>
|
||||
<div data-bind="component: {
|
||||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'POPUPS_FILTER/STOP_LABEL',
|
||||
value: actionNoStop
|
||||
value: stop
|
||||
}
|
||||
}"></div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'POPUPS_FILTER/STOP_LABEL',
|
||||
value: actionNoStop
|
||||
value: stop
|
||||
}
|
||||
}"></div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'POPUPS_FILTER/STOP_LABEL',
|
||||
value: actionNoStop
|
||||
value: stop
|
||||
}
|
||||
}"></div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'POPUPS_FILTER/STOP_LABEL',
|
||||
value: actionNoStop
|
||||
value: stop
|
||||
}
|
||||
}"></div>
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue