3 from __future__
import print_function
6 ATLAS beam spot web page for displaying beam spot job data.
9 __author__ =
'Juerg Beringer'
10 __version__ =
'JobBrowser.py atlas/athena'
12 from BeamSpotWebPage
import BeamSpotWebPage
14 from InDetBeamSpotExample.Utils
import blankIfNone
19 <script type="text/javascript" src="../js/jquery-latest.js"></script>
20 <script type="text/javascript" src="../js/jquery.tablesorter.js"></script>
21 <script type="text/javascript" id="js">
22 $(document).ready(function() {
23 $("table").tablesorter({
24 headers: { 0: { sorter: "shortDate" } },
31 tableHeader =
"""<table cellspacing="0" class="tablesorter">
55 <h3>%s task(s), displaying last %i tasks:</h3>
61 <h3>%s task(s) for dataset %s:</h3>
65 taskCountForRun =
"""\
67 <h3>%s task(s) for run %s:</h3>
75 BeamSpotWebPage.__init__(self)
76 self.
pageConfig[
'pageTitle'] =
'ATLAS Beam Spot Jobs'
80 with TaskManager(self.
globalConfig[
'taskDb'])
as taskman:
82 table = taskCountForRun % (taskman.getNTasks([
'where RUNNR =',DbParam(args[
'r'])]), args[
'r'])
83 taskIter = taskman.taskIterDict(
'*', [
'where RUNNR =',DbParam(args[
'r']),
'order by UPDATED'] )
85 table = taskCountForDS % (taskman.getNTasks([
"where DSNAME like '%%%s%%'" % args[
'd']]), args[
'd'])
86 taskIter = taskman.taskIterDict(
'*', [
"where DSNAME like '%%%s%%' order by UPDATED" % args[
'd']] )
88 limit =
int(args[
'limit'])
if 'limit' in args
else 50
91 table = taskCount % taskman.getNTasks()
92 taskIter = taskman.taskIterDict(qual=(
'order by UPDATED desc',))
94 table = taskCountLimit % (taskman.getNTasks(),limit)
95 taskIter = taskman.taskIterDict(qual=(
'order by UPDATED desc',),limit=limit)
99 taskname = t[
'TASKNAME']
101 table +=
"<td>%s</td>" % (time.ctime(t[
'UPDATED']))
102 table +=
"<td>%s</td>" % (dsname)
103 table +=
"<td>%s</td>" % (taskname)
104 table +=
"<td>%s</td>" % (
'<br>'.
join(t[
'ATLREL'].
split(
';')))
105 table +=
"<td>%s</td>" % (t[
'NJOBS'])
109 table +=
' <a href="../details?d=%s&t=%s">Details</a>' %(dsname,taskname)
110 table +=
' <a href="../files?u=%s/%s">Files</a>' %(dsname,taskname)
112 table +=
"<td>%s</td>" % (
blankIfNone(t[
'RESULTLINKS']))
114 table +=
"</tbody></table>\n"
119 if __name__ ==
'__main__':