XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Posttop
ShaiVamp ShaiVampSubject: Help needed!
Author: ShaiVamp ShaiVamp
Date: 20 Mar 2008 01:28 PM
On my current site, I can click on a category and the view the content of that category. This is fine, but now I want to beable to view the contents of *ALL* the categories in one continous scroll seperated by category title. But I'm not quite sure how to go about it.

My current code:

[code=XML]<?xml version='1.0' encoding='utf-8' ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" encoding="ISO-8859-1" omit-xml-declaration="yes"/>

<xsl:param name="pagename">default.asp?pagename=media&amp;content=getcontent</xsl:param>
<xsl:param name="lang">en</xsl:param>
<xsl:param name="type">print</xsl:param>
<xsl:param name="vol">200304</xsl:param>
<xsl:param name="cat">2</xsl:param>
<xsl:param name="articleid">12345</xsl:param>
<xsl:param name="mode">preview</xsl:param>
<xsl:param name="target">email</xsl:param>
<xsl:param name="selectedcat"></xsl:param>

<xsl:variable name="strBaseURL"><xsl:value-of select="concat('type=',$type,'&amp;lang=',$lang,'&amp;vol=',$vol,'&amp;cat=',$cat,'&amp;articleid=',$articleid)"></xsl:value-of></xsl:variable>

<xsl:variable name="default" select="document('../xml/default.xml')/main/site[@language=$lang]"/>

<xsl:variable name="website_IP"><xsl:value-of select="$default/website_IP"/></xsl:variable>

<xsl:variable name="twidth">
<xsl:choose>
<xsl:when test="$target='web'"><xsl:text>100%</xsl:text></xsl:when>
<xsl:otherwise><xsl:text>750</xsl:text></xsl:otherwise>
</xsl:choose>
</xsl:variable>

<xsl:variable name="image_dir">
<xsl:choose>
<xsl:when test="$target='web'"><xsl:value-of select="$default/web_article_images_url"/></xsl:when>
<xsl:when test="$target='email' or $target='index'"><xsl:value-of select="$website_IP"/><xsl:value-of select="$default/web_article_images_url"/></xsl:when>
<xsl:when test="$target='cd'"><xsl:value-of select="$default/cd_article_images_url"/></xsl:when>
</xsl:choose>
</xsl:variable>



<xsl:variable name="viewpagename"><xsl:text>default.asp?pagename=media&amp;content=getcontent</xsl:text></xsl:variable>
<xsl:variable name="downloadpagename"><xsl:text>default.asp?pagename=media&amp;content=getcontent</xsl:text></xsl:variable>

<xsl:template match="vol_issue">
<xsl:variable name="view_text">
<xsl:choose>
<xsl:when test="type = 'print' or type = 'web'">
<xsl:choose>
<xsl:when test="language='en'">View this article</xsl:when>
<xsl:otherwise>Visualiser cet article</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="type = 'digital'">
<xsl:choose>
<xsl:when test="language='en'">Watch this video</xsl:when>
<xsl:otherwise>Regarder ce vidéo</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="type = 'pr'">
<xsl:choose>
<xsl:when test="language='en'">View this release</xsl:when>
<xsl:otherwise>Visualiser ce communiqué</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="language='en'">View this script</xsl:when>
<xsl:otherwise>Visualiser ce script</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>

<xsl:variable name="email_text">
<xsl:choose>
<xsl:when test="type ='print' or type='web'">
<xsl:choose>
<xsl:when test="language='en'">E-mail me this article</xsl:when>
<xsl:otherwise>Veuillez me transmettre cet article par courriel</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="type ='pr'">
<xsl:choose>
<xsl:when test="language='en'">E-mail me this release</xsl:when>
<xsl:otherwise>Envoyer ce communiqué par courriel</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:when test="type ='digital'">
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="language='en'">E-mail me this script</xsl:when>
<xsl:otherwise>Veuillez me transmettre ce script par courriel</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>

<xsl:variable name="cat_description" select="document('../articles/categories.xml')/main/category[@category_id = $cat]/description"/>
<xsl:variable name="category_lookup" select="document('../articles/categories.xml')"/>

<xsl:choose>
<xsl:when test="$target = 'web'">
<div class="ln-text">
<xsl:for-each select="category">
<xsl:sort select="sort_order" data-type="number" order="ascending" />
<xsl:variable name="catid" select="@category_id"/>
<xsl:variable name="classname">
<xsl:choose>
<xsl:when test="$catid = $selectedcat"><xsl:text>ln-slink</xsl:text></xsl:when>
<xsl:otherwise><xsl:text>ln-alink</xsl:text></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:text>&#160;</xsl:text><a href="{$strBaseURL}&amp;vol={/vol_issue/@vol_issue_id}&amp;cat={$catid}" id="{$catid}" class="{$classname}"><xsl:value-of select="$category_lookup/main/category[@category_id = $catid]/description"/>:<xsl:value-of select="count(article)"/>

</a><br/>
</xsl:for-each>
</div>
</xsl:when>
</xsl:choose>

<div class="m-bcategory"><h1><xsl:value-of select="$cat_description"/></h1></div>

<xsl:for-each select="category[@category_id = $cat]/article">
<xsl:variable name="article" select="document(concat('../articles/', @article_id, '.xml'))"/>
<div class="m-blurbwrapper">
<div class="m-bheadline"><a class="m-bheadline" href="{$viewpagename}&amp;type={../../type}&amp;lang={../../language}&amp;vol={../../@vol_issue_id}&amp;cat={../@category_id}&amp;articleID={@article_id}&amp;mode=view&amp;id={$article/article/video/file/file_name}"><xsl:value-of select="$article/article/headline"/></a></div>

<div class="m-awordcount">
<xsl:value-of select="$article/article/body_text/wordcount"/>
</div>
<xsl:if test="../../type='print' or ../../type='web'">
<div class="m-thumbnail">

<img height="50" width="70">
<xsl:attribute name="src">
<xsl:value-of select="$image_dir"/>
<xsl:value-of select="$article/article/images/image/source"/>
<!--<xsl:if test="$article/article/images/image/source = '' ">noimage.jpg</xsl:if>-->
<xsl:choose>
<xsl:when test="$article/article/images/image/source = '' and $lang='en' ">noimage.jpg</xsl:when>
<xsl:when test="$article/article/images/image/source = '' and $lang='fr' ">noimagefre.jpg</xsl:when>
</xsl:choose>
</xsl:attribute>
</img>

</div>
</xsl:if>





<div class="m-bblurb"><xsl:value-of select="$article/article/blurb"/></div>



<div class="m-blink">
<a class="m-blink" href="{$viewpagename}&amp;type={../../type}&amp;lang={../../language}&amp;vol={../../@vol_issue_id}&amp;cat={../@category_id}&amp;articleID={@article_id}&amp;mode=view&amp;id={$article/article/video/file/file_name}">
<xsl:value-of select="$view_text"/>
</a>
<xsl:if test="../../type='print' or ../../type='web' or ../../type='pr' or ../../type='digital'">
&#160;&#160;&#160;<a class="m-blink" href="{$downloadpagename}&amp;type={../../type}&amp;lang={../../language}&amp;vol={../../@vol_issue_id}&amp;cat={../@category_id}&amp;articleID={@article_id}&amp;mode=email">
<xsl:value-of select="$email_text"/> <!-- <input type="checkbox" value="{@category_id}" name="category_id"><xsl:value-of select="description"/></input> -->
</a>
</xsl:if>
</div>
</div>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>[code]

Thanks for the help,

SV.

 
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.