Personalizando folhas de estilo para proposições XML do SAPL

Por Angelo Marcondes de Oliveira Neto [angelomarcondes@…]

Câmara Municipal de Carneirinho - MG

Last Updated: Wednesday December 26, 2012

Objetivo

O objetivo deste tutorial é criar uma folha de estilo básica para as proposições eletronicas (XML) do SAPL. Como todos já sabem, tais proposições trazem apenas os textos das mesmas, mas estas podem ser personalizadas de modo a apresentar as proposições formatadas segundo o critério de cada casa legislativa. Neste caso faremos a personalização da indicação, sendo que este processo poderá ser replicado em qualquer proposição eletrônica do SAPL (XML), respeitando sempre o layout de um arquivo XLS.

Primeiro passo

Segundo passo

Na barra de navegação do lado esquerdo, clique no mais (+) na frente do item SAPL, posteriormente clique no mais (+) na frente da pasta XSLT e depois clique na pasta HTML. Caso de seu SAPL esteja hospedado no Interlegis, você clicará apenas no mais (+) na frente da pasta XSLT e depois clique na pasta HTML.

Observe que foram listados no corpo da ZMI, os arquivos com a extensão XSL. Como por exemplo indicacao.xsl e mocao.xsl.

Entenda que os arquivos XSL, também conhecidos como folhas de estilo XML, conferem formatação aos arquivos XML

Leia mais em Wikipedia, W3CSchool Veja Tutorial elaborado por Wesley de Paula Oliveira

Terceiro Passo

Ainda na ZMI, clique sobre a folha de estilo desejada, neste caso personalizaremos a folha de estilo indicacao.xsl. Portanto clique sobre a mesma.

Quarto passo

Observe que o código utiliza tabelas para realizar a formatação, método este que está ultrapassado. Assim vamos substituir o código antilo pelo código abaixo, onde as tags de tabelas serão substituídas por tags de parágrafos e além disso será adicionada a referência a um arquivo de CSS o qual dará formato as proposições. Assim, copie o código abaixo e cole no lugar do código antigo e depois clique no botão save changes, localizado na parte inferior do formulário.

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ind="/XSD/Indicacao">


<xsl:template match="/">
<html>
<head>
<link href="/sapl/XSLT/HTML/estilo.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<xsl:apply-templates />
</body>
</html>
</xsl:template>

<xsl:template match="ind:ementa_text">
<div>
    <div id="imagem">
        <img border="0" src="/sapl/sapl_documentos/props_sapl/logo_casa"/>
    </div>
    <p class ="cabecalho">DIGITE AQUI SUA CASA LEGISLATIVA</p>
    <p class ="pequeno">DIGITE AQUI SEU CABEÇALHO<br></br><br></br><br></br> </p>
 </div>
	<p class="autor"><strong><xsl:value-of select="text()" /></strong></p>

</xsl:template>
<xsl:template match="ind:autoria_text">
	<p class="semrecuo"><xsl:value-of select="text()" /></p>
</xsl:template>

<xsl:template match="ind:destinatario_text">
	<p class="semrecuo"><xsl:value-of select="text()" /></p>
</xsl:template>

<xsl:template match="ind:indicacao_text">
	<p><xsl:value-of select="text()" /></p>

</xsl:template>
<xsl:template match="ind:data_text">
	<p><xsl:value-of select="text()" /></p>
</xsl:template>

<xsl:template match="ind:autor_text">
	<p class="autor"><xsl:value-of select="text()" /></p>
</xsl:template>

</xsl:stylesheet>

Quinto passo

Repita o Segundo Passo e estando dentro da pasta HTML selecione no menu drop down situado no canto superior direito, onde se lê Accelerated HTTP Cache Manager o item DTML Method. Na página seguinte, atribua o nome estilo.css e clique no botão Add and Edit

Sexto passo

No editor que se abre em seguida, observe que há um trecho de código HTML e ZPT, o qual deverá ser apagado e substituído pelo código abaixo e ao finalizar, clique no botão Save Changes.

 body {
   font-family: Times;
   text-align: justify;
   font-size: 12 pt;
   margin: 0px 0  20px 0; 
}

 p, 
 .p{
   font-family: Times;
   text-align: justify;
   font-size: 12pt;
   text-indent: 1.5cm;
   margin: 40px 0  20px 0;
  }

 .pequeno {
   font-family: Times;
   text-align: left;
   font-size: 16pt;
   margin: 0px 0  0px 0;
  }

 .cabecalho {
   font-family: Times;
   font-weight:bold;
   text-align: left;
   font-size: 18pt;
   margin: 0px 0  0px 0;
  }

 .data {
   text-align: right;
  }

 .autor {
   text-align: center;
  }

 .center {
   text-align: center;
  }

 .semrecuo {
   text-indent: 0;
  }


#imagem {
   float:left;      
  }

#autores
  {
    -moz-column-count:3; /* Firefox */
    -webkit-column-count:3;  /* Safari and Chrome */
     style="width:50px;
  }

Ultimo passo

Tendo realizado este processo basta restartar seu SAPL ou aguardar a atualização do mesmo (caso esteja hospedado no Interlegis). Maiores variações nas formatações da folha de estilo, poderão ser feitas através de alterações no arquivo estilo.css, do qual tratamos no sexto passo.

Observações

Como existem várias versões do SAPL e vários tipos de hospedagem, algumas linhas poderão sofrer variações, sendo estas.

  • <link href="/sapl/XSLT/HTML/estilo.css" rel="stylesheet" type="text/css"/> no quarto passo;
  • <img border="0" src="/sapl/sapl_documentos/props_sapl/logo_casa"/> no quarto passo;

Estas linhas poderão ter os atributos href e src diferentes destes, sendo que já presenciei as seguintes variações.

  • <link href="/XSLT/HTML/estilo.css" rel="stylesheet" type="text/css"/> no quarto passo;
  • <img border="0" src="/sapl_documentos/props_sapl/logo_casa"/> no quarto passo;

TODO

  • Encontrar uma forma de passar os parâmetros DTML dentro do XSL.
Última modificação 6 anos atrás Última modificação em 30/04/2013 18:08:29

Anexos (1)

 

The contents and data of this website are published under license:
Creative Commons 4.0 Brasil - Atribuir Fonte - Compartilhar Igual.