Пользователь разрешает/отказывается от получения электронной почты

Есть ли способ для пользователя отказаться от получения электронного письма при срабатывании правила?

У меня есть правило отправлять электронное письмо автору узла каждый раз, когда создается новый узел, который на него ссылается. Это делается следующим образом;

Событие ON После сохранения нового контента, ЕСЛИ созданный контент опубликован

DO actionЗагрузить ссылочный узел действиеЗагрузить действие автора ссылочного контентаОтправить письмо пользователю

К сожалению, автор узла не может отказаться от получения электронного письма. Любая идея, как я могу сделать отправленное электронное письмо условным после того, как оно будет помечено первым? Или, что еще лучше, есть ли способ установить флажок в исходной форме создания узла, где пользователь может согласиться или отказаться от получения этих уведомлений? Или может у кого есть другие идеи? Возможно, еще один модуль...?


person Meggy    schedule 15.04.2012    source источник
comment
Я не использую правила много, так что я не могу сказать. Однако это было бы легко сделать с помощью пользовательского модуля, который просто позволяет пользователю отказаться.   -  person Joshua Kissoon    schedule 16.04.2012


Ответы (1)


Одно из решений состоит в том, чтобы действительно включить новое поле, флажок на исходном узле, который авторы могут изменить, чтобы подписаться на электронные письма или отказаться от них. Вы можете установить поле как скрытое на вкладке «Управление отображением».

Затем просто отредактируйте свое правило, добавив условие типа «Значение данных пусто», чтобы вы могли проверить, установлен ли новый флажок или нет. При настройке этого нового условия введите «узел:», а затем выберите новое поле в селекторе данных и обязательно установите флажок «Отменить», если это необходимо (в зависимости от того, как вы установили выберите язык в флажке: т.е. означает, что по умолчанию выбрано согласие или отказ). Если флажок говорит «Включить», то проверенное значение вернет false для пустого, поэтому вы должны отменить его в условии.

Теперь это должно запустить правило, основанное на новом поле!

person Boriana Ditcheva    schedule 18.04.2012
comment
Привет, Бориана, я добавил поле флажка к типу узла с этими разрешенными значениями; unsubscribe|uncheck to unsubscribe. subcribe|Check to subscribe and receive email when someone replies to this segment. Я не видел в правилах параметра "Значение данных пусто". Должен ли я проверить, что поле имеет значение вместо этого? Я использую Drupal 6 и правила 6.x-1.4. - person Meggy; 28.04.2012
comment
Кроме того, если правило выполняется на ссылочном (дочернем) узле, как проверить, что значение данных пусто для исходного ссылочного (родительского) узла? - person Meggy; 30.04.2012
comment
Мегги, я не знал, что вы используете Drupal 6. Я сам использую Drupal 7. Вы правы во втором комментарии, что хотите проверить поле, существующее в указанном узле, а не то, которое вызывает правило. Почему бы вам не протестировать опцию «поле имеет значение», которую дают вам правила Drupal 6. Просто убедитесь, что при указании поля сначала введите «узел:», а затем выберите поле, на которое указывает ссылка, а затем посмотрите, можно ли выбрать поле флажка, прикрепленное к нему. Имеет ли это смысл?? - person Boriana Ditcheva; 30.04.2012