]> ToastFreeware Gitweb - philipp/winterrodeln/wradmin.git/commitdiff
rodelbahn_view is rendered now.
authorphilipp <philipp@7aebc617-e5e2-0310-91dc-80fb5f6d2477>
Thu, 27 Jul 2017 22:01:29 +0000 (22:01 +0000)
committerphilipp <philipp@7aebc617-e5e2-0310-91dc-80fb5f6d2477>
Thu, 27 Jul 2017 22:01:29 +0000 (22:01 +0000)
git-svn-id: http://www.winterrodeln.org/svn/wradmin/trunk@2680 7aebc617-e5e2-0310-91dc-80fb5f6d2477

wradmin/__init__.py
wradmin/controllers/rodelbahn.py
wradmin/genshi.py
wradmin/templates/rodelbahn_view.html

index 0a2ef028cb688d210b935623dc2b5284eee33a3f..c2c8addf03320e56bb06cbbfe9e8ad65530a483c 100644 (file)
@@ -50,7 +50,8 @@ def rodelbahn_update():
 
 @app.route("/rodelbahn/view/<int:id>")
 def rodelbahn_view(id):
-    pass
+    get_db()
+    return RodelbahnController().view(id)
 
 
 @app.route("/rodelbahn/update_regioncache")
index 0f4311307b46896914b4c0cbbbe7e4be7133b78e..547f004be14380ea9cb98db36eeaf86ad2c2c3b3 100644 (file)
@@ -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()
index 6f1094c72f1d77d9b8b67f75dfc5c19801bf0e70..380e47edab95bcf53c81e15f83586b5ae7dfe8ba 100644 (file)
@@ -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)
index c7f585691ef6708972e981a7727df913703021c9..25f9a4456cb309da4f16fa125bb1befc3ecdd6c4 100644 (file)
 <h3>Rodelbahnberichte</h3>
 
 <py:if test="len(c.paginator) > 0">
-<p>${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)}</p>
+<p>${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'))}</p>
 
 <table>
     <tr>
     </tr>
 </table>
 
-<p>${c.paginator.pager('~2~', controller='rodelbahn', action='view', id=c.sledding.page_id)}</p>
+<p>${HTML(c.paginator.pager('~2~', url=h.url(controller='rodelbahn', action='view', id=c.sledding.page_id) + '?page=$page'))}</p>
 </py:if>
 <py:if test="len(c.paginator) == 0">
 <p><em>Es sind keine Rodelbahnberichte zu dieser Rodelbahn vorhanden.</em></p>