Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Sumo 01.10.2003 11:37
Дата перехода летнее время - последнее воскресенье марта, а дата перехода на зимнее - последее воскресенье октября. [по крайней мере в Европе это стандарт]# Определяем относится ли $aTime к "летнему времени". # Если параметр не задан, то берем текущее время. # http://wwp.greenwichmeantime.com/local/rules/eu.htm @_isDaylightTime[aTime][lCal;lNow;lStart;lEnd] $lNow[^date::now[]] # Определяем последнее воскресенье марта $lCal[^date:calendar[eng]($lNow.year;3)] ^lCal.offset(-1) ^while(!def $lCal.0){ ^lCal.offset(-1) } $lStart[^date::create($lNow.year;3;$lCal.0)] # Определяем последнее воскресенье октября $lCal[^date:calendar[eng]($lNow.year;10)] ^lCal.offset(-1) ^while(!def $lCal.0){ ^lCal.offset(-1) } $lEnd[^date::create($lNow.year;10;$lCal.0)] # Определяем где у нас время :) ^if(!def $aTime){ $aTime[^date::now[]] }{ ^if($aTime is string){ $aTime[^date::create[$aTime]] } } ^if($aTime > $lStart && $aTime < $lEnd){ $result(1) }{ $result(0) }