From c360d9f57e6db0d664db46005fcd1504300989b3 Mon Sep 17 00:00:00 2001 From: philipp Date: Thu, 27 Jul 2017 22:01:29 +0000 Subject: [PATCH] rodelbahn_view is rendered now. git-svn-id: http://www.winterrodeln.org/svn/wradmin/trunk@2680 7aebc617-e5e2-0310-91dc-80fb5f6d2477 --- wradmin/__init__.py | 3 ++- wradmin/controllers/rodelbahn.py | 20 ++++++++++---------- wradmin/genshi.py | 4 ++++ wradmin/templates/rodelbahn_view.html | 4 ++-- 4 files changed, 18 insertions(+), 13 deletions(-) diff --git a/wradmin/__init__.py b/wradmin/__init__.py index 0a2ef02..c2c8add 100644 --- a/wradmin/__init__.py +++ b/wradmin/__init__.py @@ -50,7 +50,8 @@ def rodelbahn_update(): @app.route("/rodelbahn/view/") def rodelbahn_view(id): - pass + get_db() + return RodelbahnController().view(id) @app.route("/rodelbahn/update_regioncache") diff --git a/wradmin/controllers/rodelbahn.py b/wradmin/controllers/rodelbahn.py index 0f43113..547f004 100644 --- a/wradmin/controllers/rodelbahn.py +++ b/wradmin/controllers/rodelbahn.py @@ -1,7 +1,7 @@ #!/usr/bin/python3.4 #from pylons import request, response, session, url, tmpl_context as c #from pylons.controllers.util import abort, redirect -from flask import request +from flask import request, abort import paginate import sqlalchemy as sa @@ -22,19 +22,19 @@ class RodelbahnController: c = TemplateContext() c.paginator = paginate.Page(q.all(), page=int(request.args.get('page', 1)), items_per_page = 25) return render_genshi_template('rodelbahn_list.html', c=c) - - + def view(self, id): - "Displays a sled run" + """Displays a sled run""" q = model.meta.Session.query(model.WrSledrunCache) - c.sledding = q.get(id) - if c.sledding is None: abort(404) + c = TemplateContext() + c.sledding = q.get(id) + if c.sledding is None: + abort(404) q = model.meta.Session.query(model.WrReport) q = q.filter_by(page_id=id).order_by(sa.sql.expression.desc(model.WrReport.id)) - c.paginator = paginate.Page(q, page=int(request.params.get('page', 1)), items_per_page = 25) - return render('rodelbahn_view.html') - - + c.paginator = paginate.Page(q.all(), page=int(request.args.get('page', 1)), items_per_page = 25) + return render_genshi_template('rodelbahn_view.html', c=c) + def update(self): "Updates the wrsledruncache table from the wiki" c = model.meta.Session.connection() diff --git a/wradmin/genshi.py b/wradmin/genshi.py index 6f1094c..380e47e 100644 --- a/wradmin/genshi.py +++ b/wradmin/genshi.py @@ -27,6 +27,10 @@ class PylonsHelper: return 'http://winterrodeln-forum.org/' return 'http://winterrodeln-forum.org/viewforum.php?f={}'.format(forum) + def google_maps(self, latitude, longitude): + """Builds an URL like http://maps.google.at/maps?q=47.200607,11.260007""" + return "http://maps.google.at/maps?q=%.6f,%.6f" % (latitude, longitude) + def bool(self, value): """Takes a bool value and creates a German representation""" return wrpylib.wrvalidators.opt_bool_german_to_str(value) diff --git a/wradmin/templates/rodelbahn_view.html b/wradmin/templates/rodelbahn_view.html index c7f5856..25f9a44 100644 --- a/wradmin/templates/rodelbahn_view.html +++ b/wradmin/templates/rodelbahn_view.html @@ -103,7 +103,7 @@

Rodelbahnberichte

-

${c.paginator.pager('$link_first $link_previous $first_item bis $last_item von $item_count $link_next $link_last', controller='rodelbahn', action='view', id=c.sledding.page_id)}

+

${HTML(c.paginator.pager('$link_first $link_previous $first_item bis $last_item von $item_count $link_next $link_last', url=h.url(controller='rodelbahn', action='view', id=c.sledding.page_id) + '?page=$page'))}

@@ -128,7 +128,7 @@
-

${c.paginator.pager('~2~', controller='rodelbahn', action='view', id=c.sledding.page_id)}

+

${HTML(c.paginator.pager('~2~', url=h.url(controller='rodelbahn', action='view', id=c.sledding.page_id) + '?page=$page'))}

Es sind keine Rodelbahnberichte zu dieser Rodelbahn vorhanden.

-- 2.39.5