Add a filter for getting language name from code
authorMagnus Hagander <magnus@hagander.net>
Tue, 27 Oct 2020 12:22:09 +0000 (13:22 +0100)
committerMagnus Hagander <magnus@hagander.net>
Wed, 28 Oct 2020 15:39:27 +0000 (16:39 +0100)
This adds a requirement on the Babel module in python.

pgweb/core/templatetags/pgfilters.py
requirements.txt

index f2fc82320670949b5ac9d19e9f36ab54433f323d..114cb17dbdf352bf35e5efc6a2189ebf12ff4f0b 100644 (file)
@@ -8,6 +8,7 @@ import os
 from pathlib import Path
 import json
 import pynliner
+import babel
 
 register = template.Library()
 
@@ -113,6 +114,14 @@ def list_templates(value):
             yield f.stem
 
 
+@register.filter()
+def languagename(lang):
+    try:
+        return babel.Locale(lang).english_name
+    except Exception:
+        return lang
+
+
 @register.simple_tag(takes_context=True)
 def git_changes_link(context):
     return mark_safe('<a href="https://git.postgresql.org/gitweb/?p=pgweb.git;a=history;f=templates/{}">View</a> change history.'.format(context.template_name))
index 441cf5ab543bd971d136f199a3b86cea41527ff6..dffd71d9bb2a792ab541fd23bf281fbc8bb0609b 100644 (file)
@@ -8,3 +8,4 @@ cvss==2.1
 pytidylib==0.3.2
 pycodestyle==2.4.0
 pynliner==0.8.0
+Babel=2.6.0