Il controller JavaScript utilizza le variabili e le proprietà definite nell'oggetto SCS globale per visualizzare la pagina Web. L'oggetto JavaScript globale deve essere definito nel file controller prima dell'inclusione del file controller.js. Nell'oggetto SCS sono disponibili due proprietà primarie che possono essere utilizzate per la personalizzazione:
La variabile SCS.sitePrefix
definisce il prefisso del percorso del sito in linea. Generalmente, il valore predefinito è site/<siteName>/
.
Il controller JavaScript utilizza questo valore per determinare la pagina Web da visualizzare. Ad esempio, se il browser richiede la pagina /site/SampleSite/products/index.html
, il valore sitePrefix /site/SampleSite/
consente a JavaScript di calcolare che deve essere visualizzata la pagina products/index.html
del sito. Tenere presente che sitePrefix deve essere un valore stringa che inizia e termina con un carattere "/
".
/intranet/ExampleSite/
si consentirà la distribuzione del sito Web con tale percorso nel browser al posto del prefisso di percorso /site/SampleSite/
predefinito.
Nota:
Internamente, il controller JavaScript predefinito utilizza "/
" come sitePrefix se l'URL nel browser non corrisponde al prefisso del sito. Ciò consente di servire il sito utilizzando un dominio unico senza personalizzazione.Se definita, la funzione SCS.preInitRendering
viene richiamata dal codice del controller JavaScript prima che venga eseguita una qualsiasi delle relative logiche di calcolo. La definizione di questa funzione nei file controller personalizzati è utile per sostituire le operazioni di base del controller JavaScript.
Se definita, SCS.preInitRendering
deve essere una funzione. Viene richiamata senza argomenti e non viene restituito né elaborato alcun valore.
La funzione SCS.getDeviceInfo
consente di personalizzare la logica di rilevamento del dispositivo all'interno del controller JavaScript. Questo rilevamento viene utilizzato per determinare se è necessario distribuire una versione mobile o reattiva di una pagina.
La funzione SCS.getDeviceInfo
non prevede argomenti e restituisce un oggetto JavaScript con due proprietà:
isMobile: proprietà booleana che indica che il dispositivo corrente è un client mobile, ad esempio uno smartphone;
isIOS: proprietà booleana che indica che il dispositivo corrente è in esecuzione su un sistema operativo basato su iOS.
Se il controller personalizzato non sostituisce SCS.getDeviceInfo
, verrà utilizzata l'implementazione predefinita built-in.