Exemple #1
0
    def validate(self, data: dict) -> dict:
        """
        Zvaliduje lekci.
        """
        # skupina, ktere patri tato lekce
        is_group = LectureHelpers.is_group(data, self.instance)
        # validace kurzu
        LectureHelpers.validate_course_presence(data, self.instance, is_group)
        # validace poctu ucastniku lekce
        LectureHelpers.validate_attendants_count(data, is_group)
        # validace start & duration
        LectureHelpers.validate_start_duration(data, is_group)

        # pro nove predplacene lekce proved jen jednoduchou kontrolu (nelze menit parametry platby)
        if "start" in data and data["start"] is None:
            attendances = []
            if "attendances" in data:
                attendances = data["attendances"]
            elif self.instance:
                attendances = self.instance.attendances
            for attendance in attendances:
                LectureHelpers.validate_prepaid_non_changable_paid_state(attendance)
            return data

        # kontrola casoveho konfliktu
        LectureHelpers.validate_lecture_collision(data, self.instance)
        return data
Exemple #2
0
 def validate(self, data: dict) -> dict:
     """
     Zvaliduje účast.
     """
     # u predplacene lekce nelze menit parametry platby
     if self.instance and self.instance.lecture.start is None:
         LectureHelpers.validate_prepaid_non_changable_paid_state(data)
     return data