[yelp-xsl] mal2html-page: Initial work on new about footer
- From: Shaun McCance <shaunm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [yelp-xsl] mal2html-page: Initial work on new about footer
- Date: Sun, 6 Nov 2011 23:34:20 +0000 (UTC)
commit b2ec793d97a501b1eb6dbce5fe4aa04dd8299eeb
Author: Shaun McCance <shaunm gnome org>
Date: Sun Nov 6 12:25:47 2011 -0500
mal2html-page: Initial work on new about footer
xslt/mallard/html/mal2html-page.xsl | 185 ++++++++++++++++++++++++++++++++---
1 files changed, 172 insertions(+), 13 deletions(-)
---
diff --git a/xslt/mallard/html/mal2html-page.xsl b/xslt/mallard/html/mal2html-page.xsl
index b424e46..a1240d1 100644
--- a/xslt/mallard/html/mal2html-page.xsl
+++ b/xslt/mallard/html/mal2html-page.xsl
@@ -21,8 +21,9 @@ Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
xmlns:ui="http://projectmallard.org/experimental/ui/"
xmlns:e="http://projectmallard.org/experimental/"
xmlns:exsl="http://exslt.org/common"
+ xmlns:set="http://exslt.org/sets"
xmlns="http://www.w3.org/1999/xhtml"
- exclude-result-prefixes="mal ui e exsl"
+ exclude-result-prefixes="mal ui e exsl set"
version="1.0">
<!--!!==========================================================================
@@ -58,13 +59,124 @@ Each copyright is output in a nested #{div} element with #{class="copyright"}.
-->
<xsl:template name="mal2html.page.copyrights">
<xsl:param name="node" select="."/>
- <div class="copyrights">
- <xsl:for-each select="$node/mal:info/mal:credit[mal:years]">
- <div class="copyright">
- <!-- FIXME: i18n, multi-year, email -->
- <xsl:value-of select="concat('Â ', mal:years, ' ', mal:name)"/>
+ <div class="sect about">
+ <div class="hgroup">
+ <h2>About</h2>
+ </div>
+ <div class="region">
+ <div class="contents">
+ <xsl:variable name="copyrights"
+ select="$node/mal:info/mal:credit[contains(concat(' ', @type, ' '), ' copyright ')][mal:years]"/>
+ <xsl:if test="$copyrights">
+ <div class="copyrights">
+ <xsl:for-each select="$copyrights">
+ <div class="copyright">
+ <!-- FIXME: i18n, multi-year, email -->
+ <xsl:value-of select="concat('Â ', mal:years, ' ', mal:name)"/>
+ </div>
+ </xsl:for-each>
+ </div>
+ </xsl:if>
+ <xsl:variable name="authors"
+ select="$node/mal:info/mal:credit[contains(concat(' ', @type, ' '), ' author ')]"/>
+ <xsl:if test="$authors">
+ <div class="aboutblurb authors">
+ <div class="title">
+ <span class="title">Written By</span>
+ </div>
+ <ul class="credits">
+ <xsl:for-each select="$authors">
+ <li>
+ <xsl:value-of select="mal:name"/>
+ </li>
+ </xsl:for-each>
+ </ul>
+ </div>
+ </xsl:if>
+ <xsl:variable name="editors"
+ select="$node/mal:info/mal:credit[contains(concat(' ', @type, ' '), ' editor ')]"/>
+ <xsl:if test="$editors">
+ <div class="aboutblurb editors">
+ <div class="title">
+ <span class="title">Edited By</span>
+ </div>
+ <ul class="credits">
+ <xsl:for-each select="$editors">
+ <li>
+ <xsl:value-of select="mal:name"/>
+ </li>
+ </xsl:for-each>
+ </ul>
+ </div>
+ </xsl:if>
+ <xsl:variable name="maintainers"
+ select="$node/mal:info/mal:credit[contains(concat(' ', @type, ' '), ' maintainer ')]"/>
+ <xsl:if test="$maintainers">
+ <div class="aboutblurb maintainers">
+ <div class="title">
+ <span class="title">Maintained By</span>
+ </div>
+ <ul class="credits">
+ <xsl:for-each select="$maintainers">
+ <li>
+ <xsl:value-of select="mal:name"/>
+ </li>
+ </xsl:for-each>
+ </ul>
+ </div>
+ </xsl:if>
+ <xsl:variable name="translators"
+ select="$node/mal:info/mal:credit[contains(concat(' ', @type, ' '), ' translator ')]"/>
+ <xsl:if test="$translators">
+ <div class="aboutblurb translators">
+ <div class="title">
+ <span class="title">Translated By</span>
+ </div>
+ <ul class="credits">
+ <xsl:for-each select="$translators">
+ <li>
+ <xsl:value-of select="mal:name"/>
+ </li>
+ </xsl:for-each>
+ </ul>
+ </div>
+ </xsl:if>
+ <xsl:variable name="others"
+ select="set:difference($node/mal:info/mal:credit,
+ $copyrights | $authors | $editors | $maintainers | $translators)"/>
+ <xsl:if test="$others">
+ <div class="aboutblurb othercredits">
+ <div class="title">
+ <span class="title">Other Credits</span>
+ </div>
+ <ul class="credits">
+ <xsl:for-each select="$others">
+ <li>
+ <xsl:value-of select="mal:name"/>
+ </li>
+ </xsl:for-each>
+ </ul>
+ </div>
+ </xsl:if>
+ <xsl:for-each select="$node/mal:info/mal:license">
+ <div class="aboutblurb license">
+ <div class="title">
+ <span class="title">
+ <xsl:choose>
+ <xsl:when test="starts-with(@href, 'http://creativecommons.org/')">
+ <xsl:text>Creative Commons</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>License</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </span>
+ </div>
+ <xsl:apply-templates mode="mal2html.block.mode"/>
+ </div>
+ </xsl:for-each>
</div>
- </xsl:for-each>
+ </div>
</div>
</xsl:template>
@@ -597,6 +709,46 @@ FIXME
</xsl:call-template>
</xsl:param>
<xsl:text>
+div.about {
+ background-color: </xsl:text><xsl:value-of select="$color.dark_background"/><xsl:text>;
+ color: </xsl:text>
+ <xsl:value-of select="$color.text_light"/><xsl:text>;
+}
+div.about > div.hgroup {
+ margin: 0; padding: 0;
+ text-align: center;
+ border: none;
+}
+div.about > div.hgroup > h2 {
+ margin: 0; padding: 0.2em;
+ font-size: inherit;
+ color: </xsl:text><xsl:value-of select="$color.link"/><xsl:text>;
+ cursor: pointer;
+}
+div.about > div.hgroup > h2:hover {
+ background-color: </xsl:text><xsl:value-of select="$color.blue_background"/><xsl:text>;
+}
+div.copyrights {
+ margin: 1em;
+ text-align: center;
+}
+div.copyright {
+ margin: 0;
+}
+div.aboutblurb {
+ display: inline-block;
+ vertical-align: top;
+ text-align: left;
+ max-width: 20em;
+ margin: 1em;
+}
+ul.credits, ul.credits li {
+ margin: 0; padding: 0;
+ list-style-type: none;
+}
+div.copyrights {
+}
+
span.link-button a {
display: inline-block;
background-color: </xsl:text>
@@ -638,12 +790,6 @@ div.floatend {
margin-</xsl:text><xsl:value-of select="$left"/><xsl:text>: 1em;
}
-div.copyrights {
- text-align: center;
- color: </xsl:text>
- <xsl:value-of select="$color.text_light"/><xsl:text>;
-}
-
div.mouseovers {
width: 250px;
height: 200px;
@@ -900,6 +1046,19 @@ $(document).ready(function () {
});
});
});
+$(document).ready(function () {
+ $('div.about').each(function () {
+ var header = $(this).children('div.hgroup').children('h2');
+ var region = $(this).children('div.region');
+ region.attr('aria-expanded', 'false').hide();
+ header.click(function () {
+ if (region.attr('aria-expanded') == 'true')
+ region.attr('aria-expanded', 'false').slideUp('fast');
+ else
+ region.attr('aria-expanded', 'true').slideDown('fast');
+ });
+ });
+});
]]></xsl:text>
</xsl:template>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]