Click here to Skip to main content
       

Web Development

 
AnswerRe: SMTP Programming Pinmembervbmike10-Dec-12 9:49 
GeneralRe: SMTP Programming PinmemberDisIsHoody10-Dec-12 14:30 
GeneralRe: SMTP Programming PinmvpRichard MacCutchan10-Dec-12 22:36 
GeneralRe: SMTP Programming PinmemberDisIsHoody11-Dec-12 10:40 
GeneralRe: SMTP Programming PinmvpRichard MacCutchan11-Dec-12 11:26 
GeneralRe: SMTP Programming PinmemberDisIsHoody11-Dec-12 11:44 
GeneralRe: SMTP Programming PinmvpRichard MacCutchan11-Dec-12 11:58 
GeneralRe: SMTP Programming PinmemberDisIsHoody11-Dec-12 12:20 
QuestionXSLT Transforms - how to get just some of in a for-each PinmemberQuickBooksDev8-Dec-12 3:26 
AnswerRe: XSLT Transforms - how to get just some of in a for-each PinmemberChris Grove13-Dec-12 20:46 
GeneralRe: XSLT Transforms - how to get just some of in a for-each [modified] PinmemberQuickBooksDev17-Dec-12 1:42 
GeneralRe: XSLT Transforms - how to get just some of in a for-each PinmemberChris Grove17-Dec-12 4:43 
GeneralRe: XSLT Transforms - how to get just some of in a for-each PinmemberQuickBooksDev17-Dec-12 5:55 
GeneralRe: XSLT Transforms - how to get just some of in a for-each PinmemberChris Grove17-Dec-12 6:43 
Hi,
not sure if this is any help, I have used this to produce a student timetable grid. It does not do anything fancy at all, but it does use params and nested templates. It's quite old now and i'm sure it could be improved no end but it works well and might be of interest.
 
