pageflow 15.7.1 → 16.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (201) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +33 -243
  3. data/README.md +1 -9
  4. data/Rakefile +4 -1
  5. data/admins/pageflow/accounts.rb +12 -16
  6. data/admins/pageflow/entry.rb +57 -28
  7. data/admins/pageflow/entry_templates.rb +5 -7
  8. data/admins/pageflow/sites.rb +50 -0
  9. data/admins/pageflow/user.rb +7 -0
  10. data/app/assets/javascripts/pageflow/admin/entries.js +53 -4
  11. data/app/assets/stylesheets/pageflow/admin/permalink_input.scss +65 -0
  12. data/app/assets/stylesheets/pageflow/admin.scss +1 -0
  13. data/app/assets/stylesheets/pageflow/editor/base.scss +2 -6
  14. data/app/assets/stylesheets/pageflow/editor/dialogs.scss +2 -0
  15. data/app/assets/stylesheets/pageflow/editor/drop_down_button.scss +9 -0
  16. data/app/assets/stylesheets/pageflow/editor/info_box.scss +13 -3
  17. data/app/assets/stylesheets/pageflow/mixins/buttons.scss +1 -0
  18. data/app/assets/stylesheets/pageflow/page.scss +0 -2
  19. data/app/assets/stylesheets/pageflow/themes/default/page.scss +1 -1
  20. data/app/assets/stylesheets/pageflow/ui/forms.scss +4 -1
  21. data/app/controllers/pageflow/editor/file_import_controller.rb +32 -42
  22. data/app/controllers/pageflow/entries_controller.rb +27 -3
  23. data/app/helpers/pageflow/admin/permalinks_helper.rb +15 -0
  24. data/app/helpers/pageflow/common_entry_seed_helper.rb +1 -1
  25. data/app/helpers/pageflow/embed_code_helper.rb +1 -1
  26. data/app/helpers/pageflow/entries_helper.rb +25 -17
  27. data/app/helpers/pageflow/sites_helper.rb +11 -0
  28. data/app/helpers/pageflow/social_share_helper.rb +2 -2
  29. data/app/inputs/pageflow_permalink_input.rb +47 -0
  30. data/app/models/concerns/pageflow/permalinkable.rb +12 -0
  31. data/app/models/concerns/pageflow/reusable_file.rb +5 -0
  32. data/app/models/concerns/pageflow/uploadable_file.rb +4 -0
  33. data/app/models/pageflow/account.rb +7 -33
  34. data/app/models/pageflow/{cname_theming_request_scope.rb → cname_site_request_scope.rb} +3 -3
  35. data/app/models/pageflow/customized_theme.rb +5 -3
  36. data/app/models/pageflow/entry.rb +8 -4
  37. data/app/models/pageflow/entry_at_revision.rb +4 -3
  38. data/app/models/pageflow/entry_duplicate.rb +8 -1
  39. data/app/models/pageflow/entry_template.rb +4 -4
  40. data/app/models/pageflow/home_button.rb +7 -7
  41. data/app/models/pageflow/image_file_url_templates.rb +2 -2
  42. data/app/models/pageflow/permalink.rb +39 -0
  43. data/app/models/pageflow/permalink_directory.rb +10 -0
  44. data/app/models/pageflow/published_entry.rb +19 -2
  45. data/app/models/pageflow/revision.rb +1 -1
  46. data/app/models/pageflow/site.rb +59 -0
  47. data/app/models/pageflow/theme_customization.rb +1 -1
  48. data/app/models/pageflow/theme_customization_file.rb +6 -1
  49. data/app/policies/pageflow/account_policy.rb +2 -2
  50. data/app/policies/pageflow/entry_policy.rb +2 -2
  51. data/app/policies/pageflow/entry_template_policy.rb +1 -1
  52. data/app/policies/pageflow/{theming_policy.rb → site_policy.rb} +13 -11
  53. data/app/views/admin/accounts/_entry_template_details.html.arb +1 -1
  54. data/app/views/admin/accounts/_form.html.erb +4 -22
  55. data/app/views/admin/accounts/_site_defaults_inline_help.html.erb +5 -0
  56. data/app/views/admin/entries/_form.html.erb +11 -12
  57. data/app/views/admin/entries/_permalink_inputs.html.erb +6 -0
  58. data/app/views/admin/entries/_site_input.html.erb +15 -0
  59. data/app/views/admin/entries/{entry_type_name_input.html.erb → entry_site_and_type_name_input.html.erb} +3 -0
  60. data/app/views/admin/entries/permalink_inputs.html.erb +7 -0
  61. data/app/views/admin/entry_templates/_form.html.erb +5 -5
  62. data/app/views/admin/sites/_attributes_table.html.arb +9 -0
  63. data/app/views/admin/sites/_fields.html.erb +17 -0
  64. data/app/views/admin/sites/_form.html.erb +5 -0
  65. data/app/views/components/pageflow/admin/entries_tab.rb +1 -2
  66. data/app/views/components/pageflow/admin/entry_templates_tab.rb +10 -11
  67. data/app/views/components/pageflow/admin/features_tab.rb +1 -1
  68. data/app/views/components/pageflow/admin/sites_tab.rb +32 -0
  69. data/app/views/components/pageflow/admin/users_tab.rb +1 -2
  70. data/app/views/pageflow/editor/entries/seed.json.erb +1 -1
  71. data/app/views/pageflow/editor/file_import/start_import_job.json.jbuilder +10 -0
  72. data/app/views/pageflow/editor/sites/_site.json.jbuilder +1 -0
  73. data/app/views/pageflow/entries/{_theming.css.erb → _site.css.erb} +0 -0
  74. data/app/views/pageflow/entries/stylesheet.css.erb +1 -1
  75. data/app/views/pageflow/files/_file.json.jbuilder +1 -0
  76. data/app/views/pageflow/social_share/_entry_meta_tags.html.erb +1 -1
  77. data/app/views/pageflow/social_share/_page_meta_tags.html.erb +1 -1
  78. data/config/initializers/admin_resource_tabs.rb +29 -12
  79. data/config/initializers/mime_types.rb +1 -0
  80. data/config/locales/de.yml +19 -17
  81. data/config/locales/en.yml +19 -17
  82. data/config/routes.rb +8 -5
  83. data/db/migrate/20221024100724_create_pageflow_permalink_directories.rb +10 -0
  84. data/db/migrate/20221025074049_add_permalink_attributes_to_entries.rb +5 -0
  85. data/db/migrate/20221027065022_create_pageflow_permalinks.rb +12 -0
  86. data/db/migrate/20221215101134_rename_theming_to_site.rb +9 -0
  87. data/db/migrate/20221215120856_associate_entry_templates_with_sites.rb +34 -0
  88. data/db/migrate/20221219203023_add_name_to_sites.rb +5 -0
  89. data/db/migrate/20230103155934_associate_theme_customizations_with_sites.rb +27 -0
  90. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/editor.js +176 -179
  91. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/frontend.js +49 -7
  92. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-client.js +5 -5
  93. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-server.js +1 -1
  94. data/entry_types/paged/config/initializers/features.rb +2 -0
  95. data/entry_types/paged/config/locales/{new/help.de.yml → de.yml} +74 -65
  96. data/entry_types/paged/config/locales/{new/help.en.yml → en.yml} +66 -56
  97. data/entry_types/scrolled/app/helpers/pageflow_scrolled/favicon_helper.rb +39 -13
  98. data/entry_types/scrolled/app/helpers/pageflow_scrolled/generated_media_queries_helper.rb +55 -0
  99. data/entry_types/scrolled/app/helpers/pageflow_scrolled/themes_helper.rb +6 -2
  100. data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_head.html.erb +2 -0
  101. data/entry_types/scrolled/app/views/pageflow_scrolled/entries/_manifest.json.jbuilder +16 -0
  102. data/entry_types/scrolled/app/views/pageflow_scrolled/entries/show.html.erb +9 -3
  103. data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_entry.json.jbuilder +5 -5
  104. data/entry_types/scrolled/app/views/pageflow_scrolled/favicons/_entry.html.erb +16 -10
  105. data/entry_types/scrolled/config/locales/de.yml +265 -76
  106. data/entry_types/scrolled/config/locales/en.yml +266 -77
  107. data/entry_types/scrolled/lib/pageflow_scrolled/configuration.rb +3 -3
  108. data/entry_types/scrolled/lib/pageflow_scrolled/plugin.rb +14 -0
  109. data/entry_types/scrolled/lib/pageflow_scrolled/react_widget_type.rb +1 -1
  110. data/entry_types/scrolled/lib/pageflow_scrolled/seeds.rb +1 -1
  111. data/entry_types/scrolled/lib/pageflow_scrolled/web_app_manifest.rb +11 -0
  112. data/entry_types/scrolled/lib/pageflow_scrolled.rb +39 -1
  113. data/entry_types/scrolled/lib/tasks/pageflow_scrolled/storybook.rake +3 -2
  114. data/entry_types/scrolled/package/contentElements-editor.js +124 -38
  115. data/entry_types/scrolled/package/contentElements-frontend.css +1 -1
  116. data/entry_types/scrolled/package/contentElements-frontend.js +321 -27
  117. data/entry_types/scrolled/package/editor.js +1345 -739
  118. data/entry_types/scrolled/package/frontend/EditableInlineText.module-14c7b097.js +5314 -0
  119. data/entry_types/scrolled/package/frontend/{PhonePlatformContext-9fb97827.js → PhonePlatformContext-f6093cc6.js} +87 -223
  120. data/entry_types/scrolled/package/frontend/{Viewer-e2290ea0.js → Viewer-b6becc57.js} +6 -40
  121. data/entry_types/scrolled/package/frontend/arrowRight-78a7cee4.js +42 -0
  122. data/entry_types/scrolled/package/frontend/{components-6ab26015.js → components-b3160dd7.js} +546 -361
  123. data/entry_types/scrolled/package/frontend/index.css +1 -1
  124. data/entry_types/scrolled/package/frontend/index.js +398 -3692
  125. data/entry_types/scrolled/package/package.json +3 -2
  126. data/entry_types/scrolled/package/testHelpers.js +12 -2
  127. data/entry_types/scrolled/package/widgets/defaultNavigation.css +2 -2
  128. data/entry_types/scrolled/package/widgets/defaultNavigation.js +50 -40
  129. data/entry_types/scrolled/spec/fixtures/image.ico +0 -0
  130. data/lib/pageflow/ability_mixin.rb +16 -8
  131. data/lib/pageflow/admin/attributes_table_rows.rb +1 -1
  132. data/lib/pageflow/admin/form_inputs.rb +1 -1
  133. data/lib/pageflow/admin/tabs.rb +1 -1
  134. data/lib/pageflow/configuration/permissions.rb +3 -3
  135. data/lib/pageflow/configuration.rb +17 -17
  136. data/lib/pageflow/entry_export_import/entry_serialization.rb +1 -1
  137. data/lib/pageflow/entry_type.rb +6 -2
  138. data/lib/pageflow/primary_domain_entry_redirect.rb +7 -7
  139. data/lib/pageflow/seeds.rb +10 -10
  140. data/lib/pageflow/theme_customizations.rb +10 -10
  141. data/lib/pageflow/version.rb +1 -1
  142. data/package/editor.js +129 -156
  143. data/package/frontend.js +19 -2
  144. data/package/testHelpers.js +39 -6
  145. data/spec/factories/accounts.rb +5 -2
  146. data/spec/factories/draft_entries.rb +2 -2
  147. data/spec/factories/entries.rb +18 -1
  148. data/spec/factories/entry_templates.rb +1 -1
  149. data/spec/factories/permalink_directory.rb +6 -0
  150. data/spec/factories/permalinks.rb +4 -0
  151. data/spec/factories/published_entries.rb +4 -2
  152. data/spec/factories/sites.rb +9 -0
  153. metadata +50 -62
  154. data/app/assets/javascripts/pageflow/dist/editor.js +0 -11890
  155. data/app/assets/javascripts/pageflow/dist/frontend.js +0 -5800
  156. data/app/assets/javascripts/pageflow/dist/react-client.js +0 -22
  157. data/app/assets/javascripts/pageflow/dist/react-server.js +0 -19
  158. data/app/helpers/pageflow/themings_helper.rb +0 -11
  159. data/app/models/pageflow/theming.rb +0 -29
  160. data/app/views/admin/accounts/_theming_defaults_inline_help.html.erb +0 -5
  161. data/app/views/admin/accounts/_theming_details.html.arb +0 -5
  162. data/app/views/pageflow/editor/themings/_theming.json.jbuilder +0 -1
  163. data/entry_types/paged/config/locales/new/video_contain.de.yml +0 -7
  164. data/entry_types/paged/config/locales/new/video_contain.en.yml +0 -7
  165. data/entry_types/scrolled/config/locales/new/before_after_slider.de.yml +0 -8
  166. data/entry_types/scrolled/config/locales/new/before_after_slider.en.yml +0 -8
  167. data/entry_types/scrolled/config/locales/new/center_ragged.de.yml +0 -8
  168. data/entry_types/scrolled/config/locales/new/center_ragged.en.yml +0 -9
  169. data/entry_types/scrolled/config/locales/new/consent.de.yml +0 -25
  170. data/entry_types/scrolled/config/locales/new/consent.en.yml +0 -24
  171. data/entry_types/scrolled/config/locales/new/content_element_categories.de.yml +0 -39
  172. data/entry_types/scrolled/config/locales/new/content_element_categories.en.yml +0 -39
  173. data/entry_types/scrolled/config/locales/new/default_transition.de.yml +0 -14
  174. data/entry_types/scrolled/config/locales/new/default_transition.en.yml +0 -14
  175. data/entry_types/scrolled/config/locales/new/header_line_breaks.de.yml +0 -28
  176. data/entry_types/scrolled/config/locales/new/header_line_breaks.en.yml +0 -27
  177. data/entry_types/scrolled/config/locales/new/header_size.de.yml +0 -17
  178. data/entry_types/scrolled/config/locales/new/header_size.en.yml +0 -17
  179. data/entry_types/scrolled/config/locales/new/iframe_embed.de.yml +0 -39
  180. data/entry_types/scrolled/config/locales/new/iframe_embed.en.yml +0 -39
  181. data/entry_types/scrolled/config/locales/new/inline_loops.de.yml +0 -26
  182. data/entry_types/scrolled/config/locales/new/inline_loops.en.yml +0 -26
  183. data/entry_types/scrolled/config/locales/new/portrait_inline_image.de.yml +0 -9
  184. data/entry_types/scrolled/config/locales/new/portrait_inline_image.en.yml +0 -9
  185. data/entry_types/scrolled/config/locales/new/section_width.de.yml +0 -10
  186. data/entry_types/scrolled/config/locales/new/section_width.en.yml +0 -10
  187. data/entry_types/scrolled/config/locales/new/typography_variants.de.yml +0 -7
  188. data/entry_types/scrolled/config/locales/new/typography_variants.en.yml +0 -7
  189. data/entry_types/scrolled/config/locales/new/video_embed_poster.de.yml +0 -8
  190. data/entry_types/scrolled/config/locales/new/video_embed_poster.en.yml +0 -8
  191. data/entry_types/scrolled/config/locales/new/waveform_styles.de.yml +0 -11
  192. data/entry_types/scrolled/config/locales/new/waveform_styles.en.yml +0 -12
  193. data/entry_types/scrolled/config/locales/new/widgets.de.yml +0 -6
  194. data/entry_types/scrolled/config/locales/new/widgets.en.yml +0 -6
  195. data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/browserconfig.xml +0 -9
  196. data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/mstile-150x150.png +0 -0
  197. data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/safari-pinned-tab.svg +0 -46
  198. data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/site.webmanifest +0 -19
  199. data/entry_types/scrolled/package/frontend/EditableInlineText.module-b9923660.js +0 -993
  200. data/entry_types/scrolled/package/frontend/usePhonePlatform-2857c22b.js +0 -34
  201. data/spec/factories/themings.rb +0 -7
