Implement sorting of children repository elements.
- Sort the build page table elements by Bundle-SymbolicName
diff --git a/scripts/iplog.php b/scripts/iplog.php
index ef9955e..ebef556 100644
--- a/scripts/iplog.php
+++ b/scripts/iplog.php
@@ -293,14 +293,28 @@
echo "<th>Orbit Contact</th>";
echo "</tr>";
+$outHTML = '';
foreach ($childRepoXmlList as $childLoc => $childRepoXml) {
$proc->setParameter(null, 'repoPath', $repoPath . '/' . $childLoc);
$childXmlDoc = new DOMDocument();
$childXmlDoc->loadXML($childRepoXml);
$html = $proc->transformToXML( $childXmlDoc );
- echo "$html";
+ $outHTML = $outHTML . $html;
}
+// Sort the content all together
+$sortXslContent = file_get_contents('sort.xsl');
+$sortXslDoc = new DOMDocument();
+$sortXslDoc->loadXML($sortXslContent);
+
+$outXmlDoc = new DOMDocument();
+$outXmlDoc->loadHTML($outHTML);
+
+$sproc = new XSLTProcessor();
+$sproc->importStylesheet($sortXslDoc);
+$finalHTML = $sproc->transformToXML ($outXmlDoc);
+echo "$finalHTML";
+
echo "</table>";
echo "<p>Note: entries marked with 'unzip' are intented to be unzipped in a normal IDE environment, to work as intended (even though the file to download is a jar file).</p>";
diff --git a/scripts/sort.xsl b/scripts/sort.xsl
new file mode 100644
index 0000000..19eff19
--- /dev/null
+++ b/scripts/sort.xsl
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:php="http://php.net/xsl" version="1.0">
+
+ <xsl:output omit-xml-declaration="yes" indent="yes"/>
+
+ <xsl:template match="@*|node()">
+ <xsl:copy><xsl:apply-templates select="@*|node()" /></xsl:copy>
+ </xsl:template>
+
+ <xsl:template match="/">
+ <xsl:copy>
+ <xsl:apply-templates select="//tr">
+ <!-- The first cell in a row contains the Bundle-SymblicName -->
+ <xsl:sort select="td[1]/a/text()"/>
+ <!-- The third cell in a row contains the Bundle-Version -->
+ <xsl:sort select="td[3]/text()"/>
+ </xsl:apply-templates>
+ </xsl:copy>
+ </xsl:template>
+
+</xsl:stylesheet>