Portlets da página inicial
É possível incluir novos portlets ou substituir portlets existentes no aplicativo.
<portlet_name>.config.js<portlet_name>.controller.js<portlet_name>.tpl.html<portlet_name>-mini.controller.js<portlet_name>.mini.tpl.html
Incluindo ou Substituindo Portlets.
Os portlets podem ser registrados ou substituídos usando o método registerCustomPortlet() Um mecanismo de registro é fornecido para registrar portlets customizados e também para substituir a sequência ou visibilidade ou personaConfig dos portlets padrão. Um arquivo config.js deve ser criado para um portlet customizado e também para um portlet que precisa ser substituído
Você não pode alterar o templateUrl e controller para um portlet padrão, se desejar substituí-lo. A substituição é suportada apenas para alterar a seqüência, a visibilidade, resourceId e personaConfig para o portlet No entanto, para alterar o templateUrl e o controlador, é recomendável ocultar o portlet padrão substituindo e, em seguida, registrando um novo portlet customizado.
- Defina um novo portlet e os arquivos HTML, CSS e Controller JS de modelo relevantes na pasta relevante no tempo de execução
- Defina um novo arquivo de configuração para registrar o portlet customizado conforme mostrado no fragmento de código a seguir:
angular.module('store').config(['iscPortletPvdrProvider', function(iscPortletPvdrProvider) { iscPortletPvdrProvider.registerCustomPortlet(customName, customConfigJson);
registerCustomMethodPortlet method
sequenceNumber, showPortlet, resourceId e personaConfig...extn_" antes ou no final do nome do portlet que está sendo definido como um novo portlet ou para substituir um portlet padrão. Por exemplo, em vez de nomear o portlet como "find-products-portlet.config.js", que entrará em conflito com o nome do portlet padrão, altere o nome do portlet como "extn_find-products-portlet.config.js" ou "find-products-portlet_extn.config.js". Isso é aplicável aos atributos miniViewTemplateUrl e miniViewController , se definidos para o portlet customizado Recomenda-se seguir essa diretriz para todos os portlets definidos, incluindo os portlets de especificação antigos (definidos anteriormente para liberar 17.3).customName {String} Nome lógico do portlet. Isso deve ser exclusivo para cada portlet no aplicativo No caso de dois ou mais portlets personalizados com o mesmo nome, o segundo portlet em diante será ignorado. No entanto, os atributos sequenceNumber, showPortlet, resourceId e personaConfig de um portlet padrão podem ser substituídos usando esse método, passando o nome do portlet padrão.customName não pode ser "moretasksportlet". Este é o aplicativo reservado..customConfigJson {object} Esta é a configuração de JSON para várias propriedades do portlet. Os atributos suportados que são usados são os seguintes:templateUrl {String}: Obrigatório para o novo portlet customizado. É a URL do modelo HTML do portlet e é ignorado, se passado para substituir um portlet padrão.controller {String}: Obrigatório para o novo portlet customizado. É o nome do controlador para o portlet e é ignorado se passado para substituir um portlet padrão.sequenceNumber {Number}: Portlets são classificados em ordem crescente desse número. Assim, um número menor significa que o portlet aparecerá no início e um número maior significa que o portlet será exibido posteriormente na seqüência.. Esse valor não deve ser fornecido em múltiplos de 10 para portlets customizados Ele pode ser passado para substituir o valor correspondente de um portlet padrão. Para novos portlets de especificação (da liberação 17.3 em diante), isso é substituído porpersonaConfig.personaSequenceNumber.showPortlet {Boolean}: Obrigatório para o novo portlet customizado. Esse é um sinalizador para indicar se o portlet deve ser exibido na UI ou não Configurando-o comofalse, você não mostrará o portlet na UI, independentemente de o usuário ter permissão de recurso para o portlet ou não. Ele pode ser passado para substituir o valor correspondente de um portlet padrão.resourceId {String}: Obrigatório para o novo portlet customizado. Esta é a permissão de recurso para o portlet Várias permissões de recurso podem ser combinadas usando um canal |. Por exemplo,'EXTN000015|EXTN000012|EXTN000028'Um portlet será exibido se o usuário tiver permissões para visualizar pelo menos um dos IDs de recurso fornecidos Ele pode ser passado para substituir o valor correspondente de um portlet padrão.personaConfig {object}: Obrigatório para o novo portlet customizado. Esta é uma nova configuração JSON que determina se um portlet é um novo portlet de especificação (17.3 em diante) ou não) Se não estiver definido, o portlet será tratado como um portlet de especificação antigo Ele contém os atributos necessários para tomar decisões de renderização relacionadas ao persona. Os atributos suportados são os seguintes:personaName {String}: Obrigatório para o novo portlet customizado. Este é o nome de uma persona que foi definida no Sterling Business Center Ele corresponde aoCodeNamepara oCommonCodeCodeType"WSC_HOMEPAGE_PERSONA". Ele é usado na UI para determinar se o portlet deve ser um dos portlets disponíveis para o persona atualmente selecionado ou não. Ele será considerado apenas na lista, se opersonaNamecorresponder à persona atualmente selecionada Este atributo não garante a visibilidade. A visibilidade é determinada por uma combinação deshowPortleteresourceId.personaSequenceNumber {Number}: Obrigatório para o novo portlet customizado. Isso substitui o atributosequenceNumberpara novos portlets de especificação (17.3 em diante). Ele deve ser fornecido em múltiplos de 5 para os portlets padrão Todos os portlets visíveis para a mesma persona serão organizados na ordem crescente desse número No entanto, para portlets customizados, esse valor deve ser não múltiplos de 5.miniViewTemplateUrl {String}: Obrigatório para o novo portlet customizado. A URL do modelo utilizado para criar a visualização mini ou pequena do portlet, quando ele estoura para o portlet Mais TarefasminiViewController {String}: Obrigatório para o novo portlet customizado. O nome do controlador utilizado para fazer chamadas mashup/API para exibir números na visualização mini / pequena do portlet quando ele estoura no portlet More Tasks.
- Outros atributos aplicáveis a portlets de especificação antigos como
templateUrl,controller,sequenceNumber(opcional),showPortleteresourceIdainda são válidos. - Os portlets padrão também contêm atributos de mapa do site. Eles são usados para criar o Mapa do Site e não são obrigatórios Os portlets customizados não precisam ter atributos de mapa do site
iscPortletPvdrProvider.registerCustomPortlet('extnfindproductsportlet', {
templateUrl: './store/views/home/extn_find-products-portlet.tpl.html',
controller: 'store.views.home.extn_find-products-portlet',
showPortlet: true,
resourceId: 'EXTN000031',
personaConfig: {
personaName: 'Customer_Service',
personaSequenceNumber: 11,//these are in non-multiples of 5.
miniViewTemplateUrl: './store/views/home/extn_find-products-portlet-mini.tpl.html',
miniViewController: 'store.views.home.extn_find-products-portlet-mini'
}
});Para substituir um portlet padrão (nova especificação), altere permission, persona e personaSequenceNumber:iscPortletPvdrProvider.registerCustomPortlet('findproductsportlet', {
resourceId: 'EXTN000071',
personaConfig: {
personaName: 'Custom_Customer_Service',//this is assumed to be a new persona added to SBC.
personaSequenceNumber: 11//these are in non-multiples of 5.
}
});