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

Maximální počet zobrazených e-mailů a právo na jeho obejití

parent 208c5211
No related branches found
No related tags found
No related merge requests found
...@@ -95,3 +95,7 @@ MAILING_LIST_INCLUDE = { ...@@ -95,3 +95,7 @@ MAILING_LIST_INCLUDE = {
MAILING_LIST_EXCLUDE = { MAILING_LIST_EXCLUDE = {
# 'garanti-z': ['somebody@example.com'], # 'garanti-z': ['somebody@example.com'],
} }
# Maximální počet e-mailových adres, které jsme ochotni ve webovém rozhraní zobrazit
# uživatelům bez práva unrestricted_email.
EMAILS_SHOW_MAX = 500
...@@ -34,6 +34,7 @@ class Right(Enum): ...@@ -34,6 +34,7 @@ class Right(Enum):
edit_orgs = auto() edit_orgs = auto()
edit_tex_hacks = auto() # Nastavovat hacky pro sazbu výsledkovek TeXem edit_tex_hacks = auto() # Nastavovat hacky pro sazbu výsledkovek TeXem
view_doc = auto() # Prohlížet organizátorskou dokumentaci view_doc = auto() # Prohlížet organizátorskou dokumentaci
unrestricted_email = auto() # Na posílání mailů se nevztahuje config.EMAILS_SHOW_MAX
@dataclass @dataclass
...@@ -72,6 +73,7 @@ roles: List[Role] = [ ...@@ -72,6 +73,7 @@ roles: List[Role] = [
Right.edit_orgs, Right.edit_orgs,
Right.edit_tex_hacks, Right.edit_tex_hacks,
Right.view_doc, Right.view_doc,
Right.unrestricted_email,
}, },
), ),
Role( Role(
...@@ -292,6 +294,9 @@ class Rights: ...@@ -292,6 +294,9 @@ class Rights:
)) ))
return q return q
def can_send_email(self, count: int) -> bool:
return self.have_right(Right.unrestricted_email) or count <= config.EMAILS_SHOW_MAX
class RoundRights(Rights): class RoundRights(Rights):
"""Práva ke kolu.""" """Práva ke kolu."""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment