]> ToastFreeware Gitweb - philipp/winterrodeln/wradmin.git/commitdiff
Add links to JSON editing services for sledruns.
authorPhilipp Spitzer <philipp@spitzer.priv.at>
Sun, 21 Feb 2021 10:08:32 +0000 (11:08 +0100)
committerPhilipp Spitzer <philipp@spitzer.priv.at>
Sun, 21 Feb 2021 10:34:32 +0000 (11:34 +0100)
wradmin/template_helper.py
wradmin/templates/rodelbahn_view.html

index f7fc01c8eccd86b69afef85a824fe5efd222f892..b37571f761b6b314e9ed23affa2d1d914be88e1b 100644 (file)
@@ -1,3 +1,5 @@
+from urllib.parse import quote_plus
+
 from flask import url_for, current_app
 import wrpylib.wrvalidators
 
@@ -24,6 +26,21 @@ class PylonsHelper:
             return 'https://winterrodeln-forum.org/'
         return 'https://winterrodeln-forum.org/viewforum.php?f={}'.format(forum)
 
+    def mediawiki_index_url(self):
+        return f'{current_app.config["MEDIAWIKI_ROOT"]}/index.php'
+
+    def sledrun_json_schema_url(self, raw: bool = True):
+        url = f'{self.mediawiki_index_url()}?title=Winterrodeln:Datenschema/Rodelbahn/V1.json'
+        if raw:
+            url += '&action=raw'
+        return url
+
+    def sledrun_json_url(self, page_title, raw: bool = True):
+        url = f'{self.mediawiki_index_url()}?title={quote_plus(page_title)}/Rodelbahn.json'
+        if raw:
+            url += '&action=raw'
+        return url
+
     def google_maps(self, latitude, longitude):
         """Builds an URL like http://maps.google.at/maps?q=47.200607,11.260007"""
         return "https://maps.google.at/maps?q=%.6f,%.6f" % (latitude, longitude)
index 56f44c6e12386b2468c359bc1502639fe8b57b09..7559fa6db46488bc9120bc2223d8d8a69bb85fe0 100644 (file)
@@ -89,6 +89,9 @@
     {% 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 %}
+    <li><a href="https://json-editor.github.io/json-editor/">Allgemeiner JSON Editor (mit Schema)</a></li>
+    <li><a href="{{h.sledrun_json_url(sledding.page_title, False)}}">JSON der Rodelbahn (falls vorhanden)</a></li>
+    <li><a href="{{h.sledrun_json_schema_url(False)}}">JSON Schema für Rodelbahnen</a></li>
     {% if sledding.forum_id %}
     <li><a href="{{h.forum(sledding.forum_id)}}">Zeige im Forum</a></li>
     {% endif %}