Add dynamic content to hardware inventory page
Change-Id: I3b34e58ada63c32e2476e37b7116232f5763bbdb
Signed-off-by: Iftekharul Islam <iislam@us.ibm.com>
diff --git a/app/server-health/controllers/inventory-overview-controller.js b/app/server-health/controllers/inventory-overview-controller.js
index 3eda37b..81fd833 100644
--- a/app/server-health/controllers/inventory-overview-controller.js
+++ b/app/server-health/controllers/inventory-overview-controller.js
@@ -19,6 +19,48 @@
'dataService',
function($scope, $window, APIUtils, dataService){
$scope.dataService = dataService;
+ $scope.hardwares = [];
+ $scope.originalData = {};
+ $scope.customSearch = "";
+ $scope.searchTerms = [];
+
+ APIUtils.getHardwares(function(data, originalData){
+ $scope.hardwares = data;
+ $scope.originalData = JSON.stringify(originalData);
+ });
+
+ $scope.doSearchOnEnter = function (event) {
+ var search = $scope.customSearch.replace(/^\s+/g,'').replace(/\s+$/g,'');
+ if (event.keyCode === 13 &&
+ search.length >= 2) {
+ $scope.searchTerms = $scope.customSearch.split(" ");
+ }else{
+ if(search.length == 0){
+ $scope.searchTerms = [];
+ }
+ }
+ };
+
+ $scope.doSearchOnClick = function() {
+ var search = $scope.customSearch.replace(/^\s+/g,'').replace(/\s+$/g,'');
+ if (search.length >= 2) {
+ $scope.searchTerms = $scope.customSearch.split(" ");
+ }else{
+ if(search.length == 0){
+ $scope.searchTerms = [];
+ }
+ }
+ }
+
+ $scope.filterBySearchTerms = function(hardware){
+
+ if(!$scope.searchTerms.length) return true;
+
+ for(var i = 0, length = $scope.searchTerms.length; i < length; i++){
+ if(hardware.search_text.indexOf($scope.searchTerms[i].toLowerCase()) == -1) return false;
+ }
+ return true;
+ }
}
]
);