diff --git a/apps/cfp_review/sense_check.py b/apps/cfp_review/sense_check.py index 0a1cebe2d..9caabb6e6 100644 --- a/apps/cfp_review/sense_check.py +++ b/apps/cfp_review/sense_check.py @@ -78,6 +78,14 @@ def _check_timing(t, note, reason_key): if t.hour >= 2 and t.hour < 9: reasons[f'{reason_key}_quiet'] = f'{note} is scheduled between 2am and 9am ({t.strftime(human_format)})' + permitted_time = False + for n, period in enumerate(proposal.get_allowed_time_periods()): + if t >= period.start and t <= period.end: + permitted_time = True + + if not permitted_time: + reasons[f'{reason_key}_outside_allowed_times'] = f'{note} is outside allowed proposal time periods' + _check_timing(proposal.potential_time, 'Proposed start', 'proposed_start') _check_timing(proposal.scheduled_time, 'Scheduled start', 'scheduled_start') _check_timing(proposal.potential_end_date, 'Proposed end', 'proposed_end') @@ -92,6 +100,7 @@ def sense_check(): accepted_proposals = ( Proposal.query_accepted(include_user_scheduled=False) .filter(Proposal.type.in_(["talk", "workshop", "youthworkshop", "performance"])) + .order_by(Proposal.type) .all() )