Add generalized resource to job results view

This commit is contained in:
gconsidine 2018-02-06 15:55:44 -05:00 committed by Jake McDermott
parent 41d3d29ae8
commit 07ff25a241
2 changed files with 25 additions and 12 deletions

View File

@ -3,7 +3,8 @@ import hasAnsi from 'has-ansi';
let vm;
let ansi;
let job;
let resource;
let related;
let container;
let $timeout;
let $sce;
@ -38,7 +39,7 @@ const TIME_EVENTS = [
];
function JobsIndexController (
_job_,
_resource_,
_$sce_,
_$timeout_,
_$scope_,
@ -50,11 +51,12 @@ function JobsIndexController (
$compile = _$compile_;
$scope = _$scope_;
$q = _$q_;
job = _job_;
resource = _resource_;
ansi = new Ansi();
related = getRelated();
const events = job.get('related.job_events.results');
const events = resource.get(`related.${related}.results`);
const parsed = parseEvents(events);
const html = $sce.trustAsHtml(parsed.html);
@ -98,9 +100,20 @@ function JobsIndexController (
});
}
function getRelated () {
const name = resource.constructor.name;
switch (name) {
case 'ProjectUpdateModel':
return 'events';
case 'JobModel':
return 'job_events';
}
}
function next () {
const config = {
related: 'job_events',
related,
page: meta.page.cache[meta.page.cache.length - 1].page + 1,
params: {
order_by: 'start_line'
@ -108,7 +121,7 @@ function next () {
};
console.log('[2] getting next page', config.page, meta.page.cache);
return job.goToPage(config)
return resource.goToPage(config)
.then(data => {
if (!data || !data.results) {
return $q.resolve();
@ -125,7 +138,7 @@ function next () {
function prev () {
const config = {
related: 'job_events',
related,
page: meta.page.cache[0].page - 1,
params: {
order_by: 'start_line'
@ -133,7 +146,7 @@ function prev () {
};
console.log('[2] getting previous page', config.page, meta.page.cache);
return job.goToPage(config)
return resource.goToPage(config)
.then(data => {
if (!data || !data.results) {
return $q.resolve();
@ -569,7 +582,7 @@ function onScroll () {
}
JobsIndexController.$inject = [
'job',
'resource',
'$sce',
'$timeout',
'$scope',

View File

@ -10,7 +10,7 @@ const indexTemplate = require('~features/output/index.view.html');
const MODULE_NAME = 'at.features.output';
function resolveJob (Job, ProjectUpdate, AdHocCommand, SystemJob, WorkflowJob, $stateParams) {
function resolveResource (Job, ProjectUpdate, AdHocCommand, SystemJob, WorkflowJob, $stateParams) {
const { id } = $stateParams;
const { type } = $stateParams;
@ -73,14 +73,14 @@ function JobsRun ($stateExtender, strings) {
}
},
resolve: {
job: [
resource: [
'JobModel',
'ProjectUpdateModel',
'AdHocCommandModel',
'SystemJobModel',
'WorkflowJobModel',
'$stateParams',
resolveJob
resolveResource
]
}
});