Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisione Revisione precedente | |||
custom:api_js_open_project_with_session_parameter [2020/02/04 11:25] mariasole.angelucci [Apertura di un progetto con una variabile in sessione] |
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. | + | |
- | Una volta aperto il progetto, ne vengono aggiornati anche i parametri in sessione: questi ultimi possono essere visualizzati 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> |