]> ToastFreeware Gitweb - philipp/winterrodeln/wradmin.git/commitdiff
rodelbahn_view.html now uses jinja2.
authorphilipp <philipp@7aebc617-e5e2-0310-91dc-80fb5f6d2477>
Wed, 27 Dec 2017 22:31:18 +0000 (22:31 +0000)
committerphilipp <philipp@7aebc617-e5e2-0310-91dc-80fb5f6d2477>
Wed, 27 Dec 2017 22:31:18 +0000 (22:31 +0000)
git-svn-id: http://www.winterrodeln.org/svn/wradmin/trunk@2761 7aebc617-e5e2-0310-91dc-80fb5f6d2477

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

index c9c5b6f73ed0c1efd939b36f60d86f548fca006f..71e633f424b69c4800c52e8cfefb6eb6e29f6223 100644 (file)
@@ -8,7 +8,6 @@ import wrpylib.wrmwcache
 import wrpylib.mwmarkup
 
 import wradmin.model as model
-from wradmin.genshi import render_genshi_template, TemplateContext
 
 
 class RodelbahnController:
@@ -25,16 +24,15 @@ class RodelbahnController:
     def view(self, id):
         """Displays a sled run"""
         q = model.meta.Session.query(model.WrSledrunCache)
-        c = TemplateContext()
-        c.sledding = q.get(id)
-        if c.sledding is None:
+        sledding = q.get(id)
+        if 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.all(), page=int(request.args.get('page', 1)),
-                                    url_maker=lambda page: url_for('rodelbahn_view', id=id, page=page),
-                                    items_per_page=25)
-        return render_genshi_template('rodelbahn_view.html', c=c)
+        paginator = paginate.Page(q.all(), page=int(request.args.get('page', 1)),
+                                  url_maker=lambda page: url_for('rodelbahn_view', id=id, page=page),
+                                  items_per_page=25)
+        return render_template('rodelbahn_view.html', sledding=sledding, paginator=paginator)
 
     def update(self):
         """Updates the wrsledruncache table from the wiki"""
index 016a20cf32b4cd170faa70c6f8ffadbd67a389a9..56f44c6e12386b2468c359bc1502639fe8b57b09 100644 (file)
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
-                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:py="http://genshi.edgewall.org/"
-    xmlns:xi="http://www.w3.org/2001/XInclude">
-<xi:include href="master.html" />
+{% extends "master.html" %}
+{% block title %}Rodelbahn {{sledding.page_title}}{% endblock %}
 
-<head>
-    <title>Rodelbahn</title>
-</head>
-
-<body>
-<h2>Rodelbahn #${c.sledding.page_id}: ${c.sledding.page_title}</h2>
+{% block content %}
+<h2>Rodelbahn #{{sledding.page_id}}: {{sledding.page_title}}</h2>
 
 <h3>Inhalt der Rodelbahnbox</h3>
 <table>
     <tr>
         <th>ID</th>
-        <td>${c.sledding.page_id}</td>
+        <td>{{sledding.page_id}}</td>
     </tr>
     <tr>
         <th>Name</th>
-        <td>${c.sledding.page_title}</td>
+        <td>{{sledding.page_title}}</td>
     </tr>
     <tr>
-        <th>Länge</th>
-        <td>${c.sledding.length}</td>
+        <th>Länge</th>
+        <td>{{sledding.length}}</td>
     </tr>
     <tr>
         <th>Gehzeit</th>
-        <td>${c.sledding.walkup_time}</td>
+        <td>{{sledding.walkup_time}}</td>
     </tr>
     <tr>
-        <th>Höhe (oben)</th>
-        <td>${c.sledding.top_elevation}</td>
+        <th>Höhe (oben)</th>
+        <td>{{sledding.top_elevation}}</td>
     </tr>
     <tr>
-        <th>Höhe (unten)</th>
-        <td>${c.sledding.bottom_elevation}</td>
+        <th>Höhe (unten)</th>
+        <td>{{sledding.bottom_elevation}}</td>
     </tr>
     <tr>
-        <th>Aufstieg möglich</th>
-        <td>${h.bool(c.sledding.walkup_possible)}</td>
+        <th>Aufstieg möglich</th>
+        <td>{{h.bool(sledding.walkup_possible)}}</td>
     </tr>
     <tr>
         <th>Aufstieg getrennt</th>
-        <td>${h.tristate_float(c.sledding.walkup_separate)}</td>
+        <td>{{h.tristate_float(sledding.walkup_separate)}}</td>
     </tr>
     <tr>
         <th>Lift</th>
-        <td>${h.bool(c.sledding.lift)}</td>
+        <td>{{h.bool(sledding.lift)}}</td>
     </tr>
     <tr>
         <th>Licht</th>
-        <td>${h.tristate_float(c.sledding.night_light)}</td>
+        <td>{{h.tristate_float(sledding.night_light)}}</td>
     </tr>
     <tr>
         <th>Rodelverleih</th>
-        <td>${h.bool(c.sledding.sled_rental)}</td>
+        <td>{{h.bool(sledding.sled_rental)}}</td>
     </tr>
     <tr>
