Small width layout Medium width layout Maximum width layout Small text Medium text Large text
     Search
Downloads Downloads Directory Directory Forums Forums Forge Forge Blogs Blogs        Marketplace Marketplace Careers Program Careers
Community › Forums Register  |  

AppTheory specializes in solutions based on the DotNetNuke platform and has 2 employees on the DotNetNuke Core Team.
  Ads  
 


  Sponsors  

Meet Our Sponsors

SteadyRain
DataSprings - Great Ideas. Always Flowing.
R2integrated - formerly bi4ce
Jango Studios - Skins, Modules and Hosting for DotNetNuke
eUKhost.com is commited to offer exceptional UK Windows Web Hosting solutions with quality 24x7 technical support.Our plans support ASP.Net, ASP, ASP.NET Ajax extensions, XML, MSSQL, MySQL, PHP,DNN, multiple domains and Shared SSL as standard.
SmarterTools
 


DotNetNuke Forums
 
  Forum  DotNetNuke® Pro...  User Defined Ta...  Two-Column XSLT Output
Previous Previous
 
Next Next
New Post 5/1/2008 2:06 PM
User is offline Mike Riley
245 posts
9th Ranked


Two-Column XSLT Output 

I wanted to share a custom XSLT that I setup if anyone's interested and also to find out if there's a better way to do this.  I'm outputting the data in two columns by testing the record position and displaying the data in another table that's either left or right aligned.

The pertinent code follows:

  <xsl:template match="udt:Data" mode="list">
    <xsl:if test="position() mod 2 = 1">
      <table border="1" width="50%" align="left">
        <tr>
          <td align="center">
            <xsl:call-template name="EditLink" />
            <xsl:value-of select="udt:Wallpaper" disable-output-escaping="yes" />
            <br />
            <xsl:value-of select="udt:Caption" disable-output-escaping="yes" />
          </td>
        </tr>
      </table>
    </xsl:if>
    <xsl:if test="position() mod 2 = 0">
      <table border="1" width="50%" align="right">
        <tr>
          <td align="center">
            <xsl:call-template name="EditLink" />
            <xsl:value-of select="udt:Wallpaper" disable-output-escaping="yes" />
            <br />
            <xsl:value-of select="udt:Caption" disable-output-escaping="yes" />
          </td>
        </tr>
      </table>
      <br clear="all" />
    </xsl:if>
  </xsl:template>

  <xsl:template match="/udt:UserDefinedTable">
    <xsl:variable name="currentData" select="udt:Data" />
    <table border="1" class="normal" width="100%">
      <tr>
        <td>
          <xsl:apply-templates select="$currentData" mode="list">
          </xsl:apply-templates>
        </td>
      </tr>
    </table>
  </xsl:template>

 

 
New Post 5/5/2008 9:57 AM
User is offline Mike Riley
245 posts
9th Ranked


Three Columns 

I was able to get more than 2 columns working.  It's not quite where I want it to be yet (each column had only one cell, so "rows" don't line up).

Pertinent code follows:

select="//udt:Context/udt:ModuleId" />_param</xsl:variable>

  <xsl:template match="udt:Data" mode="list">
    <xsl:call-template name="cell">
    </xsl:call-template>
  </xsl:template>

  <xsl:template name="cell">
    <xsl:call-template name="EditLink" />
    <xsl:value-of select="udt:Wallpaper" disable-output-escaping="yes" />
    <br />
    <b>
      <xsl:value-of select="udt:Title" />
    </b>
    <br />
    <xsl:value-of select="udt:Caption" />
    <br />
    <input type="checkbox" />
    <br />
    <br />
  </xsl:template>

  <xsl:template match="/udt:UserDefinedTable">
    <xsl:variable name="currentData" select="udt:Data" />
    <table border="0" class="Normal">
      <tr valign="top">
        <td align="center">
          <xsl:apply-templates select="$currentData[(position() - 1) mod 3 = 0]" mode="list">
          </xsl:apply-templates>
        </td>
        <td align="center">
          <xsl:apply-templates select="$currentData[(position() - 2) mod 3 = 0]" mode="list">
          </xsl:apply-templates>
        </td>
        <td align="center">
          <xsl:apply-templates select="$currentData[(position()) mod 3 = 0]" mode="list">
          </xsl:apply-templates>
        </td>
      </tr>
    </table>
  </xsl:template>

  <xsl:template name="EditLink">

 
Previous Previous
 
Next Next
  Forum  DotNetNuke® Pro...  User Defined Ta...  Two-Column XSLT Output
 


Forum Policy

These Discussion Forums are dedicated to the discussion of the DotNetNuke Web Application Framework.

For the benefit of the community and to protect the integrity of the project, please observe the following posting guidelines:

1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DotNetNuke.
2. Discussion or promotion of DotNetNuke product releases under a different brand name are strictly prohibited.
3. No Flaming or Trolling.
4. No Profanity, Racism, or Prejudice.
5. Site Moderators have the final word on approving/removing a thread or post or comment.
6. English language posting only, please.

 


DNNMasters - modules, consulting, development
DNNMasters developers are involved in DNN development since DNN 1.0.9 and today we offer a broad range of DNN related products and services including custom development of modules, help with ing third party modules for specific needs, general DNN technical support and administrative services.
www.dnnmasters.com
Cygnusoft Custom Software
Cygnusoft has been providing cutting-edge custom software solutions for 20 years. Cygnusoft is also a leading start-up incubator, helping our partners build successful new businesses.
www.cygnusoft.com
Digicon: DotNetNuke design and development
Digicon is based in Brisbane, Queensland, Australia
digicon.com.au

DotNetNuke Corporation   Terms Of Use  Privacy Statement
DotNetNuke®, DNN®, and the DotNetNuke logo are trademarks of DotNetNuke Corporation
Hosted by MaximumASP