Repository: incubator-ignite Updated Branches: refs/heads/ignite-1121 9ab35ffb7 -> dd27f3c00
IGNITE-843 Added support for conditional required. Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/14bb9dcd Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/14bb9dcd Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/14bb9dcd Branch: refs/heads/ignite-1121 Commit: 14bb9dcd191c43c40e4a1002cb5f2e8d498b56f1 Parents: d660f93 Author: AKuznetsov <akuznet...@gridgain.com> Authored: Mon Jul 13 15:55:03 2015 +0700 Committer: AKuznetsov <akuznet...@gridgain.com> Committed: Mon Jul 13 15:55:03 2015 +0700 ---------------------------------------------------------------------- .../nodejs/controllers/caches-controller.js | 11 +++++++++++ .../nodejs/controllers/common-module.js | 3 +++ .../nodejs/views/includes/controls.jade | 4 ++-- 3 files changed, 16 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/14bb9dcd/modules/web-control-center/nodejs/controllers/caches-controller.js ---------------------------------------------------------------------- diff --git a/modules/web-control-center/nodejs/controllers/caches-controller.js b/modules/web-control-center/nodejs/controllers/caches-controller.js index 4a840d8..d76e80f 100644 --- a/modules/web-control-center/nodejs/controllers/caches-controller.js +++ b/modules/web-control-center/nodejs/controllers/caches-controller.js @@ -86,6 +86,17 @@ controlCenterModule.controller('cachesController', ['$scope', '$http', 'commonFu $scope.caches = []; + $scope.required = function (field) { + if (field.label == 'Eviction policy') { + var backupItem = $scope.backupItem; + + return backupItem.swapEnabled || + (commonFunctions.isDefined(backupItem.offHeapMaxMemory) && backupItem.offHeapMaxMemory >= 0); + } + + return false; + }; + // When landing on the page, get caches and show them. $http.post('caches/list') .success(function (data) { http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/14bb9dcd/modules/web-control-center/nodejs/controllers/common-module.js ---------------------------------------------------------------------- diff --git a/modules/web-control-center/nodejs/controllers/common-module.js b/modules/web-control-center/nodejs/controllers/common-module.js index fa230db..0200223 100644 --- a/modules/web-control-center/nodejs/controllers/common-module.js +++ b/modules/web-control-center/nodejs/controllers/common-module.js @@ -70,6 +70,9 @@ controlCenterModule.service('commonFunctions', ['$alert', function ($alert) { return lines.join(""); }, + isDefined: function (v) { + return !(v === undefined || v === null); + }, errorMessage: errorMessage, showError: function (msg) { if (msgModal) http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/14bb9dcd/modules/web-control-center/nodejs/views/includes/controls.jade ---------------------------------------------------------------------- diff --git a/modules/web-control-center/nodejs/views/includes/controls.jade b/modules/web-control-center/nodejs/views/includes/controls.jade index de2b76f..8231a58 100644 --- a/modules/web-control-center/nodejs/views/includes/controls.jade +++ b/modules/web-control-center/nodejs/views/includes/controls.jade @@ -95,7 +95,7 @@ mixin form-row - var lblClasses = ['col-sm-2'] - var fieldMdl = 'getModel(backupItem, field.path)[field.model]'; - - var fieldCommon = {'ng-model': fieldMdl, 'ng-required': 'field.required'}; + - var fieldCommon = {'ng-model': fieldMdl, 'ng-required': 'field.required || required(field)'}; div(ng-switch='field.type') div.checkbox.col-sm-6(ng-switch-when='check') @@ -140,7 +140,7 @@ mixin form-row div(ng-switch-when='dropdown-details' ng-hide='{{field.hide}}') - var expanded = 'field.details[' + fieldMdl + '].expanded' - label(class=lblClasses ng-class='{required: field.required}') {{field.label}}: + label(class=lblClasses ng-class='{true: "required"}[field.required || required(field)]') {{field.label}}: .col-sm-4 +tipField('field.tip') .input-tip