Dev (Back & Front)ARTIGO

Como disparar ações a determinados eventos – módulo Triger

Este é um pequeno tutorial para usar o módulo Trigger, que acompanha a instalação básica do Drupal 6x.

Primeiro, vejamos para que serve o módulo, conforme sua própria descrição:

Ações são tarefas individuais que o sistema pode realizar, tais
como despublicar um conteúdo ou banir um usuário. Módulos, como o
módulo trigger, podem disparar essas ações quando certos eventos de
sistema ocorrerem; por exemplo, quando um novo conteúdo for adicionado
ou quando um usuário se conectar. Os módulos também podem prover ações
adicionais.
Existem dois tipos de ações: simples e avançadas. As ações simples não
exigem nenhuma configuração adicional e são listadas automaticamente.
Ações avançadas podem fazer mais coisas que as ações simples; por
exemplo, enviar um e-mail para um endereço específico, ou verificar por
certas palavras em um pedaço de conteúdo. Essas ações precisam ser
criadas e configuradas antes de poderem ser usadas.

Definições:
Trigger = Gatilho;
Actions = Ações;
Token = literalmente, símbolo. Tecnicamente: “é
um segmento de texto ou símbolo que pode ser manipulado por um parser,
que fornece um significado ao texto; em outras palavras, é um conjunto
de caracteres (de um alfabeto, por exemplo) com um significado
coletivo. – Wikipédia”
.
Popularmente: “pedaços de marcação que serão substituídas por algum conteúdo”.

Vamos em frente com um exemplo prático.

Situação:
Toda vez que um usuário postar um comentário, o sistema deve enviar
um email para um endereço informado, contendo no campo “assunto” o
título do comentário e no “corpo” do email, a data do servidor (não é a
da criação do comentário) junto com o texto do comentário.

Solução:

Primeiro precisamos criar a ação que será disparada.

Veja a tela da opção “Ação”

1. Acessar a opção “Início Administrar Configuração do site Ações”
>> http://seu_site/admin/settings/actions

Na tela irão aparecer algumas ações já disponíveis. No meu está assim:

Publicar post
Despublicar post
Descartar post
Cancelar destaque do post
Promover post para a página inicial
Remover post da página inicial
Salvar post
Bloquear usuário atual
Banir o endereço de IP do usuário atual

Como não há nenhuma ação para enviar email, vamos ter que criar uma.

2. No final dessa página, no campo “Tornar uma nova ação avançada
disponível”, selecione “Send tokenized e-mail” e clique em enviar.

3. Na nova tela (Configurar uma ação avançada) preencher como no exemplo:

Veja a tela da opção Configurar Ação

3.1 Descrição: “Avisar Admin Comentario Novo”
É o nome que vamos identificar a ação.
Obs.: nesse campo estará aparecendo o nome padrão “Send tokenized
e-mail” que poderá ser substituído ou não, dependendo da preferência.
No nosso caso, estou alterando para um nome mais sugestivo.

3.2 destinatário: webmaster@seusite.com.br
Aqui você tem 2 opções, ou informa um endereço de email (webmaster@seusite.com.br)
ou um token, que poderia ser o [site-mail], digitando exatamente como
está. Dessa forma, ao disparar a ação, o campo “[site-mail]” será
substituído pelo email do site. Seguem alguns só para conhecimento:
Global tokens
[user-name] Nome do usuário corrente que está logado
[user-mail] Email do usuário corrente que está logado
[site-url] A url do site

Para uma lista completa de todos os tokens disponíveis, basta clicar no final da página na opção: “Placeholder tokens”

3.3 assunto: [comment-title-raw]
Vamos usar um token, que vai informar o título do comentário

3.4 mensagem: Um novo comentário foi publicado em [site-date]: [comment-body-raw]
Usamos um token para a data do servidor, seguido de dois-pontos e do corpo do comentário.

3.5. Salvar e o sistema retorna a tela anterior.

Com nossa ação criada, o próximo passo é configurar o gatilho(trigger) para acioná-la.

Veja a tela da opção Gatilho

4. Acessar a opção “Início Administrar Construção do site Gatilhos”
>> http://seu_site/admin/build/trigger/comment

Opções disponíveis:
* Comentários    * Conteúdo    * Cron    * Taxonomia    * Usuários

Como nossa ação vai atuar nos comentários, vamos selecionar “Comentários”.
Na nova tela, serão exibidos os gatilhos disponíveis.

5. Vamos ao que nos interessa, que é o “Gatilho: Depois de salvar um novo comentário”
e na caixa select, a ação que nós criamos vai estar lá: “System
>> Avisar Admin Comentario Novo”. Selecione e clique em
“atribuir”.

6. The end 😀

Abs e espero ter ajudado.

*

Publicado originalmente em Drupal Brasil por Marco Antonio

é a maior comunidade brasileira de profissionais Drupal, gerando conteúdo de qualidade também para o iMasters. http://drupal-br.org

Ver perfil