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> | ||