uses super on checkout_allowed? instead of define a new method
uses beginning and end of day to check constrains