diff --git a/mo/db.py b/mo/db.py
index a9b2f5daf1517ee3abaf135a59849a073125804a..cf8d1f77ddd6807de68111587c0f547e8bc324b7 100644
--- a/mo/db.py
+++ b/mo/db.py
@@ -232,6 +232,23 @@ class PartState(MOEnum):
     present = auto()
     absent = auto()
 
+    @classmethod
+    def choices(enum):
+        out = []
+        for item in enum:
+            out.append((item.name, part_state_names[item]))
+        return out
+
+
+part_state_names = {
+    PartState.registered: 'registrovaný',
+    PartState.invited: 'pozvaný',
+    PartState.refused: 'odmítnutý',
+    PartState.present: 'přítomný',
+    PartState.absent: 'nepřítomný',
+}
+
+
 
 class Participation(Base):
     __tablename__ = 'participations'
@@ -357,6 +374,14 @@ def get_session() -> Session:
     return _session
 
 
+def get_categories() -> List[str]:
+    return [cat for (cat,) in get_session().query(Round.category).distinct()]
+
+
+def get_seqs() -> List[str]:
+    return [seq for (seq,) in get_session().query(Round.seq).distinct()]
+
+
 def get_place_parents(place: Place) -> List[Place]:
     sess = get_session()