Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisione Revisione precedente Prossima revisione | Revisione precedente | ||
custom:api_js_open_project_with_session_parameter [2020/02/04 10:02] mariasole.angelucci |
custom:api_js_open_project_with_session_parameter [2020/02/04 12:48] (versione attuale) mariasole.angelucci |
||
---|---|---|---|
Linea 1: | Linea 1: | ||
- | ====== Apertura di un progetto con una variabile in sessione ====== | ||
- | Questa azione, associata a una certa classe, permette di aprire un elemento della classe in un progetto che viene specificato nei parametri dell'azione. | + | |
- | Inoltre, una volta aperto il progetto, ne vengono aggiornate anche le variabili di sessione. Queste ultime possono essere visualizzate nel gwMenuTitle, che, però, deve essere opportunamente configurato nell'xml del progetto (si veda [[gwusermanual:interface:interface:menu#titolo_di_progetto_con_variabile_di_sessione|Titolo di progetto con variabile in sessione]]). | + | |
+ | ====== Apertura di un progetto con parametri in sessione ====== | ||
+ | |||
+ | Questa azione, associata a una certa classe, permette di aprire un elemento della classe in un progetto che deve essere specificato nel corpo dell'azione. | ||
+ | Una volta aperto il progetto, ne vengono aggiornati i parametri in sessione: questi ultimi possono essere visualizzati nel gwMenuTitle, che deve essere opportunamente configurato nell'xml del progetto (come descritto nella sezione [[gwusermanual:interface:interface:menu#titolo_di_progetto_con_variabile_di_sessione|Titolo di progetto con parametri in sessione]]). | ||
===== Parametri ===== | ===== Parametri ===== | ||
- | Il nome della funzione //javascript// che deve essere richiamata è gwChangeElementsInSessionCallback. Questa riceve in input un oggetto che deve contenere i seguenti parametri: | + | Il corpo dell'azione consiste di due parti: prima deve essere creato un oggetto chiamato "params", il quale va popolato delle proprietà descritte di seguito; infine viene richiamata una funzione //javascript// dal nome gwChangeElementsInSessionCallback, il cui input è, appunto, l'oggetto "params". |
- | * **session_code_field**: è il nome della variabile di sessione che contiene il campo “fieldToStore” dell’elemento da visualizzare nel progetto; | + | \\ |
- | * **session_code_field_name**: è il nome della variabile di sessione che contiene il campo “fieldToShow” dell’elemento da visualizzare; | + | Nel dettaglio, "params" deve contenere i seguenti valori: |
- | * **cod2**: è il valore del campo "fieldToStore". Per ottenere tale valore, deve essere richiamato l'oggetto data.itemDB e poi si deve prendere da questo oggetto il campo di interesse; | + | * **browserWinName**: è il nome del progetto da aprire; |
- | * **show2**: è il valore del campo “fieldToShow”, che viene ottenuto come il precedente; | + | * **session_code_field**: è il nome del parametro in sessione che contiene il campo “fieldToStore” dell’elemento da visualizzare nel progetto. Deve avere lo stesso valore del parametro "session_code_field" definito all'interno della funzione gwChangeElementsInSessionStartup nel tag gwMenuTitle nell'xml del progetto; |
- | * **browserWinName**: è il nome del progetto da aprire. | + | * **session_code_field_name**: è il nome del parametro in sessione che contiene il campo “fieldToShow” dell’elemento da visualizzare. Anche il valore di questa proprietà è quello definito nell'xml del progetto; |
+ | * **cod2**: è il valore del campo "fieldToStore". Per ottenere tale valore, deve essere richiamato l'oggetto data.itemDB e poi si deve prendere da questo oggetto la proprietà di interesse utilizzando l'operatore punto e il nome del campo; | ||
+ | * **show2**: è il valore del campo “fieldToShow”, ottenuto come il precedente. | ||
+ | |||
===== Esempio ===== | ===== Esempio ===== | ||
<code javascript> | <code javascript> | ||
- | var params = {}; | + | var params = {}; |
+ | params.browserWinName = 'Assegnazione_spazi'; | ||
params.session_code_field = 'session_building_code'; | params.session_code_field = 'session_building_code'; | ||
params.session_code_field_name = 'session_building_code_name'; | params.session_code_field_name = 'session_building_code_name'; | ||
params.cod2 = data.itemDB.cod_building; | params.cod2 = data.itemDB.cod_building; | ||
- | params.show2 = data.itemDB.name_building; | + | params.show2 = data.itemDB.name_building; |
- | params.browserWinName = 'Assegnazione_spazi'; | + | |
gwChangeElementsInSessionCallback(params); | gwChangeElementsInSessionCallback(params); | ||
</code> | </code> |