@@ -1,6 +1,48 @@
1
1
  de:
2
+ pageflow:
3
+ datawrapper_chart_embed_opt_in:
4
+ feature_name: Opt-in für Datawrapper Embeds
5
+ defaultNavigation:
6
+ widget_type_name: Standard Navigation
7
+ editor:
8
+ widgets:
9
+ attributes:
10
+ defaultNavigation:
11
+ fixedOnDesktop:
12
+ inline_help: |
13
+ Standardmäßig wird die Navigation beim Scrollen
14
+ ausgeblendet. Verwende diese Option, um die Navigation
15
+ im Desktop-Layout nie auszublenden. Um Platz zu
16
+ sparen, wird die Navigation im Phone-Layout beim
17
+ Scrollen dennoch immer ausgeblendet.
18
+ label: Im Desktop-Layout fixieren
19
+ hideSharingButton:
20
+ label: Share-Button ausblenden
21
+ hideToggleMuteButton:
22
+ label: "'Ton aktivieren'-Button ausblenden"
23
+ frontend_v2:
24
+ feature_name: Frontend v2
25
+ iframe_embed_content_element:
26
+ feature_name: iframe-Embed Inhaltselement
27
+ ui:
28
+ configuration_editor:
29
+ tabs:
30
+ defaultNavigation: Standard Navigation
2
31
  pageflow_scrolled:
