Controllerul JavaScript utilizează variabile şi proprietăţi definite în obiectul global SCS pentru a randa pagina web. Obiectul JavaScript global trebuie să fie definit în fişierul controller, înainte de includerea fişierului controller.js. Există două proprietăţi principale în obiectul SCS care pot fi utilizate pentru personalizare:
Variabila SCS.sitePrefix
defineşte prefixul căii pentru site-ul online. În mod normal, aceasta ia valoarea prestabilită site/<siteName>/
.
Codul JavaScript al controllerului utilizează această valoare pentru a determina ce pagină web să se afişeze. De exemplu, în cazul în care browserul solicită pagina /site/SampleSite/products/index.html
, variabila sitePrefix /site/SampleSite/
permite ca JavaScript să calculeze că trebuie să se afişeze pagina products/index.html
din cadrul site-ului. Reţineţi că variabila sitePrefix trebuie să fie o valoare şir care începe şi se termină cu un caracter "/
".
/intranet/ExampleSite/
va permite ca site-ul web să fie livrat cu acel nume de cale în browser, în locul prefixului de cale /site/SampleSite/
care este prestabilit.
Notă:
În plan intern, codul JavaScript prestabilit al controllerului utilizează "/
" ca variabilă sitePrefix, dacă adresa URL din browser nu corespunde cu prefixul site-ului. Acest lucru permite ca site-ul să fie deservit utilizând un domeniu vanity fără personalizare.Dacă este definită, funcţia SCS.preInitRendering
este apelată de codul JavaScript al controllerului înainte să se execute orice din logica sa de calcul. Aceasta este o funcţie utilă pentru a defini în fişierele controller personalizate să ignore operaţiile de bază ale codului JavaScript din controler.
Dacă este definită, SCS.preInitRendering
trebuie să fie o funcţie. Este apelată fără niciun argument şi nicio valoare returnată nu este aşteptată sau procesată.
Funcţia SCS.getDeviceInfo
permite personalizarea logicii de detectare a dispozitivului în cadrul codului JavaScript al controllerului. Această detectare este utilizată pentru a determina dacă pentru o anumită pagină trebuie să fie livrată o versiune pentru mobil sau una adaptabilă.
Funcţia SCS.getDeviceInfo
nu preia niciun argument şi returnează un obiect JavaScript care are două proprietăţi:
isMobile – o proprietate booleană care indică faptul că dispozitivul curent este un client mobil, cum ar fi un telefon inteligent.
isIOS – o proprietate booleană care indică faptul că dispozitivul curent rulează pe un sistem de operare bazat pe iOS.
În cazul în care controllerul personalizat nu suprascrie SCS.getDeviceInfo
, este utilizată implementarea prestabilită care este încorporată.