sviluppo:hooks
Hooks
Gli hooks nascono con lo scopo di estendere delle funzionalità del framework, senza impattare in maniera importante nella struttura esistente.
Configurazione
Nel file hooks/hooks.ini devono essere censiti gli hook presenti nell'applicativo, ecco un esempio:
[citywareHook.php] active=1
In questo caso, l'hook è attivo, ed è richiesta la presenza del file hooks/citywareHook.php
Implementazione classe hook
Il codice si divide in due fasi:
- Registrazione delle funzioni, in risposta a particolari eventi
- Implementazione delle funzioni di risposta degli eventi
Es. Cityware:
<?php itaHooks::register('post_login', 'cityware_post_login'); function cityware_post_login($args) { require_once ITA_BASE_PATH . '/apps/CityBase/cwbParGen.class.php'; require_once ITA_BASE_PATH . '/apps/CityBase/cwbLibDB_BOR.class.php'; $libDB_BOR = new cwbLibDB_BOR(); // Imposta anno contabile cwbParGen::setAnnoContabile(date("Y")); // Imposta cliente $cliente = $libDB_BOR->leggiBorClient()[0]; cwbParGen::setBorClient($cliente); // Imposta enti per il cliente $enti = $libDB_BOR->leggiBorEntiClient($cliente['PROGCLIENT']); cwbParGen::setBorEnti($enti); } ?>
In questo caso, Cityware imposta in sessione delle variabili, per poi utilizzarle successivamente in tutti i moduli al bisogno.6 visualizzazioni.
sviluppo/hooks.txt · Ultima modifica: 2024/10/15 09:45 da 127.0.0.1