def validate_non_overlapping_sitting(action, data, context, container, *fields): start = data.get('start_date') end = data.get('end_date', None) if not fields: fields = "start_date", "end_date" session = Session() group_id = container.__parent__.group_id group = session.query(domain.Group).get(group_id) sittings = group.sittings for sitting in queries.get_sittings_between(sittings, start, end): if context != sitting: return [ interface.Invalid( _( u"One or more events would be scheduled for $F, which " "overlaps with an existing sitting", mapping={'F': datetimedict.fromdatetime(start)}), *fields) ] return []
def validate_non_overlapping_sitting(action, data, context, container, *fields): start = data.get("start_date") end = data.get("end_date", None) if not fields: fields = "start_date", "end_date" session = Session() group_id = container.__parent__.group_id group = session.query(domain.Group).get(group_id) sittings = group.sittings for sitting in queries.get_sittings_between(sittings, start, end): if context != sitting: return [ interface.Invalid( _( u"One or more events would be scheduled for $F, which " "overlaps with an existing sitting", mapping={"F": datetimedict.fromdatetime(start)}, ), *fields ) ] return []