Rules

Ritratto di Vanni

Questo modulo è molto potente e ci viene in aiuto molteplici momenti, ma allo stesso tempo è abbastanza ostico da comprendere, soprattutto all'inizio.

Rules si utilizza quando vogliamo che in determinate situazioni o quando vengono soddisfatte delle "regole" (da noi impostate), il nostro sito web compia delle azioni, ad es. invii e-mail o visualizzi messaggi o compia reindirizzamenti o svariate altre azioni. Ricordo che per azioni "semplici", si può usare il modulo Trigger, gia' presente di default nel nostro Drupal 7. 

Puoi scaricare Rules da qui, ma ha bisogno anche di Entity API.

In questa pagina riporto un semplicissimo esempio di utilizzo di questo modulo, ma invito vivamente a leggere la documentazione ufficiale.

Descrizione d'uso del modulo Rules

Tema: ho un sito in cui gli utenti autenticati possono creare contenuti e inserire commenti. Per disincentivare il comportamento maleducato da parte degli utenti, creo un ruolo utenti denominato Libro Nero in cui inserisco gli utenti "segnalati" e gli blocco la possibilita' di postare commenti. Voglio che quando un utente effettua il login, Drupal gli notifichi di essere stato inserito nel Libro Nero.

Svolgimento:

  • abilito i moduli sopracitati e vado nella pagina di configurazione di Rules
  • clicco su Add new rule
  • assegno alla nuova regola: Nome = Utenti in castigo e React on event = User has logged in; quindi creo una regola che verra' richiamata nel momento in cui un utente effettua il login
  • creazione di una nuova regola
  • clicco su Salva e appare la pagina di riepilogo della regola, ora devo assegnare le condizioni e le relative azioni
  • pagina di riepilogo della nuova regola
  • clicco su  add condition (questo campo non è obbligatorio, ma serve ad inserire le condizioni della regola che determinano le azioni del sito)(possono essere piu' condizioni e possono essere unite da comandi OR e AND)
  • inserisco come data selector account ( questo e' uno dei punti ostici di questo modulo, consiglio di leggere la relativa pagina del manuale)
  • e in Ruoli Value seleziono Libro nero (quindi questa regola funziona solo se l'utente autenticato e' stato inserito in questo ruolo)
  • creazione delle condizioni della regola
  • clicco su Salva e torno alla pagina del riepilogo della regola
  • pagina riepilogo regola con le condizioni assegnate
  • come si vede posso assegnare una nuova condizione o posso unire piu' condizioni tramite OR o AND (porte logiche)
  • ora assegno una azione che Drupal deve svolgere nel caso la condizione della regola venga confermata
  • clicco su add action 
  • scelgo Show a message in the site (praticamento voglio che venga mostrato un messaggio)
  • inserisco  Value (cioe' il testo del messaggio), Message type (cioe' se deve essere un messaggio: di stato, di errore o di avviso) e Repeat Message (cioe' se il messaggio deve essere ripetuto ogni volta che l'utente esegue il login)
  • cliccando su Replacement Pattern si apre un elenco coi token che posso inserire nel messaggio (nell'esempio ho inserito il token: [account:name] per far visualizzare il nome dell'utente)
  • inserimento dell'azione che Drupal deve eseguire
  • clicco su Salva e torno alla pagina del riepilogo della regola e qui salvo le modifiche 
  • pagina riepilogo della regola con le nuove azioni impostate
  • ora allo stesso modo visto sopra, inserisco una regola che fa visualizzare un messaggio di saluto agli utenti quando effettuano il login
  • da notare che questa volta non inserisco una condizione quindi la regola si applica a tutti gli utenti che si autenticano
  • pagina di riepilogo della seconda regola, senza condizioni
  • e questo e' il risultato finale:
  • quando achille (utente educato) effettua il login, Drupal visualizza un messaggio di saluto
  • utente autenticato con messaggio di benvenuto
  • quando Mauro (utente maleducato) si autentica appare sia il messaggio di benvenuto che l'avviso che lui e' stato inserito nel Libro Nero
  • visualizzazione del messaggio di avviso per utenti nel Libro Nero
  • da notare che il token [account:name] e' stato trasformato nel nome dell'utente Mauro

Commenti

Aggiungi un commento

Filtered HTML

  • Indirizzi web o e-mail vengono trasformati in link automaticamente
  • Elementi HTML permessi: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Linee e paragrafi vanno a capo automaticamente.

Comment

  • Elementi HTML permessi: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Linee e paragrafi vanno a capo automaticamente.
  • Indirizzi web o e-mail vengono trasformati in link automaticamente

Plain text

  • Nessun tag HTML consentito.
  • Indirizzi web o e-mail vengono trasformati in link automaticamente
  • Linee e paragrafi vanno a capo automaticamente.
Per tutelare la vostra privacy suggerisco l'uso di un nickname o lasciare anonimo...
CAPTCHA
Questa domanda e' per testare se sei un visitatore persona e non un software che genera spam
6 + 0 =
Risolvi la semplice domanda di matematica e inserisci il risultato. Es. se e' 1 + 3 inserisci 4.