summaryrefslogtreecommitdiff
path: root/misc/dashboard/godashboard/gobuild.py
diff options
context:
space:
mode:
authorAndrew Gerrand <adg@golang.org>2010-03-31 17:01:16 +1100
committerAndrew Gerrand <adg@golang.org>2010-03-31 17:01:16 +1100
commit867aa94eb6c414512801b14f5931dc27d51cd3d4 (patch)
treed7b9a10e875b45f344da4652c497574d158e3b3e /misc/dashboard/godashboard/gobuild.py
parent12ae4e7f38eff90d232f37dd52041acff0dd0487 (diff)
downloadgolang-867aa94eb6c414512801b14f5931dc27d51cd3d4.tar.gz
godashboard: new stylesheet, build status pagination
R=rsc, gri, r CC=golang-dev http://codereview.appspot.com/822044
Diffstat (limited to 'misc/dashboard/godashboard/gobuild.py')
-rw-r--r--misc/dashboard/godashboard/gobuild.py23
1 files changed, 22 insertions, 1 deletions
diff --git a/misc/dashboard/godashboard/gobuild.py b/misc/dashboard/godashboard/gobuild.py
index dcae7c8ad..2dfba433b 100644
--- a/misc/dashboard/godashboard/gobuild.py
+++ b/misc/dashboard/godashboard/gobuild.py
@@ -122,9 +122,25 @@ class MainPage(webapp.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/html; charset=utf-8'
+ try:
+ page = int(self.request.get('p', 1))
+ if not page > 0:
+ raise
+ except:
+ page = 1
+
+ try:
+ num = int(self.request.get('n', N))
+ if num <= 0 or num > 200:
+ raise
+ except:
+ num = N
+
+ offset = (page-1) * num
+
q = Commit.all()
q.order('-__key__')
- results = q.fetch(N)
+ results = q.fetch(num, offset)
revs = [toRev(r) for r in results]
builders = {}
@@ -144,6 +160,11 @@ class MainPage(webapp.RequestHandler):
builders.sort()
values = {"revs": revs, "builders": [v for k,v in builders]}
+ values['num'] = num
+ values['prev'] = page - 1
+ if len(results) == num:
+ values['next'] = page + 1
+
path = os.path.join(os.path.dirname(__file__), 'main.html')
self.response.out.write(template.render(path, values))