3
32
  editor:
33
+ backdrop_effects:
34
+ blur:
35
+ label: Unschärfe
36
+ brightness:
37
+ label: Helligkeit
38
+ contrast:
39
+ label: Kontrast
40
+ grayscale:
41
+ label: Graustufen
42
+ saturate:
43
+ label: Sättigung
44
+ sepia:
45
+ label: Sepia
4
46
  blank_entry:
5
47
  create_chapter: Klicke jetzt auf <em>Neues Kapitel</em>, um ein erstes Kapitel zu erstellen.
6
48
  create_content_element: Über die <em>Plus-Buttons</em> in der Vorschau kannst du Elemente hinzufügen.
@@ -29,6 +71,23 @@ de:
29
71
  right: Rechts eingerückt
30
72
  sticky: Sticky
31
73
  wide: Breit
74
+ typographyVariant:
75
+ blank: "(Standard)"
76
+ label: Variante
77
+ variant:
78
+ blank: "(Standard)"
79
+ label: Variante
80
+ content_element_categories:
81
+ basic:
82
+ name: Basic
83
+ data:
84
+ name: Daten und Diagramme
85
+ interactive:
86
+ name: Interaktiv
87
+ links:
88
+ name: Verweise
89
+ media:
90
+ name: Media
32
91
  content_elements:
