Помогите составить правило.
При создании или изменении ноды.
Проверить количество userpoints у автора и сравнить с переменной [price]:
- если поинтов достаточно - списать [price] и опубликовать ноду.
- если не достаточно - редирект на страницу "Пополнить баланс"
В селекторе данных не могу найти ничего подходящего. Буду очень благодарен даже за ссылку.
Комментарии
почему бы не сделать редирект на страницу "пополнить баланс" в пхп условии кондишена?
публикация ноды и списание будет в экшенах.
Могу дать патч, который добавит в Условия собственно следующее условие: "Check how many points a user has", то есть условие даёт возможность проверить количество Очков в определённой категории.
Например:
Пользователь
node:author
Points category
General
Пороговое значение
50
Comparison
Больше либо равно
В остальном помочь не могу...
Спасибо, amator. Можете на почту lipinart@mail.ru или линк сюда кинуть?
Держи. Тут собственно даже не патч, а готовый файл, закинешь его в папку с модулем, с заменой файла и не забудь очистить кэш в друпале, чтобы увидеть изменения.
Да. Забыл сказать. Закинуть надо в папку модуля Userpoints.
Нешел таки модуль Conditional Rules, который позволяет добавить условия прямо в действие с помощью конструкций if-else, switch и while.
Настроение поднялось и задача усложнилась:
Добавилось поле "Срок публикации" типа integer, где пользователь может указать 1,2,3 или 4 недели.
Соответственно и количество поинтов будет варироваться.
И тут засада. Если нода отработала (была оплачена и провисела указаный срок на сайте), а пользователь решил позобновить (не создавать же ему новую ноду). И ситуация когда нода еще не отработала указанный срок и пользователь изменил значение поля "Срок публикации"
Получается нужно создать 3 разных правила на каждую ситуацию. Буду экспериментировать, позже отпишусь.