use non actual options

This commit is contained in:
Yuri Kuznetsov
2023-11-07 14:53:05 +02:00
parent 27b2b2dda7
commit 552681ed83
3 changed files with 13 additions and 4 deletions
@@ -63,7 +63,10 @@ class CaseDetailActionHandler extends ActionHandler {
const acl = this.view.getAcl();
const metadata = this.view.getMetadata();
if (['Closed', 'Rejected', 'Duplicate'].includes(model.get('status'))) {
/** @type {string[]} */
const notActualStatuses = metadata.get('entityDefs.Case.fields.status.notActualOptions') || [];
if (notActualStatuses.includes(model.get('status'))) {
return false;
}
@@ -44,7 +44,10 @@ class DetailActions extends ActionHandler {
isCompleteAvailable() {
const status = this.view.model.get('status');
return !['Completed', 'Canceled'].includes(status);
/** @type {string[]} */
const notActualStatuses = this.view.getMetadata().get('entityDefs.Task.fields.status.notActualOptions') || [];
return !notActualStatuses.includes(status);
}
}
+5 -2
View File
@@ -42,15 +42,18 @@ class TaskMenuHandler extends ActionHandler {
// noinspection JSUnusedGlobalSymbols
isCompleteAvailable() {
const status = this.view.model.get('status');
const view = /** @type {module:views/detail} */this.view;
if (view.getRecordView().isEditMode()) {
return false;
}
const status = view.model.get('status');
/** @type {string[]} */
const notActualStatuses = this.view.getMetadata().get('entityDefs.Task.fields.status.notActualOptions') || [];
return !['Completed', 'Canceled'].includes(status);
return !notActualStatuses.includes(status);
}
}