admin
recaetano
MaimiSwillowl
alikon
pippo Nei form di registrazione dei siti più importanti, come Google ad esempio, quando digitate il nome utente viene immediatamente scatenata la verifica che il nome utente scelto sia disponibile, vediamo come è possibile utilizzare la stessa tecnica sul nostro form di registrazione basato su Joomla. Utilizzeremo la tecnologia AJAX che grazie al framework Mootools è integrato di default in Joomla. Vedremo come implementare il controllo della disponibilità del nome utente senza modificare il codice core di Joomla. Per questo abbiamo bisogno di creare un componente che risponderà alle chiamate AJAX e di fare l'override del layout del form di registrazione per innescare la richiesta. Nel nostro componente nel controller realizziamo la funzione chkUsername() che controllerà l'esistenza del nome utente digitato nel form e ci ritornerà l'esito
Vediamo ora come codificare lo scatenarsi della richiesta di verifica, per far ciò ci avvarremo della cosidetta tecnica del "Layout override", in cosa consiste, anche se può sembrare complicato è molto semplice si tratta di utilizzare un layout diverso da quello standard di joomla, più precisamente faremo l'override del layout del form di registrazione via template. Supponendo che il nostro template di default sia beez_20, ma lo stesso ragionamento vale per qualsiasi template, andiamo nella cartella html del nostro template e creiamo la cartella com_users al suo interno la cartella registration, qui metteremo il nostro "layout override" il file default.php che vediamo nel dettaglio: inseriamo il javascript per la chiamata ajax alla nostra funzione chkUsername
come visto nel codice javascript allo scatenarsi dell'evento on blur sul nostro campo username viene chiamata in modo asincrono (ajax) la nostra funzione di verifica chkUsername, infine ci serve una piccola modifica all' html per visualizzare la risposta
Quest'articolo è stato pubblicato originariamente sul Joomla! Community Magazine
Comments (0)