You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ak...@apache.org on 2015/09/14 10:36:33 UTC
ignite git commit: IGNITE-843 Hide reset button if nothing to reset.
Repository: ignite
Updated Branches:
refs/heads/ignite-843 050968083 -> cefd00952
IGNITE-843 Hide reset button if nothing to reset.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/cefd0095
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/cefd0095
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/cefd0095
Branch: refs/heads/ignite-843
Commit: cefd009525dcabf7a625afcfe42162b350560ca7
Parents: 0509680
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Mon Sep 14 15:37:13 2015 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Mon Sep 14 15:37:13 2015 +0700
----------------------------------------------------------------------
.../main/js/controllers/caches-controller.js | 9 ++++
.../main/js/controllers/clusters-controller.js | 9 ++++
.../src/main/js/controllers/common-module.js | 47 +++++++++++++++++---
.../main/js/controllers/metadata-controller.js | 9 ++++
.../src/main/js/views/includes/controls.jade | 2 +-
5 files changed, 70 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/cefd0095/modules/control-center-web/src/main/js/controllers/caches-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/caches-controller.js b/modules/control-center-web/src/main/js/controllers/caches-controller.js
index a0862ee..db8ee4f 100644
--- a/modules/control-center-web/src/main/js/controllers/caches-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/caches-controller.js
@@ -566,6 +566,15 @@ controlCenterModule.controller('cachesController', [
);
};
+ $scope.resetItemVisible = function (group) {
+ var resetTo = $scope.selectedItem;
+
+ if (!$common.isDefined(resetTo))
+ resetTo = prepareNewItem();
+
+ return $common.resetItemVisible(group, $scope.backupItem, resetTo);
+ };
+
$scope.resetItem = function (group) {
var resetTo = $scope.selectedItem;
http://git-wip-us.apache.org/repos/asf/ignite/blob/cefd0095/modules/control-center-web/src/main/js/controllers/clusters-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/clusters-controller.js b/modules/control-center-web/src/main/js/controllers/clusters-controller.js
index 0009069..4f5a46d 100644
--- a/modules/control-center-web/src/main/js/controllers/clusters-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/clusters-controller.js
@@ -485,6 +485,15 @@ controlCenterModule.controller('clustersController', ['$scope', '$controller', '
);
};
+ $scope.resetItemVisible = function (group) {
+ var resetTo = $scope.selectedItem;
+
+ if (!$common.isDefined(resetTo))
+ resetTo = prepareNewItem();
+
+ return $common.resetItemVisible(group, $scope.backupItem, resetTo);
+ };
+
$scope.resetItem = function (group) {
var resetTo = $scope.selectedItem;
http://git-wip-us.apache.org/repos/asf/ignite/blob/cefd0095/modules/control-center-web/src/main/js/controllers/common-module.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/common-module.js b/modules/control-center-web/src/main/js/controllers/common-module.js
index 7c1fc48..0c33785 100644
--- a/modules/control-center-web/src/main/js/controllers/common-module.js
+++ b/modules/control-center-web/src/main/js/controllers/common-module.js
@@ -483,12 +483,11 @@ controlCenterModule.service('$common', [
var newPopover = $popover(el, {content: message});
$timeout(function () {
- // Workaround for FireFox browser.
- newPopover.$options.container;
+ if (isDefined(newPopover.$options.container)) {
+ newPopover.show();
- newPopover.show();
-
- popover = newPopover;
+ popover = newPopover;
+ }
}, 100);
$timeout(function () { newPopover.hide() }, 5000);
@@ -704,6 +703,44 @@ controlCenterModule.service('$common', [
document.body.removeChild(file);
},
+ resetItemVisible: function (group, curItem, srcItem) {
+ function _compareField(field) {
+ var curModel = getModel(curItem, field);
+ var srcModel = getModel(srcItem, field);
+
+ if (field.model == 'kind' && isDefined(curModel.kind)) {
+ if (curModel.kind != srcModel.kind)
+ return true;
+
+ if (_compareFields(field.details[curModel.kind].fields))
+ return true;
+ }
+
+ var curValue = curModel[field.model];
+ var srcValue = srcModel[field.model];
+
+ var isCur = isDefined(curValue);
+ var isSrc = isDefined(srcValue);
+
+ if ((isCur && !isSrc) || (!isCur && isSrc) || (isCur && isSrc && !_.isEqual(curValue, srcValue)))
+ return true;
+
+ return false;
+ }
+
+ function _compareFields(fields) {
+ for (var fldIx = 0; fldIx < fields.length; fldIx++) {
+ var field = fields[fldIx];
+
+ if (_compareField(field))
+ return true;
+ }
+
+ return false;
+ }
+
+ return _compareFields(group.fields);
+ },
resetItem: function (backupItem, selectedItem, groups, group) {
function restoreFields(fields) {
// Reset fields by one.
http://git-wip-us.apache.org/repos/asf/ignite/blob/cefd0095/modules/control-center-web/src/main/js/controllers/metadata-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/metadata-controller.js b/modules/control-center-web/src/main/js/controllers/metadata-controller.js
index 0a9b456..c151054 100644
--- a/modules/control-center-web/src/main/js/controllers/metadata-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/metadata-controller.js
@@ -1152,6 +1152,15 @@ controlCenterModule.controller('metadataController', [
$scope.ui.markDirty();
};
+ $scope.resetItemVisible = function (group) {
+ var resetTo = $scope.selectedItem;
+
+ if (!$common.isDefined(resetTo))
+ resetTo = prepareNewItem();
+
+ return $common.resetItemVisible(group, $scope.backupItem, resetTo);
+ };
+
$scope.resetItem = function (group) {
var resetTo = $scope.selectedItem;
http://git-wip-us.apache.org/repos/asf/ignite/blob/cefd0095/modules/control-center-web/src/main/js/views/includes/controls.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/includes/controls.jade b/modules/control-center-web/src/main/js/views/includes/controls.jade
index 569c28b..92746f1 100644
--- a/modules/control-center-web/src/main/js/views/includes/controls.jade
+++ b/modules/control-center-web/src/main/js/views/includes/controls.jade
@@ -444,7 +444,7 @@ mixin groups(groups, dataSource)
label(id='{{::group.group + "-title"}}')
i.tipLabel.fa.fa-question-circle(ng-if='group.tip' bs-tooltip='joinTip(group.tip)' type='button')
i.tipLabel.fa.fa-question-circle.blank(ng-if='!group.tip')
- i.pull-right.fa.fa-undo(ng-click='resetItem(group.group);$event.stopPropagation()' bs-tooltip data-title='Undo unsaved changes')
+ i.pull-right.fa.fa-undo(ng-show='resetItemVisible(group)' ng-click='resetItem(group.group);$event.stopPropagation()' bs-tooltip data-title='Undo unsaved changes')
.panel-collapse(role='tabpanel' bs-collapse-target id='{{::group.group}}' number='{{::group.number}}')
.panel-body
.col-sm-6(id='{{::group.group + "-left"}}')