33
92
  dataWrapperChart:
34
93
  attributes:
@@ -43,6 +102,7 @@ de:
43
102
  url:
44
103
  inline_help: URL zu einem bei Datawrapper publizierten Diagramm. Datawrapper bietet in den Diagramm Optionen ein spezielles "Pageflow"-Design für eine optimale Darstellung innerhalb des Beitrags.
45
104
  label: Diagramm URL
105
+ description: Einbindung von Diagrammen, die mit Datawrapper erstellt wurden
46
106
  name: DataWrapper Diagramm
47
107
  tabs:
48
108
  general: Diagramm
@@ -66,6 +126,7 @@ de:
66
126
  back: Zurück
67
127
  confirm_delete: Soll das Element wirklich gelöscht werden?
68
128
  confirm_delete_link: Soll der Link wirklich gelöscht werden?
129
+ description: Sammlung von Verweisen zu Webseiten außerhalb des Beitrags
69
130
  destroy: Löschen
70
131
  name: Externe Verweise
71
132
  outline: Gliederung
@@ -76,9 +137,84 @@ de:
76
137
  attributes:
77
138
  children:
78
139
  label: Text
140
+ hyphens:
141
+ inline_help: |
142
+ Bei manueller Silbentrennung werden Worte nur an
143
+ Stellen getrennt, die durch einen bedingten
144
+ Trennstrich ausgezeichnet wurden. Du kannst so
145
+ Trennung an unerwünschten Stellen verhindern. Ohne
146
+ bedingte Trennstriche werden lange Worte in der
147
+ nächsten Zeile ohne Bindestrich fortgesetzt. Prüfe
148
+ daher insbesondere die mobile Darstellung, wenn du
149
+ manuelle Silbentrennung verwendest.
150
+ label: Silbentrennung
151
+ values:
152
+ auto: Automatisch
153
+ manual: Manuell
154
+ textSize:
155
+ inline_help: |
156
+ Standardmäßig haben Überschriften im ersten Abschnitt
157
+ des Beitrags große Schrift. Überschriften in späteren
158
+ Abschnitten verwenden Schriftgröße "Klein".
159
+ label: Schriftgröße
160
+ values:
161
+ auto: "(Automatisch)"
162
+ large: Groß
163
+ medium: Mittel
164
+ small: Klein
165
+ description: Beitrags- oder Kapiteltitel
166
+ help_texts:
167
+ shortcuts: |
168
+ <dl class="shortcuts">
169
+ <dt>
170
+ <span class="shortcut">
171
+ <kbd>Alt</kbd> + <kbd>Enter</kbd>
172
+ </span>
173
+ <span class="inline_help">
174
+ Füge potentielle Zeilenumbruchspunkte in lange Worte ein,
175
+ um Silbentrennung zu ermöglichen.
176
+ </span>
177
+ </dt>
178
+ <dd>
179
+ Bedingten Trennstrich einfügen
180
+ </dd>
181
+ </dl>
79
182
  name: Überschrift
