gino CMS  2.5.0
gino è un CMS scritto in PHP che offre tutti gli strumenti necessari per poter creare un sito web e gestire i contenuti al suo interno in maniera semplice ed efficace, svincolando l'amministratore da conoscenze tecniche di programmazione
Form Class Reference

Classe per la creazione ed il salvataggio dati di un form. More...

Inheritance diagram for Form:

Public Member Functions

 __construct ($options=array())
 Costruttore. More...
 
 getFormId ()
 Getter della proprietà $_form_id. More...
 
 setMethod ($method)
 Setter della proprietà $_method Imposta le proprietà $_method, $_requestVar. More...
 
 setValidation ($validation)
 Setter della proprietà $_validation. More...
 
 permission ($options, $fname)
 Permessi di modifica dei campo. More...
 
 setHidden ($hidden=array())
 Setta la proprietà $_hidden (campi hidden del form) More...
 
 load ($session_value, $clear=TRUE)
 Recupera i valori inseriti negli input form e salvati nella sessione del form. More...
 
 saveSession ($session_value=null)
 Salva i valori dei campi del form in una variabile di sessione. More...
 
 retvar ($name, $default= '')
 Recupera il valore di un campo del form precedentemente salvato. More...
 
 open ($action, $upload, $list_required, $options=array())
 Parte inziale del form, FORM TAG, TOKEN, REQUIRED Imposta le proprietà $_form_id, $_validation. More...
 
 close ()
 Chiusura form, FORM TAG. More...
 
 checkRequired ()
 Controlla la compilazione dei campi obbligatori. More...
 
 captcha ($options=null)
 Widget Captcha. More...
 
 checkCaptcha ()
 Verifica del captcha. More...
 
 render ($model_obj, $opt=array())
 Wrapper per la stampa del form Imposta le proprietà $_form_id, $_validation, $_method, $_requestVar, $_session_value. More...
 

Static Public Member Functions

static formFieldTranslation ($type, $table, $field, $id_value, $width, $toolbar='')
 Interfaccia che apre o chiude il form per l'inserimento e la modifica delle traduzioni. More...
 

Protected Member Functions

 makeInputForm ($model, $fields, $options=array(), $inputs=array())
 Generazione automatica del form di inserimento/modifica di un Gino.Model Cicla sulla struttura del modello e per ogni campo costruisce l'elemento del form. More...
 

Protected Attributes

 $_registry
 
 $_request
 
 $_session
 

Private Member Functions

 setDefaultFormId ($model)
 
 setDefaultSession ($model)
 
 generateFormToken ($form_id)
 Genera un token per prevenire attacchi CSRF. More...
 
 verifyFormToken ($form_id)
 Verifica il token per prevenire attacchi CSRF. More...
 
 reCaptcha ($public_key, $options=null)
 Captcha widget attraverso la libreria RECAPTCHA Nelle Impostazioni di sistema devono essere state inserite le chiavi pubbliche e private reCaptcha. More...
 
 defaultCaptcha ($options)
 Captcha widget attraverso la libreria di gino. More...
 
 checkReCaptcha ($public_key, $private_key)
 Verifica captcha utilizzando la libreria RECAPTCHA. More...
 
 checkDefaultCaptcha ()
 Verifica captcha utilizzando la libreria di gino. More...
 

Private Attributes

 $_form_id
 
 $_method
 Metodo di passaggio dei dati del form. More...
 
 $_requestVar
 Contenitore della variabili passate attraverso il form. More...
 
 $_validation
 
 $_session_value
 
 $_hidden
 
 $_multi_language
 

Detailed Description

Classe per la creazione ed il salvataggio dati di un form.

Fornisce gli strumenti per generare gli elementi del form e per gestire l'upload di file

Author
marco guidotti guido.nosp@m.ttim.nosp@m.@gmai.nosp@m.l.co.nosp@m.m
abidibo abidi.nosp@m.bo@g.nosp@m.mail..nosp@m.com

Impostazione proprietà

La proprietà $_requestVar viene definita congiuntamente alla proprietà $_method nel metodo setMethod().

Nel costruttore vengono definiti i valori predefiniti delle proprietà $_form_id, $_validation, $_method, $_requestVar.
Inoltre è possibile definire un valore personalizzato della proprietà $_form_id, necesariamente nel caso di action form e di verifca del token (opzione verifyToken).
Nel metodo open() vengono impostate le proprietà $_form_id, $_validation.
Nel metodo render() vengono impostate le proprietà $_form_id, $_validation, $_method, $_requestVar, $_session_value.

Opzioni sui campi nella generazione del form da un modello

Con le opzioni removeFields, viewFields e addCell è possibile intervenire sui campi da mostrare o da non mostrare nel form.
L'opzione removeFields permette di non mostrare nel form l'elenco dei campi definiti nell'opzione, mentre viewFields permette di mostrare nel form soltanto i campi definiti nell'opzione.
L'opzione addCell permette di mostrare nel form degli input form (o altro) in aggiunta a quelli dei campi del modello.
Il campo instance non viene mostrato nel form, neanche come campo nascosto.

