1. Создаём роль VIP.
2. Включаем Content Permissions (в ССК)
a. Создаём тип контента VIP. Убиваем в нем дефолтное «боди».
b. В типе контента VIP создаём текстовое поле VIP
c. В разрешениях admin/user/permissions для поля VIP указываем право чтения только для роли VIP
3. Включаем модули Rules, Ubercart, Ubercart - Userpoints (Userpoints Product), Userpoints (Userpoints No Negative, Userpoints Role, Userpoints rules integration).
4. Создаём товар «point» ценой 1 рубль.
5. Создаём правило: вычитание 1 балла за просмотр ноды VIP.
a. Настройки правила: «Content is going to be viewed»
b. IF: указать тип контента VIP
c. DO: указать «Grant points to a user» = -1.
6. В /admin/settings/userpoints указываем: Points for Roles/ Role settings/ Баллов для роли:VIP = 1
В итоге получаем:
1. Анонимусы и юзеры не могут просматривать контент VIP.
2. Юзеры оплачивают (покупая points) любую сумму, в результате чего баланс становится >0, юзер получает автоматически роль VIP и доступ к контенту VIP.
3. Просматривает ноды VIP, в результате каждый раз теряет по баллу, и так до 0 – в этот момент роль сбрасывается до юзера.
ПС. Не забудьте включить Userpoints No Negative, т.к. юзеры видят заголовки нод, и иначе при тыке баланс будет уходить в минус.
ППС. Цену можно любую ставить, в Points for Roles указывать соответственно.