80
183
  tabs:
81
184
  general: Überschrift
185
+ iframeEmbed:
186
+ attributes:
187
+ aspectRatio:
188
+ label: Seitenverhältnis
189
+ values:
190
+ narrow: Landscape (4:3)
191
+ portrait: Portrait (9:16)
192
+ square: Quadratisch (1:1)
193
+ wide: Landscape (16:9)
194
+ portraitAspectRatio:
195
+ blank: "(Standard)"
196
+ label: Seitenverhältnis (Hochkant)
197
+ values:
198
+ narrow: Landscape (4:3)
199
+ portrait: Portrait (9:16)
200
+ square: Quadratisch (1:1)
201
+ wide: Landscape (16:9)
202
+ scale:
203
+ label: Skalieren
204
+ values:
205
+ p100: 100%
206
+ p33: 33%
207
+ p50: 50%
208
+ p75: 75%
209
+ source:
210
+ label: URL
211
+ title:
212
+ inline_help: Dieser Titel wird von Screenreadern verwendet, um das iframe als Ganzes zu beschreiben.
213
+ label: Titel
214
+ description: Einbindung einer extern gehosteten Website
215
+ name: iframe-Embed
216
+ tabs:
217
+ general: iframe-Embed
82
218
  inlineAudio:
83
219
  attributes:
84
220
  atmoDuringPlayback:
@@ -95,11 +231,15 @@ de:
95
231
  label: Player Controls
96
232
  values:
97
233
  classic: Klassisch
234
+ waveform: Waveform (Fein)
235
+ waveformBars: Waveform (Balken)
236
+ waveformLines: Waveform (Linien)
98
237
  posterId:
99
238
  label: Poster
100
239
  waveformColor:
101
240
  inline_help: Farbe des Bereichs der Waveform, der den bereits abgespielten Teil der Audio-Datei repräsentiert.
102
241
  label: Waveform Farbe
242
+ description: Wiedergabe einer Audiodatei mit Steuerelementen
103
243
  name: Inline-Audio
104
244
  tabs:
105
245
  general: Inline-Audio
@@ -123,6 +263,7 @@ de:
123
263
  slider_color:
124
264
  inline_help: Farbe des Schiebereglers inklusive Griff kann frei konfiguriert werden. Achte auf gute Sichtbarkeit des Reglers über den gesamten Vorher/Nachher-Bereich.
125
265
  label: Schieberegler-Farbe
266
+ description: Zwei übereinandergelegte Bilder mit Schieberegler getrennt
126
267
  name: Vorher/Nachher
127
268
  tabs:
128
269
  general: Vorher/Nachher
@@ -130,6 +271,10 @@ de:
130
271
  attributes:
131
272
  id:
132
273
  label: Bild
274
+ portraitId:
275
+ inline_help: Wird gezeigt, wenn der Browser-Viewport höher als breit ist - zum Beispiel auf Smartphones oder Tablets in Portrait-Ausrichtung. Kann als Alternative zu einem querformatigen Bild konfiguriert werden, das ansonsten zu klein dargestellt würde.
276
+ label: Bild (Hochkant)
277
+ description: Einbindung von Bildern
133
278
  name: Inline-Bild
