Packages

phoenix_kit

1.7.21
1.7.210 1.7.209 1.7.208 1.7.207 1.7.206 1.7.205 1.7.204 1.7.203 1.7.202 1.7.201 1.7.200 1.7.199 1.7.198 1.7.197 1.7.196 1.7.194 1.7.193 1.7.192 1.7.191 1.7.190 1.7.189 1.7.187 1.7.186 1.7.185 1.7.184 1.7.183 1.7.182 1.7.181 1.7.180 1.7.179 1.7.178 1.7.177 1.7.176 1.7.175 1.7.174 1.7.173 1.7.172 1.7.171 1.7.170 1.7.169 1.7.168 1.7.167 1.7.166 1.7.165 1.7.164 1.7.162 1.7.161 1.7.160 1.7.159 1.7.157 1.7.156 1.7.155 1.7.154 1.7.153 1.7.152 1.7.151 1.7.150 1.7.149 1.7.146 1.7.145 1.7.144 1.7.143 1.7.138 1.7.133 1.7.132 1.7.131 1.7.130 1.7.128 1.7.126 1.7.125 1.7.121 1.7.120 1.7.119 1.7.118 1.7.117 1.7.116 1.7.115 1.7.114 1.7.113 1.7.112 1.7.111 1.7.110 1.7.109 1.7.108 1.7.107 1.7.106 1.7.105 1.7.104 1.7.103 1.7.102 1.7.101 1.7.100 1.7.99 1.7.98 1.7.97 1.7.96 1.7.95 1.7.94 1.7.93 1.7.92 1.7.91 1.7.90 1.7.89 1.7.88 1.7.87 1.7.86 1.7.85 1.7.84 1.7.83 1.7.82 1.7.81 1.7.80 1.7.79 1.7.78 1.7.77 1.7.76 1.7.75 1.7.74 1.7.71 1.7.70 1.7.69 1.7.66 1.7.65 1.7.64 1.7.63 1.7.62 1.7.61 1.7.59 1.7.58 1.7.57 1.7.56 1.7.55 1.7.54 1.7.53 1.7.52 1.7.51 1.7.49 1.7.44 1.7.43 1.7.42 1.7.41 1.7.39 1.7.38 1.7.37 1.7.36 1.7.34 1.7.33 1.7.31 1.7.30 1.7.29 1.7.28 1.7.27 1.7.26 1.7.25 1.7.24 1.7.23 1.7.22 1.7.21 1.7.20 1.7.19 1.7.18 1.7.17 1.7.16 1.7.15 1.7.14 1.7.13 1.7.12 1.7.11 1.7.10 1.7.9 1.7.8 1.7.7 1.7.6 1.7.5 1.7.4 1.7.3 1.7.2 1.7.1 1.7.0 1.6.20 1.6.19 1.6.18 1.6.17 1.6.16 1.6.15 1.6.14 1.6.13 1.6.12 1.6.11 1.6.10 1.6.9 1.6.8 1.6.7 1.6.6 1.6.5 1.6.4 1.6.3 1.5.2 1.5.1 1.5.0 1.4.9 1.4.8 1.4.7 1.4.6 1.4.5 1.4.4 1.4.3 1.4.2 1.4.1 1.4.0 1.3.2 1.3.1 1.3.0 1.2.10 1.2.9 1.2.8 1.2.7 1.2.5 1.2.4 1.2.2 1.2.1 1.2.0 1.1.0 1.0.0

A foundation for building Elixir Phoenix apps — SaaS, social networks, ERP systems, marketplaces, and more

Current section

Files

Jump to
phoenix_kit priv static assets sitemap-table.xsl
Raw

priv/static/assets/sitemap-table.xsl

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:sitemap="http://www.sitemaps.org/schemas/sitemap/0.9"
exclude-result-prefixes="sitemap">
<xsl:output method="html" indent="yes" encoding="UTF-8"/>
<xsl:template match="/">
<html>
<head>
<title>XML Sitemap</title>
<style>
body { font-family: -apple-system, BlinkMacSystemFont, sans-serif; margin: 2rem; background: #f8fafc; color: #1e293b; }
h1 { font-size: 1.5rem; margin-bottom: 1rem; }
.info { color: #64748b; margin-bottom: 1.5rem; }
table { width: 100%; border-collapse: collapse; background: white; border-radius: 8px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,0.1); }
th { background: #f1f5f9; padding: 12px; text-align: left; font-size: 12px; text-transform: uppercase; color: #64748b; }
td { padding: 12px; border-bottom: 1px solid #e2e8f0; }
tr:last-child td { border-bottom: none; }
tr:hover td { background: #f8fafc; }
a { color: #3b82f6; text-decoration: none; word-break: break-all; }
a:hover { text-decoration: underline; }
.high { color: #22c55e; font-weight: 600; }
.med { color: #f59e0b; }
.low { color: #94a3b8; }
@media (prefers-color-scheme: dark) {
body { background: #0f172a; color: #f1f5f9; }
table { background: #1e293b; }
th { background: #334155; color: #94a3b8; }
td { border-color: #334155; }
tr:hover td { background: #334155; }
}
</style>
</head>
<body>
<h1>XML Sitemap</h1>
<p class="info">
This sitemap contains <strong><xsl:value-of select="count(sitemap:urlset/sitemap:url)"/></strong> URLs
</p>
<table>
<thead>
<tr>
<th>URL</th>
<th>Last Modified</th>
<th>Frequency</th>
<th>Priority</th>
</tr>
</thead>
<tbody>
<xsl:for-each select="sitemap:urlset/sitemap:url">
<xsl:sort select="sitemap:loc"/>
<tr>
<td>
<a href="{sitemap:loc}"><xsl:value-of select="sitemap:loc"/></a>
</td>
<td><xsl:value-of select="sitemap:lastmod"/></td>
<td><xsl:value-of select="sitemap:changefreq"/></td>
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="sitemap:priority &gt;= 0.8">high</xsl:when>
<xsl:when test="sitemap:priority &gt;= 0.5">med</xsl:when>
<xsl:otherwise>low</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="sitemap:priority"/>
</td>
</tr>
</xsl:for-each>
</tbody>
</table>
<p style="margin-top: 2rem; text-align: center; color: #94a3b8; font-size: 12px;">
Generated by PhoenixKit
</p>
<script>
// Auto-reload on style change
(function() {
var currentStyle = 'table';
var prefix = window.location.pathname.replace('/sitemap.xml', '');
var checkUrl = prefix + '/sitemap/version';
function checkVersion() {
fetch(checkUrl, { cache: 'no-store' })
.then(function(r) { return r.json(); })
.then(function(data) {
if (data.style &amp;&amp; data.style !== currentStyle) {
window.location.reload();
}
})
.catch(function() {});
}
setInterval(checkVersion, 3000);
})();
</script>
</body>
</html>
</xsl:template>
</xsl:stylesheet>