Chris
 
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output method="html"/>
	<xsl:template match="/">
    
	<!-- root template -->
	<xsl:if test="pupil/details[count(.) != 0]">
      <h1>Week A</h1>
      <table class="ec-gridview" width="100%">
        <xsl:apply-templates select="pupil/details [@weekCode='A'][1]" mode="weekheader"/>
        <xsl:apply-templates select="pupil/details [@weekCode='A'][1]" mode="weekdata">
          <xsl:with-param name="week">A</xsl:with-param>
        </xsl:apply-templates>
      </table>
      <xsl:apply-templates select="pupil/details [@weekCode='A'][1]" mode="ott">
        <xsl:with-param name="week">A</xsl:with-param>
      </xsl:apply-templates>
      
 
      <h1>Week B</h1>
      <table class="ec-gridview" width="100%">
        <xsl:apply-templates select="pupil/details [@weekCode='B'][1]" mode="weekheader"/>
        <xsl:apply-templates select="pupil/details [@weekCode='B'][1]" mode="weekdata">
          <xsl:with-param name="week">B</xsl:with-param>
        </xsl:apply-templates>
      </table>
      <xsl:apply-templates select="pupil/details [@weekCode='B'][1]" mode="ott">
        <xsl:with-param name="week">B</xsl:with-param>
      </xsl:apply-templates>
    </xsl:if>
  </xsl:template>
  
  <!-- week data template -->
  <xsl:template match="details" mode="weekheader">
    <tr class="ec-gridrow-header">
      <th class="ec-gridheader" scope="col" style="width:5%;text-align:center"></th>
      <th class="ec-gridheader" scope="col" style="width:16%;text-align:center">Mon</th>
      <th class="ec-gridheader" scope="col" style="width:16%;text-align:center">Tue</th>
      <th class="ec-gridheader" scope="col" style="width:16%;text-align:center">Wed</th>
      <th class="ec-gridheader" scope="col" style="width:16%;text-align:center">Thu</th>
      <th class="ec-gridheader" scope="col" style="width:16%;text-align:center">Fri</th>
      <th class="ec-gridheader" scope="col" style="width:16%;text-align:center">Sat</th>
    </tr>
  </xsl:template>
  
  <!-- week data template -->
  <xsl:template match="details" mode="weekdata">
    <xsl:param name="week"/>
        <!-- add the period data-->
        <tr class="ec-odd-line">
          <td class="ms-vb" style="vertical-align:text-top;text-align:center">
            <span class="ms-rteCustom-ArticleHeadLine">1</span>
          </td>
          <xsl:apply-templates select="//details[@lessonNumber='1' and @weekCode=$week]" mode="p1-6"/>
        </tr>
        <tr class="ec-even-line">
          <td class="ms-vb" style="vertical-align:text-top;text-align:center">
            <span class="ms-rteCustom-ArticleHeadLine">2</span>
          </td>
          <xsl:apply-templates select="//details[@lessonNumber='2' and @weekCode=$week]" mode="p1-6"/>
        </tr>
		<!-- Some code removed for brevity -->
	</xsl:template>
 
  <xsl:template match="details" mode="ott">
    <xsl:param name="week"/>
    <xsl:if test="count(//details [@lessonNumber > 299 and @weekCode=$week]) != 0">
      <h1 class="ms-rteCustom-ArticleHeadLine">Lessons not on the timetable</h1>
      <xsl:for-each select="//details [@lessonNumber > 299 and @weekCode=$week]">
        <a>
          <xsl:attribute name="href">
            ../Information/Set/SetLists.aspx?IsetCode=<xsl:value-of select="@setCode"/>
          </xsl:attribute>
          <xsl:value-of select="@setCode"/>
        </a> (<xsl:value-of select="@subjectName"/>) <xsl:value-of select="@description"/>
 
      </xsl:for-each>
    </xsl:if>
  </xsl:template>
  
  
  
	<!--period data template-->
	<xsl:template match="details" mode="p1-6">
		<xsl:for-each select=".">
			<td style="vertical-align:text-top;text-align:center;min-height:60px;">
				<xsl:attribute name="class">
					<xsl:choose>
						<xsl:when test="@currentLesson = 'Y'">ms-vb-cp</xsl:when>
						<xsl:when test="@setCode = 'BLANK'">
							<xsl:choose>
								<xsl:when test ="@dayIndex = '1' and @lessonNumber = '6'">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '2' and (@lessonNumber = '5' or @lessonNumber = '6')">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '3' and @lessonNumber = '6'">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '4' and (@lessonNumber = '5' or @lessonNumber = '6')">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '5' and @lessonNumber = '6'">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '6' and (@lessonNumber = '5' or @lessonNumber = '6')">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '8' and @lessonNumber = '6'">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '9' and (@lessonNumber = '5' or @lessonNumber = '6')">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '10' and @lessonNumber = '6'">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '11' and (@lessonNumber = '5' or @lessonNumber = '6')">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '12' and @lessonNumber = '6'">ms-vb-empty</xsl:when>
								<xsl:when test ="@dayIndex = '13' and (@lessonNumber = '5' or @lessonNumber = '6')">ms-vb-empty</xsl:when>
								<xsl:otherwise>ms-vb</xsl:otherwise>
							</xsl:choose>
						</xsl:when>
						<xsl:otherwise>ms-vb</xsl:otherwise>
					</xsl:choose>
				</xsl:attribute>
				<xsl:choose>
					<xsl:when test="@setCode != 'BLANK'">
						<xsl:value-of select="@subjectName"/>
						
 
						<a>
							<xsl:attribute name="href">
								../Information/Set/SetLists.aspx?IsetCode=<xsl:value-of select="@setCode"/>
							</xsl:attribute>
							<xsl:value-of select="@setCode"/>
						</a>
 
						
 
						<a>
							<xsl:attribute name="href">
								../Information/Room/RoomDetails.aspx?IroomCode=<xsl:value-of select="@room"/>
							</xsl:attribute>
							Room <xsl:value-of select="@room"/>
						</a>
						
 
						<xsl:for-each select="teacher">
							<xsl:value-of select="@teacher"/>
							
 
						</xsl:for-each>
					</xsl:when>
					<xsl:otherwise>
						<xsl:text xml:space="preserve"> </xsl:text>
						
 
						<xsl:text xml:space="preserve"> </xsl:text>
						
 
						<xsl:text xml:space="preserve"> </xsl:text>
						
 
						<xsl:text xml:space="preserve"> </xsl:text>
						
 
					</xsl:otherwise>
				</xsl:choose>
			</td>
		</xsl:for-each>
	</xsl:template>