134
279
  tabs:
135
280
  general: Inline-Bild
@@ -142,21 +287,92 @@ de:
142
287
  mute: Ausblenden
143
288
  play: Weiterspielen
144
289
  turnDown: Leiser weiterspielen
290
+ hideControlBar:
291
+ inline_help: Für kurze Videos, bei denen der Benutzer nicht an bestimmte Stellen springen will.
292
+ inline_help_disabled: Für Videos mit Wiedergabe-Modus "Loop" sind die Controls immer ausgeblendet.
293
+ label: Controls ausblenden
145
294
  id:
146
295
  label: Video
296
+ playbackMode:
297
+ inline_help_html: Bestimme, wie das Video gestartet wird:<ul><li><strong>Manuell:</strong> Durch einen Klick des Benutzers.</li><li><strong>Automatisch:</strong> Wenn es die Mitte des Browser-Viewports erreicht.</li><li><strong>Loop:</strong> In Endlosschleife sobald es sichtbar wird.</li></ul>
298
+ label: Wiedergabe-Modus
299
+ values:
300
+ autoplay: Automatisch
301
+ loop: Loop
302
+ manual: Manuell
147
303
  posterId:
148
304
  label: Poster
305
+ rewindOnUnmute:
306
+ inline_help_html: Verhindere, dass der Benutzer bei einem automatisch ohne Ton gestarteten Video wichtige Inhalte verpasst.<br /><br />Alternativ kann dem Video eine Ton-Ersatz-Textspur hinzugefügt werden. Diese wird automatisch gezeigt solange der Beitrag stummgeschaltet ist.
307
+ label: "...und Video von vorne abspielen"
308
+ unmute:
309
+ inline_help_html: Der Klick auf das Video wird verwendet, um den Ton für den gesamten Beitrag zu aktivieren.<br /><br />Nach dem Klick können Atmo-Audios sowie der Ton nachfolgender Videos dann unmittelbar wiedergegeben werden.<br /><br />Wenn diese Option aktiviert ist, wird bei automatisch ohne Ton gestarteten Videos ein animierter Indikator angezeigt, der auf die Stummschaltung hinweist.
310
+ label: "...bei Klick auf Video aufheben"
311
+ unmuteLabel:
312
+ inline_help_html: Browser erlauben standardmäßig das Abspielen von Videos mit Ton nur nach einer Benutzer-Interaktion. Um Videos dennoch automatisch abspielen zu können, sind Beiträge zu Beginn stummgeschaltet.<br /><br />Die Stummschaltung kann z.B. über das Lautsprecher-Icon in der Navigationsleiste oder ein im Beitrag platziertes "Audio-Hinweis"-Element aufgehoben werden.
313
+ label: Stummschaltung des Beitrags
314
+ description: Wiedergabe einer Videodatei mit Steuerelementen
149
315
  name: Inline-Video
150
316
  tabs:
151
317
  general: Inline-Video
318
+ question:
319
+ attributes:
320
+ expandByDefault:
321
+ inline_help: Anwort zu Beginn anzeigen.
322
+ label: Standardmäßig aufklappen
323
+ description: Aufklappen, um Antwort anzuzeigen
324
+ name: Frage/Anwort
325
+ tabs:
326
+ general: Frage/Anwort
152
327
  soundDisclaimer:
328
+ description: Lass den Leser den Ton aktiveren
153
329
  name: Audio-Hinweis
154
330
  tabs:
155
331
  general: Audio-Hinweis
156
332
  textBlock:
333
+ description: Text mit Listen, Zitaten und Zwischenüberschriften
334
+ help_texts:
335
+ shortcuts: |
336
+ <dl class="shortcuts">
337
+ <dt>
338
+ <span class="shortcut">
339
+ <kbd>Shift</kbd> + <kbd>Enter</kbd>
340
+ </span>
341
+ <span class="inline_help">
342
+ Füge eine neue Zeile ein, ohne einen neuen Absatz zu beginnen.
343
+ </span>
344
+ </dt>
345
+ <dd>
346
+ Zeilenumbruch einfügen
347
+ </dd>
348
+ <dt>
349
+ <span class="shortcut">
350
+ <kbd>Alt</kbd> + <kbd>Enter</kbd>
351
+ </span>
352
+ <span class="inline_help">
353
+ Füge potentielle Zeilenumbruchspunkte in lange Worte ein,
354
+ um Silbentrennung zu ermöglichen.
355
+ </span>
356
+ </dt>
357
+ <dd>
358
+ Bedingten Trennstrich einfügen
359
+ </dd>
360
+ </dl>
157
361
  name: Text-Block
158
362
  tabs:
159
363
  general: Text-Block
