Adventskalender-2023-Gewinne - Wiesmoor/Ostfriesland
Gewinnliste Adventskalender 2023
Fehler bei der Verarbeitung der Vorlage.
The string doesn't match the expected date/time/date-time format. The string to parse was: "". The expected format was: "dd.MM.y". The nested reason given follows: Unparseable date: "" ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign gewinnDatum = cellValue?trim?... [in template "10154#10194#50250808" at line 99, column 21] ----
1<#-- -------------------------------------------------------------------- -->
2
3<#-- Diese Funktion dient dazu eine Gewinliste für einen -->
4<#-- Adventskalender zu veröffentlichen -->
5<#-- Sie gibt eine im Feld Gewinnzahlen als "/t" sepatierte Liste -->
6<#-- als Tabelle aus, wobei Zeilen, in denen im ersten Element ein -->
7<#-- in der Zukunft liegendes Datum steht nut angezeigt werden. -->
8<#-- Zählfehler der Treffer korrigiert -->
9<#-- 02.10.2024 Armin J. Gaul -->
10
11<#-- -------------------------------------------------------------------- -->
12
13
14<#setting locale="de_DE">
15<#setting time_zone="Europe/Berlin">
16
17<#assign
18httpComponentsUtil = staticUtil["com.liferay.portal.kernel.util.HttpComponentsUtil"]
19vergleichsDatum = .now?datetime
20gewinnTabelle = Gewinnzahlen.getData()
21url= themeDisplay.getURLCurrent()
22basisurl= themeDisplay.getURLCurrent()?keep_before("?")
23
24suche = false
25quotation = false
26suchstring = httpComponentsUtil.getParameter(url, "search", false)
27
28<#-- START übergebenes Datum nutzen -->
29anzahlTreffer = 0
30anzeigedatumtext = httpComponentsUtil.getParameter(url, "date", false)
31/>
32
33<#if anzeigedatumtext?? && anzeigedatumtext?matches('\\d\\d\\.\\d\\d\\.\\d\\d\\d\\d') >
34 <#assign anzeigedatum = anzeigedatumtext?date>
35</#if>
36<#if anzeigedatumtext?? && anzeigedatumtext == "today">
37 <#assign anzeigedatum = .now?date>
38</#if>
39<#if ZeitversatzVeröffentlichung?? >
40 <#assign stundenOffset = ZeitversatzVeröffentlichung.getData() >
41<#else>
42 <#assign stundenOffset = 0 >
43</#if>
44<#-- ENDE übergebenes Datum nutzen -->
45
46
47<div class="article article_main">
48 <div class="article_headline">
49 <h2 id="tablestart">
50 ${.vars['reserved-article-title'].data}
51 </h2>
52 </div>
53
54 <p style="text-align: right;"><input id="neuerSuchstring" value="${suchstring}" placeholder="Gewinn suchen..." type="search"></p>
55
56
57 <#if suchstring != "" >
58 <#assign suche = true >
59 <p>Suchergebnis für Suchbegriff "${suchstring}"</p>
60 </#if>
61
62 <table width="100%" border="1" cellpadding="5" cellspacing="0">
63 <#list gewinnTabelle?split("\n") as lineValue>
64
65
66
67 <#if !quotation>
68 <#assign
69 istDatum = false
70 treffer = false
71 lineText="<tr>"
72 />
73 </#if>
74
75 <#list lineValue?split("\t") as cellValue>
76
77 <#list cellValue?replace("\"","")?split(",") as testWert >
78 <#attempt>
79 <#if testWert?trim != "" && testWert?trim?replace(suchstring,"","r") == "" >
80 <#assign treffer = true >
81 </#if>
82 <#recover>
83 </#attempt>
84 </#list>
85
86 <#if cellValue?index == 0 && !quotation>
87 <#if cellValue?trim?replace("\\d\\d\\.\\d\\d\\.\\d\\d\\d\\d","","r") == "" >
88 <#assign istDatum = true>
89 <#else>
90 <#-- Überschrift -->
91 <#assign anzeigen = true >
92 <#assign treffer = true >
93 </#if>
94 </#if>
95
96 <#if (cellValue?index == 0) && istDatum && !quotation>
97
98
99 <#assign gewinnDatum = cellValue?trim?date + ', ${stundenOffset}:01:00'>
100 <#assign lineText=lineText+"<td>"+gewinnDatum?date+"</td>" >
101 <#assign anzeigen = (gewinnDatum?datetime?iso_utc?date("yyyy-MM-dd'T'HH:mm:ss") <= vergleichsDatum?datetime?iso_utc?date("yyyy-MM-dd'T'HH:mm:ss")) >
102
103 <#if anzeigedatum?? && !anzeigedatum?date?matches(gewinnDatum?date)>
104 <#assign anzeigen = false >
105 </#if>
106
107
108 <#else>
109
110 <#if !quotation>
111 <#assign lineText=lineText+"<td>">
112 </#if>
113
114 <#if cellValue?replace("\"\"","")?starts_with("\"") && !(cellValue[1..]?replace("\"\"","")?contains("\"")) && !quotation >
115 <#assign quotation=true >
116 </#if>
117
118 <#if !istDatum && !quotation>
119 <#assign lineText=lineText+"<b>"+cellValue?replace("\"",""")?trim+"</b>">
120 <#else>
121 <#if !quotation>
122 <#assign lineText=lineText+cellValue?replace("\"",""")?trim>
123 <#else>
124 <#assign lineText=lineText+cellValue?replace("\"\"",""")?replace("\"","")?trim>
125 </#if>
126 </#if>
127
128
129 <#if cellValue?replace("\"\"","")?ends_with("\"") && quotation >
130 <#assign quotation=false >
131 </#if>
132
133
134 <#if !quotation>
135 <#assign lineText=lineText+"</td>">
136 <#else>
137 <#assign lineText=lineText+"	">
138 </#if>
139
140
141
142 </#if>
143 </#list>
144
145 <#if !quotation>
146 <#assign lineText=lineText+"</tr>">
147 <#else>
148 <#assign lineText=lineText+"<br>">
149 </#if>
150
151 <#if anzeigen && (!suche || treffer) && !quotation>
152 ${lineText}
153 <#if istDatum>
154 <#assign anzahlTreffer = anzahlTreffer + 1 >
155 </#if>
156 </#if>
157 </#list>
158 </table>
159
160 <#if anzahlTreffer == 0 >
161 <#if !suche>
162 <div class="portlet-msg-alert"><h1>Aktuell sind zu diesem Datum noch keine Gewinne veröffentlicht,
163 weshalb wir Sie noch um ein wenig Geduld bitten. Vielen Dank!</h1></div>
164 <#else>
165 <div class="portlet-msg-alert"><h1>Aktuell sind zu dieser Suche keine Gewinne veröffentlicht.</h1>
166 </div>
167 </#if>
168 </#if>
169
170</div>
171<p>
172</p>
173<script>
174 document.getElementById("neuerSuchstring")
175 .addEventListener("keyup", function (event) {
176 event.preventDefault();
177 if (event.keyCode === 13) {
178 doSearch();
179 }
180 });
181
182 function doSearch() {
183 str = document.getElementById("neuerSuchstring").value;
184 window.location.replace("${basisurl}" + "?search=" + str + "#tablestart");
185 }
186
187</script>
Gewinnliste Adventskalender 2023
Fehler bei der Verarbeitung der Vorlage.
The string doesn't match the expected date/time/date-time format. The string to parse was: "". The expected format was: "dd.MM.y". The nested reason given follows: Unparseable date: "" ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign gewinnDatum = cellValue?trim?... [in template "10154#10194#50250808" at line 99, column 21] ----
1<#-- -------------------------------------------------------------------- -->
2
3<#-- Diese Funktion dient dazu eine Gewinliste für einen -->
4<#-- Adventskalender zu veröffentlichen -->
5<#-- Sie gibt eine im Feld Gewinnzahlen als "/t" sepatierte Liste -->
6<#-- als Tabelle aus, wobei Zeilen, in denen im ersten Element ein -->
7<#-- in der Zukunft liegendes Datum steht nut angezeigt werden. -->
8<#-- Zählfehler der Treffer korrigiert -->
9<#-- 02.10.2024 Armin J. Gaul -->
10
11<#-- -------------------------------------------------------------------- -->
12
13
14<#setting locale="de_DE">
15<#setting time_zone="Europe/Berlin">
16
17<#assign
18httpComponentsUtil = staticUtil["com.liferay.portal.kernel.util.HttpComponentsUtil"]
19vergleichsDatum = .now?datetime
20gewinnTabelle = Gewinnzahlen.getData()
21url= themeDisplay.getURLCurrent()
22basisurl= themeDisplay.getURLCurrent()?keep_before("?")
23
24suche = false
25quotation = false
26suchstring = httpComponentsUtil.getParameter(url, "search", false)
27
28<#-- START übergebenes Datum nutzen -->
29anzahlTreffer = 0
30anzeigedatumtext = httpComponentsUtil.getParameter(url, "date", false)
31/>
32
33<#if anzeigedatumtext?? && anzeigedatumtext?matches('\\d\\d\\.\\d\\d\\.\\d\\d\\d\\d') >
34 <#assign anzeigedatum = anzeigedatumtext?date>
35</#if>
36<#if anzeigedatumtext?? && anzeigedatumtext == "today">
37 <#assign anzeigedatum = .now?date>
38</#if>
39<#if ZeitversatzVeröffentlichung?? >
40 <#assign stundenOffset = ZeitversatzVeröffentlichung.getData() >
41<#else>
42 <#assign stundenOffset = 0 >
43</#if>
44<#-- ENDE übergebenes Datum nutzen -->
45
46
47<div class="article article_main">
48 <div class="article_headline">
49 <h2 id="tablestart">
50 ${.vars['reserved-article-title'].data}
51 </h2>
52 </div>
53
54 <p style="text-align: right;"><input id="neuerSuchstring" value="${suchstring}" placeholder="Gewinn suchen..." type="search"></p>
55
56
57 <#if suchstring != "" >
58 <#assign suche = true >
59 <p>Suchergebnis für Suchbegriff "${suchstring}"</p>
60 </#if>
61
62 <table width="100%" border="1" cellpadding="5" cellspacing="0">
63 <#list gewinnTabelle?split("\n") as lineValue>
64
65
66
67 <#if !quotation>
68 <#assign
69 istDatum = false
70 treffer = false
71 lineText="<tr>"
72 />
73 </#if>
74
75 <#list lineValue?split("\t") as cellValue>
76
77 <#list cellValue?replace("\"","")?split(",") as testWert >
78 <#attempt>
79 <#if testWert?trim != "" && testWert?trim?replace(suchstring,"","r") == "" >
80 <#assign treffer = true >
81 </#if>
82 <#recover>
83 </#attempt>
84 </#list>
85
86 <#if cellValue?index == 0 && !quotation>
87 <#if cellValue?trim?replace("\\d\\d\\.\\d\\d\\.\\d\\d\\d\\d","","r") == "" >
88 <#assign istDatum = true>
89 <#else>
90 <#-- Überschrift -->
91 <#assign anzeigen = true >
92 <#assign treffer = true >
93 </#if>
94 </#if>
95
96 <#if (cellValue?index == 0) && istDatum && !quotation>
97
98
99 <#assign gewinnDatum = cellValue?trim?date + ', ${stundenOffset}:01:00'>
100 <#assign lineText=lineText+"<td>"+gewinnDatum?date+"</td>" >
101 <#assign anzeigen = (gewinnDatum?datetime?iso_utc?date("yyyy-MM-dd'T'HH:mm:ss") <= vergleichsDatum?datetime?iso_utc?date("yyyy-MM-dd'T'HH:mm:ss")) >
102
103 <#if anzeigedatum?? && !anzeigedatum?date?matches(gewinnDatum?date)>
104 <#assign anzeigen = false >
105 </#if>
106
107
108 <#else>
109
110 <#if !quotation>
111 <#assign lineText=lineText+"<td>">
112 </#if>
113
114 <#if cellValue?replace("\"\"","")?starts_with("\"") && !(cellValue[1..]?replace("\"\"","")?contains("\"")) && !quotation >
115 <#assign quotation=true >
116 </#if>
117
118 <#if !istDatum && !quotation>
119 <#assign lineText=lineText+"<b>"+cellValue?replace("\"",""")?trim+"</b>">
120 <#else>
121 <#if !quotation>
122 <#assign lineText=lineText+cellValue?replace("\"",""")?trim>
123 <#else>
124 <#assign lineText=lineText+cellValue?replace("\"\"",""")?replace("\"","")?trim>
125 </#if>
126 </#if>
127
128
129 <#if cellValue?replace("\"\"","")?ends_with("\"") && quotation >
130 <#assign quotation=false >
131 </#if>
132
133
134 <#if !quotation>
135 <#assign lineText=lineText+"</td>">
136 <#else>
137 <#assign lineText=lineText+"	">
138 </#if>
139
140
141
142 </#if>
143 </#list>
144
145 <#if !quotation>
146 <#assign lineText=lineText+"</tr>">
147 <#else>
148 <#assign lineText=lineText+"<br>">
149 </#if>
150
151 <#if anzeigen && (!suche || treffer) && !quotation>
152 ${lineText}
153 <#if istDatum>
154 <#assign anzahlTreffer = anzahlTreffer + 1 >
155 </#if>
156 </#if>
157 </#list>
158 </table>
159
160 <#if anzahlTreffer == 0 >
161 <#if !suche>
162 <div class="portlet-msg-alert"><h1>Aktuell sind zu diesem Datum noch keine Gewinne veröffentlicht,
163 weshalb wir Sie noch um ein wenig Geduld bitten. Vielen Dank!</h1></div>
164 <#else>
165 <div class="portlet-msg-alert"><h1>Aktuell sind zu dieser Suche keine Gewinne veröffentlicht.</h1>
166 </div>
167 </#if>
168 </#if>
169
170</div>
171<p>
172</p>
173<script>
174 document.getElementById("neuerSuchstring")
175 .addEventListener("keyup", function (event) {
176 event.preventDefault();
177 if (event.keyCode === 13) {
178 doSearch();
179 }
180 });
181
182 function doSearch() {
183 str = document.getElementById("neuerSuchstring").value;
184 window.location.replace("${basisurl}" + "?search=" + str + "#tablestart");
185 }
186
187</script>