Disable removal of rainloop.user script

This commit is contained in:
djmaze 2021-01-19 17:42:38 +01:00
parent ee37ad67bb
commit 76bc8aa107
3 changed files with 9 additions and 7 deletions

View file

@ -13,6 +13,7 @@ class SieveScriptModel extends AbstractModel
active: false,
body: '',
exists: false,
nameError: false,
bodyError: false,
deleteAccess: false,
@ -72,6 +73,8 @@ class SieveScriptModel extends AbstractModel
} else {
script.filters([]);
}
script.canBeDeleted(0 !== json.name.indexOf('rainloop.user'));
script.exists(true);
script.hasChanges(false);
}
return script;

View file

@ -21,7 +21,6 @@ class SieveScriptPopupView extends AbstractViewNext {
super();
ko.addObservablesTo(this, {
isNew: true,
saveError: false,
saveErrorText: '',
rawActive: false,
@ -42,7 +41,7 @@ class SieveScriptPopupView extends AbstractViewNext {
return false;
}
if (this.isNew() && SieveStore.scripts.find(item => item.name() === script.name())) {
if (!script.exists() && SieveStore.scripts.find(item => item.name() === script.name())) {
script.nameError(true);
return false;
}
@ -55,6 +54,7 @@ class SieveScriptPopupView extends AbstractViewNext {
this.saving = false;
if (StorageResultType.Success === result && data && data.Result) {
script.exists(true);
script.hasChanges(false);
SieveStore.scripts.push(script);
} else {
@ -119,7 +119,6 @@ class SieveScriptPopupView extends AbstractViewNext {
onShow(oScript) {
this.script(oScript);
this.rawActive(!oScript.allowFilters());
this.isNew(!oScript.name());
this.saveError(false);
}

View file

@ -3,8 +3,8 @@
<div class="modal-header">
<button type="button" class="close" data-bind="command: $root.cancelCommand">×</button>
<h3>
<span class="i18n" data-i18n="POPUPS_SIEVE_SCRIPT/TITLE_CREATE" data-bind="visible: $root.isNew"></span>
<span class="i18n" data-i18n="POPUPS_SIEVE_SCRIPT/TITLE_EDIT" data-bind="visible: !$root.isNew()"></span>
<span class="i18n" data-i18n="POPUPS_SIEVE_SCRIPT/TITLE_CREATE" data-bind="visible: !exists()"></span>
<span class="i18n" data-i18n="POPUPS_SIEVE_SCRIPT/TITLE_EDIT" data-bind="visible: exists"></span>
</h3>
</div>
<div class="modal-body">
@ -12,11 +12,11 @@
<div class="control-group" data-bind="css: {'error': nameError}">
<div class="controls">
<input type="text" class="i18n span5"
data-bind="value: name, hasFocus: $root.isNew, visible: $root.isNew"
data-bind="value: name, hasFocus: !exists(), visible: !exists()"
autocorrect="off" autocapitalize="off" spellcheck="false"
data-i18n="[placeholder]POPUPS_SIEVE_SCRIPT/SCRIPT_NAME"
/>
<span data-bind="text: name, visible: !$root.isNew()"></span>
<span data-bind="text: name, visible: exists"></span>
</div>
</div>