1.1 --- a/java/nekurak.net-web/web/WEB-INF/tags/nekurak/hlasovani.tag Wed Apr 28 01:29:22 2010 +0200
1.2 +++ b/java/nekurak.net-web/web/WEB-INF/tags/nekurak/hlasovani.tag Sun Jun 20 14:46:47 2010 +0200
1.3 @@ -1,141 +1,141 @@
1.4 <?xml version="1.0" encoding="UTF-8"?>
1.5 <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
1.6 - xmlns:c="http://java.sun.com/jsp/jstl/core"
1.7 - xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
1.8 - xmlns:fn="http://java.sun.com/jsp/jstl/functions"
1.9 - version="2.0">
1.10 + xmlns:c="http://java.sun.com/jsp/jstl/core"
1.11 + xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
1.12 + xmlns:fn="http://java.sun.com/jsp/jstl/functions"
1.13 + version="2.0">
1.14
1.15 - <jsp:directive.attribute name="podnik" type="java.lang.Integer" required="true" description="ID podniku"/>
1.16 - <jsp:directive.attribute name="hlasuAno" type="java.lang.Integer" required="false" description="počet hlasů pro ano – aby se tu kouřilo"/>
1.17 - <jsp:directive.attribute name="hlasuNe" type="java.lang.Integer" required="false" description="počet hlasů pro ne – aby se tu nekouřilo"/>
1.18 - <jsp:directive.attribute name="svgUvnitrXhtml" type="java.lang.Boolean" required="false" description="true = SVG vložené přímo do XHTML (XML) | false = SVG jako externí obrázek – <img src='…'/>"/>
1.19 + <jsp:directive.attribute name="podnik" type="java.lang.Integer" required="true" description="ID podniku"/>
1.20 + <jsp:directive.attribute name="hlasuAno" type="java.lang.Integer" required="false" description="počet hlasů pro ano – aby se tu kouřilo"/>
1.21 + <jsp:directive.attribute name="hlasuNe" type="java.lang.Integer" required="false" description="počet hlasů pro ne – aby se tu nekouřilo"/>
1.22 + <jsp:directive.attribute name="svgUvnitrXhtml" type="java.lang.Boolean" required="false" description="true = SVG vložené přímo do XHTML (XML) | false = SVG jako externí obrázek – <img src='…'/>"/>
1.23
1.24 - <!-- výchozí hodnota -->
1.25 - <c:if test="${svgUvnitrXhtml == null}">
1.26 - <c:set var="svgUvnitrXhtml" value="${true}"/>
1.27 - </c:if>
1.28 + <!-- výchozí hodnota -->
1.29 + <c:if test="${svgUvnitrXhtml == null}">
1.30 + <c:set var="svgUvnitrXhtml" value="${true}"/>
1.31 + </c:if>
1.32
1.33 - <!-- hodnoty nejsou uvedeny → načteme si je -->
1.34 - <c:if test="${hlasuAno == null || hlasuNe == null || (hlasuAno == 0 && hlasuNe == 0)}">
1.35 - <jsp:useBean id="hlasovani" class="cz.frantovo.nekurak.web.Hlasovani" scope="request"/>
1.36 - <jsp:setProperty name="hlasovani" property="podnik" value="${podnik}"/>
1.37 - <c:set var="hlasuAno" value="${hlasovani.vysledek.hlasuAno}"/>
1.38 - <c:set var="hlasuNe" value="${hlasovani.vysledek.hlasuNe}"/>
1.39 - </c:if>
1.40 + <!-- hodnoty nejsou uvedeny → načteme si je -->
1.41 + <c:if test="${hlasuAno == null || hlasuNe == null || (hlasuAno == 0 && hlasuNe == 0)}">
1.42 + <jsp:useBean id="hlasovani" class="cz.frantovo.nekurak.web.Hlasovani" scope="request"/>
1.43 + <jsp:setProperty name="hlasovani" property="podnik" value="${podnik}"/>
1.44 + <c:set var="hlasuAno" value="${hlasovani.vysledek.hlasuAno}"/>
1.45 + <c:set var="hlasuNe" value="${hlasovani.vysledek.hlasuNe}"/>
1.46 + </c:if>
1.47
1.48 - <c:choose>
1.49 - <c:when test="${svgUvnitrXhtml}">
1.50 - <svg:svg xmlns:svg="http://www.w3.org/2000/svg"
1.51 - xmlns:xlink="http://www.w3.org/1999/xlink"
1.52 - version="1.1" baseProfile="full"
1.53 - width="200" height="200">
1.54 + <c:choose>
1.55 + <c:when test="${svgUvnitrXhtml}">
1.56 + <svg:svg xmlns:svg="http://www.w3.org/2000/svg"
1.57 + xmlns:xlink="http://www.w3.org/1999/xlink"
1.58 + version="1.1" baseProfile="full"
1.59 + width="200" height="200">
1.60
1.61
1.62 - <svg:style type="text/css">
1.63 - rect.ne {
1.64 + <svg:style type="text/css">
1.65 + rect.ne {
1.66 fill: url(#ne_prechod_${podnik});
1.67 stroke: black;
1.68 - }
1.69 - rect.ano {
1.70 + }
1.71 + rect.ano {
1.72 fill: url(#ano_prechod_${podnik});
1.73 stroke: black;
1.74 - }
1.75 + }
1.76
1.77 - a:hover rect.ano, a:hover rect.ne {
1.78 + a:hover rect.ano, a:hover rect.ne {
1.79 fill: url(#zvyrazneny_prechod_${podnik});
1.80 - }
1.81 + }
1.82
1.83 - a:hover text {
1.84 + a:hover text {
1.85 fill: green;
1.86 - }
1.87 + }
1.88
1.89 - line.ramecek {
1.90 + line.ramecek {
1.91 stroke: black;
1.92 stroke-width: 2;
1.93 - }
1.94 + }
1.95
1.96
1.97 - rect.pozadi {
1.98 + rect.pozadi {
1.99 fill: url(#pozadi_prechod_${podnik});
1.100 - }
1.101 + }
1.102
1.103 - text {
1.104 + text {
1.105 font-size: 12px;
1.106 font-family: Sans;
1.107 - }
1.108 + }
1.109
1.110 - </svg:style>
1.111 + </svg:style>
1.112
1.113 - <!-- pozadí – přechod -->
1.114 - <svg:defs>
1.115 - <svg:linearGradient id="pozadi_prechod_${podnik}" x1="0%" y1="0%" x2="100%" y2="100%">
1.116 - <svg:stop offset="20%" style="stop-color:rgb(245,245,255); stop-opacity:0.5"/>
1.117 - <svg:stop offset="100%" style="stop-color:silver; stop-opacity:0.8"/>
1.118 - </svg:linearGradient>
1.119 - </svg:defs>
1.120 + <!-- pozadí – přechod -->
1.121 + <svg:defs>
1.122 + <svg:linearGradient id="pozadi_prechod_${podnik}" x1="0%" y1="0%" x2="100%" y2="100%">
1.123 + <svg:stop offset="20%" style="stop-color:rgb(245,245,255); stop-opacity:0.5"/>
1.124 + <svg:stop offset="100%" style="stop-color:silver; stop-opacity:0.8"/>
1.125 + </svg:linearGradient>
1.126 + </svg:defs>
1.127
1.128 - <!-- nekuřácký graf – přechod -->
1.129 - <svg:defs>
1.130 - <svg:linearGradient id="ne_prechod_${podnik}" x1="0%" y1="0%" x2="100%" y2="100%">
1.131 - <svg:stop offset="0%" style="stop-color:white; stop-opacity:1"/>
1.132 - <svg:stop offset="100%" style="stop-color:blue; stop-opacity:1"/>
1.133 - </svg:linearGradient>
1.134 - </svg:defs>
1.135 + <!-- nekuřácký graf – přechod -->
1.136 + <svg:defs>
1.137 + <svg:linearGradient id="ne_prechod_${podnik}" x1="0%" y1="0%" x2="100%" y2="100%">
1.138 + <svg:stop offset="0%" style="stop-color:white; stop-opacity:1"/>
1.139 + <svg:stop offset="100%" style="stop-color:blue; stop-opacity:1"/>
1.140 + </svg:linearGradient>
1.141 + </svg:defs>
1.142
1.143 - <!-- zvýrazněný graf – přechod -->
1.144 - <svg:defs>
1.145 - <svg:linearGradient id="zvyrazneny_prechod_${podnik}" x1="0%" y1="0%" x2="100%" y2="100%">
1.146 - <svg:stop offset="0%" style="stop-color:white; stop-opacity:1"/>
1.147 - <svg:stop offset="100%" style="stop-color:green; stop-opacity:1"/>
1.148 - </svg:linearGradient>
1.149 - </svg:defs>
1.150 + <!-- zvýrazněný graf – přechod -->
1.151 + <svg:defs>
1.152 + <svg:linearGradient id="zvyrazneny_prechod_${podnik}" x1="0%" y1="0%" x2="100%" y2="100%">
1.153 + <svg:stop offset="0%" style="stop-color:white; stop-opacity:1"/>
1.154 + <svg:stop offset="100%" style="stop-color:green; stop-opacity:1"/>
1.155 + </svg:linearGradient>
1.156 + </svg:defs>
1.157
1.158 - <!-- kuřácký graf – přechod -->
1.159 - <svg:defs>
1.160 - <svg:linearGradient id="ano_prechod_${podnik}" x1="0%" y1="0%" x2="100%" y2="100%">
1.161 - <svg:stop offset="0%" style="stop-color:white; stop-opacity:1"/>
1.162 - <svg:stop offset="100%" style="stop-color:red; stop-opacity:1"/>
1.163 - </svg:linearGradient>
1.164 - </svg:defs>
1.165 + <!-- kuřácký graf – přechod -->
1.166 + <svg:defs>
1.167 + <svg:linearGradient id="ano_prechod_${podnik}" x1="0%" y1="0%" x2="100%" y2="100%">
1.168 + <svg:stop offset="0%" style="stop-color:white; stop-opacity:1"/>
1.169 + <svg:stop offset="100%" style="stop-color:red; stop-opacity:1"/>
1.170 + </svg:linearGradient>
1.171 + </svg:defs>
1.172
1.173 - <!-- pozadí a linka -->
1.174 - <svg:rect x="0" y="0" width="200" height="200" class="pozadi"/>
1.175 - <svg:line x1="10" y1="180" x2="190" y2="180" class="ramecek"/>
1.176 + <!-- pozadí a linka -->
1.177 + <svg:rect x="0" y="0" width="200" height="200" class="pozadi"/>
1.178 + <svg:line x1="10" y1="180" x2="190" y2="180" class="ramecek"/>
1.179
1.180 - <!-- nadpis grafu -->
1.181 - <svg:text x="60" y="20"><fmt:message key="hlasovani.graf.nadpis"/>:</svg:text>
1.182 + <!-- nadpis grafu -->
1.183 + <svg:text x="60" y="20"><fmt:message key="hlasovani.graf.nadpis"/>:</svg:text>
1.184
1.185 - <!-- žádné hlasy -->
1.186 - <c:if test="${hlasuAno == 0 && hlasuNe == 0}">
1.187 - <svg:text x="30" y="100"><fmt:message key="hlasovani.graf.zadneHlasy"/></svg:text>
1.188 - </c:if>
1.189 + <!-- žádné hlasy -->
1.190 + <c:if test="${hlasuAno == 0 && hlasuNe == 0}">
1.191 + <svg:text x="30" y="100"><fmt:message key="hlasovani.graf.zadneHlasy"/></svg:text>
1.192 + </c:if>
1.193
1.194 - <!-- vypočteme si výšky sloupců grafu -->
1.195 - <c:set var="hlasuNeVyska" value="${150*hlasuNe/(hlasuAno+hlasuNe)}"/>
1.196 - <c:set var="hlasuAnoVyska" value="${150*hlasuAno/(hlasuAno+hlasuNe)}"/>
1.197 + <!-- vypočteme si výšky sloupců grafu -->
1.198 + <c:set var="hlasuNeVyska" value="${150*hlasuNe/(hlasuAno+hlasuNe)}"/>
1.199 + <c:set var="hlasuAnoVyska" value="${150*hlasuAno/(hlasuAno+hlasuNe)}"/>
1.200
1.201 - <!-- nekuřáci -->
1.202 - <fmt:message key="hlasovani.graf.popisSloupce" var="hlasuNeLokalizace">
1.203 - <fmt:param value="${hlasuNe}"/>
1.204 - </fmt:message>
1.205 - <svg:a xlink:href="javascript:hlasovani.hlasuj(${podnik}, false);" xlink:title="${hlasuNeLokalizace}">
1.206 - <svg:text x="30" y="195" class="ne"><fmt:message key="hlasovani.graf.nekourit"/></svg:text>
1.207 - <svg:rect x="30" y="${180 - hlasuNeVyska}" width="50" height="${hlasuNeVyska}" class="ne"/>
1.208 - </svg:a>
1.209 + <!-- nekuřáci -->
1.210 + <fmt:message key="hlasovani.graf.popisSloupce" var="hlasuNeLokalizace">
1.211 + <fmt:param value="${hlasuNe}"/>
1.212 + </fmt:message>
1.213 + <svg:a xlink:href="javascript:hlasovani.hlasuj(${podnik}, false);" xlink:title="${hlasuNeLokalizace}">
1.214 + <svg:text x="30" y="195" class="ne"><fmt:message key="hlasovani.graf.nekourit"/></svg:text>
1.215 + <svg:rect x="30" y="${180 - hlasuNeVyska}" width="50" height="${hlasuNeVyska}" class="ne"/>
1.216 + </svg:a>
1.217
1.218 - <!-- kuřáci -->
1.219 - <fmt:message key="hlasovani.graf.popisSloupce" var="hlasuAnoLokalizace">
1.220 - <fmt:param value="${hlasuAno}"/>
1.221 - </fmt:message>
1.222 - <svg:a xlink:href="javascript:hlasovani.hlasuj(${podnik}, true);" xlink:title="${hlasuAnoLokalizace}">
1.223 - <svg:text x="130" y="195" class="ano"><fmt:message key="hlasovani.graf.kourit"/></svg:text>
1.224 - <svg:rect x="120" y="${180 - hlasuAnoVyska}" width="50" height="${hlasuAnoVyska}" class="ano"/>
1.225 - </svg:a>
1.226 - </svg:svg>
1.227 - </c:when>
1.228 - <c:otherwise>
1.229 - <object data="hlasovani-svg.jsp?podnik=${podnik}&amp;hlasuAno=${hlasuAno}&amp;hlasuNe=${hlasuNe}" type="image/svg+xml"/>
1.230 - </c:otherwise>
1.231 - </c:choose>
1.232 + <!-- kuřáci -->
1.233 + <fmt:message key="hlasovani.graf.popisSloupce" var="hlasuAnoLokalizace">
1.234 + <fmt:param value="${hlasuAno}"/>
1.235 + </fmt:message>
1.236 + <svg:a xlink:href="javascript:hlasovani.hlasuj(${podnik}, true);" xlink:title="${hlasuAnoLokalizace}">
1.237 + <svg:text x="130" y="195" class="ano"><fmt:message key="hlasovani.graf.kourit"/></svg:text>
1.238 + <svg:rect x="120" y="${180 - hlasuAnoVyska}" width="50" height="${hlasuAnoVyska}" class="ano"/>
1.239 + </svg:a>
1.240 + </svg:svg>
1.241 + </c:when>
1.242 + <c:otherwise>
1.243 + <object data="hlasovani-svg.jsp?podnik=${podnik}&amp;hlasuAno=${hlasuAno}&amp;hlasuNe=${hlasuNe}" type="image/svg+xml"/>
1.244 + </c:otherwise>
1.245 + </c:choose>
1.246
1.247 </jsp:root>
1.248 \ No newline at end of file