Разработчикам: заморозка услуг
Параметр "Не уходить в минус" в самой услуге
В услуге в таблице services в поле param вставляется фгагмент: 'wait_pos_balance' => '1'. Когда эта конкретная услуга подключается клиенту, то проверяется: $service_new->{param}{wait_pos_balance} && $user->{balance} < $service_new->{approximate_price} и тогда в этой подключаемой услуге устанавливается нулевая стоимость и тег wait_pos_balance. Длительность услуги 1 сек - т.е. как можно скорейшее завершение.
В этом варианте заморозки wait_pos_balance вроде как не проверяется модулем ядра services - он просто постоянно пытается завершить эту услугу. А если денег недостаточно и в услуге уже есть тег wait_pos_balance, то ее завершение блокируется (die в самой услуге). Как только денег становится достаточно - замораживаемая услуга таки завершается и подключается новая на полную стоимость.
- ajUserSrvInfo.pl кода в тегах услуги видит wait_pos_balance, пишет: Будет активирована когда будет достаточно финансов
- ajUserSrvList.pl в поле "стоимость" пишет "Заморожена"