Код: Выделить всё
Date: Wed, 35 Sep 2007 16:57:11 +0600
Модератор: xM
Код: Выделить всё
Date: Wed, 35 Sep 2007 16:57:11 +0600
Код: Выделить всё
sub check_h_date () {
#возвращаем 10 балов если: формат заголовка, дата, день недели и время неверны
#UTC не проверяем
my $s = Exim::expand_string('$h_date');
use Date::Calc qw(:all);
while ($s=~/^([A-Za-z]+),\s+([0-9]+)\s+([A-Za-z]+)\s+([0-9]+)\s+([0-9:]+).*/g) {
if (check_date($4,Decode_Month($3),$2)) {
my ($year,$week,$dow) = Standard_to_Business($4,Decode_Month($3),$2);
if (Decode_Day_of_Week($1) == $dow) {
if (check_time(split /:/, $5)) {
return "0";
}
}
}
}
return "10";
}
Код: Выделить всё
warn
set acl_m120 = ${perl{check_h_date}}