Tipi di evento

Sar-At riconosce due tipologie di evento: quelli collegati al database (per esempio, arriva un amministratore e cancella una pagina) e quelli collegati soltanto alle azioni dei visitatori (per esempio, un visitatore registrato clicca un pulsante speciale sul sito).

Un evento sul database può venire scatenato in molti modi differenti. Una pagina, per esempio, può venire inserita in molti modi: può succedere quando un amministratore va nel menu Pagine di Sar-At e clicca Aggiungi pagina ma anche quando un altro amministratore importa dal pulsante Importa pagine. Se la sezione interessata è una sezione modulo, anche i visitatori del sito possono aggiungere pagine, semplicemente compilando il modulo. Quindi gli eventi di tipologia database possono accadere anche in risposta alle azioni dei visitatori, quando nessun amministratore è connesso a Sar-At.

Tipologia

Nome

Scatta quando…

Database

INSERT

Una pagina viene creata o importata per la prima volta nel database, da un amministratore o da un visitatore. Notate che l'evento scatta anche se la pagina è invisibile ai visitatori.

Database

UPDATE

Una pagina esistente viene editata e aggiornata da un amministratore. Nelle sezioni modulo aggiornabili, anche i visitatori registrati possono aggiornare una pagina: la loro.

Database

DELETE

Una pagina esistente viene rimossa da un amministratore

Visitatori

USER

Un visitatore accede allo speciale indirizzo sarat/sar-at_evtmgr.inc.php

Visitatori

ERROR

Un visitatore accede a un indirizzo Sar-At non esistente, per esempio showPage.php?template=inesistente

Visitatori

SALE

Un visitatore completa un acquisto attraverso il sistema di commercio elettronico integrato

Database

BULK-DELETE

Un amministratore cancella un grippo di pagine (record). Questo attualmente può accadere in due casi. Primo, quando il proprietario del sito distrugge una intera sezione del sito stesso. Secondo, quando un amministratore importa nuove pagine (record) da un file esterno e nel farlo sovrascrive o distrugge molte pagine esistenti

Gli eventi collegati al database scattano automaticamente, senza che si debba fare alcuna lavorazione sullo HTML del sito.

Quando un redattore lavora su un sito multilingue e cancella una traduzione in una lingua, il sistema automaticamente si offre di cancellare tutte le altre traduzioni. In questo caso viene mandato un evento delete per ciascuna localizzazione, non un bulk-delete per tutte.

Gli eventi USER vanno fatti scatenare attraverso un eccesso allo speciale indirizzo

  /sarat/sar-at_evtmgr.inc.php

Ecco un esempio in HTML:

  <a href='sarat/sar-at_eventmgr.inc.php?template=prod&amp;id={id}&amp;returnURL={sarelURL}'>
  Ricevi una mail quando la scheda prodotto viene aggiornata
  </a>

La tabella successiva presenta i tre parametri richiesti da sar-at_evtmgr.inc.php (sono tutti e tre obbligatori e possono venire passati indifferentemente in modalità GET o i modalità POST).

Nome

Significato

Id

Identificatore numerico dell'evento. Deve essere un numero intero

Template

Sezione collegata all'evento. Deve essere il nome di una sezione effettivamente presente nel menu Pagine di Sar-At

returnURL

Indirizzo della pagina da mostrare al visitatore in risposta al clic. Può essere sia l'indirizzo di una pagina HTML statica (come grazie.html) sia una pagina sintetizzata da Sar-At (come showPage.php?template=xyz). Se desiderate che il visitatore resti nella pagina corrente potete scrivere {sarelURL}

Ricordate che {sarelURL} non funziona dentro showForm

In ciascun caso, gli eventi possono venire filtrati e parcellizzati. Cioè, possiamo creare un evento che scatta ogni volta che viene editata una qualsiasi pagina della sezione "prodotti" oppure un evento specifico per il prodotto 23 e uno ben diverso per il prodotto 24. Nel primo caso basta indicare lo id zero.