-        <th>Öffentliche Anreise</th>
-        <td>${h.public_transport(c.sledding.public_transport)}</td>
+        <th>Öffentliche Anreise</th>
+        <td>{{h.public_transport(sledding.public_transport)}}</td>
     </tr>
     <tr>
         <th>Bild</th>
-        <td>${c.sledding.image}</td>
+        <td>{{sledding.image}}</td>
     </tr>
     <tr>
         <th>Latitude</th>
-        <td>${c.sledding.position_latitude}</td>
+        <td>{{sledding.position_latitude}}</td>
     </tr>
     <tr>
         <th>Longitude</th>
-        <td>${c.sledding.position_longitude}</td>
+        <td>{{sledding.position_longitude}}</td>
     </tr>
     <tr>
         <th>Information</th>
-        <td>${c.sledding.information_phone}</td>
+        <td>{{sledding.information_phone}}</td>
     </tr>
     <tr>
         <th>Forum-ID</th>
-        <td>${c.sledding.forum_id}</td>
+        <td>{{sledding.forum_id}}</td>
     </tr>
     <tr>
         <th>In Arbeit</th>
-        <td>${h.bool(c.sledding.under_construction)}</td>
+        <td>{{h.bool(sledding.under_construction)}}</td>
     </tr>
     <tr>
-        <th>In Übersicht</th>
-        <td>${h.bool(c.sledding.show_in_overview)}</td>
+        <th>In Übersicht</th>
+        <td>{{h.bool(sledding.show_in_overview)}}</td>
     </tr>
 </table>
 
 <ul>
-    <li><a href="${h.wiki(c.sledding.page_title)}">Zeige bei <tt>www.winterrodeln.org</tt></a></li>
-    <li py:if="c.sledding.position_latitude and c.sledding.position_longitude"><a href="${h.google_maps(c.sledding.position_latitude, c.sledding.position_longitude)}">Zeige bei Google Maps</a></li>
-    <li py:if="c.sledding.forum_id"><a href="${h.forum(c.sledding.forum_id)}">Zeige im Forum</a></li>
+    <li><a href="{{h.wiki(sledding.page_title)}}">Zeige bei <tt>www.winterrodeln.org</tt></a></li>
+    {% if sledding.position_latitude and sledding.position_longitude %}
+    <li><a href="{{h.google_maps(sledding.position_latitude, sledding.position_longitude)}}">Zeige bei Google Maps</a></li>
+    {% endif %}
+    {% if sledding.forum_id %}
+    <li><a href="{{h.forum(sledding.forum_id)}}">Zeige im Forum</a></li>
+    {% endif %}
 </ul>
 
 
 <h3>Rodelbahnberichte</h3>
 
-<py:if test="len(c.paginator) > 0">
-<p>${Markup(c.paginator.pager('$link_first $link_previous $first_item bis $last_item von $item_count $link_next $link_last'))}</p>
+{% if paginator %}
+<p>{{paginator.pager('$link_first $link_previous $first_item bis $last_item von $item_count $link_next $link_last') | safe}}</p>
 
 <table>
     <tr>
         <th>ID</th>
         <th>Datum Eintrag</th>
-        <th>Datum Ungültig</th>
-        <th>Datum für Bericht</th>
+        <th>Datum Ungültig</th>
+        <th>Datum für Bericht</th>
         <th>Zustand (1 bis 5)</th>
         <th>Beschreibung (WikiText)</th>
         <th>Autor-Name</th>
-        <th>Gelöscht</th>
-    </tr>
-    <tr py:for="r in c.paginator">
-        <td><a href="${h.url(controller='bericht', action='view', id=r.id)}">${r.id}</a></td>
-        <td>${r.date_entry}</td>
-        <td>${r.date_invalid}</td>
-        <td>${r.date_report}</td>
-        <td>${r.condition}</td>
-        <td>${r.description}</td>
-        <td>${r.author_name}</td>
-        <td>${r.delete_date}</td>
+        <th>Gelöscht</th>
+    </tr>
+    {% for r in paginator %}
+    <tr>
+        <td><a href="{{url_for('bericht_view', id=r.id)}}">{{r.id}}</a></td>
+        <td>{{r.date_entry}}</td>
+        <td>{{r.date_invalid}}</td>
+        <td>{{r.date_report}}</td>
+        <td>{{r.condition}}</td>
+        <td>{{r.description}}</td>
+        <td>{{r.author_name}}</td>
+        <td>{{r.delete_date}}</td>
     </tr>
+    {% endfor %}
 </table>
 
-<p>${Markup(c.paginator.pager('~2~'))}</p>
-</py:if>
-<py:if test="len(c.paginator) == 0">
+<p>{{paginator.pager('~2~') | safe}}</p>
+
+{% else %}
 <p><em>Es sind keine Rodelbahnberichte zu dieser Rodelbahn vorhanden.</em></p>
-</py:if>
 
-</body>
-</html>
+{% endif %}
+
+{% endblock %}