diff --git a/frontend/app/scripts/app.js b/frontend/app/scripts/app.js index e97d50330e..c6d678cfb2 100644 --- a/frontend/app/scripts/app.js +++ b/frontend/app/scripts/app.js @@ -250,7 +250,24 @@ angular.module('thehive', [ controller: 'AdminAnalyzerTemplatesCtrl', controllerAs: 'vm', title: 'Analyzer templates administration', - permissions: ['manageAnalyzerTemplate'] + permissions: ['manageAnalyzerTemplate'], + resolve: { + appConfig: function($q, VersionSrv) { + var defer = $q.defer(); + + VersionSrv.get() + .then(function(config) { + // Check if Cortex is enabled + if(VersionSrv.hasCortexConnector()) { + defer.resolve(config); + } else { + defer.reject(); + } + }); + + return defer.promise; + }, + } }) .state('app.administration.custom-fields', { url: '/custom-fields', diff --git a/frontend/app/scripts/controllers/RootCtrl.js b/frontend/app/scripts/controllers/RootCtrl.js index b64db354c6..d69ecf94a2 100644 --- a/frontend/app/scripts/controllers/RootCtrl.js +++ b/frontend/app/scripts/controllers/RootCtrl.js @@ -15,6 +15,7 @@ angular.module('theHiveControllers').controller('RootCtrl', $rootScope.layoutSrv = AppLayoutSrv; $scope.appConfig = appConfig; + $scope.hasCortexConnector = VersionSrv.hasCortexConnector(); $scope.querystring = ''; $scope.view = { @@ -46,6 +47,7 @@ angular.module('theHiveControllers').controller('RootCtrl', }); $scope.appConfig = conf; + $scope.hasCortexConnector = VersionSrv.hasCortexConnector(); }); CaseTemplateSrv.list().then(function(templates) { diff --git a/frontend/app/scripts/services/api/VersionSrv.js b/frontend/app/scripts/services/api/VersionSrv.js index 9750314fc0..a303256013 100644 --- a/frontend/app/scripts/services/api/VersionSrv.js +++ b/frontend/app/scripts/services/api/VersionSrv.js @@ -32,6 +32,16 @@ return deferred.promise; }, + hasCortexConnector: function() { + try { + var service = cache.connectors.cortex; + + return service.enabled; + } catch (err) { + return false; + } + }, + hasCortex: function() { try { var service = cache.connectors.cortex; @@ -52,7 +62,7 @@ (misp.servers || []).forEach(function(item) { urls[item.name] = item.url; - }); + }); return urls; } }; diff --git a/frontend/app/views/components/header.component.html b/frontend/app/views/components/header.component.html index 1a2ba02a5b..7008041519 100644 --- a/frontend/app/views/components/header.component.html +++ b/frontend/app/views/components/header.component.html @@ -24,25 +24,6 @@ New Case -