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

Reply via email to