From cfe24e346ff88c206625ab8b4825cb34dc8ae7d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ji=C5=99=C3=AD=20Setni=C4=8Dka?= <setnicka@seznam.cz> Date: Sat, 2 Jan 2021 18:15:16 +0100 Subject: [PATCH] =?UTF-8?q?N=C3=A1zvy=20rol=C3=AD=20p=C5=99esunuty=20do=20?= =?UTF-8?q?mo/db.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Aby je šlo používat z db package (jinak by byl problém s cyklickou závislostí). --- mo/db.py | 22 ++++++++++++++++++++++ mo/rights.py | 10 +++++----- 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/mo/db.py b/mo/db.py index c9db14e8..429be62a 100644 --- a/mo/db.py +++ b/mo/db.py @@ -285,6 +285,14 @@ class RoleType(MOEnum): opravovatel = auto() +role_type_names = { + RoleType.garant: 'celostátní garant', + RoleType.garant_kraj: 'krajský garant', + RoleType.garant_okres: 'okresní garant', + RoleType.dozor: 'dozor', + RoleType.opravovatel: 'opravovatel', +} + class UserRole(Base): __tablename__ = 'user_roles' @@ -302,6 +310,20 @@ class UserRole(Base): assigned_by_user = relationship('User', primaryjoin='UserRole.assigned_by == User.user_id') place = relationship('Place') + def __str__(self): + parts = [role_type_names[self.role]] + if self.seq: + parts.append(f"{self.seq}. kola") + if self.year: + parts.append(f"{self.year}. ročníku") + if self.category: + parts.append(f"kategorie {self.category}") + parts.append("pro") + parts.append(self.place.type_name()) + parts.append(self.place.name) + + return " ".join(parts) + class PaperType(MOEnum): solution = auto() diff --git a/mo/rights.py b/mo/rights.py index 1d4c6ac5..e8257dd1 100644 --- a/mo/rights.py +++ b/mo/rights.py @@ -32,7 +32,7 @@ class Role: roles: List[Role] = [ Role( role=db.RoleType.garant, - name='celostátní garant', + name=db.role_type_names[db.RoleType.garant], rights={ Right.assign_rights, Right.edit_place, @@ -45,7 +45,7 @@ roles: List[Role] = [ ), Role( role=db.RoleType.garant_kraj, - name='krajský garant', + name=db.role_type_names[db.RoleType.garant_kraj], rights={ Right.assign_rights, Right.edit_place, @@ -58,7 +58,7 @@ roles: List[Role] = [ ), Role( role=db.RoleType.garant_okres, - name='okresní garant', + name=db.role_type_names[db.RoleType.garant_okres], rights={ Right.assign_rights, Right.edit_place, @@ -69,7 +69,7 @@ roles: List[Role] = [ ), Role( role=db.RoleType.dozor, - name='dozor', + name=db.role_type_names[db.RoleType.dozor], rights={ Right.upload_solutions, Right.add_users, @@ -77,7 +77,7 @@ roles: List[Role] = [ ), Role( role=db.RoleType.opravovatel, - name='opravovatel', + name=db.role_type_names[db.RoleType.opravovatel], rights={ Right.upload_feedback, Right.edit_points, -- GitLab