diff --git a/models/event_question_answer.py b/models/event_question_answer.py index d67dd664bbd88cefd15f0f7b75e3d3089fbf6c32..f1be28fec79a0256c81265797b1186b8c7b273dc 100644 --- a/models/event_question_answer.py +++ b/models/event_question_answer.py @@ -20,23 +20,23 @@ class EventQuestionAnswer(models.Model): ) answer_number = fields.Integer( "Nombre de réponses enregistrées", - default=0, compute="_compute_answers", readonly=True, ) remaining_number = fields.Integer( "Nombre de réponses restantes", - default=0, compute="_compute_answers", readonly=True, ) - fully_booked = fields.Boolean( - "Complet", default=False, compute="_compute_answers", readonly=True - ) + fully_booked = fields.Boolean("Complet", compute="_compute_answers", readonly=True) @api.depends("number_max", "registration_answer_ids") def _compute_answers(self): - for answer in self.filtered("number_max"): + for answer in self: answer.answer_number = len(answer.sudo().registration_answer_ids) - answer.remaining_number = answer.number_max - answer.answer_number - answer.fully_booked = answer.remaining_number < 1 + if answer.number_max > 0: + answer.remaining_number = answer.number_max - answer.answer_number + answer.fully_booked = answer.remaining_number < 1 + else: + answer.remaining_number = 0 + answer.fully_booked = False