Heb het voor de gein ff gemaakt

.
Ik kon ff niet bij mijn webruimte dus je moet zelf even de files saven. Het is alleen getest in Mozilla 0.9.5 en Xalan, maar het zal in IE 6 ook wel werken.
Allereerst is er een file waarin je alle forums van GoT moet opnemen. Ik had geen zin om alles in te tikken, dus dat moet je zelf ff doen

.
Je moet deze file opslaan als "got-fora.xml".
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| <?xml version="1.0"?>
<got-fora>
<forum id="14">
<naam>Programming & Webscripting</naam>
<afkorting>PW</afkorting>
</forum>
<forum id="13">
<naam>Webdesign & Graphics</naam>
<afkorting>W&G</afkorting>
</forum>
</got-fora> |
Daarna moet je in een tweede file je favourites instellen. Deze file moet je opslaan als "got-favourites.xml".
code:
1
2
3
4
5
6
7
8
| <?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="got-favourites.xsl" ?>
<favourites>
<forum ref="13"/>
<forum ref="14"/>
</favourites> |
Het spreekt voor zich: je kan forums toevoegen of verwijderen, waarbij de ref verwijst naar de id van een forum. Deze id moet wel in de got-fora staan!
Ok, dan nu de stylesheet die de zaak uitvoert. Hier hoef je niets aan te veranderen. Alleen even opslaan als got-favourites.xsl.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
| <?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/1999/xhtml">
<xsl:variable name="active-topics" select="document('http://www.wasigh.com/jelmervos/activetopics.xml')"/>
<xsl:variable name="fora" select="document('got-fora.xml')"/>
<xsl:output method="xml" indent="yes"
doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
doctype-system="DTD/xhtml1-transitional.dtd"/>
<xsl:template match="/">
<html xml:lang="en" lang="en">
<head>
<title>Your Favourite Active Topics</title>
</head>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="forum">
<xsl:variable name="forum" select="$fora/got-fora/forum[@id = current()/@ref]"/>
<h2>
<xsl:value-of select="$forum/naam"/>
</h2>
<ul>
<xsl:apply-templates select="$active-topics/activetopics/topic[forumafkorting/text() = $forum/afkorting/text()]"/>
</ul>
</xsl:template>
<xsl:template match="topic">
<li>
<a href="http://gathering.tweakers.net/showtopic.php/{id}">
<xsl:value-of select="titel"/>
</a>
<xsl:text>(</xsl:text>
<xsl:value-of select="topicstarter"/>
<xsl:text>, </xsl:text>
<xsl:value-of select="replies"/>
<xsl:text>, </xsl:text>
<xsl:value-of select="tijd"/>
<xsl:text>)</xsl:text>
</li>
</xsl:template>
</xsl:stylesheet> |
That's all
Uiteraard moet alles in dezelfde directory staan. Nu open je met je browser de file got-favourites.xml. Als het goed is zie je nu een eenvoudige gefilterde versie van de active-topics. Nadeel: als een topic uit de active-topics is, zie je hem dus ook niet meer op de lijst.
Als het niet lukt kan ik hem alsnog wel ff online zetten.