Module edupage_api.classrooms

Classes

class Classroom (classroom_id: int, name: str, short: str)
Expand source code
@dataclass
class Classroom:
    classroom_id: int
    name: str
    short: str

Classroom(classroom_id: int, name: str, short: str)

Class variables

var classroom_id : int
var name : str
var short : str
class Classrooms (edupage: EdupageModule)
Expand source code
class Classrooms(Module):
    @ModuleHelper.logged_in
    def get_classrooms(self) -> Optional[list]:
        classroom_list = DbiHelper(self.edupage).fetch_classroom_list()

        if classroom_list is None:
            return None

        classrooms = []

        for classroom_id_str in classroom_list:
            if not classroom_id_str:
                continue

            classrooms.append(
                Classroom(
                    int(classroom_id_str),
                    classroom_list[classroom_id_str]["name"],
                    classroom_list[classroom_id_str]["short"],
                )
            )

        return classrooms

    def get_classroom(self, classroom_id: Union[int, str]) -> Optional[Classroom]:
        try:
            classroom_id = int(classroom_id)
        except (ValueError, TypeError):
            return None

        return next(
            (
                classroom
                for classroom in self.get_classrooms()
                if classroom.classroom_id == classroom_id
            ),
            None,
        )

Ancestors

Methods

def get_classroom(self, classroom_id: int | str) ‑> Classroom | None
Expand source code
def get_classroom(self, classroom_id: Union[int, str]) -> Optional[Classroom]:
    try:
        classroom_id = int(classroom_id)
    except (ValueError, TypeError):
        return None

    return next(
        (
            classroom
            for classroom in self.get_classrooms()
            if classroom.classroom_id == classroom_id
        ),
        None,
    )
def get_classrooms(self) ‑> list | None
Expand source code
@ModuleHelper.logged_in
def get_classrooms(self) -> Optional[list]:
    classroom_list = DbiHelper(self.edupage).fetch_classroom_list()

    if classroom_list is None:
        return None

    classrooms = []

    for classroom_id_str in classroom_list:
        if not classroom_id_str:
            continue

        classrooms.append(
            Classroom(
                int(classroom_id_str),
                classroom_list[classroom_id_str]["name"],
                classroom_list[classroom_id_str]["short"],
            )
        )

    return classrooms