Skip to content
Snippets Groups Projects
Commit 7f80a7a4 authored by Martin Mareš's avatar Martin Mareš
Browse files

db.User má metodu full_name()

parent 12c0e908
Branches
No related tags found
1 merge request!9WIP: Zárodek uživatelské části webu a submitování
......@@ -205,6 +205,9 @@ class User(Base):
roles = relationship('UserRole', primaryjoin='UserRole.user_id == User.user_id')
def full_name(self) -> str:
return self.first_name + ' ' + self.last_name
class Contest(Base):
__tablename__ = 'contests'
......
......@@ -173,7 +173,7 @@ class Import:
user = sess.query(db.User).filter_by(email=email).one_or_none()
if user:
if user.first_name != krestni or user.last_name != prijmeni:
return self.error(f'Osoba již registrována s odlišným jménem {user.first_name} {user.last_name}')
return self.error(f'Osoba již registrována s odlišným jménem {user.full_name()}')
else:
user = db.User(email=email, first_name=krestni, last_name=prijmeni)
sess.add(user)
......
......@@ -55,7 +55,7 @@ def send_user_email(user: db.User, subject: str, body: str) -> bool:
)
msg['To'] = [
email.headerregistry.Address(
display_name='{} {}'.format(user.first_name, user.last_name),
display_name=user.full_name(),
addr_spec=user.email,
)
]
......
......@@ -37,7 +37,7 @@ def get_menu():
# Login / user settings
if g.user:
name = f"{g.user.first_name} {g.user.last_name}"
name = g.user.full_name()
if g.user.is_admin:
name += " [admin]"
items.append(MenuItem(url_for('user_settings'), name, classes=["right"]))
......
......@@ -121,7 +121,7 @@ class ParticipantsActionForm(FlaskForm):
continue
flash(
f"Nemáte právo ke správě soutěže v kole {round.round_code()} v oblasti {pion.contest.place.name} "
+ f"(účastník {u.first_name} {u.last_name}). Žádná akce nebyla provedena.", 'danger'
+ f"(účastník {u.full_name()}). Žádná akce nebyla provedena.", 'danger'
)
return False
......@@ -414,7 +414,7 @@ def org_contest_solutions(id: int):
for pion in pions:
user = pion.user
r = {
'name': user.first_name + ' ' + user.last_name,
'name': user.full_name(),
}
for t in tasks:
s = task_sols[t.task_id].get(user.user_id, None)
......
{% extends "base.html" %}
{% import "bootstrap/wtf.html" as wtf %}
{% block body %}
<h2>{% if user.is_admin %}Správce:{% else %}Organizátor:{% endif %} {{ user.first_name }} {{ user.last_name }}</h2>
<h2>{% if user.is_admin %}Správce:{% else %}Organizátor:{% endif %} {{ user.full_name() }}</h2>
<table class=data>
<tr><td>Jméno:</td><td>{{ user.first_name }}</td></tr>
......
......@@ -14,7 +14,7 @@
{% for role in roles %}
<tr>
<td>{{ roles_by_type[role.role].name }}
<td>{{ role.user.first_name }} {{ role.user.last_name }}
<td>{{ role.user.full_name() }}
<td>{{ role.year or '–' }}
<td>{{ role.category or '–' }}
<td>{{ role.seq or '–' }}
......
{% extends "base.html" %}
{% import "bootstrap/wtf.html" as wtf %}
{% block body %}
<h2>{% if user.is_org %}Organizátor:{% elif user.is_admin %}Správce:{% else %}Soutěžící:{% endif %} {{ user.first_name }} {{ user.last_name }}</h2>
<h2>{% if user.is_org %}Organizátor:{% elif user.is_admin %}Správce:{% else %}Soutěžící:{% endif %} {{ user.full_name() }}</h2>
<table class=data>
<tr><td>Jméno:</td><td>{{ user.first_name }}</td></tr>
......
{% extends "base.html" %}
{% import "bootstrap/wtf.html" as wtf %}
{% block body %}
<h2>{% if user.is_org %}Organizátor:{% elif user.is_admin %}Správce:{% else %}Soutěžící{% endif %} {{ user.first_name }} {{ user.last_name }}</h2>
<h2>{% if user.is_org %}Organizátor:{% elif user.is_admin %}Správce:{% else %}Soutěžící{% endif %} {{ user.full_name() }}</h2>
<table class=data>
<tr><td>Jméno:</td><td>{{ user.first_name }}</td></tr>
......
{% extends "base.html" %}
{% block body %}
<h2>Uživatel {{ g.user.first_name }} {{ g.user.last_name }}</h2>
<h2>Uživatel {{ g.user.full_name() }}</h2>
<h3>Práva</h3>
{% if g.user.is_admin %}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment