Skip to content
Snippets Groups Projects
Commit cfd9e1eb authored by Jiří Kalvoda's avatar Jiří Kalvoda
Browse files

Označení neaktivovaných účtů -- vytvoření user_html_flags

Vytvoření funkce a jinja filtru, které z uživatele vytvoří html
obsahující `*` s popiskem pro různé flagy uživatele.
Aktuálně podporované flagy jsou test user (náhrada za podbarvení
šrafováním) a doposud neaktivní účet.
Cílem je vytvořit rozhraní na přikreslování flagů k uživatelů, které se
použije všude, kde se mluví o uživatelích.
parent 9be56c17
No related branches found
No related tags found
1 merge request!82Označení neaktivovaných účtů -- vytvoření user_html_flags
...@@ -13,6 +13,7 @@ import mo.util_format as util_format ...@@ -13,6 +13,7 @@ import mo.util_format as util_format
from mo.web import app from mo.web import app
from mo.web.org_contest import contest_breadcrumbs from mo.web.org_contest import contest_breadcrumbs
from mo.web.org_place import place_breadcrumbs from mo.web.org_place import place_breadcrumbs
from mo.web.util import user_html_flags
# Konfigurace Jinjy # Konfigurace Jinjy
...@@ -100,3 +101,7 @@ def json_pretty(js: Any) -> str: ...@@ -100,3 +101,7 @@ def json_pretty(js: Any) -> str:
@app.template_global() @app.template_global()
def log_url(typ: str, id: int) -> str: def log_url(typ: str, id: int) -> str:
return url_for('org_log', typ=typ, id=id) return url_for('org_log', typ=typ, id=id)
@app.template_filter()
def user_flags(u: db.User) -> Markup:
return user_html_flags(u)
...@@ -9,6 +9,7 @@ import werkzeug.exceptions ...@@ -9,6 +9,7 @@ import werkzeug.exceptions
import werkzeug.utils import werkzeug.utils
import wtforms import wtforms
from wtforms.fields.html5 import DecimalField from wtforms.fields.html5 import DecimalField
from markupsafe import Markup
import mo.db as db import mo.db as db
import mo.jobs import mo.jobs
...@@ -145,3 +146,13 @@ class MODecimalField(DecimalField): ...@@ -145,3 +146,13 @@ class MODecimalField(DecimalField):
d /= 10 d /= 10
return super(MODecimalField, self)._value() return super(MODecimalField, self)._value()
def user_html_flags(u: db.User) -> Markup:
r = []
if u.is_test:
r.append("<span class='user-test' title='Testovací uživatel'>*</span>")
if u.is_inactive():
r.append("<span class='user-inactive' title='Účet dosud nebyl aktivován'>*</span>")
if len(r) == 0:
return Markup("")
return Markup(" " + "".join(r))
...@@ -256,6 +256,9 @@ table.data tbody tr.job-failed:hover { ...@@ -256,6 +256,9 @@ table.data tbody tr.job-failed:hover {
/* Users */ /* Users */
.user-test {
color: green;
}
.user-inactive { .user-inactive {
color: red; color: red;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment