Wiki-Quellcode von Gewinnspiel-Portal-Plugin


Zeige letzte Bearbeiter
1 [[**Plugin-Download**>>url:https://customer.formcycle.eu/index.php/apps/files/?dir=/FORMCYCLE%20-%20Plugins%20Customer/Gewinnspiel-Portal (fc-portal-contest)&fileid=13794||rel="noopener noreferrer" target="_blank"]] (erfordert Anmeldung)
2
3 {{content/}}
4
5 {{info}}
6 {{version major="6" minor="5"}}{{/version}}Für das Gewinnspiel-Portal-Plugin wird mindestend {{formcycle/}} in der Version 6.5.0 benötigt
7 {{/info}}
8
9 {{figure image="beispiel_de.jpg" clear="h2"}}
10 Beispiel für ein mit dem Plugin erstelltes Gewinnspiel-Portal.
11 {{/figure}}
12
13 Das kostenpflichtige Gewinnspiel-Portal bietet die Möglichkeit, Portale für eine beliebige Anzahl an Gewinnspielen innerhalb von {{formcycle/}} zu erstellen und verwalten. Diese Gewinnspiele nutzen für die Dateneingabe der Teilnehmer {{formcycle/}} Formulare. Das Gewinnspiel-Portal kann auf allen Mandanten auf dem {{fcserver/}} genutzt werden, wobei auf jedem Mandanten ein eigenes Gewinnspiel-Portal eingerichtet werden kann.
14
15 == Installation ==
16
17 Das Gewinnspiel-Portal kann nur als [[Systemplugin>>doc:Formcycle.SystemSettings.UserInterface.SystemPlugins]] installiert werden und ist daher automatisch für alle Mandanten auf dem {{formcycle/}} Server nutzbar. Das Gewinnspiel-Portal besteht aus zwei separaten Plugins, //contest-view-portal.jar// und //contest-management-portal.jar//, welche zwingend zusammen installiert werden müssen. Es ist dabei egal, in welcher Reihenfolge die beiden Plugins installiert werden.
18
19 == Rollenrechte ==
20
21 {{figure image="rollenrechte_de.png" clear="h2"}}
22 Nach der Installation des Plugins zusätzlich konfigurierbare [[Rollenrechte>>doc:Formcycle.UserInterface.UserSettings.Roles]] in der Benuterverwaltung.
23 {{/figure}}
24
25 Die Menüeinträge des Gewinnspielportals sind auf der {{formcycle/}} Oberfläche standardmäßig nicht sichtbar. Es müssen daher bei den entsprechenden Nutzergruppen unter [[Rollen>>doc:Formcycle.UserInterface.UserSettings.Roles]] die Rechte für das Konfigurieren und für das Öffnen des Gewinnspielportals gesetzt werden. Diese Rechte sind wie folgt untergliedert:
26
27 === Gewinnspiel-Portal verwalten ===
28
29 Unter diesem Hauptpunkt können alle für die Administration des Gewinnspiel-Portals nötigen Rechte vergeben werden.
30
31 ==== Gewinnspiele verwalten ====
32
33 ; Gewinnspiel anlegen (leer)
34 : Berechtigung ein neues Gewinnspiel anzulegen, welches nicht auf einer Vorlage beruht
35
36 ; Gewinnspiel importieren
37 : Berechtigung ein exportiertes Gewinnspiel importieren zu dürfen
38
39 ; Gewinnspiel aus Vorlage anlegen
40 : Berechtigung ein neues Gewinnspiel anzulegen, welches auf einer Vorlage aufbaut
41
42 ; Gewinnspiel kopieren
43 : Berechtigung ein vorhandenes Gewinnspiel kopieren zu dürfen
44
45 ; Gewinnspiel exportieren
46 : Berechtigung ein vorhandenes Gewinnspiel exportieren zu dürfen
47
48 ; Gewinnspiel löschen
49 : Berechtigung ein vorhandenes Gewinnspiel löschen zu dürfen
50
51 ; Gewinnspiel-Formular bearbeiten
52 : Berechtigung ein vorhandenes Gewinnspiel bearbeiten zu dürfen
53
54 ; Gewinner ermitteln {{version major="1" minor="4"}}{{/version}}
55 : Berechtigung, um nach Ablauf des Gewinnspiels Gewinner zu ermitteln, diese ggf. inkl Verarbeitung in einen anderen Status zu verschieben und anschließend per Excel zu explorieten.
56
57 ; Teilnehmer exportieren {{version major="1" minor="5"}}{{/version}}
58 : Berechtigung zum Exportieren der aktuellen Liste der Gewinnspiel-Teilnahmer
59
60 ; Ersatzgewinner ermitteln {{version major="1" minor="4"}}{{/version}}
61 : Ermöglicht es, wiederholt Ersatzgewinner zu ermitteln.
62
63 ; Gewinne verwalten {{version major="1" minor="6"}}{{/version}}
64 : Berechtigung, um neue Gewinne zu erstellen und vorhandene Gewinne bearbeiten und löschen zu dürfen.
65
66 ; Gewinnbild hochladen {{version major="1" minor="6"}}{{/version}}
67 : Berechtigung das vorhandene Gewinnbild eines Gewinns hochladen zu dürfen.
68
69 ; Gewinnbild löschen {{version major="1" minor="6"}}{{/version}}
70 : Berechtigung das vorhandene Gewinnbild eines Gewinns löschen zu dürfen.
71
72 ; Verknüpfung Gewinnervorgang aufheben {{version major="1" minor="6"}}{{/version}}
73 : Berechtigung die vorhandene Verknüpfung eines Gewinnvorgangs am Gewinn aufheben zu dürfen.
74
75 ; Löschfristen verwalten {{version major="1" minor="7"}}{{/version}}
76 : Berechtigung, um Löschfristen zu erstellen, zu bearbeiten oder löschen zu dürfen.
77
78 ==== Vorlagen verwalten ====
79
80 Notwendige Berechtigung, um neue Gewinnspielvorlagen erstellen und vorhandene Gewinnspielvorlagen bearbeiten und löschen zu dürfen. Nur wenn dieses Recht aktiv ist, kann der Nutzer ein vorhandenes Gewinnspiel als Vorlage speichern.
81
82 ==== Konfigurieren ====
83
84 Berechtigung, um die für alle Gewinnspiele verwendete Oberfläche konfigurieren zu dürfen
85
86 === Gewinnspiel-Portal öffnen ===
87
88 Berechtigung, das Gewinnspiel-Portal aus {{formcycle/}} heraus direkt öffnen zu dürfen
89
90 == Menüpunkte auf der Verwaltungsoberfläche ==
91
92 {{figure image="portal_menue_elemente_de.png" clear="h2" width="150"}}
93 Zusätzliche Menüpunkte auf der {{formcycle/}} Verwaltungsoberfläche.
94 {{/figure}}
95
96
97 {{html wiki="true"}}
98 <div class='xm-figure xm-float-right xm-clear-h2' data-alt='Zusätzliche Menüpunkte auf der Verwaltungsoberfläche.'><div class='xm-figure-inner' style='width:160px'>{{lightbox image='portal_menue_elemente_de.png' width='150' group='$height' group='$group' title='Zusätzliche Menüpunkte auf der Verwaltungsoberfläche.'/}}<div class='xm-figure-caption'>Zusätzliche Menüpunkte auf der {{formcycle/}} Verwaltungsoberfläche.</div></div></div>
99 {{/html}}
100
101
102 Durch die Konfiguration der entprechenden Rollenrechte erscheinen die folgenden neuen Menüeinträge auf der Verwaltungsoberfläche:
103
104
105 === Gewinnspiele ===
106
107 Nachdem das Gewinnspiel-Portal installiert wurde und der entsprechende Nutzer die Berechtigungen erhalten hat, befinden sich auf der {{formcycle/}} Verwaltungsoberfläche ein neuer Menüpunkt //Gewinnspiele// mit den folgenden drei Unterpunkten:
108
109 ; Gewinnspiele verwalten
110 : Unter diesem Punkt können Gewinnspiele angelegt und die Einstellungen von vorhandenen Gewinnspielen eingesehen und angepasst werden. Siehe [[Gewinnspiele verwalten>>doc:Formcycle.PluginDocumentation.ContestPortalPlugin.WebHome||anchor="backend_gewinnspiele"]].
111
112 ; Vorlagen verwalten
113 : Unter diesem Punkt können neue Vorlagen für Gewinnspiele angelegt und vorhandene Vorlagen eingesehen und angepasst werden. Siehe [[Vorlagen verwalten>>doc:Formcycle.PluginDocumentation.ContestPortalPlugin.WebHome||anchor="backend_vorlagen"]].
114
115 ; Konfiguration
116 : Unter diesem Punkt können Stuktur, Aussehen und Verhalten des Gewinnspiel-Portals konfiguriert werden. Siehe [[Portal konfigurieren>>doc:Formcycle.PluginDocumentation.ContestPortalPlugin.WebHome||anchor="backend_portal"]].
117
118 === Gewinnspiel öffnen ===
119
120 Wenn für den Benutzer in den Rollenrechten die Berechtigung zum Öffnen des Gewinnspiel-Portals gegeben wurde, erscheint im Hauptmenü auf der {{formcycle/}} Verwaltungsoberfläche eine zusätzliche Schaltfläche //Gewinnspiel öffnen//.
121
122 == Grundstruktur des Gewinnspiel-Portals ==
123
124 Mit dem Gewinnspiel-Portal kann aus mehreren vorgegebenen Elementen eine Portal-Webseite konfiguriert werden, in welcher die für ein Gewinnspiel-Portal benötigten Elemente enthalten sind. Die Webseite untergliedert sich in die folgenden Elemente:
125
126 ; (1) Kopfbereich, (7) Fußbereich und (4) Trenner vom Portal
127 : Diese Elemente werden einmal konfiguriert und werden für alle Gewinnspiele im Gewinnspiel-Portal genutzt.
128
129 ; (2) Bannergrafik, (3) Inhalt (Formular, Beschreibung, ggf. Ankündigungen oder Mitteilungen über den Beginn oder das Ende des Gewinnspiels), (5) Teilnahmebedingungen und (6) Datenschutz
130 : Diese Elemente können für jedes Gewinnspiel individuell konfiguriert werden.
131
132 {{lightbox image="portal_aufbau_de.jpg" group="g0" width="800"/}}
133
134 == Verwaltungsoberfläche im FORMCYCLE Backend ==
135
136 {{id name="backend_gewinnspiele"/}}
137
138 === Gewinnspiele verwalten ===
139
140 {{figure image="gewinnspiele_ui_de.png" clear="h2"}}
141 Verwaltungsoberfläche für den Menüpunkt //Gewinnspiele verwalten//
142 {{/figure}}
143
144 Unter diesem Menüpunkt können die vorhandenen Gewinnspiele verwaltet und neue Gewinnspiele angelegt werden.
145
146 ==== Menü ====
147
148 Auf der linken Seite befindet sich die Liste aller vorhandenen Gewinnspiele. Über die Buttons über der Liste kann ein neues Gewinnspiel angelegt werden {{ficon name="plus-circle-outline"/}} oder ein zuvor in der Liste ausgewähltes Gewinnspiel kopiert {{icon name="fa-files-o" title="Kopieren" size="1x" cssClass="fa-files-o"/}}, exportiert {{icon name="fa-download" title="Exportieren" size="1x" cssClass="fa-download"/}}, als Vorlage gespeichert {{icon name="fa-save" title="Als Vorlage speichern" size="1x" cssClass="fa-save"/}} oder gelöscht {{ficon name="trash-alt2"/}} werden. Über die Suchen-Schaltfläche {{icon name="fa-search" title="Suchen" size="1x" cssClass="fa-search"/}} kann ein Eingabefeld eingeblendet werden, nach dessen Inhalt die Gewinnspiel-Liste automatisch gefiltert wird. Beim Anlegen eines neuen Gewinnspiels kan entweder ein neues leeres Gewinnspiel angelegt, ein zuvor exportiertes Gewinnspiel wieder geladen oder eine Vorlage als Grundlage für das Gewinnspiel verwendet werden.
149
150 Links neben dem Namen des Gewinnspiels wird jeweils ein Symbol angezeigt, welches die folgende Bedeutung hat:
151
152 ; {{ficon name="checkbox-marked-circle"/}}
153 : Ein ausgefüllter Kreis mit Haken bedeutet, dass das Gewinnspiel aktiviert ist und sich aktuell innerhalb des konfigurierten Online-Zeitraumes befindet
154 ; {{ficon name="checkbox-marked-circle-outline"/}}
155 : Ein nicht ausgefüllter Kreis mit Haken bedeutet, dass das Gewinnspiel aktiviert ist, sich aber aktuell nicht innerhalb des konfigurierten Online-Zeitraumes befindet. Das heißt dass das Gewinnspiel entweder nicht mehr oder noch nicht online ist.
156 ; {{ficon name="circle-outline"/}}
157 : Ein leerer Kreis bedeutet, dass das Gewinnspiel momentan nicht aktiv ist
158
159 ==== Einstellungen ====
160
161 {{figure image="gs_onlineeinstellungen_de.png" clear="h2"}}
162 Mögliche Optionen zum Konfigurieren der (datumsabhängigen) Sichtbarkeit des Gewinnspiels und der Positionierung des Beschreibungstextes
163 {{/figure}}
164
165
166 {{html wiki="true"}}
167 <div class='xm-figure xm-float-right xm-clear-h2' data-alt='Mögliche Optionen zum Konfigurieren der (datumsabhängigen) Sichtbarkeit des Gewinnspiels und der Positionierung des Beschreibungstextes'><div class='xm-figure-inner' style='width:310px'>{{lightbox image='gs_onlineeinstellungen_de.png' width='300' group='$height' group='$group' title='Mögliche Optionen zum Konfigurieren der (datumsabhängigen) Sichtbarkeit des Gewinnspiels und der Positionierung des Beschreibungstextes'/}}<div class='xm-figure-caption'>Mögliche Optionen zum Konfigurieren der (datumsabhängigen) Sichtbarkeit des Gewinnspiels und der Positionierung des Beschreibungstextes</div></div></div>
168 {{/html}}
169
170
171 Nachdem auf die //Neues Gewinnspiel//-Schaltfläche geklickt oder ein Gewinnspiel in der Liste ausgewählt wurde, erscheint rechts die Konfigurationsseite für das Gewinnspiel. Hier können im oberen Bereich links konfiguriert werden, wann und wie das Gewinnspiel sichtbar sein soll. Die foldenden Optionen können konfiguriert werden:
172
173
174 ; **Aktiviert (Das Gewinnspiel ist aufrufbar)**
175 : Das Gewinnspiel kann über einen Link aufgerufen werden
176
177 ; **Gewinnspiel im Portal anzeigen**
178 : Das Gewinnspiel wird im Portal angezeigt; Nur anwählbar, wenn die Option //**Aktiviert** (Das Gewinnspiel ist aufrufbar)// zuvor angewählt wurde; Anderenfalls ist diese Option ausgegraut und das Gewinnspiel wird nicht im Portal angezeigt
179
180 ; **Name des Gewinnspiels:**
181 : Im Portal angezeigter Name des Gewinnspiels. Wird zudem als //title//-Attribut für das {{formcycle/}}-Formular des Gewinnspiels verwendet.
182
183 ; **UUID des Gewinnspiels:**
184 : Gibt die eindeutige UUID des Gewinnspiels aus um dieses identifizieren zu können.
185
186 ; **Online von:**
187 : Zeitpunkt, ab dem das Gewinnspiel online geschaltet wird. Falls die Option //**Aktiviert** (Das Gewinnspiel ist aufrufbar)// angewählt wurde, wird vor dem an dieser Stelle konfigurierten Zeitpunkt beim Öffnen des Gewinnspiels nur die //Ankündigung// des Gewinnspiels angezeigt. Sofern //Gewinnspiel im Portal anzeigen// angewählt wurde, wird das Gewinnspiel auch vor dem hier konfigurierten Zeitpunkt bereits im Gewinnspiel-Portal angezeigt. Auch in diesem Fall wird beim Öffnen des Gewinnspiels die //Ankündigung// gezeigt.
188
189 ; **Online bis:**
190 : Zeitpunkt, ab dem das Gewinnspiel offline geschaltet wird. Falls die Option //**Aktiviert** (Das Gewinnspiel ist aufrufbar)// angewählt wurde, wird ab dem an dieser Stelle konfigurierten Zeitpunkt beim Öffnen des Gewinnspiels nur die //Abgelaufen//-Mitteilung des Gewinnspiels angezeigt. Sofern //Gewinnspiel im Portal anzeigen// angewählt wurde, wird das Gewinnspiel auch vor dem hier konfigurierten Zeitpunkt bereits im Gewinnspiel-Portal angezeigt. Auch in diesem Fall wird beim Öffnen des Gewinnspiels die //Ankündigung// gezeigt.
191
192 ; **Layout:**
193 : An dieser Stelle kann über 5 Buttons konfiguriert werden, ob und wenn ja an welcher Stelle der konfigurierte //Beschreibungstext// angezeigt werden soll. Zur Auswahl stehen:
194 :; **Formular links**
195 :: Der //Beschreibungstext// wird rechts neben dem Formular angezeigt
196 :; **Formular rechts**
197 :: Der //Beschreibungstext// wird links neben dem Formular angezeigt
198 :; **Formular oben**
199 :: Der //Beschreibungstext// wird unter dem Formular angezeigt
200 :; **Formular unten**
201 :: Der //Beschreibungstext// wird über dem Formular angezeigt
202 :; **ohne Beschreibung**
203 :: Es wird nur das Formular und kein //Beschreibungstext// angezeigt
204
205 {{figure image="gs_microsite_de.png" clear="h2"}}
206 Mögliche Optionen zum Öffnen des Gewinnspiels bzw. zum Generieren von Code zum Einbetten des Gewinnspiels im Punkt //Microsite//
207 {{/figure}}
208
209 ; **Microsite**
210 : An dieser Stelle werden drei Schaltflächen angezeigt, mit denen das ausgewählte Gewinnspiel geöffnet oder ein Link zum Gewinnspiel ermittelt werden kann. Die Buttons haben dabei die folgenden Funktionen:
211 :; **Öffnen**
212 :: Öffnet das Gewinnspiel so, wie es aktuell sichtbar ist. Dabei werden alle durch das Gewinnspiel konfigurieten Inhalte angezeigt. Die durch das Gewinnspiel-Portal bereitgestellten Inhalte wie Kopfbereich, Furßbereich, usw. werden nicht mit dargestellt.
213 :; **Vorschau**
214 :: Selbe Funktion wie die //Öffnen//-Schaltfläche, allerdings wird das Formular im Vorschaumodus geöffnet. Beim Absenden des Formulars wird inneralb des zuvor vom Formualar verwendeten Bildschirmbereichs die Zusammenfassung über die an den Server übertragenen Daten angezeigt, welche auch bei einem normalen {{formcycle/}}-Formular nach dem Absenden aus der Vorschau angezeigt. Am rechten Rand der Schaltfläche kann durch den Klick auf den nach unten gerichteten Pfeil ein Menü geöffnet werden, welches zwei weitere Vorschau-Optionen enthält. Diese sind:
215 :; **Vorschau als angekündigt**
216 :: Öffnet das Gewinnspiel so, wie es sichtbar ist, wenn der Zeitpunkt ab dem es online ist noch nicht erreicht wurde.
217 :; **Vorschau als abgelaufen**
218 :: Öffnet das Gewinnspiel so, wie es sichtbar ist, wenn der Zeitpunkt bis zu dem es online war überschritten wurde.
219 :; **Bereitstellen**
220 :: Öffnet einen Dialog, in dem die URL zum Öffnen des Gewinnspiels ermittelt werden kann. Hierbei können die folgenden Optionen konfiguriert werden, welche das Aussehen des Gewinnspiels beeinflussen:
221 ::; **Kopfbereich des Gewinnspiels ausblenden (Bilder)**
222 ::: Wenn diese Option gewählt wird, wird die Bannergrafik nicht angezeigt.
223 ::; **Beschreibung des Gewinnspiels ausblenden**
224 ::: Wenn diese Option gewählt wird, wird die Beschreibung des Gewinnspiels nicht angezeigt, unabhängig davon, was unter //Layout// konfiguriert wurde.
225 ::; **Fußbereich des Gewinnspiels ausblenden (Datenschutz & Teilnahmebedingungen)**
226 ::: Wenn diese Option gewählt wird, werden die für das Gewinnspiel konfigurierten Inhalte für //Datenschutz// und //Teilnahmebedingungen// nicht angezeigt.
227 ::; **Zu verwendender Server**
228 ::: Auswahl, über welchen Server das Gewinnspiel geöffnet werden soll. Zur Auswahl stehen Master- und eventuell vorhande Frontend-Server.
229 :: Darunter wird die sich aufgrund der selektierten Optionen ergebende URL angezeigt. Durch einen Klick auf die //Quellcode kopieren//-Schaltfläche rechts kann diese in die Zwischenablage kopiert werden.
230 :: Alternativ kann durch einen Klick auf den nach unten gerichteten Pfeil am rechten Rand der Schaltfläche ein Menü geöffnet werden, welches drei weitere Optionen enthält. Diese öffnen jeweils einen Dialog, dessen Konfigurationsmöglichkeiten den bereits beschriebenen entsprecht. Anstelle einer URL werden allerdings in eine Webseite einzufügende Inhalte zum Einbinden des Gewinnspiels angezeigt. Die drei Optionen sind:
231 :; **Bereitstellen als HTML Link**
232 :: Generiert Quellcode, mit dem das Gewinnspiel direkt als HTML-Code in eine Webseite eingebunden werden kann.
233 :; **Bereitstellen als Inlineframe**
234 :: Generiert Quellcode, mit dem das Gewinnspiel als Inlineframe in eine Webseite eingebunden werden kann.
235 :; **Bereitstellen als Ajax/JavaScript**
236 :: Generiert Quellcode, mit dem das Gewinnspiel per Ajax (JavaScript) in eine Webseite eingebunden werden kann.
237
238 {{figure image="gs_inhalt_de.png" clear="h2"}}
239 Quellcode-Ansicht eines Editors im Reiter //Teilnahmebedingungen// von //Inhalt//.
240 {{/figure}}
241
242 ; **Inhalt**
243 : An dieser Stelle wird der eigentliche Inhalt des Gewinnspiels konfiguriert. Die einzelnen Inhaltselemente des Gewinnspiels können über die oben befindlichen Schaltflächen ausgewählt werden. Danach kann in dem darunter befindlichen WYSIWYG-Editor der jeweilige Inhalt eingefügt werden. Bei den HTML-Inhalten kann durch einen Klick auf //Quellcode// jeweils in die Quellcodeansicht gewechselt werden. Hierdurch können zum Beispiel für bestimmte Inhalte auch eigene IDs oder CSS-Klassen genutzt werden. Falls das Gewinnspiel nicht im Portal geöffnet werden soll, aber zusätzlicher JavaScript- und CSS-Code dafür benötigt wird, kann dieser unter //JavaScript (Microsite)// bzw. unter //CSS (Microsite)// definiert werden.
244 : Folgende Inhalte können an dieser Stelle konfiguriert werden:
245 :; **Beschreibung**
246 :: Beschreibungstext zum Gewinnspiel. Wird neben bzw. über oder unter dem Formular angezeigt.
247 :; **Teilnahmebedingungen**
248 :: Teilnahmebedingungen des Gewinnspiels. Wird im Portal unterhalb des Trenners neben dem //Datenschutz// angezeigt.
249 :; **Datenschutz**
250 :: Datenschutzbedingungen des Gewinnspiels. Wird im Portal unterhalb des Trenners neben den //Teilnahmebedingungen// angezeigt.
251 :; **Ankündigung**
252 :: Inhalt, welcher anstelle vom Formular und dem Beschreibungstext angezeigt wird, wenn das Gewinnspiel noch nicht gestartet ist.
253 :; **Abgelaufen**
254 :: Inhalt, welcher anstelle vom Formular und dem Beschreibungstext angezeigt wird, nachdem das Gewinnspiel beendet wurde.
255 :; **CSS (Microsite)**
256 :: Zusätzlicher CSS-Code, welcher nur für dieses Gewinnspiel verwendet werden soll.
257 :; **JavaScript (Microsite)**
258 :: Zusätzlicher JavaScript-Code, welcher nur für dieses Gewinnspiel verwendet werden soll.
259 :; **HTML header (Microsite)**
260 :: Zusätzlicher HTML-Code, welcher nur im Headerbereich dieses Gewinnspiels verwendet werden soll. Dies können zum Beispiel Metadaten oder Verweise auf andere CSS- oder JavaScript-Dateien sein.
261
262 {{figure image="gs_bannergrafiken_de.png" clear="h2"}}
263 Vorhandene Schaltflächen unter //Bannergrafiken//.
264 {{/figure}}
265
266 ; Bannergrafiken
267 : Oben rechts können die auf der Gewinnspiel-Portalseite beim Auswählen dieses Gewinnspiels und auf der Microsite angezeigten Bannergrafiken konfiguriert werden. Für unterschiedliche Geräteklassen bzw. Bildschirmauflösungen können dabei verschiedene Grafiken genutzt werden. Zur Auswahl stehen die folgenden Größen:
268 :: **Desktop** - ab 1026 px Bildschirmbreite; Muss konfiguriert werden
269 :: **Tablet** - zwischen 642 px und 1025 px Bildschirmbreite
270 :: **Mobile** - bei 641 px oder weniger Bildschirmbreite
271 : Wenn eine Bannergrafik für eine Geräteklasse nicht explizit konfiguriert wird, wird bei der Anzeige die Grafik des nächstgrößeren Formats verwendet. Dementsprechend sollte die Grafik für //Desktop// immer konfiguriert werden, während //Tablet// und //Mobile// optional sind. Unterstützt werden alle im Browser zulässigen Bildformate.
272
273 : Die folgenden Schaltflächen dienen der Konfiguration der Bannergrafiken:
274 :; **Desktop**, **Tablet** und **Mobile**
275 :: Durch anklicken dieser Schaltflächen kann zwischen den Grafiken für die einzelnen Geräteklassen gewchselt werden
276 :; **+ Bannergrafik ändern**
277 :: Öffnet einen Dateiauswahldialog zum selektieren einer lokal gespeicherten Grafik. Nach dem Bestätigen der Auswahl wird die Datei hochgeladen. Falls bereits zuvor eine Grafik vorhanden war, wird dieser ersetzt.
278 :; {{ficon name="trash-alt2"/}}-Symbol rechts neben dem Dateinamen einer bereits vorhandenen Grafik
279 :: Löschen der Grafik
280
281 ==== Fußzeile ====
282
283 Hier befinden sich die folgenden zwei Schaltflächen:
284
285 ; **Formular bearbeiten**
286 : Öffnet den Formulardesigner für den Formularteil des Gewinnspiels. Da es sich um ein normales {{formcycle/}}-Formular handelt, erfolgt die Erstellung und Konfiguration des Formulars analog. Vom Designer aus kann dementsprechend auch die Statusverarbeitung des Formulars konfiguriert werden.
287
288 ; **Gewinner ermitteln** {{version major="1" minor="4"}}{{/version}}
289 : Diese Schaltfläche ist bei entsprechender Berechtigung erst verfügbar sobald das Gewinnspiel offline geschalten wurde oder der Teilnahme-Zeitraum abgelaufen ist. Ferner ist er auch nicht mehr verfügbar sobald eine Gewinnerziehung durchgeführt wurde. Er öffnet den Dialog zu Konfiguration und zum Starten der Gewinnerziehung.
290
291 ; **Ersatzgewinner ermitteln** {{version major="1" minor="4"}}{{/version}}
292 : Diese Schaltfläche ist bei entsprechender Berechtigung erst verfügbar sobald das Gewinnspiel offline geschalten wurde oder der Teilnahme-Zeitraum abgelaufen ist sowie bereits eine Gewinnerziehung stattgefunden hat. Er öffnet den Dialog zu Konfiguration und zum Starten der Nachziehung von Gewinnern.
293
294 ; **Teilnehmer exportieren** {{version major="1" minor="5"}}{{/version}}
295 : Diese Schaltfläche ist bei entsprechender Berechtigung nur verfügbar wenn zum ausgewählten Gewinnspiel eine Projekt-spezifische Postfach-Ansicht definiert wurde. Beim Betätigen dieser Schaltfläche wird ein EXCEL-Export angesoßen welcher die dort definierten Formular-Felder inkl. aller Metadaten-Felder exportiert. Je nach Anzahl der Teilnehmer kann dieser Export mehrere Sekunden lang dauern.
296
297 ; **Speichern**
298 : Speichert die auf dieser Seite gemachten Einstellungen bzw. Änderungen an den Einstellungen.
299 \\\\{{id name="backend_vorlagen"/}}
300
301 === Gewinner ermitteln {{version major="1" minor="4"}}{{/version}} ===
302
303 Sobald der Teilnahmezeitraum abgelaufen ist oder ein Gewinnspiel deaktiviert wurde ist es mit den entsprechenden Berechtigungen möglich Gewinner zu ermitteln.
304
305 {{figure image="dialog_1_de.png" clear="h2"}}
306 Dialog zu Konfiguration der Gewinnerziehung.
307 {{/figure}}
308
309 ==== Konfiguration ====
310
311 Startet man über die entsprechenden Schaltflächen die Ermittlung der Gewinner eines Gewinnspiels, so öffnet sich hierbei ein Konfigurationdialog. In diesem wird angegeben aus welchem Status die Teilnehmer-Datensätze herangezogen werden, sowie die Anzahl der eigentlichen Gewinner in ihren Ausprägungen. Hierbei wird unterschieden zwischen Hauptgewinnern, Nebengewinnern und zusätzlichen Ersatzgewinnern. Die Datensätze die für die jeweilige Ausprägung gezogen weden, werden anschließen je nach Auswahl mit oder ohne ausgeführter Statusverarbeitgung in den zugehörigen Zielstatus überführt.
312
313 {{figure image="dialog_2_de.png" clear="h2"}}
314 Anzeige der ermittelten Gewinner
315 {{/figure}}
316
317 ==== Asuwertung ====
318
319 Nach der Ziehung wird eine Übersicht mit den ermittelten Gewinnern angezeigt. Hierbei werden je nach Verfügbarkeit Spalten der Projekt-spezifischen Postfach-Ansicht oder der Betreff inkl. von Standard-Spalten angezeigt. Ferner sind die Spalten über die zugehörige Auswahl anpassbar. Über die Schlatfläche "Export" steht zusätzlich diese Tabelle mit allen vorhandenen Spalten als Excel-Datei zur Verfügung. Ferner kann über "Export" > "... mit kompletten Datensätzen" das Excel auch um alle im Formular vorhandenen Eingabedaten erweitert werden.
320
321
322 ==== Gewinner nachziehen ====
323
324 Nach einer initial durchgeführen Gewinnerziehung steht diese Option nicht mehr zur Verfügung. Ferner gibt es mit der entsprechenden Berechtigung die Möglichkeit weitere Ersatzgewinner zu ermitteln. Hierbei kommt der selbe Dialog zum Einsatz, jedoch ist nur die Konfiguration der Ersatzgewinner verfügbar.
325
326
327 === Vorlagen verwalten ===
328
329 {{figure image="vorlagen_ui_de.png" clear="h2"}}
330 Verwaltungsoberfläche für den Menüpunkt //Vorlagen verwalten//.
331 {{/figure}}
332
333 Unter diesem Menüpunkt können die vorhandenen Vorlagen für Gewinnspiele verwaltet und neue Vorlagen angelegt werden. An der Oberfläche kann eine Teilmenge der bei //Gewinnspiele verwalten// vorhandenen Optionen konfiguriert werden.
334
335 ==== Menü ====
336
337 Auf der linken Seite befindet sich die Liste aller vorhandenen Vorlagen. Über die Schaltfläche {{ficon name="plus-circle-outline"/}} über der Liste kann eine neue Vorlage angelegt werden, indem ein zuvor exportiertes Gewinnspiel oder eine zuvor exportierte Vorlage wieder importiert wird. Eine vorhandene Vorlage kann mit der sich daneben befindenden Schaltfläche {{icon name="fa-files-o" title="Kopieren" size="1x" cssClass="fa-files-o"/}} kopiert, mit {{icon name="fa-download" title="Exportieren" size="1x" cssClass="fa-download"/}} exportiert und mit {{ficon name="trash-alt2"/}} gelöscht werden. Über die Suchen-Schaltfläche {{icon name="fa-search" title="Suchen" size="1x" cssClass="fa-search"/}} kann ein Eingabefeld eingeblendet werden, nach dessen Inhalt die Vorlagen-Liste automatisch gefiltert wird.
338
339 ==== Einstellungen ====
340
341 Nachdem eine Vorlage angelegt bzw. in der Liste ausgewählt wurde, erscheint rechts die Konfigurationsseite für diese. Die foldenden Optionen können konfiguriert werden:
342
343 ; **Name der Vorlage:**
344 : Innerhalb von {{formcycle/}} angezeigter Name der Vorlage.
345
346 ; **Layout:**
347 : An dieser Stelle kann über 5 Buttons konfiguriert werden, ob und wenn ja an welcher Stelle der konfigurierte //Beschreibungstext// angezeigt werden soll. Zur Auswahl stehen:
348 :; **Formular links**
349 :: Der //Beschreibungstext// wird rechts neben dem Formular angezeigt
350 :; **Formular rechts**
351 :: Der //Beschreibungstext// wird links neben dem Formular angezeigt
352 :; **Formular oben**
353 :: Der //Beschreibungstext// wird unter dem Formular angezeigt
354 :; **Formular unten**
355 :: Der //Beschreibungstext// wird über dem Formular angezeigt
356 :; **ohne Beschreibung**
357 :: Es wird nur das Formular und kein //Beschreibungstext// angezeigt
358
359 ; **Microsite**
360 : An dieser Stelle wird nur eine Schaltflächen angezeigt, mit der die ausgewählte Vorlage wie ein normales Gewinnspiel im Vorschaumodus geöffnet werden kann. Der Button hat dabei die folgenden Funktionen:
361 :; **Vorschau**
362 :: Die Gewinnspiel-Vorlage bzw. das Formular wird im Vorschaumodus geöffnet. Beim Absenden des Formulars wird inneralb des zuvor vom Formualar verwendeten Bildschirmbereichs die Zusammenfassung über die an den Server übertragenen Daten angezeigt, welche auch bei einem normalen {{formcycle/}}-Formular nach dem Absenden aus der Vorschau angezeigt. Am rechten Rand der Schaltfläche kann durch den Klick auf den nach unten gerichteten Pfeil ein Menü geöffnet werden, welches zwei weitere Vorschau-Optionen enthält. Diese sind:
363 :; **Vorschau als angekündigt**
364 :: Öffnet die Gewinnspiel-Vorlage so, wie das Gewinnspiel sichtbar ist, wenn der Zeitpunkt ab dem es online ist noch nicht erreicht wurde.
365 :; **Vorschau als abgelaufen**
366 :: Öffnet die Gewinnspiel-Vorlage so, wie das Gewinnspiel sichtbar ist, wenn der Zeitpunkt bis zu dem es online war überschritten wurde.
367
368 {{figure image="gs_inhalt_de.png" clear="h2"}}
369 Quellcode-Ansicht eines Editors im Reiter //Teilnahmebedingungen// von //Inhalt//.
370 {{/figure}}
371
372 ; **Inhalt**
373 : An dieser Stelle wird der eigentliche Inhalt der Gewinnspiel-Vorlage konfiguriert. Die vorhandenen Optionen entsprechen exakt dem, was im Menüpunkt //Gewinnspiele verwalten// konfiguriert werden kann. Die einzelnen Inhaltselemente der Gewinnspiel-Vorlage können über die oben befindlichen Schaltflächen ausgewählt werden. Danach kann in dem darunter befindlichen WYSIWYG-Editor der jeweilige Inhalt eingefügt werden. Bei den HTML-Inhalten kann durch einen Klick auf //Quellcode// jeweils in die Quellcodeansicht gewechselt werden. Hierdurch können zum Beispiel für bestimmte Inhalte auch eigene IDs oder CSS-Klassen genutzt werden. Falls das in der Gewinnspiel-Vorlage konfigurierte Gewinnspiel später nicht im Portal geöffnet werden soll, aber zusätzlicher JavaScript- und CSS-Code dafür benötigt wird, kann dieser unter //JavaScript (Microsite)// bzw. unter //CSS (Microsite)// definiert werden.
374 : Folgende Inhalte können an dieser Stelle konfiguriert werden:
375 :; **Beschreibung**
376 :: Beschreibungstext der Gewinnspiel-Vorlage. Wird neben bzw. über oder unter dem Formular angezeigt.
377 :; **Teilnahmebedingungen**
378 :: Teilnahmebedingungen der Gewinnspiel-Vorlage. Wird im Portal unterhalb des Trenners neben dem //Datenschutz// angezeigt.
379 :; **Datenschutz**
380 :: Datenschutzbedingungen der Gewinnspiel-Vorlage. Wird im Portal unterhalb des Trenners neben den //Teilnahmebedingungen// angezeigt.
381 :; **Ankündigung**
382 :: Inhalt, welcher anstelle vom Formular und dem Beschreibungstext angezeigt wird, wenn das Gewinnspiel noch nicht gestartet ist.
383 :; **Abgelaufen**
384 :: Inhalt, welcher anstelle vom Formular und dem Beschreibungstext angezeigt wird, nachdem das Gewinnspiel beendet wurde.
385 :; **CSS (Microsite)**
386 :: Zusätzlicher CSS-Code, welcher nur für diese Gewinnspiel-Vorlage verwendet werden soll.
387 :; **JavaScript (Microsite)**
388 :: Zusätzlicher JavaScript-Code, welcher nur für diese Gewinnspiel-Vorlage verwendet werden soll.
389 :; **HTML header (Microsite)**
390 :: Zusätzlicher HTML-Code, welcher nur im Headerbereich dieses Gewinnspiels verwendet werden soll. Dies können zum Beispiel Metadaten oder Verweise auf andere CSS- oder JavaScript-Dateien sein.
391
392 {{figure image="gs_bannergrafiken_de.png" clear="h2"}}
393 Vorhandene Schaltflächen unter //Bannergrafiken//.
394 {{/figure}}
395
396 ; Bannergrafiken
397 : Oben rechts können die auf der Gewinnspiel-Portalseite beim Auswählen dieses Gewinnspiels und auf der Microsite angezeigten Bannergrafiken für diese Gewinnspiel-Vorlage konfiguriert werden. Für unterschiedliche Geräteklassen bzw. Bildschirmauflösungen können dabei verschiedene Grafiken genutzt werden. Zur Auswahl stehen die folgenden Größen:
398 :: **Desktop** - ab 1026 px Bildschirmbreite; Muss konfiguriert werden
399 :: **Tablet** - zwischen 642 px und 1025 px Bildschirmbreite
400 :: **Mobile** - bei 641 px oder weniger Bildschirmbreite
401 : Wenn eine Bannergrafik für eine Geräteklasse nicht explizit konfiguriert wird, wird bei der Anzeige die Grafik des nächstgrößeren Formats verwendet. Dementsprechend sollte die Grafik für //Desktop// immer konfiguriert werden, während //Tablet// und //Mobile// optional sind. Unterstützt werden alle im Browser zulässigen Bildformate.
402
403 : Die folgenden Schaltflächen dienen der Konfiguration der Bannergrafiken:
404 :; **Desktop**, **Tablet** und **Mobile**
405 :: Durch anklicken dieser Schaltflächen kann zwischen den Grafiken für die einzelnen Geräteklassen gewchselt werden
406 :; **+ Bannergrafik ändern**
407 :: Öffnet einen Dateiauswahldialog zum selektieren einer lokal gespeicherten Grafik. Nach dem Bestätigen der Auswahl wird die Datei hochgeladen. Falls bereits zuvor eine Grafik vorhanden war, wird dieser ersetzt.
408 :; {{ficon name="trash-alt2"/}}-Symbol rechts neben dem Dateinamen einer bereits vorhandenen Grafik
409 :: Löschen der Grafik
410
411 ==== Fußzeile ====
412
413 Hier befinden sich die folgenden zwei Schaltflächen:
414
415 ; **Formular bearbeiten**
416 : Öffnet den Formulardesigner für den Formularteil der Gewinnspiel-Vorlage. Da es sich um ein normales {{formcycle/}}-Formular handelt, erfolgt die Erstellung und Konfiguration des Formulars analog. Vom Designer aus kann dementsprechend auch die Statusverarbeitung des Formulars konfiguriert werden.
417
418 ; **Speichern**
419 : Speichert die auf dieser Seite gemachten Einstellungen bzw. Änderungen an den Einstellungen.
420 \\\\{{id name="backend_portal"/}}
421
422 === Konfiguration ===
423
424 {{figure image="portal_ui_de.png" clear="h2"}}
425 Verwaltungsoberfläche für den Menüpunkt //Portal konfigurieren//.
426 {{/figure}}
427
428 In diesem Menüpunkt kann das Aussehen des Gewinnspiel-Portals angepasst werden. Die folgenden Reiter stehen für die Konfiguration des Portals zur Verfügung:
429
430 ; Kopfbereich
431 : Über dem Formular angezeigter Inhalt.
432
433 ; Trenner
434 : Bereich, welcher zwischen Formular/Beschreibung und den Teilnahmebedingungen/Datenschutz angezeigt wird.
435
436 ; Fußbereich
437 : Unter Teilnahmebedingungen/Datenschutz angezeigter Inhalt.
438
439 ; Abgelaufen-Overlay
440 : Hier kann eine Grafik definiert werden welche über der Bannergrafik bei einem abgelaufenen Gewinnspiel angezeigt wird.
441
442 ; CSS (Portal)
443 : Innerhalb des Gewinnspiel-Portals zu verwendender CSS-Code.
444
445 ; JavaScript (Portal)
446 : Innerhalb des Gewinnspiel-Portals zu verwendender JavaScript-Code.
447
448 ; HTML header (Portal)
449 : Zusätzlicher HTML-Code, welcher im Headerbereich des Gewinnspiel-Portals verwendet werden soll. Dies können zum Beispiel Metadaten oder Verweise auf andere CSS- oder JavaScript-Dateien sein.
450
451 == Speicherort der Inhalte des Gewinnspiel-Portals ==
452
453 Die unter //Konfiguration// getätigten Einstellungen werden in {{formcycle/}} als Dateien hinterlegt. Diese befinden sich unter [[Dateien und Templates>>doc:Formcycle.UserInterface.FilesAndTemplates.Files]].
454
455 **Es handelt sich um die folgenden Dateien:**
456
457 |=Dateiname|=Inhalt
458 |contest-portal.css.txt|CSS-Code für das Gewinnspiel-Portal; Als txt-Datei hinterlegt, damit es nicht automatisch in alle Formulare eingebunden wird
459 |contest-portal.footer.html|Inhalt des Fußbereiches der Gewinnspiel-Portalseite
460 |contest-portal.header.html|Inhalt des Kopfbereiches der Gewinnspiel-Portalseite
461 |contest-portal.js.txt|JavaScript der Gewinnspiel-Portalseite
462 |contest-portal.meta.html|HTML header der Gewinnspiel-Portalseite
463 |contest-portal.separator.html|Inhalt des Trenners in der Mitte auf der Gewinnspiel-Portalseite
464 |contest-portal.title.html|Titel der Gewinnspiel-Portalseite
465 |expired-overlay.png|Overlay-Grafik welche über dem Gewinnspielbanner angezeigt wird sobald dieses abgelaufen ist
466
467 == JavaScript-Schnittstellen ==
468
469 === Allgemein ===
470
471 Allgemein stehen den Gewinnspielen sowohl in Kontext der Microsite als auch innerhalb des Portals folgende Funktionen zur Verfügung:
472
473 ==== Scrollen zum Seitenanfang: ====
474
475 {{code language="none"}}
476 // Innerhalb des Kontextes
477 Contest.scrollToTop();
478
479 // Innerhalb des Formulares
480 // - falls dies in der selben Domaine betrieben wird
481 window.parent.Contest.scrollToTop();
482
483 // - falls dies nicht in der selben Domaine betrieben wird
484 window.parent.postMessage('scrollToTop', '*');
485
486 // Allgemein ansprechbar über postMessage:
487 <window>.postMessage('scrollToTop', '*');
488 {{/code}}
489
490 ==== Scrollen zu den Teilnahmebedingungen: ====
491
492 {{code language="none"}}
493 // Innerhalb des Kontextes
494 Contest.scrollToTerms();
495
496 // Innerhalb des Formulares
497 // - falls dies in der selben Domaine betrieben wird
498 window.parent.Contest.scrollToTerms();
499
500 // - falls dies nicht in der selben Domaine betrieben wird
501 window.parent.postMessage('scrollToTerms', '*');
502
503 // Allgemein ansprechbar über postMessage:
504 <window>.postMessage('scrollToTerms', '*');
505 {{/code}}
506
507 ==== Scrollen zur Datenschutz-Erklärung: ====
508
509 {{code language="none"}}
510 // Innerhalb des Kontextes
511 Contest.scrollToPrivacy();
512
513 // Innerhalb des Formulares
514 // - falls dies in der selben Domaine betrieben wird
515 window.parent.Contest.scrollToPrivacy();
516
517 // - falls dies nicht in der selben Domaine betrieben wird
518 window.parent.postMessage('scrollToPrivacy', '*');
519
520 // Allgemein ansprechbar über postMessage:
521 <window>.postMessage('scrollToPrivacy', '*');
522
523 {{/code}}
524
525 ==== Scrollen zum Formular: {{version major="1" minor="4"}}{{/version}} ====
526
527 {{code language="none"}}
528 // Innerhalb des Kontextes
529 Contest.scrollToForm();
530
531 // Innerhalb des Formulares
532 // - falls dies in der selben Domaine betrieben wird
533 window.parent.Contest.scrollToForm();
534
535 // - falls dies nicht in der selben Domaine betrieben wird
536 window.parent.postMessage('scrollToForm', '*');
537
538 // Allgemein ansprechbar über postMessage:
539 <window>.postMessage('scrollToForm', '*');
540
541 {{/code}}
542
543 ==== Scrollen zum Anfang des Gewinnspiels: {{version major="1" minor="4"}}{{/version}} ====
544
545 {{code language="none"}}
546 // Innerhalb des Kontextes
547 Contest.scrollToContestTop();
548
549 // Innerhalb des Formulares
550 // - falls dies in der selben Domaine betrieben wird
551 window.parent.Contest.scrollToContestTop();
552
553 // - falls dies nicht in der selben Domaine betrieben wird
554 window.parent.postMessage('scrollToContestTop', '*');
555
556 // Allgemein ansprechbar über postMessage:
557 <window>.postMessage('scrollToContestTop', '*');
558
559 {{/code}}
560
561 ==== Scrollen zum Anfang des Inhaltbereichs: {{version major="1" minor="4"}}{{/version}} ====
562
563 {{code language="none"}}
564 // Innerhalb des Kontextes
565 Contest.scrollToContent();
566
567 // Innerhalb des Formulares
568 // - falls dies in der selben Domaine betrieben wird
569 window.parent.Contest.scrollToContent();
570
571 // - falls dies nicht in der selben Domaine betrieben wird
572 window.parent.postMessage('scrollToContent', '*');
573
574 // Allgemein ansprechbar über postMessage:
575 <window>.postMessage('scrollToContent', '*');
576
577 {{/code}}
578
579 ==== Berechnung eines Scroll-Offsets: {{version major="1" minor="5"}}{{/version}} ====
580
581 Mit der Funktion Contest.calcScrollOffset() steht eine überschreibbare Schnittstelle zur Verfügung, welche innerhalb der Scroll-Funktionen (außer scrollToTop()) gerufen wird um den berechneten Offset anzupassen. So ist es z.B. ggf. nötig bei mobilen Ansichten absolut positionierte Header in diesem mit zu berücksichtigen. Der zurückgegebene Wert wird zum Offset addiert. Die Überlagerung kann innerhalb des Portal-JavaScripts oder innerhalb einer einbettenden Seite stattfinden.
582
583 {{code language="none"}}
584 // Liefert standardmäßig 0 zurück
585 Contest.calcScrollOffset();
586
587 // Reduktion des Scroll-Offsets um 60 Pixel innerhalb einer mobilen Ansicht (Breite kleiner 960px).
588 Contest.calcScrollOffset = function(){
589 if(window.matchMedia('(min-width: 960px)').matches){
590 return 0;
591 }else{
592 return -60;
593 }
594 }
595 {{/code}}
596
597
598 === Portal-spezifisch ===
599
600 Innerhalb des Portals wird für die Carousel-Darstellung die Bibliothekt [[slick>>https://kenwheeler.github.io/slick/||rel="noopener noreferrer" target="_blank"]] verwendet. Dies lässt sich hierbei wie folgt ansprechen und umkonfigurieren:
601
602 {{code language="none"}}
603 // Abholen des entsprechenden Carousel-Objekts
604 var carousel = $('.portal-carousel-images');
605
606 // Beispielhafte konfiguration des Autoplay-Features
607 if (carousel && carousel.length > 0) {
608 carousel.slick('slickSetOption', 'speed', 1000)
609 carousel.slick('slickSetOption', 'autoplaySpeed', 5000);
610 carousel.slick('slickPlay');
611 }
612 {{/code}}
613
614 (% class="wikigeneratedid" id="HSelektioneinesbestimmtenGewinnspiels:" %)
615 Ferner lässt sich die wie folgt ein gewünschtes Gewinnspiel anhand der entsprechenden UUID selektieren:
616
617 {{code language="none"}}
618 // Innerhalb des Kontextes
619 Portal.goToContest(<uuid>);
620
621 // Innerhalb des Formulares
622 // - falls dies in der selben Domaine betrieben wird
623 window.parent.Portal.goToContest(<uuid>);
624
625 // - falls dies nicht in der selben Domaine betrieben wird
626 var data = {
627 msg: 'goToContest',
628 uuid: <uuid>
629 };
630 window.parent.postMessage(data, '*')
631
632 // Allgemein ansprechbar über postMessage:
633 var data = {
634 msg: "goToContest",
635 uuid: <uuid>
636 };
637 <window>.postMessage(data , '*')
638 {{/code}}
639
640 === Microsite-spezifisch ===
641
642 Die Microsite besitzt neben den allgemeinen Funkationalitäten einen postMessage-Proxy welcher alle Nachrichten an das Formular-Fenster weiterreicht. Ferner wird die Bibliothek [[iFrame Resizer>>https://github.com/davidjbradshaw/iframe-resizer||rel="noopener noreferrer" target="_blank"]] bereitgestellt.
643
644 == Einbinden als Microsite ==
645
646 Für die Integration einer Gewinnspiel-Microsite als IFrame stehen verschiedene Hilfsmethoden für das Anpassen der Fenstergröße sowie das Scrolling der Site zur Verfügung. Diese sind hierbei folgende:
647
648 ==== Resizing der IFrame anhand ihres Inhaltes ====
649
650 Hier kommt die Bibliothekt [[iFrame  Resizer>>https://github.com/davidjbradshaw/iframe-resizer||rel="noopener noreferrer" target="_blank"]] zum Einsatz. Es muss hierfür auf der Seite die die Microsite einbindet die Datei //iframeResizer.min.js// einbgebunden und der Resizer beispielsweise wie folgt initialisiert werden:
651
652 {{code language="none"}}
653 iFrameResize({log: false}, '<CSS-Selektor der iframe>');
654 {{/code}}
655
656 ==== Scrolling zu gewünschten Stellen auf der Microsite ====
657
658 Für diese Funktionalität werden an die Zielseite durch die Microsite entsprechende postMessages gesendet. Unter der Verwendung von [[jQuery>>https://jquery.com/||rel="noopener noreferrer" target="_blank"]] kann dessen Auswertung wie folgt stattfinden:
659
660 {{code language="none"}}
661 // Behandelt Messages der Microsite
662 function _handleMessage(event){
663
664 // Prüfung ob es sich um eine Scroll-Message handelt
665 if(event.data.scrollTarget || event.data.scrollOffset){
666
667 // Berechnung des Offsets der iFrame zum Seitenanfang. als scrollTarget sind die Werte "top", "terms" und "privacy" möglich.
668 var frameOffset = (event.data.scrollTarget == 'top') ? 0 : $('<CSS-Selektor der iFrame>').offset().top;
669
670 // Animiertes Scrolling zum Ziel. Dieses ergibt sich aus dem Offset der iFrame und dem Offset der Position innerhalb der iFrame
671 $('html, body').animate({
672 scrollTop : event.data.scrollOffset + frameOffset
673 }, 'slow');
674
675 // Weiterleitung aller weiteren postMessages an die Microsite
676 }else{
677 $('<CSS-Selektor der iFrame>').each(function(){
678 var iframewindow = this.contentWindow ? this.contentWindow : this.contentDocument.defaultView;
679 iframewindow.postMessage(event.data,"*");
680 });
681 }
682 }
683
684 // Registireren der Message-Behandlung
685 if (window.addEventListener) {
686 window.addEventListener('message', _handleMessage, false);
687 } else if (window.attachEvent) { // ie8
688 window.attachEvent('onmessage', _handleMessage);
689 }
690
691 {{/code}}
692
693 {{info}}
694 Wie in diesem Beispiel erkennbar werden alle nicht postMessage-Nachrichten der Zielseite an die Microsite weitergegeben. Dies ist wichtig um z.B. interne Resize-Nachrichten des Formulars bis in die Microsite zu geben!
695 {{/info}}
696
697 == Versionshistorie ==
698
699 === 1.5.0 ===
700
701 * Funktionalität zum Exportieren der aktuellen Teilnehmer-Liste anhand der Porjekt-spezifischen Postfach-Ansicht
702 * JavaScript-Schnittstelle zum Anpassen der Scroll-Offsets
703
704 === 1.4.0 ===
705
706 * Funktionalität zum Ermitteln von Gewinnern und deren Excel-Export
707 * Erweiterung der scrollTo-Funktionen
708 * Kleinere CSS-Anpassungen
709
710 === 1.3.4 ===
711
712 * CSS-Anpassung um einen Layout-Unterschied zwischen Microsmite und Portal-Einbeung zu entfernen
713
714 === 1.3.3 ===
715
716 * Encoden der Vorschau-URLs und Formular-URL für die Unterstützung von deaktivierten Cookies
717 * Korrektur der Formular- und iFrameResizer-URL in der Vorschau
718
719 === 1.3.2 ===
720
721 * Korrektur falscher Bilder in der Lightbox der Gewinnspielübersicht
722
723 === 1.3.1 ===
724
725 * Über den Plugin-Parameter //portal.usebaseurl// kann aktiviert werden, dass für die Gewinnspiel-URLs die hinterlegten Basis-URLs benutzt werden.
726 * Ausgabe der UUID des Gewinnspiels auf entsprechender Konfigurations-Seite
727
728 === 1.3.0 ===
729
730 * Fehlerbehebung beim Ausliefern über den Frontend-Server
731 * Einbau eines iFrame-Resizer für Microseiten
732 * Weitergabe von scroll-Nachrichten an top-window
733
734 === 1.2.4 ===
735
736 * Weiterleitung von postMessage an iframe innerhalb von Microsites
737
738 === 1.2.3 ===
739
740 * Durchreichen von URL-Parametern an IFames im Portal
741 * Fix zum direkten Selektieren eines Gewinnspiels im Portal per URL-Parameter
742
743 === 1.2.2 ===
744
745 * Undo/Redo-Funktionalität an Editoren aktiviert
746 * Zentral pflegbares Overlay für abgelaufene Gewinnspiele eingebaut
747 * Kleinere Anpassungen/Bugfixes
748
749 === 1.2.0 ===
750
751 * Einbinden von grid.css auch in Portal- und Gewinnspiel-Text-Editoren
752 * Überarbeitung des Portal-Layoutings und Anpassung responsiver Breakpoints
753 * Separate Einbindung von jQuery um dass unnötigen Laden von Primefaces zu umgehen
754
755 === 1.1.0 ===
756
757 * Anpassungen für FORMCYCLE Version 6.5.x und PrimeFaces 8
758
759 === 1.0.1 ===
760
761 * Anpassungen für FORMCYCLE Version 6.4.x