364
+ twitterEmbed:
365
+ attributes:
366
+ hideConversation:
367
+ label: Konversation ausblenden
368
+ hideMedia:
369
+ label: Medien ausblenden
370
+ url:
371
+ label: Tweet-URL
372
+ description: Bettet Inhalte von Twitter ein
373
+ name: Tweet
374
+ tabs:
375
+ general: Twitter-Embed
160
376
  videoEmbed:
161
377
  attributes:
162
378
  aspectRatio:
@@ -166,14 +382,24 @@ de:
166
382
  portrait: Portrait (9:16)
167
383
  square: Quadratisch
168
384
  wide: Landscape 16:9
385
+ atmoDuringPlayback:
386
+ inline_help: Wähle wie sich die Atmo während der Wiedergabe des Video-Embeds verhalten soll.
387
+ label: Atmo während Medien-Wiedergabe
388
+ values:
389
+ mute: Ausblenden
390
+ play: Weiterspielen
391
+ turnDown: Leiser weiterspielen
169
392
  hideControls:
170
393
  inline_help: Blendet die Steuerelemente aus wenn möglich (variiert je nach Anbieter und Konfiguration). Das Video kann per Klick gestartet und pausiert werden.
171
394
  label: Steuerelemente ausblenden
172
395
  hideInfo:
173
396
  inline_help: Blendet Titel und Author Informationen innerhalb des Embeds aus wenn möglich (variiert je nach Anbieter und Konfiguration)
174
397
  label: Titel in Embed ausblenden
398
+ posterId:
399
+ label: Poster
175
400
  videoSource:
176
401
  label: Video-URL
402
+ description: Bettet ein externes Video von YouTube, Vimeo oder Facebook ein
177
403
  name: Video Embed
178
404
  tabs:
179
405
  general: Video-Embed
@@ -185,6 +411,7 @@ de:
185
411
  label: Initialer Gierungswinkel
186
412
  initialYaw:
187
413
  label: Initialer Neigungswinkel
414
+ description: Interaktives Panorama aus Bild mit rektangularer Projektion
188
415
  name: 360°-Bild
189
416
  edit_chapter:
190
417
  attributes:
@@ -255,26 +482,36 @@ de:
255
482
  label: Vordergrund-Positionierung
256
483
  values:
257
484
  center: Mitte
485
+ centerRagged: Zentriert
258
486
  left: Links
259
487
  right: Rechts
260
488
  staticShadowOpacity:
261
489
  inline_help: Intensität des Schattens, der hinter dem Text angezeigt wird, wenn Inhalt und Motivbereich nebeneinander dargestellt werden können oder kein Motivbereich markiert wurde. Bei links oder rechts positioniertem Vordergrund hat dieser Schatten die Form eines horizontal verlaufenden halbtransparenten Farbverlaufs. Bei "Vordergrund-Position" "Mitte", wird eine gleichmäßige halbtransparente Abblendung hinter dem Text gezeigt.
262
490
  label: Statische Abblendung
491
+ width:
492
+ label: Laufweite
493
+ values:
494
+ narrow: Schmal
495
+ wide: Breit
263
496
  edit_motif_area: Motivbereich markieren...
264
497
  tabs:
265
498
  section: Abschnitt
266
499
  edit_section_transition:
267
500
  attributes:
268
501
  transition:
502
+ default_transition: Wird als Standard für neue Abschnitte verwendet
269
503
  inline_help: Diese Einstellung definiert den Übergang vom vorigen Abschnitt zu diesem. Der Übergang wirkt sich jeweils auf den Hintergrund und den Vordergrund unterschiedlich aus. Die Effekte "Alles Überblenden" und "Nur Hintergrund überblenden" stehen nur zur Verfügung, wenn für beide angrenzende Abschnitte die Option "Volle Viewport-Höhe" aktiviert ist.
270
504
  label: Effekt
505
+ mark_as_default_transition: Als Standard für neue Abschnitte verwenden
271
506
  values:
272
507
  beforeAfter: Scrollen mit statischen Hintergründen
273
- fade: Inhalt des Abschnitts ebenfalls überblenden
274
- fadeBg: Überblenden
508
+ fade: Überblenden
275
509
  reveal: Freilegen
276
510
  scroll: Aus-/Einscrollen
277
511
  scrollOver: Überlagern
512
+ variants:
513
+ fade: Inhalte der Abschnitte ebenfalls überblenden
514
+ fadeBg: Nur Hintergründe der Abschnitte überblenden
278
515
  confirm_destroy: |-
279
516
  Abschnitt einschließlich ALLER enthaltener Elemente wirklich löschen?
280
517
 
@@ -282,6 +519,9 @@ de:
282
519
  save_error: Beim Speichern des Abschnitts ist ein Fehler aufgetreten.
283
520
  tabs:
284
521
  transition: Übergang
522
+ effect_list_input:
523
+ add: Effekt hinzufügen...
524
+ remove: Entfernen
285
525
  entry_outline:
286
526
  add_chapter: Neues Kapitel
287
527
  header: Gliederung
@@ -292,6 +532,18 @@ de:
292
532
  section_item:
293
533
  drag_hint: Ziehen, um den Abschnitt zu verschieben