Definizione delle proprietà (predefinite) del tag dorm e del submit

Nella costruzione del form vengono impostati i seguenti parametri di default:

  • form_id, valore generato
  • method, post
  • validation, true
  • session_value, valore generato
  • upload, viene impostato a TRUE se l'oggetto di un campo del form appartiene almeno a una classe Gino.FileField() o Gino.ImageField()
  • required, l'elenco dei campi obbigatori viene costruito controllando il valore della proprietà $_required dell'oggetto del campo
  • s_name, il nome del submit è 'submit'
  • s_value, il valore del submit è 'salva'

Constructor & Destructor Documentation

__construct (   $options = array())

Costruttore.

Parameters
array$optionsarray associativo di opzioni
  • form_id (string): valore id del tag form; occorre definirla nel caso di action form e di verifca del token
  • verifyToken (boolean): verifica il token (contro gli attacchi CSFR)
Exceptions
Exceptionse viene rilevato un attacco CSRF
Returns
istanza di Gino.Form

Member Function Documentation

captcha (   $options = null)

Widget Captcha.

Sono previsti due controlli captcha:

  1. con le librerie reCAPTCHA (attivo automaticamente se sono state inserite le chiavi pubbliche e private reCaptcha nelle 'Impostazioni di sistema')
  2. con la classe captcha di gino
See also
self::reCaptcha()
self::defaultCaptcha()
Parameters
array$optionsarray associativo di opzioni
  • classLabel (string): valore CLASS del tag SPAN in <label>
  • text_add (string): testo che segue il controllo
Returns
widget captcha
checkCaptcha ( )

Verifica del captcha.

See also
self::checkReCaptcha()
self checkDefaultCaptcha()
Returns
risultato verifica, bool
checkDefaultCaptcha ( )
private

Verifica captcha utilizzando la libreria di gino.

See also
Gino.Captcha::check()
Returns
risultato della verifica, bool
checkReCaptcha (   $public_key,
  $private_key 
)
private

Verifica captcha utilizzando la libreria RECAPTCHA.

Parameters
string$public_key
string$private_key
Returns
risultato verifica, bool
checkRequired ( )

Controlla la compilazione dei campi obbligatori.

Returns
numero campi obbligatori non compilati
close ( )

Chiusura form, FORM TAG.

Returns
chiusura form, html
defaultCaptcha (   $options)
private

Captcha widget attraverso la libreria di gino.

See also
Gino.Captcha::render()
Parameters
array$optionsarray associativo di opzioni
  • text_add (string)
Returns
widget captcha
static formFieldTranslation (   $type,
  $table,
  $field,
  $id_value,
  $width,
  $toolbar = '' 
)
static

Interfaccia che apre o chiude il form per l'inserimento e la modifica delle traduzioni.

See also
gino-min.js
Parameters
string$typetipologia di input (input, textarea, editor)
string$fieldnome del campo con il testo da tradurre
integer$widthlunghezza del tag input o numero di colonne (textarea)
string$toolbarnome della toolbar dell'editor html
Returns
codice html interfaccia
generateFormToken (   $form_id)
private

Genera un token per prevenire attacchi CSRF.

Parameters
string$form_id
Returns
token
getFormId ( )

Getter della proprietà $_form_id.

Returns
string
load (   $session_value,
  $clear = TRUE 
)

Recupera i valori inseriti negli input form e salvati nella sessione del form.

Permette di mostrare i campi correttamente compilati a seguito di errore

Parameters
array$session_valuenome della variabile di sessione nella quale sono salvati i valori degli input
boolean$cleardistrugge la sessione
Returns
global
makeInputForm (   $model,
  $fields,
  $options = array(),
  $inputs = array() 
)
protected

Generazione automatica del form di inserimento/modifica di un Gino.Model Cicla sulla struttura del modello e per ogni campo costruisce l'elemento del form.

Parameters
object$modeloggetto del modello
array$fieldselementi del form nel formato array(field_name=>build_object)
array$optionsopzioni generali del form array associativo di opzioni
  • removeFields (array): elenco dei campi da non mostrare nel form
  • viewFields (array): elenco dei campi da mostrare nel form
  • addCell (array): elementi da mostrare nel form in aggiunta agli input form generati dalla struttura.
    Le chiavi dell'array sono i nomi dei campi che seguono gli elementi aggiuntivi, mentre i valori sono altri array che hanno come chiavi:
    • name, nome dell'elemento da aggiungere (nome dell'input form o altro)
    • field, codice da implementare Riassumento, la struttura di addCell è la seguente:
      array('next_field_name' => array('name' => 'name_item_add', 'field' => 'content_item_add'))
      // layout
  • only_inputs (boolean): mostra soltanto gli input dei campi (default false)
  • show_save_and_continue (boolean): mostra il submit "save and continue" (default true) // tag form
  • f_action (string): (default '')
  • f_upload (boolean): (di default viene impostato automaticamente)
  • f_required (string): campi obbligatori separati da virgola (di default viene impostato automaticamente)
  • f_func_confirm (string): (default '')
  • f_text_confirm (string): (default '')
  • f_generateToken (boolean): (default false) // input submit
  • s_name (string): nome dell'input submit (se non indicato viene impostato automaticamente)
  • s_value (string): valore dell'input submit (default 'salva')
  • s_classField (string): valore dell'opzione classField dell'input submit (default 'submit')
