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 Durch die Konfiguration der entprechenden Rollenrechte erscheinen die folgenden neuen Menüeinträge auf der Verwaltungsoberfläche:
97
98
99 === Gewinnspiele ===
100
101 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:
102
103 ; Gewinnspiele verwalten
104 : 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"]].
105
106 ; Vorlagen verwalten
107 : 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"]].
108
109 ; Konfiguration
110 : 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"]].
111
112 === Gewinnspiel öffnen ===
113
114 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//.
115
116 == Grundstruktur des Gewinnspiel-Portals ==
117
118 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:
119
120 ; (1) Kopfbereich, (7) Fußbereich und (4) Trenner vom Portal
121 : Diese Elemente werden einmal konfiguriert und werden für alle Gewinnspiele im Gewinnspiel-Portal genutzt.
122
123 ; (2) Bannergrafik, (3) Inhalt (Formular, Beschreibung, ggf. Ankündigungen oder Mitteilungen über den Beginn oder das Ende des Gewinnspiels), (5) Teilnahmebedingungen und (6) Datenschutz
124 : Diese Elemente können für jedes Gewinnspiel individuell konfiguriert werden.
125
126 {{lightbox image="portal_aufbau_de.jpg" group="g0" width="800"/}}
127
128 == Verwaltungsoberfläche im FORMCYCLE Backend ==
129
130 {{id name="backend_gewinnspiele"/}}
131
132 === Gewinnspiele verwalten ===
133
134 {{figure image="gewinnspiele_ui_de.png" clear="h2"}}
135 Verwaltungsoberfläche für den Menüpunkt //Gewinnspiele verwalten//
136 {{/figure}}
137
138 Unter diesem Menüpunkt können die vorhandenen Gewinnspiele verwaltet und neue Gewinnspiele angelegt werden.
139
140 ==== Menü ====
141
142 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.
143
144 Links neben dem Namen des Gewinnspiels wird jeweils ein Symbol angezeigt, welches die folgende Bedeutung hat:
145
146 ; {{ficon name="checkbox-marked-circle"/}}
147 : Ein ausgefüllter Kreis mit Haken bedeutet, dass das Gewinnspiel aktiviert ist und sich aktuell innerhalb des konfigurierten Online-Zeitraumes befindet
148 ; {{ficon name="checkbox-marked-circle-outline"/}}
149 : 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.
150 ; {{ficon name="circle-outline"/}}
151 : Ein leerer Kreis bedeutet, dass das Gewinnspiel momentan nicht aktiv ist
152
153 ==== Einstellungen ====
154
155 {{figure image="gs_onlineeinstellungen_de.png" clear="h2"}}
156 Mögliche Optionen zum Konfigurieren der (datumsabhängigen) Sichtbarkeit des Gewinnspiels und der Positionierung des Beschreibungstextes
157 {{/figure}}
158
159
160 {{html wiki="true"}}
161 <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>
162 {{/html}}
163
164
165 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:
166
167
168 ; **Aktiviert (Das Gewinnspiel ist aufrufbar)**
169 : Das Gewinnspiel kann über einen Link aufgerufen werden
170
171 ; **Gewinnspiel im Portal anzeigen**
172 : 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
173
174 ; **Name des Gewinnspiels:**
175 : Im Portal angezeigter Name des Gewinnspiels. Wird zudem als //title//-Attribut für das {{formcycle/}}-Formular des Gewinnspiels verwendet.
176
177 ; **UUID des Gewinnspiels:**
178 : Gibt die eindeutige UUID des Gewinnspiels aus um dieses identifizieren zu können.
179
180 ; **Online von:**
181 : 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.
182
183 ; **Online bis:**
184 : 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.
185
186 ; **Layout:**
187 : 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:
188 :; **Formular links**
189 :: Der //Beschreibungstext// wird rechts neben dem Formular angezeigt
190 :; **Formular rechts**
191 :: Der //Beschreibungstext// wird links neben dem Formular angezeigt
192 :; **Formular oben**
193 :: Der //Beschreibungstext// wird unter dem Formular angezeigt
194 :; **Formular unten**
195 :: Der //Beschreibungstext// wird über dem Formular angezeigt
196 :; **ohne Beschreibung**
197 :: Es wird nur das Formular und kein //Beschreibungstext// angezeigt
198
199 {{figure image="gs_microsite_de.png" clear="h2"}}
200 Mögliche Optionen zum Öffnen des Gewinnspiels bzw. zum Generieren von Code zum Einbetten des Gewinnspiels im Punkt //Microsite//
201 {{/figure}}
202
203 ; **Microsite**
204 : 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:
205 :; **Öffnen**
206 :: Ö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.
207 :; **Vorschau**
208 :: 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:
209 :; **Vorschau als angekündigt**
210 :: Öffnet das Gewinnspiel so, wie es sichtbar ist, wenn der Zeitpunkt ab dem es online ist noch nicht erreicht wurde.
211 :; **Vorschau als abgelaufen**
212 :: Öffnet das Gewinnspiel so, wie es sichtbar ist, wenn der Zeitpunkt bis zu dem es online war überschritten wurde.
213 :; **Bereitstellen**
214 :: Ö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:
215 ::; **Kopfbereich des Gewinnspiels ausblenden (Bilder)**
216 ::: Wenn diese Option gewählt wird, wird die Bannergrafik nicht angezeigt.
217 ::; **Beschreibung des Gewinnspiels ausblenden**
218 ::: Wenn diese Option gewählt wird, wird die Beschreibung des Gewinnspiels nicht angezeigt, unabhängig davon, was unter //Layout// konfiguriert wurde.
219 ::; **Fußbereich des Gewinnspiels ausblenden (Datenschutz & Teilnahmebedingungen)**
220 ::: Wenn diese Option gewählt wird, werden die für das Gewinnspiel konfigurierten Inhalte für //Datenschutz// und //Teilnahmebedingungen// nicht angezeigt.
221 ::; **Zu verwendender Server**
222 ::: Auswahl, über welchen Server das Gewinnspiel geöffnet werden soll. Zur Auswahl stehen Master- und eventuell vorhande Frontend-Server.
223 :: 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.
224 :: 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:
225 :; **Bereitstellen als HTML Link**
226 :: Generiert Quellcode, mit dem das Gewinnspiel direkt als HTML-Code in eine Webseite eingebunden werden kann.
227 :; **Bereitstellen als Inlineframe**
228 :: Generiert Quellcode, mit dem das Gewinnspiel als Inlineframe in eine Webseite eingebunden werden kann.
229 :; **Bereitstellen als Ajax/JavaScript**
230 :: Generiert Quellcode, mit dem das Gewinnspiel per Ajax (JavaScript) in eine Webseite eingebunden werden kann.
231
232 {{figure image="gs_inhalt_de.png" clear="h2"}}
233 Quellcode-Ansicht eines Editors im Reiter //Teilnahmebedingungen// von //Inhalt//.
234 {{/figure}}
235
236 ; **Inhalt**
237 : 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.
238 : Folgende Inhalte können an dieser Stelle konfiguriert werden:
239 :; **Beschreibung**
240 :: Beschreibungstext zum Gewinnspiel. Wird neben bzw. über oder unter dem Formular angezeigt.
241 :; **Teilnahmebedingungen**
242 :: Teilnahmebedingungen des Gewinnspiels. Wird im Portal unterhalb des Trenners neben dem //Datenschutz// angezeigt.
243 :; **Datenschutz**
244 :: Datenschutzbedingungen des Gewinnspiels. Wird im Portal unterhalb des Trenners neben den //Teilnahmebedingungen// angezeigt.
245 :; **Ankündigung**
246 :: Inhalt, welcher anstelle vom Formular und dem Beschreibungstext angezeigt wird, wenn das Gewinnspiel noch nicht gestartet ist.
247 :; **Abgelaufen**
248 :: Inhalt, welcher anstelle vom Formular und dem Beschreibungstext angezeigt wird, nachdem das Gewinnspiel beendet wurde.
249 :; **CSS (Microsite)**
250 :: Zusätzlicher CSS-Code, welcher nur für dieses Gewinnspiel verwendet werden soll.
251 :; **JavaScript (Microsite)**
252 :: Zusätzlicher JavaScript-Code, welcher nur für dieses Gewinnspiel verwendet werden soll.
253 :; **HTML header (Microsite)**
254 :: 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.
255
256 {{figure image="gs_bannergrafiken_de.png" clear="h2"}}
257 Vorhandene Schaltflächen unter //Bannergrafiken//.
258 {{/figure}}
259
260 ; Bannergrafiken
261 : 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:
262 :: **Desktop** - ab 1026 px Bildschirmbreite; Muss konfiguriert werden
263 :: **Tablet** - zwischen 642 px und 1025 px Bildschirmbreite
264 :: **Mobile** - bei 641 px oder weniger Bildschirmbreite
265 : 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.
266
267 : Die folgenden Schaltflächen dienen der Konfiguration der Bannergrafiken:
268 :; **Desktop**, **Tablet** und **Mobile**
269 :: Durch anklicken dieser Schaltflächen kann zwischen den Grafiken für die einzelnen Geräteklassen gewchselt werden
270 :; **+ Bannergrafik ändern**
271 :: Ö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.
272 :; {{ficon name="trash-alt2"/}}-Symbol rechts neben dem Dateinamen einer bereits vorhandenen Grafik
273 :: Löschen der Grafik
274
275 ==== Fußzeile ====
276
277 Hier befinden sich die folgenden zwei Schaltflächen:
278
279 ; **Formular bearbeiten**
280 : Ö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.
281
282 ; **Gewinner ermitteln** {{version major="1" minor="4"}}{{/version}}
283 : 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.
284
285 ; **Ersatzgewinner ermitteln** {{version major="1" minor="4"}}{{/version}}
286 : 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.
287
288 ; **Teilnehmer exportieren** {{version major="1" minor="5"}}{{/version}}
289 : 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.
290
291 ; **Speichern**
292 : Speichert die auf dieser Seite gemachten Einstellungen bzw. Änderungen an den Einstellungen.
293 \\\\{{id name="backend_vorlagen"/}}
294
295 === Gewinner ermitteln {{version major="1" minor="4"}}{{/version}} ===
296
297 Sobald der Teilnahmezeitraum abgelaufen ist oder ein Gewinnspiel deaktiviert wurde ist es mit den entsprechenden Berechtigungen möglich Gewinner zu ermitteln.
298
299 {{figure image="dialog_1_de.png" clear="h2"}}
300 Dialog zu Konfiguration der Gewinnerziehung.
301 {{/figure}}
302
303 ==== Konfiguration ====
304
305 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.
306
307 {{figure image="dialog_2_de.png" clear="h2"}}
308 Anzeige der ermittelten Gewinner
309 {{/figure}}
310
311 ==== Asuwertung ====
312
313 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.
314
315
316 ==== Gewinner nachziehen ====
317
318 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.
319
320
321 === Vorlagen verwalten ===
322
323 {{figure image="vorlagen_ui_de.png" clear="h2"}}
324 Verwaltungsoberfläche für den Menüpunkt //Vorlagen verwalten//.
325 {{/figure}}
326
327 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.
328
329 ==== Menü ====
330
331 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.
332
333 ==== Einstellungen ====
334
335 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:
336
337 ; **Name der Vorlage:**
338 : Innerhalb von {{formcycle/}} angezeigter Name der Vorlage.
339
340 ; **Layout:**
341 : 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:
342 :; **Formular links**
343 :: Der //Beschreibungstext// wird rechts neben dem Formular angezeigt
344 :; **Formular rechts**
345 :: Der //Beschreibungstext// wird links neben dem Formular angezeigt
346 :; **Formular oben**
347 :: Der //Beschreibungstext// wird unter dem Formular angezeigt
348 :; **Formular unten**
349 :: Der //Beschreibungstext// wird über dem Formular angezeigt
350 :; **ohne Beschreibung**
351 :: Es wird nur das Formular und kein //Beschreibungstext// angezeigt
352
353 ; **Microsite**
354 : 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:
355 :; **Vorschau**
356 :: 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:
357 :; **Vorschau als angekündigt**
358 :: Öffnet die Gewinnspiel-Vorlage so, wie das Gewinnspiel sichtbar ist, wenn der Zeitpunkt ab dem es online ist noch nicht erreicht wurde.
359 :; **Vorschau als abgelaufen**
360 :: Öffnet die Gewinnspiel-Vorlage so, wie das Gewinnspiel sichtbar ist, wenn der Zeitpunkt bis zu dem es online war überschritten wurde.
361
362 {{figure image="gs_inhalt_de.png" clear="h2"}}
363 Quellcode-Ansicht eines Editors im Reiter //Teilnahmebedingungen// von //Inhalt//.
364 {{/figure}}
365
366 ; **Inhalt**
367 : 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.
368 : Folgende Inhalte können an dieser Stelle konfiguriert werden:
369 :; **Beschreibung**
370 :: Beschreibungstext der Gewinnspiel-Vorlage. Wird neben bzw. über oder unter dem Formular angezeigt.
371 :; **Teilnahmebedingungen**
372 :: Teilnahmebedingungen der Gewinnspiel-Vorlage. Wird im Portal unterhalb des Trenners neben dem //Datenschutz// angezeigt.
373 :; **Datenschutz**
374 :: Datenschutzbedingungen der Gewinnspiel-Vorlage. Wird im Portal unterhalb des Trenners neben den //Teilnahmebedingungen// angezeigt.
375 :; **Ankündigung**
376 :: Inhalt, welcher anstelle vom Formular und dem Beschreibungstext angezeigt wird, wenn das Gewinnspiel noch nicht gestartet ist.
377 :; **Abgelaufen**
378 :: Inhalt, welcher anstelle vom Formular und dem Beschreibungstext angezeigt wird, nachdem das Gewinnspiel beendet wurde.
379 :; **CSS (Microsite)**
380 :: Zusätzlicher CSS-Code, welcher nur für diese Gewinnspiel-Vorlage verwendet werden soll.
381 :; **JavaScript (Microsite)**
382 :: Zusätzlicher JavaScript-Code, welcher nur für diese Gewinnspiel-Vorlage verwendet werden soll.
383 :; **HTML header (Microsite)**
384 :: 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.
385
386 {{figure image="gs_bannergrafiken_de.png" clear="h2"}}
387 Vorhandene Schaltflächen unter //Bannergrafiken//.
388 {{/figure}}
389
390 ; Bannergrafiken
391 : 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:
392 :: **Desktop** - ab 1026 px Bildschirmbreite; Muss konfiguriert werden
393 :: **Tablet** - zwischen 642 px und 1025 px Bildschirmbreite
394 :: **Mobile** - bei 641 px oder weniger Bildschirmbreite
395 : 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.
396
397 : Die folgenden Schaltflächen dienen der Konfiguration der Bannergrafiken:
398 :; **Desktop**, **Tablet** und **Mobile**
399 :: Durch anklicken dieser Schaltflächen kann zwischen den Grafiken für die einzelnen Geräteklassen gewchselt werden
400 :; **+ Bannergrafik ändern**
401 :: Ö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.
402 :; {{ficon name="trash-alt2"/}}-Symbol rechts neben dem Dateinamen einer bereits vorhandenen Grafik
403 :: Löschen der Grafik
404
405 ==== Fußzeile ====
406
407 Hier befinden sich die folgenden zwei Schaltflächen:
408
409 ; **Formular bearbeiten**
410 : Ö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.
411
412 ; **Speichern**
413 : Speichert die auf dieser Seite gemachten Einstellungen bzw. Änderungen an den Einstellungen.
414 \\\\{{id name="backend_portal"/}}
415
416 === Konfiguration ===
417
418 {{figure image="portal_ui_de.png" clear="h2"}}
419 Verwaltungsoberfläche für den Menüpunkt //Portal konfigurieren//.
420 {{/figure}}
421
422 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:
423
424 ; Kopfbereich
425 : Über dem Formular angezeigter Inhalt.
426
427 ; Trenner
428 : Bereich, welcher zwischen Formular/Beschreibung und den Teilnahmebedingungen/Datenschutz angezeigt wird.
429
430 ; Fußbereich
431 : Unter Teilnahmebedingungen/Datenschutz angezeigter Inhalt.
432
433 ; Abgelaufen-Overlay
434 : Hier kann eine Grafik definiert werden welche über der Bannergrafik bei einem abgelaufenen Gewinnspiel angezeigt wird.
435
436 ; CSS (Portal)
437 : Innerhalb des Gewinnspiel-Portals zu verwendender CSS-Code.
438
439 ; JavaScript (Portal)
440 : Innerhalb des Gewinnspiel-Portals zu verwendender JavaScript-Code.
441
442 ; HTML header (Portal)
443 : 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.
444
445 == Speicherort der Inhalte des Gewinnspiel-Portals ==
446
447 Die unter //Konfiguration// getätigten Einstellungen werden in {{formcycle/}} als Dateien hinterlegt. Diese befinden sich unter [[Dateien und Templates>>doc:Formcycle.UserInterface.FilesAndTemplates.Files]].
448
449 **Es handelt sich um die folgenden Dateien:**
450
451 |=Dateiname|=Inhalt
452 |contest-portal.css.txt|CSS-Code für das Gewinnspiel-Portal; Als txt-Datei hinterlegt, damit es nicht automatisch in alle Formulare eingebunden wird
453 |contest-portal.footer.html|Inhalt des Fußbereiches der Gewinnspiel-Portalseite
454 |contest-portal.header.html|Inhalt des Kopfbereiches der Gewinnspiel-Portalseite
455 |contest-portal.js.txt|JavaScript der Gewinnspiel-Portalseite
456 |contest-portal.meta.html|HTML header der Gewinnspiel-Portalseite
457 |contest-portal.separator.html|Inhalt des Trenners in der Mitte auf der Gewinnspiel-Portalseite
458 |contest-portal.title.html|Titel der Gewinnspiel-Portalseite
459 |expired-overlay.png|Overlay-Grafik welche über dem Gewinnspielbanner angezeigt wird sobald dieses abgelaufen ist
460
461 == JavaScript-Schnittstellen ==
462
463 === Allgemein ===
464
465 Allgemein stehen den Gewinnspielen sowohl in Kontext der Microsite als auch innerhalb des Portals folgende Funktionen zur Verfügung:
466
467 ==== Scrollen zum Seitenanfang: ====
468
469 {{code language="none"}}
470 // Innerhalb des Kontextes
471 Contest.scrollToTop();
472
473 // Innerhalb des Formulares
474 // - falls dies in der selben Domaine betrieben wird
475 window.parent.Contest.scrollToTop();
476
477 // - falls dies nicht in der selben Domaine betrieben wird
478 window.parent.postMessage('scrollToTop', '*');
479
480 // Allgemein ansprechbar über postMessage:
481 <window>.postMessage('scrollToTop', '*');
482 {{/code}}
483
484 ==== Scrollen zu den Teilnahmebedingungen: ====
485
486 {{code language="none"}}
487 // Innerhalb des Kontextes
488 Contest.scrollToTerms();
489
490 // Innerhalb des Formulares
491 // - falls dies in der selben Domaine betrieben wird
492 window.parent.Contest.scrollToTerms();
493
494 // - falls dies nicht in der selben Domaine betrieben wird
495 window.parent.postMessage('scrollToTerms', '*');
496
497 // Allgemein ansprechbar über postMessage:
498 <window>.postMessage('scrollToTerms', '*');
499 {{/code}}
500
501 ==== Scrollen zur Datenschutz-Erklärung: ====
502
503 {{code language="none"}}
504 // Innerhalb des Kontextes
505 Contest.scrollToPrivacy();
506
507 // Innerhalb des Formulares
508 // - falls dies in der selben Domaine betrieben wird
509 window.parent.Contest.scrollToPrivacy();
510
511 // - falls dies nicht in der selben Domaine betrieben wird
512 window.parent.postMessage('scrollToPrivacy', '*');
513
514 // Allgemein ansprechbar über postMessage:
515 <window>.postMessage('scrollToPrivacy', '*');
516
517 {{/code}}
518
519 ==== Scrollen zum Formular: {{version major="1" minor="4"}}{{/version}} ====
520
521 {{code language="none"}}
522 // Innerhalb des Kontextes
523 Contest.scrollToForm();
524
525 // Innerhalb des Formulares
526 // - falls dies in der selben Domaine betrieben wird
527 window.parent.Contest.scrollToForm();
528
529 // - falls dies nicht in der selben Domaine betrieben wird
530 window.parent.postMessage('scrollToForm', '*');
531
532 // Allgemein ansprechbar über postMessage:
533 <window>.postMessage('scrollToForm', '*');
534
535 {{/code}}
536
537 ==== Scrollen zum Anfang des Gewinnspiels: {{version major="1" minor="4"}}{{/version}} ====
538
539 {{code language="none"}}
540 // Innerhalb des Kontextes
541 Contest.scrollToContestTop();
542
543 // Innerhalb des Formulares
544 // - falls dies in der selben Domaine betrieben wird
545 window.parent.Contest.scrollToContestTop();
546
547 // - falls dies nicht in der selben Domaine betrieben wird
548 window.parent.postMessage('scrollToContestTop', '*');
549
550 // Allgemein ansprechbar über postMessage:
551 <window>.postMessage('scrollToContestTop', '*');
552
553 {{/code}}
554
555 ==== Scrollen zum Anfang des Inhaltbereichs: {{version major="1" minor="4"}}{{/version}} ====
556
557 {{code language="none"}}
558 // Innerhalb des Kontextes
559 Contest.scrollToContent();
560
561 // Innerhalb des Formulares
562 // - falls dies in der selben Domaine betrieben wird
563 window.parent.Contest.scrollToContent();
564
565 // - falls dies nicht in der selben Domaine betrieben wird
566 window.parent.postMessage('scrollToContent', '*');
567
568 // Allgemein ansprechbar über postMessage:
569 <window>.postMessage('scrollToContent', '*');
570
571 {{/code}}
572
573 ==== Berechnung eines Scroll-Offsets: {{version major="1" minor="5"}}{{/version}} ====
574
575 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.
576
577 {{code language="none"}}
578 // Liefert standardmäßig 0 zurück
579 Contest.calcScrollOffset();
580
581 // Reduktion des Scroll-Offsets um 60 Pixel innerhalb einer mobilen Ansicht (Breite kleiner 960px).
582 Contest.calcScrollOffset = function(){
583 if(window.matchMedia('(min-width: 960px)').matches){
584 return 0;
585 }else{
586 return -60;
587 }
588 }
589 {{/code}}
590
591
592 === Portal-spezifisch ===
593
594 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:
595
596 {{code language="none"}}
597 // Abholen des entsprechenden Carousel-Objekts
598 var carousel = $('.portal-carousel-images');
599
600 // Beispielhafte konfiguration des Autoplay-Features
601 if (carousel && carousel.length > 0) {
602 carousel.slick('slickSetOption', 'speed', 1000)
603 carousel.slick('slickSetOption', 'autoplaySpeed', 5000);
604 carousel.slick('slickPlay');
605 }
606 {{/code}}
607
608 (% class="wikigeneratedid" id="HSelektioneinesbestimmtenGewinnspiels:" %)
609 Ferner lässt sich die wie folgt ein gewünschtes Gewinnspiel anhand der entsprechenden UUID selektieren:
610
611 {{code language="none"}}
612 // Innerhalb des Kontextes
613 Portal.goToContest(<uuid>);
614
615 // Innerhalb des Formulares
616 // - falls dies in der selben Domaine betrieben wird
617 window.parent.Portal.goToContest(<uuid>);
618
619 // - falls dies nicht in der selben Domaine betrieben wird
620 var data = {
621 msg: 'goToContest',
622 uuid: <uuid>
623 };
624 window.parent.postMessage(data, '*')
625
626 // Allgemein ansprechbar über postMessage:
627 var data = {
628 msg: "goToContest",
629 uuid: <uuid>
630 };
631 <window>.postMessage(data , '*')
632 {{/code}}
633
634 === Microsite-spezifisch ===
635
636 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.
637
638 == Einbinden als Microsite ==
639
640 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:
641
642 ==== Resizing der IFrame anhand ihres Inhaltes ====
643
644 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:
645
646 {{code language="none"}}
647 iFrameResize({log: false}, '<CSS-Selektor der iframe>');
648 {{/code}}
649
650 ==== Scrolling zu gewünschten Stellen auf der Microsite ====
651
652 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:
653
654 {{code language="none"}}
655 // Behandelt Messages der Microsite
656 function _handleMessage(event){
657
658 // Prüfung ob es sich um eine Scroll-Message handelt
659 if(event.data.scrollTarget || event.data.scrollOffset){
660
661 // Berechnung des Offsets der iFrame zum Seitenanfang. als scrollTarget sind die Werte "top", "terms" und "privacy" möglich.
662 var frameOffset = (event.data.scrollTarget == 'top') ? 0 : $('<CSS-Selektor der iFrame>').offset().top;
663
664 // Animiertes Scrolling zum Ziel. Dieses ergibt sich aus dem Offset der iFrame und dem Offset der Position innerhalb der iFrame
665 $('html, body').animate({
666 scrollTop : event.data.scrollOffset + frameOffset
667 }, 'slow');
668
669 // Weiterleitung aller weiteren postMessages an die Microsite
670 }else{
671 $('<CSS-Selektor der iFrame>').each(function(){
672 var iframewindow = this.contentWindow ? this.contentWindow : this.contentDocument.defaultView;
673 iframewindow.postMessage(event.data,"*");
674 });
675 }
676 }
677
678 // Registireren der Message-Behandlung
679 if (window.addEventListener) {
680 window.addEventListener('message', _handleMessage, false);
681 } else if (window.attachEvent) { // ie8
682 window.attachEvent('onmessage', _handleMessage);
683 }
684
685 {{/code}}
686
687 {{info}}
688 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!
689 {{/info}}
690
691 == Versionshistorie ==
692
693 === 1.5.0 ===
694
695 * Funktionalität zum Exportieren der aktuellen Teilnehmer-Liste anhand der Porjekt-spezifischen Postfach-Ansicht
696 * JavaScript-Schnittstelle zum Anpassen der Scroll-Offsets
697
698 === 1.4.0 ===
699
700 * Funktionalität zum Ermitteln von Gewinnern und deren Excel-Export
701 * Erweiterung der scrollTo-Funktionen
702 * Kleinere CSS-Anpassungen
703
704 === 1.3.4 ===
705
706 * CSS-Anpassung um einen Layout-Unterschied zwischen Microsmite und Portal-Einbeung zu entfernen
707
708 === 1.3.3 ===
709
710 * Encoden der Vorschau-URLs und Formular-URL für die Unterstützung von deaktivierten Cookies
711 * Korrektur der Formular- und iFrameResizer-URL in der Vorschau
712
713 === 1.3.2 ===
714
715 * Korrektur falscher Bilder in der Lightbox der Gewinnspielübersicht
716
717 === 1.3.1 ===
718
719 * Über den Plugin-Parameter //portal.usebaseurl// kann aktiviert werden, dass für die Gewinnspiel-URLs die hinterlegten Basis-URLs benutzt werden.
720 * Ausgabe der UUID des Gewinnspiels auf entsprechender Konfigurations-Seite
721
722 === 1.3.0 ===
723
724 * Fehlerbehebung beim Ausliefern über den Frontend-Server
725 * Einbau eines iFrame-Resizer für Microseiten
726 * Weitergabe von scroll-Nachrichten an top-window
727
728 === 1.2.4 ===
729
730 * Weiterleitung von postMessage an iframe innerhalb von Microsites
731
732 === 1.2.3 ===
733
734 * Durchreichen von URL-Parametern an IFames im Portal
735 * Fix zum direkten Selektieren eines Gewinnspiels im Portal per URL-Parameter
736
737 === 1.2.2 ===
738
739 * Undo/Redo-Funktionalität an Editoren aktiviert
740 * Zentral pflegbares Overlay für abgelaufene Gewinnspiele eingebaut
741 * Kleinere Anpassungen/Bugfixes
742
743 === 1.2.0 ===
744
745 * Einbinden von grid.css auch in Portal- und Gewinnspiel-Text-Editoren
746 * Überarbeitung des Portal-Layoutings und Anpassung responsiver Breakpoints
747 * Separate Einbindung von jQuery um dass unnötigen Laden von Primefaces zu umgehen
748
749 === 1.1.0 ===
750
751 * Anpassungen für FORMCYCLE Version 6.5.x und PrimeFaces 8
752
753 === 1.0.1 ===
754
755 * Anpassungen für FORMCYCLE Version 6.4.x