mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-10-24 23:49:37 +08:00
Merge pull request #8943 from jmchilton/jobs_list_refactor
Move Jobs updated time display logic to client.
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
<template>
|
||||
<span class="utc-time" v-if="mode == 'date'" :title="elapsedTime">
|
||||
{{ fullDate }}
|
||||
</span>
|
||||
<span class="utc-time utc-time-elapsed" v-else :title="fullDate">
|
||||
{{ elapsedTime }}
|
||||
</span>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import moment from "moment";
|
||||
|
||||
export default {
|
||||
props: {
|
||||
date: {
|
||||
type: String,
|
||||
required: true
|
||||
},
|
||||
mode: {
|
||||
type: String,
|
||||
default: "date" // or elapsed
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
elapsedTime: function() {
|
||||
return moment(moment.utc(this.date)).from(moment().utc());
|
||||
},
|
||||
fullDate: function() {
|
||||
return moment.utc(this.date).format();
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
@@ -166,6 +166,9 @@
|
||||
{{ data.value["id"] }}
|
||||
</b-link>
|
||||
</template>
|
||||
<template v-slot:cell(update_time)="data">
|
||||
<utc-date :date="data.value" mode="elapsed" />
|
||||
</template>
|
||||
<template v-slot:row-details="row">
|
||||
<b-card>
|
||||
<h5>Command Line</h5>
|
||||
@@ -181,9 +184,11 @@
|
||||
|
||||
<script>
|
||||
import { getAppRoot } from "onload/loadConfig";
|
||||
import UtcDate from "components/UtcDate";
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
components: { UtcDate },
|
||||
data() {
|
||||
return {
|
||||
jobsItems: [],
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
"latex-parser": "^0.6.2",
|
||||
"latex-to-unicode-converter": "^0.5.2",
|
||||
"markdown-it": "^8.4.2",
|
||||
"moment": "2.20.1",
|
||||
"popper.js": "^1.14.7",
|
||||
"pyre-to-regexp": "^0.0.5",
|
||||
"raven-js": "^3.27.0",
|
||||
|
||||
@@ -1579,14 +1579,6 @@ class AdminGalaxy(controller.JSAppLauncher, AdminActions, UsesQuotaMixin, QuotaP
|
||||
def prepare_jobs_list(jobs):
|
||||
res = []
|
||||
for job in jobs:
|
||||
delta = datetime.utcnow() - job.update_time
|
||||
update_time = ""
|
||||
if delta.days > 0:
|
||||
update_time = '%s hours ago' % (delta.days * 24 + int(delta.seconds / 60 / 60))
|
||||
elif delta > timedelta(minutes=59):
|
||||
update_time = '%s hours ago' % int(delta.seconds / 60 / 60)
|
||||
else:
|
||||
update_time = '%s minutes ago' % int(delta.seconds / 60)
|
||||
inputs = ""
|
||||
try:
|
||||
inputs = ", ".join(['{} {}'.format(da.dataset.id, da.dataset.state) for da in job.input_datasets])
|
||||
@@ -1598,7 +1590,7 @@ class AdminGalaxy(controller.JSAppLauncher, AdminActions, UsesQuotaMixin, QuotaP
|
||||
'info_url': "{}?jobid={}".format(web.url_for(controller="admin", action="job_info"), job.id)
|
||||
},
|
||||
'user': job.history.user.email if job.history and job.history.user else 'anonymous',
|
||||
'update_time': update_time,
|
||||
'update_time': job.update_time.isoformat(),
|
||||
'tool_id': job.tool_id,
|
||||
'state': job.state,
|
||||
'input_dataset': inputs,
|
||||
|
||||
Reference in New Issue
Block a user