Session-Timeout неверно считается

Ответить
NiTr0
Сообщения: 767
Зарегистрирован: Пт фев 08, 2008 4:46 pm

Session-Timeout неверно считается

Сообщение NiTr0 »

Собссно столкнулся с сабжем. Тайм-аут считается до конца месяца - независимо от даты окончания пакета :shock:
Версия 0.42, когда оно поломалось - сложно сказать...

Вот собссно исправление (в виде патча не выклаыдваю - т.к. именно в данных кусках кода много исправлений), возможно - немного кривоватое, но все же:

В Auth.pm в dv_auth перед вызовом remaining_time вставить

Код: Выделить всё

 my $timelimit=$self->{ACC_EXPIRE}-$self->{SESSION_START};
 $timelimit=0 if ($timelimit<0);
в вызове remaining_time после

Код: Выделить всё

         POSTPAID            => $self->{PAYMENT_TYPE}
добавить

Код: Выделить всё

         time_limit          => $timelimit
В authenticate добавить в первом же SQL запросе после

Код: Выделить всё

 u.ext_bill_id
строку

Код: Выделить всё

 UNIX_TIMESTAMP(u.expire)
ну и чуть ниже после

Код: Выделить всё

       $self->{EXT_BILL_ID}
добавить

Код: Выделить всё

       $self->{ACC_EXPIRE}

~AsmodeuS~
Site Admin
Сообщения: 5749
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Session-Timeout неверно считается

Сообщение ~AsmodeuS~ »

спасибо внёс правки в код

NiTr0
Сообщения: 767
Зарегистрирован: Пт фев 08, 2008 4:46 pm

Re: Session-Timeout неверно считается

Сообщение NiTr0 »

Еще ИМХО было бы неплохо в конфиге завести переменную для отключения ежемесячного разрыва соединения... Либо - сделать "умный" анализ необходимости обрыва линка, исходя из наличия/отсутствия периодических платежей для данного юзера и типа пакета (месячный или длительностью N дней).

~AsmodeuS~
Site Admin
Сообщения: 5749
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Session-Timeout неверно считается

Сообщение ~AsmodeuS~ »

Всегда считается начало периода это 1 число и нужно чтобы всегда был такой отсчёт

NiTr0
Сообщения: 767
Зарегистрирован: Пт фев 08, 2008 4:46 pm

Re: Session-Timeout неверно считается

Сообщение NiTr0 »

Даже если длительность пакета - 30 дней к примеру, и активирован он скажем 15-го?

Ответить