Користувальницькькі налаштування

Налаштування сайту


Сайдбар

Розділи

Загальний опис
Історія змін
Рекомендації до оновлення
Плани на майбутнє
Відомі проблеми
Онлайн демо
Допомога проекту
Люди
Трохи про безпеку

FAQ



Редагувати сайдбар

frozenchargedays

Це стара версія документу!


Ограничение количества дней заморозки

Начиная с версии 0.9.0 добавлена совершенно кабалистическая возможность ограничивать количество дней заморозки доступных для пользователя с последующим кулдауном в теченни определенного времени, в течении которого пользователь непременно должен быть активным, то есть - работать.

Описывается это все следующими опциями конфига alter.ini вот в таком виде(для примера):

FREEZE_DAYS_CHARGE_ENABLED=1
FREEZE_DAYS_INITIAL_AMOUNT=365
FREEZE_DAYS_WORK_TO_RESTORE=120

Исходя из вышеописанного значения опций: изначально доступное пользователю количество дней заморозки - 365 (может быть установлено индивидуально для каждого пользователя в профиле), а количество дней кулдауна - 120 (так же может быть установлено индивидуально). Это значит, что в течении неограниченного времени пользователь может замораживать/размораживать свою услугу, но счетчик, тем не менее - тикает каждый день, пока активна заморозка услуги - уменьшается количество доступных дней заморозки. Когда эти самые доступные дни будут исчерпаны - заморозка у пользователя будет отключена и включить ее будет невозможно до тех пор, пока пользователь не “отработает” 120 дней. При чем он именно должен быть активным в течении указанного количества дней - просто внести денег >= количеству дней кулдауна - не выйдет. Соответственно, если пользователь не активен - дни кулдауна не считаются. Как только пользователь честно отработал 120 дней - ему возвращается возможность замораживать услугу и 365 доступных для заморозки дней.
Вот как-то так.

Вся обработка производится ежедневным вызовом соответствующего действия из Remote API - freezedayscharge. Желательно до начисления абонплаты.

Например вот так:

45 23 * * * /bin/ubapi "freezedayscharge" 


Так же не забываем добавить аналогичные опции в userstats.ini

FREEZE_DAYS_CHARGE_ENABLED=1
FREEZE_DAYS_INITIAL_AMOUNT=365
FREEZE_DAYS_WORK_TO_RESTORE=120

чтобы хитрые пользователи не могли устанавливать себе заморозку из личного кабинета в обход системных настроек.

Как вы уже, наверное, поняли в случае, если какому-то конкретному пользователю нужно отключить ограничение количества дней приостановки можно легко “обойти” систему и поставить овер9000 несметное количество дней приостановки, либо попросту поставить значение дней кулдауна равным 0.


frozenchargedays.1664019551.txt.gz · Востаннє змінено: 2022/09/24 14:39 повз 127.0.0.1