diff --git a/www/src/app/pages/analyzers/analyzers.page.html b/www/src/app/pages/analyzers/analyzers.page.html index a5f13ebe8..2e5c81f24 100644 --- a/www/src/app/pages/analyzers/analyzers.page.html +++ b/www/src/app/pages/analyzers/analyzers.page.html @@ -5,23 +5,36 @@

Analyzers ({{$ctrl.pagination.total}})

-
-
- - + +
+
+ +
- - - - - - - -
    +
    +
    +
    + +
    +
    + + + +
    +
    +
    +
    + +
    +
    + +
      +
      diff --git a/www/src/app/pages/jobs/jobs.controller.js b/www/src/app/pages/jobs/jobs.controller.js index 4f9e17d24..abd2b84f6 100644 --- a/www/src/app/pages/jobs/jobs.controller.js +++ b/www/src/app/pages/jobs/jobs.controller.js @@ -10,7 +10,6 @@ export default class JobsController extends PageController { $scope, $state, $interval, - AnalyzerService, JobService, SearchService, NotificationService, @@ -39,7 +38,8 @@ export default class JobsController extends PageController { this.search = { analyzerId: '', data: '', - dataType: '' + dataType: '', + jobType: '' }; this.state = this.localStorageService.get('jobs-page') || { @@ -47,6 +47,7 @@ export default class JobsController extends PageController { search: null, status: [], dataType: [], + jobType: [], analyzer: [] }, pagination: { @@ -88,6 +89,15 @@ export default class JobsController extends PageController { }); } + if (!_.isEmpty(this.filters.jobType)) { + criteria.push({ + _in: { + _field: 'type', + _values: this.filters.jobType + } + }); + } + if (!_.isEmpty(this.filters.analyzer)) { criteria.push({ _in: { @@ -97,13 +107,11 @@ export default class JobsController extends PageController { }); } - return _.isEmpty(criteria) - ? {} - : criteria.length === 1 - ? criteria[0] - : { - _and: criteria - }; + return _.isEmpty(criteria) ? {} : + criteria.length === 1 ? + criteria[0] : { + _and: criteria + }; } load(page) { @@ -118,11 +126,11 @@ export default class JobsController extends PageController { this.localStorageService.set('jobs-page', this.state); this.SearchService.configure({ - objectType: 'job', - filter: this.buildQuery(), - range: this.buildRange(), - sort: ['-createdAt'] - }) + objectType: 'job', + filter: this.buildQuery(), + range: this.buildRange(), + sort: ['-createdAt'] + }) .search() .then(response => { this.jobs = response.data; @@ -139,4 +147,4 @@ export default class JobsController extends PageController { self.load(self.pagination.current); } } -} +} \ No newline at end of file diff --git a/www/src/app/pages/jobs/jobs.module.js b/www/src/app/pages/jobs/jobs.module.js index 779c01fe1..3df519c6c 100644 --- a/www/src/app/pages/jobs/jobs.module.js +++ b/www/src/app/pages/jobs/jobs.module.js @@ -30,16 +30,11 @@ const jobsModule = angular component: 'jobsPage', resolve: { datatypes: ($q, AnalyzerService) => { - let defer = $q.defer(); - - AnalyzerService.list() - .then(() => { - defer.resolve(AnalyzerService.getTypes()); - }) - .catch(err => defer.reject(err)); - - return defer.promise; + return AnalyzerService.list() + .then(() => $q.resolve(AnalyzerService.getTypes())) + .catch(err => $q.reject(err)); }, + jobtypes: () => ['analyzer', 'responder'], analyzers: AnalyzerService => AnalyzerService.list().then(analyzers => _.sortBy( @@ -65,10 +60,10 @@ const jobsModule = angular let defered = $q.defer(); JobService.report($stateParams.id).then( - function(response) { + function (response) { defered.resolve(response.data); }, - function(response) { + function (response) { $log.error('Error while getting job report'); defered.reject(response); $state.go('main.jobs'); @@ -85,7 +80,8 @@ const jobsModule = angular templateUrl: tpl, bindings: { datatypes: '<', - analyzers: '<' + analyzers: '<', + jobtypes: '<' } }) .component('jobsList', { @@ -112,4 +108,4 @@ const jobsModule = angular }) .service('JobService', jobService); -export default jobsModule; +export default jobsModule; \ No newline at end of file diff --git a/www/src/app/pages/jobs/jobs.page.html b/www/src/app/pages/jobs/jobs.page.html index a872ce45c..7ae5eafa3 100644 --- a/www/src/app/pages/jobs/jobs.page.html +++ b/www/src/app/pages/jobs/jobs.page.html @@ -5,31 +5,51 @@

      Jobs History ({{$ctrl.pagination.total}})

      - -
      -
      - - + +
      +
      - - +
      +
      +
      + +
      + + +
      +
      +
      + +
      - - - - - - - -
        - +
        +
        + +
        +
        + + + +
        +
        +
        +
        +
        + +
          +
          +
          + +
          diff --git a/www/src/app/pages/responders/responders.module.js b/www/src/app/pages/responders/responders.module.js index bfec563d0..8ac0aaee7 100644 --- a/www/src/app/pages/responders/responders.module.js +++ b/www/src/app/pages/responders/responders.module.js @@ -20,15 +20,9 @@ const respondersModule = angular component: 'respondersPage', resolve: { datatypes: ($q, ResponderService) => { - let defer = $q.defer(); - - ResponderService.list() - .then(() => { - defer.resolve(ResponderService.getTypes()); - }) - .catch(err => defer.reject(err)); - - return defer.promise; + return ResponderService.list() + .then(() => $q.resolve(ResponderService.getTypes())) + .catch(err => $q.reject(err)); } }, data: { diff --git a/www/src/app/pages/responders/responders.page.html b/www/src/app/pages/responders/responders.page.html index 76a701d26..ddd2a1566 100644 --- a/www/src/app/pages/responders/responders.page.html +++ b/www/src/app/pages/responders/responders.page.html @@ -5,24 +5,36 @@

          Responders ({{$ctrl.pagination.total}})

          -
          -
          - - + +
          +
          + +
          - - - - - - - -
            +
            +
            +
            + +
            +
            + + + +
            +
            +
            +
            + +
            +
            + +
              +