Strumenti Utente

Strumenti Sito


sviluppo:cityware_componenti_dinamici

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
sviluppo:cityware_componenti_dinamici [2016/03/29 14:36] m.biagiolisviluppo:cityware_componenti_dinamici [2024/10/15 09:45] (versione attuale) – modifica esterna 127.0.0.1
Linea 43: Linea 43:
 </code> </code>
  
 +===== Componenti dinamici Su Grid=====
 +Metodo:
 +**addGridComponent**($formName, $components)
 +
 +Parametri:
 +  * **$formName**: nome della form
 +  * **$components**: array di dati che rappresenta i componenti da aggiungere
 +
 +Componenti attualmente gestiti:
 +
 +==== ita-edit====
 +L'array $components deve contenere:
 +
 +  * **type**: 'ita-edit'
 +  * **id**: id componente
 +  * **onChangeEvent**: true se si vuole abilitare l'evento onChange, false altrimenti (evento 'afterSaveCell')
 +  * **model**: il nome della form su cui deve rientrare (solo se richiesta gestione eventi 'onChangeEvent')
 +  * **rowKey**: identificativo riga selezionata in griglia
 +  * **additionalClass**: da passare se si vogliono agganciare delle classi custom al componente
 +  * **properties**: array di proprietà da associare al componente(es. array('value' => 'valore') per settare il value del componente)
 +
 +==== ita-edit-date====
 +L'array $components deve contenere:
 +
 +  * **type**: 'ita-edit-date'
 +  * **id**: id componente
 +  * **onChangeEvent**: true se si vuole abilitare l'evento onChange, false altrimenti (evento 'afterSaveCell')
 +  * **model**: il nome della form su cui deve rientrare (solo se richiesta gestione eventi 'onChangeEvent')
 +  * **rowKey**: identificativo riga selezionata in griglia
 +  * **additionalClass**: da passare se si vogliono agganciare delle classi custom al componente
 +  * **properties**: array di proprietà da associare al componente(es. array('value' => 'valore') per settare il value del componente)
 +  * **formatter**: formatter da usare per ottenere il valore sulla post (se non passato di default viene messo quello standard, passare 1 solo valore).
 +
 +==== ita-select====
 +L'array $components deve contenere:
 +
 +  * **type**: 'ita-edit-date'
 +  * **id**: id componente
 +  * **onChangeEvent**: true se si vuole abilitare l'evento onChange, false altrimenti (evento 'afterSaveCell')
 +  * **model**: il nome della form su cui deve rientrare (solo se richiesta gestione eventi 'onChangeEvent')
 +  * **rowKey**: identificativo riga selezionata in griglia
 +  * **additionalClass**: da passare se si vogliono agganciare delle classi custom al componente
 +  * **properties**: array di proprietà da associare al componente(es. array('value' => 'valore') per settare il value del componente)
 +  * **options**: array di opzioni della select contenente:id,value,selected,text (opzionale, se non c'è viene messo value)
  
-===== Componenti dinamici =====+===== Componenti dinamici Su Pagine=====
  
 Metodo: Metodo:
Linea 70: Linea 114:
  
 ==== ita-edit ==== ==== ita-edit ====
-  * **type**: 'ita-button'+  * **type**: 'ita-edit'
   * **id**: id conmponente   * **id**: id conmponente
   * **newline**: indica se dopo il pulsante occorre andare a capo riga   * **newline**: indica se dopo il pulsante occorre andare a capo riga
   * **properties**: array di proprietà da associare al pulsante   * **properties**: array di proprietà da associare al pulsante
   * **label**: oggetto label associato al componente   * **label**: oggetto label associato al componente
 +  * **additionalClass**: da passare se si vogliono agganciare delle classi custom al componente
 +  * **onChangeEvent**: true se si vuole abilitare l'evento onChange, false altrimenti (evento 'afterSaveCell')
 +  * **model**: il nome della form su cui deve rientrare (solo se richiesta gestione eventi 'onChangeEvent')
  
 ==== ita-edit-lookup ==== ==== ita-edit-lookup ====
Linea 104: Linea 151:
   * **label**: oggetto label associato al componente   * **label**: oggetto label associato al componente
   * **options**: array di valori che può assumere il componente   * **options**: array di valori che può assumere il componente
 +  * **onChangeEvent**: true se si vuole abilitare l'evento onChange, false altrimenti (evento 'afterSaveCell')
 +  * **model**: il nome della form su cui deve rientrare (solo se richiesta gestione eventi 'onChangeEvent')
 +  * **additionalClass**: da passare se si vogliono agganciare delle classi custom al componente
  
 ==== label ==== ==== label ====
Linea 261: Linea 311:
   * **component**: Array che rappresenta i dati del componente   * **component**: Array che rappresenta i dati del componente
  
-Questo metodo funge da wrapper per i componenti specifici, ad esempio, per 'ita-select', viene chiamato il seguente metodo: **addGridComponentItaSelect**+Questo metodo funge da wrapper per i componenti specifici, ad esempio, per 'ita-select', viene chiamato il seguente metodo:  
 +**addGridComponentItaSelect**
  
 Parametri: Parametri:
-* **type**: Tipo componente ('ita-select'+  * **type**: Tipo componente ('ita-select'
-* **model**: Nome della form (corrisponde con $this->nameForm) +  * **model**: Nome della form (corrisponde con $this->nameForm) 
-* **name**: Nome del componente (serve per costruire l'id in questo modo: [model]_[name]_[rowKey]) +  * **name**: Nome del componente (serve per costruire l'id in questo modo: [model]_[name]_[rowKey]) 
-* **rowKey**: Chiave che identifica il record +  * **rowKey**: Chiave che identifica il record 
-* **options**: Array dei valori con cui popolare il componente 'ita-select' +  * **options**: Array dei valori con cui popolare il componente 'ita-select' 
-* **additionalData**: Array di valori da restituire nel gestore degli eventi+  * **additionalData**: Array di valori da restituire nel gestore degli eventi
  
-All'evento 'change', vengono restituiti i seguenti valori nella $_POST: +All'evento 'change', vengono restituiti i seguenti valori nella $_POST:   
-* **id**: Id del componente html +  * **id**: Id del componente html 
-* **name**: Nome componente (id, senza rowKey) +  * **name**: Nome componente (id, senza rowKey) 
-* **model**: Nome della form +  * **model**: Nome della form 
-* **value**: Nuovo valore+  * **value**: Nuovo valore
 Inoltre, verranno passati tutti i valori previsti in 'additionalData' (direttamente nella $_POST). Inoltre, verranno passati tutti i valori previsti in 'additionalData' (direttamente nella $_POST).
  
Linea 310: Linea 361:
 } }
 </code> </code>
 +
 +===== Note =====
 +E' necessario dopo aver creato a runtime dei componenti particolari (date-picker , ita-button ecc) associare tramite la funzione "parseHtmlContainer" lo script js per far funzionare il componente. 
 +Ad esempio se creo una griglia editabile da codice è necessario per far funzionare tutti i sui elementi (date-picker, formatter del data-edit ecc, binocoli per lookup esterni )lanciare la function sul componente padre che poi si occuperà di propagare tale comportamento ai figli.
 +
 +<code>
 +cwbLibHtml::attivaJSElemento($this->nameForm . '_' . [TABLENAME]);
 +</code>
 +
 +{{counter}} visualizzazioni.
 +
sviluppo/cityware_componenti_dinamici.1459262213.txt.gz · Ultima modifica: 2018/03/19 10:45 (modifica esterna)