Ejemplo n.º 1
0
def validate_delivery_datetime(delivery_date, delivery_time=None):
    now = datetime.datetime.now()
    if not delivery_date and delivery_time:
        raise forms.ValidationError(u'Введите дату. Вы ввели только время.')
    delivery_datetime = combine_date_and_time(delivery_date, delivery_time)
    if delivery_datetime:
        if delivery_datetime < now + datetime.timedelta(hours=2):
            raise forms.ValidationError(u'Вы не можете выбрать время доставки раньше, чем через 2 часа от текущего времени')
        if (is_friday_after_six_oclock(now) or is_holiday(now)) and delivery_datetime < get_nearest_monday(now):
            raise forms.ValidationError(u'Вы не можете выбрать дату и время доставки раньше, чем 10:00 ближайшего понедельника')
    return delivery_datetime
Ejemplo n.º 2
0
 def _delivery_datetime(self, obj):
     return combine_date_and_time(obj.delivery_date, obj.delivery_time)