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/03 17:59] 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 ====== | ||
- | Apre l'elemento selezionato in un progetto che viene scelto all'interno dell'azione e aggiorna le variabili di sessione. La pagina di progetto che viene aperta e il relativo gwMenuTitle devono essere opportunamente configurati. | + | |
+ | |||
+ | ====== 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 ===== | ||
+ | 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". | ||
+ | \\ | ||
+ | Nel dettaglio, "params" deve contenere i seguenti valori: | ||
+ | * **browserWinName**: è il nome del progetto da aprire; | ||
+ | * **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; | ||
+ | * **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 ===== | ||
+ | <code javascript> | ||
+ | var params = {}; | ||
+ | params.browserWinName = 'Assegnazione_spazi'; | ||
+ | params.session_code_field = 'session_building_code'; | ||
+ | params.session_code_field_name = 'session_building_code_name'; | ||
+ | params.cod2 = data.itemDB.cod_building; | ||
+ | params.show2 = data.itemDB.name_building; | ||
+ | |||
+ | gwChangeElementsInSessionCallback(params); | ||
+ | </code> |