diff --git a/ui/app/components/job-page/parts/children.js b/ui/app/components/job-page/parts/children.js
index 20f72910d..37aed7bae 100644
--- a/ui/app/components/job-page/parts/children.js
+++ b/ui/app/components/job-page/parts/children.js
@@ -19,9 +19,6 @@ export default class Children extends Component.extend(Sortable) {
sortDescending = null;
currentPage = null;
- // Provide an action with access to the router
- gotoJob() {}
-
@readOnly('userSettings.pageSize') pageSize;
@computed('job.taskGroups.[]')
diff --git a/ui/app/components/job-row.js b/ui/app/components/job-row.js
index 7413827b0..5d5dbd056 100644
--- a/ui/app/components/job-row.js
+++ b/ui/app/components/job-row.js
@@ -1,5 +1,6 @@
-import { inject as service } from '@ember/service';
import Component from '@ember/component';
+import { action } from '@ember/object';
+import { inject as service } from '@ember/service';
import { lazyClick } from '../helpers/lazy-click';
import { classNames, tagName } from '@ember-decorators/component';
import classic from 'ember-classic-decorator';
@@ -8,8 +9,9 @@ import classic from 'ember-classic-decorator';
@tagName('tr')
@classNames('job-row', 'is-interactive')
export default class JobRow extends Component {
- @service system;
+ @service router;
@service store;
+ @service system;
job = null;
@@ -17,9 +19,15 @@ export default class JobRow extends Component {
// based on the relationship of this job to others.
context = 'independent';
- onClick() {}
-
click(event) {
- lazyClick([this.onClick, event]);
+ lazyClick([this.gotoJob, event]);
+ }
+
+ @action
+ gotoJob() {
+ const { job } = this;
+ this.router.transitionTo('jobs.job', job, {
+ queryParams: { namespace: job.get('namespace.name') },
+ });
}
}
diff --git a/ui/app/controllers/jobs/index.js b/ui/app/controllers/jobs/index.js
index ff38e023b..f47792c03 100644
--- a/ui/app/controllers/jobs/index.js
+++ b/ui/app/controllers/jobs/index.js
@@ -260,11 +260,4 @@ export default class IndexController extends Controller.extend(
setFacetQueryParam(queryParam, selection) {
this.set(queryParam, serialize(selection));
}
-
- @action
- gotoJob(job) {
- this.transitionToRoute('jobs.job', job.get('plainId'), {
- queryParams: { namespace: job.get('namespace.name') },
- });
- }
}
diff --git a/ui/app/templates/components/job-page/parameterized.hbs b/ui/app/templates/components/job-page/parameterized.hbs
index 30368532a..0277a089e 100644
--- a/ui/app/templates/components/job-page/parameterized.hbs
+++ b/ui/app/templates/components/job-page/parameterized.hbs
@@ -12,7 +12,6 @@
@sortProperty={{@sortProperty}}
@sortDescending={{@sortDescending}}
@currentPage={{@currentPage}}
- @gotoJob={{@gotoJob}}
/>