|
1 | 1 |
|
| 2 | +<%@page import="skatdb.Tournament"%> |
2 | 3 | <%@ page import="skatdb.Player" %>
|
3 | 4 | <!doctype html>
|
4 | 5 | <html>
|
5 | 6 | <head>
|
6 | 7 | <meta name="layout" content="main">
|
7 | 8 | <g:set var="entityName" value="${message(code: 'player.label', default: 'Player')}" />
|
8 | 9 | <title><g:message code="default.show.label" args="[entityName]" /></title>
|
| 10 | + <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> |
| 11 | + <style> |
| 12 | + body { |
| 13 | + margin: auto; |
| 14 | + } |
| 15 | + div.contentdiv { |
| 16 | + margin: 0 3em; |
| 17 | + } |
| 18 | + .nav > ul { |
| 19 | + margin-bottom: 0; |
| 20 | + } |
| 21 | + div.nav { |
| 22 | + padding-left: 0.75em; |
| 23 | + } |
| 24 | + td, th { |
| 25 | + padding: 0.2em 0.4em; |
| 26 | + } |
| 27 | + </style> |
9 | 28 | </head>
|
10 | 29 | <body>
|
11 | 30 | <a href="#show-player" class="skip" tabindex="-1"><g:message code="default.link.skip.label" default="Skip to content…"/></a>
|
|
17 | 36 | </ul>
|
18 | 37 | </div>
|
19 | 38 | <div id="show-player" class="content scaffold-show" role="main">
|
20 |
| - <h1><g:message code="default.show.label" args="[entityName]" /></h1> |
| 39 | + <h1>${playerInstance?.name}</h1> |
21 | 40 | <g:if test="${flash.message}">
|
22 | 41 | <div class="message" role="status">${flash.message}</div>
|
23 | 42 | </g:if>
|
24 |
| - <ol class="property-list player"> |
25 |
| - |
26 |
| - <g:if test="${playerInstance?.name}"> |
27 |
| - <li class="fieldcontain"> |
28 |
| - <span id="name-label" class="property-label"><g:message code="player.name.label" default="Name" /></span> |
29 |
| - |
30 |
| - <span class="property-value" aria-labelledby="name-label"><g:fieldValue bean="${playerInstance}" field="name"/></span> |
31 |
| - |
32 |
| - </li> |
| 43 | + <div class="contentdiv"> |
| 44 | + <h2>Spiele</h2> |
| 45 | + <table> |
| 46 | + <tr> |
| 47 | + <th></th> |
| 48 | + <th>Anzahl</th> |
| 49 | + <th>Anteilig %</th> |
| 50 | + <th>Gewonnen</th> |
| 51 | + <th>Verloren</th> |
| 52 | + <th>Gewonnen %</th> |
| 53 | + </tr> |
| 54 | + <tr> |
| 55 | + <g:set var="gamesLost" value="${games != 0 ? games-gamesWon : 0}"></g:set> |
| 56 | + <g:set var="gamesWinPercent" value="${gamesLost != 0 ? (gamesWon/(games) * 100) : 100}"></g:set> |
| 57 | + <td><b>Spiele</b></td> |
| 58 | + <td>${games}</td> |
| 59 | + <td>100%</td> |
| 60 | + <td>${gamesWon}</td> |
| 61 | + <td>${gamesLost}</td> |
| 62 | + <td><g:formatNumber number="${gamesWinPercent}" format="0.00" />%</td> |
| 63 | + </tr> |
| 64 | + <tr> |
| 65 | + <g:set var="suitGamesLost" value="${suitGames != 0 ? suitGames-suitGamesWon : 0}"></g:set> |
| 66 | + <g:set var="suitGamesPercent" value="${suitGames != 0 ? (suitGames/games * 100) : 0}"></g:set> |
| 67 | + <g:set var="suitGamesWinPercent" value="${suitGames != 0 ? (suitGamesWon/suitGames * 100) : 0}"></g:set> |
| 68 | + <td><b>Farbspiele</b></td> |
| 69 | + <td>${suitGames}</td> |
| 70 | + <td><g:formatNumber number="${suitGamesPercent}" format="0.00" />%</td> |
| 71 | + <td>${suitGamesWon}</td> |
| 72 | + <td>${suitGamesLost}</td> |
| 73 | + <td><g:formatNumber number="${suitGamesWinPercent}" format="0.00" />%</td> |
| 74 | + </tr> |
| 75 | + <tr> |
| 76 | + <g:set var="grandsLost" value="${grands != 0 ? grands-grandsWon : 0}"></g:set> |
| 77 | + <g:set var="grandsPercent" value="${grands != 0 ? (grands/games * 100) : 0}"></g:set> |
| 78 | + <g:set var="grandsWinPercent" value="${grands != 0 ? (grandsWon/grands * 100) : 0}"></g:set> |
| 79 | + <td><b>Grands</b></td> |
| 80 | + <td>${grands}</td> |
| 81 | + <td><g:formatNumber number="${grandsPercent}" format="0.00" />%</td> |
| 82 | + <td>${grandsWon}</td> |
| 83 | + <td>${grandsLost}</td> |
| 84 | + <td><g:formatNumber number="${grandsWinPercent}" format="0.00" />%</td> |
| 85 | + </tr> |
| 86 | + <tr> |
| 87 | + <g:set var="nullGamesLost" value="${nullGames != 0 ? nullGames-nullGamesWon : 0}"></g:set> |
| 88 | + <g:set var="nullGamesPercent" value="${nullGames != 0 ? (nullGames/games * 100) : 0}"></g:set> |
| 89 | + <g:set var="nullGamesWinPercent" value="${nullGames != 0 ? (nullGamesWon/nullGames * 100) : 0}"></g:set> |
| 90 | + <td><b>Nullspiele</b></td> |
| 91 | + <td>${nullGames}</td> |
| 92 | + <td><g:formatNumber number="${nullGamesPercent}" format="0.00" />%</td> |
| 93 | + <td>${nullGamesWon}</td> |
| 94 | + <td>${nullGamesLost}</td> |
| 95 | + <td><g:formatNumber number="${nullGamesWinPercent}" format="0.00" />%</td> |
| 96 | + </tr> |
| 97 | + </table> |
| 98 | + <h2>Sonstiges</h2> |
| 99 | + <div>längste Siegesserie: ${wonSeries}</div> |
| 100 | + <div>längste Verlustserie: ${lostSeries}</div> |
| 101 | + <g:if test="${bestGame != null}"> |
| 102 | + <div>bestes Spiel: <g:link controller="game" action="show" id="${bestGame.id}">${bestGame.value} Punkte</g:link></div> |
33 | 103 | </g:if>
|
34 |
| - |
35 |
| - <g:if test="${playerInstance?.games}"> |
36 |
| - <li class="fieldcontain"> |
37 |
| - <span id="games-label" class="property-label"><g:message code="player.games.label" default="Games" /></span> |
38 |
| - |
39 |
| - <g:each in="${playerInstance.games}" var="g"> |
40 |
| - <span class="property-value" aria-labelledby="games-label"><g:link controller="game" action="show" id="${g.id}">${g?.encodeAsHTML()}</g:link></span> |
41 |
| - </g:each> |
42 |
| - |
43 |
| - </li> |
| 104 | + <g:if test="${worstGame != null}"> |
| 105 | + <div>schlechtestes Spiel: <g:link controller="game" action="show" id="${worstGame.id}">${worstGame.value} Punkte</g:link></div> |
44 | 106 | </g:if>
|
45 |
| - |
46 |
| - </ol> |
| 107 | + <h2>Turniere</h2> |
| 108 | + <g:if test="${tournamentsPlayed <= 0}"> |
| 109 | + <p>Noch keine Turniere gespielt</p> |
| 110 | + </g:if> |
| 111 | + <g:if test="${tournamentsPlayed > 0}"> |
| 112 | + <div>Turniere gespielt: ${tournamentsPlayed}</div> |
| 113 | + <div> |
| 114 | + <g:each in="${firstPlaces}"> |
| 115 | + <g:set var="t" value="${Tournament.findById(it)}" /> |
| 116 | + <g:link controller="tournament" action="show" id="${t.id}"> |
| 117 | + <g:img file="first.png" title="${t.name}" /> |
| 118 | + </g:link> |
| 119 | + </g:each> |
| 120 | + <g:each in="${secondPlaces}"> |
| 121 | + <g:set var="t" value="${Tournament.findById(it)}" /> |
| 122 | + <g:link controller="tournament" action="show" id="${t.id}"> |
| 123 | + <g:img file="second.png" title="${t.name}" /> |
| 124 | + </g:link> |
| 125 | + </g:each> |
| 126 | + <g:each in="${thirdPlaces}"> |
| 127 | + <g:set var="t" value="${Tournament.findById(it)}" /> |
| 128 | + <g:link controller="tournament" action="show" id="${t.id}"> |
| 129 | + <g:img file="third.png" title="${t.name}" /> |
| 130 | + </g:link> |
| 131 | + </g:each> |
| 132 | + </div> |
| 133 | + </g:if> |
| 134 | + </div> |
47 | 135 | <g:form>
|
48 | 136 | <fieldset class="buttons">
|
49 | 137 | <g:hiddenField name="id" value="${playerInstance?.id}" />
|
|
0 commit comments