'Return the next report date based on the last report date and
report period.'

@api.depends('last_report_date', 'report_message_frequency')
def _get_next_report_date(self):

    for challenge in self:
        last = fields.Datetime.from_string(challenge.last_report_date).date()
        offset = self.REPORT_OFFSETS.get(challenge.report_message_frequency)
        if offset:
            challenge.next_report_date = fields.Date.to_string((last + offset))
        else:
            challenge.next_report_date = False
