O JavaScript do controlador utiliza variáveis e propriedades definidas no objeto SCS global para apresentar a página na Web. O objeto de JavaScript global deve ser definido no ficheiro de controlador antes da inclusão do ficheiro controller.js. Existem duas propriedades principais no objeto SCS que podem ser utilizadas para customização:
A variável SCS.sitePrefix
define o prefixo do percurso do site online. Normalmente, assume por omissão site/<siteName>/
.
O JavaScript do controlador utiliza este valor para determinar qual a página na Web a apresentar. Por exemplo, se o browser estiver a pedir a página em /site/SampleSite/products/index.html
, o sitePrefix /site/SampleSite/
permite ao JavaScript calcular que a página products/index.html
no site deve ser apresentada. Tenha em atenção que o sitePrefix deve ser um valor de cadeia de caracteres que começa e termina num carácter "/
".
/intranet/ExampleSite/
permite a entrega do site com esse nome de percurso no browser em vez do prefixo do percurso por omissão /site/SampleSite/
.
Nota:
Internamente, o JavaScript do controlador por omissão utiliza "/
" como sitePrefix se o URL no browser não corresponder ao prefixo do site. Isto permite que o site seja fornecido utilizando um domínio personalizado sem customização.Se estiver definida, a função SCS.preInitRendering
é chamada pelo código JavaScript do controlador antes de qualquer uma das respetivas lógicas computacionais ser executada. Esta é uma função útil para definir em ficheiros de controlador customizados para substituir as operações básicas do JavaScript do controlador.
Se for definida, SCS.preInitRendering
deve ser uma função. É chamada sem quaisquer argumentos e nenhum valor de retorno é esperado ou processado.
A função SCS.getDeviceInfo
permite a customização da lógica de deteção de dispositivos dentro do JavaScript do controlador. Esta deteção é utilizada para determinar se deve ser entregue uma versão móvel ou responsiva de uma página.
A função SCS.getDeviceInfo
não aceita argumentos e devolve um Objeto de JavaScript com duas propriedades:
isMobile — uma propriedade Booleana que indica que o dispositivo atual é um cliente móvel, como um smartphone.
isIOS — uma propriedade Booleana que indica que o dispositivo atual está a executar um sistema operativo baseado em iOS.
Se o controlador customizado não substituir SCS.getDeviceInfo
, é utilizada a implementação por omissão integrada.