diff --git a/mo/web/jinja.py b/mo/web/jinja.py
index 0cc2daece436a247ba1e6d245ca76ed6dd34aae9..30bd1fa032b800f40fd9a7c467993ea6c6b86c89 100644
--- a/mo/web/jinja.py
+++ b/mo/web/jinja.py
@@ -2,6 +2,7 @@
 
 from flask import url_for
 from markupsafe import Markup
+from typing import Any
 
 import mo.config as config
 import mo.db as db
@@ -27,9 +28,14 @@ app.jinja_env.globals.update(web_flavor=config.WEB_FLAVOR)
 
 
 @app.template_filter()
-def user_link(u: db.User):
+def user_link(u: db.User) -> Markup:
     if u.is_admin or u.is_org:
         url = url_for('org_org', id=u.user_id)
     else:
         url = url_for('org_user', id=u.user_id)
     return Markup('<a href="{url}">{name}{test}</a>').format(url=url, name=u.full_name(), test=" (test)" if u.is_test else "")
+
+
+@app.template_filter()
+def or_dash(s: Any) -> str:
+    return str(s) if s else '–'