</xsl:stylesheet>

QuestionPop Up JQuery Quick Link PinmemberJaniel Major5-Dec-12 23:02 
AnswerRe: Pop Up JQuery Quick Link Pinmembervbmike7-Dec-12 5:09 
AnswerRe: Pop Up JQuery Quick Link Pinmemberryanb3112-Dec-12 5:41 
Question[HELP] Whois can using PHP to generate this one? Pinmemberjimmy.suharry4-Dec-12 22:37 
AnswerRe: [HELP] Whois can using PHP to generate this one? PinmemberS.M. Zamshed Farhan12-Jan-13 6:54 
QuestionTool for big WEB project with huge loads PinmemberJunoli2-Dec-12 10:37 
AnswerRe: Tool for big WEB project with huge loads PinmemberRichard A. Abbott2-Dec-12 11:47 
Questionselect an item in gridview Pinmemberptvce2-Dec-12 2:50 
AnswerRe: select an item in gridview PinmvpRichard MacCutchan2-Dec-12 4:00 
Questioni php question Pinmembergamaan1-Dec-12 5:00 
AnswerRe: i php question Pinmembergamaan1-Dec-12 5:03 
AnswerRe: i php question PinmemberS.M. Zamshed Farhan12-Jan-13 7:03 
QuestionHTML PinmemberDivyamS30-Nov-12 20:35 
AnswerRe: HTML PinmemberS.M. Zamshed Farhan15-Jan-13 5:21 
Questionthe protocol 'net.pipe' is not supported-WCF Pinmembermallikharjuna22128-Nov-12 1:50 
AnswerRe: the protocol 'net.pipe' is not supported-WCF PinmemberRichard A. Abbott28-Nov-12 2:38 
GeneralRe: the protocol 'net.pipe' is not supported-WCF Pinmembermallikharjuna22128-Nov-12 3:34 
GeneralRe: the protocol 'net.pipe' is not supported-WCF PinmemberRichard A. Abbott28-Nov-12 4:11 
Questionhow to get data when using header('location:'.$url) ??? Pinmemberaa_zz26-Nov-12 5:27 
AnswerRe: how to get data when using header('location:'.$url) ??? PinmemberS.M. Zamshed Farhan15-Jan-13 5:24 
QuestionWeb technologies PinmemberJunoli25-Nov-12 12:28 
SuggestionRe: Web technologies PinmemberJon Andersson29-Nov-12 11:21 
Questionbreak-word CSS PinmemberJon Andersson23-Nov-12 8:15 
AnswerRe: break-word CSS Pinmembervbmike24-Nov-12 5:08 
GeneralRe: break-word CSS PinmemberJon Andersson24-Nov-12 14:13 
GeneralRe: break-word CSS Pinmembervbmike29-Nov-12 10:58 
GeneralRe: break-word CSS PinmemberJon Andersson29-Nov-12 11:04 
GeneralRe: break-word CSS Pinmembervbmike29-Nov-12 11:10 
AnswerRe: break-word CSS PinmemberJon Andersson29-Nov-12 11:14 
GeneralRe: break-word CSS Pinmembervbmike29-Nov-12 12:06 
GeneralRe: break-word CSS PinmemberRichard A. Abbott29-Nov-12 13:00 
AnswerRe: break-word CSS PinmemberJon Andersson29-Nov-12 20:33 
GeneralRe: break-word CSS Pinmembervbmike30-Nov-12 10:17 
GeneralRe: break-word CSS PinmemberRichard A. Abbott30-Nov-12 10:37 
GeneralRe: break-word CSS PinmemberJon Andersson29-Nov-12 11:17 
AnswerRe: break-word CSS Pinmembergilvani28-Nov-12 9:16 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.


Advertise | Privacy | Mobile
Web01 | 2.8.141216.1 | Last Updated 15 Dec 2014
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid