Utilização do controle lum_advancedTabularData |
Top Previous Next |
O controle lum_advancedtabularData está presente nas interfaces administrativas. Pelo fato do XML ser muito extenso, será exibido em dois blocos.
Os controles que estão em negrito são os que serão trabalhados no XSL. O controle lum_interfaceHeader monta o cabeçalho da interface, como já foi visto. O controle lum_interfaceHeaderButtons monta os botões de administração: adicionar, editar, excluir e versões. Segue abaixo, o segundo bloco:
O controle lum_advancedTabularData é semelhante ao controle da interface Lista, lum_tabularData, exceto pelo fato de trazer algumas informações importantes para uma interface Administração:
No XSL apresentado abaixo, estão sendo chamados os templates de Filtros e Paginação, mas nesse caso eles não serão customizados. Eles já foram customizados nas seções anteriores. Em negrito alguns destaques importantes do código:
• Foi utilizada a tag <lum:form /> para reduzir o tamanho do código; • A tag <xsl:variable name= "id"select="//control[@type='lum_advancedTabularData']/@id" /> é importante para que os checkboxes funcionem. Será chamada dentro deles no atributo name. No caso o atributo value chamando o campo “@primaryKey” também é importante para o seu funcionamento; • O controle lum_interfaceHeaderButtons foi chamado com <xsl:apply-templates />; e depois montado logo abaixo de <lum:form />. Se os controles lum_filters ou lum_pagination fossem customizados, seriam também logo abaixo de <lum:form />; • Atribuindo um id=”adminTable” a tabela, fica fácil customizar todas as tags <tr> e <th> dentro do <thead> (cabeçalho), usando o CSS declarado dentro de <style />; • Quando for montado o portal é melhor inserir todo o CSS num arquivo externo, aplicado à páginas ou canais; • Os campos do cabeçalho da tabela estão fixos. São chamados como no exemplo:<xsl:value-ofselect="$fieldPath/field[@id='title']/@name" />, sendo que a variável “fieldPath” foi declarada no início do código; • Finalmente, o loop de dados cadastrados com <xsl:for-eachselect="//control[@type='lum_advancedTabularData']/data/row">. Neste caso, o código é bem parecido com o funcionamento de um loop de Lista, como foi visto nas primeiras seções, com a diferença de e uma interface Administração ter checkboxes. Após a customização do XSL, a interface Administração ficará assim:
|
Lumis Portal 6.1.0.111014
Copyright © 2001-2007, Lumis. Todos os direitos reservados.