custom:api_js_gw_class_detail_exposed_fx

Differenze

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

Link a questa pagina di confronto

Prossima revisione
Revisione precedente
custom:api_js_gw_class_detail_exposed_fx [2019/12/17 12:58]
giorgio.scali creata
custom:api_js_gw_class_detail_exposed_fx [2020/02/13 18:29] (versione attuale)
giorgio.scali
Linea 1: Linea 1:
 ====== gwClassDetail funzioni esposte ====== ====== gwClassDetail funzioni esposte ======
 +
 +Il gwClassDetail rappresenta il dettaglio di classe. In qualunque forma esso sia aperto (//tab//, //dialog//, //​floatingPane//​),​ l'​oggetto dojo contenitore del gwClassDetail (AKA //​detailContainer//​) espone tutta una serie di function di utilità, che servono per interagire con il gwClassDetail o conoscerne lo stato corrente.
  
   * [[:​custom:​api_js_gw_class_detail_exposed_fx#​getGwWidgets|getGwWidgets()]]   * [[:​custom:​api_js_gw_class_detail_exposed_fx#​getGwWidgets|getGwWidgets()]]
Linea 14: Linea 16:
   * [[:​custom:​api_js_gw_class_detail_exposed_fx#​disableGwActionInToolbarButton|disableGwActionInToolbarButton()]]   * [[:​custom:​api_js_gw_class_detail_exposed_fx#​disableGwActionInToolbarButton|disableGwActionInToolbarButton()]]
   * [[:​custom:​api_js_gw_class_detail_exposed_fx#​enableGwActionInToolbarButton|enableGwActionInToolbarButton()]]   * [[:​custom:​api_js_gw_class_detail_exposed_fx#​enableGwActionInToolbarButton|enableGwActionInToolbarButton()]]
 +  * [[:​custom:​api_js_gw_class_detail_exposed_fx#​isGwFormValid|isGwFormValid()]]
 +  * [[:​custom:​api_js_gw_class_detail_exposed_fx#​notifyGwFormNotValidToUser|notifyGwFormNotValidToUser()]]
 +  * [[:​custom:​api_js_gw_class_detail_exposed_fx#​validateGwForm|validateGwForm()]]
 +
  
 ===== getGwWidgets() ===== ===== getGwWidgets() =====
-It returns only ONE widget or null. By default the research is done only between the IN EDIT widget. 
-Optionally even IN VISUALIZATION widgets can be included in research. 
  
-=== Parameters ​===+Ritorna un array di oggetti gwWidget (array vuoto, [], nel caso niente venga trovato). Di norma la ricerca viene effettuata solo all'​interno dei dettagli di classe dove //​detailMode=='​edit'//​. Si può opzionalmente includere nella ricerca anche i widget contenuti dentro i dettagli di classe dove //​detailMode=='​visualization'//,​ agendo sul flag //​includeAll//​. 
 + 
 +=== Parametri === 
 +  * **params**: Object, richiesto. Oggetto contenente le seguenti proprietà:​ 
 +    * **name**: String, optionale. Il name del gwAttribute collegato al gwWidget. Se fornito è usato come criterio di ricerca. Se omesso, verrà ritornato il primo widget disponibile. 
 +    * **gwid**: Integer, optionale. Il gwid del gwAttribute collegato al gwWidget. Se fornito è usato come criterio di ricerca. Se omesso, verrà ritornato il primo widget disponibile. 
 +    * **includeAll**:​ Boolean, optionale, default false. Se posto a true, includere nella ricerca anche i widget contenuti dentro form di classe dove //​detailMode=='​visualization'//​. 
 +    * **queryContext**:​ String|domNode,​ optionale, default null. Se fornito questo verrà usato come nodo di restrizione per eseguire la query. (Usato internamente a Geoweb per il funzionamento delle schede //​Procedure//​ del //​workflow//​. 
 + 
 +=== Esempi === 
 +Recupera tutti i widget in edit del gwClassDetail 
 +<code javascript>​ 
 +var widgets = detailContainer.getGwWidgets();​ 
 +</​code>​ 
 + 
 +Recupera tutti i widget del gwClassDetail,​ cercando anche fra quelli contenuti in form di classe dove detailMode=='​visualization'​. 
 +<code javascript>​ 
 +var widgets = detailContainer.getGwWidgets({includeAll:​ true}); 
 +</​code>​ 
 + 
 + 
 +===== getGwWidget() ===== 
 + 
 +Ritorna un singolo gwWidget (array vuoto, [], nel caso niente venga trovato). Di norma la ricerca viene effettuata solo all'​interno dei dettagli di classe dove //​detailMode=='​edit'//​. Si può opzionalmente includere nella ricerca anche i widget contenuti dentro i dettagli di classe dove //​detailMode=='​visualization'//,​ agendo sul flag //​includeAll//​. 
 + 
 +=== Parametri === 
 +  * **params**: Object, richiesto. Oggetto contenente le seguenti proprietà:​ 
 +    * **name**: String, optionale. Il name del gwAttribute collegato al gwWidget. Se fornito è usato come criterio di ricerca. Se omesso, verrà ritornato il primo widget disponibile. 
 +    * **gwid**: Integer, optionale. Il gwid del gwAttribute collegato al gwWidget. Se fornito è usato come criterio di ricerca. Se omesso, verrà ritornato il primo widget disponibile. 
 +    * **includeAll**:​ Boolean, optionale, default false. Se posto a true, includere nella ricerca anche i widget contenuti dentro form di classe dove //​detailMode=='​visualization'//​. 
 +    * **queryContext**:​ String|domNode,​ optionale, default null. Se fornito questo verrà usato come nodo di restrizione per eseguire la query. (Usato internamente a Geoweb per il funzionamento delle schede //​Procedure//​ del //​workflow//​. 
 + 
 +=== Esempi === 
 +Recupera il primo widget trovato in edit del gwClassDetail. 
 +<code javascript>​ 
 +var widget = detailContainer.getGwWidget({name:​ '​gw_attribtue_name'​});​ 
 +</​code>​ 
 + 
 +Recupera il primo widget trovato del gwClassDetail,​ cercando anche fra quelli contenuti in form di classe dove detailMode=='​visualization'​. 
 +<code javascript>​ 
 +var widget = detailContainer.getGwWidget({name:​ '​gw_attribtue_name',​ includeAll: true); 
 +</​code>​ 
 + 
 + 
 +===== setFormValues() ===== 
 + 
 +Ritorna un singolo gwWidget (array vuoto, [], nel caso niente venga trovato). Di norma la ricerca viene effettuata solo all'​interno dei dettagli di classe dove //​detailMode=='​edit'//​. Si può opzionalmente includere nella ricerca anche i widget contenuti dentro i dettagli di classe dove //​detailMode=='​visualization'//,​ agendo sul flag //​includeAll//​. 
 + 
 +=== Parametri === 
 +  * **mapWithNameAsKey**:​ Object, richiesto. Oggetto mappa che ha per chiavi i //name// dei gwAttribute e valori i valori da settare nelle form di dettaglio di classe 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +detailContainer.setFormValues({attr_name_1:​ '​value1',​ attr_name_2:​ 2: attr_name_3:​ new Date()}); 
 +</​code>​ 
 + 
 + 
 +===== getFormValues() ===== 
 + 
 +Ritorna una Object javascript che ha per chiavi i //name// dei gwAttribute e valori i valori attualmente presenti nelle form di dettaglio di classe 
 + 
 +=== Parametri === 
 +  * **onlyModified**:​ Boolean, opzionale, default true. Se posto a true viene ritornata una mappa contenente solo i valori dei gwWidget che sono stati modificati 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var onlyModified = true; 
 +var formValues = detailContainer.getFormValues(onlyModified);​ 
 +var attr_1_value = formValue.attr_1_name;​ //if '​attr_1_name'​ is the name of a gwAttribute inside the form 
 +</​code>​ 
 + 
 + 
 +===== getFormValuesWithGwidAsKey() ===== 
 + 
 +Ritorna una Object javascript che ha per chiavi i //gwid// dei gwAttribute e valori i valori attualmente presenti nelle form di dettaglio di classe 
 + 
 +=== Parametri === 
 +  * **onlyModified**:​ Boolean, opzionale, default true. Se posto a true viene ritornata una mappa contenente solo i valori dei gwWidget che sono stati modificati 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var onlyModified = true; 
 +var formValues = detailContainer.getFormValuesWithGwidAsKey(onlyModified);​ 
 +var attr_1_value = formValue.attr_1_name;​ //if '​attr_1_name'​ is the name of a gwAttribute inside the form 
 +</​code>​ 
 + 
 + 
 +===== getFormValuesToShow() ===== 
 + 
 +Ritorna una Object javascript che ha per chiavi i //name// dei gwAttribute e valori i //​valueToShow//​ attualmente presenti nelle form di dettaglio di classe. In alcuni widget //​valueToShow//,​ valore in visualizzazione,​ si differenzia dal //​valueToStore//,​ valore da persistere. Negli altri widget, non c'è tale distinzione ed i due coincidono in //​value//​. 
 + 
 +=== Parametri === 
 +  * **onlyModified**:​ Boolean, opzionale, default true. Se posto a true viene ritornata una mappa contenente solo i valori dei gwWidget che sono stati modificati 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var onlyModified = true; 
 +var formValuesToShow= detailContainer.getFormValuesToShow(onlyModified);​ 
 +var attr_1_valueToShow = formValuesToShow.attr_1_name;​ //if '​attr_1_name'​ is the name of a gwAttribute inside the form 
 +</​code>​ 
 + 
 + 
 +===== createMapWithGwidAsKey() ===== 
 + 
 +Ritorna una Object javascript che ha per chiavi i //name// dei gwAttribute e valori gli stessi valori dell' Object javascript in ingresso (indicizzato per //​gwid//​). 
 + 
 +=== Parametri === 
 +  * **nameAsKeyMap**:​ Boolean, richiesto. Object javascript, mappa chiave valore, che ha per chiavi i //name// dei gwAttribute 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var nameAsKeyMap = { 
 + attr_1_name:​ '​value1',​ 
 + attr_2_name:​ 2, 
 + attr_3_name:​ new Date() 
 +}; 
 +var gwidAsKeyMap = detailContainer.createMapWithGwidAsKey(nameAsKeyMap);​ 
 +</​code>​ 
 + 
 + 
 +===== createMapWithNameAsKey() ===== 
 + 
 +Ritorna una Object javascript che ha per chiavi i //gwid// dei gwAttribute e valori gli stessi valori dell' Object javascript in ingresso (indicizzato per //​name//​). 
 + 
 +=== Parametri === 
 +  * **gwidAsKeyMap**:​ Boolean, richiesto. Object javascript, mappa chiave valore, che ha per chiavi i //gwid// dei gwAttribute 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var gwidAsKeyMap = { 
 + 123: '​value1',​ //123 is attr_1_gwid 
 + 456: 2, //456 is attr_2_gwid 
 + 789: new Date() //789 is attr_3_gwid 
 +}; 
 +var nameAsKeyMap = detailContainer.createMapWithGwidAsKey(gwidAsKeyMap);​ 
 +</​code>​ 
 + 
 + 
 +===== isSomeFormValueChanged() ===== 
 + 
 +Ritorna true se il dettaglio corrente ha subito dei cambiamenti negli input delle form, ad opera dell'​utente od automatismi,​ false altrimenti. 
 + 
 +=== Parametri === 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var isSomeFormValueChanged = detailContainer.isSomeFormValueChanged();​ 
 +</​code>​ 
 + 
 + 
 +===== hideGwActionInToolbarButton() ===== 
 + 
 +Dato il //name// della gwAction, nasconde il button corrispondente. 
 + 
 +=== Parametri === 
 +  * **gwActionName**:​ String, richiesto. Il //name// della gwAction del gwActionButton 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var gwActionName = '​gw_action_name';​ 
 +detailContainer.hideGwActionInToolbarButton(gwActionName);​ 
 +</​code>​ 
 + 
 + 
 +===== showGwActionInToolbarButton() ===== 
 + 
 +Dato il //name// della gwAction, mostra il button corrispondente. 
 + 
 +=== Parametri === 
 +  * **gwActionName**:​ String, richiesto. Il //name// della gwAction del gwActionButton 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var gwActionName = '​gw_action_name';​ 
 +detailContainer.showGwActionInToolbarButton(gwActionName);​ 
 +</​code>​ 
 + 
 + 
 +===== disableGwActionInToolbarButton() ===== 
 + 
 +Dato il //name// della gwAction, disabilita il button corrispondente. 
 + 
 +=== Parametri === 
 +  * **gwActionName**:​ String, richiesto. Il //name// della gwAction del gwActionButton 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var gwActionName = '​gw_action_name';​ 
 +detailContainer.disableGwActionInToolbarButton(gwActionName);​ 
 +</​code>​ 
 + 
 + 
 +===== enableGwActionInToolbarButton() ===== 
 + 
 +Dato il //name// della gwAction, abilita il button corrispondente. 
 + 
 +=== Parametri === 
 +  * **gwActionName**:​ String, richiesto. Il //name// della gwAction del gwActionButton 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var gwActionName = '​gw_action_name';​ 
 +detailContainer.enableGwActionInToolbarButton(gwActionName);​ 
 +</​code>​ 
 + 
 + 
 + 
 +===== isGwFormValid() ===== 
 + 
 +Ritorna un true se tutti gli eventuali gwForms nel detailContainer passano la validazione 
 + 
 +=== Parametri === 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +var isValid = detailContainer.isGwFormValid();​ 
 +if(isValid){ 
 + //do stuff 
 +
 +</​code>​ 
 + 
 + 
 +===== notifyGwFormNotValidToUser() ===== 
 + 
 +Notifica il gwUser riguardo ai widget che non hanno passato la validazione. La notifica comprende:​ 
 +  * evidenziare di rosso (contorno del widget) tutti i widget required non valorizzati 
 +  * In caso di una struttura di layout complessa, selezionare i figli dei TabContaine/​AccordionContainer in maniera tale da visualizzare il primo widget non valido 
 +  * mostrare al gwUser, in concomitanza del primo widget non valido, un tooltip con le istruzioni per la corretta compilazione 
 + 
 +=== Parametri === 
 + 
 +=== Esempi === 
 +<code javascript>​ 
 +detailContainer.notifyGwFormNotValidToUser();​ 
 +</​code>​ 
 + 
 + 
 + 
 +===== validateGwForm() ===== 
 + 
 +In caso qualche widget della form non passi la validazione,​ notifica l'​utente. 
 +Di fatto, nella sua implementazione,​ utilizza internamente le js API isGwFormValid() e notifyGwFormNotValidToUser().
  
-  * **name**: String, optional. The gwAttribute name of the gwWidget. If provided is used as research criteria. If omitted, the first available gwWidget will be returned. +=== Parametri ===
-  * **gwid**: Integer, optional. The gwAttribute gwid of the gwWidget. If provided is used as research criteria. If omitted, the first available gwWidget will be returned. +
-  * **includeAll**:​ Boolean, optional, default false. If true in research will be included even all IN VISUALIZATION widgets. +
-  * **queryContext**:​ String|domNode,​ optional, default null. If given this will be used as restriction node to perform the query. (Useful in workflow procedure stuff)+
  
-=== Example ​===+=== Esempi ​===
 <code javascript>​ <code javascript>​
-var detailContainer ​= registry.byId(detailContainerId);​ +detailContainer.validateGwForm();
-var widgets = detailContainer.getGwWidgets({includeAll:​ true, queryContext:​ queryContext});+
 </​code>​ </​code>​
  • custom/api_js_gw_class_detail_exposed_fx.1576583907.txt.gz
  • Ultima modifica: 2019/12/17 12:58
  • da giorgio.scali