| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
DeletedName 03.11.2005 07:19
@work_time[s_day;f_day;now]
# Метод возвращает истину, если сейчас рабочее время и не выходной день
# s_day - начало рабочего дня
# f_day - конец рабочего дня
# now - время, я обычно ставлю сейчас (объект класса date)
# Определяем переменные
# Смотрим всё ли ок с полученной датой $now
^if(!($now is "date")){
^throw[work_time;$exception.source;Возможно вы не передали переменную ^$now]
}
# Сотрим все ли ок с переданным нам временем работы
^try{
$s_day[^date::create[$s_day]]
$f_day[^date::create[$f_day]]
}{
^throw[work_time;$exception.source;Возможно вы неверно ввели дату (надо - hh:mm, а у вас ${s_day} и ${f_day})]
$exception.handled(1)
}
# Рабочее ли время
$work_time[^if($now > $s_day && $now < $f_day){1}]
# Рабочий ли день
$result($work_time && $now.weekday >= 1 && $now.weekday <= 5)
#@work_time[]