PHP Classes

File: PHPReportPreview.xsl

Recommend this page to a friend!
  Classes of Eustaquio Rangel de Oliveira Jr.   phpreports   PHPReportPreview.xsl   Download  
File: PHPReportPreview.xsl
Role: Auxiliary data
Content type: text/plain
Description: Preview layer transformation
Class: phpreports
Report Generator
Author: By
Last change:
Date: 21 years ago
Size: 6,125 bytes
 

Contents

Class file image Download
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" encoding="iso-8859-1" indent="no"/> <xsl:apply-templates select="REPORT"/> <xsl:template match="/REPORT"> <html> <head> <title><xsl:value-of select="TITLE"/></title> <xsl:if test="string-length(CSS)>0"> <link rel="stylesheet" type="text/css"> <xsl:attribute name="href"> <xsl:value-of select="CSS"/> </xsl:attribute> </link> </xsl:if> </head> <body> <xsl:if test="string-length(@MARGINWIDTH)>0"> <xsl:attribute name="MARGINWIDTH"><xsl:value-of select="@MARGINWIDTH"/></xsl:attribute> </xsl:if> <xsl:if test="string-length(@MARGINHEIGHT)>0"> <xsl:attribute name="MARGINHEIGHT"><xsl:value-of select="@MARGINWIDTH"/></xsl:attribute> </xsl:if> <xsl:if test="string-length(BACKGROUND_COLOR)>0"> <xsl:attribute name="BGCOLOR"><xsl:value-of select="BACKGROUND_COLOR"/></xsl:attribute> </xsl:if> <xsl:if test="string-length(BACKGROUND_IMAGE)>0"> <xsl:attribute name="BACKGROUND"><xsl:value-of select="BACKGROUND_IMAGE"/></xsl:attribute> </xsl:if> <xsl:apply-templates select="/REPORT/DOCUMENT/HEADER"/> <xsl:apply-templates select="/REPORT/PAGE"/> <xsl:apply-templates select="/REPORT/DOCUMENT/FOOTER"/> </body> </html> </xsl:template> <!-- document header - separate table! --> <xsl:template match="/REPORT/DOCUMENT/HEADER"> <table> <xsl:call-template name="MAKE_TABLE_CONFIG"/> <xsl:apply-templates select="ROW"/> </table> </xsl:template> <!-- document footer - separate table! --> <xsl:template match="/REPORT/DOCUMENT/FOOTER"> <table> <xsl:call-template name="MAKE_TABLE_CONFIG"/> <xsl:apply-templates select="ROW"/> </table> </xsl:template> <!-- table configuration --> <xsl:template name="MAKE_TABLE_CONFIG"> <xsl:call-template name="BORDER"/> <xsl:call-template name="WIDTH"/> <xsl:call-template name="HEIGHT"/> <xsl:call-template name="ALIGN"/> <xsl:call-template name="CELLPADDING"/> <xsl:call-template name="CELLSPACING"/> </xsl:template> <!-- row --> <xsl:template match="ROW"> <tr> <xsl:apply-templates select="COL"/> </tr> </xsl:template> <!-- column --> <xsl:template match="COL"> <xsl:if test="string-length(@VISIBLE)&lt;1 or @VISIBLE='TRUE'"> <td> <xsl:call-template name="CELLCLASS"/> <xsl:call-template name="ROWSPAN"/> <xsl:call-template name="COLSPAN"/> <xsl:call-template name="WIDTH"/> <xsl:call-template name="HEIGHT"/> <xsl:call-template name="ALIGN"/> <xsl:call-template name="VALIGN"/> <span> <xsl:call-template name="TEXTCLASS"/> <xsl:value-of select="."/> </span> </td> </xsl:if> </xsl:template> <!-- page --> <xsl:template match="PAGE"> <table> <xsl:call-template name="MAKE_TABLE_CONFIG"/> <xsl:apply-templates select="HEADER"/> <xsl:apply-templates select="/REPORT/GROUPS"/> <xsl:apply-templates select="FOOTER"/> </table> </xsl:template> <!-- fields --> <xsl:template match="FIELDS"> <xsl:apply-templates select="ROW"/> </xsl:template> <!-- groups --> <xsl:template match="GROUPS"> <xsl:apply-templates select="GROUP"/> </xsl:template> <!-- group --> <xsl:template match="GROUP"> <xsl:apply-templates select="HEADER"/> <xsl:apply-templates select="FIELDS"/> <xsl:apply-templates select="GROUP"/> <xsl:apply-templates select="FOOTER"/> </xsl:template> <!-- header --> <xsl:template match="HEADER"> <xsl:apply-templates select="ROW"/> </xsl:template> <!-- footer --> <xsl:template match="FOOTER"> <xsl:apply-templates select="ROW"/> </xsl:template> <!-- cell class --> <xsl:template name="CELLCLASS"> <xsl:if test="string-length(@CELLCLASS)>0"> <xsl:attribute name="CLASS"> <xsl:value-of select="@CELLCLASS"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- text class --> <xsl:template name="TEXTCLASS"> <xsl:if test="string-length(@TEXTCLASS)>0"> <xsl:attribute name="CLASS"> <xsl:value-of select="@TEXTCLASS"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- row span --> <xsl:template name="ROWSPAN"> <xsl:if test="string-length(@ROWSPAN)>0"> <xsl:attribute name="ROWSPAN"> <xsl:value-of select="@ROWSPAN"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- col span --> <xsl:template name="COLSPAN"> <xsl:if test="string-length(@COLSPAN)>0"> <xsl:attribute name="COLSPAN"> <xsl:value-of select="@COLSPAN"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- align --> <xsl:template name="ALIGN"> <xsl:if test="string-length(@ALIGN)>0"> <xsl:attribute name="ALIGN"> <xsl:value-of select="@ALIGN"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- vertical align --> <xsl:template name="VALIGN"> <xsl:if test="string-length(@VALIGN)>0"> <xsl:attribute name="VALIGN"> <xsl:value-of select="@VALIGN"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- height --> <xsl:template name="HEIGHT"> <xsl:if test="string-length(@HEIGHT)>0"> <xsl:attribute name="height"> <xsl:value-of select="@HEIGHT"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- width --> <xsl:template name="WIDTH"> <xsl:if test="string-length(@WIDTH)>0"> <xsl:attribute name="width"> <xsl:value-of select="@WIDTH"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- border --> <xsl:template name="BORDER"> <xsl:if test="string-length(@BORDER)>0"> <xsl:attribute name="border"> <xsl:value-of select="@BORDER"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- cell padding --> <xsl:template name="CELLPADDING"> <xsl:if test="string-length(@CELLPADDING)>0"> <xsl:attribute name="cellpadding"> <xsl:value-of select="@CELLPADDING"/> </xsl:attribute> </xsl:if> </xsl:template> <!-- cell spacing --> <xsl:template name="CELLSPACING"> <xsl:if test="string-length(@CELLSPACING)>0"> <xsl:attribute name="cellspacing"> <xsl:value-of select="@CELLSPACING"/> </xsl:attribute> </xsl:if> </xsl:template> </xsl:stylesheet>