294
534
  save_error: Beim Speichern des Abschnitts ist ein Fehler aufgetreten.
535
+ select_link_destination:
536
+ cancel: Abbrechen
537
+ create: Erstellen
538
+ enter_url: Verwende eine URL als Ziel
539
+ header: Link erstellen
540
+ open_in_new_tab: In neuem Tab öffnen
541
+ or: oder
542
+ select_chapter_or_section: Wähle ein Kapitel oder einen Abschnitt als Ziel aus
543
+ selectable_chapter_item:
544
+ title: Kapitel auswählen
545
+ selectable_section_item:
546
+ title: Abschnitt auswählen
295
547
  help_entries:
296
548
  content_elements:
297
549
  menu_item: Inhaltselemente
@@ -576,87 +828,24 @@ de:
576
828
  after: Neues Element unterhalb einfügen
577
829
  before: Neues Element oberhalb einfügen
578
830
  insert_link: Link einfügen
831
+ link_tooltip:
832
+ chapter_number: Kapitel %{number}
833
+ opens_in_new_tab: Öffnet in neuem Tab
834
+ opens_in_same_tab: Öffnet außerhalb des Editors im selben Tab
835
+ visit_chapter: Gehe zu Kapitel
836
+ visit_section: Gehe zu Abschnitt
579
837
  remove_link: Link entfernen
580
838
  select_content_element: Element auswählen
581
839
  select_section: Abschnitt auswählen
840
+ type_answer: Antworttext eingeben
582
841
  type_heading: Überschrift
842
+ type_question: Fragetext eingeben
583
843
  type_text: Text eingeben
584
844
  type_title: Titel
585
845
  url_placeholder: URL eingeben oder einfügen
586
846
  public:
587
- chart:
588
- default_title: Interaktives Diagramm
589
- enter_fullscreen: Vollbild
590
- exit_fullscreen: Vollbild verlassen
591
- image_rights: Bildrechte
592
- js_required: Bitte aktivieren Sie JavaScript, um diese Website korrekt anzuzeigen.
593
- languages:
594
- ar: Arabisch
595
- cs: Tschechisch
596
- de: Deutsch
597
- dk: Dänisch
598
- el: Griechisch
599
- en: Englisch
600
- es: Spanisch
601
- fi: Finnisch
602
- fr: Französisch
603
- fy: Friesisch
604
- hi: Hindi
605
- it: Italienisch
606
- ja: Japanisch
607
- lb: Luxemburgisch
608
- nb: Bokmål
609
- nl: Holländisch
610
- nn: Nynorsk
611
- 'no': Norwegisch
612
- pl: Polnisch
613
- pt: Portugiesisch
614
- rm: Rätoromanisch
615
- ru: Russisch
616
- se: Nordsamisch
617
- sr: Serbisch
618
- sv: Schwedisch
619
- tr: Türkisch
620
- unknown: "(Unbekannt)"
621
- zh: Chinesisch
622
- navigation:
623
- chapter: Kapitel %{number}
624
- close_mobile_menu: Kapitelübersicht schließen
625
- legal_info: Impressum
626
- mute: Ton stummschalten
627
- open_mobile_menu: Kapitelübersicht öffnen
628
- share: Teilen
629
- unmute: Ton aktivieren
630
- navigation_skip_links:
631
- content: Zum Inhalt
632
- player_controls:
633
- pause: Pausieren
634
- play: Wiedergeben
635
- progress: 'Zeitachse. Verstrichene Zeit: %{currentTime}. Gesamtzeit: %{duration}'
636
- quality: Qualität
637
- text_tracks: Untertitel
638
- sound_disclaimer:
639
- help_muted: Diese Seite wirkt am besten mit eingeschaltetem Ton. Klicke hier, um den Ton zu aktivieren.
640
- help_unmuted: Der Ton kann über das Lautsprecher-Symbol in der Navigationsleiste wieder deaktiviert werden.
641
- text_track_modes:
642
- auto: Auto (%{label})
643
- auto_off: Auto (Aus)
644
- none: Aus
645
847
  third_party_consent:
646
- confirm: Einverstanden
647
848
  opt_in_prompt:
648
- datawrapper: Ich bin damit einverstanden, dass mir Diagramme von Datawrapper angezeigt werden.
649
- opt_out:
650
- prompt: Um externe Dienste auszuschalten, %{link} klicken.
651
- prompt_link: hier
652
- unsupported_browser: Diese Website verwendet Funktionen, die Ihr Browser nicht unterstützt. Bitte aktualisieren Sie Ihren Browser auf eine aktuelle Version.
653
- video_qualities:
654
- annotations:
655
- 4k: 4K
656
- fullhd: HD
657
- medium: HD
658
- labels:
659
- 4k: 2160p
660
- auto: Automatisch
661
- fullhd: 1080p
662
- medium: 720p
849
+ twitter: Ich bin damit einverstanden, dass Inhalte von Twitter angezeigt werden.
850
+ twitter:
851
+ default_title: Tweet