Barvičkyyy!
This commit is contained in:
parent
86f6d47f10
commit
fe144e6de7
3 changed files with 18 additions and 1 deletions
|
@ -1233,6 +1233,7 @@ div.gdpr {
|
||||||
.dosla_reseni tr th, .dosla_reseni tr td {
|
.dosla_reseni tr th, .dosla_reseni tr td {
|
||||||
padding: 1px 10px 1px 10px;
|
padding: 1px 10px 1px 10px;
|
||||||
border-collapse: collapse;
|
border-collapse: collapse;
|
||||||
|
min-width: 8em; /*Nastřeleno, aby se řádky s řešeními nezalamovaly. Teoreticky není potřeba pro th, ale whatever.*/
|
||||||
}
|
}
|
||||||
|
|
||||||
.dosla_reseni tr:nth-child(even) {
|
.dosla_reseni tr:nth-child(even) {
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{% extends "base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% load utils %} {# Možná by mohlo být někde výš v hierarchii templatů... #}
|
{% load utils %} {# Možná by mohlo být někde výš v hierarchii templatů... #}
|
||||||
|
{% load barvy_reseni %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
|
@ -39,7 +40,7 @@ Do data (včetně): {{ filtr.reseni_do }}
|
||||||
{% for soucet,bunka in hodnoty %}
|
{% for soucet,bunka in hodnoty %}
|
||||||
<td>
|
<td>
|
||||||
{% for reseni,hodnoceni in bunka %}
|
{% for reseni,hodnoceni in bunka %}
|
||||||
<a href="{% url 'odevzdavatko_detail_reseni' pk=reseni.id %}">
|
<a style="color: {{reseni|barva_reseni}};" href="{% url 'odevzdavatko_detail_reseni' pk=reseni.id %}">
|
||||||
{{reseni.cas_doruceni | date:"j. n."}} ({{ hodnoceni.body|default_if_none:"🔨"}} b)
|
{{reseni.cas_doruceni | date:"j. n."}} ({{ hodnoceni.body|default_if_none:"🔨"}} b)
|
||||||
</a><br>
|
</a><br>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
15
odevzdavatko/templatetags/barvy_reseni.py
Normal file
15
odevzdavatko/templatetags/barvy_reseni.py
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
from django import template
|
||||||
|
register = template.Library()
|
||||||
|
|
||||||
|
from functools import cache
|
||||||
|
import seminar.models as m
|
||||||
|
|
||||||
|
@register.filter
|
||||||
|
@cache
|
||||||
|
def barva_reseni(r: m.Reseni):
|
||||||
|
"""Vrátí nějakou barvu pro daný problém, ve tvaru '#RRGGBB'
|
||||||
|
|
||||||
|
Efektivně hešujeme do barev."""
|
||||||
|
|
||||||
|
#TODO: ne všechny barvy jsou dobře rozlišitelné a vidět…
|
||||||
|
return f'#{hash(str(r.id)) & 0xffffff:06x}'
|
Loading…
Reference in a new issue