Descrizione: Modifica dati prima della visualizzazione
Sorgente PHP: examples/events/result.php
Sorgente XML: examples/events/result.xml
La propagazione degli eventi è legata alle richieste HTML e AJAX eseguite. Tutte le richieste vengono gestite dalla variabile di post:
- data ($_POST["data"]) Variabile dedicata per indicare il tipo di azione da eseguire
- dsobjname ($_POST["dsobjname"]) Variabile dedicata per indicare l'oggetto ds da utilizzare
- dswhere ($_POST["dswhere"]) Variabile dedicata per impostare un filtro su tutti i ds
- ds1where ($_POST["ds1where"]) Variabile dedicata per impostare un filtro esclusivo per il ds chiamato "ds1" (per un ds chiamato "prova" la variabile sarà "provawhere")
Per eseguire le varie operazioni si utilizza nei post la variabile "data", in base al suo valore verrà eseguita una certa operazione:
| data | dsobjname | Tipo Richiesta | Operazione | Dati restituiti |
| Non settato | Non settato | POST/HTML | Carica la pagine HTML priva dei dati dei datasource | HTML(Codice) |
| loadall | Non settato | POST/AJAX | Esegue la selezione di tutti i datasource dichiarati | XML(Javascript + Dati DS) |
| login | Settato | POST/AJAX | Esegue l'autenticazione di sistema tramite il datasource | XML(Javascript + Dati DS) |
| changepasswd | Settato | POST/AJAX | Effettua il cambio della password per il sistema di autenticazione | XML(Javascript + Dati DS) |
| load | Non settato | POST/AJAX | Esegue la selezione di tutti i datatasource dichiarati | XML(Javascript + Dati DS) |
| load | Settato | POST/AJAX | Esegue la selezione del ds specificato | XML(Javascript + Dati DS) |
| new | Non settato | POST/AJAX | Esegue il salvataggio dei dati per il ds specificato | XML(Javascript + Dati DS) |
| update | Settato | POST/AJAX | Esegue l'update dei dati per il ds specificato | XML(Javascript + Dati DS) |
| delete | Non settato | POST/AJAX | Esegue l'eliminazione dei dati per il ds specificato | XML(Javascript + Dati DS) |
| deleteall | Non settato | POST/AJAX | Esegue lo svuotamento di tutta la tabella per il ds specificato | XML(Javascript + Dati DS) |
| store | Non settato | POST/AJAX | Esegue la storizzazione dei dati per il ds specificato | XML(Javascript) |
| rewrite | Settato | POST/AJAX | Riscrive il codice html di un ogetto della pagina | HTML(Codice + Javascript) |
CARICAMENTO DELLA PAGINA
Il caricamento della pagina avviene in due fasi: html e dati.
Per prima cosa viene generato il codice HTML della pagina priva dei dati dei ds. Il codice HTML viene generato una sola volta. Se nelle proprietà dell'oggetto page è settata la proprietà "loadall" a "true" viene scaturita, alla visualizzazione della pagina, la richiesta AJAX per la selezione di tutti i datasource (data=loadall).
CARICAMENTO DELLA PAGINA SENZA DATASOURCE
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | non settato | html_before_load(); | - | - | - | - | Inizio. |
| 02 | non settato | html_load(); | - | SI | - | - | Gli oggetti della pagina sono istanziati e si possono modificare le proprietà. |
| 03 | non settato | html_after_load(); | - | SI | SI | - | Il codice HTML è già stato restituito al browser. |
CARICAMENTO DELLA PAGINA CON DATASOURCE
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | non settato | html_before_load(); | - | - | - | - | Inizio. |
| 02 | non settato | html_load(); | - | SI | - | - | Gli oggetti della pagina sono istanziati e si possono modificare le proprietà. |
| 03 | non settato | html_after_load(); | - | SI | SI | - | Il codice HTML è già stato restituito al browser. |
| 04 | loadall | data_before(); | - | - | - | - | Inizio richiesta data. |
| 05 | loadall | data(); | - | - | - | SI | E' possibile annullare l'eseguzione di tutti gli eventi successivi. |
| 06 | loadall | data_before_loadall(); | - | - | - | - | Inizio selezione di tutti i datasource. |
| 07 | loadall | data_loadall(); | - | - | - | SI | Viene eseguito prima del caricamento degli oggetti. E' possibile annullare il caricamento degli oggetti dal sorgente xml. |
| 08 | loadall | data_after_loadall(); | - | SI | - | - | Se non annullato dall'evento precedente viene generato al termine del caricamento degli oggetti. |
| 09 | loadall | data_last_multirequest(); | - | SI | - | - | Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima. |
| 10 | loadall | data_after(); | - | SI | - | - | Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta. |
AUTENTICAZIONE
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | login | data_before(); | - | - | - | - | Inizio richiesta data. |
| 02 | login | data(); | - | - | - | SI | E' possibile annullare l'eseguzione di tutti gli eventi successivi. |
| 03 | login | data_before_login(); | - | - | - | - | Inizio procedura di autenticazione. |
| 04 | login | data_login(); | Oggetto DS | SI | - | SI | Viene eseguito prima della verifica delle credenzialità. E' possibile annulla la procedura di autenticazione. |
| 05 | login | data_after_login(); | Oggetto DS | SI | - | - | Se non annullato dall'evento precedente viene generato in caso credenziali valide. |
| 06 | login | data_last_multirequest(); | - | SI | - | - | Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima. |
| 07 | login | data_after(); | - | SI | - | - | Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta. |
CAMBIO PASSWORD DI AUTENTICAZIONE
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | changepasswd | data_before(); | - | - | - | - | Inizio richiesta data |
| 02 | changepasswd | data(); | - | - | - | SI | E' possibile annullare l'eseguzione di tutti gli eventi successivi. |
| 03 | changepasswd | data_before_changepasswd(); | - | - | - | - | Inizio procedura di cambio password. |
| 04 | changepasswd | data_changepasswd(); | Oggetto DS | SI | - | SI | Viene eseguito prima della cambio password. E' possibile annullare la procedura di cambio password. |
| 05 | changepasswd | data_after_changepasswd(); | numero righe modificate | SI | - | - | Se non annullato dall'evento precedente viene generato dopo il cambio della password. |
| 06 | changepasswd | data_last_multirequest(); | - | SI | - | - | Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestista sia l'ultima. |
| 07 | changepasswd | data_after(); | - | SI | - | - | Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta. |
CARICAMENTO DATASOURCE
E' possibile, specificando la variabile di post "dsobjname", quale oggetto ds caricare, altrimenti saranno caricati tutti i ds presenti nel codice XML.
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | load | data_before(); | - | - | - | - | Inizio richiesta data. |
| 02 | load | data(); | - | - | - | SI | E' possibile annullare l'eseguzione di tutti gli eventi successivi. |
| 03 | load | data_before_lload(); | - | - | - | - | Inizio procedura di caricamento del datasource. |
| 04 | load | data_load(); | - | - | - | SI | Viene eseguito prima del caricamento degli oggetti ds dal sorgente XML. E' possibile annulla la procedura caricamento degli oggetti. |
| 05 | load | data_after_load(); | - | SI | - | - | Se non annullato dall'evento precedente viene generato dopo il caricamento degli oggetti. |
| 06 | load | data_last_multirequest(); | - | SI | - | - | Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima. |
| 07 | load | data_after(); | - | SI | - | - | Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta |
INSERIMENTO DEI DATI IN UN DATASOURCE
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | new | data_before(); | - | - | - | - | Inizio. |
| 02 | new | data(); | - | - | - | SI | E' possibile annullare l'eseguzione di tutti gli eventi successivi. |
| 03 | new | data_before_new(); | - | - | - | - | Inizio procedura di inserimento dei dati. |
| 04 | new | data_new(); | Oggetto DS | SI | - | SI | Viene eseguito prima della procedura di inserimento dei dati. E' possibile annulla la procedura di inserimento. |
| 05 | new | data_after_new(); | Oggetto DS | SI | - | - | Se non annullato dall'evento precedente viene generato dopo l'inserimento dei dati. |
| 06 | new | data_last_multirequest(); | - | SI | - | - | Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima. |
| 07 | new | data_after(); | - | SI | - | - | Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta. |
MODIFICA DEI DATI DI UN DATASOURCE
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | update | data_before(); | - | - | - | - | Inizio. |
| 02 | update | data(); | - | - | - | SI | E' possibile annullare l'eseguzione di tutti gli eventi successivi. |
| 03 | update | data_before_update(); | - | - | - | - | Inizio procedura modifica dei dati. |
| 04 | update | data_update(); | Oggetto DS | SI | - | SI | Viene eseguito prima della procedura di modifica dei dati. E' possibile annulla la procedura di modifica. |
| 05 | update | data_after_update(); | Oggetto DS | SI | - | - | Se non annullato dall'evento precedente viene generato dopo la modifica dei dati. |
| 06 | update | data_last_multirequest(); | - | SI | - | - | Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima. |
| 07 | update | data_after(); | - | SI | - | - | Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta |
ELIMINAZIONE DEI DATI DA UN DATASOURCE
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | delete | data_before(); | - | - | - | - | Inizio. |
| 02 | delete | data(); | - | - | - | SI | E' possibile annullare l'eseguzione di tutti gli eventi successivi. |
| 03 | delete | data_before_delete(); | - | - | - | - | Inizio procedura di eliminazione dei dati |
| 04 | delete | data_delete(); | Oggetto DS | SI | - | SI | Viene eseguito prima della procedura di eliminazione dei dati. E' possibile annulla la procedura di eliminazione. |
| 05 | delete | data_after_delete(); | Oggetto DS | SI | - | - | Se non annullato dall'evento precedente viene generato dopo l'eliminazione dei dati. |
| 06 | delete | data_last_multirequest(); | - | SI | - | - | Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima. |
| 07 | delete | data_after(); | - | SI | - | - | Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta |
ELIMINAZIONE DI TUTTI I DATI DI UN DATASOURCE(Tabella)
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | deleteall | data_before(); | - | - | - | - | Inizio. |
| 02 | deleteall | data(); | - | - | - | SI | E' possibile annullare l'eseguzione di tutti gli eventi successivi. |
| 03 | deleteall | data_before_deleteall(); | - | - | - | - | Inizio procedura di eliminazione dei dati. |
| 04 | deleteall | data_deleteall(); | Oggetto DS | SI | - | SI | Viene eseguito prima della procedura di eliminazione dei dati. E' possibile annulla la procedura di eliminazione. |
| 05 | deleteall | data_after_deleteall(); | Oggetto DS | SI | - | - | Se non annullato dall'evento precedente viene generato dopo l'eliminazione dei dati. |
| 06 | deleteall | data_last_multirequest(); | - | SI | - | - | Viene eseguito solo in presenza di richieste multiple e nel caso in cui la richiesta gestita sia l'ultima. |
| 07 | deleteall | data_after(); | - | SI | - | - | Ultimo evento utile prima della generazione dei dati XML di risposta se previsti dalla richiesta. |
STORIZZAZIONE DEI DATI
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | store | data_before(); | - | - | - | - | Inizio. |
| 02 | store | data(); | - | - | - | SI | E' possibile annullare l'eseguzione di tutti gli eventi successivi. |
| 03 | store | data_before_store(); | - | - | - | - | Inizio procedura di storizzazione dei dati. |
| 04 | store | data_store(); | - | - | - | SI | Viene eseguito prima della procedura di storizzazione dei dati. E' possibile annulla la procedura di storizzazione. |
| 05 | store | data_after_store(); | - | - | - | - | Se non annullato dall'evento precedente viene generato dopo la storizzazione dei dati. |
REWRITE DI UN OGGETTO DELLA PAGINA
| Ordine | data | Evento | Parametri | Oggetti Istanziati | Codice Generato | Annullabile | DESCRIZIONE |
| 01 | rewrite | html_before_rewrite(); | ID Oggetto | - | - | - | Inizio. |
| 02 | rewrite | html_rewrite(); | - | SI | - | - | L'oggetto è istanziato e si possono modificare le proprietà. |
| 03 | non settato | html_after_rewrite; | - | SI | SI | - | Il codice HTML è già stato restituito al browser. |