diff --git a/mo/db.py b/mo/db.py index c9db14e84ff34c2b08f7ab0ad606bedd17ce1356..429be62a570174315a4717e0e4f746613461449f 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 1d4c6ac5e3f7816d367b446aece0c68f1414f3da..e8257dd1c33394fbaf6a9e1b21ae00ccfcafef0c 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,