Profil - KPR Kobierzyce
Під час обробки запитаного шаблоку сталась помилка.
The following has evaluated to null or missing: ==> player.getLeadByLocale(locale) [in template "20100#20127#3192987" at line 142, column 19] ---- Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${player.getLeadByLocale(locale)} [in template "20100#20127#3192987" at line 142, column 17] ----
1<#setting locale = locale>
2
3<div>
4 <div class="image-article-container image-article-container-single-player">
5 <a href="/i-zespol" class="btn-go-back"><span class="icon icon-slg-chevron-left"></span>
6 POWRÓT DO LISTY ZAWODNICZEK
7 </a>
8 <div class="img-wrapper">
9 <#if player.photoMediaWebDTO??>
10 <img class="player-photo" data-fileentryid="${player.photoMediaWebDTO.fileEntryId}" src="${player.photoMediaWebDTO.url}"
11 alt="${player.firstName} ${player.lastName}">
12 <#else>
13 <img class="player-photo" src="/o/single-player/images/photo-placeholder.png" alt="photo placeholder">
14 </#if>
15 <#if player.backgroundMediaWebDTO??>
16 <img class="player-photo player-photo-transparent" data-fileentryid="${player.backgroundMediaWebDTO.fileEntryId}" src="${player.backgroundMediaWebDTO.url}"
17 alt="${player.firstName} ${player.lastName}">
18 <#else>
19 <img class="player-photo player-photo-transparent" src="/o/single-player/images/background-placeholder.png" alt="background placeholder">
20 </#if>
21 </div>
22 <div class="player-info">
23 <div class="player-info-content">
24 <div class="number-and-flag">
25 <#if player.number != 0>
26 <span class="number">#${player.number}</span>
27 </#if>
28 <img class="flag" src="${themeDisplay.getPathThemeRoot()}/assets/img/flags/${player.shortNationality}.png">
29 </div>
30
31 <h2 class="name"><span>${player.firstName}</span> ${player.lastName}</h2>
32 <span class="position">${player.position}</span>
33 <div class="btn-wrapper btn-edit-placeholders">
34 <!-- Here will be edit button rendered by javascript -->
35 </div>
36 </div>
37
38 <div class="share-widget">
39 <#if player.instagram?has_content>
40 <a style="color:white; font-size: 2rem; margin-top: 1rem;" href="${player.instagram}" target="_blank"><span class="icon icon-slg-instagram"></span></a>
41 </#if>
42
43 <#if player.facebook?has_content>
44 <a style="color:white; font-size: 2rem; margin-top: 1rem;" href="${player.facebook}" target="_blank"><span class="icon icon-slg-facebook"></span></a>
45 </#if>
46
47 <#if player.twitter?has_content>
48 <a style="color:white; font-size: 2rem; margin-top: 1rem;" href="${player.twitter}" target="_blank"><span class="icon icon-slg-twitter"></span></a>
49 </#if>
50 </div>
51 </div>
52
53 <#if player.number != 0>
54 <div class="number-big">${player.number}</div>
55 </#if>
56 </div>
57
58 <div class="single-player-details-stats-container container">
59 <div class="single-player-details-container">
60 <#if player.birthday?has_content>
61 <div class="single-player-details">
62 <span class="title">${TranslationUtil.get("date-of-birth-date", locale, "com.stellis.liga360.clubs.singleplayer.web")?lower_case}:</span>
63 <span class="value">${player.birthday}</span>
64 </div>
65 </#if>
66
67 <#if player.weight?has_content && player.number != 0>
68 <div class="single-player-details">
69 <span class="title">${TranslationUtil.get("height", locale, "com.stellis.liga360.clubs.singleplayer.web")?lower_case}:</span>
70 <span class="value">${player.height} cm</span>
71 </div>
72 </#if>
73
74 <#if player.weight?has_content && player.number != 0>
75 <div class="single-player-details">
76 <span class="title">${TranslationUtil.get("weight", locale, "com.stellis.liga360.clubs.singleplayer.web")?lower_case}:</span>
77 <span class="value">${player.weight} kg</span>
78 </div>
79 </#if>
80
81 <#if player.position?has_content>
82 <div class="single-player-details">
83 <span class="title">${TranslationUtil.get("position", locale, "com.stellis.liga360.clubs.singleplayer.web")?lower_case}:</span>
84 <span class="value">${player.position}</span>
85 </div>
86 </#if>
87
88 <#if player.nickname?has_content>
89 <div class="single-player-details">
90 <span class="title"><@liferay_ui["message"] key="nickname"/></span>
91 <span class="value">${player.nickname}</span>
92 </div>
93 </#if>
94
95 <#if player.nationality?has_content>
96 <div class="single-player-details">
97 <span class="title">${TranslationUtil.get("nationality", locale, "com.stellis.liga360.clubs.singleplayer.web")?lower_case}:</span>
98 <span class="value">${player.nationality}</span>
99 </div>
100 </#if>
101
102 <#if player.careerProgression?has_content>
103 <div class="single-player-details">
104 <span class="title">${TranslationUtil.get("career-progression", locale, "com.stellis.liga360.clubs.singleplayer.web")?lower_case}:</span>
105 <span class="value">${player.careerProgression}</span>
106 </div>
107 </#if>
108 </div>
109
110 <#if player.number != 0>
111 <div class="single-player-stats-container">
112 <div class="stats-season-dropdown">
113 <select id="matchDataDTOS" name="matchDataDTOS" class="single-player-stats-season-dropdown" onchange="showStats(this)">
114 <#list entries as matchDataDTO>
115 <option value="${matchDataDTO.seasonId}">${matchDataDTO.seasonName}</option>
116 </#list>
117 </select>
118 <i class="icon icon-slg-chevron-down"></i>
119 </div>
120
121 <#list entries as matchDataDTO>
122 <div class="single-player-stats d-none" id="match-data-${matchDataDTO.seasonId}">
123 <#list matchDataDTO.matchDataMap as matchDataKey, matchDataValue>
124 <div class="single-player-stats-item animation-fade-in-trigger">
125 <span class="title">${matchDataKey}: </span>
126 <span class="value">${matchDataValue}</span>
127 </div>
128 </#list>
129 </div>
130 </#list>
131 </div>
132 </#if>
133 </div>
134
135 <div class="container desktop">
136 <div class="separator color-default"></div>
137 </div>
138
139 <div class="single-player-content container">
140 <div class="single-player-content-left">
141 <#if player.leadText?has_content>
142 ${player.getLeadByLocale(locale)}
143 </#if>
144 </div>
145
146 <div class="single-player-content-right">
147 <#if player.content?has_content>
148 ${player.getContentByLocale(locale)}
149 </#if>
150 </div>
151 </div>
152</div>
153
154<script>
155 var singlePlayerStats = document.getElementsByClassName("single-player-stats");
156 if (singlePlayerStats && singlePlayerStats.length > 0) {
157
158 singlePlayerStats[0].classList.remove('d-none')
159
160 function showStats(select) {
161 let matchData = document.getElementById('match-data-' + select.value);
162 for (const singlePlayerStat of singlePlayerStats) {
163 singlePlayerStat.classList.add("d-none")
164 }
165 matchData.classList.remove("d-none")
166 }
167 }
168</script>