Author: eallen
Date: 2008-11-19 17:19:40 -0500 (Wed, 19 Nov 2008)
New Revision: 2846
Modified:
mgmt/trunk/cumin/python/cumin/job.py
mgmt/trunk/cumin/python/cumin/job.strings
mgmt/trunk/cumin/python/cumin/page.py
mgmt/trunk/cumin/python/cumin/page.strings
Log:
Added 'Your Jobs' tab to Home tabset
Modified: mgmt/trunk/cumin/python/cumin/job.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/job.py 2008-11-19 21:03:27 UTC (rev 2845)
+++ mgmt/trunk/cumin/python/cumin/job.py 2008-11-19 22:19:40 UTC (rev 2846)
@@ -238,7 +238,8 @@
return "j.custom_id = %(custom_id)s"
def get_find_sql_values(self, session, pool):
- return {"custom_id": self.job_search.get(session), "pool":
pool.id}
+ return {"custom_id": self.job_search.get(session)}
+ #return {"custom_id": self.job_search.get(session), "pool":
pool.id}
def get_full_item_count(self, session, *args):
# request item count will phase=="a"
Modified: mgmt/trunk/cumin/python/cumin/job.strings
===================================================================
--- mgmt/trunk/cumin/python/cumin/job.strings 2008-11-19 21:03:27 UTC (rev 2845)
+++ mgmt/trunk/cumin/python/cumin/job.strings 2008-11-19 22:19:40 UTC (rev 2846)
@@ -33,6 +33,7 @@
left outer join job_stats as c on c.id = j.stats_curr_id
left outer join job_stats as p on p.id = j.stats_prev_id
inner join scheduler as s on s.id = j.scheduler_id
+inner join submitter as b on b.id = j.submitter_id
[JobSet.count_sql]
select count(1)
Modified: mgmt/trunk/cumin/python/cumin/page.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/page.py 2008-11-19 21:03:27 UTC (rev 2845)
+++ mgmt/trunk/cumin/python/cumin/page.py 2008-11-19 22:19:40 UTC (rev 2846)
@@ -210,6 +210,7 @@
self.add_child(heading)
self.add_tab(self.OverviewTab(app, "over"))
+ self.add_tab(self.MyGridJobs(app, "jobs"))
self.add_tab(self.AccountTab(app, "acct"))
def render_change_password_href(self, session):
@@ -237,6 +238,23 @@
self.frame.change_password.show(branch)
return branch.marshal()
+ class MyGridJobs(JobTab):
+ def render_title(self, session):
+ return "Your Grid Jobs %s" %
fmt_count(self.get_item_count(session))
+
+ def render_sql_where(self, session, *args):
+ user = session.user_session.subject.name
+ elems = list()
+ elems.append("b.name like '%s%s'" % (user, "%"))
+ elems.append(self.get_phase_sql(session))
+ return "where %s" % " and ".join(elems)
+
+ def get_sql_values(self, session, *args):
+ pass
+
+ def get_visible_columns(self, session):
+ return self.get_request_visible_columns(session, ["custom_group",
"scheduler", "submitter"])
+
class MessagingView(TabbedModeSet):
def __init__(self, app, name):
super(MessagingView, self).__init__(app, name)
Modified: mgmt/trunk/cumin/python/cumin/page.strings
===================================================================
--- mgmt/trunk/cumin/python/cumin/page.strings 2008-11-19 21:03:27 UTC (rev 2845)
+++ mgmt/trunk/cumin/python/cumin/page.strings 2008-11-19 22:19:40 UTC (rev 2846)
@@ -228,3 +228,27 @@
<div class="TabbedModeSet mode">{mode}</div>
</div>
+
+[MyGridJobs.html]
+ <div class="rfloat">{phase}</div>
+<form id="{id}" style="clear:right;" method="post"
action="?">
+
+ <div class="sactions">
+ <h2>Act on Selected Jobs:</h2>
+ {hold} {release} {remove}
+ </div>
+
+ <table class="mobjects">
+ <thead>
+ <tr>
+ <th class="setnav" colspan="{column_count}">
+ <div class="rfloat">{page}</div>
+ {count}
+ </th>
+ </tr>
+ <tr>{headers}</tr>
+ </thead>
+ <tbody>{items}</tbody>
+ </table>
+ <div>{hidden_inputs}</div>
+</form>
Show replies by date