Коллеги!
Вот такая задача: Есть опросник (анкета, survey), выполненный средствами webforms. Как сделать, чтобы анонимный юзер получал доступ к материалу (некой ноде) только после заполнения опросника?
Программа максимум:
Автор постит материал (через десктопный клиент), при создании нового материала автоматически создается клон опросника (triggers? а как именно?), который привязывается к материалу (как-то привязывается, например через доп. поле). На главной странице повисает тизер материала и с него идет линка на опросник, после заполнения юзер попадает на страницу самого материала. На гл. странице несколько тизеров разных материалов и все они линкуются на основной материал через опросник)
Программа минимум: Клоны опросников создаются ручками. Связывание ручное.
Спасибо.
Комментарии
Я бы сделала так:
1. Опросник = профиль пользователя.
2. Доступ к контенту только зарегистрированным.
3. Все поля профиля обязательны при регистрации.
Готово.
Минусы - в Друпале (почему-то) не возможно нормально получить данные из профиля, типа: из 5 пользователей 2 выбрали то-то, 1 это, а еще 2 проигнорировали...
Может, если через контент профайл, будет лучше...
Да в случае с зерегистрированными юзерами так бы получилось.
Задача, однако, требует анонимам иметь доступ к контенту после заполнения опросника
Без регистрации.
Если анонимам, то только через cookie. Ставьте ему куки в случае успешного заполнения опроса и давайте доступ к материалу только после проверки на наличие куки.
Проверку на наличие (права доступа) можно реализовать через модуль, либо через костыль - внутри файла шаблона для конкретной ноды, типа материала и и т.п.
Webform умеет чекать IP. Так что сама форма работает с анонимами. Тут вопрос скорее как сделать, чтобы контент был недоступен до заполнения ну и как написать редирект после заполнения, чтоб туда передавались id ноды контента. Откуда вот его брать. Но в идеале хочется автоматики. Чтоб не нужно было создавать это поле референсов в нод типе контента и ручками связывать опросник и контент.
Webform умеет чекать IP. Так что сама форма работает с анонимами. Тут вопрос скорее как сделать, чтобы контент был недоступен до заполнения ну и как написать редирект после заполнения, чтоб туда передавались id ноды контента. Откуда вот его брать. Но в идеале хочется автоматики. Чтоб не нужно было создавать это поле референсов в нод типе контента и ручками связывать опросник и контент.
Следить