Browse code

Initial commit

Benjamin Roth authored on16/03/2023 20:22:35
Showing1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,213 @@
1
+<?php
2
+// rsce_my_element_config.php
3
+return array(
4
+    'label' => array('Custom | Slider mit Video, optional in modaler Box', ''),
5
+    'types' => array('content'),
6
+    'contentCategory' => 'texts',
7
+    'moduleCategory' => 'miscellaneous',
8
+    'standardFields' => array('headline', 'cssID'),
9
+    'wrapper' => array(
10
+        'type' => 'none',
11
+    ),
12
+    'fields' => array(
13
+        'topline' => array(
14
+            'label' => array('Topline', 'Text oberhalb der Überschrift'),
15
+            'inputType' => 'text',
16
+        ),
17
+        'subline' => array(
18
+            'label' => array('Subline', 'Text unterhalb der Überschrift'),
19
+            'inputType' => 'text',
20
+        ),
21
+        'animation_type' => array(
22
+            'label' => array(
23
+                'de' => array('Art der Einblendeanimation', 'Siehe https://animate.style/ für Beispiele'),
24
+            ),
25
+            'inputType' => 'select',
26
+            'options' => array(
27
+                /* Fading entrances  */
28
+                'animate__fadeInUp' => 'fadeInUp (Meistens Standard)',
29
+                'no-animation' => 'Keine Animation',
30
+                'animate__fadeIn' => 'fadeIn',
31
+                'animate__fadeInDown' => 'fadeInDown',
32
+                'animate__fadeInDownBig' => 'fadeInDownBig',
33
+                'animate__fadeInLeft' => 'fadeInLeft',
34
+                'animate__fadeInLeftBig' => 'fadeInLeftBig',
35
+                'animate__fadeInRight' => 'fadeInRight',
36
+                'animate__fadeInRightBig' => 'fadeInRightBig',
37
+                'animate__fadeInUpBig' => 'fadeInUpBig',
38
+                'animate__fadeInTopLeft' => 'fadeInTopLeft',
39
+                'animate__fadeInTopRight' => 'fadeInTopRight',
40
+                'animate__fadeInBottomLeft' => 'fadeInBottomLeft',
41
+                'animate__fadeInBottomRight' => 'fadeInBottomRight',
42
+                /* Attention seekers  */
43
+                'animate__bounce' => 'bounce',
44
+                'animate__flash' => 'flash',
45
+                'animate__pulse' => 'pulse',
46
+                'animate__rubberBand' => 'rubberBand',
47
+                'animate__shakeX' => 'shakeX',
48
+                'animate__shakeY' => 'shakeY',
49
+                'animate__headShake' => 'headShake',
50
+                'animate__swing' => 'swing',
51
+                'animate__tada' => 'tada',
52
+                'animate__wobble' => 'wobble',
53
+                'animate__jello' => 'jello',
54
+                'animate__heartBeat' => 'heartBeat',
55
+                /* Back entrances */
56
+                'animate__backInDown' => 'backInDown',
57
+                'animate__backInLeft' => 'backInLeft',
58
+                'animate__backInRight' => 'backInRight',
59
+                'animate__backInUp' => 'backInUp',
60
+                /* Back exits */
61
+                'animate__backOutDown' => 'backOutDown',
62
+                'animate__backOutLeft' => 'backOutLeft',
63
+                'animate__backOutRight' => 'backOutRight',
64
+                'animate__backOutUp' => 'backOutUp',
65
+                /* Bouncing entrances  */
66
+                'animate__bounceIn' => 'bounceIn',
67
+                'animate__bounceInDown' => 'bounceInDown',
68
+                'animate__bounceInLeft' => 'bounceInLeft',
69
+                'animate__bounceInRight' => 'bounceInRight',
70
+                'animate__bounceInUp' => 'bounceInUp',
71
+                /* Bouncing exits  */
72
+                'animate__bounceOut' => 'bounceOut',
73
+                'animate__bounceOutDown' => 'bounceOutDown',
74
+                'animate__bounceOutLeft' => 'bounceOutLeft',
75
+                'animate__bounceOutRight' => 'bounceOutRight',
76
+                'animate__bounceOutUp' => 'bounceOutUp',
77
+                /* Fading exits */
78
+                'animate__fadeOut' => 'fadeOut',
79
+                'animate__fadeOutDown' => 'fadeOutDown',
80
+                'animate__fadeOutDownBig' => 'fadeOutDownBig',
81
+                'animate__fadeOutLeft' => 'fadeOutLeft',
82
+                'animate__fadeOutLeftBig' => 'fadeOutLeftBig',
83
+                'animate__fadeOutRight' => 'fadeOutRight',
84
+                'animate__fadeOutRightBig' => 'fadeOutRightBig',
85
+                'animate__fadeOutUp' => 'fadeOutUp',
86
+                'animate__fadeOutUpBig' => 'fadeOutUpBig',
87
+                'animate__fadeOutTopLeft' => 'fadeOutTopLeft',
88
+                'animate__fadeOutTopRight' => 'fadeOutTopRight',
89
+                'animate__fadeOutBottomRight' => 'fadeOutBottomRight',
90
+                'animate__fadeOutBottomLeft' => 'fadeOutBottomLeft',
91
+                /* Flippers */
92
+                'animate__flip' => 'flip',
93
+                'animate__flipInX' => 'flipInX',
94
+                'animate__flipInY' => 'flipInY',
95
+                'animate__flipOutX' => 'flipOutX',
96
+                'animate__flipOutY' => 'flipOutY',
97
+                /* Lightspeed */
98
+                'animate__lightSpeedInRight' => 'lightSpeedInRight',
99
+                'animate__lightSpeedInLeft' => 'lightSpeedInLeft',
100
+                'animate__lightSpeedOutRight' => 'lightSpeedOutRight',
101
+                'animate__lightSpeedOutLeft' => 'lightSpeedOutLeft',
102
+                /* Rotating entrances */
103
+                'animate__rotateIn' => 'rotateIn',
104
+                'animate__rotateInDownLeft' => 'rotateInDownLeft',
105
+                'animate__rotateInDownRight' => 'rotateInDownRight',
106
+                'animate__rotateInUpLeft' => 'rotateInUpLeft',
107
+                'animate__rotateInUpRight' => 'rotateInUpRight',
108
+                /* Rotating exits */
109
+                'animate__rotateOut' => 'rotateOut',
110
+                'animate__rotateOutDownLeft' => 'rotateOutDownLeft',
111
+                'animate__rotateOutDownRight' => 'rotateOutDownRight',
112
+                'animate__rotateOutUpLeft' => 'rotateOutUpLeft',
113
+                'animate__rotateOutUpRight' => 'rotateOutUpRight',
114
+                /* Specials */
115
+                'animate__hinge' => 'hinge',
116
+                'animate__jackInTheBox' => 'jackInTheBox',
117
+                'animate__rollIn' => 'rollIn',
118
+                'animate__rollOut' => 'rollOut',
119
+                /* Zooming entrances */
120
+                'animate__zoomIn' => 'zoomIn',
121
+                'animate__zoomInDown' => 'zoomInDown',
122
+                'animate__zoomInLeft' => 'zoomInLeft',
123
+                'animate__zoomInRight' => 'zoomInRight',
124
+                'animate__zoomInUp' => 'zoomInUp',
125
+                /* Zooming exits */
126
+                'animate__zoomOut' => 'zoomOut',
127
+                'animate__zoomOutDown' => 'zoomOutDown',
128
+                'animate__zoomOutLeft' => 'zoomOutLeft',
129
+                'animate__zoomOutRight' => 'zoomOutRight',
130
+                'animate__zoomOutUp' => 'zoomOutUp',
131
+                /* Sliding entrances */
132
+                'animate__slideInDown' => 'slideInDown',
133
+                'animate__slideInLeft' => 'slideInLeft',
134
+                'animate__slideInRight' => 'slideInRight',
135
+                'animate__slideInUp' => 'slideInUp',
136
+                /* Sliding exits */
137
+                'animate__slideOutDown' => 'slideOutDown',
138
+                'animate__slideOutLeft' => 'slideOutLeft',
139
+                'animate__slideOutRight' => 'slideOutRight',
140
+                'animate__slideOutUp' => 'slideOutUp',
141
+            ),
142
+            'eval' => array('chosen' => 'true')
143
+        ),
144
+        'fullwidth' => array(
145
+            'label' => array('Boxen auf die volle Breite des Viewports anzeigen', 'Funktioniert nicht innerhalb von Elementen'),
146
+            'inputType' => 'checkbox',
147
+        ),
148
+        'columns' => array(
149
+            'label' => array(
150
+                'de' => array('Anzahl der Spalten im Slider', ''),
151
+            ),
152
+            'inputType' => 'select',
153
+            'options' => array(
154
+                '1' => '1 Spaltig',
155
+                '2' => '2 Spaltig',
156
+                '3' => '3 Spaltig',
157
+                '4' => '4 Spaltig',
158
+                '6' => '6 Spaltig',
159
+            ),
160
+        ),
161
+        'gutter' => array(
162
+            'label' => array('Abstand zwischen den Slides', ''),
163
+            'inputType' => 'text',
164
+        ),
165
+        'elements' => array(
166
+            'label' => array('Elemente', ''),
167
+            'elementLabel' => '%s. Element',
168
+            'inputType' => 'list',
169
+            'minItems' => 1,
170
+            'maxItems' => 999,
171
+            'fields' => array(
172
+                'video_id' => array(
173
+                    'label' => array('Youtube-Video ID', 'in der URL nach /watch?v='),
174
+                    'inputType' => 'text',
175
+                ),
176
+
177
+                'video_type' => array(
178
+                    'label' => array('Video... ', ''),
179
+                    'inputType' => 'radio',
180
+                    'options' => array(
181
+                        'modal' => '...in modalem Fenster darstellen',
182
+                        'inline' => '...als Youtube-Iframe einbinden',
183
+                        'new_tab' => '...in neuem Tab öffnen',
184
+                    ),
185
+                ),
186
+
187
+                'image' => array(
188
+                    'label' => array('Vorschaubild', ''),
189
+                    'inputType' => 'fileTree',
190
+                    'eval' => array(
191
+                        'multiple' => false,
192
+                        'fieldType' => 'radio',
193
+                        'filesOnly' => true,
194
+                        'extensions' => 'jpg,jpeg,png,svg',
195
+                    ),
196
+                    'dependsOn' => array(
197
+                        'field' => 'video_type',
198
+                        'value' => ['modal', 'new_tab'],
199
+                    ),
200
+                ),
201
+
202
+                'text' => array(
203
+                    'label' => array('Bezeichnung', ''),
204
+                    'inputType' => 'text',
205
+                ),
206
+                'longtext' => array(
207
+                    'label' => array('Beschreibung', ''),
208
+                    'inputType' => 'text',
209
+                ),
210
+            ),
211
+        ),
212
+    ),
213
+);