array$inputsopzioni specifiche dei campi del form nel formato array(field_name=>array(option=>value[,...])); queste opzioni vengono passate in Gino.Build::formElement()
Returns
form di inserimento/modifica
open (   $action,
  $upload,
  $list_required,
  $options = array() 
)

Parte inziale del form, FORM TAG, TOKEN, REQUIRED Imposta le proprietà $_form_id, $_validation.

Parameters
string$actionindirizzo dell'action
boolean$uploadattiva l'upload di file
string$list_requiredlista di elementi obbligatori (separati da virgola)
array$optionsarray associativo di opzioni
  • form_id (string): valore id del tag form
  • validation (boolean): attiva il javascript di validazione gino.validateForm
  • func_confirm (string): nome della funzione js da chiamare (es. window.confirmSend()); require validation true
  • text_confirm (string): testo del messaggio che compare nel box di conferma; require validation true
  • generateToken (boolean): costruisce l'input hidden token (contro gli attacchi CSFR)
Returns
parte iniziale del form, html
permission (   $options,
  $fname 
)

Permessi di modifica dei campo.

Todo:
Implementare il metodo che restituisce TRUE se l'utente ha il permesso di agire sul campo, FALSE altrimenti.
Parameters
array$optionsarray associativo di opzioni
string$fnamenome del campo
Returns
TRUE
reCaptcha (   $public_key,
  $options = null 
)
private

Captcha widget attraverso la libreria RECAPTCHA Nelle Impostazioni di sistema devono essere state inserite le chiavi pubbliche e private reCaptcha.

Parameters
string$public_key
array$optionsarray associativo di opzioni
  • text_add (string)
Returns
widget captcha
render (   $model_obj,
  $opt = array() 
)

Wrapper per la stampa del form Imposta le proprietà $_form_id, $_validation, $_method, $_requestVar, $_session_value.

See also
self::makeInputForm()
self::editUrl()
Parameters
\Gino\Model$model_objistanza di Gino.Model da inserire/modificare
array$optarray associativo di opzioni
  • fields (array): campi da mostrare nel form
  • options_form (array): opzioni del form e del layout
    • allow_insertion (boolean)
    • edit_deny (array)
    • form_id (mixed): valore id del tag form
    • session_value (string)
    • method (string): metodo del form (get/post/request); default post
    • validation (boolean); attiva il controllo di validazione tramite javascript (default true)
    • view_folder (string): percorso al file della vista
    • view_title (boolean): per visualizzare l'intestazione del form (default true)
    • form_title (string): intestazione personalizzata del form
    • form_description (string): testo che compare tra il titolo ed il form
  • options_field (array): opzioni dei campi
Returns
Gino.Http.Redirect se viene richiesta una action o si verifica un errore, form html altrimenti
retvar (   $name,
  $default = '' 
)

Recupera il valore di un campo del form precedentemente salvato.

See also
Gino.Form::load()
Gino.Form::save()
Parameters
string$namenome del campo
mixed$defaultvalore di default
Returns
valore campo
saveSession (   $session_value = null)

Salva i valori dei campi del form in una variabile di sessione.

Parameters
string$session_valuenome della variabile di sessione, come definito nel metodo load()
Returns
void
setDefaultFormId (   $model)
private
setDefaultSession (   $model)
private
setHidden (   $hidden = array())

Setta la proprietà $_hidden (campi hidden del form)

Parameters
array$hiddenarray delle accoppiate nome-valore dei campi hidden non impostati automaticamente
Returns
void
setMethod (   $method)

Setter della proprietà $_method Imposta le proprietà $_method, $_requestVar.

Parameters
string$methodmetodo di passaggio dei dati del form (metodi validi: post, get, request)
Returns
void
setValidation (   $validation)

Setter della proprietà $_validation.

Parameters
bool$validationindica se eseguire o meno la validazione del form (attiva la chiamata javascript validateForm())
Returns
void
verifyFormToken (   $form_id)
private

Verifica il token per prevenire attacchi CSRF.

Parameters
string$form_id
Returns
risultato verifica, bool

Field Documentation

$_form_id
private
$_hidden
private
array $_method
private

Metodo di passaggio dei dati del form.

$_multi_language
private
$_registry
protected
$_request
protected
array $_requestVar
private

Contenitore della variabili passate attraverso il form.

$_session
protected
$_session_value
private
$_validation
private

The documentation for this class was generated from the following file: