Real Cookie Banner: GDPR (DSGVO) & ePrivacy Cookie Consent - Version 3.1.0

Version Description

Download this release

Release Info

Developer devowl
Plugin Icon 128x128 Real Cookie Banner: GDPR (DSGVO) & ePrivacy Cookie Consent
Version 3.1.0
Comparing to
See all releases

Code changes from version 3.0.2 to 3.1.0

Files changed (206) hide show
  1. CHANGELOG.md +83 -0
  2. README.txt +1 -1
  3. inc/Assets.php +28 -21
  4. inc/Core.php +25 -1
  5. inc/Localization.php +1 -1
  6. inc/base/others/cachebuster-lib.php +1 -1
  7. inc/base/others/cachebuster.php +78 -78
  8. inc/comp/migration/DashboardTileMigrationMajor3.php +38 -12
  9. inc/comp/migration/DashboardTileTcfV2IllegalUsage.php +7 -3
  10. inc/import/Export.php +1 -1
  11. inc/import/Import.php +0 -4
  12. inc/import/ImportBlocker.php +25 -9
  13. inc/presets/AbstractBlockerPreset.php +1 -1
  14. inc/presets/BlockerPresets.php +13 -14
  15. inc/presets/CookiePresets.php +1 -1
  16. inc/presets/UpdateNotice.php +4 -17
  17. inc/presets/free/ElementorPreset.php +3 -3
  18. inc/presets/free/FontAwesomePreset.php +2 -2
  19. inc/presets/free/GoogleFontsPreset.php +9 -5
  20. inc/presets/free/GravatarPreset.php +2 -2
  21. inc/presets/free/JetPackCommentsPreset.php +48 -48
  22. inc/presets/free/JetpackSiteStatsPreset.php +42 -42
  23. inc/presets/free/RealCookieBannerPreset.php +5 -5
  24. inc/presets/free/WordPressCommentsPreset.php +12 -8
  25. inc/presets/free/WordPressEmojisPreset.php +9 -5
  26. inc/presets/free/WordPressPluginEmbed.php +2 -2
  27. inc/presets/free/WordPressUserLoginPreset.php +7 -7
  28. inc/presets/free/YoutubePreset.php +33 -129
  29. inc/presets/free/blocker/FontAwesomePreset.php +3 -3
  30. inc/presets/free/blocker/GoogleFontsPreset.php +9 -3
  31. inc/presets/free/blocker/GravatarPreset.php +3 -3
  32. inc/presets/free/blocker/JetPackCommentsPreset.php +3 -3
  33. inc/presets/free/blocker/JetPackSiteStatsPreset.php +3 -3
  34. inc/presets/free/blocker/WordPressCommentsPreset.php +2 -2
  35. inc/presets/free/blocker/WordPressEmojisPreset.php +3 -3
  36. inc/presets/free/blocker/WordPressPluginEmbed.php +4 -4
  37. inc/presets/free/blocker/WordPressUserLoginPreset.php +3 -3
  38. inc/presets/free/blocker/YoutubePreset.php +3 -3
  39. inc/presets/middleware/BlockerHostsOptionsMiddleware.php +6 -6
  40. inc/presets/middleware/CookieBlockerPresetIdsMiddleware.php +8 -5
  41. inc/presets/middleware/CookiesDeactivateAutomaticContentBlockerCreationByNeedsMiddleware.php +4 -4
  42. inc/presets/middleware/DisablePresetByNeedsMiddleware.php +7 -6
  43. inc/presets/middleware/DisableTechnicalHandlingThroughPluginMiddleware.php +27 -23
  44. inc/presets/pro/blocker/ActiveCampaignFormPreset.php +1 -1
  45. inc/presets/pro/blocker/ActiveCampaignSiteTrackingPreset.php +1 -1
  46. inc/presets/pro/blocker/AdInserterPreset.php +1 -1
  47. inc/presets/pro/blocker/AddThisPreset.php +1 -1
  48. inc/presets/pro/blocker/AddToAnyPreset.php +1 -1
  49. inc/presets/pro/blocker/AdobeTypekitPreset.php +4 -2
  50. inc/presets/pro/blocker/AmazonAssociatesWidgetPreset.php +2 -2
  51. inc/presets/pro/blocker/AnchorFmPreset.php +1 -1
  52. inc/presets/pro/blocker/AppleMusicPreset.php +1 -1
  53. inc/presets/pro/blocker/AwinLinkImageAdsPreset.php +1 -1
  54. inc/presets/pro/blocker/AwinPublisherMasterTagPreset.php +2 -2
  55. inc/presets/pro/blocker/BingAdsPreset.php +2 -2
  56. inc/presets/pro/blocker/BingMapsPreset.php +1 -1
  57. inc/presets/pro/blocker/BloomPreset.php +1 -1
  58. inc/presets/pro/blocker/CalderaFormsPreset.php +1 -1
  59. inc/presets/pro/blocker/CalendlyPreset.php +1 -1
  60. inc/presets/pro/blocker/CleverReachRecaptchaPreset.php +1 -1
  61. inc/presets/pro/blocker/ContactForm7RecaptchaPreset.php +1 -1
  62. inc/presets/pro/blocker/ConvertKitPreset.php +1 -1
  63. inc/presets/pro/blocker/CustomFacebookFeedPreset.php +1 -1
  64. inc/presets/pro/blocker/CustomTwitterFeedPreset.php +1 -1
  65. inc/presets/pro/blocker/DailyMotionPreset.php +1 -1
  66. inc/presets/pro/blocker/DiscordWidgetPreset.php +1 -1
  67. inc/presets/pro/blocker/DiviContactFormPreset.php +1 -1
  68. inc/presets/pro/blocker/ElementorFormsPreset.php +1 -1
  69. inc/presets/pro/blocker/EtrackerPreset.php +1 -1
  70. inc/presets/pro/blocker/EtrackerWithConsentPreset.php +1 -1
  71. inc/presets/pro/blocker/FacebookGraphPreset.php +1 -1
  72. inc/presets/pro/blocker/FacebookLikePreset.php +1 -1
  73. inc/presets/pro/blocker/FacebookPagePluginPreset.php +1 -1
  74. inc/presets/pro/blocker/FacebookPixelPreset.php +1 -1
  75. inc/presets/pro/blocker/FacebookPostPreset.php +1 -1
  76. inc/presets/pro/blocker/FacebookSharePreset.php +1 -1
  77. inc/presets/pro/blocker/FeedsForYoutubePreset.php +2 -2
  78. inc/presets/pro/blocker/FiveStarRestaurantReservationsPreset.php +1 -1
  79. inc/presets/pro/blocker/FlickrPreset.php +1 -1
  80. inc/presets/pro/blocker/FormMakerRecaptchaPreset.php +1 -1
  81. inc/presets/pro/blocker/FormidablePreset.php +1 -1
  82. inc/presets/pro/blocker/FoundEePreset.php +2 -2
  83. inc/presets/pro/blocker/FreshchatPreset.php +2 -2
  84. inc/presets/pro/blocker/GetYourGuidePreset.php +1 -1
  85. inc/presets/pro/blocker/GiphyPreset.php +1 -1
  86. inc/presets/pro/blocker/GoogleAdsPreset.php +2 -2
  87. inc/presets/pro/blocker/GoogleAdsensePreset.php +2 -2
  88. inc/presets/pro/blocker/GoogleAnalytics4Preset.php +1 -1
  89. inc/presets/pro/blocker/GoogleAnalyticsPreset.php +1 -1
  90. inc/presets/pro/blocker/GoogleMapsPreset.php +2 -1
  91. inc/presets/pro/blocker/GoogleRecaptchaPreset.php +1 -1
  92. inc/presets/pro/blocker/GoogleTranslatePreset.php +1 -1
  93. inc/presets/pro/blocker/GoogleTrendsPreset.php +1 -1
  94. inc/presets/pro/blocker/GoogleUserContentPreset.php +1 -1
  95. inc/presets/pro/blocker/GtmPreset.php +2 -2
  96. inc/presets/pro/blocker/HCaptchaPreset.php +2 -2
  97. inc/presets/pro/blocker/HappyFormsPreset.php +1 -1
  98. inc/presets/pro/blocker/HelpCrunchChatPreset.php +2 -2
  99. inc/presets/pro/blocker/HelpScoutChatPreset.php +2 -2
  100. inc/presets/pro/blocker/HotjarPreset.php +1 -1
  101. inc/presets/pro/blocker/ImgurPreset.php +1 -1
  102. inc/presets/pro/blocker/InstagramPostPreset.php +1 -1
  103. inc/presets/pro/blocker/IntercomChatPreset.php +1 -1
  104. inc/presets/pro/blocker/IssuuPreset.php +1 -1
  105. inc/presets/pro/blocker/KlaviyoPreset.php +1 -1
  106. inc/presets/pro/blocker/KlikenPreset.php +1 -1
  107. inc/presets/pro/blocker/KomootPreset.php +1 -1
  108. inc/presets/pro/blocker/LinkedInAdsPreset.php +1 -1
  109. inc/presets/pro/blocker/LoomPreset.php +1 -1
  110. inc/presets/pro/blocker/LuckyOrangePreset.php +2 -2
  111. inc/presets/pro/blocker/MailPoetPreset.php +1 -1
  112. inc/presets/pro/blocker/MailchimpForWooCommercePreset.php +1 -1
  113. inc/presets/pro/blocker/MailerLitePreset.php +3 -2
  114. inc/presets/pro/blocker/MatomoIntegrationPluginPreset.php +1 -1
  115. inc/presets/pro/blocker/MatomoPluginPreset.php +1 -1
  116. inc/presets/pro/blocker/MatomoPreset.php +2 -2
  117. inc/presets/pro/blocker/MetricoolPreset.php +1 -1
  118. inc/presets/pro/blocker/MicrosoftClarityPreset.php +1 -1
  119. inc/presets/pro/blocker/MouseflowPreset.php +1 -1
  120. inc/presets/pro/blocker/MtmPreset.php +2 -2
  121. inc/presets/pro/blocker/MyCruiseExcursionPreset.php +1 -1
  122. inc/presets/pro/blocker/MyFontsPreset.php +1 -1
  123. inc/presets/pro/blocker/NinjaFormsPreset.php +1 -1
  124. inc/presets/pro/blocker/OpenStreetMapPreset.php +1 -1
  125. inc/presets/pro/blocker/PaddleComPreset.php +2 -2
  126. inc/presets/pro/blocker/PerfmattersGA4Preset.php +2 -2
  127. inc/presets/pro/blocker/PerfmattersGAPreset.php +2 -2
  128. inc/presets/pro/blocker/PinterestPreset.php +1 -1
  129. inc/presets/pro/blocker/PinterestTagPreset.php +1 -1
  130. inc/presets/pro/blocker/PiwikProPreset.php +1 -1
  131. inc/presets/pro/blocker/PodigeePreset.php +1 -1
  132. inc/presets/pro/blocker/PopupMakerPreset.php +1 -1
  133. inc/presets/pro/blocker/ProvenExpertWidgetPreset.php +1 -1
  134. inc/presets/pro/blocker/QuformRecaptchaPreset.php +1 -1
  135. inc/presets/pro/blocker/ReamazeChatPreset.php +2 -2
  136. inc/presets/pro/blocker/RedditPreset.php +1 -1
  137. inc/presets/pro/blocker/SendinbluePreset.php +1 -1
  138. inc/presets/pro/blocker/SmashBalloonSocialPhotoFeedPreset.php +1 -1
  139. inc/presets/pro/blocker/SoundCloudPreset.php +1 -1
  140. inc/presets/pro/blocker/SpotifyPreset.php +1 -1
  141. inc/presets/pro/blocker/TaboolaPreset.php +1 -1
  142. inc/presets/pro/blocker/TawkToChatPreset.php +1 -1
  143. inc/presets/pro/blocker/ThriveLeadsPreset.php +1 -1
  144. inc/presets/pro/blocker/TiWooCommerceWishlistPreset.php +1 -1
  145. inc/presets/pro/blocker/TidioChatPreset.php +1 -1
  146. inc/presets/pro/blocker/TikTokPixelPreset.php +2 -2
  147. inc/presets/pro/blocker/TikTokPreset.php +1 -1
  148. inc/presets/pro/blocker/TrustindexIoPreset.php +1 -1
  149. inc/presets/pro/blocker/TwitterTweetPreset.php +1 -1
  150. inc/presets/pro/blocker/TypeformPreset.php +1 -1
  151. inc/presets/pro/blocker/UserlikePreset.php +1 -1
  152. inc/presets/pro/blocker/VGWortPreset.php +1 -1
  153. inc/presets/pro/blocker/VimeoPreset.php +1 -1
  154. inc/presets/pro/blocker/WPFormsPreset.php +1 -1
  155. inc/presets/pro/blocker/XingEventsPreset.php +1 -1
  156. inc/presets/pro/blocker/YandexMetricaPreset.php +1 -1
  157. inc/presets/pro/blocker/ZendeskChatPreset.php +1 -1
  158. inc/presets/pro/blocker/ZohoBookingsPreset.php +1 -1
  159. inc/presets/pro/blocker/ZohoFormsPreset.php +1 -1
  160. inc/rest/Consent.php +10 -6
  161. inc/scanner/Query.php +10 -10
  162. inc/settings/Blocker.php +99 -31
  163. inc/settings/Cookie.php +180 -101
  164. inc/settings/CookieGroup.php +9 -5
  165. inc/settings/General.php +4 -4
  166. inc/settings/Revision.php +17 -11
  167. inc/settings/TCF.php +7 -0
  168. inc/view/Blocker.php +2 -2
  169. inc/view/ConfigPage.php +7 -1
  170. inc/view/blockable/BlockerPostType.php +2 -2
  171. inc/view/blocker/Plugin.php +8 -1
  172. inc/view/checklist/ActivateBanner.php +0 -2
  173. inc/view/checklist/AddBlocker.php +0 -2
  174. inc/view/checklist/AddCookie.php +0 -2
  175. inc/view/checklist/CustomizeBanner.php +0 -2
  176. inc/view/checklist/GetPro.php +0 -2
  177. inc/view/checklist/Install.php +0 -2
  178. inc/view/checklist/License.php +0 -2
  179. inc/view/checklist/PrivacyPolicy.php +0 -2
  180. inc/view/checklist/SaveSettings.php +1 -6
  181. inc/view/checklist/Scanner.php +1 -3
  182. inc/view/checklist/Shortcode.php +1 -3
  183. inc/view/checklist/ViewStats.php +0 -2
  184. inc/view/customize/banner/BasicLayout.php +14 -0
  185. inc/view/customize/banner/BodyDesign.php +7 -3
  186. inc/view/customize/banner/Decision.php +14 -10
  187. inc/view/customize/banner/Texts.php +52 -28
  188. inc/view/customize/banner/individual/SaveButton.php +7 -3
  189. inc/view/customize/banner/individual/Texts.php +22 -7
  190. inc/view/navmenu/NavMenuLinks.php +8 -7
  191. index.php +1 -1
  192. languages/real-cookie-banner-de_AT.mo +0 -0
  193. languages/real-cookie-banner-de_AT.po +704 -365
  194. languages/real-cookie-banner-de_CH.mo +0 -0
  195. languages/real-cookie-banner-de_CH.po +704 -365
  196. languages/real-cookie-banner-de_CH_informal.mo +0 -0
  197. languages/real-cookie-banner-de_CH_informal.po +704 -365
  198. languages/real-cookie-banner-de_DE.mo +0 -0
  199. languages/real-cookie-banner-de_DE.po +704 -365
  200. languages/real-cookie-banner-de_DE_formal.mo +0 -0
  201. languages/real-cookie-banner-de_DE_formal.po +708 -367
  202. languages/real-cookie-banner.pot +388 -65
  203. public/dist/164.lite.js +2 -0
  204. public/dist/164.lite.js.map +1 -0
  205. public/dist/18.lite.js +0 -2
  206. public/dist/193.lite.js +1 -1
CHANGELOG.md CHANGED
@@ -3,6 +3,89 @@
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  ## 3.0.2 (2022-08-09)
7
 
8
 
3
  All notable changes to this project will be documented in this file.
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
 
6
+ # 3.1.0 (2022-08-29)
7
+
8
+
9
+ ### chore
10
+
11
+ * compatibility for JetEngine Google Maps Listing version >= 3.0 (CU-2jzg7yc)
12
+ * extract urls from texts for better translatability (CU-2gfbm5v)
13
+ * introduce devowl-scripts binary (CU-2n41u7h)
14
+ * introduce for non-flat node_modules development experience (CU-2n41u7h)
15
+ * optimize explanation texts for EU-wide instead of German consideration (CU-2gfbm5v)
16
+ * prepare packages for PNPM isolated module mode (CU-2n41u7h)
17
+ * rebase conflicts (CU-2n41u7h)
18
+ * reduce bundle size by removing some vendor files (CU-2d8dedh)
19
+ * review 1 (CU-20r2upf)
20
+ * review 1 (CU-2d8dedh)
21
+ * review 1 (CU-d0zyw3)
22
+ * show a notice when deactivating animation-in in customizer (CU-2w3br3w)
23
+
24
+
25
+ ### ci
26
+
27
+ * generate webpack json stats and upload to storage-dev (CU-1r55qj4)
28
+
29
+
30
+ ### feat
31
+
32
+ * introduce a more intuitive way updating service templates (CU-d0zyw3)
33
+
34
+
35
+ ### fix
36
+
37
+ * caching issues with consent history dialog (CU-2vqu2gd)
38
+ * caching issues with dynamic predecision (GEO restriction, CU-2vqu2gd)
39
+ * compatibility with image overlay for Elementor videos (CU-2vxf7tf)
40
+ * compatibility with Jupiter X and their Google Web Font Loader (CU-2w90px5)
41
+ * compatibility with latest MailerLite version
42
+ * compatibility with latest TCF vendor list and additional information (CU-20r2upf)
43
+ * compatibility with PHP 7.2.1 (CU-2w38zkr)
44
+ * compatibility with Presto Player (CU-2w3au1b)
45
+ * compatibility with WP Optimize lazyloading (CU-2w39gdf)
46
+ * delete HTTP cookies was called multiple times (CU-2d8dedh)
47
+ * remove unnecessery hint for ePrivacy USA setting in customizer (CU-2w3awb1)
48
+ * sometimes Custom HTML blocks got no YouTube thumbnail and block iframe onload attribute (CU-2wetw74)
49
+ * visual content blockers are rendered 1 second delayed when GTM/MTM is active (CU-2v12m07)
50
+
51
+
52
+ ### perf
53
+
54
+ * drop IE support completely (CU-f72yna)
55
+ * permit process.env destructuring to save kb in bundle size (CU-f72yna)
56
+
57
+
58
+ ### refactor
59
+
60
+ * all legal relevant texts put into own context (CU-2uv31dz)
61
+ * introduce new admin-UI package to prepare for intuitive service template updates (CU-2d8dedh)
62
+ * move blocker list component to @devowl-wp/react-cookie-banner-admin (CU-2d8dedh)
63
+ * move components of cookie form to @devowl-wp/react-cookie-banner-admin (CU-2d8dedh)
64
+ * move first components of cookie form to @devowl-wp/react-cookie-banner-admin (CU-2d8dedh)
65
+ * move group form component to @devowl-wp/react-cookie-banner-admin (CU-d0zyw3)
66
+ * move list component to @devowl-wp/react-cookie-banner-admin (CU-d0zyw3)
67
+ * rename meta field codeOptOutDelete to deleteTechnicalDefinitionsAfterOptOut (CU-2d8dedh)
68
+ * rename meta field cookies to services (CU-2d8dedh)
69
+ * rename meta field criteria cookies to services (CU-2d8dedh)
70
+ * rename meta field forceHidden to shouldForceToShowVisual (CU-2d8dedh)
71
+ * rename meta field hosts to rules (CU-2d8dedh)
72
+ * rename meta field noTechnicalDefinitions to isOnlyEmbeddingExternalResources (CU-2d8dedh)
73
+ * rename meta field providerPivacyPolicy to providerPrivacyPolicyUrl (CU-2d8dedh)
74
+ * rename meta field sessionDuration to isSessionDuration (CU-2d8dedh)
75
+ * rename meta field visual to isVisual (CU-2d8dedh)
76
+ * rename meta field visualDarkMode to isVisualDarkMode (CU-2d8dedh)
77
+ * rename meta fields for Google/Matomo Tag Manager (CU-2d8dedh)
78
+ * rename template field cookies to serviceTemplates (CU-2d8dedh)
79
+ * rename template field deactivateAutomaticContentBlockerCreation to shouldUncheckContentBlockerCheckbox (CU-2d8dedh)
80
+ * rename template field disableTechnicalHandlingThroughPlugin to shouldRemoveTechnicalHandlingWhenOneOf (CU-2d8dedh)
81
+ * restructure template field blockerPresets to contentBlockerTemplates (CU-2d8dedh)
82
+ * restructure template field dynamicFields from object to array (CU-2d8dedh)
83
+ * use browsers URL implementation instead of url-parse (CU-f72yna)
84
+
85
+
86
+
87
+
88
+
89
  ## 3.0.2 (2022-08-09)
90
 
91
 
README.txt CHANGED
@@ -1,7 +1,7 @@
1
  === Real Cookie Banner: GDPR (DSGVO) & ePrivacy Cookie Consent ===
2
  Contributors: devowl, mguenter, jankarres, mrguenter
3
  Tags: cookie banner, cookie consent, cookie plugin, cookie scanner, gdpr, dsgvo, eprivacy, eu cookie law, cookie policy, cookie, consent, consent management
4
- Stable tag: 3.0.2
5
  Requires at least: 5.2
6
  Requires PHP: 7.2.0
7
  Tested up to: 6.0
1
  === Real Cookie Banner: GDPR (DSGVO) & ePrivacy Cookie Consent ===
2
  Contributors: devowl, mguenter, jankarres, mrguenter
3
  Tags: cookie banner, cookie consent, cookie plugin, cookie scanner, gdpr, dsgvo, eprivacy, eu cookie law, cookie policy, cookie, consent, consent management
4
+ Stable tag: 3.1.0
5
  Requires at least: 5.2
6
  Requires PHP: 7.2.0
7
  Tested up to: 6.0
inc/Assets.php CHANGED
@@ -420,23 +420,25 @@ class Assets {
420
  'dependantVisibilityContainers' =>
421
  \DevOwl\RealCookieBanner\view\Blocker::DEPENDANT_VISIBILITY_CONTAINERS,
422
  'bannerI18n' => $core->getCompLanguage()->translateArray([
423
- 'legalBasis' => __('Use on legal basis of', RCB_TD),
424
- 'legitimateInterest' => __('Legitimate interest', RCB_TD),
425
- 'legalRequirement' => __('Compliance with a legal obligation', RCB_TD),
426
- 'consent' => __('Consent', RCB_TD),
427
- 'crawlerLinkAlert' => __(
428
  'We have recognized that you are a crawler/bot. Only natural persons must consent to cookies and processing of personal data. Therefore, the link has no function for you.',
 
429
  RCB_TD
430
  ),
431
- 'technicalCookieDefinition' => __('Technical cookie definition', RCB_TD),
432
- 'usesCookies' => __('Uses cookies', RCB_TD),
433
- 'cookieRefresh' => __('Cookie refresh', RCB_TD),
434
- 'usesNonCookieAccess' => __(
435
  'Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)',
 
436
  RCB_TD
437
  ),
438
- 'host' => __('Host', RCB_TD),
439
- 'duration' => __('Duration', RCB_TD),
440
  'durationUnit' => [
441
  's' => __('second(s)', RCB_TD),
442
  'm' => __('minute(s)', RCB_TD),
@@ -445,22 +447,27 @@ class Assets {
445
  'mo' => __('month(s)', RCB_TD),
446
  'y' => __('year(s)', RCB_TD)
447
  ],
448
- 'noExpiration' => __('No expiration', RCB_TD),
449
- 'type' => __('Type', RCB_TD),
450
- 'purpose' => __('Purpose', RCB_TD),
451
- 'headerTitlePrivacyPolicyHistory' => __('History of your privacy settings', RCB_TD),
452
- 'historyLabel' => __('Show consent from', RCB_TD),
453
- 'historySelectNone' => __('Not yet consented to', RCB_TD),
454
  'close' => __('Close', RCB_TD),
455
  'closeWithoutSaving' => __('Close without saving', RCB_TD),
456
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER => __('Provider', RCB_TD),
457
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY => __(
 
 
 
 
458
  'Privacy Policy',
 
459
  RCB_TD
460
  ),
461
  // translators:
462
- 'ePrivacyNoteMore' => __('and %d more', RCB_TD),
463
- 'ePrivacyUSA' => __('US data processing', RCB_TD),
464
  'yes' => __('Yes', RCB_TD),
465
  'no' => __('No', RCB_TD),
466
  'unknown' => __('Unknown', RCB_TD),
420
  'dependantVisibilityContainers' =>
421
  \DevOwl\RealCookieBanner\view\Blocker::DEPENDANT_VISIBILITY_CONTAINERS,
422
  'bannerI18n' => $core->getCompLanguage()->translateArray([
423
+ 'legalBasis' => _x('Use on legal basis of', 'legal-text', RCB_TD),
424
+ 'legitimateInterest' => _x('Legitimate interest', 'legal-text', RCB_TD),
425
+ 'legalRequirement' => _x('Compliance with a legal obligation', 'legal-text', RCB_TD),
426
+ 'consent' => _x('Consent', 'legal-text', RCB_TD),
427
+ 'crawlerLinkAlert' => _x(
428
  'We have recognized that you are a crawler/bot. Only natural persons must consent to cookies and processing of personal data. Therefore, the link has no function for you.',
429
+ 'legal-text',
430
  RCB_TD
431
  ),
432
+ 'technicalCookieDefinition' => _x('Technical cookie definition', 'legal-text', RCB_TD),
433
+ 'usesCookies' => _x('Uses cookies', 'legal-text', RCB_TD),
434
+ 'cookieRefresh' => _x('Cookie refresh', 'legal-text', RCB_TD),
435
+ 'usesNonCookieAccess' => _x(
436
  'Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)',
437
+ 'legal-text',
438
  RCB_TD
439
  ),
440
+ 'host' => _x('Host', 'legal-text', RCB_TD),
441
+ 'duration' => _x('Duration', 'legal-text', RCB_TD),
442
  'durationUnit' => [
443
  's' => __('second(s)', RCB_TD),
444
  'm' => __('minute(s)', RCB_TD),
447
  'mo' => __('month(s)', RCB_TD),
448
  'y' => __('year(s)', RCB_TD)
449
  ],
450
+ 'noExpiration' => _x('No expiration', 'legal-text', RCB_TD),
451
+ 'type' => _x('Type', 'legal-text', RCB_TD),
452
+ 'purpose' => _x('Purpose', 'legal-text', RCB_TD),
453
+ 'headerTitlePrivacyPolicyHistory' => _x('History of your privacy settings', 'legal-text', RCB_TD),
454
+ 'historyLabel' => _x('Show consent from', 'legal-text', RCB_TD),
455
+ 'historySelectNone' => _x('Not yet consented to', 'legal-text', RCB_TD),
456
  'close' => __('Close', RCB_TD),
457
  'closeWithoutSaving' => __('Close without saving', RCB_TD),
458
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER => _x(
459
+ 'Provider',
460
+ 'legal-text',
461
+ RCB_TD
462
+ ),
463
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL => _x(
464
  'Privacy Policy',
465
+ 'legal-text',
466
  RCB_TD
467
  ),
468
  // translators:
469
+ 'ePrivacyNoteMore' => _x('and %d more', 'legal-text', RCB_TD),
470
+ 'ePrivacyUSA' => _x('US data processing', 'legal-text', RCB_TD),
471
  'yes' => __('Yes', RCB_TD),
472
  'no' => __('No', RCB_TD),
473
  'unknown' => __('Unknown', RCB_TD),
inc/Core.php CHANGED
@@ -278,6 +278,10 @@ class Core extends \DevOwl\RealCookieBanner\base\Core implements
278
  [$this->getBlocker(), 'registerOutputBuffer'],
279
  \DevOwl\RealCookieBanner\view\Blocker::OB_START_PLUGINS_LOADED_PRIORITY
280
  );
 
 
 
 
281
  add_action('DevOwl/Utils/NewVersionInstallation/' . RCB_SLUG, [
282
  \DevOwl\RealCookieBanner\view\customize\banner\Texts::class,
283
  'new_version_installation_after_2_6_5'
@@ -314,6 +318,14 @@ class Core extends \DevOwl\RealCookieBanner\base\Core implements
314
  \DevOwl\RealCookieBanner\settings\Consent::class,
315
  'new_version_installation_after_3_0_1'
316
  ]);
 
 
 
 
 
 
 
 
317
  add_filter('RCB/Blocker/Enabled', [$this->getScanner(), 'force_blocker_enabled']);
318
  add_filter('customize_save_response', [$this, 'customize_save_response'], 10, 1);
319
  add_filter('option_' . \DevOwl\RealCookieBanner\settings\Consent::SETTING_COOKIE_DURATION, [
@@ -617,6 +629,18 @@ class Core extends \DevOwl\RealCookieBanner\base\Core implements
617
  10,
618
  2
619
  );
 
 
 
 
 
 
 
 
 
 
 
 
620
  // Multilingual
621
  add_filter('rest_' . \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME . '_query', [
622
  \DevOwl\RealCookieBanner\comp\language\Hooks::getInstance(),
@@ -633,7 +657,7 @@ class Core extends \DevOwl\RealCookieBanner\base\Core implements
633
  'queryArguments'
634
  ]);
635
  add_filter(
636
- 'DevOwl/Multilingual/Copy/Meta/post/' . \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_COOKIES,
637
  [\DevOwl\RealCookieBanner\comp\language\Hooks::getInstance(), 'copy_blocker_cookies_meta'],
638
  10,
639
  4
278
  [$this->getBlocker(), 'registerOutputBuffer'],
279
  \DevOwl\RealCookieBanner\view\Blocker::OB_START_PLUGINS_LOADED_PRIORITY
280
  );
281
+ add_action('DevOwl/Utils/NewVersionInstallation/' . RCB_SLUG, [
282
+ \DevOwl\RealCookieBanner\settings\TCF::getInstance(),
283
+ 'new_version_installation'
284
+ ]);
285
  add_action('DevOwl/Utils/NewVersionInstallation/' . RCB_SLUG, [
286
  \DevOwl\RealCookieBanner\view\customize\banner\Texts::class,
287
  'new_version_installation_after_2_6_5'
318
  \DevOwl\RealCookieBanner\settings\Consent::class,
319
  'new_version_installation_after_3_0_1'
320
  ]);
321
+ add_action('DevOwl/Utils/NewVersionInstallation/' . RCB_SLUG, [
322
+ \DevOwl\RealCookieBanner\settings\Cookie::getInstance(),
323
+ 'new_version_installation_after_3_0_2'
324
+ ]);
325
+ add_action('DevOwl/Utils/NewVersionInstallation/' . RCB_SLUG, [
326
+ \DevOwl\RealCookieBanner\settings\Blocker::getInstance(),
327
+ 'new_version_installation_after_3_0_2'
328
+ ]);
329
  add_filter('RCB/Blocker/Enabled', [$this->getScanner(), 'force_blocker_enabled']);
330
  add_filter('customize_save_response', [$this, 'customize_save_response'], 10, 1);
331
  add_filter('option_' . \DevOwl\RealCookieBanner\settings\Consent::SETTING_COOKIE_DURATION, [
629
  10,
630
  2
631
  );
632
+ add_filter(
633
+ 'RCB/Revision/BackwardsCompatibility',
634
+ [\DevOwl\RealCookieBanner\settings\Cookie::getInstance(), 'applyMetaRenameBackwardsCompatibility'],
635
+ 10,
636
+ 2
637
+ );
638
+ add_filter(
639
+ 'RCB/Revision/BackwardsCompatibility',
640
+ [\DevOwl\RealCookieBanner\settings\Blocker::getInstance(), 'applyMetaRenameBackwardsCompatibility'],
641
+ 10,
642
+ 2
643
+ );
644
  // Multilingual
645
  add_filter('rest_' . \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME . '_query', [
646
  \DevOwl\RealCookieBanner\comp\language\Hooks::getInstance(),
657
  'queryArguments'
658
  ]);
659
  add_filter(
660
+ 'DevOwl/Multilingual/Copy/Meta/post/' . \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES,
661
  [\DevOwl\RealCookieBanner\comp\language\Hooks::getInstance(), 'copy_blocker_cookies_meta'],
662
  10,
663
  4
inc/Localization.php CHANGED
@@ -80,7 +80,7 @@ class Localization {
80
  foreach (
81
  [
82
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER,
83
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY
84
  ]
85
  as $translateMetaKey
86
  ) {
80
  foreach (
81
  [
82
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER,
83
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL
84
  ]
85
  as $translateMetaKey
86
  ) {
inc/base/others/cachebuster-lib.php CHANGED
@@ -1,5 +1,5 @@
1
  <?php
2
- /* This file was automatically generated (Tue Aug 09 2022 06:34:43 GMT+0000 (Coordinated Universal Time)). */
3
  return [
4
  'animate.css' => '4.1.1',
5
  'mobx' => '4.15.7',
1
  <?php
2
+ /* This file was automatically generated (Mon Aug 29 2022 14:19:36 GMT+0000 (Coordinated Universal Time)). */
3
  return [
4
  'animate.css' => '4.1.1',
5
  'mobx' => '4.15.7',
inc/base/others/cachebuster.php CHANGED
@@ -1,81 +1,81 @@
1
  <?php
2
- /* This file was automatically generated (Tue Aug 09 2022 06:34:43 GMT+0000 (Coordinated Universal Time)). */
3
  return [
4
- 'src/public/dist/13.pro.js' => '6866a22bfe639345873e9415ddeca7f4',
5
- 'src/public/dist/18.lite.js' => 'ac7161e6dcd33daecfd4f83e56b0cf00',
6
- 'src/public/dist/18.pro.js' => '88485eb3e913e045f0c67d72a9b69068',
7
- 'src/public/dist/193.lite.js' => 'd7a0722155f835c915b08b6c93a9208d',
8
- 'src/public/dist/193.pro.js' => 'd71177a05a4f8e8252c7a480e8a2842b',
9
- 'src/public/dist/237.pro.js' => 'f9476a3430b5d3f70591de78f8af5e0c',
10
- 'src/public/dist/348.lite.js' => 'b10e5a1b4ed020083d9b90e354362967',
11
- 'src/public/dist/348.pro.js' => 'e161c26a84fd4aa4dd792c78d8126c02',
12
- 'src/public/dist/418.lite.js' => 'e67dca2dbaa4c6f9fd77a2a546069d67',
13
- 'src/public/dist/418.pro.js' => 'fbfddcc807d91362e42c82e1d16f96ff',
14
- 'src/public/dist/440.lite.js' => '507b1d1d30a2155478e54f9c41e43d3b',
15
- 'src/public/dist/440.pro.js' => 'be0305e357c4bec403a16175006c8fd8',
16
- 'src/public/dist/575.pro.js' => '16d10904bf3a4e0ae5992e701f5d54bf',
17
- 'src/public/dist/609.pro.js' => '49f744702345764e42cb83ff3a887bdc',
18
- 'src/public/dist/673.lite.js' => 'a92738ff483095186475850d0ee63929',
19
- 'src/public/dist/702.lite.js' => 'b4df6c31edc938c93f1556fde2b5124f',
20
- 'src/public/dist/702.pro.js' => 'ca094316644e1e99cdd2a26473f8883e',
21
- 'src/public/dist/756.lite.js' => 'a33fd915f84e6f8be48f0e54138e39f2',
22
- 'src/public/dist/756.pro.js' => '0f18eab40b089c103d9f598326bcdf15',
23
- 'src/public/dist/795.lite.js' => 'f24c07d99365d028468d9a8eef40ca37',
24
- 'src/public/dist/795.pro.js' => '0f2c5c70d9be03caab24126e536c3c3d',
25
- 'src/public/dist/812.lite.js' => '2b4a36a5d4162172ec25662893748524',
26
- 'src/public/dist/836.lite.js' => 'd896b66d63bfe9ef41031dcf1cc1271f',
27
- 'src/public/dist/861.pro.js' => '516c5baa12315fbd7f09469279781436',
28
- 'src/public/dist/914.lite.js' => 'e58092e06d5f33173282b43d04705d56',
29
- 'src/public/dist/914.pro.js' => '182de60076ce6b7f80084a25543f0e63',
30
- 'src/public/dist/933.lite.js' => 'e24ccdc9754ba2f74ef5394f29bf42f6',
31
- 'src/public/dist/933.pro.js' => '07289adf5a3672b0c52c85482ee1299c',
32
- 'src/public/dist/954.lite.js' => 'eaaae2e681627767c86add5ebd61aaf6',
33
- 'src/public/dist/954.pro.js' => 'faf328b7bd41817fcb3693740adbc496',
34
- 'src/public/dist/995.lite.js' => '4f9f4bd3e0ad7939ef90bc7e049d0ede',
35
- 'src/public/dist/995.pro.js' => 'dbe57fe203f1b050ddb42490c9589efa',
36
- 'src/public/dist/admin.lite.js' => '6d1c30718dc366db25133474c3a6f715',
37
- 'src/public/dist/admin.pro.js' => 'd744975972e431f6cee9ea46d5a728f2',
38
- 'src/public/dist/banner_tcf.pro.js' => '68542585d6e08bcf1a3b5cc6808cb61f',
39
- 'src/public/dist/banner.lite.js' => '3f009fb569c4143fbb2edc8fecef0809',
40
- 'src/public/dist/banner.pro.js' => '49c0895f3600db23fa76bfe2680b3dd7',
41
- 'src/public/dist/blocker_tcf.pro.js' => '8173a3f996ba7276ed297f658d399998',
42
- 'src/public/dist/blocker.lite.js' => '79259568b286c15d417bcff9a8809ced',
43
- 'src/public/dist/blocker.pro.js' => '78c94f8de894a57cb97cf93014e4c8e2',
44
- 'src/public/dist/chunk-config-tab-blocker.lite.js' => '5cb105a818b285e48a57b59bc61ab5fa',
45
- 'src/public/dist/chunk-config-tab-blocker.pro.js' => '8b792453095e244c7dc64721c2f3ad0b',
46
- 'src/public/dist/chunk-config-tab-consent.lite.js' => '9b53881d8485d09338c25082b72c0689',
47
- 'src/public/dist/chunk-config-tab-consent.pro.js' => 'd3cbed227e9228f9984371ce7aadb044',
48
- 'src/public/dist/chunk-config-tab-cookies.lite.js' => 'bb2781128dcd96923011cc45cf44a87b',
49
- 'src/public/dist/chunk-config-tab-cookies.pro.js' => '987209b0473b106357bfe1cbab4f6310',
50
- 'src/public/dist/chunk-config-tab-dashboard.lite.js' => '470e5e758f452c37d430d813b53fcd0e',
51
- 'src/public/dist/chunk-config-tab-dashboard.pro.js' => '4b930d0a07157e6fb413a157c331f5ac',
52
- 'src/public/dist/chunk-config-tab-import.lite.js' => '724795aaa805d4ed3db5c60f574a2734',
53
- 'src/public/dist/chunk-config-tab-import.pro.js' => '4eb0ca8d93565a722931b5c5772456e1',
54
- 'src/public/dist/chunk-config-tab-licensing.lite.js' => 'e15e77f532b3a1a23e4dac3cad201b3a',
55
- 'src/public/dist/chunk-config-tab-licensing.pro.js' => 'c197a4fb4a40ff1676bc25f5cb188fe0',
56
- 'src/public/dist/chunk-config-tab-scanner.lite.js' => '272798cd0d3c8996d10584c3a9dd6926',
57
- 'src/public/dist/chunk-config-tab-scanner.pro.js' => '48e7da1ca2c4427e7bae8e81fa1c3750',
58
- 'src/public/dist/chunk-config-tab-settings.lite.js' => 'ebb0daf9fcef8f863be119112010ae1c',
59
- 'src/public/dist/chunk-config-tab-settings.pro.js' => '0727d7ef8d5f8fc66869d3fb39062a46',
60
- 'src/public/dist/chunk-config-tab-tcf.lite.js' => '0adcbf2f3ea0f9ab7ebc49bbdd415813',
61
- 'src/public/dist/chunk-config-tab-tcf.pro.js' => '7e87bb493095bd8024163e00e140e746',
62
- 'src/public/dist/customize_banner.lite.js' => '2000be1569727b4f301a373ea5fc6ae4',
63
- 'src/public/dist/customize_banner.pro.js' => 'f005c96ce8648c77daa205528c241947',
64
- 'src/public/dist/customize.lite.js' => '74eea56813259c0dec291e20466fe0bc',
65
- 'src/public/dist/customize.pro.js' => 'b873769232874d709740555ca1fad624',
66
- 'src/public/dist/queue.lite.js' => '7b9c552c5049e1b529155a7c01b25aef',
67
- 'src/public/dist/queue.pro.js' => '352f65e78294e1be38b2cc3a8c9f4a8e',
68
- 'src/public/dist/vendor-admin.lite.js' => 'f1c19a085c135d0f8d34f8678f9737df',
69
- 'src/public/dist/vendor-admin.pro.js' => 'a66ff8967c03ab9411bbbe3051ca0b94',
70
- 'src/public/dist/vendor-banner_tcf.pro.js' => '5f087cf149b75526844e11e03ba7ca32',
71
- 'src/public/dist/vendor-banner.lite.js' => '9d21941f8683c473e4fad7ce9737b540',
72
- 'src/public/dist/vendor-banner.pro.js' => '7a72278ea147e6c777ef2c21d441214d',
73
- 'src/public/dist/vendor-customize_banner.lite.js' => '18020ebd4fd9ed4062a55152c7eeb6ae',
74
- 'src/public/dist/vendor-customize_banner.pro.js' => '17c03de8dd20b79d97cbc928b3b826f5',
75
- 'src/public/dist/vendor-customize.lite.js' => '318f0df06a7f1686f580e3500783e0cc',
76
- 'src/public/dist/vendor-customize.pro.js' => '218aacecd433ad4ae272bdc2f339bd7d',
77
- 'src/public/dist/vendor-queue.lite.js' => 'b72bded98fc236932c39620d16d7780e',
78
- 'src/public/dist/vendor-queue.pro.js' => 'b72bded98fc236932c39620d16d7780e',
79
- 'src/public/dist/admin.css' => '80138025b52ea88ade1dba28bccf90e1',
80
- 'src/public/dist/customize.css' => 'e0fa92a4143092e1700e00cc35b5c8fc'
81
  ];
1
  <?php
2
+ /* This file was automatically generated (Mon Aug 29 2022 14:19:36 GMT+0000 (Coordinated Universal Time)). */
3
  return [
4
+ 'src/public/dist/101.pro.js' => '899ef18452f89e84adb38475ccec6b94',
5
+ 'src/public/dist/164.lite.js' => '7d2bd40dae8fb1432a350b4b0010550d',
6
+ 'src/public/dist/164.pro.js' => '7c24926370370ee71a35a49162458b5e',
7
+ 'src/public/dist/193.lite.js' => 'a53b54fa072322b0d6d2b7f6fb3a56a5',
8
+ 'src/public/dist/193.pro.js' => '52bcfabebbb4d34e627a06096acfbd68',
9
+ 'src/public/dist/197.lite.js' => 'bf6c2289a74c687b9e66776081f9f32f',
10
+ 'src/public/dist/197.pro.js' => '2188c8723460717af8fc6c6d30aac364',
11
+ 'src/public/dist/315.lite.js' => '48c19d833b49cd55dd49bb7eb700c5ef',
12
+ 'src/public/dist/315.pro.js' => '3b2e94da272b29ebb12c1b2fb0cfc52f',
13
+ 'src/public/dist/341.lite.js' => '2c8dcc34b2e00bf4a286112746c646d1',
14
+ 'src/public/dist/341.pro.js' => '593b820bca442dae1732e7ecc6f042a5',
15
+ 'src/public/dist/355.lite.js' => '17e9554733c2cf192184c05337ff16aa',
16
+ 'src/public/dist/355.pro.js' => '766e9d453a0bccb22a17b4c3aa06440a',
17
+ 'src/public/dist/378.lite.js' => '654a3e55f035eea87792488e7acd571e',
18
+ 'src/public/dist/378.pro.js' => '139bb56da680e0b6b3e2c02fb1fa85e6',
19
+ 'src/public/dist/410.pro.js' => 'fcaa35e38de28acce978e5950c775750',
20
+ 'src/public/dist/455.lite.js' => '7879aa059cfdf24779fc876f127d62f9',
21
+ 'src/public/dist/455.pro.js' => 'c5ded8de8f0d154bc554746f3cd4bd9d',
22
+ 'src/public/dist/479.lite.js' => 'bb0341ab33f700233ec3f27d5f176b26',
23
+ 'src/public/dist/552.pro.js' => 'fc554c1e317f792aee0d9f81cbb25646',
24
+ 'src/public/dist/756.lite.js' => '74f78933948021e8487c820216ff543f',
25
+ 'src/public/dist/756.pro.js' => '40c72264d25b781c43b576f4d588a129',
26
+ 'src/public/dist/795.lite.js' => '9cc40c74f19d786f6a285191fc9e4727',
27
+ 'src/public/dist/795.pro.js' => '0a7256810c8661d1b45d2f9b5532b581',
28
+ 'src/public/dist/812.pro.js' => '3f0627cfb716bff51c5922977f48cede',
29
+ 'src/public/dist/849.lite.js' => 'c60e150eaf3bb11285afd641bb82c258',
30
+ 'src/public/dist/849.pro.js' => '392acfbfd73e2179728c6da8787c05c6',
31
+ 'src/public/dist/885.lite.js' => 'e935c52edf2134ab19319f070b168858',
32
+ 'src/public/dist/885.pro.js' => '561e398898b8b91f8777fb96d73e9b9c',
33
+ 'src/public/dist/914.lite.js' => 'e3943de6d9afbc070bb8e19d7cbe03c0',
34
+ 'src/public/dist/914.pro.js' => '71c93cbc1949676fcff48529f1626792',
35
+ 'src/public/dist/946.lite.js' => '56f4deefebb59d89f866251f1cabdad8',
36
+ 'src/public/dist/995.lite.js' => '617f2fc7d78d375a3cebe718ac74a6ea',
37
+ 'src/public/dist/995.pro.js' => '8d31a29e6bf1442b09d6da4e7ac4e2a6',
38
+ 'src/public/dist/admin.lite.js' => 'd912cf53deae92ad3e30e422de90a92d',
39
+ 'src/public/dist/admin.pro.js' => '71aefb85120a3ce466b0334bcbeac5d4',
40
+ 'src/public/dist/banner_tcf.pro.js' => '7d0c2d50259467c53270b5b13ec638b2',
41
+ 'src/public/dist/banner.lite.js' => '2eeb829f7e16d36ec564c544dfe70ff3',
42
+ 'src/public/dist/banner.pro.js' => 'e288a0ab820de6b7603a5a68f7909818',
43
+ 'src/public/dist/blocker_tcf.pro.js' => '7f293a1c58af9a65a68e7e557b86b17e',
44
+ 'src/public/dist/blocker.lite.js' => '1cfdb3b494d37358f3adee79a4aa70b2',
45
+ 'src/public/dist/blocker.pro.js' => 'cfc8c6338dae685c9cf10aabeee64d35',
46
+ 'src/public/dist/chunk-config-tab-blocker.lite.js' => 'd6ba8d68c8e6023a49394c037323210d',
47
+ 'src/public/dist/chunk-config-tab-blocker.pro.js' => '4e759926a299df1e425a05db11ac3380',
48
+ 'src/public/dist/chunk-config-tab-consent.lite.js' => '71218ebaa3a874e00e1d45dfeec12eaf',
49
+ 'src/public/dist/chunk-config-tab-consent.pro.js' => '9fa1fecf235d80bf217912e88c9b1a23',
50
+ 'src/public/dist/chunk-config-tab-cookies.lite.js' => 'c57b6f24b6059954e5323d293d7e9671',
51
+ 'src/public/dist/chunk-config-tab-cookies.pro.js' => '3ebbe93cf3e87ae5b73398fc0e8b8473',
52
+ 'src/public/dist/chunk-config-tab-dashboard.lite.js' => '77193144671fd821c66674cc1cbbbb0c',
53
+ 'src/public/dist/chunk-config-tab-dashboard.pro.js' => 'ae7b2609148bcb36af8544f794659f69',
54
+ 'src/public/dist/chunk-config-tab-import.lite.js' => 'eb4858b5cb8da69debea1aa3d78c5987',
55
+ 'src/public/dist/chunk-config-tab-import.pro.js' => 'aec3894e3c8c913817207b3a9811c45e',
56
+ 'src/public/dist/chunk-config-tab-licensing.lite.js' => 'ca5bb334072bb56e99b519a929e17946',
57
+ 'src/public/dist/chunk-config-tab-licensing.pro.js' => 'fa72b8a2a61e7939fce68e89749dfabc',
58
+ 'src/public/dist/chunk-config-tab-scanner.lite.js' => '84d450e8b418d4f1fee52dba1c14d0a8',
59
+ 'src/public/dist/chunk-config-tab-scanner.pro.js' => '61a6fbf46318fed30b59658db0e85fe5',
60
+ 'src/public/dist/chunk-config-tab-settings.lite.js' => '1fb11a394f2a8a2f3603d783bafc0c93',
61
+ 'src/public/dist/chunk-config-tab-settings.pro.js' => '94f0a9829cb4946de14d7ca34e4bd288',
62
+ 'src/public/dist/chunk-config-tab-tcf.lite.js' => '84d6d22ca914599d0224ce39d255c14d',
63
+ 'src/public/dist/chunk-config-tab-tcf.pro.js' => '387a538450a540935b341f7a805f6f18',
64
+ 'src/public/dist/customize_banner.lite.js' => '8484b36d80a2bb74935fbf8b561c49bc',
65
+ 'src/public/dist/customize_banner.pro.js' => 'a97a332eeaba5fdc90adc8dfdbdbd017',
66
+ 'src/public/dist/customize.lite.js' => '670175f060a99d3107547d15a99d8e46',
67
+ 'src/public/dist/customize.pro.js' => '8a0e1d68174066855151702b873dc6de',
68
+ 'src/public/dist/queue.lite.js' => 'fd84b87c9f3cd7bf0b9ead38c7fa96b9',
69
+ 'src/public/dist/queue.pro.js' => '9f4aac9a76e238e39d67e09a88f5e11b',
70
+ 'src/public/dist/vendor-admin.lite.js' => '1f7076f00500a220f4f7592445dcbab6',
71
+ 'src/public/dist/vendor-admin.pro.js' => 'f93035b7927a13772839c34da257d233',
72
+ 'src/public/dist/vendor-banner_tcf.pro.js' => '46aa79f96be0e4adf5ce697c999e6adc',
73
+ 'src/public/dist/vendor-banner.lite.js' => 'a584c40b3423927b166892b0e124647a',
74
+ 'src/public/dist/vendor-banner.pro.js' => '401613a092edc7b92537eeca76324300',
75
+ 'src/public/dist/vendor-customize_banner.lite.js' => 'ccef45cd1ab12f4b2a4f50a5f0376ecf',
76
+ 'src/public/dist/vendor-customize_banner.pro.js' => '3b84b13631b193fd69b94ad363bd4c2e',
77
+ 'src/public/dist/vendor-customize.lite.js' => 'b338b70d555ecf3c2ab39208aacf9f8d',
78
+ 'src/public/dist/vendor-customize.pro.js' => '6bbb91f447e07c083274517bada7080a',
79
+ 'src/public/dist/admin.css' => '845b1791436cf1e6cbca04b6437f2033',
80
+ 'src/public/dist/customize.css' => 'eaf2f7f4611fd50f77e85d0c08c1b680'
81
  ];
inc/comp/migration/DashboardTileMigrationMajor3.php CHANGED
@@ -92,10 +92,29 @@ class DashboardTileMigrationMajor3 extends \DevOwl\RealCookieBanner\comp\migrati
92
  'ttdsg',
93
  __('Legal adjustments to texts and design in cookie banner', RCB_TD),
94
  \join('<br /><br/ >', [
95
- // translators:
96
- __(
97
- 'In recent months, more clarity has been created about what consent management on websites should look like - and what it shouldn\'t. In particular, through the <a href="https://www.gesetze-im-internet.de/ttdsg/" target="_blank">TTDSG</a> (Telecommunications Telemedia Data Protection Act; Germany) and <a href="https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf" target="_blank">Guidance of the Conference of Independent Data Protection Authorities for cookie banners</a> (coordinated legal interpretation of all German data protection authorities; in German), there are now clearer rules that further interpret or complement the EU-wide applicable <a href="https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex%3A32009L0136" target="_blank">ePrivacy Directive</a> and <a href="https://gdpr-info.eu/" target="_blank">GDPR</a>. Furthermore, there were important decisions such as the evaluation of <a href="https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-english.pdf" target="_blank">TCF by ADP (Belgium)</a>, the <a href="https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google%20Analytics_DE_bk_0.pdf" target="_blank">Google Analytics decision by dsb (Austria)</a> and the <a href="https://www.cnil.fr/sites/default/files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics.pdf" target="_blank">position on Google Analytics by CNIL</a>.',
98
- RCB_TD
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
99
  ),
100
  __(
101
  'We have adapted the texts and design suggestions for the cookie banner accordingly. <strong>We strongly advise you to adopt the new texts and design suggestions for your website!</strong>',
@@ -120,10 +139,13 @@ class DashboardTileMigrationMajor3 extends \DevOwl\RealCookieBanner\comp\migrati
120
  'legal-links',
121
  __('Place legal links on each subpage', RCB_TD),
122
  \join('<br /><br/ >', [
123
- // translators:
124
- __(
125
- 'In accordance with the requirements of the &quot;<a href="https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf" target="_blank">Guidance of the Conference of Independent Data Protection Authorities for cookie banners</a>&quot;, the possibility to view, modify and revoke consent must be directly accessible on every sub-page of your website.',
126
- RCB_TD
 
 
 
127
  ),
128
  __(
129
  'This means you can no longer "hide" the links/buttons in your privacy policy. <strong>We recommend placing the option in the footer of each subpage.</strong>',
@@ -386,7 +408,7 @@ class DashboardTileMigrationMajor3 extends \DevOwl\RealCookieBanner\comp\migrati
386
  $blockers = $blockerPresets->getBlockerWithPreset();
387
  if (!is_wp_error($blockers)) {
388
  foreach ($blockers as $blocker) {
389
- if (!$blocker->metas['visual'] || $blocker->metas['visualType'] !== 'default') {
390
  // Already configured as non-default visual or visually deactivated
391
  continue;
392
  }
@@ -415,9 +437,13 @@ class DashboardTileMigrationMajor3 extends \DevOwl\RealCookieBanner\comp\migrati
415
  // Documented in AbstractDashboardTileMigration
416
  public function getDescription() {
417
  return \join('<br /><br/ >', [
418
- __(
419
- 'With Real Cookie Banner 3.0 we have released a major update, in which we have implemented, among other things, current legal adjustments. Read more about the changes in our <a href="https://devowl.io/2022/real-cookie-banner-3-0/" target="_blank">blog post</a>.',
420
- RCB_TD
 
 
 
 
421
  ),
422
  __(
423
  '<strong>You should definitely take a look at the following points, because we have adjusted the behavior of the cookie banner.</strong> All changes can be optionally activated or ignored. We will not fundamentally change your cookie banner without your consent.',
92
  'ttdsg',
93
  __('Legal adjustments to texts and design in cookie banner', RCB_TD),
94
  \join('<br /><br/ >', [
95
+ \sprintf(
96
+ // translators:
97
+ __(
98
+ 'In recent months, more clarity has been created about what consent management on websites should look like - and what it shouldn\'t. In particular, through the <a href="%1$s" target="_blank">TTDSG</a> (Telecommunications Telemedia Data Protection Act; Germany) and <a href="%2$s" target="_blank">Guidance of the Conference of Independent Data Protection Authorities for cookie banners</a> (coordinated legal interpretation of all German data protection authorities; in German), there are now clearer rules that further interpret or complement the EU-wide applicable <a href="%3$s" target="_blank">ePrivacy Directive</a> and <a href="%4$s" target="_blank">GDPR</a>. Furthermore, there were important decisions such as the evaluation of <a href="%5$s" target="_blank">TCF by ADP (Belgium)</a>, the <a href="%6$s" target="_blank">Google Analytics decision by dsb (Austria)</a> and the <a href="%7$s" target="_blank">position on Google Analytics by CNIL</a>.',
99
+ RCB_TD
100
+ ),
101
+ __('https://www.gesetze-im-internet.de/ttdsg/', RCB_TD),
102
+ __('https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf', RCB_TD),
103
+ __('https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex%3A32009L0136', RCB_TD),
104
+ __('https://gdpr-info.eu/', RCB_TD),
105
+ __(
106
+ 'https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-english.pdf',
107
+ RCB_TD
108
+ ),
109
+ // translators:
110
+ __(
111
+ 'https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%2$20Google%20Analytics_DE_bk_0.pdf',
112
+ RCB_TD
113
+ ),
114
+ __(
115
+ 'https://www.cnil.fr/sites/default/files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics.pdf',
116
+ RCB_TD
117
+ )
118
  ),
119
  __(
120
  'We have adapted the texts and design suggestions for the cookie banner accordingly. <strong>We strongly advise you to adopt the new texts and design suggestions for your website!</strong>',
139
  'legal-links',
140
  __('Place legal links on each subpage', RCB_TD),
141
  \join('<br /><br/ >', [
142
+ \sprintf(
143
+ // translators:
144
+ __(
145
+ 'In accordance with the requirements of the &quot;<a href="%s" target="_blank">Guidance of the Conference of Independent Data Protection Authorities for cookie banners</a>&quot;, the possibility to view, modify and revoke consent must be directly accessible on every sub-page of your website.',
146
+ RCB_TD
147
+ ),
148
+ __('https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf', RCB_TD)
149
  ),
150
  __(
151
  'This means you can no longer "hide" the links/buttons in your privacy policy. <strong>We recommend placing the option in the footer of each subpage.</strong>',
408
  $blockers = $blockerPresets->getBlockerWithPreset();
409
  if (!is_wp_error($blockers)) {
410
  foreach ($blockers as $blocker) {
411
+ if (!$blocker->metas['isVisual'] || $blocker->metas['visualType'] !== 'default') {
412
  // Already configured as non-default visual or visually deactivated
413
  continue;
414
  }
437
  // Documented in AbstractDashboardTileMigration
438
  public function getDescription() {
439
  return \join('<br /><br/ >', [
440
+ \sprintf(
441
+ // translators:
442
+ __(
443
+ 'With Real Cookie Banner 3.0 we have released a major update, in which we have implemented, among other things, current legal adjustments. Read more about the changes in our <a href="%s" target="_blank">blog post</a>.',
444
+ RCB_TD
445
+ ),
446
+ __('https://devowl.io/2022/real-cookie-banner-3-0/', RCB_TD)
447
  ),
448
  __(
449
  '<strong>You should definitely take a look at the following points, because we have adjusted the behavior of the cookie banner.</strong> All changes can be optionally activated or ignored. We will not fundamentally change your cookie banner without your consent.',
inc/comp/migration/DashboardTileTcfV2IllegalUsage.php CHANGED
@@ -41,11 +41,15 @@ class DashboardTileTcfV2IllegalUsage extends \DevOwl\RealCookieBanner\comp\migra
41
  <li><a href="%s" target="_blank">%s</a></li>
42
  <li><a href="%s" target="_blank">%s</a></li>
43
  </ul>',
44
- esc_attr('https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision'),
45
  __('Decision of the Belgian Data Protection Authority (APD)', RCB_TD),
46
- esc_attr('https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement'),
 
 
47
  __('Statement of the IAB Europe (English)', RCB_TD),
48
- esc_attr('https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke'),
 
 
49
  __('Legal assessment by RA Dr. Schwenke (German)', RCB_TD)
50
  )
51
  ])
41
  <li><a href="%s" target="_blank">%s</a></li>
42
  <li><a href="%s" target="_blank">%s</a></li>
43
  </ul>',
44
+ esc_attr(__('https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision', RCB_TD)),
45
  __('Decision of the Belgian Data Protection Authority (APD)', RCB_TD),
46
+ esc_attr(
47
+ __('https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement', RCB_TD)
48
+ ),
49
  __('Statement of the IAB Europe (English)', RCB_TD),
50
+ esc_attr(
51
+ __('https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke', RCB_TD)
52
+ ),
53
  __('Legal assessment by RA Dr. Schwenke (German)', RCB_TD)
54
  )
55
  ])
inc/import/Export.php CHANGED
@@ -202,7 +202,7 @@ class Export {
202
  if ($key === 'metas') {
203
  foreach (
204
  [
205
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_COOKIES,
206
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS
207
  ]
208
  as $metaName
202
  if ($key === 'metas') {
203
  foreach (
204
  [
205
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES,
206
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS
207
  ]
208
  as $metaName
inc/import/Import.php CHANGED
@@ -27,10 +27,6 @@ class Import {
27
  use ImportCustomizeBanner;
28
  use ImportMessages;
29
  const IMPORT_POST_STATI = ['keep', 'publish', 'private', 'draft'];
30
- const COOKIE_CHECK_MANAGERS = [
31
- ['has_gtm', 'thisIsGoogleTagManager', 'Google Tag Manager'],
32
- ['has_mtm', 'thisIsMatomoTagManager', 'Matomo Tag Manager']
33
- ];
34
  /**
35
  * Default cookie group when it can not be assigned to one.
36
  *
27
  use ImportCustomizeBanner;
28
  use ImportMessages;
29
  const IMPORT_POST_STATI = ['keep', 'publish', 'private', 'draft'];
 
 
 
 
30
  /**
31
  * Default cookie group when it can not be assigned to one.
32
  *
inc/import/ImportBlocker.php CHANGED
@@ -39,9 +39,15 @@ trait ImportBlocker {
39
  $associatedCount = 0;
40
  $showPreviewImageMediaLibraryMessage = \false;
41
  if (\is_array($metas)) {
42
- // Fix meta: hosts
43
- if (isset($metas['hosts']) && \is_array($metas['hosts'])) {
44
- $metas['hosts'] = \join("\n", $metas['hosts']);
 
 
 
 
 
 
45
  }
46
  // Fix meta: tcfVendors
47
  if ($this->isPro() && isset($metas['tcfVendors']) && \is_array($metas['tcfVendors'])) {
@@ -55,15 +61,25 @@ trait ImportBlocker {
55
  $metas['tcfVendors'] = \join(',', $metas['tcfVendors']);
56
  }
57
  // Fix meta: cookies
58
- if (isset($metas['cookies']) && \is_array($metas['cookies'])) {
59
- $countAllAssociations += \count($metas['cookies']);
60
- $metas['cookies'] = $this->correctAssociationIdsForBlocker(
61
- $metas['cookies'],
 
 
 
 
 
 
 
62
  'mapCookies',
63
  \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME
64
  );
65
- $associatedCount += \count($metas['cookies']);
66
- $metas['cookies'] = \join(',', $metas['cookies']);
 
 
 
67
  }
68
  if (isset($metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_MEDIA_THUMBNAIL])) {
69
  $showPreviewImageMediaLibraryMessage = \true;
39
  $associatedCount = 0;
40
  $showPreviewImageMediaLibraryMessage = \false;
41
  if (\is_array($metas)) {
42
+ // Fix meta: rules
43
+ if (
44
+ isset($metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_RULES]) &&
45
+ \is_array($metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_RULES])
46
+ ) {
47
+ $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_RULES] = \join(
48
+ "\n",
49
+ $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_RULES]
50
+ );
51
  }
52
  // Fix meta: tcfVendors
53
  if ($this->isPro() && isset($metas['tcfVendors']) && \is_array($metas['tcfVendors'])) {
61
  $metas['tcfVendors'] = \join(',', $metas['tcfVendors']);
62
  }
63
  // Fix meta: cookies
64
+ if (
65
+ isset($metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES]) &&
66
+ \is_array($metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES])
67
+ ) {
68
+ $countAllAssociations += \count(
69
+ $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES]
70
+ );
71
+ $metas[
72
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES
73
+ ] = $this->correctAssociationIdsForBlocker(
74
+ $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES],
75
  'mapCookies',
76
  \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME
77
  );
78
+ $associatedCount += \count($metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES]);
79
+ $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES] = \join(
80
+ ',',
81
+ $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES]
82
+ );
83
  }
84
  if (isset($metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_MEDIA_THUMBNAIL])) {
85
  $showPreviewImageMediaLibraryMessage = \true;
inc/presets/AbstractBlockerPreset.php CHANGED
@@ -23,7 +23,7 @@ abstract class AbstractBlockerPreset {
23
  return \sprintf('<a href="mailto:%1$s" target="_blank">%1$s</a>', get_bloginfo('admin_email'));
24
  }
25
  /**
26
- * Iterate all known CDNs and return an array for blocking hosts. You do not need to include
27
  * the wildcard symbol `*` as it is automatically created.
28
  *
29
  * @param string $filename
23
  return \sprintf('<a href="mailto:%1$s" target="_blank">%1$s</a>', get_bloginfo('admin_email'));
24
  }
25
  /**
26
+ * Iterate all known CDNs and return an array for blocking rules. You do not need to include
27
  * the wildcard symbol `*` as it is automatically created.
28
  *
29
  * @param string $filename
inc/presets/BlockerPresets.php CHANGED
@@ -137,7 +137,7 @@ class BlockerPresets extends \DevOwl\RealCookieBanner\presets\Presets {
137
  }
138
  // Documented in Presets
139
  public function getOtherMetaKeys() {
140
- // Make hosts always available in cache cause we need this for the scanner
141
  return ['extended', 'scanOptions'];
142
  }
143
  /**
@@ -149,36 +149,35 @@ class BlockerPresets extends \DevOwl\RealCookieBanner\presets\Presets {
149
  public function resolveAvailableCookies(&$preset) {
150
  $cookiePresets = new \DevOwl\RealCookieBanner\presets\CookiePresets();
151
  $existingCookies = \DevOwl\RealCookieBanner\presets\CookiePresets::getCookiesWithPreset();
152
- if ($preset !== \false && isset($preset['attributes'], $preset['attributes']['cookies'])) {
153
  $newCookies = [];
154
- foreach ($preset['attributes']['cookies'] as $cookie) {
155
  if (\is_string($cookie)) {
156
  // It should reference to an existing preset, let's resolve the ID
 
157
  foreach ($existingCookies as $existingCookie) {
158
  if (
159
  $existingCookie->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID] ===
160
  $cookie
161
  ) {
162
- $newCookies[] = $existingCookie->ID;
163
- continue 2;
164
  }
165
  }
166
  // Cookie preset is available, but does not actually exist as cookie
167
- $cookieAttributes = $cookiePresets->getFromCache($cookie);
168
- $cookieName = $cookieAttributes['name'];
169
- $cookieDescription = $cookieAttributes['description'] ?? '';
170
  $newCookies[] = [
171
- 'id' => $cookie,
172
- 'name' =>
173
- $cookieName . (empty($cookieDescription) ? '' : \sprintf(' (%s)', $cookieDescription)),
174
- 'version' => $cookieAttributes['version'],
175
- 'attributes' => $cookiePresets->getWithAttributes($cookie)['attributes']
 
176
  ];
177
  } else {
178
  $newCookies[] = $cookie;
179
  }
180
  }
181
- $preset['attributes']['cookies'] = $newCookies;
182
  }
183
  return $preset;
184
  }
137
  }
138
  // Documented in Presets
139
  public function getOtherMetaKeys() {
140
+ // Make rules always available in cache cause we need this for the scanner
141
  return ['extended', 'scanOptions'];
142
  }
143
  /**
149
  public function resolveAvailableCookies(&$preset) {
150
  $cookiePresets = new \DevOwl\RealCookieBanner\presets\CookiePresets();
151
  $existingCookies = \DevOwl\RealCookieBanner\presets\CookiePresets::getCookiesWithPreset();
152
+ if ($preset !== \false && isset($preset['attributes'], $preset['attributes']['serviceTemplates'])) {
153
  $newCookies = [];
154
+ foreach ($preset['attributes']['serviceTemplates'] as $cookie) {
155
  if (\is_string($cookie)) {
156
  // It should reference to an existing preset, let's resolve the ID
157
+ $created = \false;
158
  foreach ($existingCookies as $existingCookie) {
159
  if (
160
  $existingCookie->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID] ===
161
  $cookie
162
  ) {
163
+ $created = $existingCookie->ID;
 
164
  }
165
  }
166
  // Cookie preset is available, but does not actually exist as cookie
167
+ $cookieFromCache = $cookiePresets->getFromCache($cookie);
 
 
168
  $newCookies[] = [
169
+ 'identifier' => $cookie,
170
+ 'name' => $cookieFromCache['name'],
171
+ 'subHeadline' => $cookieFromCache['description'] ?? '',
172
+ 'version' => $cookieFromCache['version'],
173
+ 'attributes' => $cookiePresets->getWithAttributes($cookie)['attributes'],
174
+ 'created' => $created
175
  ];
176
  } else {
177
  $newCookies[] = $cookie;
178
  }
179
  }
180
+ $preset['attributes']['serviceTemplates'] = $newCookies;
181
  }
182
  return $preset;
183
  }
inc/presets/CookiePresets.php CHANGED
@@ -93,7 +93,7 @@ class CookiePresets extends \DevOwl\RealCookieBanner\presets\Presets {
93
  }
94
  // Documented in Presets
95
  public function getOtherMetaKeys() {
96
- return ['blockerPresets', 'extended'];
97
  }
98
  // Documented in Presets
99
  public function expandResult(&$rows) {
93
  }
94
  // Documented in Presets
95
  public function getOtherMetaKeys() {
96
+ return ['contentBlockerTemplates', 'extended'];
97
  }
98
  // Documented in Presets
99
  public function expandResult(&$rows) {
inc/presets/UpdateNotice.php CHANGED
@@ -54,7 +54,7 @@ class UpdateNotice {
54
  $configPage = \DevOwl\RealCookieBanner\Core::getInstance()->getConfigPage();
55
  echo '<div class="notice notice-warning"><p>' .
56
  __(
57
- 'It seems that since the last update of <strong>Real Cookies Banner</strong> some templates have been updated. Please check your following services to make sure they are up to date:',
58
  RCB_TD
59
  ) .
60
  '</p><ul>';
@@ -64,7 +64,6 @@ class UpdateNotice {
64
  case \DevOwl\RealCookieBanner\settings\Blocker::CPT_NAME:
65
  $typeLabel = __('Content Blocker', RCB_TD);
66
  $editLink = $configPageUrl . '#/blocker/edit/' . $update->post_id;
67
- $createLink = $configPageUrl . '#/blocker/new';
68
  break;
69
  case \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME:
70
  $groupIds = wp_get_post_terms(
@@ -74,32 +73,20 @@ class UpdateNotice {
74
  );
75
  $typeLabel = __('Service (Cookie)', RCB_TD);
76
  $editLink = $configPageUrl . '#/cookies/' . $groupIds[0] . '/edit/' . $update->post_id;
77
- $createLink = $configPageUrl . '#/cookies/' . $groupIds[0] . '/new';
78
  break;
79
  default:
80
  break;
81
  }
82
  echo \sprintf(
83
- '<li><strong>%s</strong> (%s) - <a target="_blank" href="%s">%s</a> - <a target="_blank" href="%s">%s</a></li>',
84
  $update->post_title,
85
  $typeLabel,
86
  $editLink,
87
- __('Edit', RCB_TD),
88
- $createLink,
89
- __('Create new from template', RCB_TD)
90
  );
91
  }
92
  $dismissLink = add_query_arg(self::DISMISS_PARAM, '1');
93
- echo '</ul><p>' .
94
- __(
95
- 'The easiest way to apply the changes is to delete the service and all connected content blockers in Real Cookie Banner and create it again from the service templates.',
96
- RCB_TD
97
- ) .
98
- '</p><p><a href="' .
99
- esc_url($dismissLink) .
100
- '">' .
101
- __('Dismiss this notice', RCB_TD) .
102
- '</a></p></div>';
103
  }
104
  /**
105
  * Read all updates from database.
54
  $configPage = \DevOwl\RealCookieBanner\Core::getInstance()->getConfigPage();
55
  echo '<div class="notice notice-warning"><p>' .
56
  __(
57
+ 'Changes have been made to the templates you use in Real Cookie Banner. You should review the proposed changes and adjust your services if necessary to be able to remain legally compliant. The following services are affected:',
58
  RCB_TD
59
  ) .
60
  '</p><ul>';
64
  case \DevOwl\RealCookieBanner\settings\Blocker::CPT_NAME:
65
  $typeLabel = __('Content Blocker', RCB_TD);
66
  $editLink = $configPageUrl . '#/blocker/edit/' . $update->post_id;
 
67
  break;
68
  case \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME:
69
  $groupIds = wp_get_post_terms(
73
  );
74
  $typeLabel = __('Service (Cookie)', RCB_TD);
75
  $editLink = $configPageUrl . '#/cookies/' . $groupIds[0] . '/edit/' . $update->post_id;
 
76
  break;
77
  default:
78
  break;
79
  }
80
  echo \sprintf(
81
+ '<li><strong>%s</strong> (%s) - <a target="_blank" href="%s">%s</a></li>',
82
  $update->post_title,
83
  $typeLabel,
84
  $editLink,
85
+ __('Review changes', RCB_TD)
 
 
86
  );
87
  }
88
  $dismissLink = add_query_arg(self::DISMISS_PARAM, '1');
89
+ echo '</ul><p><a href="' . esc_url($dismissLink) . '">' . __('Dismiss this notice', RCB_TD) . '</a></p></div>';
 
 
 
 
 
 
 
 
 
90
  }
91
  /**
92
  * Read all updates from database.
inc/presets/free/ElementorPreset.php CHANGED
@@ -40,7 +40,7 @@ class ElementorPreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePre
40
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
41
  ),
42
  'provider' => get_bloginfo('name'),
43
- 'providerPrivacyPolicy' => \DevOwl\RealCookieBanner\settings\General::getInstance()->getPrivacyPolicyUrl(
44
  ''
45
  ),
46
  'technicalDefinitions' => [
@@ -49,7 +49,7 @@ class ElementorPreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePre
49
  'name' => 'elementor',
50
  'host' => $cookieHost,
51
  'durationUnit' => 'y',
52
- 'sessionDuration' => \false,
53
  'duration' => 0
54
  ],
55
  [
@@ -57,7 +57,7 @@ class ElementorPreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePre
57
  'name' => 'elementor',
58
  'host' => $cookieHost,
59
  'durationUnit' => 'y',
60
- 'sessionDuration' => \false,
61
  'duration' => 0
62
  ]
63
  ],
40
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
41
  ),
42
  'provider' => get_bloginfo('name'),
43
+ 'providerPrivacyPolicyUrl' => \DevOwl\RealCookieBanner\settings\General::getInstance()->getPrivacyPolicyUrl(
44
  ''
45
  ),
46
  'technicalDefinitions' => [
49
  'name' => 'elementor',
50
  'host' => $cookieHost,
51
  'durationUnit' => 'y',
52
+ 'isSessionDuration' => \false,
53
  'duration' => 0
54
  ],
55
  [
57
  'name' => 'elementor',
58
  'host' => $cookieHost,
59
  'durationUnit' => 'y',
60
+ 'isSessionDuration' => \false,
61
  'duration' => 0
62
  ]
63
  ],
inc/presets/free/FontAwesomePreset.php CHANGED
@@ -32,8 +32,8 @@ class FontAwesomePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookieP
32
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
33
  ),
34
  'provider' => 'Fonticons, Inc.',
35
- 'providerPrivacyPolicy' => 'https://fontawesome.com/privacy',
36
- 'noTechnicalDefinitions' => \true,
37
  'technicalHandlingNotice' => __(
38
  'There is no need for an opt-in script, because Font Awesome is loaded by some plugin or theme without JavaScript. In addition to this cookie, please create a content blocker that automatically blocks Font Awesome.',
39
  RCB_TD
32
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
33
  ),
34
  'provider' => 'Fonticons, Inc.',
35
+ 'providerPrivacyPolicyUrl' => 'https://fontawesome.com/privacy',
36
+ 'isEmbeddingOnlyExternalResources' => \true,
37
  'technicalHandlingNotice' => __(
38
  'There is no need for an opt-in script, because Font Awesome is loaded by some plugin or theme without JavaScript. In addition to this cookie, please create a content blocker that automatically blocks Font Awesome.',
39
  RCB_TD
inc/presets/free/GoogleFontsPreset.php CHANGED
@@ -82,16 +82,20 @@ class GoogleFontsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCookieP
82
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
83
  ),
84
  'provider' => 'Google Ireland Limited',
85
- 'providerPrivacyPolicy' => 'https://policies.google.com/privacy',
86
- 'noTechnicalDefinitions' => \true,
87
  'technicalHandlingNotice' => \join('<br /><br />', [
88
  __(
89
  'When loading Google Fonts, personal data of your visitors is transferred to Google, which is why you need consent. Real Cookie Banner has to check the consent before loading Google Fonts (if there is a consent), which takes a few milliseconds per page view. As a result, you will inevitably notice a small flickering effect (font replacement after a few milliseconds) on your website.',
90
  RCB_TD
91
  ),
92
- __(
93
- 'We therefore recommend <a href="https://devowl.io/2022/google-fonts-wordpress-gdpr/" target="_blank">replacing Google Fonts with locally hosted fonts</a> when possible, rather than asking for consent. We explained how this works in our blog!',
94
- RCB_TD
 
 
 
 
95
  )
96
  ]),
97
  'codeOnPageLoad' => self::WEB_FONT_LOADER_ON_PAGE_LOAD,
82
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
83
  ),
84
  'provider' => 'Google Ireland Limited',
85
+ 'providerPrivacyPolicyUrl' => 'https://policies.google.com/privacy',
86
+ 'isEmbeddingOnlyExternalResources' => \true,
87
  'technicalHandlingNotice' => \join('<br /><br />', [
88
  __(
89
  'When loading Google Fonts, personal data of your visitors is transferred to Google, which is why you need consent. Real Cookie Banner has to check the consent before loading Google Fonts (if there is a consent), which takes a few milliseconds per page view. As a result, you will inevitably notice a small flickering effect (font replacement after a few milliseconds) on your website.',
90
  RCB_TD
91
  ),
92
+ \sprintf(
93
+ // translators:
94
+ __(
95
+ 'We therefore recommend <a href="%s" target="_blank">replacing Google Fonts with locally hosted fonts</a> when possible, rather than asking for consent. We explained how this works in our blog!',
96
+ RCB_TD
97
+ ),
98
+ __('https://devowl.io/2022/google-fonts-wordpress-gdpr/', RCB_TD)
99
  )
100
  ]),
101
  'codeOnPageLoad' => self::WEB_FONT_LOADER_ON_PAGE_LOAD,
inc/presets/free/GravatarPreset.php CHANGED
@@ -32,8 +32,8 @@ class GravatarPreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePres
32
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
33
  ),
34
  'provider' => 'Automattic Inc.',
35
- 'providerPrivacyPolicy' => 'https://automattic.com/privacy/',
36
- 'noTechnicalDefinitions' => \true,
37
  'technicalHandlingNotice' => __(
38
  'There is no need for an opt-in script, because Gravatar images are loaded by WordPress or some plugin without JavaScript. In addition to this cookie, please create a content blocker that automatically blocks images from Gravatar e. g. in the comment section.',
39
  RCB_TD
32
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
33
  ),
34
  'provider' => 'Automattic Inc.',
35
+ 'providerPrivacyPolicyUrl' => 'https://automattic.com/privacy/',
36
+ 'isEmbeddingOnlyExternalResources' => \true,
37
  'technicalHandlingNotice' => __(
38
  'There is no need for an opt-in script, because Gravatar images are loaded by WordPress or some plugin without JavaScript. In addition to this cookie, please create a content blocker that automatically blocks images from Gravatar e. g. in the comment section.',
39
  RCB_TD
inc/presets/free/JetPackCommentsPreset.php CHANGED
@@ -35,14 +35,14 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
35
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
36
  ),
37
  'provider' => 'Automattic Inc.',
38
- 'providerPrivacyPolicy' => 'https://automattic.com/privacy/',
39
  'technicalDefinitions' => [
40
  [
41
  'type' => 'http',
42
  'name' => 'NID',
43
  'host' => '.google.com',
44
  'durationUnit' => 'y',
45
- 'sessionDuration' => \false,
46
  'duration' => 1
47
  ],
48
  [
@@ -51,7 +51,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
51
  'host' => '.wordpress.com',
52
  'duration' => 9999,
53
  'durationUnit' => 'y',
54
- 'sessionDuration' => \false
55
  ],
56
  [
57
  'type' => 'http',
@@ -59,7 +59,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
59
  'host' => $cookieHost,
60
  'duration' => 1,
61
  'durationUnit' => 'y',
62
- 'sessionDuration' => \false
63
  ],
64
  [
65
  'type' => 'http',
@@ -67,7 +67,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
67
  'host' => $cookieHost,
68
  'duration' => 1,
69
  'durationUnit' => 'y',
70
- 'sessionDuration' => \false
71
  ],
72
  [
73
  'type' => 'http',
@@ -75,7 +75,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
75
  'host' => $cookieHost,
76
  'duration' => 1,
77
  'durationUnit' => 'y',
78
- 'sessionDuration' => \false
79
  ],
80
  [
81
  'type' => 'http',
@@ -83,7 +83,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
83
  'host' => '.wordpress.com',
84
  'duration' => 1,
85
  'durationUnit' => 'y',
86
- 'sessionDuration' => \false
87
  ],
88
  [
89
  'type' => 'http',
@@ -91,7 +91,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
91
  'host' => '.wordpress.com',
92
  'duration' => 1,
93
  'durationUnit' => 'y',
94
- 'sessionDuration' => \false
95
  ],
96
  [
97
  'type' => 'http',
@@ -99,7 +99,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
99
  'host' => '.wordpress.com',
100
  'duration' => 1,
101
  'durationUnit' => 'y',
102
- 'sessionDuration' => \false
103
  ],
104
  [
105
  'type' => 'http',
@@ -107,14 +107,14 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
107
  'host' => '.wordpress.com',
108
  'duration' => 2,
109
  'durationUnit' => 'd',
110
- 'sessionDuration' => \false
111
  ],
112
  [
113
  'type' => 'http',
114
  'name' => 'wpc_wpc',
115
  'host' => '.wordpress.com',
116
  'durationUnit' => 'y',
117
- 'sessionDuration' => \true,
118
  'duration' => 0
119
  ],
120
  [
@@ -123,7 +123,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
123
  'host' => '.wordpress.com',
124
  'duration' => 1,
125
  'durationUnit' => 'y',
126
- 'sessionDuration' => \false
127
  ],
128
  [
129
  'type' => 'http',
@@ -131,7 +131,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
131
  'host' => '.wordpress.com',
132
  'duration' => 1,
133
  'durationUnit' => 'y',
134
- 'sessionDuration' => \false
135
  ],
136
  [
137
  'type' => 'http',
@@ -139,14 +139,14 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
139
  'host' => '.wordpress.com',
140
  'duration' => 78,
141
  'durationUnit' => 'y',
142
- 'sessionDuration' => \false
143
  ],
144
  [
145
  'type' => 'http',
146
  'name' => 'wordpress_test_cookie',
147
  'host' => '.wordpress.com',
148
  'durationUnit' => 'y',
149
- 'sessionDuration' => \true,
150
  'duration' => 0
151
  ],
152
  [
@@ -155,7 +155,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
155
  'host' => '.wordpress.com',
156
  'duration' => 1,
157
  'durationUnit' => 'd',
158
- 'sessionDuration' => \false
159
  ],
160
  [
161
  'type' => 'http',
@@ -163,7 +163,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
163
  'host' => '.google.com',
164
  'duration' => 1,
165
  'durationUnit' => 'y',
166
- 'sessionDuration' => \false
167
  ],
168
  [
169
  'type' => 'http',
@@ -171,7 +171,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
171
  'host' => '.google.com',
172
  'duration' => 2,
173
  'durationUnit' => 'y',
174
- 'sessionDuration' => \false
175
  ],
176
  [
177
  'type' => 'http',
@@ -179,7 +179,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
179
  'host' => '.google.com',
180
  'duration' => 1,
181
  'durationUnit' => 'mo',
182
- 'sessionDuration' => \false
183
  ],
184
  [
185
  'type' => 'http',
@@ -187,7 +187,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
187
  'host' => '.google.com',
188
  'duration' => 1,
189
  'durationUnit' => 'mo',
190
- 'sessionDuration' => \false
191
  ],
192
  [
193
  'type' => 'http',
@@ -195,7 +195,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
195
  'host' => '.google.com',
196
  'duration' => 6,
197
  'durationUnit' => 'mo',
198
- 'sessionDuration' => \false
199
  ],
200
  [
201
  'type' => 'http',
@@ -203,7 +203,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
203
  'host' => '.google.com',
204
  'duration' => 1,
205
  'durationUnit' => 'mo',
206
- 'sessionDuration' => \false
207
  ],
208
  [
209
  'type' => 'http',
@@ -211,7 +211,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
211
  'host' => '.google.com',
212
  'duration' => 2,
213
  'durationUnit' => 'y',
214
- 'sessionDuration' => \false
215
  ],
216
  [
217
  'type' => 'http',
@@ -219,7 +219,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
219
  'host' => '.google.com',
220
  'duration' => 2,
221
  'durationUnit' => 'y',
222
- 'sessionDuration' => \false
223
  ],
224
  [
225
  'type' => 'http',
@@ -227,7 +227,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
227
  'host' => '.google.com',
228
  'duration' => 2,
229
  'durationUnit' => 'y',
230
- 'sessionDuration' => \false
231
  ],
232
  [
233
  'type' => 'http',
@@ -235,7 +235,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
235
  'host' => '.google.com',
236
  'duration' => 2,
237
  'durationUnit' => 'y',
238
- 'sessionDuration' => \false
239
  ],
240
  [
241
  'type' => 'http',
@@ -243,7 +243,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
243
  'host' => '.google.com',
244
  'duration' => 2,
245
  'durationUnit' => 'y',
246
- 'sessionDuration' => \false
247
  ],
248
  [
249
  'type' => 'http',
@@ -251,7 +251,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
251
  'host' => '.google.com',
252
  'duration' => 18,
253
  'durationUnit' => 'y',
254
- 'sessionDuration' => \false
255
  ],
256
  [
257
  'type' => 'http',
@@ -259,14 +259,14 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
259
  'host' => '.google.com',
260
  'duration' => 1,
261
  'durationUnit' => 'mo',
262
- 'sessionDuration' => \false
263
  ],
264
  [
265
  'type' => 'http',
266
  'name' => 'G_AUTHUSER_H',
267
  'host' => '.public-api.wordpress.com',
268
  'durationUnit' => 'y',
269
- 'sessionDuration' => \true,
270
  'duration' => 0
271
  ],
272
  [
@@ -275,7 +275,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
275
  'host' => 'accounts.google.com',
276
  'duration' => 2,
277
  'durationUnit' => 'y',
278
- 'sessionDuration' => \false
279
  ],
280
  [
281
  'type' => 'http',
@@ -283,7 +283,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
283
  'host' => 'accounts.google.com',
284
  'duration' => 2,
285
  'durationUnit' => 'y',
286
- 'sessionDuration' => \false
287
  ],
288
  [
289
  'type' => 'http',
@@ -291,7 +291,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
291
  'host' => 'accounts.google.com',
292
  'duration' => 2,
293
  'durationUnit' => 'y',
294
- 'sessionDuration' => \false
295
  ],
296
  [
297
  'type' => 'http',
@@ -299,14 +299,14 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
299
  'host' => 'accounts.google.com',
300
  'duration' => 2,
301
  'durationUnit' => 'y',
302
- 'sessionDuration' => \false
303
  ],
304
  [
305
  'type' => 'http',
306
  'name' => 'user_id',
307
  'host' => 'accounts.google.com',
308
  'durationUnit' => 'y',
309
- 'sessionDuration' => \true,
310
  'duration' => 0
311
  ],
312
  [
@@ -315,14 +315,14 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
315
  'host' => 'accounts.google.com',
316
  'duration' => 6,
317
  'durationUnit' => 'mo',
318
- 'sessionDuration' => \false
319
  ],
320
  [
321
  'type' => 'local',
322
  'name' => 'oauth2_ss::https://public-api.wordpress.com::1::DEFAULT::_ss_',
323
  'host' => 'https://accounts.google.com',
324
  'durationUnit' => 'y',
325
- 'sessionDuration' => \false,
326
  'duration' => 0
327
  ],
328
  [
@@ -330,7 +330,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
330
  'name' => 'promo',
331
  'host' => 'https://accounts.google.com',
332
  'durationUnit' => 'y',
333
- 'sessionDuration' => \false,
334
  'duration' => 0
335
  ],
336
  [
@@ -338,7 +338,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
338
  'name' => 'wpc_tc',
339
  'host' => '.wordpress.com',
340
  'durationUnit' => 'y',
341
- 'sessionDuration' => \true,
342
  'duration' => 0
343
  ],
344
  [
@@ -346,7 +346,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
346
  'name' => 'oauth2_cs::https://public-api.wordpress.com::*',
347
  'host' => 'https://accounts.google.com',
348
  'durationUnit' => 'y',
349
- 'sessionDuration' => \false,
350
  'duration' => 0
351
  ],
352
  [
@@ -354,7 +354,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
354
  'name' => 'wpc_fbc',
355
  'host' => '.wordpress.com',
356
  'durationUnit' => 'y',
357
- 'sessionDuration' => \true,
358
  'duration' => 0
359
  ],
360
  [
@@ -363,7 +363,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
363
  'host' => '.wordpress.com',
364
  'duration' => 1,
365
  'durationUnit' => 'y',
366
- 'sessionDuration' => \false
367
  ],
368
  [
369
  'type' => 'http',
@@ -371,7 +371,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
371
  'host' => '.wordpress.com',
372
  'duration' => 3,
373
  'durationUnit' => 'y',
374
- 'sessionDuration' => \false
375
  ],
376
  [
377
  'type' => 'http',
@@ -379,14 +379,14 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
379
  'host' => '.wordpress.com',
380
  'duration' => 5,
381
  'durationUnit' => 'y',
382
- 'sessionDuration' => \false
383
  ],
384
  [
385
  'type' => 'http',
386
  'name' => 'tk_tc',
387
  'host' => '.wordpress.com',
388
  'durationUnit' => 'y',
389
- 'sessionDuration' => \true,
390
  'duration' => 0
391
  ],
392
  [
@@ -395,7 +395,7 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
395
  'host' => 'accounts.google.com',
396
  'duration' => 1,
397
  'durationUnit' => 'h',
398
- 'sessionDuration' => \false
399
  ],
400
  [
401
  'type' => 'http',
@@ -403,14 +403,14 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
403
  'host' => '.google.com',
404
  'duration' => 2,
405
  'durationUnit' => 'y',
406
- 'sessionDuration' => \false
407
  ]
408
  ],
409
  'technicalHandlingNotice' => __(
410
  'There is no need for an opt-in script because the comment feature is loaded by the Jetpack WordPress plugin. In addition to the cookie, you must create a content blocker that will block Jetpack Comments until the user gives consent to load it.',
411
  RCB_TD
412
  ),
413
- 'codeOptOutDelete' => \true,
414
  'ePrivacyUSA' => \true
415
  ]
416
  ];
35
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
36
  ),
37
  'provider' => 'Automattic Inc.',
38
+ 'providerPrivacyPolicyUrl' => 'https://automattic.com/privacy/',
39
  'technicalDefinitions' => [
40
  [
41
  'type' => 'http',
42
  'name' => 'NID',
43
  'host' => '.google.com',
44
  'durationUnit' => 'y',
45
+ 'isSessionDuration' => \false,
46
  'duration' => 1
47
  ],
48
  [
51
  'host' => '.wordpress.com',
52
  'duration' => 9999,
53
  'durationUnit' => 'y',
54
+ 'isSessionDuration' => \false
55
  ],
56
  [
57
  'type' => 'http',
59
  'host' => $cookieHost,
60
  'duration' => 1,
61
  'durationUnit' => 'y',
62
+ 'isSessionDuration' => \false
63
  ],
64
  [
65
  'type' => 'http',
67
  'host' => $cookieHost,
68
  'duration' => 1,
69
  'durationUnit' => 'y',
70
+ 'isSessionDuration' => \false
71
  ],
72
  [
73
  'type' => 'http',
75
  'host' => $cookieHost,
76
  'duration' => 1,
77
  'durationUnit' => 'y',
78
+ 'isSessionDuration' => \false
79
  ],
80
  [
81
  'type' => 'http',
83
  'host' => '.wordpress.com',
84
  'duration' => 1,
85
  'durationUnit' => 'y',
86
+ 'isSessionDuration' => \false
87
  ],
88
  [
89
  'type' => 'http',
91
  'host' => '.wordpress.com',
92
  'duration' => 1,
93
  'durationUnit' => 'y',
94
+ 'isSessionDuration' => \false
95
  ],
96
  [
97
  'type' => 'http',
99
  'host' => '.wordpress.com',
100
  'duration' => 1,
101
  'durationUnit' => 'y',
102
+ 'isSessionDuration' => \false
103
  ],
104
  [
105
  'type' => 'http',
107
  'host' => '.wordpress.com',
108
  'duration' => 2,
109
  'durationUnit' => 'd',
110
+ 'isSessionDuration' => \false
111
  ],
112
  [
113
  'type' => 'http',
114
  'name' => 'wpc_wpc',
115
  'host' => '.wordpress.com',
116
  'durationUnit' => 'y',
117
+ 'isSessionDuration' => \true,
118
  'duration' => 0
119
  ],
120
  [
123
  'host' => '.wordpress.com',
124
  'duration' => 1,
125
  'durationUnit' => 'y',
126
+ 'isSessionDuration' => \false
127
  ],
128
  [
129
  'type' => 'http',
131
  'host' => '.wordpress.com',
132
  'duration' => 1,
133
  'durationUnit' => 'y',
134
+ 'isSessionDuration' => \false
135
  ],
136
  [
137
  'type' => 'http',
139
  'host' => '.wordpress.com',
140
  'duration' => 78,
141
  'durationUnit' => 'y',
142
+ 'isSessionDuration' => \false
143
  ],
144
  [
145
  'type' => 'http',
146
  'name' => 'wordpress_test_cookie',
147
  'host' => '.wordpress.com',
148
  'durationUnit' => 'y',
149
+ 'isSessionDuration' => \true,
150
  'duration' => 0
151
  ],
152
  [
155
  'host' => '.wordpress.com',
156
  'duration' => 1,
157
  'durationUnit' => 'd',
158
+ 'isSessionDuration' => \false
159
  ],
160
  [
161
  'type' => 'http',
163
  'host' => '.google.com',
164
  'duration' => 1,
165
  'durationUnit' => 'y',
166
+ 'isSessionDuration' => \false
167
  ],
168
  [
169
  'type' => 'http',
171
  'host' => '.google.com',
172
  'duration' => 2,
173
  'durationUnit' => 'y',
174
+ 'isSessionDuration' => \false
175
  ],
176
  [
177
  'type' => 'http',
179
  'host' => '.google.com',
180
  'duration' => 1,
181
  'durationUnit' => 'mo',
182
+ 'isSessionDuration' => \false
183
  ],
184
  [
185
  'type' => 'http',
187
  'host' => '.google.com',
188
  'duration' => 1,
189
  'durationUnit' => 'mo',
190
+ 'isSessionDuration' => \false
191
  ],
192
  [
193
  'type' => 'http',
195
  'host' => '.google.com',
196
  'duration' => 6,
197
  'durationUnit' => 'mo',
198
+ 'isSessionDuration' => \false
199
  ],
200
  [
201
  'type' => 'http',
203
  'host' => '.google.com',
204
  'duration' => 1,
205
  'durationUnit' => 'mo',
206
+ 'isSessionDuration' => \false
207
  ],
208
  [
209
  'type' => 'http',
211
  'host' => '.google.com',
212
  'duration' => 2,
213
  'durationUnit' => 'y',
214
+ 'isSessionDuration' => \false
215
  ],
216
  [
217
  'type' => 'http',
219
  'host' => '.google.com',
220
  'duration' => 2,
221
  'durationUnit' => 'y',
222
+ 'isSessionDuration' => \false
223
  ],
224
  [
225
  'type' => 'http',
227
  'host' => '.google.com',
228
  'duration' => 2,
229
  'durationUnit' => 'y',
230
+ 'isSessionDuration' => \false
231
  ],
232
  [
233
  'type' => 'http',
235
  'host' => '.google.com',
236
  'duration' => 2,
237
  'durationUnit' => 'y',
238
+ 'isSessionDuration' => \false
239
  ],
240
  [
241
  'type' => 'http',
243
  'host' => '.google.com',
244
  'duration' => 2,
245
  'durationUnit' => 'y',
246
+ 'isSessionDuration' => \false
247
  ],
248
  [
249
  'type' => 'http',
251
  'host' => '.google.com',
252
  'duration' => 18,
253
  'durationUnit' => 'y',
254
+ 'isSessionDuration' => \false
255
  ],
256
  [
257
  'type' => 'http',
259
  'host' => '.google.com',
260
  'duration' => 1,
261
  'durationUnit' => 'mo',
262
+ 'isSessionDuration' => \false
263
  ],
264
  [
265
  'type' => 'http',
266
  'name' => 'G_AUTHUSER_H',
267
  'host' => '.public-api.wordpress.com',
268
  'durationUnit' => 'y',
269
+ 'isSessionDuration' => \true,
270
  'duration' => 0
271
  ],
272
  [
275
  'host' => 'accounts.google.com',
276
  'duration' => 2,
277
  'durationUnit' => 'y',
278
+ 'isSessionDuration' => \false
279
  ],
280
  [
281
  'type' => 'http',
283
  'host' => 'accounts.google.com',
284
  'duration' => 2,
285
  'durationUnit' => 'y',
286
+ 'isSessionDuration' => \false
287
  ],
288
  [
289
  'type' => 'http',
291
  'host' => 'accounts.google.com',
292
  'duration' => 2,
293
  'durationUnit' => 'y',
294
+ 'isSessionDuration' => \false
295
  ],
296
  [
297
  'type' => 'http',
299
  'host' => 'accounts.google.com',
300
  'duration' => 2,
301
  'durationUnit' => 'y',
302
+ 'isSessionDuration' => \false
303
  ],
304
  [
305
  'type' => 'http',
306
  'name' => 'user_id',
307
  'host' => 'accounts.google.com',
308
  'durationUnit' => 'y',
309
+ 'isSessionDuration' => \true,
310
  'duration' => 0
311
  ],
312
  [
315
  'host' => 'accounts.google.com',
316
  'duration' => 6,
317
  'durationUnit' => 'mo',
318
+ 'isSessionDuration' => \false
319
  ],
320
  [
321
  'type' => 'local',
322
  'name' => 'oauth2_ss::https://public-api.wordpress.com::1::DEFAULT::_ss_',
323
  'host' => 'https://accounts.google.com',
324
  'durationUnit' => 'y',
325
+ 'isSessionDuration' => \false,
326
  'duration' => 0
327
  ],
328
  [
330
  'name' => 'promo',
331
  'host' => 'https://accounts.google.com',
332
  'durationUnit' => 'y',
333
+ 'isSessionDuration' => \false,
334
  'duration' => 0
335
  ],
336
  [
338
  'name' => 'wpc_tc',
339
  'host' => '.wordpress.com',
340
  'durationUnit' => 'y',
341
+ 'isSessionDuration' => \true,
342
  'duration' => 0
343
  ],
344
  [
346
  'name' => 'oauth2_cs::https://public-api.wordpress.com::*',
347
  'host' => 'https://accounts.google.com',
348
  'durationUnit' => 'y',
349
+ 'isSessionDuration' => \false,
350
  'duration' => 0
351
  ],
352
  [
354
  'name' => 'wpc_fbc',
355
  'host' => '.wordpress.com',
356
  'durationUnit' => 'y',
357
+ 'isSessionDuration' => \true,
358
  'duration' => 0
359
  ],
360
  [
363
  'host' => '.wordpress.com',
364
  'duration' => 1,
365
  'durationUnit' => 'y',
366
+ 'isSessionDuration' => \false
367
  ],
368
  [
369
  'type' => 'http',
371
  'host' => '.wordpress.com',
372
  'duration' => 3,
373
  'durationUnit' => 'y',
374
+ 'isSessionDuration' => \false
375
  ],
376
  [
377
  'type' => 'http',
379
  'host' => '.wordpress.com',
380
  'duration' => 5,
381
  'durationUnit' => 'y',
382
+ 'isSessionDuration' => \false
383
  ],
384
  [
385
  'type' => 'http',
386
  'name' => 'tk_tc',
387
  'host' => '.wordpress.com',
388
  'durationUnit' => 'y',
389
+ 'isSessionDuration' => \true,
390
  'duration' => 0
391
  ],
392
  [
395
  'host' => 'accounts.google.com',
396
  'duration' => 1,
397
  'durationUnit' => 'h',
398
+ 'isSessionDuration' => \false
399
  ],
400
  [
401
  'type' => 'http',
403
  'host' => '.google.com',
404
  'duration' => 2,
405
  'durationUnit' => 'y',
406
+ 'isSessionDuration' => \false
407
  ]
408
  ],
409
  'technicalHandlingNotice' => __(
410
  'There is no need for an opt-in script because the comment feature is loaded by the Jetpack WordPress plugin. In addition to the cookie, you must create a content blocker that will block Jetpack Comments until the user gives consent to load it.',
411
  RCB_TD
412
  ),
413
+ 'deleteTechnicalDefinitionsAfterOptOut' => \true,
414
  'ePrivacyUSA' => \true
415
  ]
416
  ];
inc/presets/free/JetpackSiteStatsPreset.php CHANGED
@@ -37,14 +37,14 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
37
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
38
  ),
39
  'provider' => 'Automattic Inc.',
40
- 'providerPrivacyPolicy' => 'https://automattic.com/privacy/',
41
  'technicalDefinitions' => [
42
  [
43
  'type' => 'http',
44
  'name' => 'NID',
45
  'host' => '.google.com',
46
  'durationUnit' => 'mo',
47
- 'sessionDuration' => \false,
48
  'duration' => 6
49
  ],
50
  [
@@ -53,7 +53,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
53
  'host' => '.public-api.wordpress.com',
54
  'duration' => 6,
55
  'durationUnit' => 'mo',
56
- 'sessionDuration' => \false
57
  ],
58
  [
59
  'type' => 'http',
@@ -61,7 +61,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
61
  'host' => $cookieHostCurrent,
62
  'duration' => 6,
63
  'durationUnit' => 'mo',
64
- 'sessionDuration' => \false
65
  ],
66
  [
67
  'type' => 'http',
@@ -69,7 +69,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
69
  'host' => $cookieHostCurrent,
70
  'duration' => 6,
71
  'durationUnit' => 'mo',
72
- 'sessionDuration' => \false
73
  ],
74
  [
75
  'type' => 'http',
@@ -77,7 +77,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
77
  'host' => $cookieHostCurrent,
78
  'duration' => 6,
79
  'durationUnit' => 'mo',
80
- 'sessionDuration' => \false
81
  ],
82
  [
83
  'type' => 'http',
@@ -85,7 +85,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
85
  'host' => '.wordpress.com',
86
  'duration' => 6,
87
  'durationUnit' => 'mo',
88
- 'sessionDuration' => \false
89
  ],
90
  [
91
  'type' => 'http',
@@ -93,7 +93,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
93
  'host' => '.wordpress.com',
94
  'duration' => 6,
95
  'durationUnit' => 'mo',
96
- 'sessionDuration' => \false
97
  ],
98
  [
99
  'type' => 'http',
@@ -101,7 +101,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
101
  'host' => '.wordpress.com',
102
  'duration' => 6,
103
  'durationUnit' => 'mo',
104
- 'sessionDuration' => \false
105
  ],
106
  [
107
  'type' => 'http',
@@ -109,14 +109,14 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
109
  'host' => '.wordpress.com',
110
  'duration' => 2,
111
  'durationUnit' => 'd',
112
- 'sessionDuration' => \false
113
  ],
114
  [
115
  'type' => 'http',
116
  'name' => 'wpc_wpc',
117
  'host' => '.wordpress.com',
118
  'durationUnit' => 'y',
119
- 'sessionDuration' => \true,
120
  'duration' => 0
121
  ],
122
  [
@@ -125,7 +125,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
125
  'host' => '.wordpress.com',
126
  'duration' => 6,
127
  'durationUnit' => 'mo',
128
- 'sessionDuration' => \false
129
  ],
130
  [
131
  'type' => 'http',
@@ -133,7 +133,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
133
  'host' => '.wordpress.com',
134
  'duration' => 6,
135
  'durationUnit' => 'mo',
136
- 'sessionDuration' => \false
137
  ],
138
  [
139
  'type' => 'http',
@@ -141,14 +141,14 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
141
  'host' => '.wordpress.com',
142
  'duration' => 6,
143
  'durationUnit' => 'mo',
144
- 'sessionDuration' => \false
145
  ],
146
  [
147
  'type' => 'http',
148
  'name' => 'wordpress_test_cookie',
149
  'host' => '.wordpress.com',
150
  'durationUnit' => 'y',
151
- 'sessionDuration' => \true,
152
  'duration' => 0
153
  ],
154
  [
@@ -157,7 +157,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
157
  'host' => '.wordpress.com',
158
  'duration' => 1,
159
  'durationUnit' => 'd',
160
- 'sessionDuration' => \false
161
  ],
162
  [
163
  'type' => 'http',
@@ -165,7 +165,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
165
  'host' => '.google.com',
166
  'duration' => 6,
167
  'durationUnit' => 'mo',
168
- 'sessionDuration' => \false
169
  ],
170
  [
171
  'type' => 'http',
@@ -173,7 +173,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
173
  'host' => '.google.com',
174
  'duration' => 6,
175
  'durationUnit' => 'mo',
176
- 'sessionDuration' => \false
177
  ],
178
  [
179
  'type' => 'http',
@@ -181,7 +181,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
181
  'host' => '.google.com',
182
  'duration' => 1,
183
  'durationUnit' => 'mo',
184
- 'sessionDuration' => \false
185
  ],
186
  [
187
  'type' => 'http',
@@ -189,7 +189,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
189
  'host' => '.google.com',
190
  'duration' => 1,
191
  'durationUnit' => 'mo',
192
- 'sessionDuration' => \false
193
  ],
194
  [
195
  'type' => 'http',
@@ -197,7 +197,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
197
  'host' => '.google.com',
198
  'duration' => 6,
199
  'durationUnit' => 'mo',
200
- 'sessionDuration' => \false
201
  ],
202
  [
203
  'type' => 'http',
@@ -205,7 +205,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
205
  'host' => '.google.com',
206
  'duration' => 1,
207
  'durationUnit' => 'mo',
208
- 'sessionDuration' => \false
209
  ],
210
  [
211
  'type' => 'http',
@@ -213,7 +213,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
213
  'host' => '.google.com',
214
  'duration' => 6,
215
  'durationUnit' => 'mo',
216
- 'sessionDuration' => \false
217
  ],
218
  [
219
  'type' => 'http',
@@ -221,7 +221,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
221
  'host' => '.google.com',
222
  'duration' => 6,
223
  'durationUnit' => 'mo',
224
- 'sessionDuration' => \false
225
  ],
226
  [
227
  'type' => 'http',
@@ -229,7 +229,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
229
  'host' => '.google.com',
230
  'duration' => 6,
231
  'durationUnit' => 'mo',
232
- 'sessionDuration' => \false
233
  ],
234
  [
235
  'type' => 'http',
@@ -237,7 +237,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
237
  'host' => '.google.com',
238
  'duration' => 6,
239
  'durationUnit' => 'mo',
240
- 'sessionDuration' => \false
241
  ],
242
  [
243
  'type' => 'http',
@@ -245,7 +245,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
245
  'host' => '.google.com',
246
  'duration' => 6,
247
  'durationUnit' => 'mo',
248
- 'sessionDuration' => \false
249
  ],
250
  [
251
  'type' => 'http',
@@ -253,7 +253,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
253
  'host' => '.google.com',
254
  'duration' => 6,
255
  'durationUnit' => 'mo',
256
- 'sessionDuration' => \false
257
  ],
258
  [
259
  'type' => 'http',
@@ -261,14 +261,14 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
261
  'host' => '.google.com',
262
  'duration' => 1,
263
  'durationUnit' => 'mo',
264
- 'sessionDuration' => \false
265
  ],
266
  [
267
  'type' => 'http',
268
  'name' => 'G_AUTHUSER_H',
269
  'host' => '.public-api.wordpress.com',
270
  'durationUnit' => 'y',
271
- 'sessionDuration' => \true,
272
  'duration' => 0
273
  ],
274
  [
@@ -277,7 +277,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
277
  'host' => 'accounts.google.com',
278
  'duration' => 6,
279
  'durationUnit' => 'mo',
280
- 'sessionDuration' => \false
281
  ],
282
  [
283
  'type' => 'http',
@@ -285,7 +285,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
285
  'host' => 'accounts.google.com',
286
  'duration' => 6,
287
  'durationUnit' => 'mo',
288
- 'sessionDuration' => \false
289
  ],
290
  [
291
  'type' => 'http',
@@ -293,7 +293,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
293
  'host' => 'accounts.google.com',
294
  'duration' => 6,
295
  'durationUnit' => 'mo',
296
- 'sessionDuration' => \false
297
  ],
298
  [
299
  'type' => 'http',
@@ -301,7 +301,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
301
  'host' => 'accounts.google.com',
302
  'duration' => 6,
303
  'durationUnit' => 'mo',
304
- 'sessionDuration' => \false
305
  ],
306
  [
307
  'type' => 'http',
@@ -309,14 +309,14 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
309
  'host' => 'accounts.google.com',
310
  'duration' => 6,
311
  'durationUnit' => 'mo',
312
- 'sessionDuration' => \false
313
  ],
314
  [
315
  'type' => 'http',
316
  'name' => 'user_id',
317
  'host' => 'accounts.google.com',
318
  'durationUnit' => 'y',
319
- 'sessionDuration' => \true,
320
  'duration' => 0
321
  ],
322
  [
@@ -325,14 +325,14 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
325
  'host' => 'accounts.google.com',
326
  'duration' => 6,
327
  'durationUnit' => 'mo',
328
- 'sessionDuration' => \false
329
  ],
330
  [
331
  'type' => 'local',
332
  'name' => 'oauth2_ss::https://public-api.wordpress.com::1::DEFAULT::_ss_',
333
  'host' => 'https://accounts.google.com',
334
  'durationUnit' => 'y',
335
- 'sessionDuration' => \false,
336
  'duration' => 0
337
  ],
338
  [
@@ -340,7 +340,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
340
  'name' => 'promo',
341
  'host' => 'https://accounts.google.com',
342
  'durationUnit' => 'y',
343
- 'sessionDuration' => \false,
344
  'duration' => 0
345
  ],
346
  [
@@ -348,7 +348,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
348
  'name' => 'wpc_tc',
349
  'host' => '.wordpress.com',
350
  'durationUnit' => 'y',
351
- 'sessionDuration' => \true,
352
  'duration' => 0
353
  ],
354
  [
@@ -356,7 +356,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
356
  'name' => 'oauth2_cs::https://public-api.wordpress.com::*',
357
  'host' => 'https://accounts.google.com',
358
  'durationUnit' => 'y',
359
- 'sessionDuration' => \false,
360
  'duration' => 0
361
  ],
362
  [
@@ -364,7 +364,7 @@ class JetpackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
364
  'name' => 'wpc_fbc',
365
  'host' => '.wordpress.com',
366
  'durationUnit' => 'y',
367
- 'sessionDuration' => \true,
368
  'duration' => 0
369
  ]
370
  ],
37
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
38
  ),
39
  'provider' => 'Automattic Inc.',
40
+ 'providerPrivacyPolicyUrl' => 'https://automattic.com/privacy/',
41
  'technicalDefinitions' => [
42
  [
43
  'type' => 'http',
44
  'name' => 'NID',
45
  'host' => '.google.com',
46
  'durationUnit' => 'mo',
47
+ 'isSessionDuration' => \false,
48
  'duration' => 6
49
  ],
50
  [
53
  'host' => '.public-api.wordpress.com',
54
  'duration' => 6,
55
  'durationUnit' => 'mo',
56
+ 'isSessionDuration' => \false
57
  ],
58
  [
59
  'type' => 'http',
61
  'host' => $cookieHostCurrent,
62
  'duration' => 6,
63
  'durationUnit' => 'mo',
64
+ 'isSessionDuration' => \false
65
  ],
66
  [
67
  'type' => 'http',
69
  'host' => $cookieHostCurrent,
70
  'duration' => 6,
71
  'durationUnit' => 'mo',
72
+ 'isSessionDuration' => \false
73
  ],
74
  [
75
  'type' => 'http',
77
  'host' => $cookieHostCurrent,
78
  'duration' => 6,
79
  'durationUnit' => 'mo',
80
+ 'isSessionDuration' => \false
81
  ],
82
  [
83
  'type' => 'http',
85
  'host' => '.wordpress.com',
86
  'duration' => 6,
87
  'durationUnit' => 'mo',
88
+ 'isSessionDuration' => \false
89
  ],
90
  [
91
  'type' => 'http',
93
  'host' => '.wordpress.com',
94
  'duration' => 6,
95
  'durationUnit' => 'mo',
96
+ 'isSessionDuration' => \false
97
  ],
98
  [
99
  'type' => 'http',
101
  'host' => '.wordpress.com',
102
  'duration' => 6,
103
  'durationUnit' => 'mo',
104
+ 'isSessionDuration' => \false
105
  ],
106
  [
107
  'type' => 'http',
109
  'host' => '.wordpress.com',
110
  'duration' => 2,
111
  'durationUnit' => 'd',
112
+ 'isSessionDuration' => \false
113
  ],
114
  [
115
  'type' => 'http',
116
  'name' => 'wpc_wpc',
117
  'host' => '.wordpress.com',
118
  'durationUnit' => 'y',
119
+ 'isSessionDuration' => \true,
120
  'duration' => 0
121
  ],
122
  [
125
  'host' => '.wordpress.com',
126
  'duration' => 6,
127
  'durationUnit' => 'mo',
128
+ 'isSessionDuration' => \false
129
  ],
130
  [
131
  'type' => 'http',
133
  'host' => '.wordpress.com',
134
  'duration' => 6,
135
  'durationUnit' => 'mo',
136
+ 'isSessionDuration' => \false
137
  ],
138
  [
139
  'type' => 'http',
141
  'host' => '.wordpress.com',
142
  'duration' => 6,
143
  'durationUnit' => 'mo',
144
+ 'isSessionDuration' => \false
145
  ],
146
  [
147
  'type' => 'http',
148
  'name' => 'wordpress_test_cookie',
149
  'host' => '.wordpress.com',
150
  'durationUnit' => 'y',
151
+ 'isSessionDuration' => \true,
152
  'duration' => 0
153
  ],
154
  [
157
  'host' => '.wordpress.com',
158
  'duration' => 1,
159
  'durationUnit' => 'd',
160
+ 'isSessionDuration' => \false
161
  ],
162
  [
163
  'type' => 'http',
165
  'host' => '.google.com',
166
  'duration' => 6,
167
  'durationUnit' => 'mo',
168
+ 'isSessionDuration' => \false
169
  ],
170
  [
171
  'type' => 'http',
173
  'host' => '.google.com',
174
  'duration' => 6,
175
  'durationUnit' => 'mo',
176
+ 'isSessionDuration' => \false
177
  ],
178
  [
179
  'type' => 'http',
181
  'host' => '.google.com',
182
  'duration' => 1,
183
  'durationUnit' => 'mo',
184
+ 'isSessionDuration' => \false
185
  ],
186
  [
187
  'type' => 'http',
189
  'host' => '.google.com',
190
  'duration' => 1,
191
  'durationUnit' => 'mo',
192
+ 'isSessionDuration' => \false
193
  ],
194
  [
195
  'type' => 'http',
197
  'host' => '.google.com',
198
  'duration' => 6,
199
  'durationUnit' => 'mo',
200
+ 'isSessionDuration' => \false
201
  ],
202
  [
203
  'type' => 'http',
205
  'host' => '.google.com',
206
  'duration' => 1,
207
  'durationUnit' => 'mo',
208
+ 'isSessionDuration' => \false
209
  ],
210
  [
211
  'type' => 'http',
213
  'host' => '.google.com',
214
  'duration' => 6,
215
  'durationUnit' => 'mo',
216
+ 'isSessionDuration' => \false
217
  ],
218
  [
219
  'type' => 'http',
221
  'host' => '.google.com',
222
  'duration' => 6,
223
  'durationUnit' => 'mo',
224
+ 'isSessionDuration' => \false
225
  ],
226
  [
227
  'type' => 'http',
229
  'host' => '.google.com',
230
  'duration' => 6,
231
  'durationUnit' => 'mo',
232
+ 'isSessionDuration' => \false
233
  ],
234
  [
235
  'type' => 'http',
237
  'host' => '.google.com',
238
  'duration' => 6,
239
  'durationUnit' => 'mo',
240
+ 'isSessionDuration' => \false
241
  ],
242
  [
243
  'type' => 'http',
245
  'host' => '.google.com',
246
  'duration' => 6,
247
  'durationUnit' => 'mo',
248
+ 'isSessionDuration' => \false
249
  ],
250
  [
251
  'type' => 'http',
253
  'host' => '.google.com',
254
  'duration' => 6,
255
  'durationUnit' => 'mo',
256
+ 'isSessionDuration' => \false
257
  ],
258
  [
259
  'type' => 'http',
261
  'host' => '.google.com',
262
  'duration' => 1,
263
  'durationUnit' => 'mo',
264
+ 'isSessionDuration' => \false
265
  ],
266
  [
267
  'type' => 'http',
268
  'name' => 'G_AUTHUSER_H',
269
  'host' => '.public-api.wordpress.com',
270
  'durationUnit' => 'y',
271
+ 'isSessionDuration' => \true,
272
  'duration' => 0
273
  ],
274
  [
277
  'host' => 'accounts.google.com',
278
  'duration' => 6,
279
  'durationUnit' => 'mo',
280
+ 'isSessionDuration' => \false
281
  ],
282
  [
283
  'type' => 'http',
285
  'host' => 'accounts.google.com',
286
  'duration' => 6,
287
  'durationUnit' => 'mo',
288
+ 'isSessionDuration' => \false
289
  ],
290
  [
291
  'type' => 'http',
293
  'host' => 'accounts.google.com',
294
  'duration' => 6,
295
  'durationUnit' => 'mo',
296
+ 'isSessionDuration' => \false
297
  ],
298
  [
299
  'type' => 'http',
301
  'host' => 'accounts.google.com',
302
  'duration' => 6,
303
  'durationUnit' => 'mo',
304
+ 'isSessionDuration' => \false
305
  ],
306
  [
307
  'type' => 'http',
309
  'host' => 'accounts.google.com',
310
  'duration' => 6,
311
  'durationUnit' => 'mo',
312
+ 'isSessionDuration' => \false
313
  ],
314
  [
315
  'type' => 'http',
316
  'name' => 'user_id',
317
  'host' => 'accounts.google.com',
318
  'durationUnit' => 'y',
319
+ 'isSessionDuration' => \true,
320
  'duration' => 0
321
  ],
322
  [
325
  'host' => 'accounts.google.com',
326
  'duration' => 6,
327
  'durationUnit' => 'mo',
328
+ 'isSessionDuration' => \false
329
  ],
330
  [
331
  'type' => 'local',
332
  'name' => 'oauth2_ss::https://public-api.wordpress.com::1::DEFAULT::_ss_',
333
  'host' => 'https://accounts.google.com',
334
  'durationUnit' => 'y',
335
+ 'isSessionDuration' => \false,
336
  'duration' => 0
337
  ],
338
  [
340
  'name' => 'promo',
341
  'host' => 'https://accounts.google.com',
342
  'durationUnit' => 'y',
343
+ 'isSessionDuration' => \false,
344
  'duration' => 0
345
  ],
346
  [
348
  'name' => 'wpc_tc',
349
  'host' => '.wordpress.com',
350
  'durationUnit' => 'y',
351
+ 'isSessionDuration' => \true,
352
  'duration' => 0
353
  ],
354
  [
356
  'name' => 'oauth2_cs::https://public-api.wordpress.com::*',
357
  'host' => 'https://accounts.google.com',
358
  'durationUnit' => 'y',
359
+ 'isSessionDuration' => \false,
360
  'duration' => 0
361
  ],
362
  [
364
  'name' => 'wpc_fbc',
365
  'host' => '.wordpress.com',
366
  'durationUnit' => 'y',
367
+ 'isSessionDuration' => \true,
368
  'duration' => 0
369
  ]
370
  ],
inc/presets/free/RealCookieBannerPreset.php CHANGED
@@ -40,7 +40,7 @@ class RealCookieBannerPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
40
  ),
41
  'legalBasis' => \DevOwl\RealCookieBanner\settings\Cookie::LEGAL_BASIS_LEGAL_REQUIREMENT,
42
  'provider' => get_bloginfo('name'),
43
- 'providerPrivacyPolicy' => \DevOwl\RealCookieBanner\settings\General::getInstance()->getPrivacyPolicyUrl(
44
  ''
45
  ),
46
  'technicalDefinitions' => [
@@ -52,7 +52,7 @@ class RealCookieBannerPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
52
  ),
53
  'duration' => \DevOwl\RealCookieBanner\settings\Consent::getInstance()->getCookieDuration(),
54
  'durationUnit' => 'd',
55
- 'sessionDuration' => \false
56
  ],
57
  [
58
  'type' => 'http',
@@ -62,7 +62,7 @@ class RealCookieBannerPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
62
  ),
63
  'duration' => \DevOwl\RealCookieBanner\settings\Consent::getInstance()->getCookieDuration(),
64
  'durationUnit' => 'd',
65
- 'sessionDuration' => \false
66
  ],
67
  [
68
  'type' => 'http',
@@ -72,10 +72,10 @@ class RealCookieBannerPreset extends \DevOwl\RealCookieBanner\presets\AbstractCo
72
  ),
73
  'duration' => \DevOwl\RealCookieBanner\settings\Consent::getInstance()->getCookieDuration(),
74
  'durationUnit' => 'd',
75
- 'sessionDuration' => \false
76
  ]
77
  ],
78
- 'codeOptOutDelete' => \false
79
  ]
80
  ];
81
  }
40
  ),
41
  'legalBasis' => \DevOwl\RealCookieBanner\settings\Cookie::LEGAL_BASIS_LEGAL_REQUIREMENT,
42
  'provider' => get_bloginfo('name'),
43
+ 'providerPrivacyPolicyUrl' => \DevOwl\RealCookieBanner\settings\General::getInstance()->getPrivacyPolicyUrl(
44
  ''
45
  ),
46
  'technicalDefinitions' => [
52
  ),
53
  'duration' => \DevOwl\RealCookieBanner\settings\Consent::getInstance()->getCookieDuration(),
54
  'durationUnit' => 'd',
55
+ 'isSessionDuration' => \false
56
  ],
57
  [
58
  'type' => 'http',
62
  ),
63
  'duration' => \DevOwl\RealCookieBanner\settings\Consent::getInstance()->getCookieDuration(),
64
  'durationUnit' => 'd',
65
+ 'isSessionDuration' => \false
66
  ],
67
  [
68
  'type' => 'http',
72
  ),
73
  'duration' => \DevOwl\RealCookieBanner\settings\Consent::getInstance()->getCookieDuration(),
74
  'durationUnit' => 'd',
75
+ 'isSessionDuration' => \false
76
  ]
77
  ],
78
+ 'deleteTechnicalDefinitionsAfterOptOut' => \false
79
  ]
80
  ];
81
  }
inc/presets/free/WordPressCommentsPreset.php CHANGED
@@ -34,7 +34,7 @@ class WordPressCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractC
34
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
35
  ),
36
  'provider' => get_bloginfo('name'),
37
- 'providerPrivacyPolicy' => \DevOwl\RealCookieBanner\settings\General::getInstance()->getPrivacyPolicyUrl(
38
  ''
39
  ),
40
  'technicalDefinitions' => [
@@ -44,7 +44,7 @@ class WordPressCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractC
44
  'host' => $cookieHost,
45
  'duration' => 1,
46
  'durationUnit' => 'y',
47
- 'sessionDuration' => \false
48
  ],
49
  [
50
  'type' => 'http',
@@ -52,7 +52,7 @@ class WordPressCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractC
52
  'host' => $cookieHost,
53
  'duration' => 1,
54
  'durationUnit' => 'y',
55
- 'sessionDuration' => \false
56
  ],
57
  [
58
  'type' => 'http',
@@ -60,7 +60,7 @@ class WordPressCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractC
60
  'host' => $cookieHost,
61
  'duration' => 1,
62
  'durationUnit' => 'y',
63
- 'sessionDuration' => \false
64
  ]
65
  ],
66
  'technicalHandlingNotice' => \join('<br /><br />', [
@@ -68,9 +68,13 @@ class WordPressCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractC
68
  'Please note that if this service is enabled, the "Save my name, email, and website in this browser for the next time I comment." checkbox in the comment form will disappear. Real Cookie Banner handles the consent to set the cookies as part of the overall cookie consent. The commentary system uses the Gravatar service to display avatars of commentators. You must also create a service for Gravatar as well.',
69
  RCB_TD
70
  ),
71
- __(
72
- 'Do you want to use the comment feature on your website at all? If not, we explain in our blog <a href="https://devowl.io/2022/deactivate-wordpress-comments/" target="_blank"> how to disable comments in WordPress</a>. Then you can also avoid this consent!',
73
- RCB_TD
 
 
 
 
74
  )
75
  ]),
76
  'codeOptIn' => '<script>
@@ -84,7 +88,7 @@ class WordPressCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractC
84
  label.style.display = "none";
85
  }
86
  </script>',
87
- 'codeOptOutDelete' => \false
88
  ]
89
  ];
90
  }
34
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
35
  ),
36
  'provider' => get_bloginfo('name'),
37
+ 'providerPrivacyPolicyUrl' => \DevOwl\RealCookieBanner\settings\General::getInstance()->getPrivacyPolicyUrl(
38
  ''
39
  ),
40
  'technicalDefinitions' => [
44
  'host' => $cookieHost,
45
  'duration' => 1,
46
  'durationUnit' => 'y',
47
+ 'isSessionDuration' => \false
48
  ],
49
  [
50
  'type' => 'http',
52
  'host' => $cookieHost,
53
  'duration' => 1,
54
  'durationUnit' => 'y',
55
+ 'isSessionDuration' => \false
56
  ],
57
  [
58
  'type' => 'http',
60
  'host' => $cookieHost,
61
  'duration' => 1,
62
  'durationUnit' => 'y',
63
+ 'isSessionDuration' => \false
64
  ]
65
  ],
66
  'technicalHandlingNotice' => \join('<br /><br />', [
68
  'Please note that if this service is enabled, the "Save my name, email, and website in this browser for the next time I comment." checkbox in the comment form will disappear. Real Cookie Banner handles the consent to set the cookies as part of the overall cookie consent. The commentary system uses the Gravatar service to display avatars of commentators. You must also create a service for Gravatar as well.',
69
  RCB_TD
70
  ),
71
+ \sprintf(
72
+ // translators:
73
+ __(
74
+ 'Do you want to use the comment feature on your website at all? If not, we explain in our blog <a href="%s" target="_blank"> how to disable comments in WordPress</a>. Then you can also avoid this consent!',
75
+ RCB_TD
76
+ ),
77
+ __('https://devowl.io/2022/deactivate-wordpress-comments/', RCB_TD)
78
  )
79
  ]),
80
  'codeOptIn' => '<script>
88
  label.style.display = "none";
89
  }
90
  </script>',
91
+ 'deleteTechnicalDefinitionsAfterOptOut' => \false
92
  ]
93
  ];
94
  }
inc/presets/free/WordPressEmojisPreset.php CHANGED
@@ -30,9 +30,9 @@ class WordPressEmojisPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
30
  'WordPress Emoji is an emoji set that is loaded from wordpress.org. No cookies in the technical sense are set on the client of the user, but technical and personal data such as the IP address will be transmitted from the client to the server of the service provider to make the use of the service possible.',
31
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
32
  ),
33
- 'noTechnicalDefinitions' => \true,
34
  'provider' => 'WordPress.org',
35
- 'providerPrivacyPolicy' => __(
36
  'https://wordpress.org/about/privacy/',
37
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
38
  ),
@@ -42,9 +42,13 @@ class WordPressEmojisPreset extends \DevOwl\RealCookieBanner\presets\AbstractCoo
42
  'Almost all browsers and operating systems released after 2015 can easily display emojis without the WordPressa Emoji Script (for which you must obtain this consent).',
43
  RCB_TD
44
  ),
45
- __(
46
- 'Unless you need to support particularly old browsers and operating systems, we recommend that you <a href="https://devowl.io/2022/disable-emojis-wordpress/" target="_blank">disable the WordPress emoji script</a> rather than asking for consent. How to do that, we have explained in our blog!',
47
- RCB_TD
 
 
 
 
48
  )
49
  ])
50
  ]
30
  'WordPress Emoji is an emoji set that is loaded from wordpress.org. No cookies in the technical sense are set on the client of the user, but technical and personal data such as the IP address will be transmitted from the client to the server of the service provider to make the use of the service possible.',
31
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
32
  ),
33
+ 'isEmbeddingOnlyExternalResources' => \true,
34
  'provider' => 'WordPress.org',
35
+ 'providerPrivacyPolicyUrl' => __(
36
  'https://wordpress.org/about/privacy/',
37
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
38
  ),
42
  'Almost all browsers and operating systems released after 2015 can easily display emojis without the WordPressa Emoji Script (for which you must obtain this consent).',
43
  RCB_TD
44
  ),
45
+ \sprintf(
46
+ // translators:
47
+ __(
48
+ 'Unless you need to support particularly old browsers and operating systems, we recommend that you <a href="%s" target="_blank">disable the WordPress emoji script</a> rather than asking for consent. How to do that, we have explained in our blog!',
49
+ RCB_TD
50
+ ),
51
+ __('https://devowl.io/2022/disable-emojis-wordpress/', RCB_TD)
52
  )
53
  ])
54
  ]
inc/presets/free/WordPressPluginEmbed.php CHANGED
@@ -31,8 +31,8 @@ class WordPressPluginEmbed extends \DevOwl\RealCookieBanner\presets\AbstractCook
31
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
32
  ),
33
  'provider' => 'WordPress.org',
34
- 'providerPrivacyPolicy' => 'https://wordpress.org/about/privacy/',
35
- 'noTechnicalDefinitions' => \true,
36
  'ePrivacyUSA' => \true
37
  ]
38
  ];
31
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
32
  ),
33
  'provider' => 'WordPress.org',
34
+ 'providerPrivacyPolicyUrl' => 'https://wordpress.org/about/privacy/',
35
+ 'isEmbeddingOnlyExternalResources' => \true,
36
  'ePrivacyUSA' => \true
37
  ]
38
  ];
inc/presets/free/WordPressUserLoginPreset.php CHANGED
@@ -33,7 +33,7 @@ class WordPressUserLoginPreset extends \DevOwl\RealCookieBanner\presets\Abstract
33
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
34
  ),
35
  'provider' => get_bloginfo('name'),
36
- 'providerPrivacyPolicy' => \DevOwl\RealCookieBanner\settings\General::getInstance()->getPrivacyPolicyUrl(
37
  ''
38
  ),
39
  'technicalDefinitions' => [
@@ -43,7 +43,7 @@ class WordPressUserLoginPreset extends \DevOwl\RealCookieBanner\presets\Abstract
43
  'host' => $cookieHost,
44
  'duration' => 0,
45
  'durationUnit' => 'y',
46
- 'sessionDuration' => \true
47
  ],
48
  [
49
  'type' => 'http',
@@ -51,7 +51,7 @@ class WordPressUserLoginPreset extends \DevOwl\RealCookieBanner\presets\Abstract
51
  'host' => $cookieHost,
52
  'duration' => 0,
53
  'durationUnit' => 'y',
54
- 'sessionDuration' => \true
55
  ],
56
  [
57
  'type' => 'http',
@@ -59,7 +59,7 @@ class WordPressUserLoginPreset extends \DevOwl\RealCookieBanner\presets\Abstract
59
  'host' => $cookieHost,
60
  'duration' => 1,
61
  'durationUnit' => 'y',
62
- 'sessionDuration' => \false
63
  ],
64
  [
65
  'type' => 'http',
@@ -67,10 +67,10 @@ class WordPressUserLoginPreset extends \DevOwl\RealCookieBanner\presets\Abstract
67
  'host' => $cookieHost,
68
  'duration' => 0,
69
  'durationUnit' => 'y',
70
- 'sessionDuration' => \true
71
  ]
72
  ],
73
- 'codeOptOutDelete' => \false,
74
  'createContentBlockerNotice' => \join('<br /><br />', [
75
  __(
76
  'You can block the login form to your WordPress (backend) login until consent. This is useful if you want external services like Google reCAPTCHA to load additionally at the login.',
@@ -81,7 +81,7 @@ class WordPressUserLoginPreset extends \DevOwl\RealCookieBanner\presets\Abstract
81
  RCB_TD
82
  )
83
  ]),
84
- 'deactivateAutomaticContentBlockerCreation' => \true
85
  ]
86
  ];
87
  }
33
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
34
  ),
35
  'provider' => get_bloginfo('name'),
36
+ 'providerPrivacyPolicyUrl' => \DevOwl\RealCookieBanner\settings\General::getInstance()->getPrivacyPolicyUrl(
37
  ''
38
  ),
39
  'technicalDefinitions' => [
43
  'host' => $cookieHost,
44
  'duration' => 0,
45
  'durationUnit' => 'y',
46
+ 'isSessionDuration' => \true
47
  ],
48
  [
49
  'type' => 'http',
51
  'host' => $cookieHost,
52
  'duration' => 0,
53
  'durationUnit' => 'y',
54
+ 'isSessionDuration' => \true
55
  ],
56
  [
57
  'type' => 'http',
59
  'host' => $cookieHost,
60
  'duration' => 1,
61
  'durationUnit' => 'y',
62
+ 'isSessionDuration' => \false
63
  ],
64
  [
65
  'type' => 'http',
67
  'host' => $cookieHost,
68
  'duration' => 0,
69
  'durationUnit' => 'y',
70
+ 'isSessionDuration' => \true
71
  ]
72
  ],
73
+ 'deleteTechnicalDefinitionsAfterOptOut' => \false,
74
  'createContentBlockerNotice' => \join('<br /><br />', [
75
  __(
76
  'You can block the login form to your WordPress (backend) login until consent. This is useful if you want external services like Google reCAPTCHA to load additionally at the login.',
81
  RCB_TD
82
  )
83
  ]),
84
+ 'shouldUncheckContentBlockerCheckbox' => \true
85
  ]
86
  ];
87
  }
inc/presets/free/YoutubePreset.php CHANGED
@@ -32,14 +32,14 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
32
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
33
  ),
34
  'provider' => 'Google Ireland Limited',
35
- 'providerPrivacyPolicy' => 'https://policies.google.com/privacy',
36
  'technicalDefinitions' => [
37
  [
38
  'type' => 'http',
39
  'name' => 'SIDCC',
40
  'host' => '.youtube.com',
41
  'durationUnit' => 'y',
42
- 'sessionDuration' => \false,
43
  'duration' => 1
44
  ],
45
  [
@@ -48,7 +48,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
48
  'host' => '.youtube.com',
49
  'duration' => 2,
50
  'durationUnit' => 'y',
51
- 'sessionDuration' => \false
52
  ],
53
  [
54
  'type' => 'http',
@@ -56,39 +56,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
56
  'host' => '.youtube.com',
57
  'duration' => 1,
58
  'durationUnit' => 'mo',
59
- 'sessionDuration' => \false
60
- ],
61
- [
62
- 'type' => 'http',
63
- 'name' => '__Secure-SSID',
64
- 'host' => '.youtube.com',
65
- 'duration' => 1,
66
- 'durationUnit' => 'mo',
67
- 'sessionDuration' => \false
68
- ],
69
- [
70
- 'type' => 'http',
71
- 'name' => '__Secure-HSID',
72
- 'host' => '.youtube.com',
73
- 'duration' => 1,
74
- 'durationUnit' => 'mo',
75
- 'sessionDuration' => \false
76
- ],
77
- [
78
- 'type' => 'http',
79
- 'name' => 'APISID',
80
- 'host' => '.youtube.com',
81
- 'duration' => 6,
82
- 'durationUnit' => 'mo',
83
- 'sessionDuration' => \false
84
- ],
85
- [
86
- 'type' => 'http',
87
- 'name' => '__Secure-3PSID',
88
- 'host' => '.youtube.com',
89
- 'duration' => 6,
90
- 'durationUnit' => 'mo',
91
- 'sessionDuration' => \false
92
  ],
93
  [
94
  'type' => 'http',
@@ -96,15 +64,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
96
  'host' => '.youtube.com',
97
  'duration' => 2,
98
  'durationUnit' => 'y',
99
- 'sessionDuration' => \false
100
- ],
101
- [
102
- 'type' => 'http',
103
- 'name' => 'HSID',
104
- 'host' => '.youtube.com',
105
- 'duration' => 6,
106
- 'durationUnit' => 'mo',
107
- 'sessionDuration' => \false
108
  ],
109
  [
110
  'type' => 'http',
@@ -112,15 +72,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
112
  'host' => '.youtube.com',
113
  'duration' => 2,
114
  'durationUnit' => 'y',
115
- 'sessionDuration' => \false
116
- ],
117
- [
118
- 'type' => 'http',
119
- 'name' => 'SID',
120
- 'host' => '.youtube.com',
121
- 'duration' => 6,
122
- 'durationUnit' => 'mo',
123
- 'sessionDuration' => \false
124
  ],
125
  [
126
  'type' => 'http',
@@ -128,7 +80,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
128
  'host' => '.youtube.com',
129
  'duration' => 1,
130
  'durationUnit' => 'mo',
131
- 'sessionDuration' => \false
132
  ],
133
  [
134
  'type' => 'http',
@@ -136,39 +88,23 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
136
  'host' => '.youtube.com',
137
  'duration' => 6,
138
  'durationUnit' => 'mo',
139
- 'sessionDuration' => \false
140
- ],
141
- [
142
- 'type' => 'http',
143
- 'name' => 'CONSENT',
144
- 'host' => '.youtube.com',
145
- 'duration' => 6,
146
- 'durationUnit' => 'y',
147
- 'sessionDuration' => \false
148
  ],
149
  [
150
  'type' => 'http',
151
  'name' => 'YSC',
152
  'host' => '.youtube.com',
153
  'durationUnit' => 'y',
154
- 'sessionDuration' => \true,
155
  'duration' => 0
156
  ],
157
- [
158
- 'type' => 'http',
159
- 'name' => 'SIDCC',
160
- 'host' => '.youtube.com',
161
- 'duration' => 6,
162
- 'durationUnit' => 'mo',
163
- 'sessionDuration' => \false
164
- ],
165
  [
166
  'type' => 'http',
167
  'name' => 'LOGIN_INFO',
168
  'host' => '.youtube.com',
169
  'duration' => 2,
170
  'durationUnit' => 'y',
171
- 'sessionDuration' => \false
172
  ],
173
  [
174
  'type' => 'http',
@@ -176,7 +112,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
176
  'host' => '.youtube.com',
177
  'duration' => 2,
178
  'durationUnit' => 'y',
179
- 'sessionDuration' => \false
180
  ],
181
  [
182
  'type' => 'http',
@@ -184,15 +120,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
184
  'host' => '.youtube.com',
185
  'duration' => 6,
186
  'durationUnit' => 'mo',
187
- 'sessionDuration' => \false
188
- ],
189
- [
190
- 'type' => 'http',
191
- 'name' => '__Secure-3PAPISID',
192
- 'host' => '.youtube.com',
193
- 'duration' => 6,
194
- 'durationUnit' => 'mo',
195
- 'sessionDuration' => \false
196
  ],
197
  [
198
  'type' => 'http',
@@ -200,15 +128,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
200
  'host' => '.youtube.com',
201
  'duration' => 18,
202
  'durationUnit' => 'y',
203
- 'sessionDuration' => \false
204
- ],
205
- [
206
- 'type' => 'http',
207
- 'name' => 'SSID',
208
- 'host' => '.youtube.com',
209
- 'duration' => 6,
210
- 'durationUnit' => 'mo',
211
- 'sessionDuration' => \false
212
  ],
213
  [
214
  'type' => 'http',
@@ -216,15 +136,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
216
  'host' => '.youtube.com',
217
  'duration' => 1,
218
  'durationUnit' => 'mo',
219
- 'sessionDuration' => \false
220
- ],
221
- [
222
- 'type' => 'http',
223
- 'name' => '__Secure-APISID',
224
- 'host' => '.youtube.com',
225
- 'duration' => 1,
226
- 'durationUnit' => 'mo',
227
- 'sessionDuration' => \false
228
  ],
229
  [
230
  'type' => 'http',
@@ -232,15 +144,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
232
  'host' => '.youtube.com',
233
  'duration' => 1,
234
  'durationUnit' => 'mo',
235
- 'sessionDuration' => \false
236
- ],
237
- [
238
- 'type' => 'http',
239
- 'name' => 'SAPISID',
240
- 'host' => '.youtube.com',
241
- 'duration' => 6,
242
- 'durationUnit' => 'mo',
243
- 'sessionDuration' => \false
244
  ],
245
  [
246
  'type' => 'http',
@@ -248,7 +152,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
248
  'host' => '.youtube.com',
249
  'duration' => 2,
250
  'durationUnit' => 'y',
251
- 'sessionDuration' => \false
252
  ],
253
  [
254
  'type' => 'http',
@@ -256,7 +160,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
256
  'host' => '.youtube.com',
257
  'duration' => 2,
258
  'durationUnit' => 'y',
259
- 'sessionDuration' => \false
260
  ],
261
  [
262
  'type' => 'http',
@@ -264,7 +168,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
264
  'host' => '.youtube.com',
265
  'duration' => 8,
266
  'durationUnit' => 'mo',
267
- 'sessionDuration' => \false
268
  ],
269
  [
270
  'type' => 'http',
@@ -272,14 +176,14 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
272
  'host' => '.youtube.com',
273
  'duration' => 2,
274
  'durationUnit' => 'y',
275
- 'sessionDuration' => \false
276
  ],
277
  [
278
  'type' => 'http',
279
  'name' => 's_gl',
280
  'host' => '.youtube.com',
281
  'durationUnit' => 'y',
282
- 'sessionDuration' => \true,
283
  'duration' => 0
284
  ],
285
  [
@@ -288,7 +192,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
288
  'host' => '.google.com',
289
  'duration' => 1,
290
  'durationUnit' => 'y',
291
- 'sessionDuration' => \false
292
  ],
293
  [
294
  'type' => 'http',
@@ -296,7 +200,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
296
  'host' => '.google.com',
297
  'duration' => 2,
298
  'durationUnit' => 'y',
299
- 'sessionDuration' => \false
300
  ],
301
  [
302
  'type' => 'http',
@@ -304,7 +208,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
304
  'host' => '.google.com',
305
  'duration' => 2,
306
  'durationUnit' => 'y',
307
- 'sessionDuration' => \false
308
  ],
309
  [
310
  'type' => 'http',
@@ -312,7 +216,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
312
  'host' => '.google.com',
313
  'duration' => 2,
314
  'durationUnit' => 'y',
315
- 'sessionDuration' => \false
316
  ],
317
  [
318
  'type' => 'http',
@@ -320,7 +224,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
320
  'host' => '.google.com',
321
  'duration' => 2,
322
  'durationUnit' => 'y',
323
- 'sessionDuration' => \false
324
  ],
325
  [
326
  'type' => 'http',
@@ -328,7 +232,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
328
  'host' => '.google.com',
329
  'duration' => 2,
330
  'durationUnit' => 'y',
331
- 'sessionDuration' => \false
332
  ],
333
  [
334
  'type' => 'http',
@@ -336,7 +240,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
336
  'host' => '.google.com',
337
  'duration' => 2,
338
  'durationUnit' => 'y',
339
- 'sessionDuration' => \false
340
  ],
341
  [
342
  'type' => 'http',
@@ -344,7 +248,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
344
  'host' => '.google.com',
345
  'duration' => 2,
346
  'durationUnit' => 'y',
347
- 'sessionDuration' => \false
348
  ],
349
  [
350
  'type' => 'http',
@@ -352,7 +256,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
352
  'host' => '.google.com',
353
  'duration' => 18,
354
  'durationUnit' => 'y',
355
- 'sessionDuration' => \false
356
  ],
357
  [
358
  'type' => 'http',
@@ -360,7 +264,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
360
  'host' => '.google.com',
361
  'duration' => 6,
362
  'durationUnit' => 'mo',
363
- 'sessionDuration' => \false
364
  ],
365
  [
366
  'type' => 'http',
@@ -368,7 +272,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
368
  'host' => '.google.com',
369
  'duration' => 1,
370
  'durationUnit' => 'mo',
371
- 'sessionDuration' => \false
372
  ],
373
  [
374
  'type' => 'http',
@@ -376,7 +280,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
376
  'host' => 'www.google.com',
377
  'duration' => 1,
378
  'durationUnit' => 'm',
379
- 'sessionDuration' => \false
380
  ]
381
  ],
382
  'technicalHandlingNotice' => \join('<br /><br />', [
@@ -394,7 +298,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractCookiePrese
394
  esc_attr(__('https://devowl.io/2022/youtube-website-gdpr/', RCB_TD))
395
  )
396
  ]),
397
- 'codeOptOutDelete' => \false,
398
  'ePrivacyUSA' => \true
399
  ]
400
  ];
32
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
33
  ),
34
  'provider' => 'Google Ireland Limited',
35
+ 'providerPrivacyPolicyUrl' => 'https://policies.google.com/privacy',
36
  'technicalDefinitions' => [
37
  [
38
  'type' => 'http',
39
  'name' => 'SIDCC',
40
  'host' => '.youtube.com',
41
  'durationUnit' => 'y',
42
+ 'isSessionDuration' => \false,
43
  'duration' => 1
44
  ],
45
  [
48
  'host' => '.youtube.com',
49
  'duration' => 2,
50
  'durationUnit' => 'y',
51
+ 'isSessionDuration' => \false
52
  ],
53
  [
54
  'type' => 'http',
56
  'host' => '.youtube.com',
57
  'duration' => 1,
58
  'durationUnit' => 'mo',
59
+ 'isSessionDuration' => \false
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
  ],
61
  [
62
  'type' => 'http',
64
  'host' => '.youtube.com',
65
  'duration' => 2,
66
  'durationUnit' => 'y',
67
+ 'isSessionDuration' => \false
 
 
 
 
 
 
 
 
68
  ],
69
  [
70
  'type' => 'http',
72
  'host' => '.youtube.com',
73
  'duration' => 2,
74
  'durationUnit' => 'y',
75
+ 'isSessionDuration' => \false
 
 
 
 
 
 
 
 
76
  ],
77
  [
78
  'type' => 'http',
80
  'host' => '.youtube.com',
81
  'duration' => 1,
82
  'durationUnit' => 'mo',
83
+ 'isSessionDuration' => \false
84
  ],
85
  [
86
  'type' => 'http',
88
  'host' => '.youtube.com',
89
  'duration' => 6,
90
  'durationUnit' => 'mo',
91
+ 'isSessionDuration' => \false
 
 
 
 
 
 
 
 
92
  ],
93
  [
94
  'type' => 'http',
95
  'name' => 'YSC',
96
  'host' => '.youtube.com',
97
  'durationUnit' => 'y',
98
+ 'isSessionDuration' => \true,
99
  'duration' => 0
100
  ],
 
 
 
 
 
 
 
 
101
  [
102
  'type' => 'http',
103
  'name' => 'LOGIN_INFO',
104
  'host' => '.youtube.com',
105
  'duration' => 2,
106
  'durationUnit' => 'y',
107
+ 'isSessionDuration' => \false
108
  ],
109
  [
110
  'type' => 'http',
112
  'host' => '.youtube.com',
113
  'duration' => 2,
114
  'durationUnit' => 'y',
115
+ 'isSessionDuration' => \false
116
  ],
117
  [
118
  'type' => 'http',
120
  'host' => '.youtube.com',
121
  'duration' => 6,
122
  'durationUnit' => 'mo',
123
+ 'isSessionDuration' => \false
 
 
 
 
 
 
 
 
124
  ],
125
  [
126
  'type' => 'http',
128
  'host' => '.youtube.com',
129
  'duration' => 18,
130
  'durationUnit' => 'y',
131
+ 'isSessionDuration' => \false
 
 
 
 
 
 
 
 
132
  ],
133
  [
134
  'type' => 'http',
136
  'host' => '.youtube.com',
137
  'duration' => 1,
138
  'durationUnit' => 'mo',
139
+ 'isSessionDuration' => \false
 
 
 
 
 
 
 
 
140
  ],
141
  [
142
  'type' => 'http',
144
  'host' => '.youtube.com',
145
  'duration' => 1,
146
  'durationUnit' => 'mo',
147
+ 'isSessionDuration' => \false
 
 
 
 
 
 
 
 
148
  ],
149
  [
150
  'type' => 'http',
152
  'host' => '.youtube.com',
153
  'duration' => 2,
154
  'durationUnit' => 'y',
155
+ 'isSessionDuration' => \false
156
  ],
157
  [
158
  'type' => 'http',
160
  'host' => '.youtube.com',
161
  'duration' => 2,
162
  'durationUnit' => 'y',
163
+ 'isSessionDuration' => \false
164
  ],
165
  [
166
  'type' => 'http',
168
  'host' => '.youtube.com',
169
  'duration' => 8,
170
  'durationUnit' => 'mo',
171
+ 'isSessionDuration' => \false
172
  ],
173
  [
174
  'type' => 'http',
176
  'host' => '.youtube.com',
177
  'duration' => 2,
178
  'durationUnit' => 'y',
179
+ 'isSessionDuration' => \false
180
  ],
181
  [
182
  'type' => 'http',
183
  'name' => 's_gl',
184
  'host' => '.youtube.com',
185
  'durationUnit' => 'y',
186
+ 'isSessionDuration' => \true,
187
  'duration' => 0
188
  ],
189
  [
192
  'host' => '.google.com',
193
  'duration' => 1,
194
  'durationUnit' => 'y',
195
+ 'isSessionDuration' => \false
196
  ],
197
  [
198
  'type' => 'http',
200
  'host' => '.google.com',
201
  'duration' => 2,
202
  'durationUnit' => 'y',
203
+ 'isSessionDuration' => \false
204
  ],
205
  [
206
  'type' => 'http',
208
  'host' => '.google.com',
209
  'duration' => 2,
210
  'durationUnit' => 'y',
211
+ 'isSessionDuration' => \false
212
  ],
213
  [
214
  'type' => 'http',
216
  'host' => '.google.com',
217
  'duration' => 2,
218
  'durationUnit' => 'y',
219
+ 'isSessionDuration' => \false
220
  ],
221
  [
222
  'type' => 'http',
224
  'host' => '.google.com',
225
  'duration' => 2,
226
  'durationUnit' => 'y',
227
+ 'isSessionDuration' => \false
228
  ],
229
  [
230
  'type' => 'http',
232
  'host' => '.google.com',
233
  'duration' => 2,
234
  'durationUnit' => 'y',
235
+ 'isSessionDuration' => \false
236
  ],
237
  [
238
  'type' => 'http',
240
  'host' => '.google.com',
241
  'duration' => 2,
242
  'durationUnit' => 'y',
243
+ 'isSessionDuration' => \false
244
  ],
245
  [
246
  'type' => 'http',
248
  'host' => '.google.com',
249
  'duration' => 2,
250
  'durationUnit' => 'y',
251
+ 'isSessionDuration' => \false
252
  ],
253
  [
254
  'type' => 'http',
256
  'host' => '.google.com',
257
  'duration' => 18,
258
  'durationUnit' => 'y',
259
+ 'isSessionDuration' => \false
260
  ],
261
  [
262
  'type' => 'http',
264
  'host' => '.google.com',
265
  'duration' => 6,
266
  'durationUnit' => 'mo',
267
+ 'isSessionDuration' => \false
268
  ],
269
  [
270
  'type' => 'http',
272
  'host' => '.google.com',
273
  'duration' => 1,
274
  'durationUnit' => 'mo',
275
+ 'isSessionDuration' => \false
276
  ],
277
  [
278
  'type' => 'http',
280
  'host' => 'www.google.com',
281
  'duration' => 1,
282
  'durationUnit' => 'm',
283
+ 'isSessionDuration' => \false
284
  ]
285
  ],
286
  'technicalHandlingNotice' => \join('<br /><br />', [
298
  esc_attr(__('https://devowl.io/2022/youtube-website-gdpr/', RCB_TD))
299
  )
300
  ]),
301
+ 'deleteTechnicalDefinitionsAfterOptOut' => \false,
302
  'ePrivacyUSA' => \true
303
  ]
304
  ];
inc/presets/free/blocker/FontAwesomePreset.php CHANGED
@@ -25,12 +25,12 @@ class FontAwesomePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
25
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/font-awesome.png'),
26
  'attributes' => [
27
  'name' => $name,
28
- 'hosts' => \array_merge(
29
  ['*use.fontawesome.com*', '*kit.fontawesome.com*', '*bootstrapcdn.com/font-awesome/*'],
30
  $this->createHostsForCdn('font-awesome')
31
  ),
32
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\FontAwesomePreset::IDENTIFIER],
33
- 'visual' => \false
34
  ]
35
  ];
36
  }
25
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/font-awesome.png'),
26
  'attributes' => [
27
  'name' => $name,
28
+ 'rules' => \array_merge(
29
  ['*use.fontawesome.com*', '*kit.fontawesome.com*', '*bootstrapcdn.com/font-awesome/*'],
30
  $this->createHostsForCdn('font-awesome')
31
  ),
32
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\FontAwesomePreset::IDENTIFIER],
33
+ 'isVisual' => \false
34
  ]
35
  ];
36
  }
inc/presets/free/blocker/GoogleFontsPreset.php CHANGED
@@ -31,9 +31,15 @@ class GoogleFontsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
31
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-fonts.png'),
32
  'attributes' => [
33
  'name' => $name,
34
- 'hosts' => ['*fonts.googleapis.com*', self::WEB_FONT_LOADER_URL, '*fonts.gstatic.com*'],
35
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\blocker\GoogleFontsPreset::IDENTIFIER],
36
- 'visual' => \false
 
 
 
 
 
 
37
  ]
38
  ];
39
  }
31
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-fonts.png'),
32
  'attributes' => [
33
  'name' => $name,
34
+ 'rules' => [
35
+ '*fonts.googleapis.com*',
36
+ self::WEB_FONT_LOADER_URL,
37
+ '*fonts.gstatic.com*',
38
+ '*WebFont.load*google*',
39
+ 'WebFontConfig*google*'
40
+ ],
41
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\blocker\GoogleFontsPreset::IDENTIFIER],
42
+ 'isVisual' => \false
43
  ]
44
  ];
45
  }
inc/presets/free/blocker/GravatarPreset.php CHANGED
@@ -25,9 +25,9 @@ class GravatarPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
25
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/gravatar.png'),
26
  'attributes' => [
27
  'name' => $name,
28
- 'hosts' => ['*gravatar.com/avatar*', '*.gravatar.com'],
29
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\GravatarPreset::IDENTIFIER],
30
- 'visual' => \false
31
  ]
32
  ];
33
  }
25
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/gravatar.png'),
26
  'attributes' => [
27
  'name' => $name,
28
+ 'rules' => ['*gravatar.com/avatar*', '*.gravatar.com'],
29
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\GravatarPreset::IDENTIFIER],
30
+ 'isVisual' => \false
31
  ]
32
  ];
33
  }
inc/presets/free/blocker/JetPackCommentsPreset.php CHANGED
@@ -32,9 +32,9 @@ class JetPackCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlo
32
  'We use the Jetpack Comments service to give you the opportunity to leave a comment. In order to be able to write your own comment, you must allow this service to load.',
33
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
34
  ),
35
- 'hosts' => ['jetpack_remote_comment', 'iframe[class="jetpack_remote_comment"]'],
36
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\JetPackCommentsPreset::IDENTIFIER],
37
- 'visual' => \true,
38
  'visualType' => 'hero',
39
  'visualContentType' => 'feed-text'
40
  ]
32
  'We use the Jetpack Comments service to give you the opportunity to leave a comment. In order to be able to write your own comment, you must allow this service to load.',
33
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
34
  ),
35
+ 'rules' => ['jetpack_remote_comment', 'iframe[class="jetpack_remote_comment"]'],
36
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\JetPackCommentsPreset::IDENTIFIER],
37
+ 'isVisual' => \true,
38
  'visualType' => 'hero',
39
  'visualContentType' => 'feed-text'
40
  ]
inc/presets/free/blocker/JetPackSiteStatsPreset.php CHANGED
@@ -26,9 +26,9 @@ class JetPackSiteStatsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBl
26
  'needs' => \DevOwl\RealCookieBanner\presets\free\JetpackSiteStatsPreset::needs(),
27
  'attributes' => [
28
  'name' => $name,
29
- 'hosts' => ['*pixel.wp.com*', '*stats.wp.com*'],
30
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\JetpackSiteStatsPreset::IDENTIFIER],
31
- 'visual' => \false
32
  ]
33
  ];
34
  }
26
  'needs' => \DevOwl\RealCookieBanner\presets\free\JetpackSiteStatsPreset::needs(),
27
  'attributes' => [
28
  'name' => $name,
29
+ 'rules' => ['*pixel.wp.com*', '*stats.wp.com*'],
30
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\JetpackSiteStatsPreset::IDENTIFIER],
31
+ 'isVisual' => \false
32
  ]
33
  ];
34
  }
inc/presets/free/blocker/WordPressCommentsPreset.php CHANGED
@@ -24,8 +24,8 @@ class WordPressCommentsPreset extends \DevOwl\RealCookieBanner\presets\AbstractB
24
  'logoFile' => admin_url('images/wordpress-logo.svg'),
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['form[action*="wp-comments-post.php"]'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\WordPressCommentsPreset::IDENTIFIER]
29
  ]
30
  ];
31
  }
24
  'logoFile' => admin_url('images/wordpress-logo.svg'),
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['form[action*="wp-comments-post.php"]'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\WordPressCommentsPreset::IDENTIFIER]
29
  ]
30
  ];
31
  }
inc/presets/free/blocker/WordPressEmojisPreset.php CHANGED
@@ -24,9 +24,9 @@ class WordPressEmojisPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlo
24
  'logoFile' => admin_url('images/wordpress-logo.svg'),
25
  'attributes' => [
26
  'name' => $name,
27
- 'hosts' => ['*s.w.org/images/core/emoji*', 'window._wpemojiSettings', 'link[href="//s.w.org"]'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\WordPressEmojisPreset::IDENTIFIER],
29
- 'visual' => \false
30
  ]
31
  ];
32
  }
24
  'logoFile' => admin_url('images/wordpress-logo.svg'),
25
  'attributes' => [
26
  'name' => $name,
27
+ 'rules' => ['*s.w.org/images/core/emoji*', 'window._wpemojiSettings', 'link[href="//s.w.org"]'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\WordPressEmojisPreset::IDENTIFIER],
29
+ 'isVisual' => \false
30
  ]
31
  ];
32
  }
inc/presets/free/blocker/WordPressPluginEmbed.php CHANGED
@@ -29,10 +29,10 @@ class WordPressPluginEmbed extends \DevOwl\RealCookieBanner\presets\AbstractBloc
29
  'WordPress.org would give more information about a WordPress plugin here if you would give your consent.',
30
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
31
  ),
32
- 'hosts' => ['*wordpress.org/plugins/*/embed/*'],
33
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\WordPressPluginEmbed::IDENTIFIER],
34
- 'visual' => \true,
35
- 'forceHidden' => \true
36
  ]
37
  ];
38
  }
29
  'WordPress.org would give more information about a WordPress plugin here if you would give your consent.',
30
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
31
  ),
32
+ 'rules' => ['*wordpress.org/plugins/*/embed/*'],
33
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\WordPressPluginEmbed::IDENTIFIER],
34
+ 'isVisual' => \true,
35
+ 'shouldForceToShowVisual' => \true
36
  ]
37
  ];
38
  }
inc/presets/free/blocker/WordPressUserLoginPreset.php CHANGED
@@ -28,9 +28,9 @@ class WordPressUserLoginPreset extends \DevOwl\RealCookieBanner\presets\Abstract
28
  'In order to log in, you must allow us to load additional services for security and convenience reasons.',
29
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
30
  ),
31
- 'hosts' => ['form[name="loginform"]'],
32
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\WordPressUserLoginPreset::IDENTIFIER],
33
- 'visual' => \true
34
  ]
35
  ];
36
  }
28
  'In order to log in, you must allow us to load additional services for security and convenience reasons.',
29
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
30
  ),
31
+ 'rules' => ['form[name="loginform"]'],
32
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\WordPressUserLoginPreset::IDENTIFIER],
33
+ 'isVisual' => \true
34
  ]
35
  ];
36
  }
inc/presets/free/blocker/YoutubePreset.php CHANGED
@@ -27,7 +27,7 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/youtube.png'),
28
  'attributes' => [
29
  'name' => $name,
30
- 'hosts' => [
31
  '*youtube.com*',
32
  '*youtu.be*',
33
  '*youtube-nocookie.com*',
@@ -62,8 +62,8 @@ class YoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
62
  // [Plugin Comp] https://elementor.com/help/lightbox/
63
  'div[data-elementor-lightbox*="youtube.com"]'
64
  ],
65
- 'cookies' => [\DevOwl\RealCookieBanner\presets\free\YoutubePreset::IDENTIFIER],
66
- 'visual' => \true,
67
  'visualType' => 'hero',
68
  'visualContentType' => 'video-player'
69
  ]
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/youtube.png'),
28
  'attributes' => [
29
  'name' => $name,
30
+ 'rules' => [
31
  '*youtube.com*',
32
  '*youtu.be*',
33
  '*youtube-nocookie.com*',
62
  // [Plugin Comp] https://elementor.com/help/lightbox/
63
  'div[data-elementor-lightbox*="youtube.com"]'
64
  ],
65
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\free\YoutubePreset::IDENTIFIER],
66
+ 'isVisual' => \true,
67
  'visualType' => 'hero',
68
  'visualContentType' => 'video-player'
69
  ]
inc/presets/middleware/BlockerHostsOptionsMiddleware.php CHANGED
@@ -10,7 +10,7 @@ use WP_Post;
10
  // Avoid direct file request
11
  // @codeCoverageIgnoreEnd
12
  /**
13
- * Middleware that adds a `scanOptions` attribute to the blocker metadata from `hosts` options.
14
  *
15
  * If you are using this in conjunction with an `extends` middleware, make sure to add this afterwards!
16
  *
@@ -30,12 +30,12 @@ class BlockerHostsOptionsMiddleware {
30
  * @param array $result
31
  */
32
  public function middleware(&$preset, $unused0, $unused1, $unused2, &$result) {
33
- if (isset($preset['attributes'], $preset['attributes']['hosts'])) {
34
  $scanOptions = [];
35
- foreach ($preset['attributes']['hosts'] as $key => $host) {
36
  if (\is_array($host)) {
37
  $scanOptions[] = $host;
38
- $preset['attributes']['hosts'][$key] = $host[self::EXPRESSION];
39
  } elseif (\is_string($host)) {
40
  $scanOptions[] = [self::EXPRESSION => $host];
41
  }
@@ -43,8 +43,8 @@ class BlockerHostsOptionsMiddleware {
43
  if (\count($scanOptions) > 0) {
44
  $preset['scanOptions'] = $scanOptions;
45
  }
46
- // Unique hosts as they can be duplicated in hosts settings due to different hosts options
47
- $preset['attributes']['hosts'] = \array_unique($preset['attributes']['hosts']);
48
  }
49
  return $preset;
50
  }
10
  // Avoid direct file request
11
  // @codeCoverageIgnoreEnd
12
  /**
13
+ * Middleware that adds a `scanOptions` attribute to the blocker metadata from `rules` options.
14
  *
15
  * If you are using this in conjunction with an `extends` middleware, make sure to add this afterwards!
16
  *
30
  * @param array $result
31
  */
32
  public function middleware(&$preset, $unused0, $unused1, $unused2, &$result) {
33
+ if (isset($preset['attributes'], $preset['attributes']['rules'])) {
34
  $scanOptions = [];
35
+ foreach ($preset['attributes']['rules'] as $key => $host) {
36
  if (\is_array($host)) {
37
  $scanOptions[] = $host;
38
+ $preset['attributes']['rules'][$key] = $host[self::EXPRESSION];
39
  } elseif (\is_string($host)) {
40
  $scanOptions[] = [self::EXPRESSION => $host];
41
  }
43
  if (\count($scanOptions) > 0) {
44
  $preset['scanOptions'] = $scanOptions;
45
  }
46
+ // Unique rules as they can be duplicated in rules settings due to different rules options
47
+ $preset['attributes']['rules'] = \array_unique($preset['attributes']['rules']);
48
  }
49
  return $preset;
50
  }
inc/presets/middleware/CookieBlockerPresetIdsMiddleware.php CHANGED
@@ -33,7 +33,9 @@ class CookieBlockerPresetIdsMiddleware {
33
  $usedPresetIds[] = $existingBlocker->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID];
34
  }
35
  // If not existing, check if a content blocker with same ID exists
36
- $preset['blockerPresets'] = isset($preset['blockerPresets']) ? $preset['blockerPresets'] : [];
 
 
37
  if (!$foundExisting) {
38
  $checkBlockerPresets = \array_unique(
39
  \array_merge(isset($preset['blockerPresetIds']) ? $preset['blockerPresetIds'] : [], [$preset['id']])
@@ -61,10 +63,11 @@ class CookieBlockerPresetIdsMiddleware {
61
  'A suitable content blocker for this service can be created automatically.',
62
  RCB_TD
63
  );
64
- $blockerName = $blockerPreset['name'];
65
- $blockerDescription = isset($blockerPreset['description']) ? $blockerPreset['description'] : '';
66
- $preset['blockerPresets'][$presetId] =
67
- $blockerName . (empty($blockerDescription) ? '' : \sprintf(' (%s)', $blockerDescription));
 
68
  }
69
  }
70
  unset($preset['blockerPresetIds']);
33
  $usedPresetIds[] = $existingBlocker->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID];
34
  }
35
  // If not existing, check if a content blocker with same ID exists
36
+ $preset['contentBlockerTemplates'] = isset($preset['contentBlockerTemplates'])
37
+ ? $preset['contentBlockerTemplates']
38
+ : [];
39
  if (!$foundExisting) {
40
  $checkBlockerPresets = \array_unique(
41
  \array_merge(isset($preset['blockerPresetIds']) ? $preset['blockerPresetIds'] : [], [$preset['id']])
63
  'A suitable content blocker for this service can be created automatically.',
64
  RCB_TD
65
  );
66
+ $preset['contentBlockerTemplates'][] = [
67
+ 'identifier' => $blockerPreset['id'],
68
+ 'name' => $blockerPreset['name'],
69
+ 'subHeadline' => $blockerPreset['description'] ?? null
70
+ ];
71
  }
72
  }
73
  unset($preset['blockerPresetIds']);
inc/presets/middleware/CookiesDeactivateAutomaticContentBlockerCreationByNeedsMiddleware.php CHANGED
@@ -7,12 +7,12 @@ namespace DevOwl\RealCookieBanner\presets\middleware;
7
  // Avoid direct file request
8
  // @codeCoverageIgnoreEnd
9
  /**
10
- * Middleware that adds a `attributes.deactivateAutomaticContentBlockerCreationByNeeds` attribute and automatically
11
- * set `attributes.deactivateAutomaticContentBlockerCreation` determined by active plugins.
12
  */
13
  class CookiesDeactivateAutomaticContentBlockerCreationByNeedsMiddleware {
14
- const PROPERTY = 'deactivateAutomaticContentBlockerCreationByNeeds';
15
- const PROPERTY_TO_SET = 'deactivateAutomaticContentBlockerCreation';
16
  /**
17
  * See class description.
18
  *
7
  // Avoid direct file request
8
  // @codeCoverageIgnoreEnd
9
  /**
10
+ * Middleware that adds a `attributes.shouldUncheckContentBlockerCheckboxWhenOneOf` attribute and automatically
11
+ * set `attributes.shouldUncheckContentBlockerCheckbox` determined by active plugins.
12
  */
13
  class CookiesDeactivateAutomaticContentBlockerCreationByNeedsMiddleware {
14
+ const PROPERTY = 'shouldUncheckContentBlockerCheckboxWhenOneOf';
15
+ const PROPERTY_TO_SET = 'shouldUncheckContentBlockerCheckbox';
16
  /**
17
  * See class description.
18
  *
inc/presets/middleware/DisablePresetByNeedsMiddleware.php CHANGED
@@ -36,12 +36,13 @@ class DisablePresetByNeedsMiddleware {
36
  * @param string[] $needs
37
  * @param string $presetIdentifier
38
  * @param string $type Can be `cookie` or `blocker`
 
39
  */
40
- public static function check($needs, $presetIdentifier, $type) {
41
  foreach ($needs as $dep) {
42
  if (\DevOwl\RealCookieBanner\Utils::startsWith($dep, self::WP_PLUGIN_PREFIX)) {
43
- $plugin = \substr($dep, \strlen(self::WP_PLUGIN_PREFIX));
44
- if (\DevOwl\RealCookieBanner\Utils::isPluginActive($plugin)) {
45
  /**
46
  * Allows you to deactivate a false-positive plugin preset.
47
  *
@@ -57,13 +58,13 @@ class DisablePresetByNeedsMiddleware {
57
  * @return {boolean}
58
  * @since 2.6.0
59
  */
60
- if (apply_filters('RCB/Presets/Active', \true, $plugin, $presetIdentifier, $type)) {
61
  return \true;
62
  }
63
  }
64
  } elseif (\DevOwl\RealCookieBanner\Utils::startsWith($dep, self::WP_THEME_PREFIX)) {
65
- $theme = \substr($dep, \strlen(self::WP_THEME_PREFIX));
66
- if (\DevOwl\RealCookieBanner\Utils::isThemeActive($theme)) {
67
  return \true;
68
  }
69
  }
36
  * @param string[] $needs
37
  * @param string $presetIdentifier
38
  * @param string $type Can be `cookie` or `blocker`
39
+ * @param string $slug Automatically gets filled with the found slug
40
  */
41
+ public static function check($needs, $presetIdentifier, $type, &$slug = null) {
42
  foreach ($needs as $dep) {
43
  if (\DevOwl\RealCookieBanner\Utils::startsWith($dep, self::WP_PLUGIN_PREFIX)) {
44
+ $slug = \substr($dep, \strlen(self::WP_PLUGIN_PREFIX));
45
+ if (\DevOwl\RealCookieBanner\Utils::isPluginActive($slug)) {
46
  /**
47
  * Allows you to deactivate a false-positive plugin preset.
48
  *
58
  * @return {boolean}
59
  * @since 2.6.0
60
  */
61
+ if (apply_filters('RCB/Presets/Active', \true, $slug, $presetIdentifier, $type)) {
62
  return \true;
63
  }
64
  }
65
  } elseif (\DevOwl\RealCookieBanner\Utils::startsWith($dep, self::WP_THEME_PREFIX)) {
66
+ $slug = \substr($dep, \strlen(self::WP_THEME_PREFIX));
67
+ if (\DevOwl\RealCookieBanner\Utils::isThemeActive($slug)) {
68
  return \true;
69
  }
70
  }
inc/presets/middleware/DisableTechnicalHandlingThroughPluginMiddleware.php CHANGED
@@ -9,7 +9,7 @@ use DevOwl\RealCookieBanner\Utils;
9
  // Avoid direct file request
10
  // @codeCoverageIgnoreEnd
11
  /**
12
- * Middleware to enable `attributes.disableTechnicalHandlingThroughPlugin` in cookie and content blocker presets.
13
  */
14
  class DisableTechnicalHandlingThroughPluginMiddleware {
15
  /**
@@ -19,31 +19,35 @@ class DisableTechnicalHandlingThroughPluginMiddleware {
19
  * @param array $preset
20
  */
21
  public function middleware(&$preset) {
22
- if (isset($preset['attributes']) && isset($preset['attributes']['disableTechnicalHandlingThroughPlugin'])) {
23
- $plugins = $preset['attributes']['disableTechnicalHandlingThroughPlugin'];
24
- foreach ($plugins as $plugin) {
25
- if (\DevOwl\RealCookieBanner\Utils::isPluginActive($plugin)) {
26
- // Deactivate all technical handling
27
- foreach (\DevOwl\RealCookieBanner\settings\Cookie::TECHNICAL_HANDLING_META_COLLECTION as $key) {
28
- if (isset($preset['attributes'][$key])) {
29
- unset($preset['attributes'][$key]);
30
- }
 
 
 
 
 
31
  }
32
- // Show a notice to the user
33
- $oldNotice = $preset['attributes']['technicalHandlingNotice'] ?? '';
34
- $preset['attributes']['technicalHandlingNotice'] =
35
- \sprintf(
36
- // translators:
37
- __(
38
- 'You don\'t have to define a technical handling here, because this is done by the plugin <strong>%s</strong>.',
39
- RCB_TD
40
- ),
41
- \DevOwl\RealCookieBanner\Utils::getActivePluginsMap()[$plugin]
42
- ) . (empty($oldNotice) ? '' : \sprintf('<br /><br />%s', $oldNotice));
43
- break;
44
  }
 
 
 
 
 
 
 
 
 
 
 
45
  }
46
- unset($preset['attributes']['disableTechnicalHandlingThroughPlugin']);
47
  }
48
  return $preset;
49
  }
9
  // Avoid direct file request
10
  // @codeCoverageIgnoreEnd
11
  /**
12
+ * Middleware to enable `attributes.shouldRemoveTechnicalHandlingWhenOneOf` in cookie and content blocker presets.
13
  */
14
  class DisableTechnicalHandlingThroughPluginMiddleware {
15
  /**
19
  * @param array $preset
20
  */
21
  public function middleware(&$preset) {
22
+ if (isset($preset['attributes']) && isset($preset['attributes']['shouldRemoveTechnicalHandlingWhenOneOf'])) {
23
+ $plugins = $preset['attributes']['shouldRemoveTechnicalHandlingWhenOneOf'];
24
+ if (
25
+ \DevOwl\RealCookieBanner\presets\middleware\DisablePresetByNeedsMiddleware::check(
26
+ $plugins,
27
+ $preset['id'],
28
+ 'cookie',
29
+ $slug
30
+ )
31
+ ) {
32
+ // Deactivate all technical handling
33
+ foreach (\DevOwl\RealCookieBanner\settings\Cookie::TECHNICAL_HANDLING_META_COLLECTION as $key) {
34
+ if (isset($preset['attributes'][$key])) {
35
+ unset($preset['attributes'][$key]);
36
  }
 
 
 
 
 
 
 
 
 
 
 
 
37
  }
38
+ // Show a notice to the user
39
+ $oldNotice = $preset['attributes']['technicalHandlingNotice'] ?? '';
40
+ $preset['attributes']['technicalHandlingNotice'] =
41
+ \sprintf(
42
+ // translators:
43
+ __(
44
+ 'You don\'t have to define a technical handling here, because this is done by the plugin <strong>%s</strong>.',
45
+ RCB_TD
46
+ ),
47
+ \DevOwl\RealCookieBanner\Utils::getActivePluginsMap()[$slug]
48
+ ) . (empty($oldNotice) ? '' : \sprintf('<br /><br />%s', $oldNotice));
49
  }
50
+ unset($preset['attributes']['shouldRemoveTechnicalHandlingWhenOneOf']);
51
  }
52
  return $preset;
53
  }
inc/presets/pro/blocker/ActiveCampaignFormPreset.php CHANGED
@@ -22,7 +22,7 @@ class ActiveCampaignFormPreset extends \DevOwl\RealCookieBanner\presets\Abstract
22
  'version' => self::VERSION,
23
  'name' => __('ActiveCampaign Form', RCB_TD),
24
  'description' => __('with Google reCAPTCHA', RCB_TD),
25
- 'attributes' => ['hosts' => ['*activehosted.com/f/embed.php*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/activecampaign.png')
27
  ];
28
  }
22
  'version' => self::VERSION,
23
  'name' => __('ActiveCampaign Form', RCB_TD),
24
  'description' => __('with Google reCAPTCHA', RCB_TD),
25
+ 'attributes' => ['rules' => ['*activehosted.com/f/embed.php*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/activecampaign.png')
27
  ];
28
  }
inc/presets/pro/blocker/ActiveCampaignSiteTrackingPreset.php CHANGED
@@ -23,7 +23,7 @@ class ActiveCampaignSiteTrackingPreset extends \DevOwl\RealCookieBanner\presets\
23
  'version' => self::VERSION,
24
  'description' => 'Site Tracking',
25
  'name' => $name,
26
- 'attributes' => ['hosts' => ['*/diffuser.js*']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/activecampaign.png')
28
  ];
29
  }
23
  'version' => self::VERSION,
24
  'description' => 'Site Tracking',
25
  'name' => $name,
26
+ 'attributes' => ['rules' => ['*/diffuser.js*']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/activecampaign.png')
28
  ];
29
  }
inc/presets/pro/blocker/AdInserterPreset.php CHANGED
@@ -23,7 +23,7 @@ class AdInserterPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => ['div[class*="ad-inserter"]', 'div[class*="code-block"]', '*plugins/ad-inserter*']
27
  ],
28
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/a-inserter.png'),
29
  'needs' => \DevOwl\RealCookieBanner\presets\pro\AdInserterPreset::needs()
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => ['div[class*="ad-inserter"]', 'div[class*="code-block"]', '*plugins/ad-inserter*']
27
  ],
28
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/a-inserter.png'),
29
  'needs' => \DevOwl\RealCookieBanner\presets\pro\AdInserterPreset::needs()
inc/presets/pro/blocker/AddThisPreset.php CHANGED
@@ -22,7 +22,7 @@ class AddThisPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*addthis.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/addthis.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*addthis.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/addthis.png')
27
  ];
28
  }
inc/presets/pro/blocker/AddToAnyPreset.php CHANGED
@@ -24,7 +24,7 @@ class AddToAnyPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
24
  'description' => 'Share Buttons',
25
  'name' => $name,
26
  'attributes' => [
27
- 'hosts' => [
28
  '*static.addtoany.com*',
29
  'div[class*="addtoany_share_save_container"]',
30
  'div[class*="addtoany_list"]'
24
  'description' => 'Share Buttons',
25
  'name' => $name,
26
  'attributes' => [
27
+ 'rules' => [
28
  '*static.addtoany.com*',
29
  'div[class*="addtoany_share_save_container"]',
30
  'div[class*="addtoany_list"]'
inc/presets/pro/blocker/AdobeTypekitPreset.php CHANGED
@@ -24,10 +24,12 @@ class AdobeTypekitPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
24
  'version' => self::VERSION,
25
  'name' => $name,
26
  'attributes' => [
27
- 'hosts' => [
28
  '*use.typekit.net*',
29
  '*p.typekit.net*',
30
- \DevOwl\RealCookieBanner\presets\free\blocker\GoogleFontsPreset::WEB_FONT_LOADER_URL
 
 
31
  ]
32
  ],
33
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/adobe-fonts.png')
24
  'version' => self::VERSION,
25
  'name' => $name,
26
  'attributes' => [
27
+ 'rules' => [
28
  '*use.typekit.net*',
29
  '*p.typekit.net*',
30
+ \DevOwl\RealCookieBanner\presets\free\blocker\GoogleFontsPreset::WEB_FONT_LOADER_URL,
31
+ '*WebFont.load*typekit*',
32
+ 'WebFontConfig*typekit*'
33
  ]
34
  ],
35
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/adobe-fonts.png')
inc/presets/pro/blocker/AmazonAssociatesWidgetPreset.php CHANGED
@@ -24,8 +24,8 @@ class AmazonAssociatesWidgetPreset extends \DevOwl\RealCookieBanner\presets\Abst
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*amzn_assoc_ad_type*', '*amazon-adsystem.com/widgets*'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\AmazonAssociatesWidgetPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/amazon-associates.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*amzn_assoc_ad_type*', '*amazon-adsystem.com/widgets*'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\AmazonAssociatesWidgetPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/amazon-associates.png')
31
  ];
inc/presets/pro/blocker/AnchorFmPreset.php CHANGED
@@ -22,7 +22,7 @@ class AnchorFmPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*anchor.fm/*/embed/*', '*anchor.fm/*/embed']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/anchor-fm.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*anchor.fm/*/embed/*', '*anchor.fm/*/embed']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/anchor-fm.png')
27
  ];
28
  }
inc/presets/pro/blocker/AppleMusicPreset.php CHANGED
@@ -22,7 +22,7 @@ class AppleMusicPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*embed.music.apple.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/apple-music.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*embed.music.apple.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/apple-music.png')
27
  ];
28
  }
inc/presets/pro/blocker/AwinLinkImageAdsPreset.php CHANGED
@@ -22,7 +22,7 @@ class AwinLinkImageAdsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBl
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*awin1.com*', '*dwin2.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/awin.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*awin1.com*', '*dwin2.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/awin.png')
27
  ];
28
  }
inc/presets/pro/blocker/AwinPublisherMasterTagPreset.php CHANGED
@@ -25,8 +25,8 @@ class AwinPublisherMasterTagPreset extends \DevOwl\RealCookieBanner\presets\Abst
25
  'description' => 'Publisher MasterTag',
26
  'hidden' => \true,
27
  'attributes' => [
28
- 'hosts' => ['*dwin2.com/pub.*.min.js*'],
29
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\AwinPublisherMasterTagPreset::IDENTIFIER]
30
  ],
31
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/awin.png')
32
  ];
25
  'description' => 'Publisher MasterTag',
26
  'hidden' => \true,
27
  'attributes' => [
28
+ 'rules' => ['*dwin2.com/pub.*.min.js*'],
29
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\AwinPublisherMasterTagPreset::IDENTIFIER]
30
  ],
31
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/awin.png')
32
  ];
inc/presets/pro/blocker/BingAdsPreset.php CHANGED
@@ -24,8 +24,8 @@ class BingAdsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*bat.bing.com/bat.js*'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\BingAdsPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/microsoft.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*bat.bing.com/bat.js*'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\BingAdsPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/microsoft.png')
31
  ];
inc/presets/pro/blocker/BingMapsPreset.php CHANGED
@@ -23,7 +23,7 @@ class BingMapsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*bing.com/maps*',
28
  // [Plugin Comp] https://themify.me/addons/maps-pro
29
  'div[data-map-provider="bing"]'
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*bing.com/maps*',
28
  // [Plugin Comp] https://themify.me/addons/maps-pro
29
  'div[data-map-provider="bing"]'
inc/presets/pro/blocker/BloomPreset.php CHANGED
@@ -23,7 +23,7 @@ class BloomPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*wp-content/plugins/bloom*',
28
  '*bloomSettings*',
29
  'div[class*="et_bloom_popup"]',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*wp-content/plugins/bloom*',
28
  '*bloomSettings*',
29
  'div[class*="et_bloom_popup"]',
inc/presets/pro/blocker/CalderaFormsPreset.php CHANGED
@@ -26,7 +26,7 @@ class CalderaFormsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
26
  'name' => __('Caldera Forms', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
- 'hosts' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
26
  'name' => __('Caldera Forms', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
+ 'rules' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
inc/presets/pro/blocker/CalendlyPreset.php CHANGED
@@ -23,7 +23,7 @@ class CalendlyPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  'div[class="calendly-inline-widget"]',
28
  'a[onclick*="Calendly.initPopupWidget"]',
29
  'Calendly.initBadgeWidget',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  'div[class="calendly-inline-widget"]',
28
  'a[onclick*="Calendly.initPopupWidget"]',
29
  'Calendly.initBadgeWidget',
inc/presets/pro/blocker/CleverReachRecaptchaPreset.php CHANGED
@@ -24,7 +24,7 @@ class CleverReachRecaptchaPreset extends \DevOwl\RealCookieBanner\presets\Abstra
24
  'name' => __('CleverReach', RCB_TD),
25
  'description' => __('with Google reCAPTCHA', RCB_TD),
26
  'attributes' => [
27
- 'hosts' => [
28
  [
29
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
30
  '*google.com/recaptcha*',
24
  'name' => __('CleverReach', RCB_TD),
25
  'description' => __('with Google reCAPTCHA', RCB_TD),
26
  'attributes' => [
27
+ 'rules' => [
28
  [
29
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
30
  '*google.com/recaptcha*',
inc/presets/pro/blocker/ContactForm7RecaptchaPreset.php CHANGED
@@ -26,7 +26,7 @@ class ContactForm7RecaptchaPreset extends \DevOwl\RealCookieBanner\presets\Abstr
26
  'name' => __('Contact Form 7', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
- 'hosts' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
26
  'name' => __('Contact Form 7', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
+ 'rules' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
inc/presets/pro/blocker/ConvertKitPreset.php CHANGED
@@ -23,7 +23,7 @@ class ConvertKitPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*/wp-content/plugins/convertkit*',
28
  '*ck.page*',
29
  'script[id="convertkit-js-js-extra"]',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*/wp-content/plugins/convertkit*',
28
  '*ck.page*',
29
  'script[id="convertkit-js-js-extra"]',
inc/presets/pro/blocker/CustomFacebookFeedPreset.php CHANGED
@@ -24,7 +24,7 @@ class CustomFacebookFeedPreset extends \DevOwl\RealCookieBanner\presets\Abstract
24
  'name' => $name,
25
  'description' => 'Smash Balloon Social Post Feed',
26
  'attributes' => [
27
- 'hosts' => [
28
  'div[class*="cff-wrapper"]',
29
  '*fbcdn.net*',
30
  '*fbsbx.com*',
24
  'name' => $name,
25
  'description' => 'Smash Balloon Social Post Feed',
26
  'attributes' => [
27
+ 'rules' => [
28
  'div[class*="cff-wrapper"]',
29
  '*fbcdn.net*',
30
  '*fbsbx.com*',
inc/presets/pro/blocker/CustomTwitterFeedPreset.php CHANGED
@@ -24,7 +24,7 @@ class CustomTwitterFeedPreset extends \DevOwl\RealCookieBanner\presets\AbstractB
24
  'name' => $name,
25
  'description' => 'Tweets Widget by Smash Balloon',
26
  'attributes' => [
27
- 'hosts' => [
28
  'div[class*="ctf "]',
29
  '*twimg.com*',
30
  '*wp-content/plugins/custom-twitter-feeds/js/*',
24
  'name' => $name,
25
  'description' => 'Tweets Widget by Smash Balloon',
26
  'attributes' => [
27
+ 'rules' => [
28
  'div[class*="ctf "]',
29
  '*twimg.com*',
30
  '*wp-content/plugins/custom-twitter-feeds/js/*',
inc/presets/pro/blocker/DailyMotionPreset.php CHANGED
@@ -22,7 +22,7 @@ class DailyMotionPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*dailymotion.com/embed*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/dailymotion.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*dailymotion.com/embed*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/dailymotion.png')
27
  ];
28
  }
inc/presets/pro/blocker/DiscordWidgetPreset.php CHANGED
@@ -22,7 +22,7 @@ class DiscordWidgetPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*discord.com/widget*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/discord.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*discord.com/widget*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/discord.png')
27
  ];
28
  }
inc/presets/pro/blocker/DiviContactFormPreset.php CHANGED
@@ -26,7 +26,7 @@ class DiviContactFormPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlo
26
  'name' => __('Divi Contact Form', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
- 'hosts' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
26
  'name' => __('Divi Contact Form', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
+ 'rules' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
inc/presets/pro/blocker/ElementorFormsPreset.php CHANGED
@@ -26,7 +26,7 @@ class ElementorFormsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBloc
26
  'name' => __('Elementor Forms', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
- 'hosts' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
26
  'name' => __('Elementor Forms', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
+ 'rules' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
inc/presets/pro/blocker/EtrackerPreset.php CHANGED
@@ -23,7 +23,7 @@ class EtrackerPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'description' => __('Tracking without consent', RCB_TD),
26
- 'attributes' => ['hosts' => ['script[src*="code.etracker.com"][data-block-cookies="true"]']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/et-racker.png')
28
  ];
29
  }
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'description' => __('Tracking without consent', RCB_TD),
26
+ 'attributes' => ['rules' => ['script[src*="code.etracker.com"][data-block-cookies="true"]']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/et-racker.png')
28
  ];
29
  }
inc/presets/pro/blocker/EtrackerWithConsentPreset.php CHANGED
@@ -24,7 +24,7 @@ class EtrackerWithConsentPreset extends \DevOwl\RealCookieBanner\presets\Abstrac
24
  'name' => $name,
25
  'description' => __('Tracking with consent', RCB_TD),
26
  'attributes' => [
27
- 'hosts' => ['script[src*="code.etracker.com"][data-block-cookies="false"]', '_etracker.enableCookies(']
28
  ],
29
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/et-racker.png')
30
  ];
24
  'name' => $name,
25
  'description' => __('Tracking with consent', RCB_TD),
26
  'attributes' => [
27
+ 'rules' => ['script[src*="code.etracker.com"][data-block-cookies="false"]', '_etracker.enableCookies(']
28
  ],
29
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/et-racker.png')
30
  ];
inc/presets/pro/blocker/FacebookGraphPreset.php CHANGED
@@ -22,7 +22,7 @@ class FacebookGraphPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*graph.facebook.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/facebook.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*graph.facebook.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/facebook.png')
27
  ];
28
  }
inc/presets/pro/blocker/FacebookLikePreset.php CHANGED
@@ -24,7 +24,7 @@ class FacebookLikePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
24
  'version' => self::VERSION,
25
  'name' => $name,
26
  'attributes' => [
27
- 'hosts' => \array_merge(
28
  [
29
  [
30
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
24
  'version' => self::VERSION,
25
  'name' => $name,
26
  'attributes' => [
27
+ 'rules' => \array_merge(
28
  [
29
  [
30
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
inc/presets/pro/blocker/FacebookPagePluginPreset.php CHANGED
@@ -24,7 +24,7 @@ class FacebookPagePluginPreset extends \DevOwl\RealCookieBanner\presets\Abstract
24
  'version' => self::VERSION,
25
  'name' => $name,
26
  'attributes' => [
27
- 'hosts' => \array_merge(
28
  [
29
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
30
  '*facebook.com/plugins/page.php*',
24
  'version' => self::VERSION,
25
  'name' => $name,
26
  'attributes' => [
27
+ 'rules' => \array_merge(
28
  [
29
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
30
  '*facebook.com/plugins/page.php*',
inc/presets/pro/blocker/FacebookPixelPreset.php CHANGED
@@ -26,7 +26,7 @@ class FacebookPixelPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
26
  'version' => self::VERSION,
27
  'name' => $name,
28
  'attributes' => [
29
- 'hosts' => \array_merge(
30
  [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
26
  'version' => self::VERSION,
27
  'name' => $name,
28
  'attributes' => [
29
+ 'rules' => \array_merge(
30
  [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
inc/presets/pro/blocker/FacebookPostPreset.php CHANGED
@@ -25,7 +25,7 @@ class FacebookPostPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
25
  'name' => $name,
26
  'description' => __('includes videos', RCB_TD),
27
  'attributes' => [
28
- 'hosts' => \array_merge(
29
  // [Plugin Comp] Jetpack Facebook Embed
30
  ['*/wp-content/plugins/jetpack/_inc/build/facebook-embed*'],
31
  [
25
  'name' => $name,
26
  'description' => __('includes videos', RCB_TD),
27
  'attributes' => [
28
+ 'rules' => \array_merge(
29
  // [Plugin Comp] Jetpack Facebook Embed
30
  ['*/wp-content/plugins/jetpack/_inc/build/facebook-embed*'],
31
  [
inc/presets/pro/blocker/FacebookSharePreset.php CHANGED
@@ -24,7 +24,7 @@ class FacebookSharePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
24
  'version' => self::VERSION,
25
  'name' => $name,
26
  'attributes' => [
27
- 'hosts' => \array_merge(
28
  [
29
  [
30
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
24
  'version' => self::VERSION,
25
  'name' => $name,
26
  'attributes' => [
27
+ 'rules' => \array_merge(
28
  [
29
  [
30
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
inc/presets/pro/blocker/FeedsForYoutubePreset.php CHANGED
@@ -26,8 +26,8 @@ class FeedsForYoutubePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlo
26
  'description' => 'YouTube Video, Channel, Gallery Plugin by Smash Balloon',
27
  'attributes' => [
28
  'extends' => \DevOwl\RealCookieBanner\presets\free\blocker\YoutubePreset::IDENTIFIER,
29
- 'extendsHostsStart' => ['div[class*="sb_youtube "]', '*yt3.ggpht.com*'],
30
- 'extendsHostsEnd' => [
31
  '*wp-content/plugins/feeds-for-youtube/js/*',
32
  '*wp-content/plugins/youtube-feed-pro/js/*'
33
  ]
26
  'description' => 'YouTube Video, Channel, Gallery Plugin by Smash Balloon',
27
  'attributes' => [
28
  'extends' => \DevOwl\RealCookieBanner\presets\free\blocker\YoutubePreset::IDENTIFIER,
29
+ 'extendsRulesStart' => ['div[class*="sb_youtube "]', '*yt3.ggpht.com*'],
30
+ 'extendsRulesEnd' => [
31
  '*wp-content/plugins/feeds-for-youtube/js/*',
32
  '*wp-content/plugins/youtube-feed-pro/js/*'
33
  ]
inc/presets/pro/blocker/FiveStarRestaurantReservationsPreset.php CHANGED
@@ -27,7 +27,7 @@ class FiveStarRestaurantReservationsPreset extends \DevOwl\RealCookieBanner\pres
27
  'name' => __('Five Star Restaurant Reservations', RCB_TD),
28
  'description' => __('with Google reCAPTCHA', RCB_TD),
29
  'attributes' => [
30
- 'hosts' => [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
33
  '*google.com/recaptcha*',
27
  'name' => __('Five Star Restaurant Reservations', RCB_TD),
28
  'description' => __('with Google reCAPTCHA', RCB_TD),
29
  'attributes' => [
30
+ 'rules' => [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
33
  '*google.com/recaptcha*',
inc/presets/pro/blocker/FlickrPreset.php CHANGED
@@ -23,7 +23,7 @@ class FlickrPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPrese
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*live.staticflickr.com*',
28
  '*embedr.flickr.com*',
29
  '*widgets.flickr.com*',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*live.staticflickr.com*',
28
  '*embedr.flickr.com*',
29
  '*widgets.flickr.com*',
inc/presets/pro/blocker/FormMakerRecaptchaPreset.php CHANGED
@@ -26,7 +26,7 @@ class FormMakerRecaptchaPreset extends \DevOwl\RealCookieBanner\presets\Abstract
26
  'name' => __('Form Maker', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
- 'hosts' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
26
  'name' => __('Form Maker', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
+ 'rules' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
inc/presets/pro/blocker/FormidablePreset.php CHANGED
@@ -27,7 +27,7 @@ class FormidablePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
27
  'name' => __('Formidable', RCB_TD),
28
  'description' => __('with Google reCAPTCHA', RCB_TD),
29
  'attributes' => [
30
- 'hosts' => [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
33
  '*google.com/recaptcha*',
27
  'name' => __('Formidable', RCB_TD),
28
  'description' => __('with Google reCAPTCHA', RCB_TD),
29
  'attributes' => [
30
+ 'rules' => [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
33
  '*google.com/recaptcha*',
inc/presets/pro/blocker/FoundEePreset.php CHANGED
@@ -24,8 +24,8 @@ class FoundEePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*found.ee/dmp/pixel.js*'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\FoundEePreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/found.ee.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*found.ee/dmp/pixel.js*'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\FoundEePreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/found.ee.png')
31
  ];
inc/presets/pro/blocker/FreshchatPreset.php CHANGED
@@ -24,8 +24,8 @@ class FreshchatPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPr
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*initFreshChat*'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\FreshchatPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/freshworks.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*initFreshChat*'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\FreshchatPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/freshworks.png')
31
  ];
inc/presets/pro/blocker/GetYourGuidePreset.php CHANGED
@@ -23,7 +23,7 @@ class GetYourGuidePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*widget.getyourguide.com*',
28
  '*/wp-content/plugins/getyourguide-widget*',
29
  'div[data-gyg-href*="widget.getyourguide.com"]',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*widget.getyourguide.com*',
28
  '*/wp-content/plugins/getyourguide-widget*',
29
  'div[data-gyg-href*="widget.getyourguide.com"]',
inc/presets/pro/blocker/GiphyPreset.php CHANGED
@@ -22,7 +22,7 @@ class GiphyPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*giphy.com/embed*', 'a[href*="giphy.com/gifs"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/giphy.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*giphy.com/embed*', 'a[href*="giphy.com/gifs"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/giphy.png')
27
  ];
28
  }
inc/presets/pro/blocker/GoogleAdsPreset.php CHANGED
@@ -24,8 +24,8 @@ class GoogleAdsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPr
24
  'description' => __('Conversion Tracking and Remarketing', RCB_TD),
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*gtag/js?id=AW-*', 'gtag("config", "AW-*");', 'gtag(\'config\', \'AW-*\');'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\GoogleAds::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-a-ds.png')
31
  ];
24
  'description' => __('Conversion Tracking and Remarketing', RCB_TD),
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*gtag/js?id=AW-*', 'gtag("config", "AW-*");', 'gtag(\'config\', \'AW-*\');'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\GoogleAds::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-a-ds.png')
31
  ];
inc/presets/pro/blocker/GoogleAdsensePreset.php CHANGED
@@ -24,13 +24,13 @@ class GoogleAdsensePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => [
28
  '*pagead/js/adsbygoogle.js*',
29
  'ins[class="adsbygoogle"]',
30
  'adsbygoogle',
31
  '*pagead2.googlesyndication.com*'
32
  ],
33
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\GoogleAdSensePreset::IDENTIFIER]
34
  ],
35
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-a-dsense.png')
36
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => [
28
  '*pagead/js/adsbygoogle.js*',
29
  'ins[class="adsbygoogle"]',
30
  'adsbygoogle',
31
  '*pagead2.googlesyndication.com*'
32
  ],
33
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\GoogleAdSensePreset::IDENTIFIER]
34
  ],
35
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-a-dsense.png')
36
  ];
inc/presets/pro/blocker/GoogleAnalytics4Preset.php CHANGED
@@ -55,7 +55,7 @@ class GoogleAnalytics4Preset extends \DevOwl\RealCookieBanner\presets\AbstractBl
55
  'name' => $name,
56
  'description' => 'Analytics 4',
57
  'attributes' => [
58
- 'hosts' => \array_merge(
59
  self::HOSTS_GROUP_SCRIPT_PROPERTY,
60
  [
61
  [
55
  'name' => $name,
56
  'description' => 'Analytics 4',
57
  'attributes' => [
58
+ 'rules' => \array_merge(
59
  self::HOSTS_GROUP_SCRIPT_PROPERTY,
60
  [
61
  [
inc/presets/pro/blocker/GoogleAnalyticsPreset.php CHANGED
@@ -78,7 +78,7 @@ class GoogleAnalyticsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlo
78
  'name' => $name,
79
  'description' => 'Universal Analytics',
80
  'attributes' => [
81
- 'hosts' => \array_merge(
82
  self::HOSTS_GROUP_SCRIPT_PROPERTY,
83
  [
84
  [
78
  'name' => $name,
79
  'description' => 'Universal Analytics',
80
  'attributes' => [
81
+ 'rules' => \array_merge(
82
  self::HOSTS_GROUP_SCRIPT_PROPERTY,
83
  [
84
  [
inc/presets/pro/blocker/GoogleMapsPreset.php CHANGED
@@ -23,7 +23,7 @@ class GoogleMapsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*maps.google.com*',
28
  '*google.*/maps*',
29
  '*maps.googleapis.com*',
@@ -120,6 +120,7 @@ class GoogleMapsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
120
  // [Plugin Comp] https://crocoblock.com/knowledge-base/articles/jetengine-maps-listing-overview/
121
  'div[class*="elementor-widget-jet-engine-maps-listing"]',
122
  '*/wp-content/plugins/jet-engine/assets/js/frontend-maps*',
 
123
  // [Plugin Comp] https://facetwp.com/help-center/facets/facet-types/map/
124
  '*/wp-content/plugins/facetwp-map-facet/assets/js/*',
125
  'div[class*="facetwp-type-map"]',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*maps.google.com*',
28
  '*google.*/maps*',
29
  '*maps.googleapis.com*',
120
  // [Plugin Comp] https://crocoblock.com/knowledge-base/articles/jetengine-maps-listing-overview/
121
  'div[class*="elementor-widget-jet-engine-maps-listing"]',
122
  '*/wp-content/plugins/jet-engine/assets/js/frontend-maps*',
123
+ '*wp-content/plugins/jet-engine/includes/modules/maps-listings/*',
124
  // [Plugin Comp] https://facetwp.com/help-center/facets/facet-types/map/
125
  '*/wp-content/plugins/facetwp-map-facet/assets/js/*',
126
  'div[class*="facetwp-type-map"]',
inc/presets/pro/blocker/GoogleRecaptchaPreset.php CHANGED
@@ -22,7 +22,7 @@ class GoogleRecaptchaPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlo
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*google.com/recaptcha*', '*gstatic.com/recaptcha*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/recaptcha.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*google.com/recaptcha*', '*gstatic.com/recaptcha*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/recaptcha.png')
27
  ];
28
  }
inc/presets/pro/blocker/GoogleTranslatePreset.php CHANGED
@@ -23,7 +23,7 @@ class GoogleTranslatePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlo
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*translate.google.com*',
28
  '*translate.googleapis.com*',
29
  // [Plugin Comp] https://wordpress.org/plugins/gtranslate/
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*translate.google.com*',
28
  '*translate.googleapis.com*',
29
  // [Plugin Comp] https://wordpress.org/plugins/gtranslate/
inc/presets/pro/blocker/GoogleTrendsPreset.php CHANGED
@@ -23,7 +23,7 @@ class GoogleTrendsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*gstatic.com/trends_nrtr*',
28
  '*trends.embed.render*',
29
  '*google.com/trends*',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*gstatic.com/trends_nrtr*',
28
  '*trends.embed.render*',
29
  '*google.com/trends*',
inc/presets/pro/blocker/GoogleUserContentPreset.php CHANGED
@@ -23,7 +23,7 @@ class GoogleUserContentPreset extends \DevOwl\RealCookieBanner\presets\AbstractB
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*googleusercontent.com*',
28
  // [Plugin Comp] https://wordpress.org/plugins/widget-google-reviews/
29
  'div[class="rplg"]',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*googleusercontent.com*',
28
  // [Plugin Comp] https://wordpress.org/plugins/widget-google-reviews/
29
  'div[class="rplg"]',
inc/presets/pro/blocker/GtmPreset.php CHANGED
@@ -24,8 +24,8 @@ class GtmPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset {
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*googletagmanager.com/gtm.js*', '*googletagmanager.com/ns.html*'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\GtmPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-tag-manager.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*googletagmanager.com/gtm.js*', '*googletagmanager.com/ns.html*'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\GtmPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/google-tag-manager.png')
31
  ];
inc/presets/pro/blocker/HCaptchaPreset.php CHANGED
@@ -24,12 +24,12 @@ class HCaptchaPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => [
28
  '*hcaptcha.com*',
29
  'link[id="hcaptcha-style-css"]',
30
  '*wp-content/plugins/hcaptcha-for-forms-and-more*'
31
  ],
32
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\HCaptchaPreset::IDENTIFIER]
33
  ],
34
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/hcaptcha.png')
35
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => [
28
  '*hcaptcha.com*',
29
  'link[id="hcaptcha-style-css"]',
30
  '*wp-content/plugins/hcaptcha-for-forms-and-more*'
31
  ],
32
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\HCaptchaPreset::IDENTIFIER]
33
  ],
34
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/hcaptcha.png')
35
  ];
inc/presets/pro/blocker/HappyFormsPreset.php CHANGED
@@ -27,7 +27,7 @@ class HappyFormsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
27
  'name' => __('HappyForms', RCB_TD),
28
  'description' => __('with Google reCAPTCHA', RCB_TD),
29
  'attributes' => [
30
- 'hosts' => [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
33
  '*google.com/recaptcha*',
27
  'name' => __('HappyForms', RCB_TD),
28
  'description' => __('with Google reCAPTCHA', RCB_TD),
29
  'attributes' => [
30
+ 'rules' => [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
33
  '*google.com/recaptcha*',
inc/presets/pro/blocker/HelpCrunchChatPreset.php CHANGED
@@ -24,8 +24,8 @@ class HelpCrunchChatPreset extends \DevOwl\RealCookieBanner\presets\AbstractBloc
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*widget.helpcrunch.com*', 'HelpCrunch'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\HelpCrunchChatPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/helpcrunch.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*widget.helpcrunch.com*', 'HelpCrunch'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\HelpCrunchChatPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/helpcrunch.png')
31
  ];
inc/presets/pro/blocker/HelpScoutChatPreset.php CHANGED
@@ -24,8 +24,8 @@ class HelpScoutChatPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*beacon-*.helpscout.net*', 'window.Beacon'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\HelpScoutChatPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/helpscout.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*beacon-*.helpscout.net*', 'window.Beacon'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\HelpScoutChatPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/helpscout.png')
31
  ];
inc/presets/pro/blocker/HotjarPreset.php CHANGED
@@ -22,7 +22,7 @@ class HotjarPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPrese
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*static.hotjar.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/hotjar.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*static.hotjar.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/hotjar.png')
27
  ];
28
  }
inc/presets/pro/blocker/ImgurPreset.php CHANGED
@@ -22,7 +22,7 @@ class ImgurPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*s.imgur.com*', 'blockquote[class="imgur-embed-pub"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/imgur.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*s.imgur.com*', 'blockquote[class="imgur-embed-pub"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/imgur.png')
27
  ];
28
  }
inc/presets/pro/blocker/InstagramPostPreset.php CHANGED
@@ -23,7 +23,7 @@ class InstagramPostPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*instagram.com*',
28
  '*cdninstagram.com*',
29
  'blockquote[class="instagram-media"]',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*instagram.com*',
28
  '*cdninstagram.com*',
29
  'blockquote[class="instagram-media"]',
inc/presets/pro/blocker/IntercomChatPreset.php CHANGED
@@ -22,7 +22,7 @@ class IntercomChatPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['intercomSettings', '*widget.intercom.io*', 'Intercom(\'shutdown\');']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/intercom.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['intercomSettings', '*widget.intercom.io*', 'Intercom(\'shutdown\');']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/intercom.png')
27
  ];
28
  }
inc/presets/pro/blocker/IssuuPreset.php CHANGED
@@ -22,7 +22,7 @@ class IssuuPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*e.issuu.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/issuu.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*e.issuu.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/issuu.png')
27
  ];
28
  }
inc/presets/pro/blocker/KlaviyoPreset.php CHANGED
@@ -22,7 +22,7 @@ class KlaviyoPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => 'Klaviyo',
25
- 'attributes' => ['hosts' => ['*static.klaviyo.com*', '*wp-content/plugins/klaviyo/*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/klaviyo.png'),
27
  'needs' => \DevOwl\RealCookieBanner\presets\pro\KlaviyoPreset::needs()
28
  ];
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => 'Klaviyo',
25
+ 'attributes' => ['rules' => ['*static.klaviyo.com*', '*wp-content/plugins/klaviyo/*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/klaviyo.png'),
27
  'needs' => \DevOwl\RealCookieBanner\presets\pro\KlaviyoPreset::needs()
28
  ];
inc/presets/pro/blocker/KlikenPreset.php CHANGED
@@ -23,7 +23,7 @@ class KlikenPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPrese
23
  'version' => self::VERSION,
24
  'name' => 'Kliken',
25
  'description' => 'Google Ads & Marketing',
26
- 'attributes' => ['hosts' => ['*analytics.sitewit.com*']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/kliken.png'),
28
  'needs' => \DevOwl\RealCookieBanner\presets\pro\KlikenPreset::needs()
29
  ];
23
  'version' => self::VERSION,
24
  'name' => 'Kliken',
25
  'description' => 'Google Ads & Marketing',
26
+ 'attributes' => ['rules' => ['*analytics.sitewit.com*']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/kliken.png'),
28
  'needs' => \DevOwl\RealCookieBanner\presets\pro\KlikenPreset::needs()
29
  ];
inc/presets/pro/blocker/KomootPreset.php CHANGED
@@ -22,7 +22,7 @@ class KomootPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPrese
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*komoot.de/*/embed*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/komoot.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*komoot.de/*/embed*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/komoot.png')
27
  ];
28
  }
inc/presets/pro/blocker/LinkedInAdsPreset.php CHANGED
@@ -23,7 +23,7 @@ class LinkedInAdsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
23
  'version' => self::VERSION,
24
  'description' => 'LinkedIn Insight-Tag',
25
  'name' => $name,
26
- 'attributes' => ['hosts' => ['*_linkedin_partner_id*', '*snap.licdn.com*', '*ads.linkedin.com*']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/linkedin.png')
28
  ];
29
  }
23
  'version' => self::VERSION,
24
  'description' => 'LinkedIn Insight-Tag',
25
  'name' => $name,
26
+ 'attributes' => ['rules' => ['*_linkedin_partner_id*', '*snap.licdn.com*', '*ads.linkedin.com*']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/linkedin.png')
28
  ];
29
  }
inc/presets/pro/blocker/LoomPreset.php CHANGED
@@ -22,7 +22,7 @@ class LoomPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*loom.com/embed*', '*cdn.loom.com*', 'a[href*="loom.com/share/"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/loom.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*loom.com/embed*', '*cdn.loom.com*', 'a[href*="loom.com/share/"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/loom.png')
27
  ];
28
  }
inc/presets/pro/blocker/LuckyOrangePreset.php CHANGED
@@ -24,8 +24,8 @@ class LuckyOrangePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['window.__lo_site_id'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\LuckyOrangePreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/lucky-orange.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['window.__lo_site_id'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\LuckyOrangePreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/lucky-orange.png')
31
  ];
inc/presets/pro/blocker/MailPoetPreset.php CHANGED
@@ -23,7 +23,7 @@ class MailPoetPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*/wp-content/plugins/mailpoet/assets/dist/js/*',
28
  '*/wp-content/plugins/mailpoet-premium/assets/dist/js/*',
29
  'div[class*="mailpoet_form"]'
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*/wp-content/plugins/mailpoet/assets/dist/js/*',
28
  '*/wp-content/plugins/mailpoet-premium/assets/dist/js/*',
29
  'div[class*="mailpoet_form"]'
inc/presets/pro/blocker/MailchimpForWooCommercePreset.php CHANGED
@@ -23,7 +23,7 @@ class MailchimpForWooCommercePreset extends \DevOwl\RealCookieBanner\presets\Abs
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*wp-content/plugins/mailchimp-for-woocommerce/*',
28
  '*chimpstatic.com*',
29
  'div[class*="mailchimp-newsletter"]',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*wp-content/plugins/mailchimp-for-woocommerce/*',
28
  '*chimpstatic.com*',
29
  'div[class*="mailchimp-newsletter"]',
inc/presets/pro/blocker/MailerLitePreset.php CHANGED
@@ -23,14 +23,15 @@ class MailerLitePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*static.mailerlite.com*',
28
  '*cdn.mailerlite.com*',
29
  '*cloudflare-static/email-decode.min.js*',
30
  '*track.mailerlite.com*',
31
  '*ml_webform_success*',
32
  'div[class*="ml-form-embedContainer"]',
33
- 'div[class*="ml-subscribe-form"]'
 
34
  ]
35
  ],
36
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/mailerlite.png')
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*static.mailerlite.com*',
28
  '*cdn.mailerlite.com*',
29
  '*cloudflare-static/email-decode.min.js*',
30
  '*track.mailerlite.com*',
31
  '*ml_webform_success*',
32
  'div[class*="ml-form-embedContainer"]',
33
+ 'div[class*="ml-subscribe-form"]',
34
+ 'div[class*="ml-form-embed"]'
35
  ]
36
  ],
37
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/mailerlite.png')
inc/presets/pro/blocker/MatomoIntegrationPluginPreset.php CHANGED
@@ -23,7 +23,7 @@ class MatomoIntegrationPluginPreset extends \DevOwl\RealCookieBanner\presets\Abs
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'description' => __('former WP-Piwik', RCB_TD),
26
- 'attributes' => ['hosts' => ['*window._paq*', '*matomo.js*', '*matomo.php*']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl(
28
  'logos/wp-matomo-integration.png'
29
  ),
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'description' => __('former WP-Piwik', RCB_TD),
26
+ 'attributes' => ['rules' => ['*window._paq*', '*matomo.js*', '*matomo.php*']],
27
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl(
28
  'logos/wp-matomo-integration.png'
29
  ),
inc/presets/pro/blocker/MatomoPluginPreset.php CHANGED
@@ -26,7 +26,7 @@ class MatomoPluginPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
26
  'description' => 'WordPress Plugin',
27
  'attributes' => [
28
  'extends' => \DevOwl\RealCookieBanner\presets\PresetIdentifierMap::MATOMO,
29
- 'extendsHostsEnd' => [
30
  // Matomo supports `src` and inline embed
31
  '*wp-content\\/uploads\\/matomo\\/matomo.js*',
32
  '*wp-content/uploads/matomo/matomo.js*',
26
  'description' => 'WordPress Plugin',
27
  'attributes' => [
28
  'extends' => \DevOwl\RealCookieBanner\presets\PresetIdentifierMap::MATOMO,
29
+ 'extendsRulesEnd' => [
30
  // Matomo supports `src` and inline embed
31
  '*wp-content\\/uploads\\/matomo\\/matomo.js*',
32
  '*wp-content/uploads/matomo/matomo.js*',
inc/presets/pro/blocker/MatomoPreset.php CHANGED
@@ -25,8 +25,8 @@ class MatomoPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPrese
25
  'description' => 'Hosted / Cloud',
26
  'hidden' => \true,
27
  'attributes' => [
28
- 'hosts' => ['_paq', '*matomo.php*'],
29
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\MatomoPreset::IDENTIFIER]
30
  ],
31
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/matomo.png')
32
  ];
25
  'description' => 'Hosted / Cloud',
26
  'hidden' => \true,
27
  'attributes' => [
28
+ 'rules' => ['_paq', '*matomo.php*'],
29
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\MatomoPreset::IDENTIFIER]
30
  ],
31
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/matomo.png')
32
  ];
inc/presets/pro/blocker/MetricoolPreset.php CHANGED
@@ -22,7 +22,7 @@ class MetricoolPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPr
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*tracker.metricool.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/metricool.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*tracker.metricool.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/metricool.png')
27
  ];
28
  }
inc/presets/pro/blocker/MicrosoftClarityPreset.php CHANGED
@@ -22,7 +22,7 @@ class MicrosoftClarityPreset extends \DevOwl\RealCookieBanner\presets\AbstractBl
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*clarity.ms/tag*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/microsoft.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*clarity.ms/tag*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/microsoft.png')
27
  ];
28
  }
inc/presets/pro/blocker/MouseflowPreset.php CHANGED
@@ -22,7 +22,7 @@ class MouseflowPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPr
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['_mfq', '*cdn.mouseflow.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/mouseflow.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['_mfq', '*cdn.mouseflow.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/mouseflow.png')
27
  ];
28
  }
inc/presets/pro/blocker/MtmPreset.php CHANGED
@@ -24,8 +24,8 @@ class MtmPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset {
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['_mtm'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\MtmPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/matomo.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['_mtm'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\MtmPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/matomo.png')
31
  ];
inc/presets/pro/blocker/MyCruiseExcursionPreset.php CHANGED
@@ -23,7 +23,7 @@ class MyCruiseExcursionPreset extends \DevOwl\RealCookieBanner\presets\AbstractB
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  'div[id="widget-main-tripup"]',
28
  '*widget.meine-landausfluege.de*',
29
  '*widget.mycruiseexcursion.com*'
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  'div[id="widget-main-tripup"]',
28
  '*widget.meine-landausfluege.de*',
29
  '*widget.mycruiseexcursion.com*'
inc/presets/pro/blocker/MyFontsPreset.php CHANGED
@@ -22,7 +22,7 @@ class MyFontsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*myfonts.net*', '*myfonts.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/my-fonts.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*myfonts.net*', '*myfonts.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/my-fonts.png')
27
  ];
28
  }
inc/presets/pro/blocker/NinjaFormsPreset.php CHANGED
@@ -26,7 +26,7 @@ class NinjaFormsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
26
  'name' => __('Ninja Forms', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
- 'hosts' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
26
  'name' => __('Ninja Forms', RCB_TD),
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
+ 'rules' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
inc/presets/pro/blocker/OpenStreetMapPreset.php CHANGED
@@ -23,7 +23,7 @@ class OpenStreetMapPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*openstreetmap.org/export/embed*',
28
  // [Plugin Comp] https://de.wordpress.org/plugins/leaflet-map/ and Thrive Events (https://github.com/Leaflet/Leaflet/)
29
  'div[class*="leaflet-map"]',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*openstreetmap.org/export/embed*',
28
  // [Plugin Comp] https://de.wordpress.org/plugins/leaflet-map/ and Thrive Events (https://github.com/Leaflet/Leaflet/)
29
  'div[class*="leaflet-map"]',
inc/presets/pro/blocker/PaddleComPreset.php CHANGED
@@ -24,8 +24,8 @@ class PaddleComPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPr
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*paddle.js*', 'Paddle.Setup', 'Paddle.Checkout'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\PaddleComPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/paddle-com.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*paddle.js*', 'Paddle.Setup', 'Paddle.Checkout'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\PaddleComPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/paddle-com.png')
31
  ];
inc/presets/pro/blocker/PerfmattersGA4Preset.php CHANGED
@@ -26,8 +26,8 @@ class PerfmattersGA4Preset extends \DevOwl\RealCookieBanner\presets\AbstractBloc
26
  'description' => 'Analytics 4',
27
  'attributes' => [
28
  'extends' => \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalytics4Preset::IDENTIFIER,
29
- // Overwrite hosts completely as we do not need any `must` logic here
30
- 'overwriteHosts' => \array_merge(
31
  \DevOwl\RealCookieBanner\presets\pro\blocker\PerfmattersGAPreset::BLOCKABLE_SCRIPTS,
32
  \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalytics4Preset::HOSTS_GROUP_SCRIPT_PROPERTY
33
  )
26
  'description' => 'Analytics 4',
27
  'attributes' => [
28
  'extends' => \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalytics4Preset::IDENTIFIER,
29
+ // Overwrite rules completely as we do not need any `must` logic here
30
+ 'overwriteRules' => \array_merge(
31
  \DevOwl\RealCookieBanner\presets\pro\blocker\PerfmattersGAPreset::BLOCKABLE_SCRIPTS,
32
  \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalytics4Preset::HOSTS_GROUP_SCRIPT_PROPERTY
33
  )
inc/presets/pro/blocker/PerfmattersGAPreset.php CHANGED
@@ -36,8 +36,8 @@ class PerfmattersGAPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
36
  'description' => 'Universal Analytics',
37
  'attributes' => [
38
  'extends' => \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalyticsPreset::IDENTIFIER,
39
- // Overwrite hosts completely as we do not need any `must` logic here
40
- 'overwriteHosts' => \array_merge(
41
  self::BLOCKABLE_SCRIPTS,
42
  \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalyticsPreset::HOSTS_GROUP_SCRIPT_PROPERTY
43
  )
36
  'description' => 'Universal Analytics',
37
  'attributes' => [
38
  'extends' => \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalyticsPreset::IDENTIFIER,
39
+ // Overwrite rules completely as we do not need any `must` logic here
40
+ 'overwriteRules' => \array_merge(
41
  self::BLOCKABLE_SCRIPTS,
42
  \DevOwl\RealCookieBanner\presets\pro\blocker\GoogleAnalyticsPreset::HOSTS_GROUP_SCRIPT_PROPERTY
43
  )
inc/presets/pro/blocker/PinterestPreset.php CHANGED
@@ -23,7 +23,7 @@ class PinterestPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPr
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => ['*assets.pinterest.com*', '*i.pinimg.com*', '*widgets.pinterest.com*', 'a[data-pin-do]']
27
  ],
28
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/pinterest.png')
29
  ];
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => ['*assets.pinterest.com*', '*i.pinimg.com*', '*widgets.pinterest.com*', 'a[data-pin-do]']
27
  ],
28
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/pinterest.png')
29
  ];
inc/presets/pro/blocker/PinterestTagPreset.php CHANGED
@@ -22,7 +22,7 @@ class PinterestTagPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*pintrk*', '*pinimg.com/ct/core.js*', '*ct.pinterest.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/pinterest.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*pintrk*', '*pinimg.com/ct/core.js*', '*ct.pinterest.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/pinterest.png')
27
  ];
28
  }
inc/presets/pro/blocker/PiwikProPreset.php CHANGED
@@ -22,7 +22,7 @@ class PiwikProPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*.piwik.pro/*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/piwik-pro.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*.piwik.pro/*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/piwik-pro.png')
27
  ];
28
  }
inc/presets/pro/blocker/PodigeePreset.php CHANGED
@@ -23,7 +23,7 @@ class PodigeePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*player.podigee-cdn.net*',
28
  'script[data-configuration*="podigee.io"]',
29
  '*.podigee.io/*/embed*',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*player.podigee-cdn.net*',
28
  'script[data-configuration*="podigee.io"]',
29
  '*.podigee.io/*/embed*',
inc/presets/pro/blocker/PopupMakerPreset.php CHANGED
@@ -23,7 +23,7 @@ class PopupMakerPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*wp-content/plugins/popup-maker*',
28
  '*pum-site-scripts.js*',
29
  '*pum-site-styles.css*',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*wp-content/plugins/popup-maker*',
28
  '*pum-site-scripts.js*',
29
  '*pum-site-styles.css*',
inc/presets/pro/blocker/ProvenExpertWidgetPreset.php CHANGED
@@ -23,7 +23,7 @@ class ProvenExpertWidgetPreset extends \DevOwl\RealCookieBanner\presets\Abstract
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*images.provenexpert.com*',
28
  '*provenexpert.com/widget*',
29
  '*provenexpert.com/css*',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*images.provenexpert.com*',
28
  '*provenexpert.com/widget*',
29
  '*provenexpert.com/css*',
inc/presets/pro/blocker/QuformRecaptchaPreset.php CHANGED
@@ -26,7 +26,7 @@ class QuformRecaptchaPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlo
26
  'name' => $name,
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
- 'hosts' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
26
  'name' => $name,
27
  'description' => __('with Google reCAPTCHA', RCB_TD),
28
  'attributes' => [
29
+ 'rules' => [
30
  [
31
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
32
  '*google.com/recaptcha*',
inc/presets/pro/blocker/ReamazeChatPreset.php CHANGED
@@ -24,8 +24,8 @@ class ReamazeChatPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*reamaze.js*', '_support = _support', '_support=_support'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\ReamazeChatPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/reamaze.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*reamaze.js*', '_support = _support', '_support=_support'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\ReamazeChatPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/reamaze.png')
31
  ];
inc/presets/pro/blocker/RedditPreset.php CHANGED
@@ -23,7 +23,7 @@ class RedditPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPrese
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => ['*embed.redditmedia.com*', 'blockquote[class="reddit-card"]', 'iframe[id="reddit-embed"]']
27
  ],
28
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/reddit.png')
29
  ];
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => ['*embed.redditmedia.com*', 'blockquote[class="reddit-card"]', 'iframe[id="reddit-embed"]']
27
  ],
28
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/reddit.png')
29
  ];
inc/presets/pro/blocker/SendinbluePreset.php CHANGED
@@ -23,7 +23,7 @@ class SendinbluePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
23
  'description' => __('former Newsletter2Go', RCB_TD),
24
  'name' => 'Sendinblue',
25
  'attributes' => [
26
- 'hosts' => [
27
  '*wp-content/plugins/newsletter2go*',
28
  'script[id="n2g_script"]',
29
  '*static.newsletter2go.com*',
23
  'description' => __('former Newsletter2Go', RCB_TD),
24
  'name' => 'Sendinblue',
25
  'attributes' => [
26
+ 'rules' => [
27
  '*wp-content/plugins/newsletter2go*',
28
  'script[id="n2g_script"]',
29
  '*static.newsletter2go.com*',
inc/presets/pro/blocker/SmashBalloonSocialPhotoFeedPreset.php CHANGED
@@ -25,7 +25,7 @@ class SmashBalloonSocialPhotoFeedPreset extends \DevOwl\RealCookieBanner\presets
25
  'description' => 'Instagram Feed',
26
  'attributes' => [
27
  'extends' => \DevOwl\RealCookieBanner\presets\pro\blocker\InstagramPostPreset::IDENTIFIER,
28
- 'extendsHostsEnd' => [
29
  'div[id="sb_instagram"]',
30
  'div[class*="sbi_header_text"]',
31
  'link[id="sb_instagram_styles-css"]',
25
  'description' => 'Instagram Feed',
26
  'attributes' => [
27
  'extends' => \DevOwl\RealCookieBanner\presets\pro\blocker\InstagramPostPreset::IDENTIFIER,
28
+ 'extendsRulesEnd' => [
29
  'div[id="sb_instagram"]',
30
  'div[class*="sbi_header_text"]',
31
  'link[id="sb_instagram_styles-css"]',
inc/presets/pro/blocker/SoundCloudPreset.php CHANGED
@@ -22,7 +22,7 @@ class SoundCloudPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*w.soundcloud.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/soundcloud.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*w.soundcloud.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/soundcloud.png')
27
  ];
28
  }
inc/presets/pro/blocker/SpotifyPreset.php CHANGED
@@ -22,7 +22,7 @@ class SpotifyPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*open.spotify.com/embed*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/spotify.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*open.spotify.com/embed*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/spotify.png')
27
  ];
28
  }
inc/presets/pro/blocker/TaboolaPreset.php CHANGED
@@ -23,7 +23,7 @@ class TaboolaPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  'script[id="taboola-widget"]',
28
  '*window._taboola*',
29
  '*_taboola.push*',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  'script[id="taboola-widget"]',
28
  '*window._taboola*',
29
  '*_taboola.push*',
inc/presets/pro/blocker/TawkToChatPreset.php CHANGED
@@ -22,7 +22,7 @@ class TawkToChatPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*embed.tawk.to*', 'Tawk_API']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/tawk.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*embed.tawk.to*', 'Tawk_API']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/tawk.png')
27
  ];
28
  }
inc/presets/pro/blocker/ThriveLeadsPreset.php CHANGED
@@ -23,7 +23,7 @@ class ThriveLeadsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => ['*plugins/thrive-leads*', '*tve_leads*', 'window.TL_Front', 'div[data-tl-type="ribbon"]']
27
  ],
28
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/thrive-leads.png'),
29
  'needs' => \DevOwl\RealCookieBanner\presets\pro\ThriveLeadsPreset::needs()
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => ['*plugins/thrive-leads*', '*tve_leads*', 'window.TL_Front', 'div[data-tl-type="ribbon"]']
27
  ],
28
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/thrive-leads.png'),
29
  'needs' => \DevOwl\RealCookieBanner\presets\pro\ThriveLeadsPreset::needs()
inc/presets/pro/blocker/TiWooCommerceWishlistPreset.php CHANGED
@@ -23,7 +23,7 @@ class TiWooCommerceWishlistPreset extends \DevOwl\RealCookieBanner\presets\Abstr
23
  'version' => self::VERSION,
24
  'name' => 'TI WooCommerce Wishlist',
25
  'attributes' => [
26
- 'hosts' => [
27
  '*wp-content/plugins/ti-woocommerce-wishlist/*',
28
  'span[class*="wishlist_products_counter"]',
29
  'a[class*="tinvwl_add_to_wishlist_button"]',
23
  'version' => self::VERSION,
24
  'name' => 'TI WooCommerce Wishlist',
25
  'attributes' => [
26
+ 'rules' => [
27
  '*wp-content/plugins/ti-woocommerce-wishlist/*',
28
  'span[class*="wishlist_products_counter"]',
29
  'a[class*="tinvwl_add_to_wishlist_button"]',
inc/presets/pro/blocker/TidioChatPreset.php CHANGED
@@ -22,7 +22,7 @@ class TidioChatPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPr
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['tidioChatCode', '*code.tidio.co*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/tidio.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['tidioChatCode', '*code.tidio.co*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/tidio.png')
27
  ];
28
  }
inc/presets/pro/blocker/TikTokPixelPreset.php CHANGED
@@ -24,8 +24,8 @@ class TikTokPixelPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
- 'hosts' => ['*analytics.tiktok.com*'],
28
- 'cookies' => [\DevOwl\RealCookieBanner\presets\pro\TikTokPixelPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/tiktok.png')
31
  ];
24
  'name' => $name,
25
  'hidden' => \true,
26
  'attributes' => [
27
+ 'rules' => ['*analytics.tiktok.com*'],
28
+ 'serviceTemplates' => [\DevOwl\RealCookieBanner\presets\pro\TikTokPixelPreset::IDENTIFIER]
29
  ],
30
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/tiktok.png')
31
  ];
inc/presets/pro/blocker/TikTokPreset.php CHANGED
@@ -22,7 +22,7 @@ class TikTokPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPrese
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*tiktok.com/embed.js*', 'blockquote[class="tiktok-embed"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/tiktok.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*tiktok.com/embed.js*', 'blockquote[class="tiktok-embed"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/tiktok.png')
27
  ];
28
  }
inc/presets/pro/blocker/TrustindexIoPreset.php CHANGED
@@ -22,7 +22,7 @@ class TrustindexIoPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*cdn.trustindex.io/loader.js*', 'div[src*="cdn.trustindex.io"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/trustindex-io.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*cdn.trustindex.io/loader.js*', 'div[src*="cdn.trustindex.io"]']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/trustindex-io.png')
27
  ];
28
  }
inc/presets/pro/blocker/TwitterTweetPreset.php CHANGED
@@ -23,7 +23,7 @@ class TwitterTweetPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*twitter.com*',
28
  'http://t.co*',
29
  'https://t.co*',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*twitter.com*',
28
  'http://t.co*',
29
  'https://t.co*',
inc/presets/pro/blocker/TypeformPreset.php CHANGED
@@ -23,7 +23,7 @@ class TypeformPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*wp-content/plugins/typeform/*',
28
  '*typeform.com/to/*',
29
  '*embed.typeform.com*',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*wp-content/plugins/typeform/*',
28
  '*typeform.com/to/*',
29
  '*embed.typeform.com*',
inc/presets/pro/blocker/UserlikePreset.php CHANGED
@@ -22,7 +22,7 @@ class UserlikePreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPre
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*userlike-cdn*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/userlike.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*userlike-cdn*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/userlike.png')
27
  ];
28
  }
inc/presets/pro/blocker/VGWortPreset.php CHANGED
@@ -22,7 +22,7 @@ class VGWortPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPrese
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*met.vgwort.de*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/vg-wort.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*met.vgwort.de*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/vg-wort.png')
27
  ];
28
  }
inc/presets/pro/blocker/VimeoPreset.php CHANGED
@@ -23,7 +23,7 @@ class VimeoPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPreset
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
- 'hosts' => [
27
  '*player.vimeo.com*',
28
  '*vimeocdn.com*',
29
  '*vimeo.com/showcase*',
23
  'version' => self::VERSION,
24
  'name' => $name,
25
  'attributes' => [
26
+ 'rules' => [
27
  '*player.vimeo.com*',
28
  '*vimeocdn.com*',
29
  '*vimeo.com/showcase*',
inc/presets/pro/blocker/WPFormsPreset.php CHANGED
@@ -27,7 +27,7 @@ class WPFormsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPres
27
  'name' => __('WPForms', RCB_TD),
28
  'description' => __('with Google reCAPTCHA', RCB_TD),
29
  'attributes' => [
30
- 'hosts' => [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
33
  '*google.com/recaptcha*',
27
  'name' => __('WPForms', RCB_TD),
28
  'description' => __('with Google reCAPTCHA', RCB_TD),
29
  'attributes' => [
30
+ 'rules' => [
31
  [
32
  \DevOwl\RealCookieBanner\presets\middleware\BlockerHostsOptionsMiddleware::EXPRESSION =>
33
  '*google.com/recaptcha*',
inc/presets/pro/blocker/XingEventsPreset.php CHANGED
@@ -22,7 +22,7 @@ class XingEventsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerP
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*xing-events.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/xing.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*xing-events.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/xing.png')
27
  ];
28
  }
inc/presets/pro/blocker/YandexMetricaPreset.php CHANGED
@@ -22,7 +22,7 @@ class YandexMetricaPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlock
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*mc.yandex.ru*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/yandex.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*mc.yandex.ru*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/yandex.png')
27
  ];
28
  }
inc/presets/pro/blocker/ZendeskChatPreset.php CHANGED
@@ -22,7 +22,7 @@ class ZendeskChatPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocker
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
- 'attributes' => ['hosts' => ['*static.zdassets.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/zendesk-chat.png')
27
  ];
28
  }
22
  'id' => self::IDENTIFIER,
23
  'version' => self::VERSION,
24
  'name' => $name,
25
+ 'attributes' => ['rules' => ['*static.zdassets.com*']],
26
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/zendesk-chat.png')
27
  ];
28
  }
inc/presets/pro/blocker/ZohoBookingsPreset.php CHANGED
@@ -21,7 +21,7 @@ class ZohoBookingsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlocke
21
  'id' => self::IDENTIFIER,
22
  'version' => self::VERSION,
23
  'name' => 'Zoho Bookings',
24
- 'attributes' => ['hosts' => ['*.zohobookings.*']],
25
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/zoho.png')
26
  ];
27
  }
21
  'id' => self::IDENTIFIER,
22
  'version' => self::VERSION,
23
  'name' => 'Zoho Bookings',
24
+ 'attributes' => ['rules' => ['*.zohobookings.*']],
25
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/zoho.png')
26
  ];
27
  }
inc/presets/pro/blocker/ZohoFormsPreset.php CHANGED
@@ -21,7 +21,7 @@ class ZohoFormsPreset extends \DevOwl\RealCookieBanner\presets\AbstractBlockerPr
21
  'id' => self::IDENTIFIER,
22
  'version' => self::VERSION,
23
  'name' => 'Zoho Forms',
24
- 'attributes' => ['hosts' => ['*forms.zohopublic.*']],
25
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/zoho.png')
26
  ];
27
  }
21
  'id' => self::IDENTIFIER,
22
  'version' => self::VERSION,
23
  'name' => 'Zoho Forms',
24
+ 'attributes' => ['rules' => ['*forms.zohopublic.*']],
25
  'logoFile' => \DevOwl\RealCookieBanner\Core::getInstance()->getBaseAssetsUrl('logos/zoho.png')
26
  ];
27
  }
inc/rest/Consent.php CHANGED
@@ -80,8 +80,8 @@ class Consent {
80
  'permission_callback' => '__return_true'
81
  ]);
82
  register_rest_route($namespace, '/consent/dynamic-predecision', [
83
- 'methods' => 'GET',
84
- 'callback' => [$this, 'routeGetDynamicPredecision'],
85
  'args' => [
86
  'viewPortWidth' => ['type' => 'number', 'default' => 0],
87
  'viewPortHeight' => ['type' => 'number', 'default' => 0]
@@ -235,17 +235,18 @@ class Consent {
235
  *
236
  * @param WP_REST_Request $request
237
  *
238
- * @api {get} /real-cookie-banner/v1/consent/dynamic-predecision Get a dynamic predecision for the current page request
239
  * @apiParam {number} [viewPortWidth=0]
240
  * @apiParam {number} [viewPortHeight=0]
241
- * @apiName Get
242
  * @apiGroup Consent
243
  * @apiVersion 1.0.0
244
  */
245
- public function routeGetDynamicPredecision($request) {
246
  if (\DevOwl\RealCookieBanner\IpHandler::getInstance()->isFlooding()) {
247
  return new \WP_Error('rest_rcb_forbidden');
248
  }
 
249
  /**
250
  * Before the banner gets shown to the user, this WP REST API request is called. Please do only
251
  * add a filter to this hook if your option is active (e.g. Country Bypass only when active), this avoids
@@ -260,7 +261,10 @@ class Consent {
260
  * @since 2.0.0
261
  */
262
  $predecision = apply_filters('RCB/Consent/DynamicPreDecision', \false, $request);
263
- return new \WP_REST_Response(['predecision' => $predecision]);
 
 
 
264
  }
265
  /**
266
  * See API docs.
80
  'permission_callback' => '__return_true'
81
  ]);
82
  register_rest_route($namespace, '/consent/dynamic-predecision', [
83
+ 'methods' => 'POST',
84
+ 'callback' => [$this, 'routePostDynamicPredecision'],
85
  'args' => [
86
  'viewPortWidth' => ['type' => 'number', 'default' => 0],
87
  'viewPortHeight' => ['type' => 'number', 'default' => 0]
235
  *
236
  * @param WP_REST_Request $request
237
  *
238
+ * @api {post} /real-cookie-banner/v1/consent/dynamic-predecision Calculate a dynamic predecision for the current page request
239
  * @apiParam {number} [viewPortWidth=0]
240
  * @apiParam {number} [viewPortHeight=0]
241
+ * @apiName CalculateDynamicPredecision
242
  * @apiGroup Consent
243
  * @apiVersion 1.0.0
244
  */
245
+ public function routePostDynamicPredecision($request) {
246
  if (\DevOwl\RealCookieBanner\IpHandler::getInstance()->isFlooding()) {
247
  return new \WP_Error('rest_rcb_forbidden');
248
  }
249
+ $start = \microtime(\true);
250
  /**
251
  * Before the banner gets shown to the user, this WP REST API request is called. Please do only
252
  * add a filter to this hook if your option is active (e.g. Country Bypass only when active), this avoids
261
  * @since 2.0.0
262
  */
263
  $predecision = apply_filters('RCB/Consent/DynamicPreDecision', \false, $request);
264
+ return new \WP_REST_Response([
265
+ 'predecision' => $predecision,
266
+ 'calculationTimeSeconds' => \microtime(\true) - $start
267
+ ]);
268
  }
269
  /**
270
  * See API docs.
inc/scanner/Query.php CHANGED
@@ -355,30 +355,30 @@ class Query {
355
  */
356
  protected function getExistingUrlExpressions() {
357
  global $wpdb;
358
- // Get all existing hosts from existing posts
359
  // phpcs:disable WordPress.DB.PreparedSQL
360
- $hosts = $wpdb->get_col(
361
  $wpdb->prepare(
362
  "SELECT meta_value FROM {$wpdb->postmeta} pm\n INNER JOIN {$wpdb->posts} p ON p.ID = pm.post_id\n WHERE p.post_type = %s AND pm.meta_key = %s",
363
  \DevOwl\RealCookieBanner\settings\Blocker::CPT_NAME,
364
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_HOSTS
365
  )
366
  );
367
  // phpcs:enable WordPress.DB.PreparedSQL
368
- // The hosts is multiline (coming from textarea), let's split into an array
369
- $hostsArray = [];
370
- foreach ($hosts as $host) {
371
- $hostsArray = \array_merge($hostsArray, \explode("\n", $host));
372
  }
373
  $urlExpressions = [];
374
- foreach (\array_filter($hostsArray) as $host) {
375
  // Filter out custom element expressions
376
  if (
377
  \DevOwl\RealCookieBanner\Vendor\DevOwl\FastHtmlTag\finder\SelectorSyntaxFinder::fromExpression(
378
- $host
379
  ) === \false
380
  ) {
381
- $urlExpressions[] = $host;
382
  }
383
  }
384
  return $urlExpressions;
355
  */
356
  protected function getExistingUrlExpressions() {
357
  global $wpdb;
358
+ // Get all existing rules from existing posts
359
  // phpcs:disable WordPress.DB.PreparedSQL
360
+ $rules = $wpdb->get_col(
361
  $wpdb->prepare(
362
  "SELECT meta_value FROM {$wpdb->postmeta} pm\n INNER JOIN {$wpdb->posts} p ON p.ID = pm.post_id\n WHERE p.post_type = %s AND pm.meta_key = %s",
363
  \DevOwl\RealCookieBanner\settings\Blocker::CPT_NAME,
364
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_RULES
365
  )
366
  );
367
  // phpcs:enable WordPress.DB.PreparedSQL
368
+ // The rules is multiline (coming from textarea), let's split into an array
369
+ $rulesArray = [];
370
+ foreach ($rules as $rule) {
371
+ $rulesArray = \array_merge($rulesArray, \explode("\n", $rule));
372
  }
373
  $urlExpressions = [];
374
+ foreach (\array_filter($rulesArray) as $rule) {
375
  // Filter out custom element expressions
376
  if (
377
  \DevOwl\RealCookieBanner\Vendor\DevOwl\FastHtmlTag\finder\SelectorSyntaxFinder::fromExpression(
378
+ $rule
379
  ) === \false
380
  ) {
381
+ $urlExpressions[] = $rule;
382
  }
383
  }
384
  return $urlExpressions;
inc/settings/Blocker.php CHANGED
@@ -24,39 +24,39 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
24
  const CPT_NAME = 'rcb-blocker';
25
  const META_NAME_PRESET_ID = 'presetId';
26
  const META_NAME_PRESET_VERSION = 'presetVersion';
27
- const META_NAME_HOSTS = 'hosts';
28
  const META_NAME_CRITERIA = 'criteria';
29
  const META_NAME_TCF_VENDORS = 'tcfVendors';
30
- const META_NAME_COOKIES = 'cookies';
31
- const META_NAME_VISUAL = 'visual';
32
  const META_NAME_VISUAL_TYPE = 'visualType';
33
  const META_NAME_VISUAL_MEDIA_THUMBNAIL = 'visualMediaThumbnail';
34
  const META_NAME_VISUAL_CONTENT_TYPE = 'visualContentType';
35
- const META_NAME_VISUAL_DARK_MODE = 'visualDarkMode';
36
  const META_NAME_VISUAL_BLUR = 'visualBlur';
37
  const META_NAME_VISUAL_DOWNLOAD_THUMBNAIL = 'visualDownloadThumbnail';
38
  const META_NAME_VISUAL_HERO_BUTTON_TEXT = 'visualHeroButtonText';
39
- const META_NAME_FORCE_HIDDEN = 'forceHidden';
40
- const DEFAULT_CRITERIA = self::CRITERIA_COOKIES;
41
- const CRITERIA_COOKIES = 'cookies';
42
  const CRITERIA_TCF_VENDORS = 'tcfVendors';
43
  const DEFAULT_VISUAL_TYPE = self::VISUAL_TYPE_DEFAULT;
44
  const VISUAL_TYPE_DEFAULT = 'default';
45
  const VISUAL_TYPE_WRAPPED = 'wrapped';
46
  const VISUAL_TYPE_HERO = 'hero';
47
  const SYNC_OPTIONS_COPY = [
48
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_HOSTS,
49
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_CRITERIA,
50
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS,
51
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_COOKIES,
52
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL,
53
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_TYPE,
54
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_MEDIA_THUMBNAIL,
55
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_CONTENT_TYPE,
56
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_DARK_MODE,
57
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_BLUR,
58
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_DOWNLOAD_THUMBNAIL,
59
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_FORCE_HIDDEN,
60
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID,
61
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_VERSION
62
  ];
@@ -68,19 +68,19 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
68
  ]
69
  ];
70
  const META_KEYS = [
71
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_HOSTS,
72
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_CRITERIA,
73
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS,
74
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_COOKIES,
75
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL,
76
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_TYPE,
77
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_MEDIA_THUMBNAIL,
78
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_CONTENT_TYPE,
79
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_DARK_MODE,
80
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_BLUR,
81
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_DOWNLOAD_THUMBNAIL,
82
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_HERO_BUTTON_TEXT,
83
- \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_FORCE_HIDDEN,
84
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID
85
  ];
86
  /**
@@ -153,7 +153,7 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
153
  'show_in_rest' => \true
154
  ]);
155
  // This meta is stored as JSON (this shouldn't be done usually - 3rd normal form - but it's ok here)
156
- register_meta('post', self::META_NAME_HOSTS, [
157
  'object_subtype' => self::CPT_NAME,
158
  'type' => 'string',
159
  'single' => \true,
@@ -174,13 +174,13 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
174
  'show_in_rest' => \true
175
  ]);
176
  // This meta is stored as JSON (this shouldn't be done usually - 3rd normal form - but it's ok here)
177
- register_meta('post', self::META_NAME_COOKIES, [
178
  'object_subtype' => self::CPT_NAME,
179
  'type' => 'string',
180
  'single' => \true,
181
  'show_in_rest' => \true
182
  ]);
183
- register_meta('post', self::META_NAME_VISUAL, [
184
  'object_subtype' => self::CPT_NAME,
185
  'type' => 'boolean',
186
  'single' => \true,
@@ -207,7 +207,7 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
207
  'show_in_rest' => \true,
208
  'default' => ''
209
  ]);
210
- register_meta('post', self::META_NAME_VISUAL_DARK_MODE, [
211
  'object_subtype' => self::CPT_NAME,
212
  'type' => 'boolean',
213
  'single' => \true,
@@ -235,7 +235,7 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
235
  'show_in_rest' => \true,
236
  'default' => ''
237
  ]);
238
- register_meta('post', self::META_NAME_FORCE_HIDDEN, [
239
  'object_subtype' => self::CPT_NAME,
240
  'type' => 'boolean',
241
  'single' => \true,
@@ -252,17 +252,17 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
252
  $blockers = $this->getOrdered();
253
  foreach ($blockers as $blocker) {
254
  // Visuals should not trigger a new consent
255
- if ($blocker->metas[self::META_NAME_VISUAL]) {
256
  continue;
257
  }
258
  $criteria = $blocker->metas[self::META_NAME_CRITERIA];
259
- $nonVisualRow = ['id' => $blocker->ID, self::META_NAME_HOSTS => $blocker->metas[self::META_NAME_HOSTS]];
260
  if ($criteria !== self::DEFAULT_CRITERIA) {
261
  $nonVisualRow[self::META_NAME_CRITERIA] = $criteria;
262
  }
263
  switch ($blocker->metas[self::META_NAME_CRITERIA]) {
264
- case self::CRITERIA_COOKIES:
265
- $nonVisualRow[self::META_NAME_COOKIES] = $blocker->metas[self::META_NAME_COOKIES];
266
  break;
267
  case self::CRITERIA_TCF_VENDORS:
268
  $nonVisualRow[self::META_NAME_TCF_VENDORS] = $blocker->metas[self::META_NAME_TCF_VENDORS];
@@ -317,7 +317,7 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
317
  foreach ($blockers as $blocker) {
318
  $metaKey =
319
  $post_type === \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME
320
- ? \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_COOKIES
321
  : \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS;
322
  $cookies = $blocker->metas[$metaKey];
323
  if (($key = \array_search($postId, $cookies, \true)) !== \false) {
@@ -376,16 +376,16 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
376
  foreach (self::META_KEYS as $meta_key) {
377
  $metaValue = get_post_meta($post->ID, $meta_key, \true);
378
  switch ($meta_key) {
379
- case self::META_NAME_HOSTS:
380
  $metaValue = \explode("\n", $metaValue);
381
  $metaValue = \array_values(\array_filter(\array_map('trim', $metaValue), 'strlen'));
382
  break;
383
  case self::META_NAME_TCF_VENDORS:
384
- case self::META_NAME_COOKIES:
385
  $metaValue = empty($metaValue) ? [] : \array_map('intval', \explode(',', $metaValue));
386
  break;
387
- case self::META_NAME_VISUAL:
388
- case self::META_NAME_FORCE_HIDDEN:
389
  $metaValue = \boolval($metaValue);
390
  break;
391
  default:
@@ -408,6 +408,74 @@ class Blocker implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
408
  public function getAllCount() {
409
  return \array_sum(\array_map('intval', \array_values((array) wp_count_posts(self::CPT_NAME))));
410
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
411
  /**
412
  * Get singleton instance.
413
  *
24
  const CPT_NAME = 'rcb-blocker';
25
  const META_NAME_PRESET_ID = 'presetId';
26
  const META_NAME_PRESET_VERSION = 'presetVersion';
27
+ const META_NAME_RULES = 'rules';
28
  const META_NAME_CRITERIA = 'criteria';
29
  const META_NAME_TCF_VENDORS = 'tcfVendors';
30
+ const META_NAME_SERVICES = 'services';
31
+ const META_NAME_IS_VISUAL = 'isVisual';
32
  const META_NAME_VISUAL_TYPE = 'visualType';
33
  const META_NAME_VISUAL_MEDIA_THUMBNAIL = 'visualMediaThumbnail';
34
  const META_NAME_VISUAL_CONTENT_TYPE = 'visualContentType';
35
+ const META_NAME_IS_VISUAL_DARK_MODE = 'isVisualDarkMode';
36
  const META_NAME_VISUAL_BLUR = 'visualBlur';
37
  const META_NAME_VISUAL_DOWNLOAD_THUMBNAIL = 'visualDownloadThumbnail';
38
  const META_NAME_VISUAL_HERO_BUTTON_TEXT = 'visualHeroButtonText';
39
+ const META_NAME_SHOULD_FORCE_TO_SHOW_VISUAL = 'shouldForceToShowVisual';
40
+ const DEFAULT_CRITERIA = self::CRITERIA_SERVICES;
41
+ const CRITERIA_SERVICES = 'services';
42
  const CRITERIA_TCF_VENDORS = 'tcfVendors';
43
  const DEFAULT_VISUAL_TYPE = self::VISUAL_TYPE_DEFAULT;
44
  const VISUAL_TYPE_DEFAULT = 'default';
45
  const VISUAL_TYPE_WRAPPED = 'wrapped';
46
  const VISUAL_TYPE_HERO = 'hero';
47
  const SYNC_OPTIONS_COPY = [
48
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_RULES,
49
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_CRITERIA,
50
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS,
51
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES,
52
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_IS_VISUAL,
53
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_TYPE,
54
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_MEDIA_THUMBNAIL,
55
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_CONTENT_TYPE,
56
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_IS_VISUAL_DARK_MODE,
57
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_BLUR,
58
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_DOWNLOAD_THUMBNAIL,
59
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SHOULD_FORCE_TO_SHOW_VISUAL,
60
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID,
61
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_VERSION
62
  ];
68
  ]
69
  ];
70
  const META_KEYS = [
71
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_RULES,
72
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_CRITERIA,
73
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS,
74
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES,
75
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_IS_VISUAL,
76
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_TYPE,
77
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_MEDIA_THUMBNAIL,
78
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_CONTENT_TYPE,
79
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_IS_VISUAL_DARK_MODE,
80
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_BLUR,
81
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_DOWNLOAD_THUMBNAIL,
82
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_VISUAL_HERO_BUTTON_TEXT,
83
+ \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SHOULD_FORCE_TO_SHOW_VISUAL,
84
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID
85
  ];
86
  /**
153
  'show_in_rest' => \true
154
  ]);
155
  // This meta is stored as JSON (this shouldn't be done usually - 3rd normal form - but it's ok here)
156
+ register_meta('post', self::META_NAME_RULES, [
157
  'object_subtype' => self::CPT_NAME,
158
  'type' => 'string',
159
  'single' => \true,
174
  'show_in_rest' => \true
175
  ]);
176
  // This meta is stored as JSON (this shouldn't be done usually - 3rd normal form - but it's ok here)
177
+ register_meta('post', self::META_NAME_SERVICES, [
178
  'object_subtype' => self::CPT_NAME,
179
  'type' => 'string',
180
  'single' => \true,
181
  'show_in_rest' => \true
182
  ]);
183
+ register_meta('post', self::META_NAME_IS_VISUAL, [
184
  'object_subtype' => self::CPT_NAME,
185
  'type' => 'boolean',
186
  'single' => \true,
207
  'show_in_rest' => \true,
208
  'default' => ''
209
  ]);
210
+ register_meta('post', self::META_NAME_IS_VISUAL_DARK_MODE, [
211
  'object_subtype' => self::CPT_NAME,
212
  'type' => 'boolean',
213
  'single' => \true,
235
  'show_in_rest' => \true,
236
  'default' => ''
237
  ]);
238
+ register_meta('post', self::META_NAME_SHOULD_FORCE_TO_SHOW_VISUAL, [
239
  'object_subtype' => self::CPT_NAME,
240
  'type' => 'boolean',
241
  'single' => \true,
252
  $blockers = $this->getOrdered();
253
  foreach ($blockers as $blocker) {
254
  // Visuals should not trigger a new consent
255
+ if ($blocker->metas[self::META_NAME_IS_VISUAL]) {
256
  continue;
257
  }
258
  $criteria = $blocker->metas[self::META_NAME_CRITERIA];
259
+ $nonVisualRow = ['id' => $blocker->ID, self::META_NAME_RULES => $blocker->metas[self::META_NAME_RULES]];
260
  if ($criteria !== self::DEFAULT_CRITERIA) {
261
  $nonVisualRow[self::META_NAME_CRITERIA] = $criteria;
262
  }
263
  switch ($blocker->metas[self::META_NAME_CRITERIA]) {
264
+ case self::CRITERIA_SERVICES:
265
+ $nonVisualRow[self::META_NAME_SERVICES] = $blocker->metas[self::META_NAME_SERVICES];
266
  break;
267
  case self::CRITERIA_TCF_VENDORS:
268
  $nonVisualRow[self::META_NAME_TCF_VENDORS] = $blocker->metas[self::META_NAME_TCF_VENDORS];
317
  foreach ($blockers as $blocker) {
318
  $metaKey =
319
  $post_type === \DevOwl\RealCookieBanner\settings\Cookie::CPT_NAME
320
+ ? \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES
321
  : \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS;
322
  $cookies = $blocker->metas[$metaKey];
323
  if (($key = \array_search($postId, $cookies, \true)) !== \false) {
376
  foreach (self::META_KEYS as $meta_key) {
377
  $metaValue = get_post_meta($post->ID, $meta_key, \true);
378
  switch ($meta_key) {
379
+ case self::META_NAME_RULES:
380
  $metaValue = \explode("\n", $metaValue);
381
  $metaValue = \array_values(\array_filter(\array_map('trim', $metaValue), 'strlen'));
382
  break;
383
  case self::META_NAME_TCF_VENDORS:
384
+ case self::META_NAME_SERVICES:
385
  $metaValue = empty($metaValue) ? [] : \array_map('intval', \explode(',', $metaValue));
386
  break;
387
+ case self::META_NAME_IS_VISUAL:
388
+ case self::META_NAME_SHOULD_FORCE_TO_SHOW_VISUAL:
389
  $metaValue = \boolval($metaValue);
390
  break;
391
  default:
408
  public function getAllCount() {
409
  return \array_sum(\array_map('intval', \array_values((array) wp_count_posts(self::CPT_NAME))));
410
  }
411
+ /**
412
+ * Multiple metadata rename migrations.
413
+ *
414
+ * @see https://app.clickup.com/t/2d8dedh
415
+ * @param string|false $installed
416
+ */
417
+ public function new_version_installation_after_3_0_2($installed) {
418
+ global $wpdb;
419
+ if (\DevOwl\RealCookieBanner\Core::versionCompareOlderThan($installed, '3.0.2', ['3.0.3', '3.1.0'])) {
420
+ // Get posts which hold post meta which needs to be renamed so we can clear the post cache for them
421
+ $affectedPostIds = $wpdb->get_col(
422
+ $wpdb->prepare(
423
+ "SELECT p.ID FROM {$wpdb->postmeta} pm\n INNER JOIN {$wpdb->posts} p ON pm.post_id = p.ID\n WHERE pm.meta_key IN (\n 'criteria', 'visual', 'visualDarkMode', 'forceHidden', 'hosts', 'cookies'\n ) AND p.post_type = %s\n GROUP BY p.ID",
424
+ self::CPT_NAME
425
+ )
426
+ );
427
+ if (\count($affectedPostIds) > 0) {
428
+ // Rename the metadata directly through a plain SQL query so hooks like `update_post_meta` are not called
429
+ // This avoids issues with WPML or PolyLang and their syncing process
430
+ $wpdb->query(
431
+ $wpdb->prepare(
432
+ "UPDATE {$wpdb->postmeta} pm\n INNER JOIN {$wpdb->posts} p ON pm.post_id = p.ID\n SET pm.meta_key = CASE\n WHEN pm.meta_key = 'visual' THEN 'isVisual'\n WHEN pm.meta_key = 'visualDarkMode' THEN 'isVisualDarkMode'\n WHEN pm.meta_key = 'forceHidden' THEN 'shouldForceToShowVisual'\n WHEN pm.meta_key = 'hosts' THEN 'rules'\n WHEN pm.meta_key = 'cookies' THEN 'services'\n ELSE pm.meta_key\n END,\n pm.meta_value = CASE\n WHEN pm.meta_key = 'criteria' AND pm.meta_value = 'cookies' THEN 'services'\n ELSE pm.meta_value\n END\n WHERE p.post_type = %s",
433
+ self::CPT_NAME
434
+ )
435
+ );
436
+ foreach ($affectedPostIds as $affectedPostId) {
437
+ clean_post_cache(\intval($affectedPostId));
438
+ }
439
+ }
440
+ }
441
+ }
442
+ /**
443
+ * Modify already given consents and adjust the metadata field names for "List of consents".
444
+ *
445
+ * @see https://app.clickup.com/t/2d8dedh
446
+ * @param array $revision
447
+ * @param boolean $independent
448
+ */
449
+ public static function applyMetaRenameBackwardsCompatibility($revision, $independent) {
450
+ $renameBlockerFields = [
451
+ 'visual' => 'isVisual',
452
+ 'visualDarkMode' => 'isVisualDarkMode',
453
+ 'forceHidden' => 'shouldForceToShowVisual',
454
+ 'hosts' => 'rules',
455
+ 'cookies' => 'services'
456
+ ];
457
+ $useBlockers = [];
458
+ if ($independent && isset($revision['blocker'])) {
459
+ $useBlockers = &$revision['blocker'];
460
+ } elseif (!$independent && isset($revision['nonVisualBlocker'])) {
461
+ $useBlockers = &$revision['nonVisualBlocker'];
462
+ }
463
+ foreach ($useBlockers as &$blocker) {
464
+ foreach ($renameBlockerFields as $renameBlockerField => $newFieldName) {
465
+ if (isset($blocker[$renameBlockerField])) {
466
+ if ($newFieldName !== \false) {
467
+ $blocker[$newFieldName] = $blocker[$renameBlockerField];
468
+ }
469
+ unset($blocker[$renameBlockerField]);
470
+ }
471
+ }
472
+ // Special cases
473
+ if (isset($blocker['criteria']) && $blocker['criteria'] === 'cookies') {
474
+ $blocker['criteria'] = 'services';
475
+ }
476
+ }
477
+ return $revision;
478
+ }
479
  /**
480
  * Get singleton instance.
481
  *
inc/settings/Cookie.php CHANGED
@@ -19,68 +19,50 @@ class Cookie {
19
  const CPT_NAME = 'rcb-cookie';
20
  const META_NAME_PROVIDER = 'provider';
21
  const META_NAME_CONSENT_FORWARDING_UNIQUE_NAME = 'consentForwardingUniqueName';
22
- const META_NAME_NO_TECHNICAL_DEFINITIONS = 'noTechnicalDefinitions';
23
  const META_NAME_LEGAL_BASIS = 'legalBasis';
24
  const META_NAME_EPRIVACY_USA = 'ePrivacyUSA';
25
  const META_NAME_TECHNICAL_DEFINITIONS = 'technicalDefinitions';
26
  const META_NAME_CODE_DYNAMICS = 'codeDynamics';
27
- const META_NAME_PROVIDER_PRIVACY_POLICY = 'providerPrivacyPolicy';
28
- const META_NAME_THIS_IS_GOOGLE_TAG = 'thisIsGoogleTagManager';
29
- const META_NAME_GOOGLE_TAG_IN_EVENT_NAME = 'googleTagManagerInEventName';
30
- const META_NAME_GOOGLE_TAG_OUT_EVENT_NAME = 'googleTagManagerOutEventName';
31
- const META_NAME_THIS_IS_MATOMO_TAG = 'thisIsMatomoTagManager';
32
- const META_NAME_MATOMO_TAG_IN_EVENT_NAME = 'matomoTagManagerInEventName';
33
- const META_NAME_MATOMO_TAG_OUT_EVENT_NAME = 'matomoTagManagerOutEventName';
34
  const META_NAME_CODE_OPT_IN = 'codeOptIn';
35
- const META_NAME_CODE_OPT_IN_NO_GOOGLE_TAG_MANAGER = 'codeOptInNoGoogleTagManager';
36
- const META_NAME_CODE_OPT_IN_NO_MATOMO_TAG_MANAGER = 'codeOptInNoMatomoTagManager';
37
  const META_NAME_CODE_OPT_OUT = 'codeOptOut';
38
- const META_NAME_CODE_OPT_OUT_NO_GOOGLE_TAG_MANAGER = 'codeOptOutNoGoogleTagManager';
39
- const META_NAME_CODE_OPT_OUT_NO_MATOMO_TAG_MANAGER = 'codeOptOutNoMatomoTagManager';
40
- const META_NAME_CODE_OPT_OUT_DELETE = 'codeOptOutDelete';
41
  const META_NAME_CODE_ON_PAGE_LOAD = 'codeOnPageLoad';
42
  const SYNC_META_COPY = [
43
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CONSENT_FORWARDING_UNIQUE_NAME,
44
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_NO_TECHNICAL_DEFINITIONS,
45
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_LEGAL_BASIS,
46
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EPRIVACY_USA,
47
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TECHNICAL_DEFINITIONS,
48
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_DYNAMICS,
49
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_THIS_IS_GOOGLE_TAG,
50
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_GOOGLE_TAG_IN_EVENT_NAME,
51
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_GOOGLE_TAG_OUT_EVENT_NAME,
52
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_THIS_IS_MATOMO_TAG,
53
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_MATOMO_TAG_IN_EVENT_NAME,
54
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_MATOMO_TAG_OUT_EVENT_NAME,
55
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN,
56
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN_NO_GOOGLE_TAG_MANAGER,
57
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN_NO_MATOMO_TAG_MANAGER,
58
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT,
59
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT_NO_GOOGLE_TAG_MANAGER,
60
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT_NO_MATOMO_TAG_MANAGER,
61
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT_DELETE,
62
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_ON_PAGE_LOAD,
63
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID,
64
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_VERSION
65
  ];
66
  const SYNC_META_COPY_ONCE = [
67
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER,
68
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY
69
  ];
70
  const TECHNICAL_HANDLING_META_COLLECTION = [
71
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_THIS_IS_GOOGLE_TAG,
72
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_GOOGLE_TAG_IN_EVENT_NAME,
73
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_GOOGLE_TAG_OUT_EVENT_NAME,
74
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_THIS_IS_MATOMO_TAG,
75
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_MATOMO_TAG_IN_EVENT_NAME,
76
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_MATOMO_TAG_OUT_EVENT_NAME,
77
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN,
78
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN_NO_GOOGLE_TAG_MANAGER,
79
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN_NO_MATOMO_TAG_MANAGER,
80
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT,
81
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT_NO_GOOGLE_TAG_MANAGER,
82
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT_NO_MATOMO_TAG_MANAGER,
83
- // Cookie::META_NAME_CODE_OPT_OUT_DELETE,
84
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_ON_PAGE_LOAD
85
  ];
86
  const SYNC_OPTIONS = [
@@ -94,25 +76,19 @@ class Cookie {
94
  const META_KEYS = [
95
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER,
96
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CONSENT_FORWARDING_UNIQUE_NAME,
97
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_NO_TECHNICAL_DEFINITIONS,
98
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_LEGAL_BASIS,
99
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EPRIVACY_USA,
100
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TECHNICAL_DEFINITIONS,
101
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_DYNAMICS,
102
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY,
103
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_THIS_IS_GOOGLE_TAG,
104
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_GOOGLE_TAG_IN_EVENT_NAME,
105
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_GOOGLE_TAG_OUT_EVENT_NAME,
106
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_THIS_IS_MATOMO_TAG,
107
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_MATOMO_TAG_IN_EVENT_NAME,
108
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_MATOMO_TAG_OUT_EVENT_NAME,
109
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN,
110
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN_NO_GOOGLE_TAG_MANAGER,
111
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN_NO_MATOMO_TAG_MANAGER,
112
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT,
113
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT_NO_GOOGLE_TAG_MANAGER,
114
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT_NO_MATOMO_TAG_MANAGER,
115
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT_DELETE,
116
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_ON_PAGE_LOAD,
117
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID
118
  ];
@@ -245,7 +221,7 @@ class Cookie {
245
  'single' => \true,
246
  'show_in_rest' => \true
247
  ]);
248
- register_meta('post', self::META_NAME_NO_TECHNICAL_DEFINITIONS, [
249
  'object_subtype' => self::CPT_NAME,
250
  'type' => 'boolean',
251
  'single' => \true,
@@ -265,7 +241,7 @@ class Cookie {
265
  'single' => \true,
266
  'show_in_rest' => \true
267
  ]);
268
- register_meta('post', self::META_NAME_PROVIDER_PRIVACY_POLICY, [
269
  'object_subtype' => self::CPT_NAME,
270
  'type' => 'string',
271
  'single' => \true,
@@ -277,13 +253,7 @@ class Cookie {
277
  'single' => \true,
278
  'show_in_rest' => \true
279
  ]);
280
- register_meta('post', self::META_NAME_CODE_OPT_IN_NO_GOOGLE_TAG_MANAGER, [
281
- 'object_subtype' => self::CPT_NAME,
282
- 'type' => 'boolean',
283
- 'single' => \true,
284
- 'show_in_rest' => \true
285
- ]);
286
- register_meta('post', self::META_NAME_CODE_OPT_IN_NO_MATOMO_TAG_MANAGER, [
287
  'object_subtype' => self::CPT_NAME,
288
  'type' => 'boolean',
289
  'single' => \true,
@@ -295,19 +265,13 @@ class Cookie {
295
  'single' => \true,
296
  'show_in_rest' => \true
297
  ]);
298
- register_meta('post', self::META_NAME_CODE_OPT_OUT_NO_GOOGLE_TAG_MANAGER, [
299
  'object_subtype' => self::CPT_NAME,
300
  'type' => 'boolean',
301
  'single' => \true,
302
  'show_in_rest' => \true
303
  ]);
304
- register_meta('post', self::META_NAME_CODE_OPT_OUT_NO_MATOMO_TAG_MANAGER, [
305
- 'object_subtype' => self::CPT_NAME,
306
- 'type' => 'boolean',
307
- 'single' => \true,
308
- 'show_in_rest' => \true
309
- ]);
310
- register_meta('post', self::META_NAME_CODE_OPT_OUT_DELETE, [
311
  'object_subtype' => self::CPT_NAME,
312
  'type' => 'boolean',
313
  'single' => \true,
@@ -319,37 +283,13 @@ class Cookie {
319
  'single' => \true,
320
  'show_in_rest' => \true
321
  ]);
322
- register_meta('post', self::META_NAME_THIS_IS_GOOGLE_TAG, [
323
- 'object_subtype' => self::CPT_NAME,
324
- 'type' => 'boolean',
325
- 'single' => \true,
326
- 'show_in_rest' => \true
327
- ]);
328
- register_meta('post', self::META_NAME_GOOGLE_TAG_IN_EVENT_NAME, [
329
- 'object_subtype' => self::CPT_NAME,
330
- 'type' => 'string',
331
- 'single' => \true,
332
- 'show_in_rest' => \true
333
- ]);
334
- register_meta('post', self::META_NAME_GOOGLE_TAG_OUT_EVENT_NAME, [
335
  'object_subtype' => self::CPT_NAME,
336
  'type' => 'string',
337
  'single' => \true,
338
  'show_in_rest' => \true
339
  ]);
340
- register_meta('post', self::META_NAME_THIS_IS_MATOMO_TAG, [
341
- 'object_subtype' => self::CPT_NAME,
342
- 'type' => 'boolean',
343
- 'single' => \true,
344
- 'show_in_rest' => \true
345
- ]);
346
- register_meta('post', self::META_NAME_MATOMO_TAG_IN_EVENT_NAME, [
347
- 'object_subtype' => self::CPT_NAME,
348
- 'type' => 'string',
349
- 'single' => \true,
350
- 'show_in_rest' => \true
351
- ]);
352
- register_meta('post', self::META_NAME_MATOMO_TAG_OUT_EVENT_NAME, [
353
  'object_subtype' => self::CPT_NAME,
354
  'type' => 'string',
355
  'single' => \true,
@@ -419,15 +359,11 @@ class Cookie {
419
  case self::META_NAME_CODE_DYNAMICS:
420
  $metaValue = \json_decode($metaValue, ARRAY_A);
421
  break;
422
- case self::META_NAME_NO_TECHNICAL_DEFINITIONS:
423
  case self::META_NAME_EPRIVACY_USA:
424
- case self::META_NAME_THIS_IS_GOOGLE_TAG:
425
- case self::META_NAME_THIS_IS_MATOMO_TAG:
426
- case self::META_NAME_CODE_OPT_IN_NO_GOOGLE_TAG_MANAGER:
427
- case self::META_NAME_CODE_OPT_IN_NO_MATOMO_TAG_MANAGER:
428
- case self::META_NAME_CODE_OPT_OUT_NO_GOOGLE_TAG_MANAGER:
429
- case self::META_NAME_CODE_OPT_OUT_NO_MATOMO_TAG_MANAGER:
430
- case self::META_NAME_CODE_OPT_OUT_DELETE:
431
  $metaValue = \boolval($metaValue);
432
  break;
433
  case \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_VERSION:
@@ -532,6 +468,149 @@ class Cookie {
532
  };
533
  return $schema;
534
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
535
  /**
536
  * Get singleton instance.
537
  *
19
  const CPT_NAME = 'rcb-cookie';
20
  const META_NAME_PROVIDER = 'provider';
21
  const META_NAME_CONSENT_FORWARDING_UNIQUE_NAME = 'consentForwardingUniqueName';
22
+ const META_NAME_IS_EMBEDDING_ONLY_EXTERNAL_RESOURCES = 'isEmbeddingOnlyExternalResources';
23
  const META_NAME_LEGAL_BASIS = 'legalBasis';
24
  const META_NAME_EPRIVACY_USA = 'ePrivacyUSA';
25
  const META_NAME_TECHNICAL_DEFINITIONS = 'technicalDefinitions';
26
  const META_NAME_CODE_DYNAMICS = 'codeDynamics';
27
+ const META_NAME_PROVIDER_PRIVACY_POLICY_URL = 'providerPrivacyPolicyUrl';
28
+ const META_NAME_TAG_MANAGER_OPT_IN_EVENT_NAME = 'tagManagerOptInEventName';
29
+ const META_NAME_TAG_MANAGER_OPT_OUT_EVENT_NAME = 'tagManagerOptOutEventName';
 
 
 
 
30
  const META_NAME_CODE_OPT_IN = 'codeOptIn';
31
+ const META_NAME_EXECUTE_CODE_OPT_IN_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN = 'executeCodeOptInWhenNoTagManagerConsentIsGiven';
 
32
  const META_NAME_CODE_OPT_OUT = 'codeOptOut';
33
+ const META_NAME_EXECUTE_CODE_OPT_OUT_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN = 'executeCodeOptOutWhenNoTagManagerConsentIsGiven';
34
+ const META_NAME_DELETE_TECHNICAL_DEFINITIONS_AFTER_OPT_OUT = 'deleteTechnicalDefinitionsAfterOptOut';
 
35
  const META_NAME_CODE_ON_PAGE_LOAD = 'codeOnPageLoad';
36
  const SYNC_META_COPY = [
37
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CONSENT_FORWARDING_UNIQUE_NAME,
38
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_IS_EMBEDDING_ONLY_EXTERNAL_RESOURCES,
39
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_LEGAL_BASIS,
40
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EPRIVACY_USA,
41
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TECHNICAL_DEFINITIONS,
42
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_DYNAMICS,
43
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TAG_MANAGER_OPT_IN_EVENT_NAME,
44
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TAG_MANAGER_OPT_OUT_EVENT_NAME,
 
 
 
 
45
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN,
46
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EXECUTE_CODE_OPT_IN_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN,
 
47
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT,
48
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EXECUTE_CODE_OPT_OUT_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN,
49
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_DELETE_TECHNICAL_DEFINITIONS_AFTER_OPT_OUT,
 
50
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_ON_PAGE_LOAD,
51
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID,
52
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_VERSION
53
  ];
54
  const SYNC_META_COPY_ONCE = [
55
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER,
56
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL
57
  ];
58
  const TECHNICAL_HANDLING_META_COLLECTION = [
59
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TAG_MANAGER_OPT_IN_EVENT_NAME,
60
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TAG_MANAGER_OPT_OUT_EVENT_NAME,
 
 
 
 
61
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN,
62
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EXECUTE_CODE_OPT_IN_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN,
 
63
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT,
64
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EXECUTE_CODE_OPT_OUT_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN,
65
+ // Cookie::META_NAME_DELETE_TECHNICAL_DEFINITIONS_AFTER_OPT_OUT,
 
66
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_ON_PAGE_LOAD
67
  ];
68
  const SYNC_OPTIONS = [
76
  const META_KEYS = [
77
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER,
78
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CONSENT_FORWARDING_UNIQUE_NAME,
79
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_IS_EMBEDDING_ONLY_EXTERNAL_RESOURCES,
80
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_LEGAL_BASIS,
81
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EPRIVACY_USA,
82
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TECHNICAL_DEFINITIONS,
83
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_DYNAMICS,
84
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL,
85
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TAG_MANAGER_OPT_IN_EVENT_NAME,
86
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_TAG_MANAGER_OPT_OUT_EVENT_NAME,
 
 
 
 
87
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_IN,
88
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EXECUTE_CODE_OPT_IN_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN,
 
89
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_OPT_OUT,
90
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_EXECUTE_CODE_OPT_OUT_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN,
91
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_DELETE_TECHNICAL_DEFINITIONS_AFTER_OPT_OUT,
 
92
  \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_CODE_ON_PAGE_LOAD,
93
  \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID
94
  ];
221
  'single' => \true,
222
  'show_in_rest' => \true
223
  ]);
224
+ register_meta('post', self::META_NAME_IS_EMBEDDING_ONLY_EXTERNAL_RESOURCES, [
225
  'object_subtype' => self::CPT_NAME,
226
  'type' => 'boolean',
227
  'single' => \true,
241
  'single' => \true,
242
  'show_in_rest' => \true
243
  ]);
244
+ register_meta('post', self::META_NAME_PROVIDER_PRIVACY_POLICY_URL, [
245
  'object_subtype' => self::CPT_NAME,
246
  'type' => 'string',
247
  'single' => \true,
253
  'single' => \true,
254
  'show_in_rest' => \true
255
  ]);
256
+ register_meta('post', self::META_NAME_EXECUTE_CODE_OPT_IN_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN, [
 
 
 
 
 
 
257
  'object_subtype' => self::CPT_NAME,
258
  'type' => 'boolean',
259
  'single' => \true,
265
  'single' => \true,
266
  'show_in_rest' => \true
267
  ]);
268
+ register_meta('post', self::META_NAME_EXECUTE_CODE_OPT_OUT_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN, [
269
  'object_subtype' => self::CPT_NAME,
270
  'type' => 'boolean',
271
  'single' => \true,
272
  'show_in_rest' => \true
273
  ]);
274
+ register_meta('post', self::META_NAME_DELETE_TECHNICAL_DEFINITIONS_AFTER_OPT_OUT, [
 
 
 
 
 
 
275
  'object_subtype' => self::CPT_NAME,
276
  'type' => 'boolean',
277
  'single' => \true,
283
  'single' => \true,
284
  'show_in_rest' => \true
285
  ]);
286
+ register_meta('post', self::META_NAME_TAG_MANAGER_OPT_IN_EVENT_NAME, [
 
 
 
 
 
 
 
 
 
 
 
 
287
  'object_subtype' => self::CPT_NAME,
288
  'type' => 'string',
289
  'single' => \true,
290
  'show_in_rest' => \true
291
  ]);
292
+ register_meta('post', self::META_NAME_TAG_MANAGER_OPT_OUT_EVENT_NAME, [
 
 
 
 
 
 
 
 
 
 
 
 
293
  'object_subtype' => self::CPT_NAME,
294
  'type' => 'string',
295
  'single' => \true,
359
  case self::META_NAME_CODE_DYNAMICS:
360
  $metaValue = \json_decode($metaValue, ARRAY_A);
361
  break;
362
+ case self::META_NAME_IS_EMBEDDING_ONLY_EXTERNAL_RESOURCES:
363
  case self::META_NAME_EPRIVACY_USA:
364
+ case self::META_NAME_EXECUTE_CODE_OPT_IN_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN:
365
+ case self::META_NAME_EXECUTE_CODE_OPT_OUT_WHEN_NO_TAG_MANAGER_CONSENT_IS_GIVEN:
366
+ case self::META_NAME_DELETE_TECHNICAL_DEFINITIONS_AFTER_OPT_OUT:
 
 
 
 
367
  $metaValue = \boolval($metaValue);
368
  break;
369
  case \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_VERSION:
468
  };
469
  return $schema;
470
  }
471
+ /**
472
+ * Multiple metadata rename migrations.
473
+ *
474
+ * @see https://app.clickup.com/t/2d8dedh
475
+ * @param string|false $installed
476
+ */
477
+ public function new_version_installation_after_3_0_2($installed) {
478
+ global $wpdb;
479
+ if (\DevOwl\RealCookieBanner\Core::versionCompareOlderThan($installed, '3.0.2', ['3.0.3', '3.1.0'])) {
480
+ // Get posts which hold post meta which needs to be renamed so we can clear the post cache for them
481
+ $setCookiesViaManager = \DevOwl\RealCookieBanner\settings\General::getInstance()->getSetCookiesViaManager();
482
+ $affectedPostIds = $wpdb->get_col(
483
+ // phpcs:disable WordPress.DB.PreparedSQL
484
+ $wpdb->prepare(
485
+ "SELECT p.ID FROM {$wpdb->postmeta} pm\n INNER JOIN {$wpdb->posts} p ON pm.post_id = p.ID\n WHERE pm.meta_key IN ('" .
486
+ \join(
487
+ "','",
488
+ \array_merge(
489
+ [
490
+ 'providerPrivacyPolicy',
491
+ 'codeOptOutDelete',
492
+ 'noTechnicalDefinitions',
493
+ 'technicalDefinitions'
494
+ ],
495
+ ($setCookiesViaManager === 'none'
496
+ ? []
497
+ : $setCookiesViaManager === 'googleTagManager')
498
+ ? [
499
+ 'googleTagManagerInEventName',
500
+ 'googleTagManagerOutEventName',
501
+ 'codeOptInNoGoogleTagManager',
502
+ 'codeOptOutNoGoogleTagManager'
503
+ ]
504
+ : [
505
+ 'matomoTagManagerInEventName',
506
+ 'matomoTagManagerOutEventName',
507
+ 'codeOptInNoMatomoTagManager',
508
+ 'codeOptOutNoMatomoTagManager'
509
+ ]
510
+ )
511
+ ) .
512
+ "') AND p.post_type = %s\n GROUP BY p.ID",
513
+ self::CPT_NAME
514
+ )
515
+ );
516
+ if (\count($affectedPostIds) > 0) {
517
+ // Rename the metadata directly through a plain SQL query so hooks like `update_post_meta` are not called
518
+ // This avoids issues with WPML or PolyLang and their syncing process
519
+ $wpdb->query(
520
+ // phpcs:disable WordPress.DB.PreparedSQL
521
+ $wpdb->prepare(
522
+ "UPDATE {$wpdb->postmeta} pm\n INNER JOIN {$wpdb->posts} p ON pm.post_id = p.ID\n SET pm.meta_key = CASE\n WHEN pm.meta_key = 'providerPrivacyPolicy' THEN 'providerPrivacyPolicyUrl'\n WHEN pm.meta_key = 'codeOptOutDelete' THEN 'deleteTechnicalDefinitionsAfterOptOut'\n WHEN pm.meta_key = 'noTechnicalDefinitions' THEN 'isEmbeddingOnlyExternalResources'\n " .
523
+ \join(
524
+ ' ',
525
+ $setCookiesViaManager === 'googleTagManager'
526
+ ? [
527
+ "WHEN pm.meta_key = 'googleTagManagerInEventName' THEN 'tagManagerOptInEventName'",
528
+ "WHEN pm.meta_key = 'googleTagManagerOutEventName' THEN 'tagManagerOptOutEventName'",
529
+ "WHEN pm.meta_key = 'codeOptInNoGoogleTagManager' THEN 'executeCodeOptInWhenNoTagManagerConsentIsGiven'",
530
+ "WHEN pm.meta_key = 'codeOptOutNoGoogleTagManager' THEN 'executeCodeOptOutWhenNoTagManagerConsentIsGiven'"
531
+ ]
532
+ : [
533
+ "WHEN pm.meta_key = 'matomoTagManagerInEventName' THEN 'tagManagerOptInEventName'",
534
+ "WHEN pm.meta_key = 'matomoTagManagerOutEventName' THEN 'tagManagerOptOutEventName'",
535
+ "WHEN pm.meta_key = 'codeOptInNoMatomoTagManager' THEN 'executeCodeOptInWhenNoTagManagerConsentIsGiven'",
536
+ "WHEN pm.meta_key = 'codeOptOutNoMatomoTagManager' THEN 'executeCodeOptOutWhenNoTagManagerConsentIsGiven'"
537
+ ]
538
+ ) .
539
+ "\n ELSE pm.meta_key\n END,\n pm.meta_value = CASE\n WHEN pm.meta_key = 'technicalDefinitions' THEN REPLACE(`meta_value`, '\"sessionDuration\"', '\"isSessionDuration\"')\n ELSE pm.meta_value\n END\n WHERE p.post_type = %s",
540
+ self::CPT_NAME
541
+ )
542
+ );
543
+ foreach ($affectedPostIds as $affectedPostId) {
544
+ clean_post_cache(\intval($affectedPostId));
545
+ }
546
+ }
547
+ }
548
+ }
549
+ /**
550
+ * Modify already given consents and adjust the metadata field names for "List of consents".
551
+ *
552
+ * @see https://app.clickup.com/t/2d8dedh
553
+ * @param array $revision
554
+ * @param boolean $independent
555
+ */
556
+ public static function applyMetaRenameBackwardsCompatibility($revision, $independent) {
557
+ if (!$independent && isset($revision['groups'])) {
558
+ $renameCookieFields = [
559
+ 'providerPrivacyPolicy' => 'providerPrivacyPolicyUrl',
560
+ 'codeOptOutDelete' => 'deleteTechnicalDefinitionsAfterOptOut',
561
+ 'noTechnicalDefinitions' => 'isEmbeddingOnlyExternalResources',
562
+ 'thisIsGoogleTagManager' => \false,
563
+ // remove field
564
+ 'thisIsMatomoTagManager' => \false
565
+ ];
566
+ $setCookiesViaManager = $revision['options']['SETTING_SET_COOKIES_VIA_MANAGER'] ?? 'none';
567
+ if ($setCookiesViaManager === 'googleTagManager') {
568
+ $renameCookieFields['googleTagManagerInEventName'] = 'tagManagerOptInEventName';
569
+ $renameCookieFields['googleTagManagerOutEventName'] = 'tagManagerOptOutEventName';
570
+ $renameCookieFields['codeOptInNoGoogleTagManager'] = 'executeCodeOptInWhenNoTagManagerConsentIsGiven';
571
+ $renameCookieFields['codeOptOutNoGoogleTagManager'] = 'executeCodeOptOutWhenNoTagManagerConsentIsGiven';
572
+ $renameCookieFields['matomoTagManagerInEventName'] = \false;
573
+ $renameCookieFields['matomoTagManagerOutEventName'] = \false;
574
+ $renameCookieFields['codeOptInNoMatomoTagManager'] = \false;
575
+ $renameCookieFields['codeOptOutNoMatomoTagManager'] = \false;
576
+ } else {
577
+ $renameCookieFields['matomoTagManagerInEventName'] = 'tagManagerOptInEventName';
578
+ $renameCookieFields['matomoTagManagerOutEventName'] = 'tagManagerOptOutEventName';
579
+ $renameCookieFields['codeOptInNoMatomoTagManager'] = 'executeCodeOptInWhenNoTagManagerConsentIsGiven';
580
+ $renameCookieFields['codeOptOutNoMatomoTagManager'] = 'executeCodeOptOutWhenNoTagManagerConsentIsGiven';
581
+ $renameCookieFields['googleTagManagerInEventName'] = \false;
582
+ $renameCookieFields['googleTagManagerOutEventName'] = \false;
583
+ $renameCookieFields['codeOptInNoGoogleTagManager'] = \false;
584
+ $renameCookieFields['codeOptOutNoGoogleTagManager'] = \false;
585
+ }
586
+ foreach ($revision['groups'] as &$group) {
587
+ if (isset($group['items'])) {
588
+ foreach ($group['items'] as &$cookie) {
589
+ foreach ($renameCookieFields as $renameCookieField => $newFieldName) {
590
+ if (isset($cookie[$renameCookieField])) {
591
+ if ($newFieldName !== \false) {
592
+ $cookie[$newFieldName] = $cookie[$renameCookieField];
593
+ }
594
+ unset($cookie[$renameCookieField]);
595
+ }
596
+ }
597
+ // Special cases
598
+ if (isset($cookie['technicalDefinitions']) && \is_array($cookie['technicalDefinitions'])) {
599
+ $cookie['technicalDefinitions'] = \json_decode(
600
+ \str_replace(
601
+ '"sessionDuration"',
602
+ '"isSessionDuration"',
603
+ \json_encode($cookie['technicalDefinitions'])
604
+ ),
605
+ ARRAY_A
606
+ );
607
+ }
608
+ }
609
+ }
610
+ }
611
+ }
612
+ return $revision;
613
+ }
614
  /**
615
  * Get singleton instance.
616
  *
inc/settings/CookieGroup.php CHANGED
@@ -231,20 +231,24 @@ class CookieGroup {
231
  ? __('Marketing', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED)
232
  : 'marketing';
233
  $texts = [
234
- $essentialKey => __(
235
  'Essential services are required for the basic functionality of the website. They only contain technically necessary services. These services cannot be objected to.',
 
236
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
237
  ),
238
- $functionalKey => __(
239
- 'Functional services are necessary to provide features beyond the essential functionality such as prettier fonts, video playback or interactive Web 2.0 features. Content from e.g. video platforms and social media platforms are blocked by default, and can be consented to. If the service is agreed to, this content is loaded automatically without further manual consent.',
 
240
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
241
  ),
242
- $statisticsKey => __(
243
  'Statistics services are needed to collect pseudonymous data about the visitors of the website. The data enables us to understand visitors better and to optimize the website.',
 
244
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
245
  ),
246
- $marketingKey => __(
247
  'Marketing services are used by us and third parties to track the behaviour of individual visitors (across multiple pages), analyse the data collected and, for example, display personalized advertisements. These services enable us to track visitors across multiple websites.',
 
248
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
249
  )
250
  ];
231
  ? __('Marketing', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED)
232
  : 'marketing';
233
  $texts = [
234
+ $essentialKey => _x(
235
  'Essential services are required for the basic functionality of the website. They only contain technically necessary services. These services cannot be objected to.',
236
+ 'legal-text',
237
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
238
  ),
239
+ $functionalKey => _x(
240
+ 'Functional services are necessary to provide features beyond the essential functionality such as prettier fonts, video playback or interactive web 2.0 features. Content from e.g. video platforms and social media platforms are blocked by default, and can be consented to. If the service is agreed to, this content is loaded automatically without further manual consent.',
241
+ 'legal-text',
242
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
243
  ),
244
+ $statisticsKey => _x(
245
  'Statistics services are needed to collect pseudonymous data about the visitors of the website. The data enables us to understand visitors better and to optimize the website.',
246
+ 'legal-text',
247
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
248
  ),
249
+ $marketingKey => _x(
250
  'Marketing services are used by us and third parties to track the behaviour of individual visitors (across multiple pages), analyse the data collected and, for example, display personalized advertisements. These services enable us to track visitors across multiple websites.',
251
+ 'legal-text',
252
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
253
  )
254
  ];
inc/settings/General.php CHANGED
@@ -250,7 +250,7 @@ class General implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
250
  $rcbServiceId = $realCookieBannerService->ID;
251
  $oldPrivacyPolicy = get_post_meta(
252
  $rcbServiceId,
253
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY,
254
  \true
255
  );
256
  $postId = $new_value;
@@ -261,7 +261,7 @@ class General implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
261
  if (!empty($permalink)) {
262
  update_post_meta(
263
  $rcbServiceId,
264
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY,
265
  $permalink
266
  );
267
  // Search for all other local services like "WordPress Comments"
@@ -277,7 +277,7 @@ class General implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
277
  'meta_query' => [
278
  [
279
  'key' =>
280
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY,
281
  'value' => $oldPrivacyPolicy,
282
  'compare' => '='
283
  ]
@@ -290,7 +290,7 @@ class General implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IO
290
  foreach ($postsWithOldPrivacyPolicy as $postWithOldPrivacyPolicy) {
291
  update_post_meta(
292
  $postWithOldPrivacyPolicy,
293
- \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY,
294
  $permalink
295
  );
296
  }
250
  $rcbServiceId = $realCookieBannerService->ID;
251
  $oldPrivacyPolicy = get_post_meta(
252
  $rcbServiceId,
253
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL,
254
  \true
255
  );
256
  $postId = $new_value;
261
  if (!empty($permalink)) {
262
  update_post_meta(
263
  $rcbServiceId,
264
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL,
265
  $permalink
266
  );
267
  // Search for all other local services like "WordPress Comments"
277
  'meta_query' => [
278
  [
279
  'key' =>
280
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL,
281
  'value' => $oldPrivacyPolicy,
282
  'compare' => '='
283
  ]
290
  foreach ($postsWithOldPrivacyPolicy as $postWithOldPrivacyPolicy) {
291
  update_post_meta(
292
  $postWithOldPrivacyPolicy,
293
+ \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL,
294
  $permalink
295
  );
296
  }
inc/settings/Revision.php CHANGED
@@ -7,6 +7,7 @@ use DevOwl\RealCookieBanner\Core;
7
  use DevOwl\RealCookieBanner\lite\settings\TcfVendorConfiguration;
8
  use DevOwl\RealCookieBanner\UserConsent;
9
  use DevOwl\RealCookieBanner\Utils;
 
10
  use ReflectionClass;
11
  // @codeCoverageIgnoreStart
12
  \defined('ABSPATH') or die('No script kiddies please!');
@@ -206,8 +207,7 @@ class Revision {
206
  *
207
  * - `public_to_users`: The revision hash currently published to users
208
  * - `calculated`: The current revision hash from the latest settings
209
- * - `has_gtm`: Has a cookie with a valid Google Tag Manager script (so you can show a notice in your config UI)
210
- * - `has_mtm`: Has a cookie with a valid Matomo Tag Manager script (so you can show a notice in your config UI)
211
  * - `public_count`: A total count of public cookies
212
  *
213
  * @param boolean $recreate If true, a new revision gets created so new consents need to be made. Always recreates when no consents are given yet.
@@ -216,13 +216,11 @@ class Revision {
216
  $create = $this->create($recreate || \DevOwl\RealCookieBanner\UserConsent::getInstance()->getCount() === 0);
217
  $calculated = $create['hash'];
218
  $publicToUsers = $this->getCurrentHash();
219
- $tagManagerKeys = [
220
- 'has_gtm' => \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_THIS_IS_GOOGLE_TAG,
221
- 'has_mtm' => \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_THIS_IS_MATOMO_TAG
222
- ];
223
- $tagManagerResults = ['has_gtm' => \false, 'has_mtm' => \false];
224
  // Search for all available tag managers
225
- foreach ($tagManagerKeys as $key => $metaName) {
 
 
 
226
  $ids = get_posts(
227
  \DevOwl\RealCookieBanner\Core::getInstance()->queryArguments(
228
  [
@@ -230,13 +228,21 @@ class Revision {
230
  'numberposts' => -1,
231
  'nopaging' => \true,
232
  'fields' => 'ids',
233
- 'meta_key' => $metaName,
234
- 'meta_value' => \true
 
 
 
 
 
 
 
 
235
  ],
236
  'revisionGetManagerIds'
237
  )
238
  );
239
- $tagManagerResults[$key] = \count($ids) > 0 ? $ids[0] : \false;
240
  }
241
  /**
242
  * Modify the result for the `/wp-json/real-cookie-banner/v1/revision/current` route. Usually,
7
  use DevOwl\RealCookieBanner\lite\settings\TcfVendorConfiguration;
8
  use DevOwl\RealCookieBanner\UserConsent;
9
  use DevOwl\RealCookieBanner\Utils;
10
+ use DevOwl\RealCookieBanner\presets\PresetIdentifierMap;
11
  use ReflectionClass;
12
  // @codeCoverageIgnoreStart
13
  \defined('ABSPATH') or die('No script kiddies please!');
207
  *
208
  * - `public_to_users`: The revision hash currently published to users
209
  * - `calculated`: The current revision hash from the latest settings
210
+ * - `has_manager`: Has a cookie with a valid Google/Matomo Tag Manager script (so you can show a notice in your config UI)
 
211
  * - `public_count`: A total count of public cookies
212
  *
213
  * @param boolean $recreate If true, a new revision gets created so new consents need to be made. Always recreates when no consents are given yet.
216
  $create = $this->create($recreate || \DevOwl\RealCookieBanner\UserConsent::getInstance()->getCount() === 0);
217
  $calculated = $create['hash'];
218
  $publicToUsers = $this->getCurrentHash();
 
 
 
 
 
219
  // Search for all available tag managers
220
+ $setCookiesViaManager = \DevOwl\RealCookieBanner\settings\General::getInstance()->getSetCookiesViaManager();
221
+ if ($setCookiesViaManager === 'none') {
222
+ $tagManagerResults['has_manager'] = \false;
223
+ } else {
224
  $ids = get_posts(
225
  \DevOwl\RealCookieBanner\Core::getInstance()->queryArguments(
226
  [
228
  'numberposts' => -1,
229
  'nopaging' => \true,
230
  'fields' => 'ids',
231
+ 'meta_query' => [
232
+ [
233
+ 'key' => \DevOwl\RealCookieBanner\settings\Blocker::META_NAME_PRESET_ID,
234
+ 'value' =>
235
+ $setCookiesViaManager === 'googleTagManager'
236
+ ? \DevOwl\RealCookieBanner\presets\PresetIdentifierMap::GTM
237
+ : \DevOwl\RealCookieBanner\presets\PresetIdentifierMap::MTM,
238
+ 'compare' => '='
239
+ ]
240
+ ]
241
  ],
242
  'revisionGetManagerIds'
243
  )
244
  );
245
+ $tagManagerResults['has_manager'] = \count($ids) > 0 ? $ids[0] : \false;
246
  }
247
  /**
248
  * Modify the result for the `/wp-json/real-cookie-banner/v1/revision/current` route. Usually,
inc/settings/TCF.php CHANGED
@@ -56,6 +56,13 @@ class TCF implements \DevOwl\RealCookieBanner\overrides\interfce\settings\IOverr
56
  public function register() {
57
  $this->overrideRegister();
58
  }
 
 
 
 
 
 
 
59
  /**
60
  * Get singleton instance.
61
  *
56
  public function register() {
57
  $this->overrideRegister();
58
  }
59
+ /**
60
+ * When a new version of Real Cookie Banner got installed, automatically download the new GVL.
61
+ */
62
+ public function new_version_installation() {
63
+ // $this->updateGvl(); // Do not use this, as we need to wait for the `init` hook
64
+ update_option(self::OPTION_TCF_GVL_NEXT_DOWNLOAD_TIME, '');
65
+ }
66
  /**
67
  * Get singleton instance.
68
  *
inc/view/Blocker.php CHANGED
@@ -217,7 +217,7 @@ class Blocker {
217
  foreach ($blockers as &$blocker) {
218
  // Ignore blockers with no connected cookies
219
  if (
220
- \count($blocker->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_COOKIES]) +
221
  \count($blocker->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS]) ===
222
  0
223
  ) {
@@ -231,7 +231,7 @@ class Blocker {
231
  /**
232
  * Allows you to add, modify or remove existing `AbstractBlockable` instances. For usual,
233
  * they get generated of published Content Blocker post types records. This allows you
234
- * to block for example by custom criteria (cookies, TCF vendor, ...).
235
  *
236
  * **Note**: This hook is called only once, cause the result is cached for performance reasons!
237
  *
217
  foreach ($blockers as &$blocker) {
218
  // Ignore blockers with no connected cookies
219
  if (
220
+ \count($blocker->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES]) +
221
  \count($blocker->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS]) ===
222
  0
223
  ) {
231
  /**
232
  * Allows you to add, modify or remove existing `AbstractBlockable` instances. For usual,
233
  * they get generated of published Content Blocker post types records. This allows you
234
+ * to block for example by custom criteria (services, TCF vendor, ...).
235
  *
236
  * **Note**: This hook is called only once, cause the result is cached for performance reasons!
237
  *
inc/view/ConfigPage.php CHANGED
@@ -51,10 +51,16 @@ class ConfigPage {
51
  'numberposts' => -1,
52
  'nopaging' => \true,
53
  'meta_query' => [
 
54
  [
55
- 'key' => \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY,
56
  'value' => '',
57
  'compare' => '='
 
 
 
 
 
58
  ]
59
  ],
60
  'post_status' => ['publish', 'private', 'draft']
51
  'numberposts' => -1,
52
  'nopaging' => \true,
53
  'meta_query' => [
54
+ 'relation' => 'OR',
55
  [
56
+ 'key' => \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL,
57
  'value' => '',
58
  'compare' => '='
59
+ ],
60
+ [
61
+ 'key' => \DevOwl\RealCookieBanner\settings\Cookie::META_NAME_PROVIDER_PRIVACY_POLICY_URL,
62
+ 'value' => '',
63
+ 'compare' => 'NOT EXISTS'
64
  ]
65
  ],
66
  'post_status' => ['publish', 'private', 'draft']
inc/view/blockable/BlockerPostType.php CHANGED
@@ -32,7 +32,7 @@ class BlockerPostType extends \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessCon
32
  public function __construct($headlessContentBlocker, $post) {
33
  parent::__construct($headlessContentBlocker);
34
  $this->post = $post;
35
- $this->appendFromStringArray($post->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_HOSTS]);
36
  }
37
  // Documented in Blockable
38
  public function getBlockerId() {
@@ -59,7 +59,7 @@ class BlockerPostType extends \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessCon
59
  }, $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS]);
60
  break;
61
  default:
62
- $cookieIds = $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_COOKIES];
63
  break;
64
  }
65
  return $cookieIds;
32
  public function __construct($headlessContentBlocker, $post) {
33
  parent::__construct($headlessContentBlocker);
34
  $this->post = $post;
35
+ $this->appendFromStringArray($post->metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_RULES]);
36
  }
37
  // Documented in Blockable
38
  public function getBlockerId() {
59
  }, $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_TCF_VENDORS]);
60
  break;
61
  default:
62
+ $cookieIds = $metas[\DevOwl\RealCookieBanner\settings\Blocker::META_NAME_SERVICES];
63
  break;
64
  }
65
  return $cookieIds;
inc/view/blocker/Plugin.php CHANGED
@@ -16,6 +16,7 @@ use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\Selecto
16
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\StyleInlineAttributeMatcher;
17
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\StyleInlineMatcher;
18
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\TagAttributeMatcher;
 
19
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\Autoplay;
20
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\CustomElementBlocker;
21
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\DoNotBlockScriptTextTemplates;
@@ -47,7 +48,10 @@ class Plugin extends \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlock
47
  $this->wpContentDir = \basename(\constant('WP_CONTENT_DIR'));
48
  $cb = $this->getHeadlessContentBlocker();
49
  $cb->addTagAttributeMap(
50
- [],
 
 
 
51
  [
52
  // [Plugin Comp] JetElements for Elementor
53
  'data-lazy-load'
@@ -161,6 +165,9 @@ class Plugin extends \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlock
161
  \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\CustomElementBlocker::class
162
  );
163
  $cb->addPlugin(\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\ReattachDom::class);
 
 
 
164
  /**
165
  * Plugin.
166
  *
16
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\StyleInlineAttributeMatcher;
17
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\StyleInlineMatcher;
18
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\matcher\TagAttributeMatcher;
19
+ use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\AdditionalAttributesBlocker;
20
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\Autoplay;
21
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\CustomElementBlocker;
22
  use DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\DoNotBlockScriptTextTemplates;
48
  $this->wpContentDir = \basename(\constant('WP_CONTENT_DIR'));
49
  $cb = $this->getHeadlessContentBlocker();
50
  $cb->addTagAttributeMap(
51
+ [
52
+ // [Plugin Comp] https://wordpress.org/plugins/presto-player/
53
+ 'presto-player'
54
+ ],
55
  [
56
  // [Plugin Comp] JetElements for Elementor
57
  'data-lazy-load'
165
  \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\CustomElementBlocker::class
166
  );
167
  $cb->addPlugin(\DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\ReattachDom::class);
168
+ \DevOwl\RealCookieBanner\Vendor\DevOwl\HeadlessContentBlocker\plugins\AdditionalAttributesBlocker::defaults(
169
+ $cb
170
+ );
171
  /**
172
  * Plugin.
173
  *
inc/view/checklist/ActivateBanner.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  use DevOwl\RealCookieBanner\settings\General;
7
  use DevOwl\RealCookieBanner\view\Checklist;
8
  use WP_REST_Request;
@@ -15,7 +14,6 @@ use WP_REST_Response;
15
  * Banner should be activated once.
16
  */
17
  class ActivateBanner extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
18
- use UtilsProvider;
19
  const IDENTIFIER = 'activate-banner';
20
  // Documented in AbstractChecklistItem
21
  public function isChecked() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  use DevOwl\RealCookieBanner\settings\General;
6
  use DevOwl\RealCookieBanner\view\Checklist;
7
  use WP_REST_Request;
14
  * Banner should be activated once.
15
  */
16
  class ActivateBanner extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
17
  const IDENTIFIER = 'activate-banner';
18
  // Documented in AbstractChecklistItem
19
  public function isChecked() {
inc/view/checklist/AddBlocker.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  // @codeCoverageIgnoreStart
7
  \defined('ABSPATH') or die('No script kiddies please!');
8
  // Avoid direct file request
@@ -11,7 +10,6 @@ use DevOwl\RealCookieBanner\base\UtilsProvider;
11
  * Add first content blocker to website.
12
  */
13
  class AddBlocker extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
14
- use UtilsProvider;
15
  const IDENTIFIER = 'add-blocker';
16
  // Documented in AbstractChecklistItem
17
  public function isChecked() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  // @codeCoverageIgnoreStart
6
  \defined('ABSPATH') or die('No script kiddies please!');
7
  // Avoid direct file request
10
  * Add first content blocker to website.
11
  */
12
  class AddBlocker extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
13
  const IDENTIFIER = 'add-blocker';
14
  // Documented in AbstractChecklistItem
15
  public function isChecked() {
inc/view/checklist/AddCookie.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  use DevOwl\RealCookieBanner\view\Checklist;
7
  use WP_Post;
8
  // @codeCoverageIgnoreStart
@@ -13,7 +12,6 @@ use WP_Post;
13
  * Add first cookie to website.
14
  */
15
  class AddCookie extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
16
- use UtilsProvider;
17
  const IDENTIFIER = 'add-cookie';
18
  // Documented in AbstractChecklistItem
19
  public function isChecked() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  use DevOwl\RealCookieBanner\view\Checklist;
6
  use WP_Post;
7
  // @codeCoverageIgnoreStart
12
  * Add first cookie to website.
13
  */
14
  class AddCookie extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
15
  const IDENTIFIER = 'add-cookie';
16
  // Documented in AbstractChecklistItem
17
  public function isChecked() {
inc/view/checklist/CustomizeBanner.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  use DevOwl\RealCookieBanner\view\BannerCustomize;
7
  // @codeCoverageIgnoreStart
8
  \defined('ABSPATH') or die('No script kiddies please!');
@@ -12,7 +11,6 @@ use DevOwl\RealCookieBanner\view\BannerCustomize;
12
  * The customize banner panel was opened once.
13
  */
14
  class CustomizeBanner extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
15
- use UtilsProvider;
16
  const IDENTIFIER = 'customize-banner';
17
  // Documented in AbstractChecklistItem
18
  public function isChecked() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  use DevOwl\RealCookieBanner\view\BannerCustomize;
6
  // @codeCoverageIgnoreStart
7
  \defined('ABSPATH') or die('No script kiddies please!');
11
  * The customize banner panel was opened once.
12
  */
13
  class CustomizeBanner extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
14
  const IDENTIFIER = 'customize-banner';
15
  // Documented in AbstractChecklistItem
16
  public function isChecked() {
inc/view/checklist/GetPro.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  // @codeCoverageIgnoreStart
7
  \defined('ABSPATH') or die('No script kiddies please!');
8
  // Avoid direct file request
@@ -11,7 +10,6 @@ use DevOwl\RealCookieBanner\base\UtilsProvider;
11
  * On lite version there should be a link to get pro version.
12
  */
13
  class GetPro extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
14
- use UtilsProvider;
15
  const IDENTIFIER = 'get-pro';
16
  // Documented in AbstractChecklistItem
17
  public function isChecked() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  // @codeCoverageIgnoreStart
6
  \defined('ABSPATH') or die('No script kiddies please!');
7
  // Avoid direct file request
10
  * On lite version there should be a link to get pro version.
11
  */
12
  class GetPro extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
13
  const IDENTIFIER = 'get-pro';
14
  // Documented in AbstractChecklistItem
15
  public function isChecked() {
inc/view/checklist/Install.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  // @codeCoverageIgnoreStart
7
  \defined('ABSPATH') or die('No script kiddies please!');
8
  // Avoid direct file request
@@ -11,7 +10,6 @@ use DevOwl\RealCookieBanner\base\UtilsProvider;
11
  * Is the plugin installed?
12
  */
13
  class Install extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
14
- use UtilsProvider;
15
  const IDENTIFIER = 'install';
16
  // Documented in AbstractChecklistItem
17
  public function isChecked() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  // @codeCoverageIgnoreStart
6
  \defined('ABSPATH') or die('No script kiddies please!');
7
  // Avoid direct file request
10
  * Is the plugin installed?
11
  */
12
  class Install extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
13
  const IDENTIFIER = 'install';
14
  // Documented in AbstractChecklistItem
15
  public function isChecked() {
inc/view/checklist/License.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  use DevOwl\RealCookieBanner\Core;
7
  use DevOwl\RealCookieBanner\DemoEnvironment;
8
  // @codeCoverageIgnoreStart
@@ -13,7 +12,6 @@ use DevOwl\RealCookieBanner\DemoEnvironment;
13
  * Is the plugin license activated?
14
  */
15
  class License extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
16
- use UtilsProvider;
17
  const IDENTIFIER = 'license';
18
  // Documented in AbstractChecklistItem
19
  public function isChecked() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  use DevOwl\RealCookieBanner\Core;
6
  use DevOwl\RealCookieBanner\DemoEnvironment;
7
  // @codeCoverageIgnoreStart
12
  * Is the plugin license activated?
13
  */
14
  class License extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
15
  const IDENTIFIER = 'license';
16
  // Documented in AbstractChecklistItem
17
  public function isChecked() {
inc/view/checklist/PrivacyPolicy.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  use DevOwl\RealCookieBanner\settings\General;
7
  // @codeCoverageIgnoreStart
8
  \defined('ABSPATH') or die('No script kiddies please!');
@@ -12,7 +11,6 @@ use DevOwl\RealCookieBanner\settings\General;
12
  * Is a privacy policy page set?
13
  */
14
  class PrivacyPolicy extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
15
- use UtilsProvider;
16
  const IDENTIFIER = 'privacy-policy';
17
  // Documented in AbstractChecklistItem
18
  public function isChecked() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  use DevOwl\RealCookieBanner\settings\General;
6
  // @codeCoverageIgnoreStart
7
  \defined('ABSPATH') or die('No script kiddies please!');
11
  * Is a privacy policy page set?
12
  */
13
  class PrivacyPolicy extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
14
  const IDENTIFIER = 'privacy-policy';
15
  // Documented in AbstractChecklistItem
16
  public function isChecked() {
inc/view/checklist/SaveSettings.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  use DevOwl\RealCookieBanner\presets\BlockerPresets;
7
  use DevOwl\RealCookieBanner\presets\CookiePresets;
8
  use DevOwl\RealCookieBanner\view\Checklist;
@@ -15,7 +14,6 @@ use WP_REST_Response;
15
  * Save settings for the first time.
16
  */
17
  class SaveSettings extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
18
- use UtilsProvider;
19
  const IDENTIFIER = 'save-settings';
20
  // Documented in AbstractChecklistItem
21
  public function isChecked() {
@@ -31,10 +29,7 @@ class SaveSettings extends \DevOwl\RealCookieBanner\view\checklist\AbstractCheck
31
  }
32
  // Documented in AbstractChecklistItem
33
  public function getDescription() {
34
- return __(
35
- 'Define the behavior of the cookie banner and hide the cookie banner both in the imprint and privacy policy (required by law).',
36
- RCB_TD
37
- );
38
  }
39
  // Documented in AbstractChecklistItem
40
  public function getLink() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  use DevOwl\RealCookieBanner\presets\BlockerPresets;
6
  use DevOwl\RealCookieBanner\presets\CookiePresets;
7
  use DevOwl\RealCookieBanner\view\Checklist;
14
  * Save settings for the first time.
15
  */
16
  class SaveSettings extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
17
  const IDENTIFIER = 'save-settings';
18
  // Documented in AbstractChecklistItem
19
  public function isChecked() {
29
  }
30
  // Documented in AbstractChecklistItem
31
  public function getDescription() {
32
+ return __('Decide which features should be enabled in your cookie banner depending on your needs.', RCB_TD);
 
 
 
33
  }
34
  // Documented in AbstractChecklistItem
35
  public function getLink() {
inc/view/checklist/Scanner.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  use DevOwl\RealCookieBanner\scanner\AutomaticScanStarter;
7
  // @codeCoverageIgnoreStart
8
  \defined('ABSPATH') or die('No script kiddies please!');
@@ -12,7 +11,6 @@ use DevOwl\RealCookieBanner\scanner\AutomaticScanStarter;
12
  * Is the scanner started once?
13
  */
14
  class Scanner extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
15
- use UtilsProvider;
16
  const IDENTIFIER = 'scanner';
17
  // Documented in AbstractChecklistItem
18
  public function isChecked() {
@@ -26,7 +24,7 @@ class Scanner extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistI
26
  // Documented in AbstractChecklistItem
27
  public function getDescription() {
28
  return __(
29
- 'Scan your website to identify services used and external URLs that may transmit personal data.',
30
  RCB_TD
31
  );
32
  }
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  use DevOwl\RealCookieBanner\scanner\AutomaticScanStarter;
6
  // @codeCoverageIgnoreStart
7
  \defined('ABSPATH') or die('No script kiddies please!');
11
  * Is the scanner started once?
12
  */
13
  class Scanner extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
14
  const IDENTIFIER = 'scanner';
15
  // Documented in AbstractChecklistItem
16
  public function isChecked() {
24
  // Documented in AbstractChecklistItem
25
  public function getDescription() {
26
  return __(
27
+ 'Scan your website to identify services used and external URLs that may transmit personal data and/or set cookies.',
28
  RCB_TD
29
  );
30
  }
inc/view/checklist/Shortcode.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  // @codeCoverageIgnoreStart
7
  \defined('ABSPATH') or die('No script kiddies please!');
8
  // Avoid direct file request
@@ -13,7 +12,6 @@ use DevOwl\RealCookieBanner\base\UtilsProvider;
13
  * For backwards-compatibility this class is still named for "Shortcode" but it should be "Legal links" instead.
14
  */
15
  class Shortcode extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
16
- use UtilsProvider;
17
  const IDENTIFIER = 'legal-shortcodes';
18
  // Documented in AbstractChecklistItem
19
  public function isChecked() {
@@ -30,7 +28,7 @@ class Shortcode extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklis
30
  // Documented in AbstractChecklistItem
31
  public function getDescription() {
32
  return __(
33
- 'Your website visitors must be able to view their consent history, change their consent, or withdraw their consent at any time. This must be as easy as giving consent. Therefore, the shortcodes must be included on every subpage of the website (e.g. in the footer).',
34
  RCB_TD
35
  );
36
  }
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  // @codeCoverageIgnoreStart
6
  \defined('ABSPATH') or die('No script kiddies please!');
7
  // Avoid direct file request
12
  * For backwards-compatibility this class is still named for "Shortcode" but it should be "Legal links" instead.
13
  */
14
  class Shortcode extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
15
  const IDENTIFIER = 'legal-shortcodes';
16
  // Documented in AbstractChecklistItem
17
  public function isChecked() {
28
  // Documented in AbstractChecklistItem
29
  public function getDescription() {
30
  return __(
31
+ 'Your website visitors must be able to view their consent history, change their consent, or withdraw their consent at any time. This must be as easy as giving consent. Therefore, the legal links must be included on every subpage of the website (e.g. in the footer).',
32
  RCB_TD
33
  );
34
  }
inc/view/checklist/ViewStats.php CHANGED
@@ -2,7 +2,6 @@
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
5
- use DevOwl\RealCookieBanner\base\UtilsProvider;
6
  // @codeCoverageIgnoreStart
7
  \defined('ABSPATH') or die('No script kiddies please!');
8
  // Avoid direct file request
@@ -11,7 +10,6 @@ use DevOwl\RealCookieBanner\base\UtilsProvider;
11
  * The statistics should be opened once.
12
  */
13
  class ViewStats extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
14
- use UtilsProvider;
15
  const IDENTIFIER = 'view-stats';
16
  // Documented in AbstractChecklistItem
17
  public function isChecked() {
2
 
3
  namespace DevOwl\RealCookieBanner\view\checklist;
4
 
 
5
  // @codeCoverageIgnoreStart
6
  \defined('ABSPATH') or die('No script kiddies please!');
7
  // Avoid direct file request
10
  * The statistics should be opened once.
11
  */
12
  class ViewStats extends \DevOwl\RealCookieBanner\view\checklist\AbstractChecklistItem {
 
13
  const IDENTIFIER = 'view-stats';
14
  // Documented in AbstractChecklistItem
15
  public function isChecked() {
inc/view/customize/banner/BasicLayout.php CHANGED
@@ -4,6 +4,7 @@ namespace DevOwl\RealCookieBanner\view\customize\banner;
4
 
5
  use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\AbstractCustomizePanel;
6
  use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\controls\CssMarginInput;
 
7
  use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\controls\Headline;
8
  use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\controls\RangeInput;
9
  use DevOwl\RealCookieBanner\base\UtilsProvider;
@@ -20,6 +21,7 @@ use WP_Customize_Color_Control;
20
  class BasicLayout {
21
  use UtilsProvider;
22
  const SECTION = \DevOwl\RealCookieBanner\view\BannerCustomize::PANEL_MAIN . '-layout';
 
23
  const HEADLINE_OVERLAY = self::SECTION . '-headline-overlay';
24
  const HEADLINE_ANIMATION_IN = self::SECTION . '-headline-animation-in';
25
  const HEADLINE_ANIMATION_OUT = self::SECTION . '-headline-animation-out';
@@ -64,6 +66,13 @@ class BasicLayout {
64
  * Return arguments for this section.
65
  */
66
  public function args() {
 
 
 
 
 
 
 
67
  return [
68
  'name' => 'layout',
69
  'title' => __('Basic Layout', RCB_TD),
@@ -149,6 +158,11 @@ class BasicLayout {
149
  'choices' => $this->getAvailableAnimations(),
150
  'setting' => ['default' => self::DEFAULT_ANIMATION_IN]
151
  ],
 
 
 
 
 
152
  self::SETTING_ANIMATION_IN_DURATION => [
153
  'name' => 'animationInDuration',
154
  'label' => __('Duration', RCB_TD),
4
 
5
  use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\AbstractCustomizePanel;
6
  use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\controls\CssMarginInput;
7
+ use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\controls\CustomHTML;
8
  use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\controls\Headline;
9
  use DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\controls\RangeInput;
10
  use DevOwl\RealCookieBanner\base\UtilsProvider;
21
  class BasicLayout {
22
  use UtilsProvider;
23
  const SECTION = \DevOwl\RealCookieBanner\view\BannerCustomize::PANEL_MAIN . '-layout';
24
+ const CUSTOM_HTML_ANIMATION_IN_CLS_NOTICE = self::SECTION . '-custom-html-animation-in-cls-notice';
25
  const HEADLINE_OVERLAY = self::SECTION . '-headline-overlay';
26
  const HEADLINE_ANIMATION_IN = self::SECTION . '-headline-animation-in';
27
  const HEADLINE_ANIMATION_OUT = self::SECTION . '-headline-animation-out';
66
  * Return arguments for this section.
67
  */
68
  public function args() {
69
+ $textAnimationInClsNotice = \sprintf(
70
+ '<div class="notice notice-warning inline below-h2 notice-alt" style="margin: 10px 0 0 0"><p>%s</p></div>',
71
+ __(
72
+ 'The animation you choose will have a negative impact on your PageSpeed Insights score. Please choose an animation where the cookie banner is animated from outside the website to achieve the best website loading speed!',
73
+ RCB_TD
74
+ )
75
+ );
76
  return [
77
  'name' => 'layout',
78
  'title' => __('Basic Layout', RCB_TD),
158
  'choices' => $this->getAvailableAnimations(),
159
  'setting' => ['default' => self::DEFAULT_ANIMATION_IN]
160
  ],
161
+ self::CUSTOM_HTML_ANIMATION_IN_CLS_NOTICE => [
162
+ 'class' => \DevOwl\RealCookieBanner\Vendor\DevOwl\Customize\controls\CustomHTML::class,
163
+ 'name' => 'customHtmlLayoutAnimationInClsNotice',
164
+ 'description' => $textAnimationInClsNotice
165
+ ],
166
  self::SETTING_ANIMATION_IN_DURATION => [
167
  'name' => 'animationInDuration',
168
  'label' => __('Duration', RCB_TD),
inc/view/customize/banner/BodyDesign.php CHANGED
@@ -504,9 +504,13 @@ class BodyDesign {
504
  self::SETTING_BUTTON_ACCEPT_ESSENTIALS_USE_ACCEPT_ALL => [
505
  'name' => 'acceptEssentialsUseAcceptAll',
506
  'label' => __('Use the same stylings as for "Accept all"', RCB_TD),
507
- 'description' => __(
508
- 'According to the <a href="https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf" target="_blank">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Equivalent does not necessarily mean that the buttons/links must look exactly the same. However, you should be safest if they look exactly the same.',
509
- RCB_TD
 
 
 
 
510
  ),
511
  'type' => 'checkbox',
512
  'setting' => [
504
  self::SETTING_BUTTON_ACCEPT_ESSENTIALS_USE_ACCEPT_ALL => [
505
  'name' => 'acceptEssentialsUseAcceptAll',
506
  'label' => __('Use the same stylings as for "Accept all"', RCB_TD),
507
+ 'description' => \sprintf(
508
+ // translators:
509
+ __(
510
+ 'According to the <a href="%s" target="_blank">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Equivalent does not necessarily mean that the buttons/links must look exactly the same. However, you should be safest if they look exactly the same.',
511
+ RCB_TD
512
+ ),
513
+ __('https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf', RCB_TD)
514
  ),
515
  'type' => 'checkbox',
516
  'setting' => [
inc/view/customize/banner/Decision.php CHANGED
@@ -111,10 +111,10 @@ class Decision {
111
  'description' => \sprintf(
112
  // translators:
113
  __(
114
- 'According to the GDPR (%1$sEU 2016/679%2$s), section 32, you are not allowed to pre-select services in the form of pre-selected checkboxes for the visitor. However, the GDPR and ePrivacy Directive do not prohibit the use of a button to agree to all services, if there is also a button to agree only to the essential services or to make a user-defined selection.',
115
  RCB_TD
116
  ),
117
- '<a href="https://eur-lex.europa.eu/eli/reg/2016/679/oj?locale=en" target="_blank">',
118
  '</a>'
119
  ),
120
  'type' => 'select',
@@ -171,7 +171,7 @@ class Decision {
171
  'name' => 'acceptIndividual',
172
  'label' => __('Individual privacy preferences', RCB_TD),
173
  'description' => __(
174
- 'According to the GDPR (EU 2016/679) and the ePrivacy Directive (EU 2009/136/EC), the user must be free to choose which services to use and be informed about their purpose before giving consent. Therefore, the user must be given the opportunity to access the page with the individual privacy settings.',
175
  RCB_TD
176
  ),
177
  'type' => 'select',
@@ -190,9 +190,13 @@ class Decision {
190
  self::SETTING_BUTTON_ORDER => [
191
  'name' => 'buttonOrder',
192
  'label' => __('Order of the buttons', RCB_TD),
193
- 'description' => __(
194
- 'According to the <a href="https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf" target="_blank">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Which order of options is considered equivalent is unclear. Therefore, the options should be arranged according to the cultural conditions of the main target country.',
195
- RCB_TD
 
 
 
 
196
  ),
197
  'type' => 'select',
198
  'choices' => self::getButtonOrderPermutations(),
@@ -253,13 +257,13 @@ class Decision {
253
  \array_map(function ($button) {
254
  switch ($button) {
255
  case 'all':
256
- return __('Accept all', RCB_TD);
257
  case 'essential':
258
- return __('Continue without consent', RCB_TD);
259
  case 'individual':
260
- return __('Individual privacy preferences', RCB_TD);
261
  case 'save':
262
- return __('Save custom choices', RCB_TD);
263
  default:
264
  return '';
265
  }
111
  'description' => \sprintf(
112
  // translators:
113
  __(
114
+ 'According to the %1$sGDPR recital 32%2$s, you are not allowed to pre-select services in the form of pre-selected checkboxes for the visitor. However, the GDPR and ePrivacy Directive do not prohibit the use of a button to agree to all services, if there is also a button to agree only to the essential services or to make a user-defined selection.',
115
  RCB_TD
116
  ),
117
+ '<a href="' . __('https://gdpr-info.eu/recitals/no-32/', RCB_TD) . '" target="_blank">',
118
  '</a>'
119
  ),
120
  'type' => 'select',
171
  'name' => 'acceptIndividual',
172
  'label' => __('Individual privacy preferences', RCB_TD),
173
  'description' => __(
174
+ 'According to the GDPR and the ePrivacy Directive, the user must be free to choose which services to use and be informed about their purpose before giving consent. Therefore, the user must be given the opportunity to access the page with the individual privacy settings.',
175
  RCB_TD
176
  ),
177
  'type' => 'select',
190
  self::SETTING_BUTTON_ORDER => [
191
  'name' => 'buttonOrder',
192
  'label' => __('Order of the buttons', RCB_TD),
193
+ 'description' => \sprintf(
194
+ // translators:
195
+ __(
196
+ 'According to the <a href="%s" target="_blank">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Which order of options is considered equivalent is unclear. Therefore, the options should be arranged according to the cultural conditions of the main target country.',
197
+ RCB_TD
198
+ ),
199
+ __('https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf', RCB_TD)
200
  ),
201
  'type' => 'select',
202
  'choices' => self::getButtonOrderPermutations(),
257
  \array_map(function ($button) {
258
  switch ($button) {
259
  case 'all':
260
+ return _x('Accept all', 'legal-text', RCB_TD);
261
  case 'essential':
262
+ return _x('Continue without consent', 'legal-text', RCB_TD);
263
  case 'individual':
264
+ return _x('Individual privacy preferences', 'legal-text', RCB_TD);
265
  case 'save':
266
+ return _x('Save custom choices', 'legal-text', RCB_TD);
267
  default:
268
  return '';
269
  }
inc/view/customize/banner/Texts.php CHANGED
@@ -129,12 +129,7 @@ class Texts {
129
  'label' => __('US data processing', RCB_TD),
130
  'level' => 3,
131
  'isSubHeadline' => \true,
132
- 'description' => $ePrivacyUSAEnabled
133
- ? __(
134
- 'Use <code>{{services}}</code> as a placeholder to show all services that process data in the USA.',
135
- RCB_TD
136
- )
137
- : $this->getEPrivacyUSANotice()
138
  ],
139
  self::SETTING_EPRIVACY_USA => [
140
  'name' => 'ePrivacyUSA',
@@ -280,9 +275,16 @@ class Texts {
280
  * Return HTML for the customize description about "Texts" at the top.
281
  */
282
  public static function getDescription() {
283
- return __(
284
- 'The standard texts in the cookie banner are worded carefully. If you customize them, make sure they are not misleading or riveting. According to the <a href="https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/#13_informiertheit)" target="_blank">Data Protection Commissioner of Baden-Württeberg, Germany (Section B, 1.3.7.; German)</a>, for example, a headline "We love cookies" is already misleading.',
285
- RCB_TD
 
 
 
 
 
 
 
286
  );
287
  }
288
  /**
@@ -384,63 +386,80 @@ class Texts {
384
  public static function getDefaultButtonTexts() {
385
  $tempTd = \DevOwl\RealCookieBanner\comp\language\Hooks::getInstance()->createTemporaryTextDomain();
386
  $defaults = [
387
- 'headline' => __('Privacy preferences', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED),
 
 
 
 
388
  'description' => \sprintf(
389
  '%s<br/><br/>%s',
390
- __(
391
  'We use cookies and similar technologies on our website and process your personal data (e.g. IP address), for example, to personalize content and ads, to integrate media from third-party providers or to analyze traffic on our website. Data processing may also happen as a result of cookies being set. We share this data with third parties that we name in the privacy settings.',
 
392
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
393
  ),
394
- __(
395
  'The data processing may take place with your consent or on the basis of a legitimate interest, which you can object to in the privacy settings. You have the right not to consent and to change or revoke your consent at a later time. For more information on the use of your data, please visit our {{privacyPolicy}}privacy policy{{/privacyPolicy}}.',
 
396
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
397
  )
398
  ),
399
- 'acceptAll' => __('Accept all', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED),
400
- 'acceptEssentials' => __(
401
  'Continue without consent',
 
402
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
403
  ),
404
- 'acceptIndividual' => __(
405
  'Set privacy settings individually',
 
406
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
407
  ),
408
- 'ePrivacyUSA' => __(
409
  'Some services process personal data in the USA. By consenting to the use of these services, you also consent to the processing of your data in the USA in accordance with Art. 49 (1) lit. a GDPR. The USA is considered by the ECJ to be a country with an insufficient level of data protection according to EU standards. In particular, there is a risk that your data will be processed by US authorities for control and monitoring purposes, perhaps without the possibility of a legal recourse.',
 
410
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
411
  ),
412
- 'ageNoticeBanner' => __(
413
  'You are under 16 years old? Then you cannot consent to optional services. Ask your parents or legal guardians to agree to these services with you.',
 
414
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
415
  ),
416
- 'ageNoticeBlocker' => __(
417
  'You are under 16 years old? Unfortunately, you are not permitted to consent to this service to view this content. Please ask your parents or guardians to agree to the service with you!',
 
418
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
419
  ),
420
- 'listServicesNotice' => __(
421
  'By accepting all services, you allow {{services}} to be loaded. These services are divided into groups {{serviceGroups}} according to their purpose (belonging marked with superscript numbers).',
 
422
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
423
  ),
424
- 'consentForwardingExternalHosts' => __(
425
  'Your consent is also applicable on {{websites}}.',
 
426
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
427
  ),
428
  'poweredBy' => self::getRandomPoweredByText(),
429
  // translators:
430
- 'blockerHeadline' => __(
431
  '{{name}} blocked due to privacy settings',
 
432
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
433
  ),
434
- 'blockerLinkShowMissing' => __(
435
  'Show all services you still need to agree to',
 
436
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
437
  ),
438
- 'blockerLoadButton' => __(
439
  'Accept required services and load content',
 
440
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
441
  ),
442
- 'blockerAcceptInfo' => __(
443
  'Loading the blocked content will adjust your privacy settings. Content from this service will not be blocked in the future. You have the right to revoke or change your decision at any time.',
 
444
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
445
  )
446
  ];
@@ -516,11 +535,16 @@ class Texts {
516
  \DevOwl\RealCookieBanner\Core::getInstance()
517
  ->getCompLanguage()
518
  ->translateArray([
519
- 'blockerHeadline' => __('{{name}} blocked due to privacy settings', RCB_TD),
520
- 'blockerLinkShowMissing' => __('Show all services you still need to agree to', RCB_TD),
521
- 'blockerLoadButton' => __('Accept required services and load content', RCB_TD),
522
- 'blockerAcceptInfo' => __(
 
 
 
 
523
  'Loading the blocked content will adjust your privacy settings. Content from this service will not be blocked in the future. You have the right to revoke or change your decision at any time.',
 
524
  RCB_TD
525
  )
526
  ])
129
  'label' => __('US data processing', RCB_TD),
130
  'level' => 3,
131
  'isSubHeadline' => \true,
132
+ 'description' => $ePrivacyUSAEnabled ? '' : $this->getEPrivacyUSANotice()
 
 
 
 
 
133
  ],
134
  self::SETTING_EPRIVACY_USA => [
135
  'name' => 'ePrivacyUSA',
275
  * Return HTML for the customize description about "Texts" at the top.
276
  */
277
  public static function getDescription() {
278
+ return \sprintf(
279
+ // translators:
280
+ __(
281
+ 'The standard texts in the cookie banner are worded carefully. If you customize them, make sure they are not misleading or riveting. According to the <a href="%s" target="_blank">Data Protection Commissioner of Baden-Württeberg, Germany (Section B, 1.3.7.; German)</a>, for example, a headline "We love cookies" is already misleading.',
282
+ RCB_TD
283
+ ),
284
+ __(
285
+ 'https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/#13_informiertheit)',
286
+ RCB_TD
287
+ )
288
  );
289
  }
290
  /**
386
  public static function getDefaultButtonTexts() {
387
  $tempTd = \DevOwl\RealCookieBanner\comp\language\Hooks::getInstance()->createTemporaryTextDomain();
388
  $defaults = [
389
+ 'headline' => _x(
390
+ 'Privacy preferences',
391
+ 'legal-text',
392
+ \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
393
+ ),
394
  'description' => \sprintf(
395
  '%s<br/><br/>%s',
396
+ _x(
397
  'We use cookies and similar technologies on our website and process your personal data (e.g. IP address), for example, to personalize content and ads, to integrate media from third-party providers or to analyze traffic on our website. Data processing may also happen as a result of cookies being set. We share this data with third parties that we name in the privacy settings.',
398
+ 'legal-text',
399
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
400
  ),
401
+ _x(
402
  'The data processing may take place with your consent or on the basis of a legitimate interest, which you can object to in the privacy settings. You have the right not to consent and to change or revoke your consent at a later time. For more information on the use of your data, please visit our {{privacyPolicy}}privacy policy{{/privacyPolicy}}.',
403
+ 'legal-text',
404
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
405
  )
406
  ),
407
+ 'acceptAll' => _x('Accept all', 'legal-text', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED),
408
+ 'acceptEssentials' => _x(
409
  'Continue without consent',
410
+ 'legal-text',
411
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
412
  ),
413
+ 'acceptIndividual' => _x(
414
  'Set privacy settings individually',
415
+ 'legal-text',
416
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
417
  ),
418
+ 'ePrivacyUSA' => _x(
419
  'Some services process personal data in the USA. By consenting to the use of these services, you also consent to the processing of your data in the USA in accordance with Art. 49 (1) lit. a GDPR. The USA is considered by the ECJ to be a country with an insufficient level of data protection according to EU standards. In particular, there is a risk that your data will be processed by US authorities for control and monitoring purposes, perhaps without the possibility of a legal recourse.',
420
+ 'legal-text',
421
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
422
  ),
423
+ 'ageNoticeBanner' => _x(
424
  'You are under 16 years old? Then you cannot consent to optional services. Ask your parents or legal guardians to agree to these services with you.',
425
+ 'legal-text',
426
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
427
  ),
428
+ 'ageNoticeBlocker' => _x(
429
  'You are under 16 years old? Unfortunately, you are not permitted to consent to this service to view this content. Please ask your parents or guardians to agree to the service with you!',
430
+ 'legal-text',
431
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
432
  ),
433
+ 'listServicesNotice' => _x(
434
  'By accepting all services, you allow {{services}} to be loaded. These services are divided into groups {{serviceGroups}} according to their purpose (belonging marked with superscript numbers).',
435
+ 'legal-text',
436
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
437
  ),
438
+ 'consentForwardingExternalHosts' => _x(
439
  'Your consent is also applicable on {{websites}}.',
440
+ 'legal-text',
441
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
442
  ),
443
  'poweredBy' => self::getRandomPoweredByText(),
444
  // translators:
445
+ 'blockerHeadline' => _x(
446
  '{{name}} blocked due to privacy settings',
447
+ 'legal-text',
448
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
449
  ),
450
+ 'blockerLinkShowMissing' => _x(
451
  'Show all services you still need to agree to',
452
+ 'legal-text',
453
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
454
  ),
455
+ 'blockerLoadButton' => _x(
456
  'Accept required services and load content',
457
+ 'legal-text',
458
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
459
  ),
460
+ 'blockerAcceptInfo' => _x(
461
  'Loading the blocked content will adjust your privacy settings. Content from this service will not be blocked in the future. You have the right to revoke or change your decision at any time.',
462
+ 'legal-text',
463
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
464
  )
465
  ];
535
  \DevOwl\RealCookieBanner\Core::getInstance()
536
  ->getCompLanguage()
537
  ->translateArray([
538
+ 'blockerHeadline' => _x('{{name}} blocked due to privacy settings', 'legal-text', RCB_TD),
539
+ 'blockerLinkShowMissing' => _x(
540
+ 'Show all services you still need to agree to',
541
+ 'legal-text',
542
+ RCB_TD
543
+ ),
544
+ 'blockerLoadButton' => _x('Accept required services and load content', 'legal-text', RCB_TD),
545
+ 'blockerAcceptInfo' => _x(
546
  'Loading the blocked content will adjust your privacy settings. Content from this service will not be blocked in the future. You have the right to revoke or change your decision at any time.',
547
+ 'legal-text',
548
  RCB_TD
549
  )
550
  ])
inc/view/customize/banner/individual/SaveButton.php CHANGED
@@ -62,9 +62,13 @@ class SaveButton {
62
  self::SETTING_USE_ACCEPT_ALL => [
63
  'name' => 'useAcceptAll',
64
  'label' => __('Use the same stylings as for "Accept all"', RCB_TD),
65
- 'description' => __(
66
- 'According to the <a href="https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf" target="_blank">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Equivalent does not necessarily mean that the buttons/links must look exactly the same. However, you should be safest if they look exactly the same.',
67
- RCB_TD
 
 
 
 
68
  ),
69
  'type' => 'checkbox',
70
  'setting' => [
62
  self::SETTING_USE_ACCEPT_ALL => [
63
  'name' => 'useAcceptAll',
64
  'label' => __('Use the same stylings as for "Accept all"', RCB_TD),
65
+ 'description' => \sprintf(
66
+ // translators:
67
+ __(
68
+ 'According to the <a href="%s" target="_blank">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Equivalent does not necessarily mean that the buttons/links must look exactly the same. However, you should be safest if they look exactly the same.',
69
+ RCB_TD
70
+ ),
71
+ __('https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf', RCB_TD)
72
  ),
73
  'type' => 'checkbox',
74
  'setting' => [
inc/view/customize/banner/individual/Texts.php CHANGED
@@ -86,25 +86,40 @@ class Texts {
86
  public static function getDefaultButtonTexts() {
87
  $tempTd = \DevOwl\RealCookieBanner\comp\language\Hooks::getInstance()->createTemporaryTextDomain();
88
  $defaults = [
89
- 'headline' => __('Individual privacy preferences', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED),
 
 
 
 
90
  'description' => \sprintf(
91
  '%s<br/><br/>%s<br/><br/>%s',
92
- __(
93
  'We use cookies and similar technologies on our website and process your personal data (e.g. IP address), for example, to personalize content and ads, to integrate media from third-party providers or to analyze traffic on our website. Data processing may also happen as a result of cookies being set. We share this data with third parties that we name in the privacy settings.',
 
94
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
95
  ),
96
- __(
97
  'The data processing may take place with your consent or on the basis of a legitimate interest, which you can object to in the privacy settings. You have the right not to consent and to change or revoke your consent at a later time. For more information on the use of your data, please visit our {{privacyPolicy}}privacy policy{{/privacyPolicy}}.',
 
98
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
99
  ),
100
- __(
101
  'Below you will find an overview of all services used by this website. You can view detailed information about each service and agree to them individually or exercise your right to object.',
 
102
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
103
  )
104
  ),
105
- 'save' => __('Save custom choices', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED),
106
- 'showMore' => __('Show service information', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED),
107
- 'hideMore' => __('Hide service information', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED)
 
 
 
 
 
 
 
 
108
  ];
109
  $tempTd->teardown();
110
  return $defaults;
86
  public static function getDefaultButtonTexts() {
87
  $tempTd = \DevOwl\RealCookieBanner\comp\language\Hooks::getInstance()->createTemporaryTextDomain();
88
  $defaults = [
89
+ 'headline' => _x(
90
+ 'Individual privacy preferences',
91
+ 'legal-text',
92
+ \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
93
+ ),
94
  'description' => \sprintf(
95
  '%s<br/><br/>%s<br/><br/>%s',
96
+ _x(
97
  'We use cookies and similar technologies on our website and process your personal data (e.g. IP address), for example, to personalize content and ads, to integrate media from third-party providers or to analyze traffic on our website. Data processing may also happen as a result of cookies being set. We share this data with third parties that we name in the privacy settings.',
98
+ 'legal-text',
99
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
100
  ),
101
+ _x(
102
  'The data processing may take place with your consent or on the basis of a legitimate interest, which you can object to in the privacy settings. You have the right not to consent and to change or revoke your consent at a later time. For more information on the use of your data, please visit our {{privacyPolicy}}privacy policy{{/privacyPolicy}}.',
103
+ 'legal-text',
104
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
105
  ),
106
+ _x(
107
  'Below you will find an overview of all services used by this website. You can view detailed information about each service and agree to them individually or exercise your right to object.',
108
+ 'legal-text',
109
  \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
110
  )
111
  ),
112
+ 'save' => _x('Save custom choices', 'legal-text', \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED),
113
+ 'showMore' => _x(
114
+ 'Show service information',
115
+ 'legal-text',
116
+ \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
117
+ ),
118
+ 'hideMore' => _x(
119
+ 'Hide service information',
120
+ 'legal-text',
121
+ \DevOwl\RealCookieBanner\comp\language\Hooks::TD_FORCED
122
+ )
123
  ];
124
  $tempTd->teardown();
125
  return $defaults;
inc/view/navmenu/NavMenuLinks.php CHANGED
@@ -103,19 +103,20 @@ class NavMenuLinks {
103
  $fnCalculateResult = function ($domain) use (&$result) {
104
  $result = [
105
  '#consent-change' => [
106
- 'label' => __('Change privacy settings', RCB_TD),
107
- 'linkText' => __('Change privacy settings', $domain)
108
  ],
109
  '#consent-history' => [
110
- 'label' => __('Privacy settings history', RCB_TD),
111
- 'linkText' => __('Privacy settings history', $domain)
112
  ],
113
  '#consent-revoke' => [
114
- 'label' => __('Revoke consents', RCB_TD),
115
- 'linkText' => __('Revoke consents', $domain),
116
  'meta' => [
117
- self::META_SUCCESS_MESSAGE_META_NAME => __(
118
  'You have successfully revoked the consent. The page will be reloaded now.',
 
119
  $domain
120
  )
121
  ]
103
  $fnCalculateResult = function ($domain) use (&$result) {
104
  $result = [
105
  '#consent-change' => [
106
+ 'label' => _x('Change privacy settings', 'legal-text', RCB_TD),
107
+ 'linkText' => _x('Change privacy settings', 'legal-text', $domain)
108
  ],
109
  '#consent-history' => [
110
+ 'label' => _x('Privacy settings history', 'legal-text', RCB_TD),
111
+ 'linkText' => _x('Privacy settings history', 'legal-text', $domain)
112
  ],
113
  '#consent-revoke' => [
114
+ 'label' => _x('Revoke consents', 'legal-text', RCB_TD),
115
+ 'linkText' => _x('Revoke consents', 'legal-text', $domain),
116
  'meta' => [
117
+ self::META_SUCCESS_MESSAGE_META_NAME => _x(
118
  'You have successfully revoked the consent. The page will be reloaded now.',
119
+ 'legal-text',
120
  $domain
121
  )
122
  ]
index.php CHANGED
@@ -8,7 +8,7 @@
8
  * Description: Obtain GDPR (DSGVO) and ePrivacy (EU cookie law) compliant opt-in consent. Find cookies and fill all legal information in your cookie banner. More than just a cookie notice!
9
  * Author: devowl.io
10
  * Author URI: https://devowl.io
11
- * Version: 3.0.2
12
  * Text Domain: real-cookie-banner
13
  * Domain Path: /languages
14
  */
8
  * Description: Obtain GDPR (DSGVO) and ePrivacy (EU cookie law) compliant opt-in consent. Find cookies and fill all legal information in your cookie banner. More than just a cookie notice!
9
  * Author: devowl.io
10
  * Author URI: https://devowl.io
11
+ * Version: 3.1.0
12
  * Text Domain: real-cookie-banner
13
  * Domain Path: /languages
14
  */
languages/real-cookie-banner-de_AT.mo CHANGED
Binary file
languages/real-cookie-banner-de_AT.po CHANGED
@@ -2,16 +2,16 @@ msgid ""
2
  msgstr ""
3
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
4
  "POT-Creation-Date: n/a\n"
5
- "PO-Revision-Date: 2022-06-13 06:58+0000\n"
6
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
7
- "Language-Team: German <https://translate.devowl.io/projects/wordpress-real-"
8
- "cookie-banner-backend-php/develop/de/>\n"
9
  "Language: de_AT\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
- "X-Generator: Weblate 4.8\n"
15
 
16
  #. Plugin Name of the plugin
17
  msgid "Real Cookie Banner"
@@ -172,22 +172,27 @@ msgstr ""
172
  "heruntergeladen, wodurch weitere rechtliche Probleme vermieden werden."
173
 
174
  #: inc/Assets.php:1
 
175
  msgid "Use on legal basis of"
176
  msgstr "Verwendung auf gesetzlicher Grundlage von"
177
 
178
  #: inc/Assets.php:1
 
179
  msgid "Legitimate interest"
180
  msgstr "Berechtigtes Interesse"
181
 
182
  #: inc/Assets.php:1
 
183
  msgid "Compliance with a legal obligation"
184
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
185
 
186
  #: inc/Assets.php:1
 
187
  msgid "Consent"
188
  msgstr "Einwilligung"
189
 
190
  #: inc/Assets.php:1
 
191
  msgid ""
192
  "We have recognized that you are a crawler/bot. Only natural persons must "
193
  "consent to cookies and processing of personal data. Therefore, the link has "
@@ -198,18 +203,22 @@ msgstr ""
198
  "einwilligen. Daher hat der Link für dich keine Funktion."
199
 
200
  #: inc/Assets.php:1
 
201
  msgid "Technical cookie definition"
202
  msgstr "Technische Cookie-Definition"
203
 
204
  #: inc/Assets.php:1
 
205
  msgid "Uses cookies"
206
  msgstr "Verwendete Cookies"
207
 
208
  #: inc/Assets.php:1
 
209
  msgid "Cookie refresh"
210
  msgstr "Cookie-Auffrischung"
211
 
212
  #: inc/Assets.php:1
 
213
  msgid ""
214
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
215
  msgstr ""
@@ -217,10 +226,12 @@ msgstr ""
217
  "IndexDB, etc.)"
218
 
219
  #: inc/Assets.php:1
 
220
  msgid "Host"
221
  msgstr "Host"
222
 
223
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
 
224
  msgid "Duration"
225
  msgstr "Dauer"
226
 
@@ -249,28 +260,32 @@ msgid "year(s)"
249
  msgstr "Jahr(e)"
250
 
251
  #: inc/Assets.php:1
 
252
  msgid "No expiration"
253
  msgstr "Kein Ablauf"
254
 
255
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
256
- #: inc/view/customize/banner/BodyDesign.php:1
257
- #: inc/view/customize/banner/individual/SaveButton.php:1
258
  msgid "Type"
259
  msgstr "Typ"
260
 
261
  #: inc/Assets.php:1
 
262
  msgid "Purpose"
263
  msgstr "Zweck"
264
 
265
  #: inc/Assets.php:1
 
266
  msgid "History of your privacy settings"
267
  msgstr "Privatsphäre-Einstellungen: Historie"
268
 
269
  #: inc/Assets.php:1
 
270
  msgid "Show consent from"
271
  msgstr "Einwilligungen anzeigen vom"
272
 
273
  #: inc/Assets.php:1
 
274
  msgid "Not yet consented to"
275
  msgstr "Noch nicht eingewilligt"
276
 
@@ -283,20 +298,24 @@ msgid "Close without saving"
283
  msgstr "Schließen ohne Speichern"
284
 
285
  #: inc/Assets.php:1
 
286
  msgid "Provider"
287
  msgstr "Anbieter"
288
 
289
  #: inc/Assets.php:1
 
290
  msgid "Privacy Policy"
291
  msgstr "Datenschutzerklärung"
292
 
293
  #. translators:
294
  #: inc/Assets.php:1
 
295
  msgid "and %d more"
296
  msgstr "und %d mehr"
297
 
298
  #. translators:
299
- #: inc/Assets.php:1 inc/view/customize/banner/Texts.php:1
 
300
  msgid "US data processing"
301
  msgstr "US-Datenverarbeitung"
302
 
@@ -690,46 +709,81 @@ msgstr "Rechtliche Anpassungen von Texten und Design im Cookie Banner"
690
  msgid ""
691
  "In recent months, more clarity has been created about what consent "
692
  "management on websites should look like - and what it shouldn't. In "
693
- "particular, through the <a href=\"https://www.gesetze-im-internet.de/ttdsg/"
694
- "\" target=\"_blank\">TTDSG</a> (Telecommunications Telemedia Data Protection "
695
- "Act; Germany) and <a href=\"https://www.datenschutzkonferenz-online.de/media/"
696
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Guidance of the Conference "
697
- "of Independent Data Protection Authorities for cookie banners</a> "
698
- "(coordinated legal interpretation of all German data protection authorities; "
699
- "in German), there are now clearer rules that further interpret or complement "
700
- "the EU-wide applicable <a href=\"https://eur-lex.europa.eu/legal-content/EN/"
701
- "TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy Directive</a> and "
702
- "<a href=\"https://gdpr-info.eu/\" target=\"_blank\">GDPR</a>. Furthermore, "
703
- "there were important decisions such as the evaluation of <a href=\"https://"
704
- "www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
705
- "n-21-2022-english.pdf\" target=\"_blank\">TCF by ADP (Belgium)</a>, the <a "
706
- "href=\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
707
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics decision by "
708
- "dsb (Austria)</a> and the <a href=\"https://www.cnil.fr/sites/default/files/"
709
- "atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics.pdf\" "
710
- "target=\"_blank\">position on Google Analytics by CNIL</a>."
711
  msgstr ""
712
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
713
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
714
- "aussehen sollte. Insbesondere durch das <a href=\"https://www.gesetze-im-"
715
- "internet.de/ttdsg/\" target=\"_blank\">TTDSG</a> (Telekommunikation-"
716
- "Telemedien-Datenschutz-Gesetz) und die <a href=\"https://www."
717
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
718
- "\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
719
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
720
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
721
- "Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
722
- "legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
723
- "Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
724
- "\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
725
- "Entscheidungen wie die Bewertung von <a href=\"https://www."
726
- "autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
727
- "english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
728
- "\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
729
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
730
- "von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
731
- "files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
732
- "pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
733
 
734
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
735
  msgid ""
@@ -790,15 +844,13 @@ msgstr "Rechtliche Links auf jeder Unterseite platzieren"
790
  #. translators:
791
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
792
  msgid ""
793
- "In accordance with the requirements of the &quot;<a href=\"https://www."
794
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
795
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
796
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
797
  "and revoke consent must be directly accessible on every sub-page of your "
798
  "website."
799
  msgstr ""
800
- "Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
801
- "online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
802
  "\"Orientierungshilfe der Konferenz der unabhängigen "
803
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
804
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
@@ -941,17 +993,21 @@ msgstr "pro-modal/de/mobile-optimization.png"
941
  msgid "Updates in v3.0: You should act to be safe!"
942
  msgstr "Updates in v3.0: Du solltest handeln, um sicher zu sein!"
943
 
 
944
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
945
  msgid ""
946
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
947
  "have implemented, among other things, current legal adjustments. Read more "
948
- "about the changes in our <a href=\"https://devowl.io/2022/real-cookie-"
949
- "banner-3-0/\" target=\"_blank\">blog post</a>."
950
  msgstr ""
951
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
952
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
953
- "Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/real-"
954
- "cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
 
 
 
 
955
 
956
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
957
  msgid ""
@@ -1009,14 +1065,30 @@ msgstr ""
1009
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1010
  "Vorgehen für deinen Einzelfall zu klären."
1011
 
 
 
 
 
1012
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1013
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1014
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1015
 
 
 
 
 
 
 
1016
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1017
  msgid "Statement of the IAB Europe (English)"
1018
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1019
 
 
 
 
 
 
 
1020
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1021
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1022
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
@@ -1395,6 +1467,10 @@ msgstr ""
1395
  "\"_blank\">%3$s</a>. In diesem Fall musst du auch den \"Code bei Opt-in "
1396
  "ausführen\" entfernen."
1397
 
 
 
 
 
1398
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1399
  msgid ""
1400
  "AddThis allows providing links and buttons for sharing content on a variety "
@@ -1448,21 +1524,26 @@ msgstr ""
1448
  "Benutzer eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1449
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1450
 
 
1451
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1452
  msgid ""
1453
- "This template assumes that you use the <a href=\"https://wordpress.org/"
1454
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress plugin</a>. The "
1455
- "template is not suitable to add Facebook Like, Twitter Tweet or Pinterest "
1456
- "Pin button in AddToAny. If you want to use any of these buttons, please use "
1457
- "it without AddToAny and additionally create the cookies and content blockers "
1458
- "for the respective service."
1459
  msgstr ""
1460
- "Diese Vorlage setzt voraus, dass du das <a href=\"https://wordpress.org/"
1461
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress Plugin</a> "
1462
- "verwendest. Die Vorlage ist nicht geeignet, um Facebook Like, Twitter Tweet "
1463
- "oder Pinterest Pin Button in AddToAny einzufügen. Wenn du einen dieser "
1464
- "Buttons verwenden möchtest, verwende ihn bitte ohne AddToAny und erstelle "
1465
- "zusätzlich die Cookies und Content Blocker für den jeweiligen Dienst."
 
 
 
 
1466
 
1467
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1468
  msgid ""
@@ -1483,18 +1564,22 @@ msgstr ""
1483
  "merken, wie oft welche Werbeplatzierung bereits angezeigt wurde und wie oft "
1484
  "die jeweilige Werbung angeklickt wurde."
1485
 
 
1486
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1487
  msgid ""
1488
- "Ad Insert plays out ads even without consent. You should <a href=\"https://"
1489
- "adinserter.pro/faq/gdpr-compliance-cookies-consent\" target=\"_blank"
1490
- "\">obtain consent for the ads via the TCF v2.0 or newer standard</a>. Only "
1491
- "some features of the plugin require you to obtain consent for Ad Inserter."
1492
  msgstr ""
1493
- "Ad Insert spielt Werbung auch ohne Einwilligung aus. Du solltest <a href="
1494
- "\"https://adinserter.pro/faq/gdpr-compliance-cookies-consent\" target="
1495
- "\"_blank\">die Einwilligung für die Anzeigen über den TCF v2.0 oder neueren "
1496
- "Standard einholen</a>. Nur für einige Features des Plugins musst du die "
1497
- "Einwilligung für Ad Inserter einholen."
 
 
 
1498
 
1499
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1500
  msgid ""
@@ -1512,17 +1597,20 @@ msgstr ""
1512
  "deaktiviert hast, da dieser Teil des Adblockers Daten an Google und Media."
1513
  "net überträgt, bevor du deine Einwilligung dazu hast."
1514
 
 
1515
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1516
  msgid ""
1517
- "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"https://"
1518
- "adinserter.pro/documentation/ad-impression-and-click-limiting\" target="
1519
- "\"_blank\">impression and click limits</a> feature of Ad Inserter Pro. The "
1520
- "duration of the cookie depends on the settings of the feature."
1521
  msgstr ""
1522
- "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn du das <a href=\"https://"
1523
- "adinserter.pro/documentation/ad-impression-and-click-limiting\" target="
1524
- "\"_blank\">Impressions- und Klick-Limit</a> Feature von Ad Inserter Pro "
1525
- "nutzt. Die Dauer des Cookies hängt von den Einstellungen des Features ab."
 
 
 
1526
 
1527
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1528
  msgid ""
@@ -1750,13 +1838,18 @@ msgstr ""
1750
  msgid "Awin Publisher ID"
1751
  msgstr "Awin-Publisher-ID"
1752
 
 
1753
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1754
  msgid ""
1755
- "You find your publisher ID in the <a href=\"https://ui.awin.com/user\" "
1756
- "target=\"_blank\">account overview</a> directly blow your account name."
1757
  msgstr ""
1758
- "Du findest deine Publisher ID in der <a href=\"https://ui.awin.com/user\" "
1759
- "target=\"_blank\">Account Übersicht</a> direkt unter deinem Benutzernamen."
 
 
 
 
1760
 
1761
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1762
  msgid ""
@@ -1812,6 +1905,10 @@ msgstr ""
1812
  "Auf <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> Du unter Tools > "
1813
  "Conversion tracking > UET tag findest Du Deinen UET-Tag in der Tag-Tabelle."
1814
 
 
 
 
 
1815
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1816
  msgid ""
1817
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
@@ -2264,15 +2361,18 @@ msgstr "https://www.etracker.com/datenschutzerklaerung/"
2264
  msgid "etracker Account Key"
2265
  msgstr "etracker Account Key"
2266
 
 
2267
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2268
  msgid ""
2269
- "You can find your etracker account key under <a href=\"https://newapp."
2270
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2271
- "info > Settings> Account</a> of your etracker account."
2272
  msgstr ""
2273
- "Du findest deinen etracker Account Key unter <a href=\"https://newapp."
2274
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2275
- "Info > Einstellungen > Account</a> deines etracker Accounts."
 
 
 
2276
 
2277
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2278
  msgid ""
@@ -2289,20 +2389,26 @@ msgstr ""
2289
  "Tracking widersprechen, indem er diesen Service in deinem Cookie Banner "
2290
  "deaktiviert."
2291
 
 
2292
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2293
  msgid ""
2294
  "We also recommend that you deactivate the non-aggregated reporting via the "
2295
- "<a href=\"https://newapp.etracker.com/\" target=\"_blank\">dashboard</a> "
2296
- "under <i>menu (top left) > Account-ID > Settings > Privacy > Consent-free "
2297
- "tracking cookies in accordance with CNIL guidelines</i> to ensure that there "
2298
- "is definitely no personal reference for the collected data."
2299
- msgstr ""
2300
- "Wir empfehlen dir zusätzlich über das <a href=\"https://newapp.etracker.com/"
2301
- "#/report/accountSettings/accountKey\" target=\"_blank\">Dashboard</a> unter "
2302
- "<i>Menü (obene links) > Account-ID > Einstellungen > Datenschutz > "
2303
- "Einwilligungs-freie Tracking Cookies gemäß Anforderungen der CNIL</i> die "
2304
- "nicht aggregierten Reportings zu deaktivieren, um sicherzustellen, dass "
2305
- "definitiv kein Personenbezug bei den erhobenen Daten besteht."
 
 
 
 
 
2306
 
2307
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2308
  msgid "etracker: enhanced tracking"
@@ -2350,22 +2456,22 @@ msgstr ""
2350
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2351
  "anreichert."
2352
 
 
2353
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2354
  msgid ""
2355
  "In order for the consent to be taken into account, you must activate the "
2356
- "toggle \"Opt-In active\" via the <a href=\"https://newapp.etracker.com/\" "
2357
- "target=\"_blank\">dashboard</a> under <i>menu (top left) > Account-ID > "
2358
- "Settings > Privacy > Tracking Opt-In and agreement</i>, but then switch to "
2359
- "\"own Opt-In\" so that etracker does not display its own consent dialog, but "
2360
- "instead uses the consent collected by Real Cookie Banner."
2361
- msgstr ""
2362
- "Damit die Einwilligung berücksichtigt wird, musst du via <a href=\"https://"
2363
- "newapp.etracker.com/\" target=\"_blank\">Dashboard</a> unter <i>Menü (oben "
2364
- "links) > Account-ID > Einstellungen > Datenschutz > Tracking Opt-In und "
2365
- "Zustimmung</i> den Toggle \"Opt-In aktiv\" aktivieren und anschließend auf "
2366
- "\"eigenes Opt-In\" umstellen. Damit wird etracker keinen eigenen "
2367
- "Einwilligungsdialog anzeigen, sondern die Einwilligung, erhoben von Real "
2368
- "Cookie Banner, verwenden."
2369
 
2370
  #. translators:
2371
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
@@ -2673,20 +2779,20 @@ msgstr ""
2673
  "können mit den Daten der auf facebook.com registrierten Benutzer verknüpft "
2674
  "werden."
2675
 
 
2676
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2677
  msgid ""
2678
- "You can use Facebook's <a href=\"https://developers.facebook.com/docs/"
2679
- "plugins/embedded-posts/\" target=\"_blank\">embedded post generator</a> to "
2680
- "generate a HTML code to embed post with the Facebook JavaScript SDK. Loading "
2681
- "the JavaScript SDK is part of the opt-in code. All you need to do is place "
2682
- "the HTML div and blockqoute elements where you want the embedded post to be "
2683
- "visible on your site. If you use Facebook post as Iframe embeeds, please "
2684
- "create in addition a content blocker for Facebook Posts to block loading of "
2685
- "the content before you have the consent of the user."
2686
- msgstr ""
2687
- "Du kannst den <a href=\"https://developers.facebook.com/docs/plugins/"
2688
- "embedded-posts/?locale=de_DE\" target=\"_blank\">Post-Generator von Facebook "
2689
- "</a> verwenden, um einen HTML-Code zum Einbetten von Posts mit dem Facebook "
2690
  "JavaScript SDK zu generieren. Das Laden des JavaScript-SDK ist Teil des Opt-"
2691
  "in Codes. Alles was du tun musst, ist das HTML-Div und blockqoute-Element "
2692
  "dort zu platzieren, wo der eingebettete Beitrag auf deiner Seite sichtbar "
@@ -2694,6 +2800,10 @@ msgstr ""
2694
  "bitte zusätzlich einen Inhaltsblocker für Facebook, um das Laden ihres "
2695
  "Inhalts zu blockieren, bevor du die Einwilligung des Nutzers hast."
2696
 
 
 
 
 
2697
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2698
  msgid ""
2699
  "Facebook Share button allows users to share a link directly on Facebook. The "
@@ -2894,17 +3004,21 @@ msgstr "Google Ads Conversation Tracking-ID"
2894
  msgid "Please fill in a valid tracking ID!"
2895
  msgstr "Bitte gib eine gültige Tracking ID an!"
2896
 
 
2897
  #: inc/overrides/pro/presets/GoogleAds.php:1
2898
  msgid ""
2899
- "You can find your Adwords ID in <a href=\"https://ads.google.com/aw/overview"
2900
- "\" target=\"_blank\">Google Ads</a> at Tools > Measurement > Conversions > "
2901
- "Click on the name of the conversation action > Tag setup > Install the tag "
2902
- "yourself > Adwords ID in the code (e.g. AW-123456789)."
2903
  msgstr ""
2904
- "Deine Adwords ID findest du in <a href=\"https://ads.google.com/aw/overview"
2905
- "\" target=\"_blank\">Google Ads</a> unter Tools > Messung > Conversions > "
2906
- "Conversion-Aktion > Tag-Einrichtung > Tag selbst einfügen > Adwords ID in "
2907
- "dem Code (z.B. AW-123456789)."
 
 
 
2908
 
2909
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2910
  msgid ""
@@ -2931,18 +3045,22 @@ msgstr ""
2931
  msgid "Google Adsense Publisher ID"
2932
  msgstr "Google Adsense Publisher-ID"
2933
 
 
2934
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2935
  msgid ""
2936
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
2937
  "(if activated in your Adsense account) can be displayed. You can find it in "
2938
- "the <a href=\"https://www.google.com/adsense\" target=\"_blank\">Google "
2939
- "Adsense Dashboard</a> under <i>Account > Settings > Account information</i>."
2940
  msgstr ""
2941
- "Du musst deine Google Adsense Publisher ID eingeben, damit z.B. Auto Ads "
2942
- "(falls in deinem Adsense Konto aktiviert) angezeigt werden können. Du "
2943
- "findest sie im <a href=\"https://www.google.com/adsense\" target=\"_blank"
2944
- "\">Google Adsense Dashboard</a> unter <i>Account > Einstellungen > "
2945
- "Kontoinformationen</i>."
 
 
 
2946
 
2947
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2948
  msgid ""
@@ -2988,18 +3106,23 @@ msgstr ""
2988
  msgid "Google Analytics Measurement ID"
2989
  msgstr "Google Analytics Measurement-ID"
2990
 
 
2991
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
2992
  msgid ""
2993
  "You can find your Measurement ID (also called property ID) in the <a href="
2994
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
2995
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
2996
- "property > Setup Assistant > Tag installation > Select your website."
2997
  msgstr ""
2998
- "Du findest deine Measurement ID (auch Property ID genannt) im <a href="
2999
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3000
- "Dashboard</a> unter Admin (Zahnradsymbol) > Wähle deinen Account aus > Wähle "
3001
- "deine Property aus > Setup Assistant > Tag Installation > Wähle deine "
3002
- "Website aus."
 
 
 
 
3003
 
3004
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3005
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
@@ -3049,17 +3172,16 @@ msgstr ""
3049
  msgid "Google Analytics Tracking ID"
3050
  msgstr "Google Analytics Tracking-ID"
3051
 
 
3052
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3053
  msgid ""
3054
- "You can find your Tracking ID (also called Property ID) in the <a href="
3055
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3056
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
3057
- "property > Tracking Info > Tracking Code."
3058
  msgstr ""
3059
- "Du findest deine Tracking ID (auch Property ID genannt) im <a href=\"https://"
3060
- "analytics.google.com/analytics/web/\" target=\"_blank\">Analytics Dashboard</"
3061
- "a> unter Admin (Zahnradsymbol) > Wähle deinen Account > Wähle deine Property "
3062
- "> Tracking Info > Tracking Code."
3063
 
3064
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3065
  msgid ""
@@ -3303,21 +3425,27 @@ msgstr ""
3303
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
3304
  "Statistiken über sein Verhalten zu sammeln."
3305
 
 
3306
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3307
  msgid ""
3308
- "You have to create a so-called Beacon on <a href=\"https://secure.helpscout."
3309
- "net\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3310
- "Beacon. After creating in the Beacon Customizer, the URL looks like "
3311
- "<code>https://secure.helpscout.net/settings/beacons/c676047b-"
3312
- "c2e8-45b1-8319-344f4e7e2431/customize</code>. This means that the HelpScout "
3313
- "Beacon ID is <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code>."
3314
- msgstr ""
3315
- "Du musst einen sogenannten Beacon auf <a href=\"https://secure.helpscout.net"
3316
- "\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3317
- "Beacon erstellen. Nach dem Erstellen im Beacon Customizer sieht die URL "
3318
- "ähnlich aus wie <code>https://secure.helpscout.net/settings/beacons/c676047b-"
3319
- "c2e8-45b1-8319-344f4e7e2431/customize</code>. Das bedeutet, dass die "
3320
- "HelpScout Beacon-ID <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code> lautet."
 
 
 
 
 
3321
 
3322
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3323
  msgid "HelpScout Beacon ID"
@@ -3342,6 +3470,14 @@ msgstr ""
3342
  msgid "Hotjar ID"
3343
  msgstr "Hotjar-ID"
3344
 
 
 
 
 
 
 
 
 
3345
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3346
  msgid ""
3347
  "Imgur allows embedding content posted on imgur.com directly into websites."
@@ -3411,6 +3547,10 @@ msgstr ""
3411
  msgid "Intercom application ID"
3412
  msgstr "Intercom Application ID"
3413
 
 
 
 
 
3414
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3415
  msgid ""
3416
  "Issuu allows embedding content posted on issuu.com directly into websites. "
@@ -3544,16 +3684,20 @@ msgstr ""
3544
  msgid "https://linkedin.com/legal/privacy-policy"
3545
  msgstr "https://de.linkedin.com/legal/privacy-policy"
3546
 
 
3547
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3548
  msgid ""
3549
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3550
- "\"https://www.linkedin.com/help/lms/answer/a415871\" target=\"_blank\">where "
3551
- "to find the LinkedIn Partner ID</a> in your LinkedIn Ads account."
3552
  msgstr ""
3553
  "Du findest in der Wissensdatenbank von LinkedIn einen Artikel, der dir "
3554
- "erklärt, <a href=\"https://www.linkedin.com/help/lms/answer/a415871\" target="
3555
- "\"_blank\">wo du die LinkedIn Partner ID findest</a> in deinem LinkedIn Ads "
3556
- "Konto."
 
 
 
3557
 
3558
  #: inc/overrides/pro/presets/LoomPreset.php:1
3559
  msgid ""
@@ -3679,19 +3823,22 @@ msgstr ""
3679
  "Anmeldung verwendest, das versteckt werden kann (z.B. Popup). Nur in diesem "
3680
  "Fall wird ein Cookie gesetzt."
3681
 
 
3682
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3683
  msgid ""
3684
  "Personal data will never be transferred directly from the browser of your "
3685
  "visitors to MailPoet, but only, for example, when you sign up for the "
3686
  "newsletter via your WordPress installation. You should always follow the <a "
3687
- "href=\"https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr\" target="
3688
- "\"_blank\">MailPoet Guide to Conform to GDPR</a>."
3689
  msgstr ""
3690
  "Personenbezogene Daten werden niemals direkt vom Browser deiner Besucher an "
3691
  "MailPoet übertragen, sondern nur z.B. bei der Anmeldung zum Newsletter über "
3692
- "deine WordPress-Installation. Du solltest immer den <a href=\"https://kb."
3693
- "mailpoet.com/article/246-guide-to-conform-to-gdpr\" target=\"_blank"
3694
- "\">MailPoet Guide to Conform to GDPR</a>. beachten."
 
 
 
3695
 
3696
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3697
  msgid ""
@@ -3767,17 +3914,21 @@ msgstr "Metricool-Hash"
3767
  msgid "Please provide a valid hash!"
3768
  msgstr "Bitte gib einen gültigen Hash an!"
3769
 
 
3770
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3771
  msgid ""
3772
- "You find your Metricool hash in the <a href=\"https://app.metricool.com/"
3773
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, if "
3774
- "you use \"Connect web\" and choose the integration as JavaScript tag, within "
3775
- "the generated JavaScript."
3776
  msgstr ""
3777
- "Du findest deinen Metricool Hash in den <a href=\"https://app.metricool.com/"
3778
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, wenn "
3779
- "du \"Connect web\" nutzt und die Integration als JavaScript-Tag auswählst, "
3780
- "innerhalb des generierten JavaScript."
 
 
 
 
3781
 
3782
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3783
  msgid ""
@@ -3808,6 +3959,10 @@ msgstr ""
3808
  "projects/view/12cggd77jl/</code> lautet, ist deine Projekt-ID "
3809
  "<code>12cggd77jl</code>."
3810
 
 
 
 
 
3811
  #. translators:
3812
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3813
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
@@ -3843,19 +3998,27 @@ msgstr ""
3843
  msgid "Mouseflow Website ID"
3844
  msgstr "Mouseflow Website-ID"
3845
 
 
3846
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
3847
  msgid ""
3848
  "You can find your Mouseflow website ID by hovering over the appropriate "
3849
- "website at <a href=\"http://eu.mouseflow.com/websites\" target=\"_blank\">eu."
3850
- "mouseflow.com/websites</a>. You will then see a gear icon that you can click "
3851
- "on. In the settings that appear, you should find a <code>Website ID</code> "
3852
- "field."
3853
  msgstr ""
3854
- "Du findest deine Mouseflow Website ID, indem du auf <a href=\"https://eu."
3855
- "mouseflow.com/websites\" target=\"_blank\">eu.mouseflow.com/websites</a> mit "
3856
- "dem Mauszeiger über die entsprechende Website fährst. Du siehst dann ein "
3857
- "Zahnradsymbol, auf das du klicken kannst. In den Einstellungen, die dann "
3858
- "erscheinen, solltest du ein Feld <code>Website ID</code> finden."
 
 
 
 
 
 
 
 
3859
 
3860
  #. translators:
3861
  #: inc/overrides/pro/presets/MtmPreset.php:1
@@ -4087,16 +4250,20 @@ msgstr ""
4087
  msgid "Pinterest Tag ID"
4088
  msgstr "Pinterest Tag-ID"
4089
 
 
4090
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4091
  msgid ""
4092
- "You can view your Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4093
- "\"_blank\">Pinterest Ads</a> under Ads > Conversions > Add code to website > "
4094
- "Add code. It is displayed in the top right corner of the modal."
4095
  msgstr ""
4096
- "Du kannst deine Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4097
- "\"_blank\">Pinterest Ads</a> unter Anzeigen > Conversions > Code zur Website "
4098
- "hinzufügen > Code hinzufügen einsehen. Er wird in der oberen rechten Ecke "
4099
- "des Modals angezeigt."
 
 
 
4100
 
4101
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4102
  msgid ""
@@ -4268,19 +4435,22 @@ msgstr ""
4268
  "speichern die Sprache des Nutzers und können den Nutzer auf die Version der "
4269
  "Webseite umleiten, welche der Sprache des Browsers des Nutzers entspricht."
4270
 
 
4271
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4272
  msgid ""
4273
  "Please make sure you have not renamed the Polylang cookie name or change it "
4274
  "in the same way in the technical definitions above. Learn more about how to "
4275
- "change the Polylang cookie name <a href=\"https://polylang.pro/doc/is-"
4276
- "polylang-compatible-with-the-eu-cookie-law/\" target=\"_blank\">in their "
4277
  "documentation</a>."
4278
  msgstr ""
4279
  "Bitte vergewissere dich, dass du den Namen des Polylang Cookies nicht "
4280
  "umbenannt oder in den technischen Definitionen oben auf die gleiche Weise "
4281
  "geändert hast. Mehr darüber, wie man den Polylang Cookie-Namen ändert, "
4282
- "findest du <a href=\"https://polylang.pro/doc/is-polylang-compatible-with-"
4283
- "the-eu-cookie-law/\" target=\"_blank\">in der Dokumentation</a>."
 
 
 
4284
 
4285
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4286
  msgid ""
@@ -4586,21 +4756,29 @@ msgstr ""
4586
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4587
  "Statistiken über sein Verhalten zu sammeln."
4588
 
 
4589
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4590
  msgid ""
4591
- "You can create your own custom chat widget at <a href=\"https://dashboard."
4592
- "tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > Settings > Chat Widget. "
4593
- "The chat widget in the opt-in code is just the default example."
4594
  msgstr ""
4595
- "Du kannst dein eigenes benutzerdefiniertes Chat-Widget unter <a href="
4596
- "\"https://dashboard.tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > "
4597
- "Einstellungen > Chat Widget erstellen. Das Chat-Widget im Opt-in Code ist "
4598
- "nur das Standardbeispiel."
 
 
 
4599
 
4600
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4601
  msgid "tawk.to ID"
4602
  msgstr "tawk.to ID"
4603
 
 
 
 
 
4604
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4605
  msgid ""
4606
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
@@ -4640,22 +4818,31 @@ msgstr ""
4640
  "Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4641
  "Statistiken über sein Verhalten zu sammeln."
4642
 
 
4643
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4644
  msgid ""
4645
- "You get your Tidio JS ID on <a href=\"https://tidio.com\" target=\"_blank"
4646
- "\">tidio.com</a> under Settings > Live Chat > Integration > JavaScript in "
4647
- "the given JavaScript snipped. You can adjust the appearance of the chat at "
4648
- "tidio.com under Settings > Live Chat > Appearance."
4649
  msgstr ""
4650
- "Du bekommst deine Tidio JS ID auf <a href=\"https://tidio.com\" target="
4651
- "\"_blank\">tidio.com</a> unter Einstellungen > Live Chat > Integration > "
4652
- "JavaScript in dem angegebene JavaScript-Code. Du kannst das Aussehen des "
4653
- "Chats auf tidio.com unter Einstellungen > Live Chat > Aussehen anpassen."
 
 
 
 
4654
 
4655
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4656
  msgid "Tidio JS ID"
4657
  msgstr "Tidio JS-ID"
4658
 
 
 
 
 
4659
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4660
  msgid ""
4661
  "TikTok Pixel helps to determine whether you are the target audience for "
@@ -4687,33 +4874,37 @@ msgstr "https://www.tiktok.com/legal/privacy-policy?lang=de-DE"
4687
  msgid "TikTok Pixel ID"
4688
  msgstr "TikTok Pixel-ID"
4689
 
 
4690
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4691
  msgid ""
4692
- "In the <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target="
4693
- "\"_blank\">Event Manager of the TikTok Ad Manager</a> you can create a "
4694
- "website pixel. Select \"Manually install pixel code\" for the type of "
4695
- "integration. Whether you want to use the \"Standard Mode\" or \"Developer "
4696
- "Mode\" depends on your purpose."
4697
  msgstr ""
4698
- "Im <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target=\"_blank"
4699
- "\">Event Manager des TikTok Ad Managers</a> kannst du ein Website-Pixel "
4700
- "erstellen. Wähle für die Art der Integration \"Manually install pixel code"
4701
- "\". Ob du den \"Standard Mode\" oder den \"Developer Mode\" verwenden "
4702
- "möchtest, hängt von deinem Vorhaben ab."
 
 
 
4703
 
 
4704
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4705
  msgid ""
4706
- "After creating the TikTok Pixel you return to the <a href=\"https://ads."
4707
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager of the "
4708
- "TikTok Ad Manager</a> and select \"Manage\" in the section \"Website Pixel"
4709
- "\". You will then see an overview of all the TikTok pixels you have created. "
4710
- "Each TikTok pixel has its ID directly under its name."
4711
  msgstr ""
4712
- "Nach der Erstellung des TikTok Pixel kehrst du zum <a href=\"https://ads."
4713
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager des TikTok "
4714
- "Ad Managers</a> zurück und wählst im Abschnitt \"Website Pixel\" den Punkt "
4715
- "\"Manage\". Du siehst dann eine Übersicht über alle TikTok Pixel, die du "
4716
- "erstellt hast. Jedes TikTok-Pixel hat seine ID direkt unter seinem Namen."
4717
 
4718
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4719
  msgid ""
@@ -4830,24 +5021,33 @@ msgstr ""
4830
  msgid "https://www.userlike.com/en/terms#privacy-policy"
4831
  msgstr "https://www.userlike.com/de/terms#privacy-policy"
4832
 
 
4833
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4834
  msgid ""
4835
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
4836
- "You can find it at <a href=\"https://userlike.com/en/dashboard/um/config/"
4837
- "um_widget/overview\" target=\"_blank\">userlike.com/en/dashboard/um/config/"
4838
- "um_widget/overview</a> > Name of the widget > Install > JavaScript Widget "
4839
- "code."
4840
  msgstr ""
4841
  "Bitte füge als Opt-in Code den JavaScript Code deines Userlike Widgets ein. "
4842
- "Du findest ihn unter <a href=\"https://userlike.com/de/dashboard/um/config/"
4843
- "um_widget/overview\" target=\"_blank\">userlike.com/de/dashboard/um/config/"
4844
- "um_widget/overview</a> > Name des Widgets > Installieren > JavaScript Widget "
4845
- "code."
 
 
4846
 
4847
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4848
  msgid "Example opt-in code"
4849
  msgstr "Beispiel Opt-in Code"
4850
 
 
 
 
 
 
 
 
 
4851
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4852
  msgid ""
4853
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
@@ -4914,6 +5114,16 @@ msgstr ""
4914
  "\"essenzielles Cookie\" und keinen Content Blocker wirst du die volle dir "
4915
  "zustehende Ausschüttungen der VG WORT erhalten können."
4916
 
 
 
 
 
 
 
 
 
 
 
4917
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4918
  msgid ""
4919
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
@@ -5164,6 +5374,10 @@ msgstr ""
5164
  "Du findest Deine Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5165
  "\">Yandex Metrica Tags Liste</a>."
5166
 
 
 
 
 
5167
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5168
  msgid ""
5169
  "Zendesk Chat is a customer service tool that provides live chat for "
@@ -5192,6 +5406,10 @@ msgstr ""
5192
  "Du findest den Zendesk Widget Key im Zendesk Backend unter Einstellungen > "
5193
  "Widget > Web Widget einbetten als Teil des JavaScript Codes."
5194
 
 
 
 
 
5195
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5196
  msgid ""
5197
  "Zoho Bookings is a planning software the allows you to book book "
@@ -5445,6 +5663,7 @@ msgstr ""
5445
  "du in den individuellen Privatsphäre-Einstellungen."
5446
 
5447
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5448
  msgid ""
5449
  "In addition, you consent to the transfer of data to partners under the TCF "
5450
  "standard for the following purposes:"
@@ -5453,10 +5672,12 @@ msgstr ""
5453
  "des TCF-Standards für die folgenden Zwecke zu:"
5454
 
5455
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5456
  msgid "Vendor list"
5457
  msgstr "Liste der Anbieter"
5458
 
5459
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5460
  msgid "Vendors"
5461
  msgstr "Anbieter"
5462
 
@@ -5470,18 +5691,22 @@ msgid "Hide"
5470
  msgstr "Verstecken"
5471
 
5472
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5473
  msgid "Data processing on the legal basis of:"
5474
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5475
 
5476
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5477
  msgid "No vendor requests purposes under this legal basis."
5478
  msgstr "Kein Anbieter beantragt Zwecke auf dieser Rechtsgrundlage."
5479
 
5480
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5481
  msgid "Non-standardized data processing"
5482
  msgstr "Nicht standardisierte Datenverarbeitung"
5483
 
5484
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5485
  msgid ""
5486
  "Some services set cookies and/or process personal data without complying "
5487
  "with consent communication standards. These services are divided into "
@@ -5499,10 +5724,12 @@ msgstr ""
5499
  "nach einer Einwilligung genutzt werden."
5500
 
5501
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5502
  msgid "Data processing standardized according to TCF"
5503
  msgstr "Datenverarbeitung standardisiert nach TCF"
5504
 
5505
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5506
  msgid ""
5507
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5508
  "consistent consent for processing of personal data and cookie setting. This "
@@ -5518,10 +5745,12 @@ msgstr ""
5518
  "gesetzt, verarbeitet und gespeichert werden."
5519
 
5520
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5521
  msgid "Purposes"
5522
  msgstr "Zwecke"
5523
 
5524
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5525
  msgid ""
5526
  "Purposes describe for which purpose which providers may set cookies and "
5527
  "process personal data. Purposes are pre-selected if there is a legitimate "
@@ -5535,10 +5764,12 @@ msgstr ""
5535
  "Einwilligung verarbeitet."
5536
 
5537
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5538
  msgid "Special purposes"
5539
  msgstr "Besondere Zwecke"
5540
 
5541
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5542
  msgid ""
5543
  "Special purposes for setting cookies and processing personal data by our "
5544
  "vendors describe purposes for which we have a legitimate interest that "
@@ -5550,10 +5781,12 @@ msgstr ""
5550
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5551
 
5552
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5553
  msgid "Features"
5554
  msgstr "Funktionen"
5555
 
5556
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5557
  msgid ""
5558
  "Features for processing personal data describe how data is used to fulfill "
5559
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
@@ -5567,10 +5800,12 @@ msgstr ""
5567
  "Jeder Zweck kann dazu führen, dass Funktionen verwendet werden."
5568
 
5569
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5570
  msgid "Special features"
5571
  msgstr "Besondere Funktionen"
5572
 
5573
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5574
  msgid ""
5575
  "Special features for processing personal data describe how data is used to "
5576
  "fulfill one or more purposes in a profound way. Personal data will only be "
@@ -5884,17 +6119,21 @@ msgstr ""
5884
  "(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
5885
  "feststellen."
5886
 
 
5887
  #: inc/presets/free/GoogleFontsPreset.php:1
5888
  msgid ""
5889
- "We therefore recommend <a href=\"https://devowl.io/2022/google-fonts-"
5890
- "wordpress-gdpr/\" target=\"_blank\">replacing Google Fonts with locally "
5891
- "hosted fonts</a> when possible, rather than asking for consent. We explained "
5892
- "how this works in our blog!"
5893
  msgstr ""
5894
- "Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
5895
- "wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
5896
- "gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
5897
- "fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
 
 
 
 
5898
 
5899
  #: inc/presets/free/GravatarPreset.php:1
5900
  msgid ""
@@ -6064,18 +6303,21 @@ msgstr ""
6064
  "Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für diesen Dienst "
6065
  "muss ein Service angelegt werden."
6066
 
 
6067
  #: inc/presets/free/WordPressCommentsPreset.php:1
6068
  msgid ""
6069
  "Do you want to use the comment feature on your website at all? If not, we "
6070
- "explain in our blog <a href=\"https://devowl.io/2022/deactivate-wordpress-"
6071
- "comments/\" target=\"_blank\"> how to disable comments in WordPress</a>. "
6072
- "Then you can also avoid this consent!"
6073
  msgstr ""
6074
  "Willst du die Kommentarfunktion auf deiner Website überhaupt nutzen? Wenn "
6075
- "nicht, erklären wir in unserem Blog, <a href=\"https://devowl.io/de/2022/"
6076
- "wordpress-kommentare-deaktivieren/\" target=\"_blank\">wie du Kommentare in "
6077
- "WordPress deaktivieren kannst</a>. Dann kannst du dir die Einwilligung auch "
6078
- "sparen!"
 
 
 
6079
 
6080
  #: inc/presets/free/WordPressEmojisPreset.php:1
6081
  msgid ""
@@ -6105,18 +6347,22 @@ msgstr ""
6105
  "können Emojis problemlos ohne das WordPressa-Emoji-Script anzeigen (für das "
6106
  "du diese Einwilligung einholen musst)."
6107
 
 
6108
  #: inc/presets/free/WordPressEmojisPreset.php:1
6109
  msgid ""
6110
  "Unless you need to support particularly old browsers and operating systems, "
6111
- "we recommend that you <a href=\"https://devowl.io/2022/disable-emojis-"
6112
- "wordpress/\" target=\"_blank\">disable the WordPress emoji script</a> rather "
6113
- "than asking for consent. How to do that, we have explained in our blog!"
6114
  msgstr ""
6115
  "Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
6116
- "musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/wordpress-"
6117
- "emojis-deaktivieren/\" target=\"_blank\">WordPress-Emoji-Script zu "
6118
- "deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
6119
- "machst, haben wir in unserem Blog erklärt!"
 
 
 
6120
 
6121
  #: inc/presets/free/WordPressPluginEmbed.php:1
6122
  msgid ""
@@ -6378,35 +6624,22 @@ msgstr "Ezoic (Statistik)"
6378
 
6379
  #: inc/presets/UpdateNotice.php:1
6380
  msgid ""
6381
- "It seems that since the last update of <strong>Real Cookies Banner</strong> "
6382
- "some templates have been updated. Please check your following services to "
6383
- "make sure they are up to date:"
6384
  msgstr ""
6385
- "Es scheint, dass seit dem letzten Update von <strong>Real Cookies Banner</"
6386
- "strong> einige Vorlagen aktualisiert worden sind. Bitte überprüfe deine "
6387
- "folgenden Services, um sicherzustellen, dass sie auf dem neuesten Stand sind:"
 
6388
 
6389
  #: inc/presets/UpdateNotice.php:1
6390
  msgid "Service (Cookie)"
6391
  msgstr "Service (Cookie)"
6392
 
6393
  #: inc/presets/UpdateNotice.php:1
6394
- msgid "Edit"
6395
- msgstr "Bearbeiten"
6396
-
6397
- #: inc/presets/UpdateNotice.php:1
6398
- msgid "Create new from template"
6399
- msgstr "Aus Vorlage erstellen"
6400
-
6401
- #: inc/presets/UpdateNotice.php:1
6402
- msgid ""
6403
- "The easiest way to apply the changes is to delete the service and all "
6404
- "connected content blockers in Real Cookie Banner and create it again from "
6405
- "the service templates."
6406
- msgstr ""
6407
- "Am einfachsten kannst du die Änderungen übernehmen, indem du den Service und "
6408
- "alle damit verbundenen Content Blocker in Real Cookie Banner löschst und ihn "
6409
- "aus den Service-Vorlagen neu erstellst."
6410
 
6411
  #: inc/presets/UpdateNotice.php:1
6412
  msgid "Dismiss this notice"
@@ -6467,6 +6700,7 @@ msgid "Service group"
6467
  msgstr "Service-Gruppe"
6468
 
6469
  #: inc/settings/CookieGroup.php:1
 
6470
  msgid ""
6471
  "Essential services are required for the basic functionality of the website. "
6472
  "They only contain technically necessary services. These services cannot be "
@@ -6477,9 +6711,10 @@ msgstr ""
6477
  "Services kann nicht widersprochen werden."
6478
 
6479
  #: inc/settings/CookieGroup.php:1
 
6480
  msgid ""
6481
  "Functional services are necessary to provide features beyond the essential "
6482
- "functionality such as prettier fonts, video playback or interactive Web 2.0 "
6483
  "features. Content from e.g. video platforms and social media platforms are "
6484
  "blocked by default, and can be consented to. If the service is agreed to, "
6485
  "this content is loaded automatically without further manual consent."
@@ -6492,6 +6727,7 @@ msgstr ""
6492
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6493
 
6494
  #: inc/settings/CookieGroup.php:1
 
6495
  msgid ""
6496
  "Statistics services are needed to collect pseudonymous data about the "
6497
  "visitors of the website. The data enables us to understand visitors better "
@@ -6502,6 +6738,7 @@ msgstr ""
6502
  "besser zu verstehen und die Website zu optimieren."
6503
 
6504
  #: inc/settings/CookieGroup.php:1
 
6505
  msgid ""
6506
  "Marketing services are used by us and third parties to track the behaviour "
6507
  "of individual visitors (across multiple pages), analyse the data collected "
@@ -6509,8 +6746,8 @@ msgid ""
6509
  "us to track visitors across multiple websites."
6510
  msgstr ""
6511
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6512
- "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und z."
6513
- "B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6514
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6515
 
6516
  #: inc/settings/Revision.php:1
@@ -6655,11 +6892,11 @@ msgstr "Einstellungen des Cookie Banners anpassen"
6655
 
6656
  #: inc/view/checklist/SaveSettings.php:1
6657
  msgid ""
6658
- "Define the behavior of the cookie banner and hide the cookie banner both in "
6659
- "the imprint and privacy policy (required by law)."
6660
  msgstr ""
6661
- "Bestimme das Verhalten des Cookie Banners und blende es sowohl im Impressum "
6662
- "als auch in der Datenschutzerklärung aus (gesetzlich vorgeschrieben)."
6663
 
6664
  #: inc/view/checklist/SaveSettings.php:1
6665
  msgid "Manage settings"
@@ -6672,10 +6909,11 @@ msgstr "Scanne deine Website nach Services"
6672
  #: inc/view/checklist/Scanner.php:1
6673
  msgid ""
6674
  "Scan your website to identify services used and external URLs that may "
6675
- "transmit personal data."
6676
  msgstr ""
6677
  "Scanne deine Website, um genutzte Services und externe URLs zu "
6678
- "identifizieren, die persönliche Daten übertragen können."
 
6679
 
6680
  #: inc/view/checklist/Scanner.php:1
6681
  msgid "Open scanner"
@@ -6689,18 +6927,18 @@ msgstr "Platziere legale Links auf deiner Website"
6689
  msgid ""
6690
  "Your website visitors must be able to view their consent history, change "
6691
  "their consent, or withdraw their consent at any time. This must be as easy "
6692
- "as giving consent. Therefore, the shortcodes must be included on every "
6693
  "subpage of the website (e.g. in the footer)."
6694
  msgstr ""
6695
  "Deine Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6696
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6697
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6698
- "Deshalb müssen die Shortcodes auf jeder Unterseite der Website zu finden "
6699
- "sein (z. B. im Footer/Fußzeile)."
6700
 
6701
  #: inc/view/checklist/Shortcode.php:1
6702
  msgid "Create legal links"
6703
- msgstr "Legal links erstellen"
6704
 
6705
  #: inc/view/checklist/ViewStats.php:1
6706
  msgid "Check out statistics about consents"
@@ -6776,6 +7014,17 @@ msgstr "Einstellungen"
6776
  msgid "Enabled"
6777
  msgstr "Aktiviert"
6778
 
 
 
 
 
 
 
 
 
 
 
 
6779
  #: inc/view/customize/banner/BasicLayout.php:1
6780
  msgid "Basic Layout"
6781
  msgstr "Grundlegendes Layout"
@@ -6870,6 +7119,16 @@ msgstr "Button-Rahmen: Abgerundete Ecken"
6870
  msgid "Animation on display"
6871
  msgstr "Animation beim Einblenden"
6872
 
 
 
 
 
 
 
 
 
 
 
6873
  #: inc/view/customize/banner/BasicLayout.php:1
6874
  msgid "Animation only on mobile devices"
6875
  msgstr "Animation nur auf mobilen Geräten"
@@ -7076,22 +7335,21 @@ msgstr "Button: Weiter ohne Einwilligung"
7076
  msgid "Use the same stylings as for \"Accept all\""
7077
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7078
 
 
7079
  #: inc/view/customize/banner/BodyDesign.php:1
7080
  #: inc/view/customize/banner/individual/SaveButton.php:1
7081
  msgid ""
7082
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7083
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7084
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7085
  "way for your visitors to express their choice (agree to everything, continue "
7086
  "without consent or an indivudual decision). Equivalent does not necessarily "
7087
  "mean that the buttons/links must look exactly the same. However, you should "
7088
  "be safest if they look exactly the same."
7089
  msgstr ""
7090
- "Gemäß der <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7091
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7092
- "deutschen Datenschutzbehörden</a> muss es für deine Besucher eine "
7093
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7094
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7095
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7096
  "aussehen müssen. Am sichersten bist du jedoch, wenn sie genau gleich "
7097
  "aussehen."
@@ -7197,25 +7455,28 @@ msgid "Consent options"
7197
  msgstr "Einwilligungs-Optionen"
7198
 
7199
  #: inc/view/customize/banner/Decision.php:1
7200
- #: inc/view/customize/banner/Texts.php:1
7201
  msgid "Accept all"
7202
  msgstr "Alle akzeptieren"
7203
 
7204
  #. translators:
7205
  #: inc/view/customize/banner/Decision.php:1
7206
  msgid ""
7207
- "According to the GDPR (%1$sEU 2016/679%2$s), section 32, you are not allowed "
7208
- "to pre-select services in the form of pre-selected checkboxes for the "
7209
- "visitor. However, the GDPR and ePrivacy Directive do not prohibit the use of "
7210
- "a button to agree to all services, if there is also a button to agree only "
7211
- "to the essential services or to make a user-defined selection."
7212
  msgstr ""
7213
- "Gemäß der DSGVO (%1$sEU 2016/679%2$s), Erwägungsgrund 32, darfst du keine "
7214
- "Services in Form von vorselektierten Checkboxen für den Besucher auswählen. "
7215
- "Die DSGVO und die ePrivacy-Richtlinie verbieten jedoch nicht die Verwendung "
7216
- "eines Buttons zur Einwilligung in alle Services, wenn es auch einen Button "
7217
- "gibt, um nur den essenziellen Services zuzustimmen oder um eine "
7218
- "benutzerdefinierte Auswahl zu treffen."
 
 
 
 
7219
 
7220
  #: inc/view/customize/banner/Decision.php:1
7221
  #: inc/view/customize/banner/individual/SaveButton.php:1
@@ -7229,7 +7490,6 @@ msgid "Link"
7229
  msgstr "Link"
7230
 
7231
  #: inc/view/customize/banner/Decision.php:1
7232
- #: inc/view/customize/banner/Texts.php:1
7233
  msgid "Continue without consent"
7234
  msgstr "Weiter ohne Einwilligung"
7235
 
@@ -7262,44 +7522,42 @@ msgstr ""
7262
  "Einwilligung\"."
7263
 
7264
  #: inc/view/customize/banner/Decision.php:1
7265
- #: inc/view/customize/banner/individual/Texts.php:1
7266
  msgid "Individual privacy preferences"
7267
  msgstr "Individuelle Privatsphäre-Einstellungen"
7268
 
7269
  #: inc/view/customize/banner/Decision.php:1
7270
  msgid ""
7271
- "According to the GDPR (EU 2016/679) and the ePrivacy Directive (EU 2009/136/"
7272
- "EC), the user must be free to choose which services to use and be informed "
7273
- "about their purpose before giving consent. Therefore, the user must be given "
7274
- "the opportunity to access the page with the individual privacy settings."
7275
  msgstr ""
7276
- "Gemäß der DSGVO (EU 2016/679) und der ePrivacy-Richtlinie (EU 2009/136/EG) "
7277
- "muss der Nutzer frei wählen können, welche Services genutzt werden sollen "
7278
- "und über deren Zweck informiert werden, bevor er seine Einwilligung gibt. "
7279
- "Daher muss dem Nutzer die Möglichkeit gegeben werden, die Seite mit den "
7280
- "individuellen Privatsphäre-Einstellungen aufzurufen."
7281
 
7282
  #: inc/view/customize/banner/Decision.php:1
7283
  msgid "Order of the buttons"
7284
  msgstr "Reihenfolge der Buttons"
7285
 
 
7286
  #: inc/view/customize/banner/Decision.php:1
7287
  msgid ""
7288
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7289
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7290
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7291
  "way for your visitors to express their choice (agree to everything, continue "
7292
  "without consent or an indivudual decision). Which order of options is "
7293
  "considered equivalent is unclear. Therefore, the options should be arranged "
7294
  "according to the cultural conditions of the main target country."
7295
  msgstr ""
7296
- "Gemäß der <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7297
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7298
- "deutschen Datenschutzbehörden</a> muss es für deine Besucher eine "
7299
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7300
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7301
- "Welche Reihenfolge der Optionen als gleichwertig gilt, ist unklar. Daher "
7302
- "sollten die Optionen nach den kulturellen Gegebenheiten des Hauptziellandes "
7303
  "angeordnet werden."
7304
 
7305
  #: inc/view/customize/banner/Decision.php:1
@@ -7331,8 +7589,27 @@ msgid "Text of \"Accept all\" changes when user changes selection"
7331
  msgstr ""
7332
  "Text von “Alle akzeptieren” ändert sich, wenn der Benutzer die Auswahl ändert"
7333
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7334
  #: inc/view/customize/banner/Decision.php:1
7335
  #: inc/view/customize/banner/individual/Texts.php:1
 
7336
  msgid "Save custom choices"
7337
  msgstr "Individuelle Auswahlen speichern"
7338
 
@@ -7576,6 +7853,7 @@ msgstr "\"Service-Informationen ausblenden”-Link"
7576
 
7577
  #: inc/view/customize/banner/individual/Texts.php:1
7578
  #: inc/view/customize/banner/Texts.php:1
 
7579
  msgid ""
7580
  "We use cookies and similar technologies on our website and process your "
7581
  "personal data (e.g. IP address), for example, to personalize content and "
@@ -7594,6 +7872,7 @@ msgstr ""
7594
 
7595
  #: inc/view/customize/banner/individual/Texts.php:1
7596
  #: inc/view/customize/banner/Texts.php:1
 
7597
  msgid ""
7598
  "The data processing may take place with your consent or on the basis of a "
7599
  "legitimate interest, which you can object to in the privacy settings. You "
@@ -7609,6 +7888,7 @@ msgstr ""
7609
  "{{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7610
 
7611
  #: inc/view/customize/banner/individual/Texts.php:1
 
7612
  msgid ""
7613
  "Below you will find an overview of all services used by this website. You "
7614
  "can view detailed information about each service and agree to them "
@@ -7620,10 +7900,12 @@ msgstr ""
7620
  "Gebrauch machen."
7621
 
7622
  #: inc/view/customize/banner/individual/Texts.php:1
 
7623
  msgid "Show service information"
7624
  msgstr "Service-Informationen anzeigen"
7625
 
7626
  #: inc/view/customize/banner/individual/Texts.php:1
 
7627
  msgid "Hide service information"
7628
  msgstr "Service-Informationen ausblenden"
7629
 
@@ -7786,12 +8068,8 @@ msgid "\"Powered by\" link text"
7786
  msgstr "“Powered by”-Linktext"
7787
 
7788
  #: inc/view/customize/banner/Texts.php:1
7789
- msgid ""
7790
- "Use <code>{{services}}</code> as a placeholder to show all services that "
7791
- "process data in the USA."
7792
- msgstr ""
7793
- "Verwende <code>{{services}}</code> als Platzhalter, um alle Services "
7794
- "anzuzeigen, die Daten in den USA verarbeiten."
7795
 
7796
  #: inc/view/customize/banner/Texts.php:1
7797
  msgid "Data processing in the USA"
@@ -7863,22 +8141,28 @@ msgstr "\"Inhalt laden”-Button/Link"
7863
  msgid "Additional info below the \"Load content\" button"
7864
  msgstr "Zusatzinfo unterhalb dem \"Inhalt laden”-Button"
7865
 
 
7866
  #: inc/view/customize/banner/Texts.php:1
7867
  msgid ""
7868
  "The standard texts in the cookie banner are worded carefully. If you "
7869
  "customize them, make sure they are not misleading or riveting. According to "
7870
- "the <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-"
7871
- "und-tracking-2/#13_informiertheit)\" target=\"_blank\">Data Protection "
7872
- "Commissioner of Baden-Württeberg, Germany (Section B, 1.3.7.; German)</a>, "
7873
- "for example, a headline \"We love cookies\" is already misleading."
7874
  msgstr ""
7875
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn du sie "
7876
  "anpasst, achte darauf, dass sie nicht irreführend oder vernietlichend sind. "
7877
- "Nach dem <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-"
7878
- "cookies-und-tracking-2/#13_informiertheit)\" target=\"_blank"
7879
- "\">Datenschutzbeauftragen von Baden-Württeberg, Deutschland (Abschnitt B, "
7880
- "1.3.7.)</a> ist z.B. die Überschrift \"Wir lieben Cookies\" bereits "
7881
- "irreführend."
 
 
 
 
 
 
7882
 
7883
  #. translators:
7884
  #: inc/view/customize/banner/Texts.php:1
@@ -7919,14 +8203,17 @@ msgstr ""
7919
  "%2$s, um sie zu aktivieren."
7920
 
7921
  #: inc/view/customize/banner/Texts.php:1
 
7922
  msgid "Privacy preferences"
7923
  msgstr "Privatsphäre-Einstellungen"
7924
 
7925
  #: inc/view/customize/banner/Texts.php:1
 
7926
  msgid "Set privacy settings individually"
7927
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
7928
 
7929
  #: inc/view/customize/banner/Texts.php:1
 
7930
  msgid ""
7931
  "Some services process personal data in the USA. By consenting to the use of "
7932
  "these services, you also consent to the processing of your data in the USA "
@@ -7946,6 +8233,7 @@ msgstr ""
7946
  "Möglichkeit eines Rechtsbehelfs."
7947
 
7948
  #: inc/view/customize/banner/Texts.php:1
 
7949
  msgid ""
7950
  "You are under 16 years old? Then you cannot consent to optional services. "
7951
  "Ask your parents or legal guardians to agree to these services with you."
@@ -7955,6 +8243,7 @@ msgstr ""
7955
  "dir in diese Services einzuwilligen."
7956
 
7957
  #: inc/view/customize/banner/Texts.php:1
 
7958
  msgid ""
7959
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
7960
  "to this service to view this content. Please ask your parents or guardians "
@@ -7965,34 +8254,40 @@ msgstr ""
7965
  "Erziehungsberechtigten, dem Service mit dir zuzustimmen!"
7966
 
7967
  #: inc/view/customize/banner/Texts.php:1
 
7968
  msgid ""
7969
  "By accepting all services, you allow {{services}} to be loaded. These "
7970
  "services are divided into groups {{serviceGroups}} according to their "
7971
  "purpose (belonging marked with superscript numbers)."
7972
  msgstr ""
7973
  "Wenn du alle Services akzeptierst, erlaubst du, dass {{services}} geladen "
7974
- "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt "
7975
- "(Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
7976
 
7977
  #: inc/view/customize/banner/Texts.php:1
 
7978
  msgid "Your consent is also applicable on {{websites}}."
7979
  msgstr "Deine Einwilligung gilt auch auf {{websites}}."
7980
 
7981
  #. translators:
7982
  #: inc/view/customize/banner/Texts.php:1
 
7983
  msgid "{{name}} blocked due to privacy settings"
7984
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
7985
 
7986
  #. translators:
7987
  #: inc/view/customize/banner/Texts.php:1
 
7988
  msgid "Show all services you still need to agree to"
7989
  msgstr "Zeige alle Services, denen du noch zustimmen musst"
7990
 
7991
  #: inc/view/customize/banner/Texts.php:1
 
7992
  msgid "Accept required services and load content"
7993
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
7994
 
7995
  #: inc/view/customize/banner/Texts.php:1
 
7996
  msgid ""
7997
  "Loading the blocked content will adjust your privacy settings. Content from "
7998
  "this service will not be blocked in the future. You have the right to revoke "
@@ -8032,18 +8327,22 @@ msgid "The navigation menu could not be found."
8032
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8033
 
8034
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8035
  msgid "Change privacy settings"
8036
  msgstr "Privatsphäre-Einstellungen ändern"
8037
 
8038
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8039
  msgid "Privacy settings history"
8040
  msgstr "Historie der Privatsphäre-Einstellungen"
8041
 
8042
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8043
  msgid "Revoke consents"
8044
  msgstr "Einwilligungen widerrufen"
8045
 
8046
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8047
  msgid ""
8048
  "You have successfully revoked the consent. The page will be reloaded now."
8049
  msgstr ""
@@ -8093,6 +8392,46 @@ msgstr "Bitte gib ein `text`-Attribut in deinem Shortcode an!"
8093
  msgid "Please provide a `type` attribute in your shortcode. Allowed: %s!"
8094
  msgstr "Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: %s!"
8095
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8096
  #~ msgid ""
8097
  #~ "An opt-in script is not required, as this service is probably already "
8098
  #~ "integrated via e.g. your theme. In addition to this service, please "
2
  msgstr ""
3
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
4
  "POT-Creation-Date: n/a\n"
5
+ "PO-Revision-Date: 2022-08-29 14:24+0000\n"
6
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
7
+ "Language-Team: German <https://translate.devowl.io/projects/"
8
+ "wordpress-real-cookie-banner-backend-php/develop/de/>\n"
9
  "Language: de_AT\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
+ "X-Generator: Weblate 4.13.1\n"
15
 
16
  #. Plugin Name of the plugin
17
  msgid "Real Cookie Banner"
172
  "heruntergeladen, wodurch weitere rechtliche Probleme vermieden werden."
173
 
174
  #: inc/Assets.php:1
175
+ msgctxt "legal-text"
176
  msgid "Use on legal basis of"
177
  msgstr "Verwendung auf gesetzlicher Grundlage von"
178
 
179
  #: inc/Assets.php:1
180
+ msgctxt "legal-text"
181
  msgid "Legitimate interest"
182
  msgstr "Berechtigtes Interesse"
183
 
184
  #: inc/Assets.php:1
185
+ msgctxt "legal-text"
186
  msgid "Compliance with a legal obligation"
187
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
188
 
189
  #: inc/Assets.php:1
190
+ msgctxt "legal-text"
191
  msgid "Consent"
192
  msgstr "Einwilligung"
193
 
194
  #: inc/Assets.php:1
195
+ msgctxt "legal-text"
196
  msgid ""
197
  "We have recognized that you are a crawler/bot. Only natural persons must "
198
  "consent to cookies and processing of personal data. Therefore, the link has "
203
  "einwilligen. Daher hat der Link für dich keine Funktion."
204
 
205
  #: inc/Assets.php:1
206
+ msgctxt "legal-text"
207
  msgid "Technical cookie definition"
208
  msgstr "Technische Cookie-Definition"
209
 
210
  #: inc/Assets.php:1
211
+ msgctxt "legal-text"
212
  msgid "Uses cookies"
213
  msgstr "Verwendete Cookies"
214
 
215
  #: inc/Assets.php:1
216
+ msgctxt "legal-text"
217
  msgid "Cookie refresh"
218
  msgstr "Cookie-Auffrischung"
219
 
220
  #: inc/Assets.php:1
221
+ msgctxt "legal-text"
222
  msgid ""
223
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
224
  msgstr ""
226
  "IndexDB, etc.)"
227
 
228
  #: inc/Assets.php:1
229
+ msgctxt "legal-text"
230
  msgid "Host"
231
  msgstr "Host"
232
 
233
+ #: inc/Assets.php:1
234
+ msgctxt "legal-text"
235
  msgid "Duration"
236
  msgstr "Dauer"
237
 
260
  msgstr "Jahr(e)"
261
 
262
  #: inc/Assets.php:1
263
+ msgctxt "legal-text"
264
  msgid "No expiration"
265
  msgstr "Kein Ablauf"
266
 
267
+ #: inc/Assets.php:1
268
+ msgctxt "legal-text"
 
269
  msgid "Type"
270
  msgstr "Typ"
271
 
272
  #: inc/Assets.php:1
273
+ msgctxt "legal-text"
274
  msgid "Purpose"
275
  msgstr "Zweck"
276
 
277
  #: inc/Assets.php:1
278
+ msgctxt "legal-text"
279
  msgid "History of your privacy settings"
280
  msgstr "Privatsphäre-Einstellungen: Historie"
281
 
282
  #: inc/Assets.php:1
283
+ msgctxt "legal-text"
284
  msgid "Show consent from"
285
  msgstr "Einwilligungen anzeigen vom"
286
 
287
  #: inc/Assets.php:1
288
+ msgctxt "legal-text"
289
  msgid "Not yet consented to"
290
  msgstr "Noch nicht eingewilligt"
291
 
298
  msgstr "Schließen ohne Speichern"
299
 
300
  #: inc/Assets.php:1
301
+ msgctxt "legal-text"
302
  msgid "Provider"
303
  msgstr "Anbieter"
304
 
305
  #: inc/Assets.php:1
306
+ msgctxt "legal-text"
307
  msgid "Privacy Policy"
308
  msgstr "Datenschutzerklärung"
309
 
310
  #. translators:
311
  #: inc/Assets.php:1
312
+ msgctxt "legal-text"
313
  msgid "and %d more"
314
  msgstr "und %d mehr"
315
 
316
  #. translators:
317
+ #: inc/Assets.php:1
318
+ msgctxt "legal-text"
319
  msgid "US data processing"
320
  msgstr "US-Datenverarbeitung"
321
 
709
  msgid ""
710
  "In recent months, more clarity has been created about what consent "
711
  "management on websites should look like - and what it shouldn't. In "
712
+ "particular, through the <a href=\"%1$s\" target=\"_blank\">TTDSG</a> "
713
+ "(Telecommunications Telemedia Data Protection Act; Germany) and <a href="
714
+ "\"%2$s\" target=\"_blank\">Guidance of the Conference of Independent Data "
715
+ "Protection Authorities for cookie banners</a> (coordinated legal "
716
+ "interpretation of all German data protection authorities; in German), there "
717
+ "are now clearer rules that further interpret or complement the EU-wide "
718
+ "applicable <a href=\"%3$s\" target=\"_blank\">ePrivacy Directive</a> and <a "
719
+ "href=\"%4$s\" target=\"_blank\">GDPR</a>. Furthermore, there were important "
720
+ "decisions such as the evaluation of <a href=\"%5$s\" target=\"_blank\">TCF "
721
+ "by ADP (Belgium)</a>, the <a href=\"%6$s\" target=\"_blank\">Google "
722
+ "Analytics decision by dsb (Austria)</a> and the <a href=\"%7$s\" target="
723
+ "\"_blank\">position on Google Analytics by CNIL</a>."
 
 
 
 
 
 
724
  msgstr ""
725
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
726
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
727
+ "aussehen sollte. Insbesondere durch das <a href=\"%1$s\" target=\"_blank\""
728
+ ">TTDSG</a> (Telekommunikation-Telemedien-Datenschutz-Gesetz) und die <a href="
729
+ "\"%2$s\" target=\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
 
 
730
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
731
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
732
+ "Regeln, welche die EU-weit geltende <a href=\"%3$s\" target=\"_blank\""
733
+ ">ePrivacy-Richtlinie</a> und <a href=\"%4$s\" target=\"_blank\">DSGVO</a> "
734
+ "weiter auslegen oder ergänzen. Außerdem gab es wichtige Entscheidungen wie "
735
+ "die Bewertung von <a href=\"%5$s\" target=\"_blank\">TCF durch ADP "
736
+ "(Belgien)</a>, die <a href=\"%6$s\" target=\"_blank\">Google Analytics "
737
+ "Entscheidung von dsb (Österreich)</a> und die <a href=\"%7$s\" target="
738
+ "\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
739
+
740
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
741
+ msgid "https://www.gesetze-im-internet.de/ttdsg/"
742
+ msgstr "https://www.gesetze-im-internet.de/ttdsg/"
743
+
744
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
745
+ #: inc/view/customize/banner/BodyDesign.php:1
746
+ #: inc/view/customize/banner/Decision.php:1
747
+ #: inc/view/customize/banner/individual/SaveButton.php:1
748
+ msgid ""
749
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
750
+ "pdf"
751
+ msgstr ""
752
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
753
+ "pdf"
754
+
755
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
756
+ msgid "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex%3A32009L0136"
757
+ msgstr "https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32009L0136"
758
+
759
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
760
+ msgid "https://gdpr-info.eu/"
761
+ msgstr "https://dsgvo-gesetz.de/"
762
+
763
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
764
+ msgid ""
765
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
766
+ "n-21-2022-english.pdf"
767
+ msgstr ""
768
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-"
769
+ "fond-n-21-2022-english.pdf"
770
+
771
+ #. translators:
772
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
773
+ msgid ""
774
+ "https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%2$20Google"
775
+ "%20Analytics_DE_bk_0.pdf"
776
+ msgstr ""
777
+ "https://noyb.eu/sites/default/files/2022-01/"
778
+ "E-DSB%20-%2$20Google%20Analytics_DE_bk_0.pdf"
779
+
780
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
781
+ msgid ""
782
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
783
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
784
+ msgstr ""
785
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
786
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
787
 
788
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
789
  msgid ""
844
  #. translators:
845
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
846
  msgid ""
847
+ "In accordance with the requirements of the &quot;<a href=\"%s\" target="
 
848
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
849
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
850
  "and revoke consent must be directly accessible on every sub-page of your "
851
  "website."
852
  msgstr ""
853
+ "Gemäß den Anforderungen des <a href=\"%s\" target=\"_blank\">"
 
854
  "\"Orientierungshilfe der Konferenz der unabhängigen "
855
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
856
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
993
  msgid "Updates in v3.0: You should act to be safe!"
994
  msgstr "Updates in v3.0: Du solltest handeln, um sicher zu sein!"
995
 
996
+ #. translators:
997
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
998
  msgid ""
999
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
1000
  "have implemented, among other things, current legal adjustments. Read more "
1001
+ "about the changes in our <a href=\"%s\" target=\"_blank\">blog post</a>."
 
1002
  msgstr ""
1003
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
1004
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
1005
+ "Änderungen erfährst du in unserem <a href=\"%s\" target=\"_blank\""
1006
+ ">Blogbeitrag.</a>."
1007
+
1008
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1009
+ msgid "https://devowl.io/2022/real-cookie-banner-3-0/"
1010
+ msgstr "https://devowl.io/de/2022/real-cookie-banner-3-0/"
1011
 
1012
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1013
  msgid ""
1065
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1066
  "Vorgehen für deinen Einzelfall zu klären."
1067
 
1068
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1069
+ msgid "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1070
+ msgstr "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1071
+
1072
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1073
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1074
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1075
 
1076
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1077
+ msgid ""
1078
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1079
+ msgstr ""
1080
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1081
+
1082
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1083
  msgid "Statement of the IAB Europe (English)"
1084
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1085
 
1086
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1087
+ msgid ""
1088
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1089
+ msgstr ""
1090
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1091
+
1092
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1093
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1094
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
1467
  "\"_blank\">%3$s</a>. In diesem Fall musst du auch den \"Code bei Opt-in "
1468
  "ausführen\" entfernen."
1469
 
1470
+ #: inc/overrides/pro/presets/ActiveCampaignSiteTrackingPreset.php:1
1471
+ msgid "https://wordpress.org/plugins/activecampaign-subscription-forms/"
1472
+ msgstr "https://de.wordpress.org/plugins/activecampaign-subscription-forms/"
1473
+
1474
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1475
  msgid ""
1476
  "AddThis allows providing links and buttons for sharing content on a variety "
1524
  "Benutzer eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1525
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1526
 
1527
+ #. translators:
1528
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1529
  msgid ""
1530
+ "This template assumes that you use the <a href=\"%s\" target=\"_blank"
1531
+ "\">AddToAny WordPress plugin</a>. The template is not suitable to add "
1532
+ "Facebook Like, Twitter Tweet or Pinterest Pin button in AddToAny. If you "
1533
+ "want to use any of these buttons, please use it without AddToAny and "
1534
+ "additionally create the cookies and content blockers for the respective "
1535
+ "service."
1536
  msgstr ""
1537
+ "Diese Vorlage setzt voraus, dass du das <a href=\"%s\" target=\"_blank\""
1538
+ ">AddToAny WordPress Plugin</a> verwendest. Die Vorlage ist nicht geeignet, "
1539
+ "um Facebook Like, Twitter Tweet oder Pinterest Pin Button in AddToAny "
1540
+ "einzufügen. Wenn du einen dieser Buttons verwenden möchtest, verwende ihn "
1541
+ "bitte ohne AddToAny und erstelle zusätzlich die Cookies und Content Blocker "
1542
+ "für den jeweiligen Dienst."
1543
+
1544
+ #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1545
+ msgid "https://wordpress.org/plugins/add-to-any/"
1546
+ msgstr "https://de.wordpress.org/plugins/add-to-any/"
1547
 
1548
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1549
  msgid ""
1564
  "merken, wie oft welche Werbeplatzierung bereits angezeigt wurde und wie oft "
1565
  "die jeweilige Werbung angeklickt wurde."
1566
 
1567
+ #. translators:
1568
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1569
  msgid ""
1570
+ "Ad Insert plays out ads even without consent. You should <a href=\"%s\" "
1571
+ "target=\"_blank\">obtain consent for the ads via the TCF v2.0 or newer "
1572
+ "standard</a>. Only some features of the plugin require you to obtain consent "
1573
+ "for Ad Inserter."
1574
  msgstr ""
1575
+ "Ad Insert spielt Werbung auch ohne Einwilligung aus. Du solltest <a href=\"%"
1576
+ "s\" target=\"_blank\">die Einwilligung für die Anzeigen über den TCF v2.0 "
1577
+ "oder neueren Standard einholen</a>. Nur für einige Features des Plugins "
1578
+ "musst du die Einwilligung für Ad Inserter einholen."
1579
+
1580
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1581
+ msgid "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1582
+ msgstr "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1583
 
1584
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1585
  msgid ""
1597
  "deaktiviert hast, da dieser Teil des Adblockers Daten an Google und Media."
1598
  "net überträgt, bevor du deine Einwilligung dazu hast."
1599
 
1600
+ #. translators:
1601
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1602
  msgid ""
1603
+ "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"%s\" "
1604
+ "target=\"_blank\">impression and click limits</a> feature of Ad Inserter "
1605
+ "Pro. The duration of the cookie depends on the settings of the feature."
 
1606
  msgstr ""
1607
+ "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn du das <a href=\"%s\" "
1608
+ "target=\"_blank\">Impressions- und Klick-Limit</a> Feature von Ad Inserter "
1609
+ "Pro nutzt. Die Dauer des Cookies hängt von den Einstellungen des Features ab."
1610
+
1611
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1612
+ msgid "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1613
+ msgstr "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1614
 
1615
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1616
  msgid ""
1838
  msgid "Awin Publisher ID"
1839
  msgstr "Awin-Publisher-ID"
1840
 
1841
+ #. translators:
1842
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1843
  msgid ""
1844
+ "You find your publisher ID in the <a href=\"%s\" target=\"_blank\">account "
1845
+ "overview</a> directly blow your account name."
1846
  msgstr ""
1847
+ "Du findest deine Publisher ID in der <a href=\"%s\" target=\"_blank\""
1848
+ ">Account Übersicht</a> direkt unter deinem Benutzernamen."
1849
+
1850
+ #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1851
+ msgid "https://ui.awin.com/user"
1852
+ msgstr "https://ui.awin.com/user"
1853
 
1854
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1855
  msgid ""
1905
  "Auf <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> Du unter Tools > "
1906
  "Conversion tracking > UET tag findest Du Deinen UET-Tag in der Tag-Tabelle."
1907
 
1908
+ #: inc/overrides/pro/presets/BingAdsPreset.php:1
1909
+ msgid "https://ads.microsoft.com"
1910
+ msgstr "https://ads.microsoft.com"
1911
+
1912
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1913
  msgid ""
1914
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
2361
  msgid "etracker Account Key"
2362
  msgstr "etracker Account Key"
2363
 
2364
+ #. translators:
2365
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2366
  msgid ""
2367
+ "You can find your etracker account key under <a href=\"%s\" target=\"_blank"
2368
+ "\">Account info > Settings> Account</a> of your etracker account."
 
2369
  msgstr ""
2370
+ "Du findest deinen etracker Account Key unter <a href=\"%s\" target=\"_blank\""
2371
+ ">Account Info > Einstellungen > Account</a> deines etracker Accounts."
2372
+
2373
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2374
+ msgid "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2375
+ msgstr "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2376
 
2377
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2378
  msgid ""
2389
  "Tracking widersprechen, indem er diesen Service in deinem Cookie Banner "
2390
  "deaktiviert."
2391
 
2392
+ #. translators:
2393
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2394
  msgid ""
2395
  "We also recommend that you deactivate the non-aggregated reporting via the "
2396
+ "<a href=\"%s\" target=\"_blank\">dashboard</a> under <i>menu (top left) > "
2397
+ "Account-ID > Settings > Privacy > Consent-free tracking cookies in "
2398
+ "accordance with CNIL guidelines</i> to ensure that there is definitely no "
2399
+ "personal reference for the collected data."
2400
+ msgstr ""
2401
+ "Wir empfehlen dir zusätzlich über das <a href=\"%s\" target=\"_blank\""
2402
+ ">Dashboard</a> unter <i>Menü (obene links) > Account-ID > Einstellungen > "
2403
+ "Datenschutz > Einwilligungs-freie Tracking Cookies gemäß Anforderungen der "
2404
+ "CNIL</i> die nicht aggregierten Reportings zu deaktivieren, um "
2405
+ "sicherzustellen, dass definitiv kein Personenbezug bei den erhobenen Daten "
2406
+ "besteht."
2407
+
2408
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2409
+ #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2410
+ msgid "https://newapp.etracker.com/"
2411
+ msgstr "https://newapp.etracker.com/"
2412
 
2413
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2414
  msgid "etracker: enhanced tracking"
2456
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2457
  "anreichert."
2458
 
2459
+ #. translators:
2460
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2461
  msgid ""
2462
  "In order for the consent to be taken into account, you must activate the "
2463
+ "toggle \"Opt-In active\" via the <a href=\"%s\" target=\"_blank\">dashboard</"
2464
+ "a> under <i>menu (top left) > Account-ID > Settings > Privacy > Tracking Opt-"
2465
+ "In and agreement</i>, but then switch to \"own Opt-In\" so that etracker "
2466
+ "does not display its own consent dialog, but instead uses the consent "
2467
+ "collected by Real Cookie Banner."
2468
+ msgstr ""
2469
+ "Damit die Einwilligung berücksichtigt wird, musst du via <a href=\"%s\" "
2470
+ "target=\"_blank\">Dashboard</a> unter <i>Menü (oben links) > Account-ID > "
2471
+ "Einstellungen > Datenschutz > Tracking Opt-In und Zustimmung</i> den Toggle "
2472
+ "\"Opt-In aktiv\" aktivieren und anschließend auf \"eigenes Opt-In\" "
2473
+ "umstellen. Damit wird etracker keinen eigenen Einwilligungsdialog anzeigen, "
2474
+ "sondern die Einwilligung, erhoben von Real Cookie Banner, verwenden."
 
2475
 
2476
  #. translators:
2477
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
2779
  "können mit den Daten der auf facebook.com registrierten Benutzer verknüpft "
2780
  "werden."
2781
 
2782
+ #. translators:
2783
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2784
  msgid ""
2785
+ "You can use Facebook's <a href=\"%s\" target=\"_blank\">embedded post "
2786
+ "generator</a> to generate a HTML code to embed post with the Facebook "
2787
+ "JavaScript SDK. Loading the JavaScript SDK is part of the opt-in code. All "
2788
+ "you need to do is place the HTML div and blockqoute elements where you want "
2789
+ "the embedded post to be visible on your site. If you use Facebook post as "
2790
+ "Iframe embeeds, please create in addition a content blocker for Facebook "
2791
+ "Posts to block loading of the content before you have the consent of the "
2792
+ "user."
2793
+ msgstr ""
2794
+ "Du kannst den <a href=\"%s\" target=\"_blank\">Post-Generator von Facebook </"
2795
+ "a> verwenden, um einen HTML-Code zum Einbetten von Posts mit dem Facebook "
 
2796
  "JavaScript SDK zu generieren. Das Laden des JavaScript-SDK ist Teil des Opt-"
2797
  "in Codes. Alles was du tun musst, ist das HTML-Div und blockqoute-Element "
2798
  "dort zu platzieren, wo der eingebettete Beitrag auf deiner Seite sichtbar "
2800
  "bitte zusätzlich einen Inhaltsblocker für Facebook, um das Laden ihres "
2801
  "Inhalts zu blockieren, bevor du die Einwilligung des Nutzers hast."
2802
 
2803
+ #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2804
+ msgid "https://developers.facebook.com/docs/plugins/embedded-posts/"
2805
+ msgstr "https://developers.facebook.com/docs/plugins/embedded-posts/"
2806
+
2807
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2808
  msgid ""
2809
  "Facebook Share button allows users to share a link directly on Facebook. The "
3004
  msgid "Please fill in a valid tracking ID!"
3005
  msgstr "Bitte gib eine gültige Tracking ID an!"
3006
 
3007
+ #. translators:
3008
  #: inc/overrides/pro/presets/GoogleAds.php:1
3009
  msgid ""
3010
+ "You can find your Adwords ID in <a href=\"%s\" target=\"_blank\">Google Ads</"
3011
+ "a> at Tools > Measurement > Conversions > Click on the name of the "
3012
+ "conversation action > Tag setup > Install the tag yourself > Adwords ID in "
3013
+ "the code (e.g. AW-123456789)."
3014
  msgstr ""
3015
+ "Deine Adwords ID findest du in <a href=\"%s\" target=\"_blank\">Google Ads</"
3016
+ "a> unter Tools > Messung > Conversions > Conversion-Aktion > Tag-Einrichtung "
3017
+ "> Tag selbst einfügen > Adwords ID in dem Code (z.B. AW-123456789)."
3018
+
3019
+ #: inc/overrides/pro/presets/GoogleAds.php:1
3020
+ msgid "https://ads.google.com/aw/overview"
3021
+ msgstr "https://ads.google.com/aw/overview"
3022
 
3023
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3024
  msgid ""
3045
  msgid "Google Adsense Publisher ID"
3046
  msgstr "Google Adsense Publisher-ID"
3047
 
3048
+ #. translators:
3049
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3050
  msgid ""
3051
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
3052
  "(if activated in your Adsense account) can be displayed. You can find it in "
3053
+ "the <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> under "
3054
+ "<i>Account > Settings > Account information</i>."
3055
  msgstr ""
3056
+ "Du musst deine Google Adsense Publisher ID eingeben, damit z.B. Auto Ads ("
3057
+ "falls in deinem Adsense Konto aktiviert) angezeigt werden können. Du findest "
3058
+ "sie im <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> unter "
3059
+ "<i>Account > Einstellungen > Kontoinformationen</i>."
3060
+
3061
+ #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3062
+ msgid "https://www.google.com/adsense"
3063
+ msgstr "https://www.google.com/adsense"
3064
 
3065
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3066
  msgid ""
3106
  msgid "Google Analytics Measurement ID"
3107
  msgstr "Google Analytics Measurement-ID"
3108
 
3109
+ #. translators:
3110
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3111
  msgid ""
3112
  "You can find your Measurement ID (also called property ID) in the <a href="
3113
+ "\"%s\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3114
+ "Select your account > Select your property > Setup Assistant > Tag "
3115
+ "installation > Select your website."
3116
  msgstr ""
3117
+ "Du findest deine Measurement ID (auch Property ID genannt) im <a href=\"%s\" "
3118
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3119
+ "Wähle deinen Account aus > Wähle deine Property aus > Setup Assistant > Tag "
3120
+ "Installation > Wähle deine Website aus."
3121
+
3122
+ #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3123
+ #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3124
+ msgid "https://analytics.google.com/analytics/web/"
3125
+ msgstr "https://analytics.google.com/analytics/web/"
3126
 
3127
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3128
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3172
  msgid "Google Analytics Tracking ID"
3173
  msgstr "Google Analytics Tracking-ID"
3174
 
3175
+ #. translators:
3176
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3177
  msgid ""
3178
+ "You can find your Tracking ID (also called Property ID) in the <a href=\"%s"
3179
+ "\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3180
+ "Select your account > Select your property > Tracking Info > Tracking Code."
 
3181
  msgstr ""
3182
+ "Du findest deine Tracking ID (auch Property ID genannt) im <a href=\"%s\" "
3183
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3184
+ "Wähle deinen Account > Wähle deine Property > Tracking Info > Tracking Code."
 
3185
 
3186
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3187
  msgid ""
3425
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
3426
  "Statistiken über sein Verhalten zu sammeln."
3427
 
3428
+ #. translators:
3429
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3430
  msgid ""
3431
+ "You have to create a so-called Beacon on <a href=\"%s\" target=\"_blank"
3432
+ "\">secure.helpscout.net</a> > Manager > Beacon > New Beacon. After creating "
3433
+ "in the Beacon Customizer, the URL looks like <code>https://secure.helpscout."
3434
+ "net/settings/beacons/c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. "
3435
+ "This means that the HelpScout Beacon ID is <code>c676047b-"
3436
+ "c2e8-45b1-8319-344f4e7e2431</code>."
3437
+ msgstr ""
3438
+ "Du musst einen sogenannten Beacon auf <a href=\"%s\" target=\"_blank\">secure"
3439
+ ".helpscout.net</a> > Manager > Beacon > New Beacon erstellen. Nach dem "
3440
+ "Erstellen im Beacon Customizer sieht die URL ähnlich aus wie "
3441
+ "<code>https://secure.helpscout.net/settings/beacons/"
3442
+ "c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. Das bedeutet, dass "
3443
+ "die HelpScout Beacon-ID <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code> "
3444
+ "lautet."
3445
+
3446
+ #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3447
+ msgid "https://secure.helpscout.net"
3448
+ msgstr "https://secure.helpscout.net"
3449
 
3450
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3451
  msgid "HelpScout Beacon ID"
3470
  msgid "Hotjar ID"
3471
  msgstr "Hotjar-ID"
3472
 
3473
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3474
+ msgid "https://wordpress.org/plugins/hotjar/"
3475
+ msgstr "https://de.wordpress.org/plugins/hotjar/"
3476
+
3477
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3478
+ msgid "official Hotjar WordPress Plugin"
3479
+ msgstr "offizielles Hotjar WordPress Plugin"
3480
+
3481
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3482
  msgid ""
3483
  "Imgur allows embedding content posted on imgur.com directly into websites."
3547
  msgid "Intercom application ID"
3548
  msgstr "Intercom Application ID"
3549
 
3550
+ #: inc/overrides/pro/presets/IntercomChatPreset.php:1
3551
+ msgid "https://wordpress.org/plugins/intercom/"
3552
+ msgstr "https://de.wordpress.org/plugins/intercom/"
3553
+
3554
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3555
  msgid ""
3556
  "Issuu allows embedding content posted on issuu.com directly into websites. "
3684
  msgid "https://linkedin.com/legal/privacy-policy"
3685
  msgstr "https://de.linkedin.com/legal/privacy-policy"
3686
 
3687
+ #. translators:
3688
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3689
  msgid ""
3690
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3691
+ "\"%s\" target=\"_blank\">where to find the LinkedIn Partner ID</a> in your "
3692
+ "LinkedIn Ads account."
3693
  msgstr ""
3694
  "Du findest in der Wissensdatenbank von LinkedIn einen Artikel, der dir "
3695
+ "erklärt, <a href=\"%s\" target=\"_blank\">wo du die LinkedIn Partner ID "
3696
+ "findest</a> in deinem LinkedIn Ads Konto."
3697
+
3698
+ #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3699
+ msgid "https://www.linkedin.com/help/lms/answer/a415871"
3700
+ msgstr "https://www.linkedin.com/help/lms/answer/a415871"
3701
 
3702
  #: inc/overrides/pro/presets/LoomPreset.php:1
3703
  msgid ""
3823
  "Anmeldung verwendest, das versteckt werden kann (z.B. Popup). Nur in diesem "
3824
  "Fall wird ein Cookie gesetzt."
3825
 
3826
+ #. translators:
3827
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3828
  msgid ""
3829
  "Personal data will never be transferred directly from the browser of your "
3830
  "visitors to MailPoet, but only, for example, when you sign up for the "
3831
  "newsletter via your WordPress installation. You should always follow the <a "
3832
+ "href=\"%s\" target=\"_blank\">MailPoet Guide to Conform to GDPR</a>."
 
3833
  msgstr ""
3834
  "Personenbezogene Daten werden niemals direkt vom Browser deiner Besucher an "
3835
  "MailPoet übertragen, sondern nur z.B. bei der Anmeldung zum Newsletter über "
3836
+ "deine WordPress-Installation. Du solltest immer den <a href=\"%s\" target="
3837
+ "\"_blank\">MailPoet Guide to Conform to GDPR</a>. beachten."
3838
+
3839
+ #: inc/overrides/pro/presets/MailPoetPreset.php:1
3840
+ msgid "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3841
+ msgstr "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3842
 
3843
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3844
  msgid ""
3914
  msgid "Please provide a valid hash!"
3915
  msgstr "Bitte gib einen gültigen Hash an!"
3916
 
3917
+ #. translators:
3918
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3919
  msgid ""
3920
+ "You find your Metricool hash in the <a href=\"%s\" target=\"_blank"
3921
+ "\">Metricool Brand Conncetions</a>, if you use \"Connect web\" and choose "
3922
+ "the integration as JavaScript tag, within the generated JavaScript."
 
3923
  msgstr ""
3924
+ "Du findest deinen Metricool Hash in den <a href=\"%s\" target=\"_blank\""
3925
+ ">Metricool Brand Conncetions</a>, wenn du \"Connect web\" nutzt und die "
3926
+ "Integration als JavaScript-Tag auswählst, innerhalb des generierten "
3927
+ "JavaScript."
3928
+
3929
+ #: inc/overrides/pro/presets/MetricoolPreset.php:1
3930
+ msgid "https://app.metricool.com/brands/connections"
3931
+ msgstr "https://app.metricool.com/brands/connections"
3932
 
3933
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3934
  msgid ""
3959
  "projects/view/12cggd77jl/</code> lautet, ist deine Projekt-ID "
3960
  "<code>12cggd77jl</code>."
3961
 
3962
+ #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3963
+ msgid "https://wordpress.org/plugins/microsoft-clarity/"
3964
+ msgstr "https://de.wordpress.org/plugins/microsoft-clarity/"
3965
+
3966
  #. translators:
3967
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3968
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
3998
  msgid "Mouseflow Website ID"
3999
  msgstr "Mouseflow Website-ID"
4000
 
4001
+ #. translators:
4002
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
4003
  msgid ""
4004
  "You can find your Mouseflow website ID by hovering over the appropriate "
4005
+ "website at <a href=\"%s\" target=\"_blank\">eu.mouseflow.com/websites</a>. "
4006
+ "You will then see a gear icon that you can click on. In the settings that "
4007
+ "appear, you should find a <code>Website ID</code> field."
 
4008
  msgstr ""
4009
+ "Du findest deine Mouseflow Website ID, indem du auf <a href=\"%s\" target="
4010
+ "\"_blank\">eu.mouseflow.com/websites</a> mit dem Mauszeiger über die "
4011
+ "entsprechende Website fährst. Du siehst dann ein Zahnradsymbol, auf das du "
4012
+ "klicken kannst. In den Einstellungen, die dann erscheinen, solltest du ein "
4013
+ "Feld <code>Website ID</code> finden."
4014
+
4015
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4016
+ msgid "http://eu.mouseflow.com/websites"
4017
+ msgstr "http://eu.mouseflow.com/websites"
4018
+
4019
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4020
+ msgid "https://wordpress.org/plugins/mouseflow-for-wordpress/"
4021
+ msgstr "https://de.wordpress.org/plugins/mouseflow-for-wordpress/"
4022
 
4023
  #. translators:
4024
  #: inc/overrides/pro/presets/MtmPreset.php:1
4250
  msgid "Pinterest Tag ID"
4251
  msgstr "Pinterest Tag-ID"
4252
 
4253
+ #. translators:
4254
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4255
  msgid ""
4256
+ "You can view your Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</"
4257
+ "a> under Ads > Conversions > Add code to website > Add code. It is displayed "
4258
+ "in the top right corner of the modal."
4259
  msgstr ""
4260
+ "Du kannst deine Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</a> "
4261
+ "unter Anzeigen > Conversions > Code zur Website hinzufügen > Code hinzufügen "
4262
+ "einsehen. Er wird in der oberen rechten Ecke des Modals angezeigt."
4263
+
4264
+ #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4265
+ msgid "https://ads.pinterest.com/"
4266
+ msgstr "https://ads.pinterest.com/"
4267
 
4268
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4269
  msgid ""
4435
  "speichern die Sprache des Nutzers und können den Nutzer auf die Version der "
4436
  "Webseite umleiten, welche der Sprache des Browsers des Nutzers entspricht."
4437
 
4438
+ #. translators:
4439
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4440
  msgid ""
4441
  "Please make sure you have not renamed the Polylang cookie name or change it "
4442
  "in the same way in the technical definitions above. Learn more about how to "
4443
+ "change the Polylang cookie name <a href=\"%s\" target=\"_blank\">in their "
 
4444
  "documentation</a>."
4445
  msgstr ""
4446
  "Bitte vergewissere dich, dass du den Namen des Polylang Cookies nicht "
4447
  "umbenannt oder in den technischen Definitionen oben auf die gleiche Weise "
4448
  "geändert hast. Mehr darüber, wie man den Polylang Cookie-Namen ändert, "
4449
+ "findest du <a href=\"%s\" target=\"_blank\">in der Dokumentation</a>."
4450
+
4451
+ #: inc/overrides/pro/presets/PolyLangPreset.php:1
4452
+ msgid "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4453
+ msgstr "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4454
 
4455
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4456
  msgid ""
4756
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4757
  "Statistiken über sein Verhalten zu sammeln."
4758
 
4759
+ #. translators:
4760
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4761
  msgid ""
4762
+ "You can create your own custom chat widget at <a href=\"%s\" target=\"_blank"
4763
+ "\">dashboard.tawk.to</a> > Settings > Chat Widget. The chat widget in the "
4764
+ "opt-in code is just the default example."
4765
  msgstr ""
4766
+ "Du kannst dein eigenes benutzerdefiniertes Chat-Widget unter <a href=\"%s\" "
4767
+ "target=\"_blank\">dashboard.tawk.to</a> > Einstellungen > Chat Widget "
4768
+ "erstellen. Das Chat-Widget im Opt-in Code ist nur das Standardbeispiel."
4769
+
4770
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4771
+ msgid "https://dashboard.tawk.to"
4772
+ msgstr "https://dashboard.tawk.to"
4773
 
4774
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4775
  msgid "tawk.to ID"
4776
  msgstr "tawk.to ID"
4777
 
4778
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4779
+ msgid "https://wordpress.org/plugins/tawkto-live-chat/"
4780
+ msgstr "https://de.wordpress.org/plugins/tawkto-live-chat/"
4781
+
4782
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4783
  msgid ""
4784
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
4818
  "Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4819
  "Statistiken über sein Verhalten zu sammeln."
4820
 
4821
+ #. translators:
4822
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4823
  msgid ""
4824
+ "You get your Tidio JS ID on <a href=\"%s\" target=\"_blank\">tidio.com</a> "
4825
+ "under Settings > Live Chat > Integration > JavaScript in the given "
4826
+ "JavaScript snipped. You can adjust the appearance of the chat at tidio.com "
4827
+ "under Settings > Live Chat > Appearance."
4828
  msgstr ""
4829
+ "Du bekommst deine Tidio JS ID auf <a href=\"%s\" target=\"_blank\">tidio."
4830
+ "com</a> unter Einstellungen > Live Chat > Integration > JavaScript in dem "
4831
+ "angegebene JavaScript-Code. Du kannst das Aussehen des Chats auf tidio.com "
4832
+ "unter Einstellungen > Live Chat > Aussehen anpassen."
4833
+
4834
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4835
+ msgid "https://tidio.com"
4836
+ msgstr "https://www.tidio.com/de/"
4837
 
4838
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4839
  msgid "Tidio JS ID"
4840
  msgstr "Tidio JS-ID"
4841
 
4842
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4843
+ msgid "https://wordpress.org/plugins/tidio-live-chat/"
4844
+ msgstr "https://de.wordpress.org/plugins/tidio-live-chat/"
4845
+
4846
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4847
  msgid ""
4848
  "TikTok Pixel helps to determine whether you are the target audience for "
4874
  msgid "TikTok Pixel ID"
4875
  msgstr "TikTok Pixel-ID"
4876
 
4877
+ #. translators:
4878
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4879
  msgid ""
4880
+ "In the <a href=\"%s\" target=\"_blank\">Event Manager of the TikTok Ad "
4881
+ "Manager</a> you can create a website pixel. Select \"Manually install pixel "
4882
+ "code\" for the type of integration. Whether you want to use the \"Standard "
4883
+ "Mode\" or \"Developer Mode\" depends on your purpose."
 
4884
  msgstr ""
4885
+ "Im <a href=\"%s\" target=\"_blank\">Event Manager des TikTok Ad Managers</a> "
4886
+ "kannst du ein Website-Pixel erstellen. Wähle für die Art der Integration "
4887
+ "\"Manually install pixel code\". Ob du den \"Standard Mode\" oder den "
4888
+ "\"Developer Mode\" verwenden möchtest, hängt von deinem Vorhaben ab."
4889
+
4890
+ #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4891
+ msgid "https://ads.tiktok.com/i18n/events_manager/"
4892
+ msgstr "https://ads.tiktok.com/i18n/events_manager/"
4893
 
4894
+ #. translators:
4895
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4896
  msgid ""
4897
+ "After creating the TikTok Pixel you return to the <a href=\"%s\" target="
4898
+ "\"_blank\">Event Manager of the TikTok Ad Manager</a> and select \"Manage\" "
4899
+ "in the section \"Website Pixel\". You will then see an overview of all the "
4900
+ "TikTok pixels you have created. Each TikTok pixel has its ID directly under "
4901
+ "its name."
4902
  msgstr ""
4903
+ "Nach der Erstellung des TikTok Pixel kehrst du zum <a href=\"%s\" target="
4904
+ "\"_blank\">Event Manager des TikTok Ad Managers</a> zurück und wählst im "
4905
+ "Abschnitt \"Website Pixel\" den Punkt \"Manage\". Du siehst dann eine "
4906
+ "Übersicht über alle TikTok Pixel, die du erstellt hast. Jedes TikTok-Pixel "
4907
+ "hat seine ID direkt unter seinem Namen."
4908
 
4909
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4910
  msgid ""
5021
  msgid "https://www.userlike.com/en/terms#privacy-policy"
5022
  msgstr "https://www.userlike.com/de/terms#privacy-policy"
5023
 
5024
+ #. translators:
5025
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5026
  msgid ""
5027
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
5028
+ "You can find it in the <a href=\"%s\" target=\"_blank\">Userlike widget "
5029
+ "configurator</a> > Name of the widget > Install > JavaScript Widget code."
 
 
5030
  msgstr ""
5031
  "Bitte füge als Opt-in Code den JavaScript Code deines Userlike Widgets ein. "
5032
+ "Du findest ihn unter <a href=\"%s\" target=\"_blank\">Userlike Widget-"
5033
+ "Konfigurator</a> > Name des Widgets > Installieren > JavaScript Widget code."
5034
+
5035
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5036
+ msgid "https://userlike.com/en/dashboard/um/config/um_widget/overview"
5037
+ msgstr "https://userlike.com/de/dashboard/um/config/um_widget/overview"
5038
 
5039
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5040
  msgid "Example opt-in code"
5041
  msgstr "Beispiel Opt-in Code"
5042
 
5043
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5044
+ msgid "https://wordpress.org/plugins/userlike/"
5045
+ msgstr "https://de.wordpress.org/plugins/userlike/"
5046
+
5047
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5048
+ msgid "Userlike WordPress Plugin"
5049
+ msgstr "Userlike WordPress-Plugin"
5050
+
5051
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5052
  msgid ""
5053
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
5114
  "\"essenzielles Cookie\" und keinen Content Blocker wirst du die volle dir "
5115
  "zustehende Ausschüttungen der VG WORT erhalten können."
5116
 
5117
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5118
+ msgid ""
5119
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5120
+ msgstr ""
5121
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5122
+
5123
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5124
+ msgid "https://www.gesetze-im-internet.de/urhg/__53.html"
5125
+ msgstr "https://www.gesetze-im-internet.de/urhg/__53.html"
5126
+
5127
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5128
  msgid ""
5129
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
5374
  "Du findest Deine Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5375
  "\">Yandex Metrica Tags Liste</a>."
5376
 
5377
+ #: inc/overrides/pro/presets/YandexMetricaPreset.php:1
5378
+ msgid "https://metrica.yandex.com/list/"
5379
+ msgstr "https://metrica.yandex.com/list/"
5380
+
5381
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5382
  msgid ""
5383
  "Zendesk Chat is a customer service tool that provides live chat for "
5406
  "Du findest den Zendesk Widget Key im Zendesk Backend unter Einstellungen > "
5407
  "Widget > Web Widget einbetten als Teil des JavaScript Codes."
5408
 
5409
+ #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5410
+ msgid "https://wordpress.org/plugins/zopim-live-chat/"
5411
+ msgstr "https://de.wordpress.org/plugins/zopim-live-chat/"
5412
+
5413
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5414
  msgid ""
5415
  "Zoho Bookings is a planning software the allows you to book book "
5663
  "du in den individuellen Privatsphäre-Einstellungen."
5664
 
5665
  #: inc/overrides/pro/view/TcfBanner.php:1
5666
+ msgctxt "legal-text"
5667
  msgid ""
5668
  "In addition, you consent to the transfer of data to partners under the TCF "
5669
  "standard for the following purposes:"
5672
  "des TCF-Standards für die folgenden Zwecke zu:"
5673
 
5674
  #: inc/overrides/pro/view/TcfBanner.php:1
5675
+ msgctxt "legal-text"
5676
  msgid "Vendor list"
5677
  msgstr "Liste der Anbieter"
5678
 
5679
  #: inc/overrides/pro/view/TcfBanner.php:1
5680
+ msgctxt "legal-text"
5681
  msgid "Vendors"
5682
  msgstr "Anbieter"
5683
 
5691
  msgstr "Verstecken"
5692
 
5693
  #: inc/overrides/pro/view/TcfBanner.php:1
5694
+ msgctxt "legal-text"
5695
  msgid "Data processing on the legal basis of:"
5696
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5697
 
5698
  #: inc/overrides/pro/view/TcfBanner.php:1
5699
+ msgctxt "legal-text"
5700
  msgid "No vendor requests purposes under this legal basis."
5701
  msgstr "Kein Anbieter beantragt Zwecke auf dieser Rechtsgrundlage."
5702
 
5703
  #: inc/overrides/pro/view/TcfBanner.php:1
5704
+ msgctxt "legal-text"
5705
  msgid "Non-standardized data processing"
5706
  msgstr "Nicht standardisierte Datenverarbeitung"
5707
 
5708
  #: inc/overrides/pro/view/TcfBanner.php:1
5709
+ msgctxt "legal-text"
5710
  msgid ""
5711
  "Some services set cookies and/or process personal data without complying "
5712
  "with consent communication standards. These services are divided into "
5724
  "nach einer Einwilligung genutzt werden."
5725
 
5726
  #: inc/overrides/pro/view/TcfBanner.php:1
5727
+ msgctxt "legal-text"
5728
  msgid "Data processing standardized according to TCF"
5729
  msgstr "Datenverarbeitung standardisiert nach TCF"
5730
 
5731
  #: inc/overrides/pro/view/TcfBanner.php:1
5732
+ msgctxt "legal-text"
5733
  msgid ""
5734
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5735
  "consistent consent for processing of personal data and cookie setting. This "
5745
  "gesetzt, verarbeitet und gespeichert werden."
5746
 
5747
  #: inc/overrides/pro/view/TcfBanner.php:1
5748
+ msgctxt "legal-text"
5749
  msgid "Purposes"
5750
  msgstr "Zwecke"
5751
 
5752
  #: inc/overrides/pro/view/TcfBanner.php:1
5753
+ msgctxt "legal-text"
5754
  msgid ""
5755
  "Purposes describe for which purpose which providers may set cookies and "
5756
  "process personal data. Purposes are pre-selected if there is a legitimate "
5764
  "Einwilligung verarbeitet."
5765
 
5766
  #: inc/overrides/pro/view/TcfBanner.php:1
5767
+ msgctxt "legal-text"
5768
  msgid "Special purposes"
5769
  msgstr "Besondere Zwecke"
5770
 
5771
  #: inc/overrides/pro/view/TcfBanner.php:1
5772
+ msgctxt "legal-text"
5773
  msgid ""
5774
  "Special purposes for setting cookies and processing personal data by our "
5775
  "vendors describe purposes for which we have a legitimate interest that "
5781
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5782
 
5783
  #: inc/overrides/pro/view/TcfBanner.php:1
5784
+ msgctxt "legal-text"
5785
  msgid "Features"
5786
  msgstr "Funktionen"
5787
 
5788
  #: inc/overrides/pro/view/TcfBanner.php:1
5789
+ msgctxt "legal-text"
5790
  msgid ""
5791
  "Features for processing personal data describe how data is used to fulfill "
5792
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
5800
  "Jeder Zweck kann dazu führen, dass Funktionen verwendet werden."
5801
 
5802
  #: inc/overrides/pro/view/TcfBanner.php:1
5803
+ msgctxt "legal-text"
5804
  msgid "Special features"
5805
  msgstr "Besondere Funktionen"
5806
 
5807
  #: inc/overrides/pro/view/TcfBanner.php:1
5808
+ msgctxt "legal-text"
5809
  msgid ""
5810
  "Special features for processing personal data describe how data is used to "
5811
  "fulfill one or more purposes in a profound way. Personal data will only be "
6119
  "(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
6120
  "feststellen."
6121
 
6122
+ #. translators:
6123
  #: inc/presets/free/GoogleFontsPreset.php:1
6124
  msgid ""
6125
+ "We therefore recommend <a href=\"%s\" target=\"_blank\">replacing Google "
6126
+ "Fonts with locally hosted fonts</a> when possible, rather than asking for "
6127
+ "consent. We explained how this works in our blog!"
 
6128
  msgstr ""
6129
+ "Wir empfehlen daher, <a href=\"%s\" target=\"_blank\">Google Fonts wenn "
6130
+ "möglich durch lokal gehostete Schriftarten zu ersetzen</a>, anstatt nach "
6131
+ "einer Einwilligung zu fragen. Wie das funktioniert, haben wir in unserem "
6132
+ "Blog erklärt!"
6133
+
6134
+ #: inc/presets/free/GoogleFontsPreset.php:1
6135
+ msgid "https://devowl.io/2022/google-fonts-wordpress-gdpr/"
6136
+ msgstr "https://devowl.io/de/2022/google-fonts-wordpress-dsgvo/"
6137
 
6138
  #: inc/presets/free/GravatarPreset.php:1
6139
  msgid ""
6303
  "Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für diesen Dienst "
6304
  "muss ein Service angelegt werden."
6305
 
6306
+ #. translators:
6307
  #: inc/presets/free/WordPressCommentsPreset.php:1
6308
  msgid ""
6309
  "Do you want to use the comment feature on your website at all? If not, we "
6310
+ "explain in our blog <a href=\"%s\" target=\"_blank\"> how to disable "
6311
+ "comments in WordPress</a>. Then you can also avoid this consent!"
 
6312
  msgstr ""
6313
  "Willst du die Kommentarfunktion auf deiner Website überhaupt nutzen? Wenn "
6314
+ "nicht, erklären wir in unserem Blog, <a href=\"%s\" target=\"_blank\">wie du "
6315
+ "Kommentare in WordPress deaktivieren kannst</a>. Dann kannst du dir die "
6316
+ "Einwilligung auch sparen!"
6317
+
6318
+ #: inc/presets/free/WordPressCommentsPreset.php:1
6319
+ msgid "https://devowl.io/2022/deactivate-wordpress-comments/"
6320
+ msgstr "https://devowl.io/de/2022/wordpress-kommentare-deaktivieren/"
6321
 
6322
  #: inc/presets/free/WordPressEmojisPreset.php:1
6323
  msgid ""
6347
  "können Emojis problemlos ohne das WordPressa-Emoji-Script anzeigen (für das "
6348
  "du diese Einwilligung einholen musst)."
6349
 
6350
+ #. translators:
6351
  #: inc/presets/free/WordPressEmojisPreset.php:1
6352
  msgid ""
6353
  "Unless you need to support particularly old browsers and operating systems, "
6354
+ "we recommend that you <a href=\"%s\" target=\"_blank\">disable the WordPress "
6355
+ "emoji script</a> rather than asking for consent. How to do that, we have "
6356
+ "explained in our blog!"
6357
  msgstr ""
6358
  "Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
6359
+ "musst, empfehlen wir dir, das <a href=\"%s\" target=\"_blank\">WordPress-"
6360
+ "Emoji-Script zu deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. "
6361
+ "Wie du das machst, haben wir in unserem Blog erklärt!"
6362
+
6363
+ #: inc/presets/free/WordPressEmojisPreset.php:1
6364
+ msgid "https://devowl.io/2022/disable-emojis-wordpress/"
6365
+ msgstr "https://devowl.io/de/2022/wordpress-emojis-deaktivieren/"
6366
 
6367
  #: inc/presets/free/WordPressPluginEmbed.php:1
6368
  msgid ""
6624
 
6625
  #: inc/presets/UpdateNotice.php:1
6626
  msgid ""
6627
+ "Changes have been made to the templates you use in Real Cookie Banner. You "
6628
+ "should review the proposed changes and adjust your services if necessary to "
6629
+ "be able to remain legally compliant. The following services are affected:"
6630
  msgstr ""
6631
+ "Es wurden Änderungen an den Vorlagen vorgenommen, die du in Real Cookie "
6632
+ "Banner verwendest. Du solltest die vorgeschlagenen Änderungen überprüfen und "
6633
+ "deine Services gegebenenfalls anpassen, um rechtskonform zu bleiben. Die "
6634
+ "folgenden Services sind betroffen:"
6635
 
6636
  #: inc/presets/UpdateNotice.php:1
6637
  msgid "Service (Cookie)"
6638
  msgstr "Service (Cookie)"
6639
 
6640
  #: inc/presets/UpdateNotice.php:1
6641
+ msgid "Review changes"
6642
+ msgstr "Änderungen überprüfen"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6643
 
6644
  #: inc/presets/UpdateNotice.php:1
6645
  msgid "Dismiss this notice"
6700
  msgstr "Service-Gruppe"
6701
 
6702
  #: inc/settings/CookieGroup.php:1
6703
+ msgctxt "legal-text"
6704
  msgid ""
6705
  "Essential services are required for the basic functionality of the website. "
6706
  "They only contain technically necessary services. These services cannot be "
6711
  "Services kann nicht widersprochen werden."
6712
 
6713
  #: inc/settings/CookieGroup.php:1
6714
+ msgctxt "legal-text"
6715
  msgid ""
6716
  "Functional services are necessary to provide features beyond the essential "
6717
+ "functionality such as prettier fonts, video playback or interactive web 2.0 "
6718
  "features. Content from e.g. video platforms and social media platforms are "
6719
  "blocked by default, and can be consented to. If the service is agreed to, "
6720
  "this content is loaded automatically without further manual consent."
6727
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6728
 
6729
  #: inc/settings/CookieGroup.php:1
6730
+ msgctxt "legal-text"
6731
  msgid ""
6732
  "Statistics services are needed to collect pseudonymous data about the "
6733
  "visitors of the website. The data enables us to understand visitors better "
6738
  "besser zu verstehen und die Website zu optimieren."
6739
 
6740
  #: inc/settings/CookieGroup.php:1
6741
+ msgctxt "legal-text"
6742
  msgid ""
6743
  "Marketing services are used by us and third parties to track the behaviour "
6744
  "of individual visitors (across multiple pages), analyse the data collected "
6746
  "us to track visitors across multiple websites."
6747
  msgstr ""
6748
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6749
+ "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und "
6750
+ "z.B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6751
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6752
 
6753
  #: inc/settings/Revision.php:1
6892
 
6893
  #: inc/view/checklist/SaveSettings.php:1
6894
  msgid ""
6895
+ "Decide which features should be enabled in your cookie banner depending on "
6896
+ "your needs."
6897
  msgstr ""
6898
+ "Entscheide, welche Features in deinem Cookie Banner nach deinen "
6899
+ "Anforderungen aktiviert sein sollen."
6900
 
6901
  #: inc/view/checklist/SaveSettings.php:1
6902
  msgid "Manage settings"
6909
  #: inc/view/checklist/Scanner.php:1
6910
  msgid ""
6911
  "Scan your website to identify services used and external URLs that may "
6912
+ "transmit personal data and/or set cookies."
6913
  msgstr ""
6914
  "Scanne deine Website, um genutzte Services und externe URLs zu "
6915
+ "identifizieren, die persönliche Daten übertragen und/oder Cookies setzen "
6916
+ "können."
6917
 
6918
  #: inc/view/checklist/Scanner.php:1
6919
  msgid "Open scanner"
6927
  msgid ""
6928
  "Your website visitors must be able to view their consent history, change "
6929
  "their consent, or withdraw their consent at any time. This must be as easy "
6930
+ "as giving consent. Therefore, the legal links must be included on every "
6931
  "subpage of the website (e.g. in the footer)."
6932
  msgstr ""
6933
  "Deine Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6934
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6935
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6936
+ "Deshalb müssen die rechtlichen Links auf jeder Unterseite der Website zu "
6937
+ "finden sein (z. B. im Footer/Fußzeile)."
6938
 
6939
  #: inc/view/checklist/Shortcode.php:1
6940
  msgid "Create legal links"
6941
+ msgstr "Rechtliche Links erstellen"
6942
 
6943
  #: inc/view/checklist/ViewStats.php:1
6944
  msgid "Check out statistics about consents"
7014
  msgid "Enabled"
7015
  msgstr "Aktiviert"
7016
 
7017
+ #: inc/view/customize/banner/BasicLayout.php:1
7018
+ msgid ""
7019
+ "The animation you choose will have a negative impact on your PageSpeed "
7020
+ "Insights score. Please choose an animation where the cookie banner is "
7021
+ "animated from outside the website to achieve the best website loading speed!"
7022
+ msgstr ""
7023
+ "Die von dir gewählte Animation hat einen negativen Einfluss auf deinen "
7024
+ "PageSpeed Insights Score. Bitte wähle eine Animation, bei der das Cookie "
7025
+ "Banner von außerhalb der Website animiert wird, um die beste "
7026
+ "Ladegeschwindigkeit der Website zu erreichen!"
7027
+
7028
  #: inc/view/customize/banner/BasicLayout.php:1
7029
  msgid "Basic Layout"
7030
  msgstr "Grundlegendes Layout"
7119
  msgid "Animation on display"
7120
  msgstr "Animation beim Einblenden"
7121
 
7122
+ #: inc/view/customize/banner/BasicLayout.php:1
7123
+ #: inc/view/customize/banner/BodyDesign.php:1
7124
+ #: inc/view/customize/banner/individual/SaveButton.php:1
7125
+ msgid "Type"
7126
+ msgstr "Typ"
7127
+
7128
+ #: inc/view/customize/banner/BasicLayout.php:1
7129
+ msgid "Duration"
7130
+ msgstr "Dauer"
7131
+
7132
  #: inc/view/customize/banner/BasicLayout.php:1
7133
  msgid "Animation only on mobile devices"
7134
  msgstr "Animation nur auf mobilen Geräten"
7335
  msgid "Use the same stylings as for \"Accept all\""
7336
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7337
 
7338
+ #. translators:
7339
  #: inc/view/customize/banner/BodyDesign.php:1
7340
  #: inc/view/customize/banner/individual/SaveButton.php:1
7341
  msgid ""
7342
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7343
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7344
  "way for your visitors to express their choice (agree to everything, continue "
7345
  "without consent or an indivudual decision). Equivalent does not necessarily "
7346
  "mean that the buttons/links must look exactly the same. However, you should "
7347
  "be safest if they look exactly the same."
7348
  msgstr ""
7349
+ "Gemäß der <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7350
+ "Datenschutzbehörden</a> muss es für deine Besucher eine gleichwertige "
7351
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7352
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
 
7353
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7354
  "aussehen müssen. Am sichersten bist du jedoch, wenn sie genau gleich "
7355
  "aussehen."
7455
  msgstr "Einwilligungs-Optionen"
7456
 
7457
  #: inc/view/customize/banner/Decision.php:1
 
7458
  msgid "Accept all"
7459
  msgstr "Alle akzeptieren"
7460
 
7461
  #. translators:
7462
  #: inc/view/customize/banner/Decision.php:1
7463
  msgid ""
7464
+ "According to the %1$sGDPR recital 32%2$s, you are not allowed to pre-select "
7465
+ "services in the form of pre-selected checkboxes for the visitor. However, "
7466
+ "the GDPR and ePrivacy Directive do not prohibit the use of a button to agree "
7467
+ "to all services, if there is also a button to agree only to the essential "
7468
+ "services or to make a user-defined selection."
7469
  msgstr ""
7470
+ "Gemäß der %1$sDSGVO Erwägungsgrund 32%2$s darfst du keine Services in Form "
7471
+ "von vorselektierten Checkboxen für den Besucher auswählen. Die DSGVO und die "
7472
+ "ePrivacy-Richtlinie verbieten jedoch nicht die Verwendung eines Buttons zur "
7473
+ "Einwilligung in alle Services, wenn es auch einen Button gibt, um nur den "
7474
+ "essenziellen Services zuzustimmen oder um eine benutzerdefinierte Auswahl zu "
7475
+ "treffen."
7476
+
7477
+ #: inc/view/customize/banner/Decision.php:1
7478
+ msgid "https://gdpr-info.eu/recitals/no-32/"
7479
+ msgstr "https://dsgvo-gesetz.de/erwaegungsgruende/nr-32/"
7480
 
7481
  #: inc/view/customize/banner/Decision.php:1
7482
  #: inc/view/customize/banner/individual/SaveButton.php:1
7490
  msgstr "Link"
7491
 
7492
  #: inc/view/customize/banner/Decision.php:1
 
7493
  msgid "Continue without consent"
7494
  msgstr "Weiter ohne Einwilligung"
7495
 
7522
  "Einwilligung\"."
7523
 
7524
  #: inc/view/customize/banner/Decision.php:1
 
7525
  msgid "Individual privacy preferences"
7526
  msgstr "Individuelle Privatsphäre-Einstellungen"
7527
 
7528
  #: inc/view/customize/banner/Decision.php:1
7529
  msgid ""
7530
+ "According to the GDPR and the ePrivacy Directive, the user must be free to "
7531
+ "choose which services to use and be informed about their purpose before "
7532
+ "giving consent. Therefore, the user must be given the opportunity to access "
7533
+ "the page with the individual privacy settings."
7534
  msgstr ""
7535
+ "Gemäß der DSGVO und der ePrivacy-Richtlinie muss der Nutzer frei wählen "
7536
+ "können, welche Services genutzt werden sollen und über deren Zweck "
7537
+ "informiert werden, bevor er seine Einwilligung gibt. Daher muss dem Nutzer "
7538
+ "die Möglichkeit gegeben werden, die Seite mit den individuellen Privatsphäre-"
7539
+ "Einstellungen aufzurufen."
7540
 
7541
  #: inc/view/customize/banner/Decision.php:1
7542
  msgid "Order of the buttons"
7543
  msgstr "Reihenfolge der Buttons"
7544
 
7545
+ #. translators:
7546
  #: inc/view/customize/banner/Decision.php:1
7547
  msgid ""
7548
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7549
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7550
  "way for your visitors to express their choice (agree to everything, continue "
7551
  "without consent or an indivudual decision). Which order of options is "
7552
  "considered equivalent is unclear. Therefore, the options should be arranged "
7553
  "according to the cultural conditions of the main target country."
7554
  msgstr ""
7555
+ "Gemäß der <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7556
+ "Datenschutzbehörden</a> muss es für deine Besucher eine gleichwertige "
7557
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7558
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). Welche "
7559
+ "Reihenfolge der Optionen als gleichwertig gilt, ist unklar. Daher sollten "
7560
+ "die Optionen nach den kulturellen Gegebenheiten des Hauptziellandes "
 
7561
  "angeordnet werden."
7562
 
7563
  #: inc/view/customize/banner/Decision.php:1
7589
  msgstr ""
7590
  "Text von “Alle akzeptieren” ändert sich, wenn der Benutzer die Auswahl ändert"
7591
 
7592
+ #: inc/view/customize/banner/Decision.php:1
7593
+ #: inc/view/customize/banner/Texts.php:1
7594
+ msgctxt "legal-text"
7595
+ msgid "Accept all"
7596
+ msgstr "Alle akzeptieren"
7597
+
7598
+ #: inc/view/customize/banner/Decision.php:1
7599
+ #: inc/view/customize/banner/Texts.php:1
7600
+ msgctxt "legal-text"
7601
+ msgid "Continue without consent"
7602
+ msgstr "Weiter ohne Einwilligung"
7603
+
7604
+ #: inc/view/customize/banner/Decision.php:1
7605
+ #: inc/view/customize/banner/individual/Texts.php:1
7606
+ msgctxt "legal-text"
7607
+ msgid "Individual privacy preferences"
7608
+ msgstr "Individuelle Privatsphäre-Einstellungen"
7609
+
7610
  #: inc/view/customize/banner/Decision.php:1
7611
  #: inc/view/customize/banner/individual/Texts.php:1
7612
+ msgctxt "legal-text"
7613
  msgid "Save custom choices"
7614
  msgstr "Individuelle Auswahlen speichern"
7615
 
7853
 
7854
  #: inc/view/customize/banner/individual/Texts.php:1
7855
  #: inc/view/customize/banner/Texts.php:1
7856
+ msgctxt "legal-text"
7857
  msgid ""
7858
  "We use cookies and similar technologies on our website and process your "
7859
  "personal data (e.g. IP address), for example, to personalize content and "
7872
 
7873
  #: inc/view/customize/banner/individual/Texts.php:1
7874
  #: inc/view/customize/banner/Texts.php:1
7875
+ msgctxt "legal-text"
7876
  msgid ""
7877
  "The data processing may take place with your consent or on the basis of a "
7878
  "legitimate interest, which you can object to in the privacy settings. You "
7888
  "{{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7889
 
7890
  #: inc/view/customize/banner/individual/Texts.php:1
7891
+ msgctxt "legal-text"
7892
  msgid ""
7893
  "Below you will find an overview of all services used by this website. You "
7894
  "can view detailed information about each service and agree to them "
7900
  "Gebrauch machen."
7901
 
7902
  #: inc/view/customize/banner/individual/Texts.php:1
7903
+ msgctxt "legal-text"
7904
  msgid "Show service information"
7905
  msgstr "Service-Informationen anzeigen"
7906
 
7907
  #: inc/view/customize/banner/individual/Texts.php:1
7908
+ msgctxt "legal-text"
7909
  msgid "Hide service information"
7910
  msgstr "Service-Informationen ausblenden"
7911
 
8068
  msgstr "“Powered by”-Linktext"
8069
 
8070
  #: inc/view/customize/banner/Texts.php:1
8071
+ msgid "US data processing"
8072
+ msgstr "US-Datenverarbeitung"
 
 
 
 
8073
 
8074
  #: inc/view/customize/banner/Texts.php:1
8075
  msgid "Data processing in the USA"
8141
  msgid "Additional info below the \"Load content\" button"
8142
  msgstr "Zusatzinfo unterhalb dem \"Inhalt laden”-Button"
8143
 
8144
+ #. translators:
8145
  #: inc/view/customize/banner/Texts.php:1
8146
  msgid ""
8147
  "The standard texts in the cookie banner are worded carefully. If you "
8148
  "customize them, make sure they are not misleading or riveting. According to "
8149
+ "the <a href=\"%s\" target=\"_blank\">Data Protection Commissioner of Baden-"
8150
+ "Württeberg, Germany (Section B, 1.3.7.; German)</a>, for example, a headline "
8151
+ "\"We love cookies\" is already misleading."
 
8152
  msgstr ""
8153
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn du sie "
8154
  "anpasst, achte darauf, dass sie nicht irreführend oder vernietlichend sind. "
8155
+ "Nach dem <a href=\"%s\" target=\"_blank\">Datenschutzbeauftragen von Baden-"
8156
+ "Württeberg, Deutschland (Abschnitt B, 1.3.7.)</a> ist z.B. die Überschrift "
8157
+ "\"Wir lieben Cookies\" bereits irreführend."
8158
+
8159
+ #: inc/view/customize/banner/Texts.php:1
8160
+ msgid ""
8161
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8162
+ "#13_informiertheit)"
8163
+ msgstr ""
8164
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8165
+ "#13_informiertheit)"
8166
 
8167
  #. translators:
8168
  #: inc/view/customize/banner/Texts.php:1
8203
  "%2$s, um sie zu aktivieren."
8204
 
8205
  #: inc/view/customize/banner/Texts.php:1
8206
+ msgctxt "legal-text"
8207
  msgid "Privacy preferences"
8208
  msgstr "Privatsphäre-Einstellungen"
8209
 
8210
  #: inc/view/customize/banner/Texts.php:1
8211
+ msgctxt "legal-text"
8212
  msgid "Set privacy settings individually"
8213
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
8214
 
8215
  #: inc/view/customize/banner/Texts.php:1
8216
+ msgctxt "legal-text"
8217
  msgid ""
8218
  "Some services process personal data in the USA. By consenting to the use of "
8219
  "these services, you also consent to the processing of your data in the USA "
8233
  "Möglichkeit eines Rechtsbehelfs."
8234
 
8235
  #: inc/view/customize/banner/Texts.php:1
8236
+ msgctxt "legal-text"
8237
  msgid ""
8238
  "You are under 16 years old? Then you cannot consent to optional services. "
8239
  "Ask your parents or legal guardians to agree to these services with you."
8243
  "dir in diese Services einzuwilligen."
8244
 
8245
  #: inc/view/customize/banner/Texts.php:1
8246
+ msgctxt "legal-text"
8247
  msgid ""
8248
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
8249
  "to this service to view this content. Please ask your parents or guardians "
8254
  "Erziehungsberechtigten, dem Service mit dir zuzustimmen!"
8255
 
8256
  #: inc/view/customize/banner/Texts.php:1
8257
+ msgctxt "legal-text"
8258
  msgid ""
8259
  "By accepting all services, you allow {{services}} to be loaded. These "
8260
  "services are divided into groups {{serviceGroups}} according to their "
8261
  "purpose (belonging marked with superscript numbers)."
8262
  msgstr ""
8263
  "Wenn du alle Services akzeptierst, erlaubst du, dass {{services}} geladen "
8264
+ "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt ("
8265
+ "Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
8266
 
8267
  #: inc/view/customize/banner/Texts.php:1
8268
+ msgctxt "legal-text"
8269
  msgid "Your consent is also applicable on {{websites}}."
8270
  msgstr "Deine Einwilligung gilt auch auf {{websites}}."
8271
 
8272
  #. translators:
8273
  #: inc/view/customize/banner/Texts.php:1
8274
+ msgctxt "legal-text"
8275
  msgid "{{name}} blocked due to privacy settings"
8276
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
8277
 
8278
  #. translators:
8279
  #: inc/view/customize/banner/Texts.php:1
8280
+ msgctxt "legal-text"
8281
  msgid "Show all services you still need to agree to"
8282
  msgstr "Zeige alle Services, denen du noch zustimmen musst"
8283
 
8284
  #: inc/view/customize/banner/Texts.php:1
8285
+ msgctxt "legal-text"
8286
  msgid "Accept required services and load content"
8287
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
8288
 
8289
  #: inc/view/customize/banner/Texts.php:1
8290
+ msgctxt "legal-text"
8291
  msgid ""
8292
  "Loading the blocked content will adjust your privacy settings. Content from "
8293
  "this service will not be blocked in the future. You have the right to revoke "
8327
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8328
 
8329
  #: inc/view/navmenu/NavMenuLinks.php:1
8330
+ msgctxt "legal-text"
8331
  msgid "Change privacy settings"
8332
  msgstr "Privatsphäre-Einstellungen ändern"
8333
 
8334
  #: inc/view/navmenu/NavMenuLinks.php:1
8335
+ msgctxt "legal-text"
8336
  msgid "Privacy settings history"
8337
  msgstr "Historie der Privatsphäre-Einstellungen"
8338
 
8339
  #: inc/view/navmenu/NavMenuLinks.php:1
8340
+ msgctxt "legal-text"
8341
  msgid "Revoke consents"
8342
  msgstr "Einwilligungen widerrufen"
8343
 
8344
  #: inc/view/navmenu/NavMenuLinks.php:1
8345
+ msgctxt "legal-text"
8346
  msgid ""
8347
  "You have successfully revoked the consent. The page will be reloaded now."
8348
  msgstr ""
8392
  msgid "Please provide a `type` attribute in your shortcode. Allowed: %s!"
8393
  msgstr "Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: %s!"
8394
 
8395
+ #~ msgid ""
8396
+ #~ "It seems that since the last update of <strong>Real Cookies Banner</"
8397
+ #~ "strong> some templates have been updated. Please check your following "
8398
+ #~ "services to make sure they are up to date:"
8399
+ #~ msgstr ""
8400
+ #~ "Es scheint, dass seit dem letzten Update von <strong>Real Cookies Banner</"
8401
+ #~ "strong> einige Vorlagen aktualisiert worden sind. Bitte überprüfe deine "
8402
+ #~ "folgenden Services, um sicherzustellen, dass sie auf dem neuesten Stand "
8403
+ #~ "sind:"
8404
+
8405
+ #~ msgid "Edit"
8406
+ #~ msgstr "Bearbeiten"
8407
+
8408
+ #~ msgid "Create new from template"
8409
+ #~ msgstr "Aus Vorlage erstellen"
8410
+
8411
+ #~ msgid ""
8412
+ #~ "The easiest way to apply the changes is to delete the service and all "
8413
+ #~ "connected content blockers in Real Cookie Banner and create it again from "
8414
+ #~ "the service templates."
8415
+ #~ msgstr ""
8416
+ #~ "Am einfachsten kannst du die Änderungen übernehmen, indem du den Service "
8417
+ #~ "und alle damit verbundenen Content Blocker in Real Cookie Banner löschst "
8418
+ #~ "und ihn aus den Service-Vorlagen neu erstellst."
8419
+
8420
+ #~ msgid ""
8421
+ #~ "Define the behavior of the cookie banner and hide the cookie banner both "
8422
+ #~ "in the imprint and privacy policy (required by law)."
8423
+ #~ msgstr ""
8424
+ #~ "Bestimme das Verhalten des Cookie Banners und blende es sowohl im "
8425
+ #~ "Impressum als auch in der Datenschutzerklärung aus (gesetzlich "
8426
+ #~ "vorgeschrieben)."
8427
+
8428
+ #~ msgid ""
8429
+ #~ "Use <code>{{services}}</code> as a placeholder to show all services that "
8430
+ #~ "process data in the USA."
8431
+ #~ msgstr ""
8432
+ #~ "Verwende <code>{{services}}</code> als Platzhalter, um alle Services "
8433
+ #~ "anzuzeigen, die Daten in den USA verarbeiten."
8434
+
8435
  #~ msgid ""
8436
  #~ "An opt-in script is not required, as this service is probably already "
8437
  #~ "integrated via e.g. your theme. In addition to this service, please "
languages/real-cookie-banner-de_CH.mo CHANGED
Binary file
languages/real-cookie-banner-de_CH.po CHANGED
@@ -2,16 +2,16 @@ msgid ""
2
  msgstr ""
3
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
4
  "POT-Creation-Date: n/a\n"
5
- "PO-Revision-Date: 2022-06-13 06:58+0000\n"
6
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
7
- "Language-Team: German <https://translate.devowl.io/projects/wordpress-real-"
8
- "cookie-banner-backend-php/develop/de/>\n"
9
  "Language: de_CH\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
- "X-Generator: Weblate 4.8\n"
15
 
16
  #. Plugin Name of the plugin
17
  msgid "Real Cookie Banner"
@@ -172,22 +172,27 @@ msgstr ""
172
  "heruntergeladen, wodurch weitere rechtliche Probleme vermieden werden."
173
 
174
  #: inc/Assets.php:1
 
175
  msgid "Use on legal basis of"
176
  msgstr "Verwendung auf gesetzlicher Grundlage von"
177
 
178
  #: inc/Assets.php:1
 
179
  msgid "Legitimate interest"
180
  msgstr "Berechtigtes Interesse"
181
 
182
  #: inc/Assets.php:1
 
183
  msgid "Compliance with a legal obligation"
184
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
185
 
186
  #: inc/Assets.php:1
 
187
  msgid "Consent"
188
  msgstr "Einwilligung"
189
 
190
  #: inc/Assets.php:1
 
191
  msgid ""
192
  "We have recognized that you are a crawler/bot. Only natural persons must "
193
  "consent to cookies and processing of personal data. Therefore, the link has "
@@ -198,18 +203,22 @@ msgstr ""
198
  "einwilligen. Daher hat der Link für dich keine Funktion."
199
 
200
  #: inc/Assets.php:1
 
201
  msgid "Technical cookie definition"
202
  msgstr "Technische Cookie-Definition"
203
 
204
  #: inc/Assets.php:1
 
205
  msgid "Uses cookies"
206
  msgstr "Verwendete Cookies"
207
 
208
  #: inc/Assets.php:1
 
209
  msgid "Cookie refresh"
210
  msgstr "Cookie-Auffrischung"
211
 
212
  #: inc/Assets.php:1
 
213
  msgid ""
214
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
215
  msgstr ""
@@ -217,10 +226,12 @@ msgstr ""
217
  "IndexDB, etc.)"
218
 
219
  #: inc/Assets.php:1
 
220
  msgid "Host"
221
  msgstr "Host"
222
 
223
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
 
224
  msgid "Duration"
225
  msgstr "Dauer"
226
 
@@ -249,28 +260,32 @@ msgid "year(s)"
249
  msgstr "Jahr(e)"
250
 
251
  #: inc/Assets.php:1
 
252
  msgid "No expiration"
253
  msgstr "Kein Ablauf"
254
 
255
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
256
- #: inc/view/customize/banner/BodyDesign.php:1
257
- #: inc/view/customize/banner/individual/SaveButton.php:1
258
  msgid "Type"
259
  msgstr "Typ"
260
 
261
  #: inc/Assets.php:1
 
262
  msgid "Purpose"
263
  msgstr "Zweck"
264
 
265
  #: inc/Assets.php:1
 
266
  msgid "History of your privacy settings"
267
  msgstr "Privatsphäre-Einstellungen: Historie"
268
 
269
  #: inc/Assets.php:1
 
270
  msgid "Show consent from"
271
  msgstr "Einwilligungen anzeigen vom"
272
 
273
  #: inc/Assets.php:1
 
274
  msgid "Not yet consented to"
275
  msgstr "Noch nicht eingewilligt"
276
 
@@ -283,20 +298,24 @@ msgid "Close without saving"
283
  msgstr "Schließen ohne Speichern"
284
 
285
  #: inc/Assets.php:1
 
286
  msgid "Provider"
287
  msgstr "Anbieter"
288
 
289
  #: inc/Assets.php:1
 
290
  msgid "Privacy Policy"
291
  msgstr "Datenschutzerklärung"
292
 
293
  #. translators:
294
  #: inc/Assets.php:1
 
295
  msgid "and %d more"
296
  msgstr "und %d mehr"
297
 
298
  #. translators:
299
- #: inc/Assets.php:1 inc/view/customize/banner/Texts.php:1
 
300
  msgid "US data processing"
301
  msgstr "US-Datenverarbeitung"
302
 
@@ -690,46 +709,81 @@ msgstr "Rechtliche Anpassungen von Texten und Design im Cookie Banner"
690
  msgid ""
691
  "In recent months, more clarity has been created about what consent "
692
  "management on websites should look like - and what it shouldn't. In "
693
- "particular, through the <a href=\"https://www.gesetze-im-internet.de/ttdsg/"
694
- "\" target=\"_blank\">TTDSG</a> (Telecommunications Telemedia Data Protection "
695
- "Act; Germany) and <a href=\"https://www.datenschutzkonferenz-online.de/media/"
696
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Guidance of the Conference "
697
- "of Independent Data Protection Authorities for cookie banners</a> "
698
- "(coordinated legal interpretation of all German data protection authorities; "
699
- "in German), there are now clearer rules that further interpret or complement "
700
- "the EU-wide applicable <a href=\"https://eur-lex.europa.eu/legal-content/EN/"
701
- "TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy Directive</a> and "
702
- "<a href=\"https://gdpr-info.eu/\" target=\"_blank\">GDPR</a>. Furthermore, "
703
- "there were important decisions such as the evaluation of <a href=\"https://"
704
- "www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
705
- "n-21-2022-english.pdf\" target=\"_blank\">TCF by ADP (Belgium)</a>, the <a "
706
- "href=\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
707
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics decision by "
708
- "dsb (Austria)</a> and the <a href=\"https://www.cnil.fr/sites/default/files/"
709
- "atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics.pdf\" "
710
- "target=\"_blank\">position on Google Analytics by CNIL</a>."
711
  msgstr ""
712
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
713
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
714
- "aussehen sollte. Insbesondere durch das <a href=\"https://www.gesetze-im-"
715
- "internet.de/ttdsg/\" target=\"_blank\">TTDSG</a> (Telekommunikation-"
716
- "Telemedien-Datenschutz-Gesetz) und die <a href=\"https://www."
717
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
718
- "\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
719
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
720
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
721
- "Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
722
- "legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
723
- "Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
724
- "\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
725
- "Entscheidungen wie die Bewertung von <a href=\"https://www."
726
- "autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
727
- "english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
728
- "\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
729
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
730
- "von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
731
- "files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
732
- "pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
733
 
734
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
735
  msgid ""
@@ -790,15 +844,13 @@ msgstr "Rechtliche Links auf jeder Unterseite platzieren"
790
  #. translators:
791
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
792
  msgid ""
793
- "In accordance with the requirements of the &quot;<a href=\"https://www."
794
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
795
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
796
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
797
  "and revoke consent must be directly accessible on every sub-page of your "
798
  "website."
799
  msgstr ""
800
- "Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
801
- "online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
802
  "\"Orientierungshilfe der Konferenz der unabhängigen "
803
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
804
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
@@ -941,17 +993,21 @@ msgstr "pro-modal/de/mobile-optimization.png"
941
  msgid "Updates in v3.0: You should act to be safe!"
942
  msgstr "Updates in v3.0: Du solltest handeln, um sicher zu sein!"
943
 
 
944
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
945
  msgid ""
946
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
947
  "have implemented, among other things, current legal adjustments. Read more "
948
- "about the changes in our <a href=\"https://devowl.io/2022/real-cookie-"
949
- "banner-3-0/\" target=\"_blank\">blog post</a>."
950
  msgstr ""
951
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
952
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
953
- "Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/real-"
954
- "cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
 
 
 
 
955
 
956
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
957
  msgid ""
@@ -1009,14 +1065,30 @@ msgstr ""
1009
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1010
  "Vorgehen für deinen Einzelfall zu klären."
1011
 
 
 
 
 
1012
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1013
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1014
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1015
 
 
 
 
 
 
 
1016
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1017
  msgid "Statement of the IAB Europe (English)"
1018
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1019
 
 
 
 
 
 
 
1020
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1021
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1022
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
@@ -1395,6 +1467,10 @@ msgstr ""
1395
  "\"_blank\">%3$s</a>. In diesem Fall musst du auch den \"Code bei Opt-in "
1396
  "ausführen\" entfernen."
1397
 
 
 
 
 
1398
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1399
  msgid ""
1400
  "AddThis allows providing links and buttons for sharing content on a variety "
@@ -1448,21 +1524,26 @@ msgstr ""
1448
  "Benutzer eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1449
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1450
 
 
1451
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1452
  msgid ""
1453
- "This template assumes that you use the <a href=\"https://wordpress.org/"
1454
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress plugin</a>. The "
1455
- "template is not suitable to add Facebook Like, Twitter Tweet or Pinterest "
1456
- "Pin button in AddToAny. If you want to use any of these buttons, please use "
1457
- "it without AddToAny and additionally create the cookies and content blockers "
1458
- "for the respective service."
1459
  msgstr ""
1460
- "Diese Vorlage setzt voraus, dass du das <a href=\"https://wordpress.org/"
1461
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress Plugin</a> "
1462
- "verwendest. Die Vorlage ist nicht geeignet, um Facebook Like, Twitter Tweet "
1463
- "oder Pinterest Pin Button in AddToAny einzufügen. Wenn du einen dieser "
1464
- "Buttons verwenden möchtest, verwende ihn bitte ohne AddToAny und erstelle "
1465
- "zusätzlich die Cookies und Content Blocker für den jeweiligen Dienst."
 
 
 
 
1466
 
1467
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1468
  msgid ""
@@ -1483,18 +1564,22 @@ msgstr ""
1483
  "merken, wie oft welche Werbeplatzierung bereits angezeigt wurde und wie oft "
1484
  "die jeweilige Werbung angeklickt wurde."
1485
 
 
1486
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1487
  msgid ""
1488
- "Ad Insert plays out ads even without consent. You should <a href=\"https://"
1489
- "adinserter.pro/faq/gdpr-compliance-cookies-consent\" target=\"_blank"
1490
- "\">obtain consent for the ads via the TCF v2.0 or newer standard</a>. Only "
1491
- "some features of the plugin require you to obtain consent for Ad Inserter."
1492
  msgstr ""
1493
- "Ad Insert spielt Werbung auch ohne Einwilligung aus. Du solltest <a href="
1494
- "\"https://adinserter.pro/faq/gdpr-compliance-cookies-consent\" target="
1495
- "\"_blank\">die Einwilligung für die Anzeigen über den TCF v2.0 oder neueren "
1496
- "Standard einholen</a>. Nur für einige Features des Plugins musst du die "
1497
- "Einwilligung für Ad Inserter einholen."
 
 
 
1498
 
1499
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1500
  msgid ""
@@ -1512,17 +1597,20 @@ msgstr ""
1512
  "deaktiviert hast, da dieser Teil des Adblockers Daten an Google und Media."
1513
  "net überträgt, bevor du deine Einwilligung dazu hast."
1514
 
 
1515
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1516
  msgid ""
1517
- "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"https://"
1518
- "adinserter.pro/documentation/ad-impression-and-click-limiting\" target="
1519
- "\"_blank\">impression and click limits</a> feature of Ad Inserter Pro. The "
1520
- "duration of the cookie depends on the settings of the feature."
1521
  msgstr ""
1522
- "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn du das <a href=\"https://"
1523
- "adinserter.pro/documentation/ad-impression-and-click-limiting\" target="
1524
- "\"_blank\">Impressions- und Klick-Limit</a> Feature von Ad Inserter Pro "
1525
- "nutzt. Die Dauer des Cookies hängt von den Einstellungen des Features ab."
 
 
 
1526
 
1527
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1528
  msgid ""
@@ -1750,13 +1838,18 @@ msgstr ""
1750
  msgid "Awin Publisher ID"
1751
  msgstr "Awin-Publisher-ID"
1752
 
 
1753
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1754
  msgid ""
1755
- "You find your publisher ID in the <a href=\"https://ui.awin.com/user\" "
1756
- "target=\"_blank\">account overview</a> directly blow your account name."
1757
  msgstr ""
1758
- "Du findest deine Publisher ID in der <a href=\"https://ui.awin.com/user\" "
1759
- "target=\"_blank\">Account Übersicht</a> direkt unter deinem Benutzernamen."
 
 
 
 
1760
 
1761
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1762
  msgid ""
@@ -1812,6 +1905,10 @@ msgstr ""
1812
  "Auf <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> Du unter Tools > "
1813
  "Conversion tracking > UET tag findest Du Deinen UET-Tag in der Tag-Tabelle."
1814
 
 
 
 
 
1815
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1816
  msgid ""
1817
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
@@ -2264,15 +2361,18 @@ msgstr "https://www.etracker.com/datenschutzerklaerung/"
2264
  msgid "etracker Account Key"
2265
  msgstr "etracker Account Key"
2266
 
 
2267
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2268
  msgid ""
2269
- "You can find your etracker account key under <a href=\"https://newapp."
2270
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2271
- "info > Settings> Account</a> of your etracker account."
2272
  msgstr ""
2273
- "Du findest deinen etracker Account Key unter <a href=\"https://newapp."
2274
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2275
- "Info > Einstellungen > Account</a> deines etracker Accounts."
 
 
 
2276
 
2277
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2278
  msgid ""
@@ -2289,20 +2389,26 @@ msgstr ""
2289
  "Tracking widersprechen, indem er diesen Service in deinem Cookie Banner "
2290
  "deaktiviert."
2291
 
 
2292
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2293
  msgid ""
2294
  "We also recommend that you deactivate the non-aggregated reporting via the "
2295
- "<a href=\"https://newapp.etracker.com/\" target=\"_blank\">dashboard</a> "
2296
- "under <i>menu (top left) > Account-ID > Settings > Privacy > Consent-free "
2297
- "tracking cookies in accordance with CNIL guidelines</i> to ensure that there "
2298
- "is definitely no personal reference for the collected data."
2299
- msgstr ""
2300
- "Wir empfehlen dir zusätzlich über das <a href=\"https://newapp.etracker.com/"
2301
- "#/report/accountSettings/accountKey\" target=\"_blank\">Dashboard</a> unter "
2302
- "<i>Menü (obene links) > Account-ID > Einstellungen > Datenschutz > "
2303
- "Einwilligungs-freie Tracking Cookies gemäß Anforderungen der CNIL</i> die "
2304
- "nicht aggregierten Reportings zu deaktivieren, um sicherzustellen, dass "
2305
- "definitiv kein Personenbezug bei den erhobenen Daten besteht."
 
 
 
 
 
2306
 
2307
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2308
  msgid "etracker: enhanced tracking"
@@ -2350,22 +2456,22 @@ msgstr ""
2350
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2351
  "anreichert."
2352
 
 
2353
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2354
  msgid ""
2355
  "In order for the consent to be taken into account, you must activate the "
2356
- "toggle \"Opt-In active\" via the <a href=\"https://newapp.etracker.com/\" "
2357
- "target=\"_blank\">dashboard</a> under <i>menu (top left) > Account-ID > "
2358
- "Settings > Privacy > Tracking Opt-In and agreement</i>, but then switch to "
2359
- "\"own Opt-In\" so that etracker does not display its own consent dialog, but "
2360
- "instead uses the consent collected by Real Cookie Banner."
2361
- msgstr ""
2362
- "Damit die Einwilligung berücksichtigt wird, musst du via <a href=\"https://"
2363
- "newapp.etracker.com/\" target=\"_blank\">Dashboard</a> unter <i>Menü (oben "
2364
- "links) > Account-ID > Einstellungen > Datenschutz > Tracking Opt-In und "
2365
- "Zustimmung</i> den Toggle \"Opt-In aktiv\" aktivieren und anschließend auf "
2366
- "\"eigenes Opt-In\" umstellen. Damit wird etracker keinen eigenen "
2367
- "Einwilligungsdialog anzeigen, sondern die Einwilligung, erhoben von Real "
2368
- "Cookie Banner, verwenden."
2369
 
2370
  #. translators:
2371
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
@@ -2673,20 +2779,20 @@ msgstr ""
2673
  "können mit den Daten der auf facebook.com registrierten Benutzer verknüpft "
2674
  "werden."
2675
 
 
2676
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2677
  msgid ""
2678
- "You can use Facebook's <a href=\"https://developers.facebook.com/docs/"
2679
- "plugins/embedded-posts/\" target=\"_blank\">embedded post generator</a> to "
2680
- "generate a HTML code to embed post with the Facebook JavaScript SDK. Loading "
2681
- "the JavaScript SDK is part of the opt-in code. All you need to do is place "
2682
- "the HTML div and blockqoute elements where you want the embedded post to be "
2683
- "visible on your site. If you use Facebook post as Iframe embeeds, please "
2684
- "create in addition a content blocker for Facebook Posts to block loading of "
2685
- "the content before you have the consent of the user."
2686
- msgstr ""
2687
- "Du kannst den <a href=\"https://developers.facebook.com/docs/plugins/"
2688
- "embedded-posts/?locale=de_DE\" target=\"_blank\">Post-Generator von Facebook "
2689
- "</a> verwenden, um einen HTML-Code zum Einbetten von Posts mit dem Facebook "
2690
  "JavaScript SDK zu generieren. Das Laden des JavaScript-SDK ist Teil des Opt-"
2691
  "in Codes. Alles was du tun musst, ist das HTML-Div und blockqoute-Element "
2692
  "dort zu platzieren, wo der eingebettete Beitrag auf deiner Seite sichtbar "
@@ -2694,6 +2800,10 @@ msgstr ""
2694
  "bitte zusätzlich einen Inhaltsblocker für Facebook, um das Laden ihres "
2695
  "Inhalts zu blockieren, bevor du die Einwilligung des Nutzers hast."
2696
 
 
 
 
 
2697
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2698
  msgid ""
2699
  "Facebook Share button allows users to share a link directly on Facebook. The "
@@ -2894,17 +3004,21 @@ msgstr "Google Ads Conversation Tracking-ID"
2894
  msgid "Please fill in a valid tracking ID!"
2895
  msgstr "Bitte gib eine gültige Tracking ID an!"
2896
 
 
2897
  #: inc/overrides/pro/presets/GoogleAds.php:1
2898
  msgid ""
2899
- "You can find your Adwords ID in <a href=\"https://ads.google.com/aw/overview"
2900
- "\" target=\"_blank\">Google Ads</a> at Tools > Measurement > Conversions > "
2901
- "Click on the name of the conversation action > Tag setup > Install the tag "
2902
- "yourself > Adwords ID in the code (e.g. AW-123456789)."
2903
  msgstr ""
2904
- "Deine Adwords ID findest du in <a href=\"https://ads.google.com/aw/overview"
2905
- "\" target=\"_blank\">Google Ads</a> unter Tools > Messung > Conversions > "
2906
- "Conversion-Aktion > Tag-Einrichtung > Tag selbst einfügen > Adwords ID in "
2907
- "dem Code (z.B. AW-123456789)."
 
 
 
2908
 
2909
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2910
  msgid ""
@@ -2931,18 +3045,22 @@ msgstr ""
2931
  msgid "Google Adsense Publisher ID"
2932
  msgstr "Google Adsense Publisher-ID"
2933
 
 
2934
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2935
  msgid ""
2936
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
2937
  "(if activated in your Adsense account) can be displayed. You can find it in "
2938
- "the <a href=\"https://www.google.com/adsense\" target=\"_blank\">Google "
2939
- "Adsense Dashboard</a> under <i>Account > Settings > Account information</i>."
2940
  msgstr ""
2941
- "Du musst deine Google Adsense Publisher ID eingeben, damit z.B. Auto Ads "
2942
- "(falls in deinem Adsense Konto aktiviert) angezeigt werden können. Du "
2943
- "findest sie im <a href=\"https://www.google.com/adsense\" target=\"_blank"
2944
- "\">Google Adsense Dashboard</a> unter <i>Account > Einstellungen > "
2945
- "Kontoinformationen</i>."
 
 
 
2946
 
2947
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2948
  msgid ""
@@ -2988,18 +3106,23 @@ msgstr ""
2988
  msgid "Google Analytics Measurement ID"
2989
  msgstr "Google Analytics Measurement-ID"
2990
 
 
2991
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
2992
  msgid ""
2993
  "You can find your Measurement ID (also called property ID) in the <a href="
2994
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
2995
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
2996
- "property > Setup Assistant > Tag installation > Select your website."
2997
  msgstr ""
2998
- "Du findest deine Measurement ID (auch Property ID genannt) im <a href="
2999
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3000
- "Dashboard</a> unter Admin (Zahnradsymbol) > Wähle deinen Account aus > Wähle "
3001
- "deine Property aus > Setup Assistant > Tag Installation > Wähle deine "
3002
- "Website aus."
 
 
 
 
3003
 
3004
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3005
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
@@ -3049,17 +3172,16 @@ msgstr ""
3049
  msgid "Google Analytics Tracking ID"
3050
  msgstr "Google Analytics Tracking-ID"
3051
 
 
3052
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3053
  msgid ""
3054
- "You can find your Tracking ID (also called Property ID) in the <a href="
3055
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3056
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
3057
- "property > Tracking Info > Tracking Code."
3058
  msgstr ""
3059
- "Du findest deine Tracking ID (auch Property ID genannt) im <a href=\"https://"
3060
- "analytics.google.com/analytics/web/\" target=\"_blank\">Analytics Dashboard</"
3061
- "a> unter Admin (Zahnradsymbol) > Wähle deinen Account > Wähle deine Property "
3062
- "> Tracking Info > Tracking Code."
3063
 
3064
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3065
  msgid ""
@@ -3303,21 +3425,27 @@ msgstr ""
3303
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
3304
  "Statistiken über sein Verhalten zu sammeln."
3305
 
 
3306
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3307
  msgid ""
3308
- "You have to create a so-called Beacon on <a href=\"https://secure.helpscout."
3309
- "net\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3310
- "Beacon. After creating in the Beacon Customizer, the URL looks like "
3311
- "<code>https://secure.helpscout.net/settings/beacons/c676047b-"
3312
- "c2e8-45b1-8319-344f4e7e2431/customize</code>. This means that the HelpScout "
3313
- "Beacon ID is <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code>."
3314
- msgstr ""
3315
- "Du musst einen sogenannten Beacon auf <a href=\"https://secure.helpscout.net"
3316
- "\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3317
- "Beacon erstellen. Nach dem Erstellen im Beacon Customizer sieht die URL "
3318
- "ähnlich aus wie <code>https://secure.helpscout.net/settings/beacons/c676047b-"
3319
- "c2e8-45b1-8319-344f4e7e2431/customize</code>. Das bedeutet, dass die "
3320
- "HelpScout Beacon-ID <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code> lautet."
 
 
 
 
 
3321
 
3322
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3323
  msgid "HelpScout Beacon ID"
@@ -3342,6 +3470,14 @@ msgstr ""
3342
  msgid "Hotjar ID"
3343
  msgstr "Hotjar-ID"
3344
 
 
 
 
 
 
 
 
 
3345
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3346
  msgid ""
3347
  "Imgur allows embedding content posted on imgur.com directly into websites."
@@ -3411,6 +3547,10 @@ msgstr ""
3411
  msgid "Intercom application ID"
3412
  msgstr "Intercom Application ID"
3413
 
 
 
 
 
3414
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3415
  msgid ""
3416
  "Issuu allows embedding content posted on issuu.com directly into websites. "
@@ -3544,16 +3684,20 @@ msgstr ""
3544
  msgid "https://linkedin.com/legal/privacy-policy"
3545
  msgstr "https://de.linkedin.com/legal/privacy-policy"
3546
 
 
3547
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3548
  msgid ""
3549
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3550
- "\"https://www.linkedin.com/help/lms/answer/a415871\" target=\"_blank\">where "
3551
- "to find the LinkedIn Partner ID</a> in your LinkedIn Ads account."
3552
  msgstr ""
3553
  "Du findest in der Wissensdatenbank von LinkedIn einen Artikel, der dir "
3554
- "erklärt, <a href=\"https://www.linkedin.com/help/lms/answer/a415871\" target="
3555
- "\"_blank\">wo du die LinkedIn Partner ID findest</a> in deinem LinkedIn Ads "
3556
- "Konto."
 
 
 
3557
 
3558
  #: inc/overrides/pro/presets/LoomPreset.php:1
3559
  msgid ""
@@ -3679,19 +3823,22 @@ msgstr ""
3679
  "Anmeldung verwendest, das versteckt werden kann (z.B. Popup). Nur in diesem "
3680
  "Fall wird ein Cookie gesetzt."
3681
 
 
3682
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3683
  msgid ""
3684
  "Personal data will never be transferred directly from the browser of your "
3685
  "visitors to MailPoet, but only, for example, when you sign up for the "
3686
  "newsletter via your WordPress installation. You should always follow the <a "
3687
- "href=\"https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr\" target="
3688
- "\"_blank\">MailPoet Guide to Conform to GDPR</a>."
3689
  msgstr ""
3690
  "Personenbezogene Daten werden niemals direkt vom Browser deiner Besucher an "
3691
  "MailPoet übertragen, sondern nur z.B. bei der Anmeldung zum Newsletter über "
3692
- "deine WordPress-Installation. Du solltest immer den <a href=\"https://kb."
3693
- "mailpoet.com/article/246-guide-to-conform-to-gdpr\" target=\"_blank"
3694
- "\">MailPoet Guide to Conform to GDPR</a>. beachten."
 
 
 
3695
 
3696
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3697
  msgid ""
@@ -3767,17 +3914,21 @@ msgstr "Metricool-Hash"
3767
  msgid "Please provide a valid hash!"
3768
  msgstr "Bitte gib einen gültigen Hash an!"
3769
 
 
3770
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3771
  msgid ""
3772
- "You find your Metricool hash in the <a href=\"https://app.metricool.com/"
3773
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, if "
3774
- "you use \"Connect web\" and choose the integration as JavaScript tag, within "
3775
- "the generated JavaScript."
3776
  msgstr ""
3777
- "Du findest deinen Metricool Hash in den <a href=\"https://app.metricool.com/"
3778
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, wenn "
3779
- "du \"Connect web\" nutzt und die Integration als JavaScript-Tag auswählst, "
3780
- "innerhalb des generierten JavaScript."
 
 
 
 
3781
 
3782
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3783
  msgid ""
@@ -3808,6 +3959,10 @@ msgstr ""
3808
  "projects/view/12cggd77jl/</code> lautet, ist deine Projekt-ID "
3809
  "<code>12cggd77jl</code>."
3810
 
 
 
 
 
3811
  #. translators:
3812
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3813
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
@@ -3843,19 +3998,27 @@ msgstr ""
3843
  msgid "Mouseflow Website ID"
3844
  msgstr "Mouseflow Website-ID"
3845
 
 
3846
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
3847
  msgid ""
3848
  "You can find your Mouseflow website ID by hovering over the appropriate "
3849
- "website at <a href=\"http://eu.mouseflow.com/websites\" target=\"_blank\">eu."
3850
- "mouseflow.com/websites</a>. You will then see a gear icon that you can click "
3851
- "on. In the settings that appear, you should find a <code>Website ID</code> "
3852
- "field."
3853
  msgstr ""
3854
- "Du findest deine Mouseflow Website ID, indem du auf <a href=\"https://eu."
3855
- "mouseflow.com/websites\" target=\"_blank\">eu.mouseflow.com/websites</a> mit "
3856
- "dem Mauszeiger über die entsprechende Website fährst. Du siehst dann ein "
3857
- "Zahnradsymbol, auf das du klicken kannst. In den Einstellungen, die dann "
3858
- "erscheinen, solltest du ein Feld <code>Website ID</code> finden."
 
 
 
 
 
 
 
 
3859
 
3860
  #. translators:
3861
  #: inc/overrides/pro/presets/MtmPreset.php:1
@@ -4087,16 +4250,20 @@ msgstr ""
4087
  msgid "Pinterest Tag ID"
4088
  msgstr "Pinterest Tag-ID"
4089
 
 
4090
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4091
  msgid ""
4092
- "You can view your Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4093
- "\"_blank\">Pinterest Ads</a> under Ads > Conversions > Add code to website > "
4094
- "Add code. It is displayed in the top right corner of the modal."
4095
  msgstr ""
4096
- "Du kannst deine Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4097
- "\"_blank\">Pinterest Ads</a> unter Anzeigen > Conversions > Code zur Website "
4098
- "hinzufügen > Code hinzufügen einsehen. Er wird in der oberen rechten Ecke "
4099
- "des Modals angezeigt."
 
 
 
4100
 
4101
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4102
  msgid ""
@@ -4268,19 +4435,22 @@ msgstr ""
4268
  "speichern die Sprache des Nutzers und können den Nutzer auf die Version der "
4269
  "Webseite umleiten, welche der Sprache des Browsers des Nutzers entspricht."
4270
 
 
4271
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4272
  msgid ""
4273
  "Please make sure you have not renamed the Polylang cookie name or change it "
4274
  "in the same way in the technical definitions above. Learn more about how to "
4275
- "change the Polylang cookie name <a href=\"https://polylang.pro/doc/is-"
4276
- "polylang-compatible-with-the-eu-cookie-law/\" target=\"_blank\">in their "
4277
  "documentation</a>."
4278
  msgstr ""
4279
  "Bitte vergewissere dich, dass du den Namen des Polylang Cookies nicht "
4280
  "umbenannt oder in den technischen Definitionen oben auf die gleiche Weise "
4281
  "geändert hast. Mehr darüber, wie man den Polylang Cookie-Namen ändert, "
4282
- "findest du <a href=\"https://polylang.pro/doc/is-polylang-compatible-with-"
4283
- "the-eu-cookie-law/\" target=\"_blank\">in der Dokumentation</a>."
 
 
 
4284
 
4285
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4286
  msgid ""
@@ -4586,21 +4756,29 @@ msgstr ""
4586
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4587
  "Statistiken über sein Verhalten zu sammeln."
4588
 
 
4589
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4590
  msgid ""
4591
- "You can create your own custom chat widget at <a href=\"https://dashboard."
4592
- "tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > Settings > Chat Widget. "
4593
- "The chat widget in the opt-in code is just the default example."
4594
  msgstr ""
4595
- "Du kannst dein eigenes benutzerdefiniertes Chat-Widget unter <a href="
4596
- "\"https://dashboard.tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > "
4597
- "Einstellungen > Chat Widget erstellen. Das Chat-Widget im Opt-in Code ist "
4598
- "nur das Standardbeispiel."
 
 
 
4599
 
4600
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4601
  msgid "tawk.to ID"
4602
  msgstr "tawk.to ID"
4603
 
 
 
 
 
4604
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4605
  msgid ""
4606
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
@@ -4640,22 +4818,31 @@ msgstr ""
4640
  "Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4641
  "Statistiken über sein Verhalten zu sammeln."
4642
 
 
4643
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4644
  msgid ""
4645
- "You get your Tidio JS ID on <a href=\"https://tidio.com\" target=\"_blank"
4646
- "\">tidio.com</a> under Settings > Live Chat > Integration > JavaScript in "
4647
- "the given JavaScript snipped. You can adjust the appearance of the chat at "
4648
- "tidio.com under Settings > Live Chat > Appearance."
4649
  msgstr ""
4650
- "Du bekommst deine Tidio JS ID auf <a href=\"https://tidio.com\" target="
4651
- "\"_blank\">tidio.com</a> unter Einstellungen > Live Chat > Integration > "
4652
- "JavaScript in dem angegebene JavaScript-Code. Du kannst das Aussehen des "
4653
- "Chats auf tidio.com unter Einstellungen > Live Chat > Aussehen anpassen."
 
 
 
 
4654
 
4655
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4656
  msgid "Tidio JS ID"
4657
  msgstr "Tidio JS-ID"
4658
 
 
 
 
 
4659
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4660
  msgid ""
4661
  "TikTok Pixel helps to determine whether you are the target audience for "
@@ -4687,33 +4874,37 @@ msgstr "https://www.tiktok.com/legal/privacy-policy?lang=de-DE"
4687
  msgid "TikTok Pixel ID"
4688
  msgstr "TikTok Pixel-ID"
4689
 
 
4690
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4691
  msgid ""
4692
- "In the <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target="
4693
- "\"_blank\">Event Manager of the TikTok Ad Manager</a> you can create a "
4694
- "website pixel. Select \"Manually install pixel code\" for the type of "
4695
- "integration. Whether you want to use the \"Standard Mode\" or \"Developer "
4696
- "Mode\" depends on your purpose."
4697
  msgstr ""
4698
- "Im <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target=\"_blank"
4699
- "\">Event Manager des TikTok Ad Managers</a> kannst du ein Website-Pixel "
4700
- "erstellen. Wähle für die Art der Integration \"Manually install pixel code"
4701
- "\". Ob du den \"Standard Mode\" oder den \"Developer Mode\" verwenden "
4702
- "möchtest, hängt von deinem Vorhaben ab."
 
 
 
4703
 
 
4704
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4705
  msgid ""
4706
- "After creating the TikTok Pixel you return to the <a href=\"https://ads."
4707
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager of the "
4708
- "TikTok Ad Manager</a> and select \"Manage\" in the section \"Website Pixel"
4709
- "\". You will then see an overview of all the TikTok pixels you have created. "
4710
- "Each TikTok pixel has its ID directly under its name."
4711
  msgstr ""
4712
- "Nach der Erstellung des TikTok Pixel kehrst du zum <a href=\"https://ads."
4713
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager des TikTok "
4714
- "Ad Managers</a> zurück und wählst im Abschnitt \"Website Pixel\" den Punkt "
4715
- "\"Manage\". Du siehst dann eine Übersicht über alle TikTok Pixel, die du "
4716
- "erstellt hast. Jedes TikTok-Pixel hat seine ID direkt unter seinem Namen."
4717
 
4718
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4719
  msgid ""
@@ -4830,24 +5021,33 @@ msgstr ""
4830
  msgid "https://www.userlike.com/en/terms#privacy-policy"
4831
  msgstr "https://www.userlike.com/de/terms#privacy-policy"
4832
 
 
4833
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4834
  msgid ""
4835
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
4836
- "You can find it at <a href=\"https://userlike.com/en/dashboard/um/config/"
4837
- "um_widget/overview\" target=\"_blank\">userlike.com/en/dashboard/um/config/"
4838
- "um_widget/overview</a> > Name of the widget > Install > JavaScript Widget "
4839
- "code."
4840
  msgstr ""
4841
  "Bitte füge als Opt-in Code den JavaScript Code deines Userlike Widgets ein. "
4842
- "Du findest ihn unter <a href=\"https://userlike.com/de/dashboard/um/config/"
4843
- "um_widget/overview\" target=\"_blank\">userlike.com/de/dashboard/um/config/"
4844
- "um_widget/overview</a> > Name des Widgets > Installieren > JavaScript Widget "
4845
- "code."
 
 
4846
 
4847
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4848
  msgid "Example opt-in code"
4849
  msgstr "Beispiel Opt-in Code"
4850
 
 
 
 
 
 
 
 
 
4851
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4852
  msgid ""
4853
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
@@ -4914,6 +5114,16 @@ msgstr ""
4914
  "\"essenzielles Cookie\" und keinen Content Blocker wirst du die volle dir "
4915
  "zustehende Ausschüttungen der VG WORT erhalten können."
4916
 
 
 
 
 
 
 
 
 
 
 
4917
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4918
  msgid ""
4919
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
@@ -5164,6 +5374,10 @@ msgstr ""
5164
  "Du findest Deine Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5165
  "\">Yandex Metrica Tags Liste</a>."
5166
 
 
 
 
 
5167
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5168
  msgid ""
5169
  "Zendesk Chat is a customer service tool that provides live chat for "
@@ -5192,6 +5406,10 @@ msgstr ""
5192
  "Du findest den Zendesk Widget Key im Zendesk Backend unter Einstellungen > "
5193
  "Widget > Web Widget einbetten als Teil des JavaScript Codes."
5194
 
 
 
 
 
5195
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5196
  msgid ""
5197
  "Zoho Bookings is a planning software the allows you to book book "
@@ -5445,6 +5663,7 @@ msgstr ""
5445
  "du in den individuellen Privatsphäre-Einstellungen."
5446
 
5447
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5448
  msgid ""
5449
  "In addition, you consent to the transfer of data to partners under the TCF "
5450
  "standard for the following purposes:"
@@ -5453,10 +5672,12 @@ msgstr ""
5453
  "des TCF-Standards für die folgenden Zwecke zu:"
5454
 
5455
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5456
  msgid "Vendor list"
5457
  msgstr "Liste der Anbieter"
5458
 
5459
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5460
  msgid "Vendors"
5461
  msgstr "Anbieter"
5462
 
@@ -5470,18 +5691,22 @@ msgid "Hide"
5470
  msgstr "Verstecken"
5471
 
5472
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5473
  msgid "Data processing on the legal basis of:"
5474
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5475
 
5476
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5477
  msgid "No vendor requests purposes under this legal basis."
5478
  msgstr "Kein Anbieter beantragt Zwecke auf dieser Rechtsgrundlage."
5479
 
5480
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5481
  msgid "Non-standardized data processing"
5482
  msgstr "Nicht standardisierte Datenverarbeitung"
5483
 
5484
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5485
  msgid ""
5486
  "Some services set cookies and/or process personal data without complying "
5487
  "with consent communication standards. These services are divided into "
@@ -5499,10 +5724,12 @@ msgstr ""
5499
  "nach einer Einwilligung genutzt werden."
5500
 
5501
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5502
  msgid "Data processing standardized according to TCF"
5503
  msgstr "Datenverarbeitung standardisiert nach TCF"
5504
 
5505
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5506
  msgid ""
5507
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5508
  "consistent consent for processing of personal data and cookie setting. This "
@@ -5518,10 +5745,12 @@ msgstr ""
5518
  "gesetzt, verarbeitet und gespeichert werden."
5519
 
5520
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5521
  msgid "Purposes"
5522
  msgstr "Zwecke"
5523
 
5524
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5525
  msgid ""
5526
  "Purposes describe for which purpose which providers may set cookies and "
5527
  "process personal data. Purposes are pre-selected if there is a legitimate "
@@ -5535,10 +5764,12 @@ msgstr ""
5535
  "Einwilligung verarbeitet."
5536
 
5537
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5538
  msgid "Special purposes"
5539
  msgstr "Besondere Zwecke"
5540
 
5541
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5542
  msgid ""
5543
  "Special purposes for setting cookies and processing personal data by our "
5544
  "vendors describe purposes for which we have a legitimate interest that "
@@ -5550,10 +5781,12 @@ msgstr ""
5550
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5551
 
5552
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5553
  msgid "Features"
5554
  msgstr "Funktionen"
5555
 
5556
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5557
  msgid ""
5558
  "Features for processing personal data describe how data is used to fulfill "
5559
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
@@ -5567,10 +5800,12 @@ msgstr ""
5567
  "Jeder Zweck kann dazu führen, dass Funktionen verwendet werden."
5568
 
5569
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5570
  msgid "Special features"
5571
  msgstr "Besondere Funktionen"
5572
 
5573
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5574
  msgid ""
5575
  "Special features for processing personal data describe how data is used to "
5576
  "fulfill one or more purposes in a profound way. Personal data will only be "
@@ -5884,17 +6119,21 @@ msgstr ""
5884
  "(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
5885
  "feststellen."
5886
 
 
5887
  #: inc/presets/free/GoogleFontsPreset.php:1
5888
  msgid ""
5889
- "We therefore recommend <a href=\"https://devowl.io/2022/google-fonts-"
5890
- "wordpress-gdpr/\" target=\"_blank\">replacing Google Fonts with locally "
5891
- "hosted fonts</a> when possible, rather than asking for consent. We explained "
5892
- "how this works in our blog!"
5893
  msgstr ""
5894
- "Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
5895
- "wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
5896
- "gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
5897
- "fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
 
 
 
 
5898
 
5899
  #: inc/presets/free/GravatarPreset.php:1
5900
  msgid ""
@@ -6064,18 +6303,21 @@ msgstr ""
6064
  "Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für diesen Dienst "
6065
  "muss ein Service angelegt werden."
6066
 
 
6067
  #: inc/presets/free/WordPressCommentsPreset.php:1
6068
  msgid ""
6069
  "Do you want to use the comment feature on your website at all? If not, we "
6070
- "explain in our blog <a href=\"https://devowl.io/2022/deactivate-wordpress-"
6071
- "comments/\" target=\"_blank\"> how to disable comments in WordPress</a>. "
6072
- "Then you can also avoid this consent!"
6073
  msgstr ""
6074
  "Willst du die Kommentarfunktion auf deiner Website überhaupt nutzen? Wenn "
6075
- "nicht, erklären wir in unserem Blog, <a href=\"https://devowl.io/de/2022/"
6076
- "wordpress-kommentare-deaktivieren/\" target=\"_blank\">wie du Kommentare in "
6077
- "WordPress deaktivieren kannst</a>. Dann kannst du dir die Einwilligung auch "
6078
- "sparen!"
 
 
 
6079
 
6080
  #: inc/presets/free/WordPressEmojisPreset.php:1
6081
  msgid ""
@@ -6105,18 +6347,22 @@ msgstr ""
6105
  "können Emojis problemlos ohne das WordPressa-Emoji-Script anzeigen (für das "
6106
  "du diese Einwilligung einholen musst)."
6107
 
 
6108
  #: inc/presets/free/WordPressEmojisPreset.php:1
6109
  msgid ""
6110
  "Unless you need to support particularly old browsers and operating systems, "
6111
- "we recommend that you <a href=\"https://devowl.io/2022/disable-emojis-"
6112
- "wordpress/\" target=\"_blank\">disable the WordPress emoji script</a> rather "
6113
- "than asking for consent. How to do that, we have explained in our blog!"
6114
  msgstr ""
6115
  "Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
6116
- "musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/wordpress-"
6117
- "emojis-deaktivieren/\" target=\"_blank\">WordPress-Emoji-Script zu "
6118
- "deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
6119
- "machst, haben wir in unserem Blog erklärt!"
 
 
 
6120
 
6121
  #: inc/presets/free/WordPressPluginEmbed.php:1
6122
  msgid ""
@@ -6378,35 +6624,22 @@ msgstr "Ezoic (Statistik)"
6378
 
6379
  #: inc/presets/UpdateNotice.php:1
6380
  msgid ""
6381
- "It seems that since the last update of <strong>Real Cookies Banner</strong> "
6382
- "some templates have been updated. Please check your following services to "
6383
- "make sure they are up to date:"
6384
  msgstr ""
6385
- "Es scheint, dass seit dem letzten Update von <strong>Real Cookies Banner</"
6386
- "strong> einige Vorlagen aktualisiert worden sind. Bitte überprüfe deine "
6387
- "folgenden Services, um sicherzustellen, dass sie auf dem neuesten Stand sind:"
 
6388
 
6389
  #: inc/presets/UpdateNotice.php:1
6390
  msgid "Service (Cookie)"
6391
  msgstr "Service (Cookie)"
6392
 
6393
  #: inc/presets/UpdateNotice.php:1
6394
- msgid "Edit"
6395
- msgstr "Bearbeiten"
6396
-
6397
- #: inc/presets/UpdateNotice.php:1
6398
- msgid "Create new from template"
6399
- msgstr "Aus Vorlage erstellen"
6400
-
6401
- #: inc/presets/UpdateNotice.php:1
6402
- msgid ""
6403
- "The easiest way to apply the changes is to delete the service and all "
6404
- "connected content blockers in Real Cookie Banner and create it again from "
6405
- "the service templates."
6406
- msgstr ""
6407
- "Am einfachsten kannst du die Änderungen übernehmen, indem du den Service und "
6408
- "alle damit verbundenen Content Blocker in Real Cookie Banner löschst und ihn "
6409
- "aus den Service-Vorlagen neu erstellst."
6410
 
6411
  #: inc/presets/UpdateNotice.php:1
6412
  msgid "Dismiss this notice"
@@ -6467,6 +6700,7 @@ msgid "Service group"
6467
  msgstr "Service-Gruppe"
6468
 
6469
  #: inc/settings/CookieGroup.php:1
 
6470
  msgid ""
6471
  "Essential services are required for the basic functionality of the website. "
6472
  "They only contain technically necessary services. These services cannot be "
@@ -6477,9 +6711,10 @@ msgstr ""
6477
  "Services kann nicht widersprochen werden."
6478
 
6479
  #: inc/settings/CookieGroup.php:1
 
6480
  msgid ""
6481
  "Functional services are necessary to provide features beyond the essential "
6482
- "functionality such as prettier fonts, video playback or interactive Web 2.0 "
6483
  "features. Content from e.g. video platforms and social media platforms are "
6484
  "blocked by default, and can be consented to. If the service is agreed to, "
6485
  "this content is loaded automatically without further manual consent."
@@ -6492,6 +6727,7 @@ msgstr ""
6492
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6493
 
6494
  #: inc/settings/CookieGroup.php:1
 
6495
  msgid ""
6496
  "Statistics services are needed to collect pseudonymous data about the "
6497
  "visitors of the website. The data enables us to understand visitors better "
@@ -6502,6 +6738,7 @@ msgstr ""
6502
  "besser zu verstehen und die Website zu optimieren."
6503
 
6504
  #: inc/settings/CookieGroup.php:1
 
6505
  msgid ""
6506
  "Marketing services are used by us and third parties to track the behaviour "
6507
  "of individual visitors (across multiple pages), analyse the data collected "
@@ -6509,8 +6746,8 @@ msgid ""
6509
  "us to track visitors across multiple websites."
6510
  msgstr ""
6511
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6512
- "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und z."
6513
- "B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6514
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6515
 
6516
  #: inc/settings/Revision.php:1
@@ -6655,11 +6892,11 @@ msgstr "Einstellungen des Cookie Banners anpassen"
6655
 
6656
  #: inc/view/checklist/SaveSettings.php:1
6657
  msgid ""
6658
- "Define the behavior of the cookie banner and hide the cookie banner both in "
6659
- "the imprint and privacy policy (required by law)."
6660
  msgstr ""
6661
- "Bestimme das Verhalten des Cookie Banners und blende es sowohl im Impressum "
6662
- "als auch in der Datenschutzerklärung aus (gesetzlich vorgeschrieben)."
6663
 
6664
  #: inc/view/checklist/SaveSettings.php:1
6665
  msgid "Manage settings"
@@ -6672,10 +6909,11 @@ msgstr "Scanne deine Website nach Services"
6672
  #: inc/view/checklist/Scanner.php:1
6673
  msgid ""
6674
  "Scan your website to identify services used and external URLs that may "
6675
- "transmit personal data."
6676
  msgstr ""
6677
  "Scanne deine Website, um genutzte Services und externe URLs zu "
6678
- "identifizieren, die persönliche Daten übertragen können."
 
6679
 
6680
  #: inc/view/checklist/Scanner.php:1
6681
  msgid "Open scanner"
@@ -6689,18 +6927,18 @@ msgstr "Platziere legale Links auf deiner Website"
6689
  msgid ""
6690
  "Your website visitors must be able to view their consent history, change "
6691
  "their consent, or withdraw their consent at any time. This must be as easy "
6692
- "as giving consent. Therefore, the shortcodes must be included on every "
6693
  "subpage of the website (e.g. in the footer)."
6694
  msgstr ""
6695
  "Deine Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6696
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6697
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6698
- "Deshalb müssen die Shortcodes auf jeder Unterseite der Website zu finden "
6699
- "sein (z. B. im Footer/Fußzeile)."
6700
 
6701
  #: inc/view/checklist/Shortcode.php:1
6702
  msgid "Create legal links"
6703
- msgstr "Legal links erstellen"
6704
 
6705
  #: inc/view/checklist/ViewStats.php:1
6706
  msgid "Check out statistics about consents"
@@ -6776,6 +7014,17 @@ msgstr "Einstellungen"
6776
  msgid "Enabled"
6777
  msgstr "Aktiviert"
6778
 
 
 
 
 
 
 
 
 
 
 
 
6779
  #: inc/view/customize/banner/BasicLayout.php:1
6780
  msgid "Basic Layout"
6781
  msgstr "Grundlegendes Layout"
@@ -6870,6 +7119,16 @@ msgstr "Button-Rahmen: Abgerundete Ecken"
6870
  msgid "Animation on display"
6871
  msgstr "Animation beim Einblenden"
6872
 
 
 
 
 
 
 
 
 
 
 
6873
  #: inc/view/customize/banner/BasicLayout.php:1
6874
  msgid "Animation only on mobile devices"
6875
  msgstr "Animation nur auf mobilen Geräten"
@@ -7076,22 +7335,21 @@ msgstr "Button: Weiter ohne Einwilligung"
7076
  msgid "Use the same stylings as for \"Accept all\""
7077
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7078
 
 
7079
  #: inc/view/customize/banner/BodyDesign.php:1
7080
  #: inc/view/customize/banner/individual/SaveButton.php:1
7081
  msgid ""
7082
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7083
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7084
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7085
  "way for your visitors to express their choice (agree to everything, continue "
7086
  "without consent or an indivudual decision). Equivalent does not necessarily "
7087
  "mean that the buttons/links must look exactly the same. However, you should "
7088
  "be safest if they look exactly the same."
7089
  msgstr ""
7090
- "Gemäß der <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7091
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7092
- "deutschen Datenschutzbehörden</a> muss es für deine Besucher eine "
7093
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7094
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7095
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7096
  "aussehen müssen. Am sichersten bist du jedoch, wenn sie genau gleich "
7097
  "aussehen."
@@ -7197,25 +7455,28 @@ msgid "Consent options"
7197
  msgstr "Einwilligungs-Optionen"
7198
 
7199
  #: inc/view/customize/banner/Decision.php:1
7200
- #: inc/view/customize/banner/Texts.php:1
7201
  msgid "Accept all"
7202
  msgstr "Alle akzeptieren"
7203
 
7204
  #. translators:
7205
  #: inc/view/customize/banner/Decision.php:1
7206
  msgid ""
7207
- "According to the GDPR (%1$sEU 2016/679%2$s), section 32, you are not allowed "
7208
- "to pre-select services in the form of pre-selected checkboxes for the "
7209
- "visitor. However, the GDPR and ePrivacy Directive do not prohibit the use of "
7210
- "a button to agree to all services, if there is also a button to agree only "
7211
- "to the essential services or to make a user-defined selection."
7212
  msgstr ""
7213
- "Gemäß der DSGVO (%1$sEU 2016/679%2$s), Erwägungsgrund 32, darfst du keine "
7214
- "Services in Form von vorselektierten Checkboxen für den Besucher auswählen. "
7215
- "Die DSGVO und die ePrivacy-Richtlinie verbieten jedoch nicht die Verwendung "
7216
- "eines Buttons zur Einwilligung in alle Services, wenn es auch einen Button "
7217
- "gibt, um nur den essenziellen Services zuzustimmen oder um eine "
7218
- "benutzerdefinierte Auswahl zu treffen."
 
 
 
 
7219
 
7220
  #: inc/view/customize/banner/Decision.php:1
7221
  #: inc/view/customize/banner/individual/SaveButton.php:1
@@ -7229,7 +7490,6 @@ msgid "Link"
7229
  msgstr "Link"
7230
 
7231
  #: inc/view/customize/banner/Decision.php:1
7232
- #: inc/view/customize/banner/Texts.php:1
7233
  msgid "Continue without consent"
7234
  msgstr "Weiter ohne Einwilligung"
7235
 
@@ -7262,44 +7522,42 @@ msgstr ""
7262
  "Einwilligung\"."
7263
 
7264
  #: inc/view/customize/banner/Decision.php:1
7265
- #: inc/view/customize/banner/individual/Texts.php:1
7266
  msgid "Individual privacy preferences"
7267
  msgstr "Individuelle Privatsphäre-Einstellungen"
7268
 
7269
  #: inc/view/customize/banner/Decision.php:1
7270
  msgid ""
7271
- "According to the GDPR (EU 2016/679) and the ePrivacy Directive (EU 2009/136/"
7272
- "EC), the user must be free to choose which services to use and be informed "
7273
- "about their purpose before giving consent. Therefore, the user must be given "
7274
- "the opportunity to access the page with the individual privacy settings."
7275
  msgstr ""
7276
- "Gemäß der DSGVO (EU 2016/679) und der ePrivacy-Richtlinie (EU 2009/136/EG) "
7277
- "muss der Nutzer frei wählen können, welche Services genutzt werden sollen "
7278
- "und über deren Zweck informiert werden, bevor er seine Einwilligung gibt. "
7279
- "Daher muss dem Nutzer die Möglichkeit gegeben werden, die Seite mit den "
7280
- "individuellen Privatsphäre-Einstellungen aufzurufen."
7281
 
7282
  #: inc/view/customize/banner/Decision.php:1
7283
  msgid "Order of the buttons"
7284
  msgstr "Reihenfolge der Buttons"
7285
 
 
7286
  #: inc/view/customize/banner/Decision.php:1
7287
  msgid ""
7288
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7289
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7290
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7291
  "way for your visitors to express their choice (agree to everything, continue "
7292
  "without consent or an indivudual decision). Which order of options is "
7293
  "considered equivalent is unclear. Therefore, the options should be arranged "
7294
  "according to the cultural conditions of the main target country."
7295
  msgstr ""
7296
- "Gemäß der <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7297
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7298
- "deutschen Datenschutzbehörden</a> muss es für deine Besucher eine "
7299
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7300
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7301
- "Welche Reihenfolge der Optionen als gleichwertig gilt, ist unklar. Daher "
7302
- "sollten die Optionen nach den kulturellen Gegebenheiten des Hauptziellandes "
7303
  "angeordnet werden."
7304
 
7305
  #: inc/view/customize/banner/Decision.php:1
@@ -7331,8 +7589,27 @@ msgid "Text of \"Accept all\" changes when user changes selection"
7331
  msgstr ""
7332
  "Text von “Alle akzeptieren” ändert sich, wenn der Benutzer die Auswahl ändert"
7333
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7334
  #: inc/view/customize/banner/Decision.php:1
7335
  #: inc/view/customize/banner/individual/Texts.php:1
 
7336
  msgid "Save custom choices"
7337
  msgstr "Individuelle Auswahlen speichern"
7338
 
@@ -7576,6 +7853,7 @@ msgstr "\"Service-Informationen ausblenden”-Link"
7576
 
7577
  #: inc/view/customize/banner/individual/Texts.php:1
7578
  #: inc/view/customize/banner/Texts.php:1
 
7579
  msgid ""
7580
  "We use cookies and similar technologies on our website and process your "
7581
  "personal data (e.g. IP address), for example, to personalize content and "
@@ -7594,6 +7872,7 @@ msgstr ""
7594
 
7595
  #: inc/view/customize/banner/individual/Texts.php:1
7596
  #: inc/view/customize/banner/Texts.php:1
 
7597
  msgid ""
7598
  "The data processing may take place with your consent or on the basis of a "
7599
  "legitimate interest, which you can object to in the privacy settings. You "
@@ -7609,6 +7888,7 @@ msgstr ""
7609
  "{{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7610
 
7611
  #: inc/view/customize/banner/individual/Texts.php:1
 
7612
  msgid ""
7613
  "Below you will find an overview of all services used by this website. You "
7614
  "can view detailed information about each service and agree to them "
@@ -7620,10 +7900,12 @@ msgstr ""
7620
  "Gebrauch machen."
7621
 
7622
  #: inc/view/customize/banner/individual/Texts.php:1
 
7623
  msgid "Show service information"
7624
  msgstr "Service-Informationen anzeigen"
7625
 
7626
  #: inc/view/customize/banner/individual/Texts.php:1
 
7627
  msgid "Hide service information"
7628
  msgstr "Service-Informationen ausblenden"
7629
 
@@ -7786,12 +8068,8 @@ msgid "\"Powered by\" link text"
7786
  msgstr "“Powered by”-Linktext"
7787
 
7788
  #: inc/view/customize/banner/Texts.php:1
7789
- msgid ""
7790
- "Use <code>{{services}}</code> as a placeholder to show all services that "
7791
- "process data in the USA."
7792
- msgstr ""
7793
- "Verwende <code>{{services}}</code> als Platzhalter, um alle Services "
7794
- "anzuzeigen, die Daten in den USA verarbeiten."
7795
 
7796
  #: inc/view/customize/banner/Texts.php:1
7797
  msgid "Data processing in the USA"
@@ -7863,22 +8141,28 @@ msgstr "\"Inhalt laden”-Button/Link"
7863
  msgid "Additional info below the \"Load content\" button"
7864
  msgstr "Zusatzinfo unterhalb dem \"Inhalt laden”-Button"
7865
 
 
7866
  #: inc/view/customize/banner/Texts.php:1
7867
  msgid ""
7868
  "The standard texts in the cookie banner are worded carefully. If you "
7869
  "customize them, make sure they are not misleading or riveting. According to "
7870
- "the <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-"
7871
- "und-tracking-2/#13_informiertheit)\" target=\"_blank\">Data Protection "
7872
- "Commissioner of Baden-Württeberg, Germany (Section B, 1.3.7.; German)</a>, "
7873
- "for example, a headline \"We love cookies\" is already misleading."
7874
  msgstr ""
7875
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn du sie "
7876
  "anpasst, achte darauf, dass sie nicht irreführend oder vernietlichend sind. "
7877
- "Nach dem <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-"
7878
- "cookies-und-tracking-2/#13_informiertheit)\" target=\"_blank"
7879
- "\">Datenschutzbeauftragen von Baden-Württeberg, Deutschland (Abschnitt B, "
7880
- "1.3.7.)</a> ist z.B. die Überschrift \"Wir lieben Cookies\" bereits "
7881
- "irreführend."
 
 
 
 
 
 
7882
 
7883
  #. translators:
7884
  #: inc/view/customize/banner/Texts.php:1
@@ -7919,14 +8203,17 @@ msgstr ""
7919
  "%2$s, um sie zu aktivieren."
7920
 
7921
  #: inc/view/customize/banner/Texts.php:1
 
7922
  msgid "Privacy preferences"
7923
  msgstr "Privatsphäre-Einstellungen"
7924
 
7925
  #: inc/view/customize/banner/Texts.php:1
 
7926
  msgid "Set privacy settings individually"
7927
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
7928
 
7929
  #: inc/view/customize/banner/Texts.php:1
 
7930
  msgid ""
7931
  "Some services process personal data in the USA. By consenting to the use of "
7932
  "these services, you also consent to the processing of your data in the USA "
@@ -7946,6 +8233,7 @@ msgstr ""
7946
  "Möglichkeit eines Rechtsbehelfs."
7947
 
7948
  #: inc/view/customize/banner/Texts.php:1
 
7949
  msgid ""
7950
  "You are under 16 years old? Then you cannot consent to optional services. "
7951
  "Ask your parents or legal guardians to agree to these services with you."
@@ -7955,6 +8243,7 @@ msgstr ""
7955
  "dir in diese Services einzuwilligen."
7956
 
7957
  #: inc/view/customize/banner/Texts.php:1
 
7958
  msgid ""
7959
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
7960
  "to this service to view this content. Please ask your parents or guardians "
@@ -7965,34 +8254,40 @@ msgstr ""
7965
  "Erziehungsberechtigten, dem Service mit dir zuzustimmen!"
7966
 
7967
  #: inc/view/customize/banner/Texts.php:1
 
7968
  msgid ""
7969
  "By accepting all services, you allow {{services}} to be loaded. These "
7970
  "services are divided into groups {{serviceGroups}} according to their "
7971
  "purpose (belonging marked with superscript numbers)."
7972
  msgstr ""
7973
  "Wenn du alle Services akzeptierst, erlaubst du, dass {{services}} geladen "
7974
- "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt "
7975
- "(Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
7976
 
7977
  #: inc/view/customize/banner/Texts.php:1
 
7978
  msgid "Your consent is also applicable on {{websites}}."
7979
  msgstr "Deine Einwilligung gilt auch auf {{websites}}."
7980
 
7981
  #. translators:
7982
  #: inc/view/customize/banner/Texts.php:1
 
7983
  msgid "{{name}} blocked due to privacy settings"
7984
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
7985
 
7986
  #. translators:
7987
  #: inc/view/customize/banner/Texts.php:1
 
7988
  msgid "Show all services you still need to agree to"
7989
  msgstr "Zeige alle Services, denen du noch zustimmen musst"
7990
 
7991
  #: inc/view/customize/banner/Texts.php:1
 
7992
  msgid "Accept required services and load content"
7993
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
7994
 
7995
  #: inc/view/customize/banner/Texts.php:1
 
7996
  msgid ""
7997
  "Loading the blocked content will adjust your privacy settings. Content from "
7998
  "this service will not be blocked in the future. You have the right to revoke "
@@ -8032,18 +8327,22 @@ msgid "The navigation menu could not be found."
8032
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8033
 
8034
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8035
  msgid "Change privacy settings"
8036
  msgstr "Privatsphäre-Einstellungen ändern"
8037
 
8038
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8039
  msgid "Privacy settings history"
8040
  msgstr "Historie der Privatsphäre-Einstellungen"
8041
 
8042
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8043
  msgid "Revoke consents"
8044
  msgstr "Einwilligungen widerrufen"
8045
 
8046
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8047
  msgid ""
8048
  "You have successfully revoked the consent. The page will be reloaded now."
8049
  msgstr ""
@@ -8093,6 +8392,46 @@ msgstr "Bitte gib ein `text`-Attribut in deinem Shortcode an!"
8093
  msgid "Please provide a `type` attribute in your shortcode. Allowed: %s!"
8094
  msgstr "Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: %s!"
8095
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8096
  #~ msgid ""
8097
  #~ "An opt-in script is not required, as this service is probably already "
8098
  #~ "integrated via e.g. your theme. In addition to this service, please "
2
  msgstr ""
3
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
4
  "POT-Creation-Date: n/a\n"
5
+ "PO-Revision-Date: 2022-08-29 14:24+0000\n"
6
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
7
+ "Language-Team: German <https://translate.devowl.io/projects/"
8
+ "wordpress-real-cookie-banner-backend-php/develop/de/>\n"
9
  "Language: de_CH\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
+ "X-Generator: Weblate 4.13.1\n"
15
 
16
  #. Plugin Name of the plugin
17
  msgid "Real Cookie Banner"
172
  "heruntergeladen, wodurch weitere rechtliche Probleme vermieden werden."
173
 
174
  #: inc/Assets.php:1
175
+ msgctxt "legal-text"
176
  msgid "Use on legal basis of"
177
  msgstr "Verwendung auf gesetzlicher Grundlage von"
178
 
179
  #: inc/Assets.php:1
180
+ msgctxt "legal-text"
181
  msgid "Legitimate interest"
182
  msgstr "Berechtigtes Interesse"
183
 
184
  #: inc/Assets.php:1
185
+ msgctxt "legal-text"
186
  msgid "Compliance with a legal obligation"
187
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
188
 
189
  #: inc/Assets.php:1
190
+ msgctxt "legal-text"
191
  msgid "Consent"
192
  msgstr "Einwilligung"
193
 
194
  #: inc/Assets.php:1
195
+ msgctxt "legal-text"
196
  msgid ""
197
  "We have recognized that you are a crawler/bot. Only natural persons must "
198
  "consent to cookies and processing of personal data. Therefore, the link has "
203
  "einwilligen. Daher hat der Link für dich keine Funktion."
204
 
205
  #: inc/Assets.php:1
206
+ msgctxt "legal-text"
207
  msgid "Technical cookie definition"
208
  msgstr "Technische Cookie-Definition"
209
 
210
  #: inc/Assets.php:1
211
+ msgctxt "legal-text"
212
  msgid "Uses cookies"
213
  msgstr "Verwendete Cookies"
214
 
215
  #: inc/Assets.php:1
216
+ msgctxt "legal-text"
217
  msgid "Cookie refresh"
218
  msgstr "Cookie-Auffrischung"
219
 
220
  #: inc/Assets.php:1
221
+ msgctxt "legal-text"
222
  msgid ""
223
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
224
  msgstr ""
226
  "IndexDB, etc.)"
227
 
228
  #: inc/Assets.php:1
229
+ msgctxt "legal-text"
230
  msgid "Host"
231
  msgstr "Host"
232
 
233
+ #: inc/Assets.php:1
234
+ msgctxt "legal-text"
235
  msgid "Duration"
236
  msgstr "Dauer"
237
 
260
  msgstr "Jahr(e)"
261
 
262
  #: inc/Assets.php:1
263
+ msgctxt "legal-text"
264
  msgid "No expiration"
265
  msgstr "Kein Ablauf"
266
 
267
+ #: inc/Assets.php:1
268
+ msgctxt "legal-text"
 
269
  msgid "Type"
270
  msgstr "Typ"
271
 
272
  #: inc/Assets.php:1
273
+ msgctxt "legal-text"
274
  msgid "Purpose"
275
  msgstr "Zweck"
276
 
277
  #: inc/Assets.php:1
278
+ msgctxt "legal-text"
279
  msgid "History of your privacy settings"
280
  msgstr "Privatsphäre-Einstellungen: Historie"
281
 
282
  #: inc/Assets.php:1
283
+ msgctxt "legal-text"
284
  msgid "Show consent from"
285
  msgstr "Einwilligungen anzeigen vom"
286
 
287
  #: inc/Assets.php:1
288
+ msgctxt "legal-text"
289
  msgid "Not yet consented to"
290
  msgstr "Noch nicht eingewilligt"
291
 
298
  msgstr "Schließen ohne Speichern"
299
 
300
  #: inc/Assets.php:1
301
+ msgctxt "legal-text"
302
  msgid "Provider"
303
  msgstr "Anbieter"
304
 
305
  #: inc/Assets.php:1
306
+ msgctxt "legal-text"
307
  msgid "Privacy Policy"
308
  msgstr "Datenschutzerklärung"
309
 
310
  #. translators:
311
  #: inc/Assets.php:1
312
+ msgctxt "legal-text"
313
  msgid "and %d more"
314
  msgstr "und %d mehr"
315
 
316
  #. translators:
317
+ #: inc/Assets.php:1
318
+ msgctxt "legal-text"
319
  msgid "US data processing"
320
  msgstr "US-Datenverarbeitung"
321
 
709
  msgid ""
710
  "In recent months, more clarity has been created about what consent "
711
  "management on websites should look like - and what it shouldn't. In "
712
+ "particular, through the <a href=\"%1$s\" target=\"_blank\">TTDSG</a> "
713
+ "(Telecommunications Telemedia Data Protection Act; Germany) and <a href="
714
+ "\"%2$s\" target=\"_blank\">Guidance of the Conference of Independent Data "
715
+ "Protection Authorities for cookie banners</a> (coordinated legal "
716
+ "interpretation of all German data protection authorities; in German), there "
717
+ "are now clearer rules that further interpret or complement the EU-wide "
718
+ "applicable <a href=\"%3$s\" target=\"_blank\">ePrivacy Directive</a> and <a "
719
+ "href=\"%4$s\" target=\"_blank\">GDPR</a>. Furthermore, there were important "
720
+ "decisions such as the evaluation of <a href=\"%5$s\" target=\"_blank\">TCF "
721
+ "by ADP (Belgium)</a>, the <a href=\"%6$s\" target=\"_blank\">Google "
722
+ "Analytics decision by dsb (Austria)</a> and the <a href=\"%7$s\" target="
723
+ "\"_blank\">position on Google Analytics by CNIL</a>."
 
 
 
 
 
 
724
  msgstr ""
725
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
726
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
727
+ "aussehen sollte. Insbesondere durch das <a href=\"%1$s\" target=\"_blank\""
728
+ ">TTDSG</a> (Telekommunikation-Telemedien-Datenschutz-Gesetz) und die <a href="
729
+ "\"%2$s\" target=\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
 
 
730
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
731
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
732
+ "Regeln, welche die EU-weit geltende <a href=\"%3$s\" target=\"_blank\""
733
+ ">ePrivacy-Richtlinie</a> und <a href=\"%4$s\" target=\"_blank\">DSGVO</a> "
734
+ "weiter auslegen oder ergänzen. Außerdem gab es wichtige Entscheidungen wie "
735
+ "die Bewertung von <a href=\"%5$s\" target=\"_blank\">TCF durch ADP "
736
+ "(Belgien)</a>, die <a href=\"%6$s\" target=\"_blank\">Google Analytics "
737
+ "Entscheidung von dsb (Österreich)</a> und die <a href=\"%7$s\" target="
738
+ "\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
739
+
740
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
741
+ msgid "https://www.gesetze-im-internet.de/ttdsg/"
742
+ msgstr "https://www.gesetze-im-internet.de/ttdsg/"
743
+
744
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
745
+ #: inc/view/customize/banner/BodyDesign.php:1
746
+ #: inc/view/customize/banner/Decision.php:1
747
+ #: inc/view/customize/banner/individual/SaveButton.php:1
748
+ msgid ""
749
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
750
+ "pdf"
751
+ msgstr ""
752
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
753
+ "pdf"
754
+
755
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
756
+ msgid "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex%3A32009L0136"
757
+ msgstr "https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32009L0136"
758
+
759
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
760
+ msgid "https://gdpr-info.eu/"
761
+ msgstr "https://dsgvo-gesetz.de/"
762
+
763
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
764
+ msgid ""
765
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
766
+ "n-21-2022-english.pdf"
767
+ msgstr ""
768
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-"
769
+ "fond-n-21-2022-english.pdf"
770
+
771
+ #. translators:
772
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
773
+ msgid ""
774
+ "https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%2$20Google"
775
+ "%20Analytics_DE_bk_0.pdf"
776
+ msgstr ""
777
+ "https://noyb.eu/sites/default/files/2022-01/"
778
+ "E-DSB%20-%2$20Google%20Analytics_DE_bk_0.pdf"
779
+
780
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
781
+ msgid ""
782
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
783
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
784
+ msgstr ""
785
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
786
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
787
 
788
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
789
  msgid ""
844
  #. translators:
845
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
846
  msgid ""
847
+ "In accordance with the requirements of the &quot;<a href=\"%s\" target="
 
848
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
849
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
850
  "and revoke consent must be directly accessible on every sub-page of your "
851
  "website."
852
  msgstr ""
853
+ "Gemäß den Anforderungen des <a href=\"%s\" target=\"_blank\">"
 
854
  "\"Orientierungshilfe der Konferenz der unabhängigen "
855
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
856
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
993
  msgid "Updates in v3.0: You should act to be safe!"
994
  msgstr "Updates in v3.0: Du solltest handeln, um sicher zu sein!"
995
 
996
+ #. translators:
997
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
998
  msgid ""
999
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
1000
  "have implemented, among other things, current legal adjustments. Read more "
1001
+ "about the changes in our <a href=\"%s\" target=\"_blank\">blog post</a>."
 
1002
  msgstr ""
1003
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
1004
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
1005
+ "Änderungen erfährst du in unserem <a href=\"%s\" target=\"_blank\""
1006
+ ">Blogbeitrag.</a>."
1007
+
1008
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1009
+ msgid "https://devowl.io/2022/real-cookie-banner-3-0/"
1010
+ msgstr "https://devowl.io/de/2022/real-cookie-banner-3-0/"
1011
 
1012
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1013
  msgid ""
1065
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1066
  "Vorgehen für deinen Einzelfall zu klären."
1067
 
1068
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1069
+ msgid "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1070
+ msgstr "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1071
+
1072
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1073
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1074
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1075
 
1076
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1077
+ msgid ""
1078
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1079
+ msgstr ""
1080
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1081
+
1082
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1083
  msgid "Statement of the IAB Europe (English)"
1084
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1085
 
1086
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1087
+ msgid ""
1088
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1089
+ msgstr ""
1090
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1091
+
1092
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1093
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1094
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
1467
  "\"_blank\">%3$s</a>. In diesem Fall musst du auch den \"Code bei Opt-in "
1468
  "ausführen\" entfernen."
1469
 
1470
+ #: inc/overrides/pro/presets/ActiveCampaignSiteTrackingPreset.php:1
1471
+ msgid "https://wordpress.org/plugins/activecampaign-subscription-forms/"
1472
+ msgstr "https://de.wordpress.org/plugins/activecampaign-subscription-forms/"
1473
+
1474
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1475
  msgid ""
1476
  "AddThis allows providing links and buttons for sharing content on a variety "
1524
  "Benutzer eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1525
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1526
 
1527
+ #. translators:
1528
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1529
  msgid ""
1530
+ "This template assumes that you use the <a href=\"%s\" target=\"_blank"
1531
+ "\">AddToAny WordPress plugin</a>. The template is not suitable to add "
1532
+ "Facebook Like, Twitter Tweet or Pinterest Pin button in AddToAny. If you "
1533
+ "want to use any of these buttons, please use it without AddToAny and "
1534
+ "additionally create the cookies and content blockers for the respective "
1535
+ "service."
1536
  msgstr ""
1537
+ "Diese Vorlage setzt voraus, dass du das <a href=\"%s\" target=\"_blank\""
1538
+ ">AddToAny WordPress Plugin</a> verwendest. Die Vorlage ist nicht geeignet, "
1539
+ "um Facebook Like, Twitter Tweet oder Pinterest Pin Button in AddToAny "
1540
+ "einzufügen. Wenn du einen dieser Buttons verwenden möchtest, verwende ihn "
1541
+ "bitte ohne AddToAny und erstelle zusätzlich die Cookies und Content Blocker "
1542
+ "für den jeweiligen Dienst."
1543
+
1544
+ #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1545
+ msgid "https://wordpress.org/plugins/add-to-any/"
1546
+ msgstr "https://de.wordpress.org/plugins/add-to-any/"
1547
 
1548
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1549
  msgid ""
1564
  "merken, wie oft welche Werbeplatzierung bereits angezeigt wurde und wie oft "
1565
  "die jeweilige Werbung angeklickt wurde."
1566
 
1567
+ #. translators:
1568
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1569
  msgid ""
1570
+ "Ad Insert plays out ads even without consent. You should <a href=\"%s\" "
1571
+ "target=\"_blank\">obtain consent for the ads via the TCF v2.0 or newer "
1572
+ "standard</a>. Only some features of the plugin require you to obtain consent "
1573
+ "for Ad Inserter."
1574
  msgstr ""
1575
+ "Ad Insert spielt Werbung auch ohne Einwilligung aus. Du solltest <a href=\"%"
1576
+ "s\" target=\"_blank\">die Einwilligung für die Anzeigen über den TCF v2.0 "
1577
+ "oder neueren Standard einholen</a>. Nur für einige Features des Plugins "
1578
+ "musst du die Einwilligung für Ad Inserter einholen."
1579
+
1580
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1581
+ msgid "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1582
+ msgstr "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1583
 
1584
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1585
  msgid ""
1597
  "deaktiviert hast, da dieser Teil des Adblockers Daten an Google und Media."
1598
  "net überträgt, bevor du deine Einwilligung dazu hast."
1599
 
1600
+ #. translators:
1601
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1602
  msgid ""
1603
+ "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"%s\" "
1604
+ "target=\"_blank\">impression and click limits</a> feature of Ad Inserter "
1605
+ "Pro. The duration of the cookie depends on the settings of the feature."
 
1606
  msgstr ""
1607
+ "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn du das <a href=\"%s\" "
1608
+ "target=\"_blank\">Impressions- und Klick-Limit</a> Feature von Ad Inserter "
1609
+ "Pro nutzt. Die Dauer des Cookies hängt von den Einstellungen des Features ab."
1610
+
1611
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1612
+ msgid "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1613
+ msgstr "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1614
 
1615
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1616
  msgid ""
1838
  msgid "Awin Publisher ID"
1839
  msgstr "Awin-Publisher-ID"
1840
 
1841
+ #. translators:
1842
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1843
  msgid ""
1844
+ "You find your publisher ID in the <a href=\"%s\" target=\"_blank\">account "
1845
+ "overview</a> directly blow your account name."
1846
  msgstr ""
1847
+ "Du findest deine Publisher ID in der <a href=\"%s\" target=\"_blank\""
1848
+ ">Account Übersicht</a> direkt unter deinem Benutzernamen."
1849
+
1850
+ #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1851
+ msgid "https://ui.awin.com/user"
1852
+ msgstr "https://ui.awin.com/user"
1853
 
1854
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1855
  msgid ""
1905
  "Auf <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> Du unter Tools > "
1906
  "Conversion tracking > UET tag findest Du Deinen UET-Tag in der Tag-Tabelle."
1907
 
1908
+ #: inc/overrides/pro/presets/BingAdsPreset.php:1
1909
+ msgid "https://ads.microsoft.com"
1910
+ msgstr "https://ads.microsoft.com"
1911
+
1912
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1913
  msgid ""
1914
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
2361
  msgid "etracker Account Key"
2362
  msgstr "etracker Account Key"
2363
 
2364
+ #. translators:
2365
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2366
  msgid ""
2367
+ "You can find your etracker account key under <a href=\"%s\" target=\"_blank"
2368
+ "\">Account info > Settings> Account</a> of your etracker account."
 
2369
  msgstr ""
2370
+ "Du findest deinen etracker Account Key unter <a href=\"%s\" target=\"_blank\""
2371
+ ">Account Info > Einstellungen > Account</a> deines etracker Accounts."
2372
+
2373
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2374
+ msgid "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2375
+ msgstr "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2376
 
2377
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2378
  msgid ""
2389
  "Tracking widersprechen, indem er diesen Service in deinem Cookie Banner "
2390
  "deaktiviert."
2391
 
2392
+ #. translators:
2393
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2394
  msgid ""
2395
  "We also recommend that you deactivate the non-aggregated reporting via the "
2396
+ "<a href=\"%s\" target=\"_blank\">dashboard</a> under <i>menu (top left) > "
2397
+ "Account-ID > Settings > Privacy > Consent-free tracking cookies in "
2398
+ "accordance with CNIL guidelines</i> to ensure that there is definitely no "
2399
+ "personal reference for the collected data."
2400
+ msgstr ""
2401
+ "Wir empfehlen dir zusätzlich über das <a href=\"%s\" target=\"_blank\""
2402
+ ">Dashboard</a> unter <i>Menü (obene links) > Account-ID > Einstellungen > "
2403
+ "Datenschutz > Einwilligungs-freie Tracking Cookies gemäß Anforderungen der "
2404
+ "CNIL</i> die nicht aggregierten Reportings zu deaktivieren, um "
2405
+ "sicherzustellen, dass definitiv kein Personenbezug bei den erhobenen Daten "
2406
+ "besteht."
2407
+
2408
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2409
+ #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2410
+ msgid "https://newapp.etracker.com/"
2411
+ msgstr "https://newapp.etracker.com/"
2412
 
2413
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2414
  msgid "etracker: enhanced tracking"
2456
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2457
  "anreichert."
2458
 
2459
+ #. translators:
2460
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2461
  msgid ""
2462
  "In order for the consent to be taken into account, you must activate the "
2463
+ "toggle \"Opt-In active\" via the <a href=\"%s\" target=\"_blank\">dashboard</"
2464
+ "a> under <i>menu (top left) > Account-ID > Settings > Privacy > Tracking Opt-"
2465
+ "In and agreement</i>, but then switch to \"own Opt-In\" so that etracker "
2466
+ "does not display its own consent dialog, but instead uses the consent "
2467
+ "collected by Real Cookie Banner."
2468
+ msgstr ""
2469
+ "Damit die Einwilligung berücksichtigt wird, musst du via <a href=\"%s\" "
2470
+ "target=\"_blank\">Dashboard</a> unter <i>Menü (oben links) > Account-ID > "
2471
+ "Einstellungen > Datenschutz > Tracking Opt-In und Zustimmung</i> den Toggle "
2472
+ "\"Opt-In aktiv\" aktivieren und anschließend auf \"eigenes Opt-In\" "
2473
+ "umstellen. Damit wird etracker keinen eigenen Einwilligungsdialog anzeigen, "
2474
+ "sondern die Einwilligung, erhoben von Real Cookie Banner, verwenden."
 
2475
 
2476
  #. translators:
2477
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
2779
  "können mit den Daten der auf facebook.com registrierten Benutzer verknüpft "
2780
  "werden."
2781
 
2782
+ #. translators:
2783
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2784
  msgid ""
2785
+ "You can use Facebook's <a href=\"%s\" target=\"_blank\">embedded post "
2786
+ "generator</a> to generate a HTML code to embed post with the Facebook "
2787
+ "JavaScript SDK. Loading the JavaScript SDK is part of the opt-in code. All "
2788
+ "you need to do is place the HTML div and blockqoute elements where you want "
2789
+ "the embedded post to be visible on your site. If you use Facebook post as "
2790
+ "Iframe embeeds, please create in addition a content blocker for Facebook "
2791
+ "Posts to block loading of the content before you have the consent of the "
2792
+ "user."
2793
+ msgstr ""
2794
+ "Du kannst den <a href=\"%s\" target=\"_blank\">Post-Generator von Facebook </"
2795
+ "a> verwenden, um einen HTML-Code zum Einbetten von Posts mit dem Facebook "
 
2796
  "JavaScript SDK zu generieren. Das Laden des JavaScript-SDK ist Teil des Opt-"
2797
  "in Codes. Alles was du tun musst, ist das HTML-Div und blockqoute-Element "
2798
  "dort zu platzieren, wo der eingebettete Beitrag auf deiner Seite sichtbar "
2800
  "bitte zusätzlich einen Inhaltsblocker für Facebook, um das Laden ihres "
2801
  "Inhalts zu blockieren, bevor du die Einwilligung des Nutzers hast."
2802
 
2803
+ #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2804
+ msgid "https://developers.facebook.com/docs/plugins/embedded-posts/"
2805
+ msgstr "https://developers.facebook.com/docs/plugins/embedded-posts/"
2806
+
2807
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2808
  msgid ""
2809
  "Facebook Share button allows users to share a link directly on Facebook. The "
3004
  msgid "Please fill in a valid tracking ID!"
3005
  msgstr "Bitte gib eine gültige Tracking ID an!"
3006
 
3007
+ #. translators:
3008
  #: inc/overrides/pro/presets/GoogleAds.php:1
3009
  msgid ""
3010
+ "You can find your Adwords ID in <a href=\"%s\" target=\"_blank\">Google Ads</"
3011
+ "a> at Tools > Measurement > Conversions > Click on the name of the "
3012
+ "conversation action > Tag setup > Install the tag yourself > Adwords ID in "
3013
+ "the code (e.g. AW-123456789)."
3014
  msgstr ""
3015
+ "Deine Adwords ID findest du in <a href=\"%s\" target=\"_blank\">Google Ads</"
3016
+ "a> unter Tools > Messung > Conversions > Conversion-Aktion > Tag-Einrichtung "
3017
+ "> Tag selbst einfügen > Adwords ID in dem Code (z.B. AW-123456789)."
3018
+
3019
+ #: inc/overrides/pro/presets/GoogleAds.php:1
3020
+ msgid "https://ads.google.com/aw/overview"
3021
+ msgstr "https://ads.google.com/aw/overview"
3022
 
3023
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3024
  msgid ""
3045
  msgid "Google Adsense Publisher ID"
3046
  msgstr "Google Adsense Publisher-ID"
3047
 
3048
+ #. translators:
3049
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3050
  msgid ""
3051
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
3052
  "(if activated in your Adsense account) can be displayed. You can find it in "
3053
+ "the <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> under "
3054
+ "<i>Account > Settings > Account information</i>."
3055
  msgstr ""
3056
+ "Du musst deine Google Adsense Publisher ID eingeben, damit z.B. Auto Ads ("
3057
+ "falls in deinem Adsense Konto aktiviert) angezeigt werden können. Du findest "
3058
+ "sie im <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> unter "
3059
+ "<i>Account > Einstellungen > Kontoinformationen</i>."
3060
+
3061
+ #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3062
+ msgid "https://www.google.com/adsense"
3063
+ msgstr "https://www.google.com/adsense"
3064
 
3065
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3066
  msgid ""
3106
  msgid "Google Analytics Measurement ID"
3107
  msgstr "Google Analytics Measurement-ID"
3108
 
3109
+ #. translators:
3110
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3111
  msgid ""
3112
  "You can find your Measurement ID (also called property ID) in the <a href="
3113
+ "\"%s\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3114
+ "Select your account > Select your property > Setup Assistant > Tag "
3115
+ "installation > Select your website."
3116
  msgstr ""
3117
+ "Du findest deine Measurement ID (auch Property ID genannt) im <a href=\"%s\" "
3118
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3119
+ "Wähle deinen Account aus > Wähle deine Property aus > Setup Assistant > Tag "
3120
+ "Installation > Wähle deine Website aus."
3121
+
3122
+ #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3123
+ #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3124
+ msgid "https://analytics.google.com/analytics/web/"
3125
+ msgstr "https://analytics.google.com/analytics/web/"
3126
 
3127
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3128
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3172
  msgid "Google Analytics Tracking ID"
3173
  msgstr "Google Analytics Tracking-ID"
3174
 
3175
+ #. translators:
3176
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3177
  msgid ""
3178
+ "You can find your Tracking ID (also called Property ID) in the <a href=\"%s"
3179
+ "\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3180
+ "Select your account > Select your property > Tracking Info > Tracking Code."
 
3181
  msgstr ""
3182
+ "Du findest deine Tracking ID (auch Property ID genannt) im <a href=\"%s\" "
3183
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3184
+ "Wähle deinen Account > Wähle deine Property > Tracking Info > Tracking Code."
 
3185
 
3186
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3187
  msgid ""
3425
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
3426
  "Statistiken über sein Verhalten zu sammeln."
3427
 
3428
+ #. translators:
3429
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3430
  msgid ""
3431
+ "You have to create a so-called Beacon on <a href=\"%s\" target=\"_blank"
3432
+ "\">secure.helpscout.net</a> > Manager > Beacon > New Beacon. After creating "
3433
+ "in the Beacon Customizer, the URL looks like <code>https://secure.helpscout."
3434
+ "net/settings/beacons/c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. "
3435
+ "This means that the HelpScout Beacon ID is <code>c676047b-"
3436
+ "c2e8-45b1-8319-344f4e7e2431</code>."
3437
+ msgstr ""
3438
+ "Du musst einen sogenannten Beacon auf <a href=\"%s\" target=\"_blank\">secure"
3439
+ ".helpscout.net</a> > Manager > Beacon > New Beacon erstellen. Nach dem "
3440
+ "Erstellen im Beacon Customizer sieht die URL ähnlich aus wie "
3441
+ "<code>https://secure.helpscout.net/settings/beacons/"
3442
+ "c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. Das bedeutet, dass "
3443
+ "die HelpScout Beacon-ID <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code> "
3444
+ "lautet."
3445
+
3446
+ #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3447
+ msgid "https://secure.helpscout.net"
3448
+ msgstr "https://secure.helpscout.net"
3449
 
3450
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3451
  msgid "HelpScout Beacon ID"
3470
  msgid "Hotjar ID"
3471
  msgstr "Hotjar-ID"
3472
 
3473
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3474
+ msgid "https://wordpress.org/plugins/hotjar/"
3475
+ msgstr "https://de.wordpress.org/plugins/hotjar/"
3476
+
3477
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3478
+ msgid "official Hotjar WordPress Plugin"
3479
+ msgstr "offizielles Hotjar WordPress Plugin"
3480
+
3481
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3482
  msgid ""
3483
  "Imgur allows embedding content posted on imgur.com directly into websites."
3547
  msgid "Intercom application ID"
3548
  msgstr "Intercom Application ID"
3549
 
3550
+ #: inc/overrides/pro/presets/IntercomChatPreset.php:1
3551
+ msgid "https://wordpress.org/plugins/intercom/"
3552
+ msgstr "https://de.wordpress.org/plugins/intercom/"
3553
+
3554
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3555
  msgid ""
3556
  "Issuu allows embedding content posted on issuu.com directly into websites. "
3684
  msgid "https://linkedin.com/legal/privacy-policy"
3685
  msgstr "https://de.linkedin.com/legal/privacy-policy"
3686
 
3687
+ #. translators:
3688
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3689
  msgid ""
3690
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3691
+ "\"%s\" target=\"_blank\">where to find the LinkedIn Partner ID</a> in your "
3692
+ "LinkedIn Ads account."
3693
  msgstr ""
3694
  "Du findest in der Wissensdatenbank von LinkedIn einen Artikel, der dir "
3695
+ "erklärt, <a href=\"%s\" target=\"_blank\">wo du die LinkedIn Partner ID "
3696
+ "findest</a> in deinem LinkedIn Ads Konto."
3697
+
3698
+ #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3699
+ msgid "https://www.linkedin.com/help/lms/answer/a415871"
3700
+ msgstr "https://www.linkedin.com/help/lms/answer/a415871"
3701
 
3702
  #: inc/overrides/pro/presets/LoomPreset.php:1
3703
  msgid ""
3823
  "Anmeldung verwendest, das versteckt werden kann (z.B. Popup). Nur in diesem "
3824
  "Fall wird ein Cookie gesetzt."
3825
 
3826
+ #. translators:
3827
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3828
  msgid ""
3829
  "Personal data will never be transferred directly from the browser of your "
3830
  "visitors to MailPoet, but only, for example, when you sign up for the "
3831
  "newsletter via your WordPress installation. You should always follow the <a "
3832
+ "href=\"%s\" target=\"_blank\">MailPoet Guide to Conform to GDPR</a>."
 
3833
  msgstr ""
3834
  "Personenbezogene Daten werden niemals direkt vom Browser deiner Besucher an "
3835
  "MailPoet übertragen, sondern nur z.B. bei der Anmeldung zum Newsletter über "
3836
+ "deine WordPress-Installation. Du solltest immer den <a href=\"%s\" target="
3837
+ "\"_blank\">MailPoet Guide to Conform to GDPR</a>. beachten."
3838
+
3839
+ #: inc/overrides/pro/presets/MailPoetPreset.php:1
3840
+ msgid "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3841
+ msgstr "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3842
 
3843
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3844
  msgid ""
3914
  msgid "Please provide a valid hash!"
3915
  msgstr "Bitte gib einen gültigen Hash an!"
3916
 
3917
+ #. translators:
3918
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3919
  msgid ""
3920
+ "You find your Metricool hash in the <a href=\"%s\" target=\"_blank"
3921
+ "\">Metricool Brand Conncetions</a>, if you use \"Connect web\" and choose "
3922
+ "the integration as JavaScript tag, within the generated JavaScript."
 
3923
  msgstr ""
3924
+ "Du findest deinen Metricool Hash in den <a href=\"%s\" target=\"_blank\""
3925
+ ">Metricool Brand Conncetions</a>, wenn du \"Connect web\" nutzt und die "
3926
+ "Integration als JavaScript-Tag auswählst, innerhalb des generierten "
3927
+ "JavaScript."
3928
+
3929
+ #: inc/overrides/pro/presets/MetricoolPreset.php:1
3930
+ msgid "https://app.metricool.com/brands/connections"
3931
+ msgstr "https://app.metricool.com/brands/connections"
3932
 
3933
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3934
  msgid ""
3959
  "projects/view/12cggd77jl/</code> lautet, ist deine Projekt-ID "
3960
  "<code>12cggd77jl</code>."
3961
 
3962
+ #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3963
+ msgid "https://wordpress.org/plugins/microsoft-clarity/"
3964
+ msgstr "https://de.wordpress.org/plugins/microsoft-clarity/"
3965
+
3966
  #. translators:
3967
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3968
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
3998
  msgid "Mouseflow Website ID"
3999
  msgstr "Mouseflow Website-ID"
4000
 
4001
+ #. translators:
4002
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
4003
  msgid ""
4004
  "You can find your Mouseflow website ID by hovering over the appropriate "
4005
+ "website at <a href=\"%s\" target=\"_blank\">eu.mouseflow.com/websites</a>. "
4006
+ "You will then see a gear icon that you can click on. In the settings that "
4007
+ "appear, you should find a <code>Website ID</code> field."
 
4008
  msgstr ""
4009
+ "Du findest deine Mouseflow Website ID, indem du auf <a href=\"%s\" target="
4010
+ "\"_blank\">eu.mouseflow.com/websites</a> mit dem Mauszeiger über die "
4011
+ "entsprechende Website fährst. Du siehst dann ein Zahnradsymbol, auf das du "
4012
+ "klicken kannst. In den Einstellungen, die dann erscheinen, solltest du ein "
4013
+ "Feld <code>Website ID</code> finden."
4014
+
4015
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4016
+ msgid "http://eu.mouseflow.com/websites"
4017
+ msgstr "http://eu.mouseflow.com/websites"
4018
+
4019
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4020
+ msgid "https://wordpress.org/plugins/mouseflow-for-wordpress/"
4021
+ msgstr "https://de.wordpress.org/plugins/mouseflow-for-wordpress/"
4022
 
4023
  #. translators:
4024
  #: inc/overrides/pro/presets/MtmPreset.php:1
4250
  msgid "Pinterest Tag ID"
4251
  msgstr "Pinterest Tag-ID"
4252
 
4253
+ #. translators:
4254
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4255
  msgid ""
4256
+ "You can view your Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</"
4257
+ "a> under Ads > Conversions > Add code to website > Add code. It is displayed "
4258
+ "in the top right corner of the modal."
4259
  msgstr ""
4260
+ "Du kannst deine Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</a> "
4261
+ "unter Anzeigen > Conversions > Code zur Website hinzufügen > Code hinzufügen "
4262
+ "einsehen. Er wird in der oberen rechten Ecke des Modals angezeigt."
4263
+
4264
+ #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4265
+ msgid "https://ads.pinterest.com/"
4266
+ msgstr "https://ads.pinterest.com/"
4267
 
4268
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4269
  msgid ""
4435
  "speichern die Sprache des Nutzers und können den Nutzer auf die Version der "
4436
  "Webseite umleiten, welche der Sprache des Browsers des Nutzers entspricht."
4437
 
4438
+ #. translators:
4439
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4440
  msgid ""
4441
  "Please make sure you have not renamed the Polylang cookie name or change it "
4442
  "in the same way in the technical definitions above. Learn more about how to "
4443
+ "change the Polylang cookie name <a href=\"%s\" target=\"_blank\">in their "
 
4444
  "documentation</a>."
4445
  msgstr ""
4446
  "Bitte vergewissere dich, dass du den Namen des Polylang Cookies nicht "
4447
  "umbenannt oder in den technischen Definitionen oben auf die gleiche Weise "
4448
  "geändert hast. Mehr darüber, wie man den Polylang Cookie-Namen ändert, "
4449
+ "findest du <a href=\"%s\" target=\"_blank\">in der Dokumentation</a>."
4450
+
4451
+ #: inc/overrides/pro/presets/PolyLangPreset.php:1
4452
+ msgid "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4453
+ msgstr "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4454
 
4455
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4456
  msgid ""
4756
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4757
  "Statistiken über sein Verhalten zu sammeln."
4758
 
4759
+ #. translators:
4760
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4761
  msgid ""
4762
+ "You can create your own custom chat widget at <a href=\"%s\" target=\"_blank"
4763
+ "\">dashboard.tawk.to</a> > Settings > Chat Widget. The chat widget in the "
4764
+ "opt-in code is just the default example."
4765
  msgstr ""
4766
+ "Du kannst dein eigenes benutzerdefiniertes Chat-Widget unter <a href=\"%s\" "
4767
+ "target=\"_blank\">dashboard.tawk.to</a> > Einstellungen > Chat Widget "
4768
+ "erstellen. Das Chat-Widget im Opt-in Code ist nur das Standardbeispiel."
4769
+
4770
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4771
+ msgid "https://dashboard.tawk.to"
4772
+ msgstr "https://dashboard.tawk.to"
4773
 
4774
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4775
  msgid "tawk.to ID"
4776
  msgstr "tawk.to ID"
4777
 
4778
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4779
+ msgid "https://wordpress.org/plugins/tawkto-live-chat/"
4780
+ msgstr "https://de.wordpress.org/plugins/tawkto-live-chat/"
4781
+
4782
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4783
  msgid ""
4784
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
4818
  "Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4819
  "Statistiken über sein Verhalten zu sammeln."
4820
 
4821
+ #. translators:
4822
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4823
  msgid ""
4824
+ "You get your Tidio JS ID on <a href=\"%s\" target=\"_blank\">tidio.com</a> "
4825
+ "under Settings > Live Chat > Integration > JavaScript in the given "
4826
+ "JavaScript snipped. You can adjust the appearance of the chat at tidio.com "
4827
+ "under Settings > Live Chat > Appearance."
4828
  msgstr ""
4829
+ "Du bekommst deine Tidio JS ID auf <a href=\"%s\" target=\"_blank\">tidio."
4830
+ "com</a> unter Einstellungen > Live Chat > Integration > JavaScript in dem "
4831
+ "angegebene JavaScript-Code. Du kannst das Aussehen des Chats auf tidio.com "
4832
+ "unter Einstellungen > Live Chat > Aussehen anpassen."
4833
+
4834
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4835
+ msgid "https://tidio.com"
4836
+ msgstr "https://www.tidio.com/de/"
4837
 
4838
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4839
  msgid "Tidio JS ID"
4840
  msgstr "Tidio JS-ID"
4841
 
4842
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4843
+ msgid "https://wordpress.org/plugins/tidio-live-chat/"
4844
+ msgstr "https://de.wordpress.org/plugins/tidio-live-chat/"
4845
+
4846
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4847
  msgid ""
4848
  "TikTok Pixel helps to determine whether you are the target audience for "
4874
  msgid "TikTok Pixel ID"
4875
  msgstr "TikTok Pixel-ID"
4876
 
4877
+ #. translators:
4878
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4879
  msgid ""
4880
+ "In the <a href=\"%s\" target=\"_blank\">Event Manager of the TikTok Ad "
4881
+ "Manager</a> you can create a website pixel. Select \"Manually install pixel "
4882
+ "code\" for the type of integration. Whether you want to use the \"Standard "
4883
+ "Mode\" or \"Developer Mode\" depends on your purpose."
 
4884
  msgstr ""
4885
+ "Im <a href=\"%s\" target=\"_blank\">Event Manager des TikTok Ad Managers</a> "
4886
+ "kannst du ein Website-Pixel erstellen. Wähle für die Art der Integration "
4887
+ "\"Manually install pixel code\". Ob du den \"Standard Mode\" oder den "
4888
+ "\"Developer Mode\" verwenden möchtest, hängt von deinem Vorhaben ab."
4889
+
4890
+ #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4891
+ msgid "https://ads.tiktok.com/i18n/events_manager/"
4892
+ msgstr "https://ads.tiktok.com/i18n/events_manager/"
4893
 
4894
+ #. translators:
4895
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4896
  msgid ""
4897
+ "After creating the TikTok Pixel you return to the <a href=\"%s\" target="
4898
+ "\"_blank\">Event Manager of the TikTok Ad Manager</a> and select \"Manage\" "
4899
+ "in the section \"Website Pixel\". You will then see an overview of all the "
4900
+ "TikTok pixels you have created. Each TikTok pixel has its ID directly under "
4901
+ "its name."
4902
  msgstr ""
4903
+ "Nach der Erstellung des TikTok Pixel kehrst du zum <a href=\"%s\" target="
4904
+ "\"_blank\">Event Manager des TikTok Ad Managers</a> zurück und wählst im "
4905
+ "Abschnitt \"Website Pixel\" den Punkt \"Manage\". Du siehst dann eine "
4906
+ "Übersicht über alle TikTok Pixel, die du erstellt hast. Jedes TikTok-Pixel "
4907
+ "hat seine ID direkt unter seinem Namen."
4908
 
4909
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4910
  msgid ""
5021
  msgid "https://www.userlike.com/en/terms#privacy-policy"
5022
  msgstr "https://www.userlike.com/de/terms#privacy-policy"
5023
 
5024
+ #. translators:
5025
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5026
  msgid ""
5027
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
5028
+ "You can find it in the <a href=\"%s\" target=\"_blank\">Userlike widget "
5029
+ "configurator</a> > Name of the widget > Install > JavaScript Widget code."
 
 
5030
  msgstr ""
5031
  "Bitte füge als Opt-in Code den JavaScript Code deines Userlike Widgets ein. "
5032
+ "Du findest ihn unter <a href=\"%s\" target=\"_blank\">Userlike Widget-"
5033
+ "Konfigurator</a> > Name des Widgets > Installieren > JavaScript Widget code."
5034
+
5035
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5036
+ msgid "https://userlike.com/en/dashboard/um/config/um_widget/overview"
5037
+ msgstr "https://userlike.com/de/dashboard/um/config/um_widget/overview"
5038
 
5039
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5040
  msgid "Example opt-in code"
5041
  msgstr "Beispiel Opt-in Code"
5042
 
5043
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5044
+ msgid "https://wordpress.org/plugins/userlike/"
5045
+ msgstr "https://de.wordpress.org/plugins/userlike/"
5046
+
5047
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5048
+ msgid "Userlike WordPress Plugin"
5049
+ msgstr "Userlike WordPress-Plugin"
5050
+
5051
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5052
  msgid ""
5053
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
5114
  "\"essenzielles Cookie\" und keinen Content Blocker wirst du die volle dir "
5115
  "zustehende Ausschüttungen der VG WORT erhalten können."
5116
 
5117
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5118
+ msgid ""
5119
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5120
+ msgstr ""
5121
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5122
+
5123
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5124
+ msgid "https://www.gesetze-im-internet.de/urhg/__53.html"
5125
+ msgstr "https://www.gesetze-im-internet.de/urhg/__53.html"
5126
+
5127
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5128
  msgid ""
5129
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
5374
  "Du findest Deine Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5375
  "\">Yandex Metrica Tags Liste</a>."
5376
 
5377
+ #: inc/overrides/pro/presets/YandexMetricaPreset.php:1
5378
+ msgid "https://metrica.yandex.com/list/"
5379
+ msgstr "https://metrica.yandex.com/list/"
5380
+
5381
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5382
  msgid ""
5383
  "Zendesk Chat is a customer service tool that provides live chat for "
5406
  "Du findest den Zendesk Widget Key im Zendesk Backend unter Einstellungen > "
5407
  "Widget > Web Widget einbetten als Teil des JavaScript Codes."
5408
 
5409
+ #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5410
+ msgid "https://wordpress.org/plugins/zopim-live-chat/"
5411
+ msgstr "https://de.wordpress.org/plugins/zopim-live-chat/"
5412
+
5413
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5414
  msgid ""
5415
  "Zoho Bookings is a planning software the allows you to book book "
5663
  "du in den individuellen Privatsphäre-Einstellungen."
5664
 
5665
  #: inc/overrides/pro/view/TcfBanner.php:1
5666
+ msgctxt "legal-text"
5667
  msgid ""
5668
  "In addition, you consent to the transfer of data to partners under the TCF "
5669
  "standard for the following purposes:"
5672
  "des TCF-Standards für die folgenden Zwecke zu:"
5673
 
5674
  #: inc/overrides/pro/view/TcfBanner.php:1
5675
+ msgctxt "legal-text"
5676
  msgid "Vendor list"
5677
  msgstr "Liste der Anbieter"
5678
 
5679
  #: inc/overrides/pro/view/TcfBanner.php:1
5680
+ msgctxt "legal-text"
5681
  msgid "Vendors"
5682
  msgstr "Anbieter"
5683
 
5691
  msgstr "Verstecken"
5692
 
5693
  #: inc/overrides/pro/view/TcfBanner.php:1
5694
+ msgctxt "legal-text"
5695
  msgid "Data processing on the legal basis of:"
5696
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5697
 
5698
  #: inc/overrides/pro/view/TcfBanner.php:1
5699
+ msgctxt "legal-text"
5700
  msgid "No vendor requests purposes under this legal basis."
5701
  msgstr "Kein Anbieter beantragt Zwecke auf dieser Rechtsgrundlage."
5702
 
5703
  #: inc/overrides/pro/view/TcfBanner.php:1
5704
+ msgctxt "legal-text"
5705
  msgid "Non-standardized data processing"
5706
  msgstr "Nicht standardisierte Datenverarbeitung"
5707
 
5708
  #: inc/overrides/pro/view/TcfBanner.php:1
5709
+ msgctxt "legal-text"
5710
  msgid ""
5711
  "Some services set cookies and/or process personal data without complying "
5712
  "with consent communication standards. These services are divided into "
5724
  "nach einer Einwilligung genutzt werden."
5725
 
5726
  #: inc/overrides/pro/view/TcfBanner.php:1
5727
+ msgctxt "legal-text"
5728
  msgid "Data processing standardized according to TCF"
5729
  msgstr "Datenverarbeitung standardisiert nach TCF"
5730
 
5731
  #: inc/overrides/pro/view/TcfBanner.php:1
5732
+ msgctxt "legal-text"
5733
  msgid ""
5734
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5735
  "consistent consent for processing of personal data and cookie setting. This "
5745
  "gesetzt, verarbeitet und gespeichert werden."
5746
 
5747
  #: inc/overrides/pro/view/TcfBanner.php:1
5748
+ msgctxt "legal-text"
5749
  msgid "Purposes"
5750
  msgstr "Zwecke"
5751
 
5752
  #: inc/overrides/pro/view/TcfBanner.php:1
5753
+ msgctxt "legal-text"
5754
  msgid ""
5755
  "Purposes describe for which purpose which providers may set cookies and "
5756
  "process personal data. Purposes are pre-selected if there is a legitimate "
5764
  "Einwilligung verarbeitet."
5765
 
5766
  #: inc/overrides/pro/view/TcfBanner.php:1
5767
+ msgctxt "legal-text"
5768
  msgid "Special purposes"
5769
  msgstr "Besondere Zwecke"
5770
 
5771
  #: inc/overrides/pro/view/TcfBanner.php:1
5772
+ msgctxt "legal-text"
5773
  msgid ""
5774
  "Special purposes for setting cookies and processing personal data by our "
5775
  "vendors describe purposes for which we have a legitimate interest that "
5781
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5782
 
5783
  #: inc/overrides/pro/view/TcfBanner.php:1
5784
+ msgctxt "legal-text"
5785
  msgid "Features"
5786
  msgstr "Funktionen"
5787
 
5788
  #: inc/overrides/pro/view/TcfBanner.php:1
5789
+ msgctxt "legal-text"
5790
  msgid ""
5791
  "Features for processing personal data describe how data is used to fulfill "
5792
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
5800
  "Jeder Zweck kann dazu führen, dass Funktionen verwendet werden."
5801
 
5802
  #: inc/overrides/pro/view/TcfBanner.php:1
5803
+ msgctxt "legal-text"
5804
  msgid "Special features"
5805
  msgstr "Besondere Funktionen"
5806
 
5807
  #: inc/overrides/pro/view/TcfBanner.php:1
5808
+ msgctxt "legal-text"
5809
  msgid ""
5810
  "Special features for processing personal data describe how data is used to "
5811
  "fulfill one or more purposes in a profound way. Personal data will only be "
6119
  "(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
6120
  "feststellen."
6121
 
6122
+ #. translators:
6123
  #: inc/presets/free/GoogleFontsPreset.php:1
6124
  msgid ""
6125
+ "We therefore recommend <a href=\"%s\" target=\"_blank\">replacing Google "
6126
+ "Fonts with locally hosted fonts</a> when possible, rather than asking for "
6127
+ "consent. We explained how this works in our blog!"
 
6128
  msgstr ""
6129
+ "Wir empfehlen daher, <a href=\"%s\" target=\"_blank\">Google Fonts wenn "
6130
+ "möglich durch lokal gehostete Schriftarten zu ersetzen</a>, anstatt nach "
6131
+ "einer Einwilligung zu fragen. Wie das funktioniert, haben wir in unserem "
6132
+ "Blog erklärt!"
6133
+
6134
+ #: inc/presets/free/GoogleFontsPreset.php:1
6135
+ msgid "https://devowl.io/2022/google-fonts-wordpress-gdpr/"
6136
+ msgstr "https://devowl.io/de/2022/google-fonts-wordpress-dsgvo/"
6137
 
6138
  #: inc/presets/free/GravatarPreset.php:1
6139
  msgid ""
6303
  "Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für diesen Dienst "
6304
  "muss ein Service angelegt werden."
6305
 
6306
+ #. translators:
6307
  #: inc/presets/free/WordPressCommentsPreset.php:1
6308
  msgid ""
6309
  "Do you want to use the comment feature on your website at all? If not, we "
6310
+ "explain in our blog <a href=\"%s\" target=\"_blank\"> how to disable "
6311
+ "comments in WordPress</a>. Then you can also avoid this consent!"
 
6312
  msgstr ""
6313
  "Willst du die Kommentarfunktion auf deiner Website überhaupt nutzen? Wenn "
6314
+ "nicht, erklären wir in unserem Blog, <a href=\"%s\" target=\"_blank\">wie du "
6315
+ "Kommentare in WordPress deaktivieren kannst</a>. Dann kannst du dir die "
6316
+ "Einwilligung auch sparen!"
6317
+
6318
+ #: inc/presets/free/WordPressCommentsPreset.php:1
6319
+ msgid "https://devowl.io/2022/deactivate-wordpress-comments/"
6320
+ msgstr "https://devowl.io/de/2022/wordpress-kommentare-deaktivieren/"
6321
 
6322
  #: inc/presets/free/WordPressEmojisPreset.php:1
6323
  msgid ""
6347
  "können Emojis problemlos ohne das WordPressa-Emoji-Script anzeigen (für das "
6348
  "du diese Einwilligung einholen musst)."
6349
 
6350
+ #. translators:
6351
  #: inc/presets/free/WordPressEmojisPreset.php:1
6352
  msgid ""
6353
  "Unless you need to support particularly old browsers and operating systems, "
6354
+ "we recommend that you <a href=\"%s\" target=\"_blank\">disable the WordPress "
6355
+ "emoji script</a> rather than asking for consent. How to do that, we have "
6356
+ "explained in our blog!"
6357
  msgstr ""
6358
  "Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
6359
+ "musst, empfehlen wir dir, das <a href=\"%s\" target=\"_blank\">WordPress-"
6360
+ "Emoji-Script zu deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. "
6361
+ "Wie du das machst, haben wir in unserem Blog erklärt!"
6362
+
6363
+ #: inc/presets/free/WordPressEmojisPreset.php:1
6364
+ msgid "https://devowl.io/2022/disable-emojis-wordpress/"
6365
+ msgstr "https://devowl.io/de/2022/wordpress-emojis-deaktivieren/"
6366
 
6367
  #: inc/presets/free/WordPressPluginEmbed.php:1
6368
  msgid ""
6624
 
6625
  #: inc/presets/UpdateNotice.php:1
6626
  msgid ""
6627
+ "Changes have been made to the templates you use in Real Cookie Banner. You "
6628
+ "should review the proposed changes and adjust your services if necessary to "
6629
+ "be able to remain legally compliant. The following services are affected:"
6630
  msgstr ""
6631
+ "Es wurden Änderungen an den Vorlagen vorgenommen, die du in Real Cookie "
6632
+ "Banner verwendest. Du solltest die vorgeschlagenen Änderungen überprüfen und "
6633
+ "deine Services gegebenenfalls anpassen, um rechtskonform zu bleiben. Die "
6634
+ "folgenden Services sind betroffen:"
6635
 
6636
  #: inc/presets/UpdateNotice.php:1
6637
  msgid "Service (Cookie)"
6638
  msgstr "Service (Cookie)"
6639
 
6640
  #: inc/presets/UpdateNotice.php:1
6641
+ msgid "Review changes"
6642
+ msgstr "Änderungen überprüfen"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6643
 
6644
  #: inc/presets/UpdateNotice.php:1
6645
  msgid "Dismiss this notice"
6700
  msgstr "Service-Gruppe"
6701
 
6702
  #: inc/settings/CookieGroup.php:1
6703
+ msgctxt "legal-text"
6704
  msgid ""
6705
  "Essential services are required for the basic functionality of the website. "
6706
  "They only contain technically necessary services. These services cannot be "
6711
  "Services kann nicht widersprochen werden."
6712
 
6713
  #: inc/settings/CookieGroup.php:1
6714
+ msgctxt "legal-text"
6715
  msgid ""
6716
  "Functional services are necessary to provide features beyond the essential "
6717
+ "functionality such as prettier fonts, video playback or interactive web 2.0 "
6718
  "features. Content from e.g. video platforms and social media platforms are "
6719
  "blocked by default, and can be consented to. If the service is agreed to, "
6720
  "this content is loaded automatically without further manual consent."
6727
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6728
 
6729
  #: inc/settings/CookieGroup.php:1
6730
+ msgctxt "legal-text"
6731
  msgid ""
6732
  "Statistics services are needed to collect pseudonymous data about the "
6733
  "visitors of the website. The data enables us to understand visitors better "
6738
  "besser zu verstehen und die Website zu optimieren."
6739
 
6740
  #: inc/settings/CookieGroup.php:1
6741
+ msgctxt "legal-text"
6742
  msgid ""
6743
  "Marketing services are used by us and third parties to track the behaviour "
6744
  "of individual visitors (across multiple pages), analyse the data collected "
6746
  "us to track visitors across multiple websites."
6747
  msgstr ""
6748
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6749
+ "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und "
6750
+ "z.B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6751
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6752
 
6753
  #: inc/settings/Revision.php:1
6892
 
6893
  #: inc/view/checklist/SaveSettings.php:1
6894
  msgid ""
6895
+ "Decide which features should be enabled in your cookie banner depending on "
6896
+ "your needs."
6897
  msgstr ""
6898
+ "Entscheide, welche Features in deinem Cookie Banner nach deinen "
6899
+ "Anforderungen aktiviert sein sollen."
6900
 
6901
  #: inc/view/checklist/SaveSettings.php:1
6902
  msgid "Manage settings"
6909
  #: inc/view/checklist/Scanner.php:1
6910
  msgid ""
6911
  "Scan your website to identify services used and external URLs that may "
6912
+ "transmit personal data and/or set cookies."
6913
  msgstr ""
6914
  "Scanne deine Website, um genutzte Services und externe URLs zu "
6915
+ "identifizieren, die persönliche Daten übertragen und/oder Cookies setzen "
6916
+ "können."
6917
 
6918
  #: inc/view/checklist/Scanner.php:1
6919
  msgid "Open scanner"
6927
  msgid ""
6928
  "Your website visitors must be able to view their consent history, change "
6929
  "their consent, or withdraw their consent at any time. This must be as easy "
6930
+ "as giving consent. Therefore, the legal links must be included on every "
6931
  "subpage of the website (e.g. in the footer)."
6932
  msgstr ""
6933
  "Deine Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6934
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6935
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6936
+ "Deshalb müssen die rechtlichen Links auf jeder Unterseite der Website zu "
6937
+ "finden sein (z. B. im Footer/Fußzeile)."
6938
 
6939
  #: inc/view/checklist/Shortcode.php:1
6940
  msgid "Create legal links"
6941
+ msgstr "Rechtliche Links erstellen"
6942
 
6943
  #: inc/view/checklist/ViewStats.php:1
6944
  msgid "Check out statistics about consents"
7014
  msgid "Enabled"
7015
  msgstr "Aktiviert"
7016
 
7017
+ #: inc/view/customize/banner/BasicLayout.php:1
7018
+ msgid ""
7019
+ "The animation you choose will have a negative impact on your PageSpeed "
7020
+ "Insights score. Please choose an animation where the cookie banner is "
7021
+ "animated from outside the website to achieve the best website loading speed!"
7022
+ msgstr ""
7023
+ "Die von dir gewählte Animation hat einen negativen Einfluss auf deinen "
7024
+ "PageSpeed Insights Score. Bitte wähle eine Animation, bei der das Cookie "
7025
+ "Banner von außerhalb der Website animiert wird, um die beste "
7026
+ "Ladegeschwindigkeit der Website zu erreichen!"
7027
+
7028
  #: inc/view/customize/banner/BasicLayout.php:1
7029
  msgid "Basic Layout"
7030
  msgstr "Grundlegendes Layout"
7119
  msgid "Animation on display"
7120
  msgstr "Animation beim Einblenden"
7121
 
7122
+ #: inc/view/customize/banner/BasicLayout.php:1
7123
+ #: inc/view/customize/banner/BodyDesign.php:1
7124
+ #: inc/view/customize/banner/individual/SaveButton.php:1
7125
+ msgid "Type"
7126
+ msgstr "Typ"
7127
+
7128
+ #: inc/view/customize/banner/BasicLayout.php:1
7129
+ msgid "Duration"
7130
+ msgstr "Dauer"
7131
+
7132
  #: inc/view/customize/banner/BasicLayout.php:1
7133
  msgid "Animation only on mobile devices"
7134
  msgstr "Animation nur auf mobilen Geräten"
7335
  msgid "Use the same stylings as for \"Accept all\""
7336
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7337
 
7338
+ #. translators:
7339
  #: inc/view/customize/banner/BodyDesign.php:1
7340
  #: inc/view/customize/banner/individual/SaveButton.php:1
7341
  msgid ""
7342
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7343
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7344
  "way for your visitors to express their choice (agree to everything, continue "
7345
  "without consent or an indivudual decision). Equivalent does not necessarily "
7346
  "mean that the buttons/links must look exactly the same. However, you should "
7347
  "be safest if they look exactly the same."
7348
  msgstr ""
7349
+ "Gemäß der <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7350
+ "Datenschutzbehörden</a> muss es für deine Besucher eine gleichwertige "
7351
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7352
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
 
7353
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7354
  "aussehen müssen. Am sichersten bist du jedoch, wenn sie genau gleich "
7355
  "aussehen."
7455
  msgstr "Einwilligungs-Optionen"
7456
 
7457
  #: inc/view/customize/banner/Decision.php:1
 
7458
  msgid "Accept all"
7459
  msgstr "Alle akzeptieren"
7460
 
7461
  #. translators:
7462
  #: inc/view/customize/banner/Decision.php:1
7463
  msgid ""
7464
+ "According to the %1$sGDPR recital 32%2$s, you are not allowed to pre-select "
7465
+ "services in the form of pre-selected checkboxes for the visitor. However, "
7466
+ "the GDPR and ePrivacy Directive do not prohibit the use of a button to agree "
7467
+ "to all services, if there is also a button to agree only to the essential "
7468
+ "services or to make a user-defined selection."
7469
  msgstr ""
7470
+ "Gemäß der %1$sDSGVO Erwägungsgrund 32%2$s darfst du keine Services in Form "
7471
+ "von vorselektierten Checkboxen für den Besucher auswählen. Die DSGVO und die "
7472
+ "ePrivacy-Richtlinie verbieten jedoch nicht die Verwendung eines Buttons zur "
7473
+ "Einwilligung in alle Services, wenn es auch einen Button gibt, um nur den "
7474
+ "essenziellen Services zuzustimmen oder um eine benutzerdefinierte Auswahl zu "
7475
+ "treffen."
7476
+
7477
+ #: inc/view/customize/banner/Decision.php:1
7478
+ msgid "https://gdpr-info.eu/recitals/no-32/"
7479
+ msgstr "https://dsgvo-gesetz.de/erwaegungsgruende/nr-32/"
7480
 
7481
  #: inc/view/customize/banner/Decision.php:1
7482
  #: inc/view/customize/banner/individual/SaveButton.php:1
7490
  msgstr "Link"
7491
 
7492
  #: inc/view/customize/banner/Decision.php:1
 
7493
  msgid "Continue without consent"
7494
  msgstr "Weiter ohne Einwilligung"
7495
 
7522
  "Einwilligung\"."
7523
 
7524
  #: inc/view/customize/banner/Decision.php:1
 
7525
  msgid "Individual privacy preferences"
7526
  msgstr "Individuelle Privatsphäre-Einstellungen"
7527
 
7528
  #: inc/view/customize/banner/Decision.php:1
7529
  msgid ""
7530
+ "According to the GDPR and the ePrivacy Directive, the user must be free to "
7531
+ "choose which services to use and be informed about their purpose before "
7532
+ "giving consent. Therefore, the user must be given the opportunity to access "
7533
+ "the page with the individual privacy settings."
7534
  msgstr ""
7535
+ "Gemäß der DSGVO und der ePrivacy-Richtlinie muss der Nutzer frei wählen "
7536
+ "können, welche Services genutzt werden sollen und über deren Zweck "
7537
+ "informiert werden, bevor er seine Einwilligung gibt. Daher muss dem Nutzer "
7538
+ "die Möglichkeit gegeben werden, die Seite mit den individuellen Privatsphäre-"
7539
+ "Einstellungen aufzurufen."
7540
 
7541
  #: inc/view/customize/banner/Decision.php:1
7542
  msgid "Order of the buttons"
7543
  msgstr "Reihenfolge der Buttons"
7544
 
7545
+ #. translators:
7546
  #: inc/view/customize/banner/Decision.php:1
7547
  msgid ""
7548
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7549
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7550
  "way for your visitors to express their choice (agree to everything, continue "
7551
  "without consent or an indivudual decision). Which order of options is "
7552
  "considered equivalent is unclear. Therefore, the options should be arranged "
7553
  "according to the cultural conditions of the main target country."
7554
  msgstr ""
7555
+ "Gemäß der <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7556
+ "Datenschutzbehörden</a> muss es für deine Besucher eine gleichwertige "
7557
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7558
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). Welche "
7559
+ "Reihenfolge der Optionen als gleichwertig gilt, ist unklar. Daher sollten "
7560
+ "die Optionen nach den kulturellen Gegebenheiten des Hauptziellandes "
 
7561
  "angeordnet werden."
7562
 
7563
  #: inc/view/customize/banner/Decision.php:1
7589
  msgstr ""
7590
  "Text von “Alle akzeptieren” ändert sich, wenn der Benutzer die Auswahl ändert"
7591
 
7592
+ #: inc/view/customize/banner/Decision.php:1
7593
+ #: inc/view/customize/banner/Texts.php:1
7594
+ msgctxt "legal-text"
7595
+ msgid "Accept all"
7596
+ msgstr "Alle akzeptieren"
7597
+
7598
+ #: inc/view/customize/banner/Decision.php:1
7599
+ #: inc/view/customize/banner/Texts.php:1
7600
+ msgctxt "legal-text"
7601
+ msgid "Continue without consent"
7602
+ msgstr "Weiter ohne Einwilligung"
7603
+
7604
+ #: inc/view/customize/banner/Decision.php:1
7605
+ #: inc/view/customize/banner/individual/Texts.php:1
7606
+ msgctxt "legal-text"
7607
+ msgid "Individual privacy preferences"
7608
+ msgstr "Individuelle Privatsphäre-Einstellungen"
7609
+
7610
  #: inc/view/customize/banner/Decision.php:1
7611
  #: inc/view/customize/banner/individual/Texts.php:1
7612
+ msgctxt "legal-text"
7613
  msgid "Save custom choices"
7614
  msgstr "Individuelle Auswahlen speichern"
7615
 
7853
 
7854
  #: inc/view/customize/banner/individual/Texts.php:1
7855
  #: inc/view/customize/banner/Texts.php:1
7856
+ msgctxt "legal-text"
7857
  msgid ""
7858
  "We use cookies and similar technologies on our website and process your "
7859
  "personal data (e.g. IP address), for example, to personalize content and "
7872
 
7873
  #: inc/view/customize/banner/individual/Texts.php:1
7874
  #: inc/view/customize/banner/Texts.php:1
7875
+ msgctxt "legal-text"
7876
  msgid ""
7877
  "The data processing may take place with your consent or on the basis of a "
7878
  "legitimate interest, which you can object to in the privacy settings. You "
7888
  "{{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7889
 
7890
  #: inc/view/customize/banner/individual/Texts.php:1
7891
+ msgctxt "legal-text"
7892
  msgid ""
7893
  "Below you will find an overview of all services used by this website. You "
7894
  "can view detailed information about each service and agree to them "
7900
  "Gebrauch machen."
7901
 
7902
  #: inc/view/customize/banner/individual/Texts.php:1
7903
+ msgctxt "legal-text"
7904
  msgid "Show service information"
7905
  msgstr "Service-Informationen anzeigen"
7906
 
7907
  #: inc/view/customize/banner/individual/Texts.php:1
7908
+ msgctxt "legal-text"
7909
  msgid "Hide service information"
7910
  msgstr "Service-Informationen ausblenden"
7911
 
8068
  msgstr "“Powered by”-Linktext"
8069
 
8070
  #: inc/view/customize/banner/Texts.php:1
8071
+ msgid "US data processing"
8072
+ msgstr "US-Datenverarbeitung"
 
 
 
 
8073
 
8074
  #: inc/view/customize/banner/Texts.php:1
8075
  msgid "Data processing in the USA"
8141
  msgid "Additional info below the \"Load content\" button"
8142
  msgstr "Zusatzinfo unterhalb dem \"Inhalt laden”-Button"
8143
 
8144
+ #. translators:
8145
  #: inc/view/customize/banner/Texts.php:1
8146
  msgid ""
8147
  "The standard texts in the cookie banner are worded carefully. If you "
8148
  "customize them, make sure they are not misleading or riveting. According to "
8149
+ "the <a href=\"%s\" target=\"_blank\">Data Protection Commissioner of Baden-"
8150
+ "Württeberg, Germany (Section B, 1.3.7.; German)</a>, for example, a headline "
8151
+ "\"We love cookies\" is already misleading."
 
8152
  msgstr ""
8153
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn du sie "
8154
  "anpasst, achte darauf, dass sie nicht irreführend oder vernietlichend sind. "
8155
+ "Nach dem <a href=\"%s\" target=\"_blank\">Datenschutzbeauftragen von Baden-"
8156
+ "Württeberg, Deutschland (Abschnitt B, 1.3.7.)</a> ist z.B. die Überschrift "
8157
+ "\"Wir lieben Cookies\" bereits irreführend."
8158
+
8159
+ #: inc/view/customize/banner/Texts.php:1
8160
+ msgid ""
8161
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8162
+ "#13_informiertheit)"
8163
+ msgstr ""
8164
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8165
+ "#13_informiertheit)"
8166
 
8167
  #. translators:
8168
  #: inc/view/customize/banner/Texts.php:1
8203
  "%2$s, um sie zu aktivieren."
8204
 
8205
  #: inc/view/customize/banner/Texts.php:1
8206
+ msgctxt "legal-text"
8207
  msgid "Privacy preferences"
8208
  msgstr "Privatsphäre-Einstellungen"
8209
 
8210
  #: inc/view/customize/banner/Texts.php:1
8211
+ msgctxt "legal-text"
8212
  msgid "Set privacy settings individually"
8213
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
8214
 
8215
  #: inc/view/customize/banner/Texts.php:1
8216
+ msgctxt "legal-text"
8217
  msgid ""
8218
  "Some services process personal data in the USA. By consenting to the use of "
8219
  "these services, you also consent to the processing of your data in the USA "
8233
  "Möglichkeit eines Rechtsbehelfs."
8234
 
8235
  #: inc/view/customize/banner/Texts.php:1
8236
+ msgctxt "legal-text"
8237
  msgid ""
8238
  "You are under 16 years old? Then you cannot consent to optional services. "
8239
  "Ask your parents or legal guardians to agree to these services with you."
8243
  "dir in diese Services einzuwilligen."
8244
 
8245
  #: inc/view/customize/banner/Texts.php:1
8246
+ msgctxt "legal-text"
8247
  msgid ""
8248
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
8249
  "to this service to view this content. Please ask your parents or guardians "
8254
  "Erziehungsberechtigten, dem Service mit dir zuzustimmen!"
8255
 
8256
  #: inc/view/customize/banner/Texts.php:1
8257
+ msgctxt "legal-text"
8258
  msgid ""
8259
  "By accepting all services, you allow {{services}} to be loaded. These "
8260
  "services are divided into groups {{serviceGroups}} according to their "
8261
  "purpose (belonging marked with superscript numbers)."
8262
  msgstr ""
8263
  "Wenn du alle Services akzeptierst, erlaubst du, dass {{services}} geladen "
8264
+ "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt ("
8265
+ "Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
8266
 
8267
  #: inc/view/customize/banner/Texts.php:1
8268
+ msgctxt "legal-text"
8269
  msgid "Your consent is also applicable on {{websites}}."
8270
  msgstr "Deine Einwilligung gilt auch auf {{websites}}."
8271
 
8272
  #. translators:
8273
  #: inc/view/customize/banner/Texts.php:1
8274
+ msgctxt "legal-text"
8275
  msgid "{{name}} blocked due to privacy settings"
8276
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
8277
 
8278
  #. translators:
8279
  #: inc/view/customize/banner/Texts.php:1
8280
+ msgctxt "legal-text"
8281
  msgid "Show all services you still need to agree to"
8282
  msgstr "Zeige alle Services, denen du noch zustimmen musst"
8283
 
8284
  #: inc/view/customize/banner/Texts.php:1
8285
+ msgctxt "legal-text"
8286
  msgid "Accept required services and load content"
8287
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
8288
 
8289
  #: inc/view/customize/banner/Texts.php:1
8290
+ msgctxt "legal-text"
8291
  msgid ""
8292
  "Loading the blocked content will adjust your privacy settings. Content from "
8293
  "this service will not be blocked in the future. You have the right to revoke "
8327
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8328
 
8329
  #: inc/view/navmenu/NavMenuLinks.php:1
8330
+ msgctxt "legal-text"
8331
  msgid "Change privacy settings"
8332
  msgstr "Privatsphäre-Einstellungen ändern"
8333
 
8334
  #: inc/view/navmenu/NavMenuLinks.php:1
8335
+ msgctxt "legal-text"
8336
  msgid "Privacy settings history"
8337
  msgstr "Historie der Privatsphäre-Einstellungen"
8338
 
8339
  #: inc/view/navmenu/NavMenuLinks.php:1
8340
+ msgctxt "legal-text"
8341
  msgid "Revoke consents"
8342
  msgstr "Einwilligungen widerrufen"
8343
 
8344
  #: inc/view/navmenu/NavMenuLinks.php:1
8345
+ msgctxt "legal-text"
8346
  msgid ""
8347
  "You have successfully revoked the consent. The page will be reloaded now."
8348
  msgstr ""
8392
  msgid "Please provide a `type` attribute in your shortcode. Allowed: %s!"
8393
  msgstr "Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: %s!"
8394
 
8395
+ #~ msgid ""
8396
+ #~ "It seems that since the last update of <strong>Real Cookies Banner</"
8397
+ #~ "strong> some templates have been updated. Please check your following "
8398
+ #~ "services to make sure they are up to date:"
8399
+ #~ msgstr ""
8400
+ #~ "Es scheint, dass seit dem letzten Update von <strong>Real Cookies Banner</"
8401
+ #~ "strong> einige Vorlagen aktualisiert worden sind. Bitte überprüfe deine "
8402
+ #~ "folgenden Services, um sicherzustellen, dass sie auf dem neuesten Stand "
8403
+ #~ "sind:"
8404
+
8405
+ #~ msgid "Edit"
8406
+ #~ msgstr "Bearbeiten"
8407
+
8408
+ #~ msgid "Create new from template"
8409
+ #~ msgstr "Aus Vorlage erstellen"
8410
+
8411
+ #~ msgid ""
8412
+ #~ "The easiest way to apply the changes is to delete the service and all "
8413
+ #~ "connected content blockers in Real Cookie Banner and create it again from "
8414
+ #~ "the service templates."
8415
+ #~ msgstr ""
8416
+ #~ "Am einfachsten kannst du die Änderungen übernehmen, indem du den Service "
8417
+ #~ "und alle damit verbundenen Content Blocker in Real Cookie Banner löschst "
8418
+ #~ "und ihn aus den Service-Vorlagen neu erstellst."
8419
+
8420
+ #~ msgid ""
8421
+ #~ "Define the behavior of the cookie banner and hide the cookie banner both "
8422
+ #~ "in the imprint and privacy policy (required by law)."
8423
+ #~ msgstr ""
8424
+ #~ "Bestimme das Verhalten des Cookie Banners und blende es sowohl im "
8425
+ #~ "Impressum als auch in der Datenschutzerklärung aus (gesetzlich "
8426
+ #~ "vorgeschrieben)."
8427
+
8428
+ #~ msgid ""
8429
+ #~ "Use <code>{{services}}</code> as a placeholder to show all services that "
8430
+ #~ "process data in the USA."
8431
+ #~ msgstr ""
8432
+ #~ "Verwende <code>{{services}}</code> als Platzhalter, um alle Services "
8433
+ #~ "anzuzeigen, die Daten in den USA verarbeiten."
8434
+
8435
  #~ msgid ""
8436
  #~ "An opt-in script is not required, as this service is probably already "
8437
  #~ "integrated via e.g. your theme. In addition to this service, please "
languages/real-cookie-banner-de_CH_informal.mo CHANGED
Binary file
languages/real-cookie-banner-de_CH_informal.po CHANGED
@@ -2,16 +2,16 @@ msgid ""
2
  msgstr ""
3
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
4
  "POT-Creation-Date: n/a\n"
5
- "PO-Revision-Date: 2022-06-13 06:58+0000\n"
6
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
7
- "Language-Team: German <https://translate.devowl.io/projects/wordpress-real-"
8
- "cookie-banner-backend-php/develop/de/>\n"
9
  "Language: de_CH_informal\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
- "X-Generator: Weblate 4.8\n"
15
 
16
  #. Plugin Name of the plugin
17
  msgid "Real Cookie Banner"
@@ -172,22 +172,27 @@ msgstr ""
172
  "heruntergeladen, wodurch weitere rechtliche Probleme vermieden werden."
173
 
174
  #: inc/Assets.php:1
 
175
  msgid "Use on legal basis of"
176
  msgstr "Verwendung auf gesetzlicher Grundlage von"
177
 
178
  #: inc/Assets.php:1
 
179
  msgid "Legitimate interest"
180
  msgstr "Berechtigtes Interesse"
181
 
182
  #: inc/Assets.php:1
 
183
  msgid "Compliance with a legal obligation"
184
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
185
 
186
  #: inc/Assets.php:1
 
187
  msgid "Consent"
188
  msgstr "Einwilligung"
189
 
190
  #: inc/Assets.php:1
 
191
  msgid ""
192
  "We have recognized that you are a crawler/bot. Only natural persons must "
193
  "consent to cookies and processing of personal data. Therefore, the link has "
@@ -198,18 +203,22 @@ msgstr ""
198
  "einwilligen. Daher hat der Link für dich keine Funktion."
199
 
200
  #: inc/Assets.php:1
 
201
  msgid "Technical cookie definition"
202
  msgstr "Technische Cookie-Definition"
203
 
204
  #: inc/Assets.php:1
 
205
  msgid "Uses cookies"
206
  msgstr "Verwendete Cookies"
207
 
208
  #: inc/Assets.php:1
 
209
  msgid "Cookie refresh"
210
  msgstr "Cookie-Auffrischung"
211
 
212
  #: inc/Assets.php:1
 
213
  msgid ""
214
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
215
  msgstr ""
@@ -217,10 +226,12 @@ msgstr ""
217
  "IndexDB, etc.)"
218
 
219
  #: inc/Assets.php:1
 
220
  msgid "Host"
221
  msgstr "Host"
222
 
223
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
 
224
  msgid "Duration"
225
  msgstr "Dauer"
226
 
@@ -249,28 +260,32 @@ msgid "year(s)"
249
  msgstr "Jahr(e)"
250
 
251
  #: inc/Assets.php:1
 
252
  msgid "No expiration"
253
  msgstr "Kein Ablauf"
254
 
255
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
256
- #: inc/view/customize/banner/BodyDesign.php:1
257
- #: inc/view/customize/banner/individual/SaveButton.php:1
258
  msgid "Type"
259
  msgstr "Typ"
260
 
261
  #: inc/Assets.php:1
 
262
  msgid "Purpose"
263
  msgstr "Zweck"
264
 
265
  #: inc/Assets.php:1
 
266
  msgid "History of your privacy settings"
267
  msgstr "Privatsphäre-Einstellungen: Historie"
268
 
269
  #: inc/Assets.php:1
 
270
  msgid "Show consent from"
271
  msgstr "Einwilligungen anzeigen vom"
272
 
273
  #: inc/Assets.php:1
 
274
  msgid "Not yet consented to"
275
  msgstr "Noch nicht eingewilligt"
276
 
@@ -283,20 +298,24 @@ msgid "Close without saving"
283
  msgstr "Schließen ohne Speichern"
284
 
285
  #: inc/Assets.php:1
 
286
  msgid "Provider"
287
  msgstr "Anbieter"
288
 
289
  #: inc/Assets.php:1
 
290
  msgid "Privacy Policy"
291
  msgstr "Datenschutzerklärung"
292
 
293
  #. translators:
294
  #: inc/Assets.php:1
 
295
  msgid "and %d more"
296
  msgstr "und %d mehr"
297
 
298
  #. translators:
299
- #: inc/Assets.php:1 inc/view/customize/banner/Texts.php:1
 
300
  msgid "US data processing"
301
  msgstr "US-Datenverarbeitung"
302
 
@@ -690,46 +709,81 @@ msgstr "Rechtliche Anpassungen von Texten und Design im Cookie Banner"
690
  msgid ""
691
  "In recent months, more clarity has been created about what consent "
692
  "management on websites should look like - and what it shouldn't. In "
693
- "particular, through the <a href=\"https://www.gesetze-im-internet.de/ttdsg/"
694
- "\" target=\"_blank\">TTDSG</a> (Telecommunications Telemedia Data Protection "
695
- "Act; Germany) and <a href=\"https://www.datenschutzkonferenz-online.de/media/"
696
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Guidance of the Conference "
697
- "of Independent Data Protection Authorities for cookie banners</a> "
698
- "(coordinated legal interpretation of all German data protection authorities; "
699
- "in German), there are now clearer rules that further interpret or complement "
700
- "the EU-wide applicable <a href=\"https://eur-lex.europa.eu/legal-content/EN/"
701
- "TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy Directive</a> and "
702
- "<a href=\"https://gdpr-info.eu/\" target=\"_blank\">GDPR</a>. Furthermore, "
703
- "there were important decisions such as the evaluation of <a href=\"https://"
704
- "www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
705
- "n-21-2022-english.pdf\" target=\"_blank\">TCF by ADP (Belgium)</a>, the <a "
706
- "href=\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
707
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics decision by "
708
- "dsb (Austria)</a> and the <a href=\"https://www.cnil.fr/sites/default/files/"
709
- "atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics.pdf\" "
710
- "target=\"_blank\">position on Google Analytics by CNIL</a>."
711
  msgstr ""
712
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
713
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
714
- "aussehen sollte. Insbesondere durch das <a href=\"https://www.gesetze-im-"
715
- "internet.de/ttdsg/\" target=\"_blank\">TTDSG</a> (Telekommunikation-"
716
- "Telemedien-Datenschutz-Gesetz) und die <a href=\"https://www."
717
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
718
- "\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
719
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
720
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
721
- "Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
722
- "legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
723
- "Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
724
- "\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
725
- "Entscheidungen wie die Bewertung von <a href=\"https://www."
726
- "autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
727
- "english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
728
- "\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
729
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
730
- "von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
731
- "files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
732
- "pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
733
 
734
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
735
  msgid ""
@@ -790,15 +844,13 @@ msgstr "Rechtliche Links auf jeder Unterseite platzieren"
790
  #. translators:
791
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
792
  msgid ""
793
- "In accordance with the requirements of the &quot;<a href=\"https://www."
794
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
795
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
796
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
797
  "and revoke consent must be directly accessible on every sub-page of your "
798
  "website."
799
  msgstr ""
800
- "Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
801
- "online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
802
  "\"Orientierungshilfe der Konferenz der unabhängigen "
803
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
804
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
@@ -941,17 +993,21 @@ msgstr "pro-modal/de/mobile-optimization.png"
941
  msgid "Updates in v3.0: You should act to be safe!"
942
  msgstr "Updates in v3.0: Du solltest handeln, um sicher zu sein!"
943
 
 
944
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
945
  msgid ""
946
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
947
  "have implemented, among other things, current legal adjustments. Read more "
948
- "about the changes in our <a href=\"https://devowl.io/2022/real-cookie-"
949
- "banner-3-0/\" target=\"_blank\">blog post</a>."
950
  msgstr ""
951
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
952
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
953
- "Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/real-"
954
- "cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
 
 
 
 
955
 
956
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
957
  msgid ""
@@ -1009,14 +1065,30 @@ msgstr ""
1009
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1010
  "Vorgehen für deinen Einzelfall zu klären."
1011
 
 
 
 
 
1012
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1013
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1014
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1015
 
 
 
 
 
 
 
1016
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1017
  msgid "Statement of the IAB Europe (English)"
1018
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1019
 
 
 
 
 
 
 
1020
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1021
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1022
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
@@ -1395,6 +1467,10 @@ msgstr ""
1395
  "\"_blank\">%3$s</a>. In diesem Fall musst du auch den \"Code bei Opt-in "
1396
  "ausführen\" entfernen."
1397
 
 
 
 
 
1398
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1399
  msgid ""
1400
  "AddThis allows providing links and buttons for sharing content on a variety "
@@ -1448,21 +1524,26 @@ msgstr ""
1448
  "Benutzer eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1449
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1450
 
 
1451
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1452
  msgid ""
1453
- "This template assumes that you use the <a href=\"https://wordpress.org/"
1454
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress plugin</a>. The "
1455
- "template is not suitable to add Facebook Like, Twitter Tweet or Pinterest "
1456
- "Pin button in AddToAny. If you want to use any of these buttons, please use "
1457
- "it without AddToAny and additionally create the cookies and content blockers "
1458
- "for the respective service."
1459
  msgstr ""
1460
- "Diese Vorlage setzt voraus, dass du das <a href=\"https://wordpress.org/"
1461
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress Plugin</a> "
1462
- "verwendest. Die Vorlage ist nicht geeignet, um Facebook Like, Twitter Tweet "
1463
- "oder Pinterest Pin Button in AddToAny einzufügen. Wenn du einen dieser "
1464
- "Buttons verwenden möchtest, verwende ihn bitte ohne AddToAny und erstelle "
1465
- "zusätzlich die Cookies und Content Blocker für den jeweiligen Dienst."
 
 
 
 
1466
 
1467
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1468
  msgid ""
@@ -1483,18 +1564,22 @@ msgstr ""
1483
  "merken, wie oft welche Werbeplatzierung bereits angezeigt wurde und wie oft "
1484
  "die jeweilige Werbung angeklickt wurde."
1485
 
 
1486
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1487
  msgid ""
1488
- "Ad Insert plays out ads even without consent. You should <a href=\"https://"
1489
- "adinserter.pro/faq/gdpr-compliance-cookies-consent\" target=\"_blank"
1490
- "\">obtain consent for the ads via the TCF v2.0 or newer standard</a>. Only "
1491
- "some features of the plugin require you to obtain consent for Ad Inserter."
1492
  msgstr ""
1493
- "Ad Insert spielt Werbung auch ohne Einwilligung aus. Du solltest <a href="
1494
- "\"https://adinserter.pro/faq/gdpr-compliance-cookies-consent\" target="
1495
- "\"_blank\">die Einwilligung für die Anzeigen über den TCF v2.0 oder neueren "
1496
- "Standard einholen</a>. Nur für einige Features des Plugins musst du die "
1497
- "Einwilligung für Ad Inserter einholen."
 
 
 
1498
 
1499
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1500
  msgid ""
@@ -1512,17 +1597,20 @@ msgstr ""
1512
  "deaktiviert hast, da dieser Teil des Adblockers Daten an Google und Media."
1513
  "net überträgt, bevor du deine Einwilligung dazu hast."
1514
 
 
1515
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1516
  msgid ""
1517
- "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"https://"
1518
- "adinserter.pro/documentation/ad-impression-and-click-limiting\" target="
1519
- "\"_blank\">impression and click limits</a> feature of Ad Inserter Pro. The "
1520
- "duration of the cookie depends on the settings of the feature."
1521
  msgstr ""
1522
- "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn du das <a href=\"https://"
1523
- "adinserter.pro/documentation/ad-impression-and-click-limiting\" target="
1524
- "\"_blank\">Impressions- und Klick-Limit</a> Feature von Ad Inserter Pro "
1525
- "nutzt. Die Dauer des Cookies hängt von den Einstellungen des Features ab."
 
 
 
1526
 
1527
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1528
  msgid ""
@@ -1750,13 +1838,18 @@ msgstr ""
1750
  msgid "Awin Publisher ID"
1751
  msgstr "Awin-Publisher-ID"
1752
 
 
1753
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1754
  msgid ""
1755
- "You find your publisher ID in the <a href=\"https://ui.awin.com/user\" "
1756
- "target=\"_blank\">account overview</a> directly blow your account name."
1757
  msgstr ""
1758
- "Du findest deine Publisher ID in der <a href=\"https://ui.awin.com/user\" "
1759
- "target=\"_blank\">Account Übersicht</a> direkt unter deinem Benutzernamen."
 
 
 
 
1760
 
1761
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1762
  msgid ""
@@ -1812,6 +1905,10 @@ msgstr ""
1812
  "Auf <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> Du unter Tools > "
1813
  "Conversion tracking > UET tag findest Du Deinen UET-Tag in der Tag-Tabelle."
1814
 
 
 
 
 
1815
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1816
  msgid ""
1817
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
@@ -2264,15 +2361,18 @@ msgstr "https://www.etracker.com/datenschutzerklaerung/"
2264
  msgid "etracker Account Key"
2265
  msgstr "etracker Account Key"
2266
 
 
2267
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2268
  msgid ""
2269
- "You can find your etracker account key under <a href=\"https://newapp."
2270
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2271
- "info > Settings> Account</a> of your etracker account."
2272
  msgstr ""
2273
- "Du findest deinen etracker Account Key unter <a href=\"https://newapp."
2274
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2275
- "Info > Einstellungen > Account</a> deines etracker Accounts."
 
 
 
2276
 
2277
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2278
  msgid ""
@@ -2289,20 +2389,26 @@ msgstr ""
2289
  "Tracking widersprechen, indem er diesen Service in deinem Cookie Banner "
2290
  "deaktiviert."
2291
 
 
2292
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2293
  msgid ""
2294
  "We also recommend that you deactivate the non-aggregated reporting via the "
2295
- "<a href=\"https://newapp.etracker.com/\" target=\"_blank\">dashboard</a> "
2296
- "under <i>menu (top left) > Account-ID > Settings > Privacy > Consent-free "
2297
- "tracking cookies in accordance with CNIL guidelines</i> to ensure that there "
2298
- "is definitely no personal reference for the collected data."
2299
- msgstr ""
2300
- "Wir empfehlen dir zusätzlich über das <a href=\"https://newapp.etracker.com/"
2301
- "#/report/accountSettings/accountKey\" target=\"_blank\">Dashboard</a> unter "
2302
- "<i>Menü (obene links) > Account-ID > Einstellungen > Datenschutz > "
2303
- "Einwilligungs-freie Tracking Cookies gemäß Anforderungen der CNIL</i> die "
2304
- "nicht aggregierten Reportings zu deaktivieren, um sicherzustellen, dass "
2305
- "definitiv kein Personenbezug bei den erhobenen Daten besteht."
 
 
 
 
 
2306
 
2307
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2308
  msgid "etracker: enhanced tracking"
@@ -2350,22 +2456,22 @@ msgstr ""
2350
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2351
  "anreichert."
2352
 
 
2353
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2354
  msgid ""
2355
  "In order for the consent to be taken into account, you must activate the "
2356
- "toggle \"Opt-In active\" via the <a href=\"https://newapp.etracker.com/\" "
2357
- "target=\"_blank\">dashboard</a> under <i>menu (top left) > Account-ID > "
2358
- "Settings > Privacy > Tracking Opt-In and agreement</i>, but then switch to "
2359
- "\"own Opt-In\" so that etracker does not display its own consent dialog, but "
2360
- "instead uses the consent collected by Real Cookie Banner."
2361
- msgstr ""
2362
- "Damit die Einwilligung berücksichtigt wird, musst du via <a href=\"https://"
2363
- "newapp.etracker.com/\" target=\"_blank\">Dashboard</a> unter <i>Menü (oben "
2364
- "links) > Account-ID > Einstellungen > Datenschutz > Tracking Opt-In und "
2365
- "Zustimmung</i> den Toggle \"Opt-In aktiv\" aktivieren und anschließend auf "
2366
- "\"eigenes Opt-In\" umstellen. Damit wird etracker keinen eigenen "
2367
- "Einwilligungsdialog anzeigen, sondern die Einwilligung, erhoben von Real "
2368
- "Cookie Banner, verwenden."
2369
 
2370
  #. translators:
2371
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
@@ -2673,20 +2779,20 @@ msgstr ""
2673
  "können mit den Daten der auf facebook.com registrierten Benutzer verknüpft "
2674
  "werden."
2675
 
 
2676
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2677
  msgid ""
2678
- "You can use Facebook's <a href=\"https://developers.facebook.com/docs/"
2679
- "plugins/embedded-posts/\" target=\"_blank\">embedded post generator</a> to "
2680
- "generate a HTML code to embed post with the Facebook JavaScript SDK. Loading "
2681
- "the JavaScript SDK is part of the opt-in code. All you need to do is place "
2682
- "the HTML div and blockqoute elements where you want the embedded post to be "
2683
- "visible on your site. If you use Facebook post as Iframe embeeds, please "
2684
- "create in addition a content blocker for Facebook Posts to block loading of "
2685
- "the content before you have the consent of the user."
2686
- msgstr ""
2687
- "Du kannst den <a href=\"https://developers.facebook.com/docs/plugins/"
2688
- "embedded-posts/?locale=de_DE\" target=\"_blank\">Post-Generator von Facebook "
2689
- "</a> verwenden, um einen HTML-Code zum Einbetten von Posts mit dem Facebook "
2690
  "JavaScript SDK zu generieren. Das Laden des JavaScript-SDK ist Teil des Opt-"
2691
  "in Codes. Alles was du tun musst, ist das HTML-Div und blockqoute-Element "
2692
  "dort zu platzieren, wo der eingebettete Beitrag auf deiner Seite sichtbar "
@@ -2694,6 +2800,10 @@ msgstr ""
2694
  "bitte zusätzlich einen Inhaltsblocker für Facebook, um das Laden ihres "
2695
  "Inhalts zu blockieren, bevor du die Einwilligung des Nutzers hast."
2696
 
 
 
 
 
2697
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2698
  msgid ""
2699
  "Facebook Share button allows users to share a link directly on Facebook. The "
@@ -2894,17 +3004,21 @@ msgstr "Google Ads Conversation Tracking-ID"
2894
  msgid "Please fill in a valid tracking ID!"
2895
  msgstr "Bitte gib eine gültige Tracking ID an!"
2896
 
 
2897
  #: inc/overrides/pro/presets/GoogleAds.php:1
2898
  msgid ""
2899
- "You can find your Adwords ID in <a href=\"https://ads.google.com/aw/overview"
2900
- "\" target=\"_blank\">Google Ads</a> at Tools > Measurement > Conversions > "
2901
- "Click on the name of the conversation action > Tag setup > Install the tag "
2902
- "yourself > Adwords ID in the code (e.g. AW-123456789)."
2903
  msgstr ""
2904
- "Deine Adwords ID findest du in <a href=\"https://ads.google.com/aw/overview"
2905
- "\" target=\"_blank\">Google Ads</a> unter Tools > Messung > Conversions > "
2906
- "Conversion-Aktion > Tag-Einrichtung > Tag selbst einfügen > Adwords ID in "
2907
- "dem Code (z.B. AW-123456789)."
 
 
 
2908
 
2909
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2910
  msgid ""
@@ -2931,18 +3045,22 @@ msgstr ""
2931
  msgid "Google Adsense Publisher ID"
2932
  msgstr "Google Adsense Publisher-ID"
2933
 
 
2934
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2935
  msgid ""
2936
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
2937
  "(if activated in your Adsense account) can be displayed. You can find it in "
2938
- "the <a href=\"https://www.google.com/adsense\" target=\"_blank\">Google "
2939
- "Adsense Dashboard</a> under <i>Account > Settings > Account information</i>."
2940
  msgstr ""
2941
- "Du musst deine Google Adsense Publisher ID eingeben, damit z.B. Auto Ads "
2942
- "(falls in deinem Adsense Konto aktiviert) angezeigt werden können. Du "
2943
- "findest sie im <a href=\"https://www.google.com/adsense\" target=\"_blank"
2944
- "\">Google Adsense Dashboard</a> unter <i>Account > Einstellungen > "
2945
- "Kontoinformationen</i>."
 
 
 
2946
 
2947
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2948
  msgid ""
@@ -2988,18 +3106,23 @@ msgstr ""
2988
  msgid "Google Analytics Measurement ID"
2989
  msgstr "Google Analytics Measurement-ID"
2990
 
 
2991
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
2992
  msgid ""
2993
  "You can find your Measurement ID (also called property ID) in the <a href="
2994
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
2995
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
2996
- "property > Setup Assistant > Tag installation > Select your website."
2997
  msgstr ""
2998
- "Du findest deine Measurement ID (auch Property ID genannt) im <a href="
2999
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3000
- "Dashboard</a> unter Admin (Zahnradsymbol) > Wähle deinen Account aus > Wähle "
3001
- "deine Property aus > Setup Assistant > Tag Installation > Wähle deine "
3002
- "Website aus."
 
 
 
 
3003
 
3004
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3005
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
@@ -3049,17 +3172,16 @@ msgstr ""
3049
  msgid "Google Analytics Tracking ID"
3050
  msgstr "Google Analytics Tracking-ID"
3051
 
 
3052
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3053
  msgid ""
3054
- "You can find your Tracking ID (also called Property ID) in the <a href="
3055
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3056
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
3057
- "property > Tracking Info > Tracking Code."
3058
  msgstr ""
3059
- "Du findest deine Tracking ID (auch Property ID genannt) im <a href=\"https://"
3060
- "analytics.google.com/analytics/web/\" target=\"_blank\">Analytics Dashboard</"
3061
- "a> unter Admin (Zahnradsymbol) > Wähle deinen Account > Wähle deine Property "
3062
- "> Tracking Info > Tracking Code."
3063
 
3064
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3065
  msgid ""
@@ -3303,21 +3425,27 @@ msgstr ""
3303
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
3304
  "Statistiken über sein Verhalten zu sammeln."
3305
 
 
3306
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3307
  msgid ""
3308
- "You have to create a so-called Beacon on <a href=\"https://secure.helpscout."
3309
- "net\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3310
- "Beacon. After creating in the Beacon Customizer, the URL looks like "
3311
- "<code>https://secure.helpscout.net/settings/beacons/c676047b-"
3312
- "c2e8-45b1-8319-344f4e7e2431/customize</code>. This means that the HelpScout "
3313
- "Beacon ID is <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code>."
3314
- msgstr ""
3315
- "Du musst einen sogenannten Beacon auf <a href=\"https://secure.helpscout.net"
3316
- "\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3317
- "Beacon erstellen. Nach dem Erstellen im Beacon Customizer sieht die URL "
3318
- "ähnlich aus wie <code>https://secure.helpscout.net/settings/beacons/c676047b-"
3319
- "c2e8-45b1-8319-344f4e7e2431/customize</code>. Das bedeutet, dass die "
3320
- "HelpScout Beacon-ID <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code> lautet."
 
 
 
 
 
3321
 
3322
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3323
  msgid "HelpScout Beacon ID"
@@ -3342,6 +3470,14 @@ msgstr ""
3342
  msgid "Hotjar ID"
3343
  msgstr "Hotjar-ID"
3344
 
 
 
 
 
 
 
 
 
3345
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3346
  msgid ""
3347
  "Imgur allows embedding content posted on imgur.com directly into websites."
@@ -3411,6 +3547,10 @@ msgstr ""
3411
  msgid "Intercom application ID"
3412
  msgstr "Intercom Application ID"
3413
 
 
 
 
 
3414
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3415
  msgid ""
3416
  "Issuu allows embedding content posted on issuu.com directly into websites. "
@@ -3544,16 +3684,20 @@ msgstr ""
3544
  msgid "https://linkedin.com/legal/privacy-policy"
3545
  msgstr "https://de.linkedin.com/legal/privacy-policy"
3546
 
 
3547
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3548
  msgid ""
3549
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3550
- "\"https://www.linkedin.com/help/lms/answer/a415871\" target=\"_blank\">where "
3551
- "to find the LinkedIn Partner ID</a> in your LinkedIn Ads account."
3552
  msgstr ""
3553
  "Du findest in der Wissensdatenbank von LinkedIn einen Artikel, der dir "
3554
- "erklärt, <a href=\"https://www.linkedin.com/help/lms/answer/a415871\" target="
3555
- "\"_blank\">wo du die LinkedIn Partner ID findest</a> in deinem LinkedIn Ads "
3556
- "Konto."
 
 
 
3557
 
3558
  #: inc/overrides/pro/presets/LoomPreset.php:1
3559
  msgid ""
@@ -3679,19 +3823,22 @@ msgstr ""
3679
  "Anmeldung verwendest, das versteckt werden kann (z.B. Popup). Nur in diesem "
3680
  "Fall wird ein Cookie gesetzt."
3681
 
 
3682
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3683
  msgid ""
3684
  "Personal data will never be transferred directly from the browser of your "
3685
  "visitors to MailPoet, but only, for example, when you sign up for the "
3686
  "newsletter via your WordPress installation. You should always follow the <a "
3687
- "href=\"https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr\" target="
3688
- "\"_blank\">MailPoet Guide to Conform to GDPR</a>."
3689
  msgstr ""
3690
  "Personenbezogene Daten werden niemals direkt vom Browser deiner Besucher an "
3691
  "MailPoet übertragen, sondern nur z.B. bei der Anmeldung zum Newsletter über "
3692
- "deine WordPress-Installation. Du solltest immer den <a href=\"https://kb."
3693
- "mailpoet.com/article/246-guide-to-conform-to-gdpr\" target=\"_blank"
3694
- "\">MailPoet Guide to Conform to GDPR</a>. beachten."
 
 
 
3695
 
3696
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3697
  msgid ""
@@ -3767,17 +3914,21 @@ msgstr "Metricool-Hash"
3767
  msgid "Please provide a valid hash!"
3768
  msgstr "Bitte gib einen gültigen Hash an!"
3769
 
 
3770
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3771
  msgid ""
3772
- "You find your Metricool hash in the <a href=\"https://app.metricool.com/"
3773
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, if "
3774
- "you use \"Connect web\" and choose the integration as JavaScript tag, within "
3775
- "the generated JavaScript."
3776
  msgstr ""
3777
- "Du findest deinen Metricool Hash in den <a href=\"https://app.metricool.com/"
3778
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, wenn "
3779
- "du \"Connect web\" nutzt und die Integration als JavaScript-Tag auswählst, "
3780
- "innerhalb des generierten JavaScript."
 
 
 
 
3781
 
3782
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3783
  msgid ""
@@ -3808,6 +3959,10 @@ msgstr ""
3808
  "projects/view/12cggd77jl/</code> lautet, ist deine Projekt-ID "
3809
  "<code>12cggd77jl</code>."
3810
 
 
 
 
 
3811
  #. translators:
3812
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3813
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
@@ -3843,19 +3998,27 @@ msgstr ""
3843
  msgid "Mouseflow Website ID"
3844
  msgstr "Mouseflow Website-ID"
3845
 
 
3846
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
3847
  msgid ""
3848
  "You can find your Mouseflow website ID by hovering over the appropriate "
3849
- "website at <a href=\"http://eu.mouseflow.com/websites\" target=\"_blank\">eu."
3850
- "mouseflow.com/websites</a>. You will then see a gear icon that you can click "
3851
- "on. In the settings that appear, you should find a <code>Website ID</code> "
3852
- "field."
3853
  msgstr ""
3854
- "Du findest deine Mouseflow Website ID, indem du auf <a href=\"https://eu."
3855
- "mouseflow.com/websites\" target=\"_blank\">eu.mouseflow.com/websites</a> mit "
3856
- "dem Mauszeiger über die entsprechende Website fährst. Du siehst dann ein "
3857
- "Zahnradsymbol, auf das du klicken kannst. In den Einstellungen, die dann "
3858
- "erscheinen, solltest du ein Feld <code>Website ID</code> finden."
 
 
 
 
 
 
 
 
3859
 
3860
  #. translators:
3861
  #: inc/overrides/pro/presets/MtmPreset.php:1
@@ -4087,16 +4250,20 @@ msgstr ""
4087
  msgid "Pinterest Tag ID"
4088
  msgstr "Pinterest Tag-ID"
4089
 
 
4090
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4091
  msgid ""
4092
- "You can view your Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4093
- "\"_blank\">Pinterest Ads</a> under Ads > Conversions > Add code to website > "
4094
- "Add code. It is displayed in the top right corner of the modal."
4095
  msgstr ""
4096
- "Du kannst deine Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4097
- "\"_blank\">Pinterest Ads</a> unter Anzeigen > Conversions > Code zur Website "
4098
- "hinzufügen > Code hinzufügen einsehen. Er wird in der oberen rechten Ecke "
4099
- "des Modals angezeigt."
 
 
 
4100
 
4101
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4102
  msgid ""
@@ -4268,19 +4435,22 @@ msgstr ""
4268
  "speichern die Sprache des Nutzers und können den Nutzer auf die Version der "
4269
  "Webseite umleiten, welche der Sprache des Browsers des Nutzers entspricht."
4270
 
 
4271
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4272
  msgid ""
4273
  "Please make sure you have not renamed the Polylang cookie name or change it "
4274
  "in the same way in the technical definitions above. Learn more about how to "
4275
- "change the Polylang cookie name <a href=\"https://polylang.pro/doc/is-"
4276
- "polylang-compatible-with-the-eu-cookie-law/\" target=\"_blank\">in their "
4277
  "documentation</a>."
4278
  msgstr ""
4279
  "Bitte vergewissere dich, dass du den Namen des Polylang Cookies nicht "
4280
  "umbenannt oder in den technischen Definitionen oben auf die gleiche Weise "
4281
  "geändert hast. Mehr darüber, wie man den Polylang Cookie-Namen ändert, "
4282
- "findest du <a href=\"https://polylang.pro/doc/is-polylang-compatible-with-"
4283
- "the-eu-cookie-law/\" target=\"_blank\">in der Dokumentation</a>."
 
 
 
4284
 
4285
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4286
  msgid ""
@@ -4586,21 +4756,29 @@ msgstr ""
4586
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4587
  "Statistiken über sein Verhalten zu sammeln."
4588
 
 
4589
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4590
  msgid ""
4591
- "You can create your own custom chat widget at <a href=\"https://dashboard."
4592
- "tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > Settings > Chat Widget. "
4593
- "The chat widget in the opt-in code is just the default example."
4594
  msgstr ""
4595
- "Du kannst dein eigenes benutzerdefiniertes Chat-Widget unter <a href="
4596
- "\"https://dashboard.tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > "
4597
- "Einstellungen > Chat Widget erstellen. Das Chat-Widget im Opt-in Code ist "
4598
- "nur das Standardbeispiel."
 
 
 
4599
 
4600
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4601
  msgid "tawk.to ID"
4602
  msgstr "tawk.to ID"
4603
 
 
 
 
 
4604
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4605
  msgid ""
4606
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
@@ -4640,22 +4818,31 @@ msgstr ""
4640
  "Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4641
  "Statistiken über sein Verhalten zu sammeln."
4642
 
 
4643
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4644
  msgid ""
4645
- "You get your Tidio JS ID on <a href=\"https://tidio.com\" target=\"_blank"
4646
- "\">tidio.com</a> under Settings > Live Chat > Integration > JavaScript in "
4647
- "the given JavaScript snipped. You can adjust the appearance of the chat at "
4648
- "tidio.com under Settings > Live Chat > Appearance."
4649
  msgstr ""
4650
- "Du bekommst deine Tidio JS ID auf <a href=\"https://tidio.com\" target="
4651
- "\"_blank\">tidio.com</a> unter Einstellungen > Live Chat > Integration > "
4652
- "JavaScript in dem angegebene JavaScript-Code. Du kannst das Aussehen des "
4653
- "Chats auf tidio.com unter Einstellungen > Live Chat > Aussehen anpassen."
 
 
 
 
4654
 
4655
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4656
  msgid "Tidio JS ID"
4657
  msgstr "Tidio JS-ID"
4658
 
 
 
 
 
4659
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4660
  msgid ""
4661
  "TikTok Pixel helps to determine whether you are the target audience for "
@@ -4687,33 +4874,37 @@ msgstr "https://www.tiktok.com/legal/privacy-policy?lang=de-DE"
4687
  msgid "TikTok Pixel ID"
4688
  msgstr "TikTok Pixel-ID"
4689
 
 
4690
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4691
  msgid ""
4692
- "In the <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target="
4693
- "\"_blank\">Event Manager of the TikTok Ad Manager</a> you can create a "
4694
- "website pixel. Select \"Manually install pixel code\" for the type of "
4695
- "integration. Whether you want to use the \"Standard Mode\" or \"Developer "
4696
- "Mode\" depends on your purpose."
4697
  msgstr ""
4698
- "Im <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target=\"_blank"
4699
- "\">Event Manager des TikTok Ad Managers</a> kannst du ein Website-Pixel "
4700
- "erstellen. Wähle für die Art der Integration \"Manually install pixel code"
4701
- "\". Ob du den \"Standard Mode\" oder den \"Developer Mode\" verwenden "
4702
- "möchtest, hängt von deinem Vorhaben ab."
 
 
 
4703
 
 
4704
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4705
  msgid ""
4706
- "After creating the TikTok Pixel you return to the <a href=\"https://ads."
4707
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager of the "
4708
- "TikTok Ad Manager</a> and select \"Manage\" in the section \"Website Pixel"
4709
- "\". You will then see an overview of all the TikTok pixels you have created. "
4710
- "Each TikTok pixel has its ID directly under its name."
4711
  msgstr ""
4712
- "Nach der Erstellung des TikTok Pixel kehrst du zum <a href=\"https://ads."
4713
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager des TikTok "
4714
- "Ad Managers</a> zurück und wählst im Abschnitt \"Website Pixel\" den Punkt "
4715
- "\"Manage\". Du siehst dann eine Übersicht über alle TikTok Pixel, die du "
4716
- "erstellt hast. Jedes TikTok-Pixel hat seine ID direkt unter seinem Namen."
4717
 
4718
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4719
  msgid ""
@@ -4830,24 +5021,33 @@ msgstr ""
4830
  msgid "https://www.userlike.com/en/terms#privacy-policy"
4831
  msgstr "https://www.userlike.com/de/terms#privacy-policy"
4832
 
 
4833
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4834
  msgid ""
4835
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
4836
- "You can find it at <a href=\"https://userlike.com/en/dashboard/um/config/"
4837
- "um_widget/overview\" target=\"_blank\">userlike.com/en/dashboard/um/config/"
4838
- "um_widget/overview</a> > Name of the widget > Install > JavaScript Widget "
4839
- "code."
4840
  msgstr ""
4841
  "Bitte füge als Opt-in Code den JavaScript Code deines Userlike Widgets ein. "
4842
- "Du findest ihn unter <a href=\"https://userlike.com/de/dashboard/um/config/"
4843
- "um_widget/overview\" target=\"_blank\">userlike.com/de/dashboard/um/config/"
4844
- "um_widget/overview</a> > Name des Widgets > Installieren > JavaScript Widget "
4845
- "code."
 
 
4846
 
4847
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4848
  msgid "Example opt-in code"
4849
  msgstr "Beispiel Opt-in Code"
4850
 
 
 
 
 
 
 
 
 
4851
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4852
  msgid ""
4853
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
@@ -4914,6 +5114,16 @@ msgstr ""
4914
  "\"essenzielles Cookie\" und keinen Content Blocker wirst du die volle dir "
4915
  "zustehende Ausschüttungen der VG WORT erhalten können."
4916
 
 
 
 
 
 
 
 
 
 
 
4917
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4918
  msgid ""
4919
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
@@ -5164,6 +5374,10 @@ msgstr ""
5164
  "Du findest Deine Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5165
  "\">Yandex Metrica Tags Liste</a>."
5166
 
 
 
 
 
5167
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5168
  msgid ""
5169
  "Zendesk Chat is a customer service tool that provides live chat for "
@@ -5192,6 +5406,10 @@ msgstr ""
5192
  "Du findest den Zendesk Widget Key im Zendesk Backend unter Einstellungen > "
5193
  "Widget > Web Widget einbetten als Teil des JavaScript Codes."
5194
 
 
 
 
 
5195
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5196
  msgid ""
5197
  "Zoho Bookings is a planning software the allows you to book book "
@@ -5445,6 +5663,7 @@ msgstr ""
5445
  "du in den individuellen Privatsphäre-Einstellungen."
5446
 
5447
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5448
  msgid ""
5449
  "In addition, you consent to the transfer of data to partners under the TCF "
5450
  "standard for the following purposes:"
@@ -5453,10 +5672,12 @@ msgstr ""
5453
  "des TCF-Standards für die folgenden Zwecke zu:"
5454
 
5455
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5456
  msgid "Vendor list"
5457
  msgstr "Liste der Anbieter"
5458
 
5459
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5460
  msgid "Vendors"
5461
  msgstr "Anbieter"
5462
 
@@ -5470,18 +5691,22 @@ msgid "Hide"
5470
  msgstr "Verstecken"
5471
 
5472
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5473
  msgid "Data processing on the legal basis of:"
5474
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5475
 
5476
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5477
  msgid "No vendor requests purposes under this legal basis."
5478
  msgstr "Kein Anbieter beantragt Zwecke auf dieser Rechtsgrundlage."
5479
 
5480
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5481
  msgid "Non-standardized data processing"
5482
  msgstr "Nicht standardisierte Datenverarbeitung"
5483
 
5484
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5485
  msgid ""
5486
  "Some services set cookies and/or process personal data without complying "
5487
  "with consent communication standards. These services are divided into "
@@ -5499,10 +5724,12 @@ msgstr ""
5499
  "nach einer Einwilligung genutzt werden."
5500
 
5501
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5502
  msgid "Data processing standardized according to TCF"
5503
  msgstr "Datenverarbeitung standardisiert nach TCF"
5504
 
5505
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5506
  msgid ""
5507
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5508
  "consistent consent for processing of personal data and cookie setting. This "
@@ -5518,10 +5745,12 @@ msgstr ""
5518
  "gesetzt, verarbeitet und gespeichert werden."
5519
 
5520
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5521
  msgid "Purposes"
5522
  msgstr "Zwecke"
5523
 
5524
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5525
  msgid ""
5526
  "Purposes describe for which purpose which providers may set cookies and "
5527
  "process personal data. Purposes are pre-selected if there is a legitimate "
@@ -5535,10 +5764,12 @@ msgstr ""
5535
  "Einwilligung verarbeitet."
5536
 
5537
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5538
  msgid "Special purposes"
5539
  msgstr "Besondere Zwecke"
5540
 
5541
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5542
  msgid ""
5543
  "Special purposes for setting cookies and processing personal data by our "
5544
  "vendors describe purposes for which we have a legitimate interest that "
@@ -5550,10 +5781,12 @@ msgstr ""
5550
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5551
 
5552
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5553
  msgid "Features"
5554
  msgstr "Funktionen"
5555
 
5556
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5557
  msgid ""
5558
  "Features for processing personal data describe how data is used to fulfill "
5559
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
@@ -5567,10 +5800,12 @@ msgstr ""
5567
  "Jeder Zweck kann dazu führen, dass Funktionen verwendet werden."
5568
 
5569
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5570
  msgid "Special features"
5571
  msgstr "Besondere Funktionen"
5572
 
5573
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5574
  msgid ""
5575
  "Special features for processing personal data describe how data is used to "
5576
  "fulfill one or more purposes in a profound way. Personal data will only be "
@@ -5884,17 +6119,21 @@ msgstr ""
5884
  "(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
5885
  "feststellen."
5886
 
 
5887
  #: inc/presets/free/GoogleFontsPreset.php:1
5888
  msgid ""
5889
- "We therefore recommend <a href=\"https://devowl.io/2022/google-fonts-"
5890
- "wordpress-gdpr/\" target=\"_blank\">replacing Google Fonts with locally "
5891
- "hosted fonts</a> when possible, rather than asking for consent. We explained "
5892
- "how this works in our blog!"
5893
  msgstr ""
5894
- "Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
5895
- "wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
5896
- "gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
5897
- "fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
 
 
 
 
5898
 
5899
  #: inc/presets/free/GravatarPreset.php:1
5900
  msgid ""
@@ -6064,18 +6303,21 @@ msgstr ""
6064
  "Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für diesen Dienst "
6065
  "muss ein Service angelegt werden."
6066
 
 
6067
  #: inc/presets/free/WordPressCommentsPreset.php:1
6068
  msgid ""
6069
  "Do you want to use the comment feature on your website at all? If not, we "
6070
- "explain in our blog <a href=\"https://devowl.io/2022/deactivate-wordpress-"
6071
- "comments/\" target=\"_blank\"> how to disable comments in WordPress</a>. "
6072
- "Then you can also avoid this consent!"
6073
  msgstr ""
6074
  "Willst du die Kommentarfunktion auf deiner Website überhaupt nutzen? Wenn "
6075
- "nicht, erklären wir in unserem Blog, <a href=\"https://devowl.io/de/2022/"
6076
- "wordpress-kommentare-deaktivieren/\" target=\"_blank\">wie du Kommentare in "
6077
- "WordPress deaktivieren kannst</a>. Dann kannst du dir die Einwilligung auch "
6078
- "sparen!"
 
 
 
6079
 
6080
  #: inc/presets/free/WordPressEmojisPreset.php:1
6081
  msgid ""
@@ -6105,18 +6347,22 @@ msgstr ""
6105
  "können Emojis problemlos ohne das WordPressa-Emoji-Script anzeigen (für das "
6106
  "du diese Einwilligung einholen musst)."
6107
 
 
6108
  #: inc/presets/free/WordPressEmojisPreset.php:1
6109
  msgid ""
6110
  "Unless you need to support particularly old browsers and operating systems, "
6111
- "we recommend that you <a href=\"https://devowl.io/2022/disable-emojis-"
6112
- "wordpress/\" target=\"_blank\">disable the WordPress emoji script</a> rather "
6113
- "than asking for consent. How to do that, we have explained in our blog!"
6114
  msgstr ""
6115
  "Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
6116
- "musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/wordpress-"
6117
- "emojis-deaktivieren/\" target=\"_blank\">WordPress-Emoji-Script zu "
6118
- "deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
6119
- "machst, haben wir in unserem Blog erklärt!"
 
 
 
6120
 
6121
  #: inc/presets/free/WordPressPluginEmbed.php:1
6122
  msgid ""
@@ -6378,35 +6624,22 @@ msgstr "Ezoic (Statistik)"
6378
 
6379
  #: inc/presets/UpdateNotice.php:1
6380
  msgid ""
6381
- "It seems that since the last update of <strong>Real Cookies Banner</strong> "
6382
- "some templates have been updated. Please check your following services to "
6383
- "make sure they are up to date:"
6384
  msgstr ""
6385
- "Es scheint, dass seit dem letzten Update von <strong>Real Cookies Banner</"
6386
- "strong> einige Vorlagen aktualisiert worden sind. Bitte überprüfe deine "
6387
- "folgenden Services, um sicherzustellen, dass sie auf dem neuesten Stand sind:"
 
6388
 
6389
  #: inc/presets/UpdateNotice.php:1
6390
  msgid "Service (Cookie)"
6391
  msgstr "Service (Cookie)"
6392
 
6393
  #: inc/presets/UpdateNotice.php:1
6394
- msgid "Edit"
6395
- msgstr "Bearbeiten"
6396
-
6397
- #: inc/presets/UpdateNotice.php:1
6398
- msgid "Create new from template"
6399
- msgstr "Aus Vorlage erstellen"
6400
-
6401
- #: inc/presets/UpdateNotice.php:1
6402
- msgid ""
6403
- "The easiest way to apply the changes is to delete the service and all "
6404
- "connected content blockers in Real Cookie Banner and create it again from "
6405
- "the service templates."
6406
- msgstr ""
6407
- "Am einfachsten kannst du die Änderungen übernehmen, indem du den Service und "
6408
- "alle damit verbundenen Content Blocker in Real Cookie Banner löschst und ihn "
6409
- "aus den Service-Vorlagen neu erstellst."
6410
 
6411
  #: inc/presets/UpdateNotice.php:1
6412
  msgid "Dismiss this notice"
@@ -6467,6 +6700,7 @@ msgid "Service group"
6467
  msgstr "Service-Gruppe"
6468
 
6469
  #: inc/settings/CookieGroup.php:1
 
6470
  msgid ""
6471
  "Essential services are required for the basic functionality of the website. "
6472
  "They only contain technically necessary services. These services cannot be "
@@ -6477,9 +6711,10 @@ msgstr ""
6477
  "Services kann nicht widersprochen werden."
6478
 
6479
  #: inc/settings/CookieGroup.php:1
 
6480
  msgid ""
6481
  "Functional services are necessary to provide features beyond the essential "
6482
- "functionality such as prettier fonts, video playback or interactive Web 2.0 "
6483
  "features. Content from e.g. video platforms and social media platforms are "
6484
  "blocked by default, and can be consented to. If the service is agreed to, "
6485
  "this content is loaded automatically without further manual consent."
@@ -6492,6 +6727,7 @@ msgstr ""
6492
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6493
 
6494
  #: inc/settings/CookieGroup.php:1
 
6495
  msgid ""
6496
  "Statistics services are needed to collect pseudonymous data about the "
6497
  "visitors of the website. The data enables us to understand visitors better "
@@ -6502,6 +6738,7 @@ msgstr ""
6502
  "besser zu verstehen und die Website zu optimieren."
6503
 
6504
  #: inc/settings/CookieGroup.php:1
 
6505
  msgid ""
6506
  "Marketing services are used by us and third parties to track the behaviour "
6507
  "of individual visitors (across multiple pages), analyse the data collected "
@@ -6509,8 +6746,8 @@ msgid ""
6509
  "us to track visitors across multiple websites."
6510
  msgstr ""
6511
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6512
- "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und z."
6513
- "B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6514
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6515
 
6516
  #: inc/settings/Revision.php:1
@@ -6655,11 +6892,11 @@ msgstr "Einstellungen des Cookie Banners anpassen"
6655
 
6656
  #: inc/view/checklist/SaveSettings.php:1
6657
  msgid ""
6658
- "Define the behavior of the cookie banner and hide the cookie banner both in "
6659
- "the imprint and privacy policy (required by law)."
6660
  msgstr ""
6661
- "Bestimme das Verhalten des Cookie Banners und blende es sowohl im Impressum "
6662
- "als auch in der Datenschutzerklärung aus (gesetzlich vorgeschrieben)."
6663
 
6664
  #: inc/view/checklist/SaveSettings.php:1
6665
  msgid "Manage settings"
@@ -6672,10 +6909,11 @@ msgstr "Scanne deine Website nach Services"
6672
  #: inc/view/checklist/Scanner.php:1
6673
  msgid ""
6674
  "Scan your website to identify services used and external URLs that may "
6675
- "transmit personal data."
6676
  msgstr ""
6677
  "Scanne deine Website, um genutzte Services und externe URLs zu "
6678
- "identifizieren, die persönliche Daten übertragen können."
 
6679
 
6680
  #: inc/view/checklist/Scanner.php:1
6681
  msgid "Open scanner"
@@ -6689,18 +6927,18 @@ msgstr "Platziere legale Links auf deiner Website"
6689
  msgid ""
6690
  "Your website visitors must be able to view their consent history, change "
6691
  "their consent, or withdraw their consent at any time. This must be as easy "
6692
- "as giving consent. Therefore, the shortcodes must be included on every "
6693
  "subpage of the website (e.g. in the footer)."
6694
  msgstr ""
6695
  "Deine Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6696
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6697
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6698
- "Deshalb müssen die Shortcodes auf jeder Unterseite der Website zu finden "
6699
- "sein (z. B. im Footer/Fußzeile)."
6700
 
6701
  #: inc/view/checklist/Shortcode.php:1
6702
  msgid "Create legal links"
6703
- msgstr "Legal links erstellen"
6704
 
6705
  #: inc/view/checklist/ViewStats.php:1
6706
  msgid "Check out statistics about consents"
@@ -6776,6 +7014,17 @@ msgstr "Einstellungen"
6776
  msgid "Enabled"
6777
  msgstr "Aktiviert"
6778
 
 
 
 
 
 
 
 
 
 
 
 
6779
  #: inc/view/customize/banner/BasicLayout.php:1
6780
  msgid "Basic Layout"
6781
  msgstr "Grundlegendes Layout"
@@ -6870,6 +7119,16 @@ msgstr "Button-Rahmen: Abgerundete Ecken"
6870
  msgid "Animation on display"
6871
  msgstr "Animation beim Einblenden"
6872
 
 
 
 
 
 
 
 
 
 
 
6873
  #: inc/view/customize/banner/BasicLayout.php:1
6874
  msgid "Animation only on mobile devices"
6875
  msgstr "Animation nur auf mobilen Geräten"
@@ -7076,22 +7335,21 @@ msgstr "Button: Weiter ohne Einwilligung"
7076
  msgid "Use the same stylings as for \"Accept all\""
7077
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7078
 
 
7079
  #: inc/view/customize/banner/BodyDesign.php:1
7080
  #: inc/view/customize/banner/individual/SaveButton.php:1
7081
  msgid ""
7082
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7083
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7084
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7085
  "way for your visitors to express their choice (agree to everything, continue "
7086
  "without consent or an indivudual decision). Equivalent does not necessarily "
7087
  "mean that the buttons/links must look exactly the same. However, you should "
7088
  "be safest if they look exactly the same."
7089
  msgstr ""
7090
- "Gemäß der <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7091
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7092
- "deutschen Datenschutzbehörden</a> muss es für deine Besucher eine "
7093
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7094
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7095
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7096
  "aussehen müssen. Am sichersten bist du jedoch, wenn sie genau gleich "
7097
  "aussehen."
@@ -7197,25 +7455,28 @@ msgid "Consent options"
7197
  msgstr "Einwilligungs-Optionen"
7198
 
7199
  #: inc/view/customize/banner/Decision.php:1
7200
- #: inc/view/customize/banner/Texts.php:1
7201
  msgid "Accept all"
7202
  msgstr "Alle akzeptieren"
7203
 
7204
  #. translators:
7205
  #: inc/view/customize/banner/Decision.php:1
7206
  msgid ""
7207
- "According to the GDPR (%1$sEU 2016/679%2$s), section 32, you are not allowed "
7208
- "to pre-select services in the form of pre-selected checkboxes for the "
7209
- "visitor. However, the GDPR and ePrivacy Directive do not prohibit the use of "
7210
- "a button to agree to all services, if there is also a button to agree only "
7211
- "to the essential services or to make a user-defined selection."
7212
  msgstr ""
7213
- "Gemäß der DSGVO (%1$sEU 2016/679%2$s), Erwägungsgrund 32, darfst du keine "
7214
- "Services in Form von vorselektierten Checkboxen für den Besucher auswählen. "
7215
- "Die DSGVO und die ePrivacy-Richtlinie verbieten jedoch nicht die Verwendung "
7216
- "eines Buttons zur Einwilligung in alle Services, wenn es auch einen Button "
7217
- "gibt, um nur den essenziellen Services zuzustimmen oder um eine "
7218
- "benutzerdefinierte Auswahl zu treffen."
 
 
 
 
7219
 
7220
  #: inc/view/customize/banner/Decision.php:1
7221
  #: inc/view/customize/banner/individual/SaveButton.php:1
@@ -7229,7 +7490,6 @@ msgid "Link"
7229
  msgstr "Link"
7230
 
7231
  #: inc/view/customize/banner/Decision.php:1
7232
- #: inc/view/customize/banner/Texts.php:1
7233
  msgid "Continue without consent"
7234
  msgstr "Weiter ohne Einwilligung"
7235
 
@@ -7262,44 +7522,42 @@ msgstr ""
7262
  "Einwilligung\"."
7263
 
7264
  #: inc/view/customize/banner/Decision.php:1
7265
- #: inc/view/customize/banner/individual/Texts.php:1
7266
  msgid "Individual privacy preferences"
7267
  msgstr "Individuelle Privatsphäre-Einstellungen"
7268
 
7269
  #: inc/view/customize/banner/Decision.php:1
7270
  msgid ""
7271
- "According to the GDPR (EU 2016/679) and the ePrivacy Directive (EU 2009/136/"
7272
- "EC), the user must be free to choose which services to use and be informed "
7273
- "about their purpose before giving consent. Therefore, the user must be given "
7274
- "the opportunity to access the page with the individual privacy settings."
7275
  msgstr ""
7276
- "Gemäß der DSGVO (EU 2016/679) und der ePrivacy-Richtlinie (EU 2009/136/EG) "
7277
- "muss der Nutzer frei wählen können, welche Services genutzt werden sollen "
7278
- "und über deren Zweck informiert werden, bevor er seine Einwilligung gibt. "
7279
- "Daher muss dem Nutzer die Möglichkeit gegeben werden, die Seite mit den "
7280
- "individuellen Privatsphäre-Einstellungen aufzurufen."
7281
 
7282
  #: inc/view/customize/banner/Decision.php:1
7283
  msgid "Order of the buttons"
7284
  msgstr "Reihenfolge der Buttons"
7285
 
 
7286
  #: inc/view/customize/banner/Decision.php:1
7287
  msgid ""
7288
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7289
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7290
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7291
  "way for your visitors to express their choice (agree to everything, continue "
7292
  "without consent or an indivudual decision). Which order of options is "
7293
  "considered equivalent is unclear. Therefore, the options should be arranged "
7294
  "according to the cultural conditions of the main target country."
7295
  msgstr ""
7296
- "Gemäß der <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7297
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7298
- "deutschen Datenschutzbehörden</a> muss es für deine Besucher eine "
7299
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7300
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7301
- "Welche Reihenfolge der Optionen als gleichwertig gilt, ist unklar. Daher "
7302
- "sollten die Optionen nach den kulturellen Gegebenheiten des Hauptziellandes "
7303
  "angeordnet werden."
7304
 
7305
  #: inc/view/customize/banner/Decision.php:1
@@ -7331,8 +7589,27 @@ msgid "Text of \"Accept all\" changes when user changes selection"
7331
  msgstr ""
7332
  "Text von “Alle akzeptieren” ändert sich, wenn der Benutzer die Auswahl ändert"
7333
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7334
  #: inc/view/customize/banner/Decision.php:1
7335
  #: inc/view/customize/banner/individual/Texts.php:1
 
7336
  msgid "Save custom choices"
7337
  msgstr "Individuelle Auswahlen speichern"
7338
 
@@ -7576,6 +7853,7 @@ msgstr "\"Service-Informationen ausblenden”-Link"
7576
 
7577
  #: inc/view/customize/banner/individual/Texts.php:1
7578
  #: inc/view/customize/banner/Texts.php:1
 
7579
  msgid ""
7580
  "We use cookies and similar technologies on our website and process your "
7581
  "personal data (e.g. IP address), for example, to personalize content and "
@@ -7594,6 +7872,7 @@ msgstr ""
7594
 
7595
  #: inc/view/customize/banner/individual/Texts.php:1
7596
  #: inc/view/customize/banner/Texts.php:1
 
7597
  msgid ""
7598
  "The data processing may take place with your consent or on the basis of a "
7599
  "legitimate interest, which you can object to in the privacy settings. You "
@@ -7609,6 +7888,7 @@ msgstr ""
7609
  "{{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7610
 
7611
  #: inc/view/customize/banner/individual/Texts.php:1
 
7612
  msgid ""
7613
  "Below you will find an overview of all services used by this website. You "
7614
  "can view detailed information about each service and agree to them "
@@ -7620,10 +7900,12 @@ msgstr ""
7620
  "Gebrauch machen."
7621
 
7622
  #: inc/view/customize/banner/individual/Texts.php:1
 
7623
  msgid "Show service information"
7624
  msgstr "Service-Informationen anzeigen"
7625
 
7626
  #: inc/view/customize/banner/individual/Texts.php:1
 
7627
  msgid "Hide service information"
7628
  msgstr "Service-Informationen ausblenden"
7629
 
@@ -7786,12 +8068,8 @@ msgid "\"Powered by\" link text"
7786
  msgstr "“Powered by”-Linktext"
7787
 
7788
  #: inc/view/customize/banner/Texts.php:1
7789
- msgid ""
7790
- "Use <code>{{services}}</code> as a placeholder to show all services that "
7791
- "process data in the USA."
7792
- msgstr ""
7793
- "Verwende <code>{{services}}</code> als Platzhalter, um alle Services "
7794
- "anzuzeigen, die Daten in den USA verarbeiten."
7795
 
7796
  #: inc/view/customize/banner/Texts.php:1
7797
  msgid "Data processing in the USA"
@@ -7863,22 +8141,28 @@ msgstr "\"Inhalt laden”-Button/Link"
7863
  msgid "Additional info below the \"Load content\" button"
7864
  msgstr "Zusatzinfo unterhalb dem \"Inhalt laden”-Button"
7865
 
 
7866
  #: inc/view/customize/banner/Texts.php:1
7867
  msgid ""
7868
  "The standard texts in the cookie banner are worded carefully. If you "
7869
  "customize them, make sure they are not misleading or riveting. According to "
7870
- "the <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-"
7871
- "und-tracking-2/#13_informiertheit)\" target=\"_blank\">Data Protection "
7872
- "Commissioner of Baden-Württeberg, Germany (Section B, 1.3.7.; German)</a>, "
7873
- "for example, a headline \"We love cookies\" is already misleading."
7874
  msgstr ""
7875
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn du sie "
7876
  "anpasst, achte darauf, dass sie nicht irreführend oder vernietlichend sind. "
7877
- "Nach dem <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-"
7878
- "cookies-und-tracking-2/#13_informiertheit)\" target=\"_blank"
7879
- "\">Datenschutzbeauftragen von Baden-Württeberg, Deutschland (Abschnitt B, "
7880
- "1.3.7.)</a> ist z.B. die Überschrift \"Wir lieben Cookies\" bereits "
7881
- "irreführend."
 
 
 
 
 
 
7882
 
7883
  #. translators:
7884
  #: inc/view/customize/banner/Texts.php:1
@@ -7919,14 +8203,17 @@ msgstr ""
7919
  "%2$s, um sie zu aktivieren."
7920
 
7921
  #: inc/view/customize/banner/Texts.php:1
 
7922
  msgid "Privacy preferences"
7923
  msgstr "Privatsphäre-Einstellungen"
7924
 
7925
  #: inc/view/customize/banner/Texts.php:1
 
7926
  msgid "Set privacy settings individually"
7927
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
7928
 
7929
  #: inc/view/customize/banner/Texts.php:1
 
7930
  msgid ""
7931
  "Some services process personal data in the USA. By consenting to the use of "
7932
  "these services, you also consent to the processing of your data in the USA "
@@ -7946,6 +8233,7 @@ msgstr ""
7946
  "Möglichkeit eines Rechtsbehelfs."
7947
 
7948
  #: inc/view/customize/banner/Texts.php:1
 
7949
  msgid ""
7950
  "You are under 16 years old? Then you cannot consent to optional services. "
7951
  "Ask your parents or legal guardians to agree to these services with you."
@@ -7955,6 +8243,7 @@ msgstr ""
7955
  "dir in diese Services einzuwilligen."
7956
 
7957
  #: inc/view/customize/banner/Texts.php:1
 
7958
  msgid ""
7959
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
7960
  "to this service to view this content. Please ask your parents or guardians "
@@ -7965,34 +8254,40 @@ msgstr ""
7965
  "Erziehungsberechtigten, dem Service mit dir zuzustimmen!"
7966
 
7967
  #: inc/view/customize/banner/Texts.php:1
 
7968
  msgid ""
7969
  "By accepting all services, you allow {{services}} to be loaded. These "
7970
  "services are divided into groups {{serviceGroups}} according to their "
7971
  "purpose (belonging marked with superscript numbers)."
7972
  msgstr ""
7973
  "Wenn du alle Services akzeptierst, erlaubst du, dass {{services}} geladen "
7974
- "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt "
7975
- "(Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
7976
 
7977
  #: inc/view/customize/banner/Texts.php:1
 
7978
  msgid "Your consent is also applicable on {{websites}}."
7979
  msgstr "Deine Einwilligung gilt auch auf {{websites}}."
7980
 
7981
  #. translators:
7982
  #: inc/view/customize/banner/Texts.php:1
 
7983
  msgid "{{name}} blocked due to privacy settings"
7984
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
7985
 
7986
  #. translators:
7987
  #: inc/view/customize/banner/Texts.php:1
 
7988
  msgid "Show all services you still need to agree to"
7989
  msgstr "Zeige alle Services, denen du noch zustimmen musst"
7990
 
7991
  #: inc/view/customize/banner/Texts.php:1
 
7992
  msgid "Accept required services and load content"
7993
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
7994
 
7995
  #: inc/view/customize/banner/Texts.php:1
 
7996
  msgid ""
7997
  "Loading the blocked content will adjust your privacy settings. Content from "
7998
  "this service will not be blocked in the future. You have the right to revoke "
@@ -8032,18 +8327,22 @@ msgid "The navigation menu could not be found."
8032
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8033
 
8034
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8035
  msgid "Change privacy settings"
8036
  msgstr "Privatsphäre-Einstellungen ändern"
8037
 
8038
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8039
  msgid "Privacy settings history"
8040
  msgstr "Historie der Privatsphäre-Einstellungen"
8041
 
8042
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8043
  msgid "Revoke consents"
8044
  msgstr "Einwilligungen widerrufen"
8045
 
8046
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8047
  msgid ""
8048
  "You have successfully revoked the consent. The page will be reloaded now."
8049
  msgstr ""
@@ -8093,6 +8392,46 @@ msgstr "Bitte gib ein `text`-Attribut in deinem Shortcode an!"
8093
  msgid "Please provide a `type` attribute in your shortcode. Allowed: %s!"
8094
  msgstr "Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: %s!"
8095
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8096
  #~ msgid ""
8097
  #~ "An opt-in script is not required, as this service is probably already "
8098
  #~ "integrated via e.g. your theme. In addition to this service, please "
2
  msgstr ""
3
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
4
  "POT-Creation-Date: n/a\n"
5
+ "PO-Revision-Date: 2022-08-29 14:24+0000\n"
6
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
7
+ "Language-Team: German <https://translate.devowl.io/projects/"
8
+ "wordpress-real-cookie-banner-backend-php/develop/de/>\n"
9
  "Language: de_CH_informal\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
+ "X-Generator: Weblate 4.13.1\n"
15
 
16
  #. Plugin Name of the plugin
17
  msgid "Real Cookie Banner"
172
  "heruntergeladen, wodurch weitere rechtliche Probleme vermieden werden."
173
 
174
  #: inc/Assets.php:1
175
+ msgctxt "legal-text"
176
  msgid "Use on legal basis of"
177
  msgstr "Verwendung auf gesetzlicher Grundlage von"
178
 
179
  #: inc/Assets.php:1
180
+ msgctxt "legal-text"
181
  msgid "Legitimate interest"
182
  msgstr "Berechtigtes Interesse"
183
 
184
  #: inc/Assets.php:1
185
+ msgctxt "legal-text"
186
  msgid "Compliance with a legal obligation"
187
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
188
 
189
  #: inc/Assets.php:1
190
+ msgctxt "legal-text"
191
  msgid "Consent"
192
  msgstr "Einwilligung"
193
 
194
  #: inc/Assets.php:1
195
+ msgctxt "legal-text"
196
  msgid ""
197
  "We have recognized that you are a crawler/bot. Only natural persons must "
198
  "consent to cookies and processing of personal data. Therefore, the link has "
203
  "einwilligen. Daher hat der Link für dich keine Funktion."
204
 
205
  #: inc/Assets.php:1
206
+ msgctxt "legal-text"
207
  msgid "Technical cookie definition"
208
  msgstr "Technische Cookie-Definition"
209
 
210
  #: inc/Assets.php:1
211
+ msgctxt "legal-text"
212
  msgid "Uses cookies"
213
  msgstr "Verwendete Cookies"
214
 
215
  #: inc/Assets.php:1
216
+ msgctxt "legal-text"
217
  msgid "Cookie refresh"
218
  msgstr "Cookie-Auffrischung"
219
 
220
  #: inc/Assets.php:1
221
+ msgctxt "legal-text"
222
  msgid ""
223
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
224
  msgstr ""
226
  "IndexDB, etc.)"
227
 
228
  #: inc/Assets.php:1
229
+ msgctxt "legal-text"
230
  msgid "Host"
231
  msgstr "Host"
232
 
233
+ #: inc/Assets.php:1
234
+ msgctxt "legal-text"
235
  msgid "Duration"
236
  msgstr "Dauer"
237
 
260
  msgstr "Jahr(e)"
261
 
262
  #: inc/Assets.php:1
263
+ msgctxt "legal-text"
264
  msgid "No expiration"
265
  msgstr "Kein Ablauf"
266
 
267
+ #: inc/Assets.php:1
268
+ msgctxt "legal-text"
 
269
  msgid "Type"
270
  msgstr "Typ"
271
 
272
  #: inc/Assets.php:1
273
+ msgctxt "legal-text"
274
  msgid "Purpose"
275
  msgstr "Zweck"
276
 
277
  #: inc/Assets.php:1
278
+ msgctxt "legal-text"
279
  msgid "History of your privacy settings"
280
  msgstr "Privatsphäre-Einstellungen: Historie"
281
 
282
  #: inc/Assets.php:1
283
+ msgctxt "legal-text"
284
  msgid "Show consent from"
285
  msgstr "Einwilligungen anzeigen vom"
286
 
287
  #: inc/Assets.php:1
288
+ msgctxt "legal-text"
289
  msgid "Not yet consented to"
290
  msgstr "Noch nicht eingewilligt"
291
 
298
  msgstr "Schließen ohne Speichern"
299
 
300
  #: inc/Assets.php:1
301
+ msgctxt "legal-text"
302
  msgid "Provider"
303
  msgstr "Anbieter"
304
 
305
  #: inc/Assets.php:1
306
+ msgctxt "legal-text"
307
  msgid "Privacy Policy"
308
  msgstr "Datenschutzerklärung"
309
 
310
  #. translators:
311
  #: inc/Assets.php:1
312
+ msgctxt "legal-text"
313
  msgid "and %d more"
314
  msgstr "und %d mehr"
315
 
316
  #. translators:
317
+ #: inc/Assets.php:1
318
+ msgctxt "legal-text"
319
  msgid "US data processing"
320
  msgstr "US-Datenverarbeitung"
321
 
709
  msgid ""
710
  "In recent months, more clarity has been created about what consent "
711
  "management on websites should look like - and what it shouldn't. In "
712
+ "particular, through the <a href=\"%1$s\" target=\"_blank\">TTDSG</a> "
713
+ "(Telecommunications Telemedia Data Protection Act; Germany) and <a href="
714
+ "\"%2$s\" target=\"_blank\">Guidance of the Conference of Independent Data "
715
+ "Protection Authorities for cookie banners</a> (coordinated legal "
716
+ "interpretation of all German data protection authorities; in German), there "
717
+ "are now clearer rules that further interpret or complement the EU-wide "
718
+ "applicable <a href=\"%3$s\" target=\"_blank\">ePrivacy Directive</a> and <a "
719
+ "href=\"%4$s\" target=\"_blank\">GDPR</a>. Furthermore, there were important "
720
+ "decisions such as the evaluation of <a href=\"%5$s\" target=\"_blank\">TCF "
721
+ "by ADP (Belgium)</a>, the <a href=\"%6$s\" target=\"_blank\">Google "
722
+ "Analytics decision by dsb (Austria)</a> and the <a href=\"%7$s\" target="
723
+ "\"_blank\">position on Google Analytics by CNIL</a>."
 
 
 
 
 
 
724
  msgstr ""
725
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
726
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
727
+ "aussehen sollte. Insbesondere durch das <a href=\"%1$s\" target=\"_blank\""
728
+ ">TTDSG</a> (Telekommunikation-Telemedien-Datenschutz-Gesetz) und die <a href="
729
+ "\"%2$s\" target=\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
 
 
730
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
731
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
732
+ "Regeln, welche die EU-weit geltende <a href=\"%3$s\" target=\"_blank\""
733
+ ">ePrivacy-Richtlinie</a> und <a href=\"%4$s\" target=\"_blank\">DSGVO</a> "
734
+ "weiter auslegen oder ergänzen. Außerdem gab es wichtige Entscheidungen wie "
735
+ "die Bewertung von <a href=\"%5$s\" target=\"_blank\">TCF durch ADP "
736
+ "(Belgien)</a>, die <a href=\"%6$s\" target=\"_blank\">Google Analytics "
737
+ "Entscheidung von dsb (Österreich)</a> und die <a href=\"%7$s\" target="
738
+ "\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
739
+
740
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
741
+ msgid "https://www.gesetze-im-internet.de/ttdsg/"
742
+ msgstr "https://www.gesetze-im-internet.de/ttdsg/"
743
+
744
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
745
+ #: inc/view/customize/banner/BodyDesign.php:1
746
+ #: inc/view/customize/banner/Decision.php:1
747
+ #: inc/view/customize/banner/individual/SaveButton.php:1
748
+ msgid ""
749
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
750
+ "pdf"
751
+ msgstr ""
752
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
753
+ "pdf"
754
+
755
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
756
+ msgid "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex%3A32009L0136"
757
+ msgstr "https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32009L0136"
758
+
759
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
760
+ msgid "https://gdpr-info.eu/"
761
+ msgstr "https://dsgvo-gesetz.de/"
762
+
763
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
764
+ msgid ""
765
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
766
+ "n-21-2022-english.pdf"
767
+ msgstr ""
768
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-"
769
+ "fond-n-21-2022-english.pdf"
770
+
771
+ #. translators:
772
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
773
+ msgid ""
774
+ "https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%2$20Google"
775
+ "%20Analytics_DE_bk_0.pdf"
776
+ msgstr ""
777
+ "https://noyb.eu/sites/default/files/2022-01/"
778
+ "E-DSB%20-%2$20Google%20Analytics_DE_bk_0.pdf"
779
+
780
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
781
+ msgid ""
782
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
783
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
784
+ msgstr ""
785
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
786
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
787
 
788
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
789
  msgid ""
844
  #. translators:
845
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
846
  msgid ""
847
+ "In accordance with the requirements of the &quot;<a href=\"%s\" target="
 
848
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
849
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
850
  "and revoke consent must be directly accessible on every sub-page of your "
851
  "website."
852
  msgstr ""
853
+ "Gemäß den Anforderungen des <a href=\"%s\" target=\"_blank\">"
 
854
  "\"Orientierungshilfe der Konferenz der unabhängigen "
855
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
856
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
993
  msgid "Updates in v3.0: You should act to be safe!"
994
  msgstr "Updates in v3.0: Du solltest handeln, um sicher zu sein!"
995
 
996
+ #. translators:
997
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
998
  msgid ""
999
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
1000
  "have implemented, among other things, current legal adjustments. Read more "
1001
+ "about the changes in our <a href=\"%s\" target=\"_blank\">blog post</a>."
 
1002
  msgstr ""
1003
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
1004
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
1005
+ "Änderungen erfährst du in unserem <a href=\"%s\" target=\"_blank\""
1006
+ ">Blogbeitrag.</a>."
1007
+
1008
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1009
+ msgid "https://devowl.io/2022/real-cookie-banner-3-0/"
1010
+ msgstr "https://devowl.io/de/2022/real-cookie-banner-3-0/"
1011
 
1012
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1013
  msgid ""
1065
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1066
  "Vorgehen für deinen Einzelfall zu klären."
1067
 
1068
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1069
+ msgid "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1070
+ msgstr "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1071
+
1072
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1073
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1074
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1075
 
1076
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1077
+ msgid ""
1078
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1079
+ msgstr ""
1080
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1081
+
1082
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1083
  msgid "Statement of the IAB Europe (English)"
1084
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1085
 
1086
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1087
+ msgid ""
1088
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1089
+ msgstr ""
1090
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1091
+
1092
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1093
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1094
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
1467
  "\"_blank\">%3$s</a>. In diesem Fall musst du auch den \"Code bei Opt-in "
1468
  "ausführen\" entfernen."
1469
 
1470
+ #: inc/overrides/pro/presets/ActiveCampaignSiteTrackingPreset.php:1
1471
+ msgid "https://wordpress.org/plugins/activecampaign-subscription-forms/"
1472
+ msgstr "https://de.wordpress.org/plugins/activecampaign-subscription-forms/"
1473
+
1474
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1475
  msgid ""
1476
  "AddThis allows providing links and buttons for sharing content on a variety "
1524
  "Benutzer eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1525
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1526
 
1527
+ #. translators:
1528
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1529
  msgid ""
1530
+ "This template assumes that you use the <a href=\"%s\" target=\"_blank"
1531
+ "\">AddToAny WordPress plugin</a>. The template is not suitable to add "
1532
+ "Facebook Like, Twitter Tweet or Pinterest Pin button in AddToAny. If you "
1533
+ "want to use any of these buttons, please use it without AddToAny and "
1534
+ "additionally create the cookies and content blockers for the respective "
1535
+ "service."
1536
  msgstr ""
1537
+ "Diese Vorlage setzt voraus, dass du das <a href=\"%s\" target=\"_blank\""
1538
+ ">AddToAny WordPress Plugin</a> verwendest. Die Vorlage ist nicht geeignet, "
1539
+ "um Facebook Like, Twitter Tweet oder Pinterest Pin Button in AddToAny "
1540
+ "einzufügen. Wenn du einen dieser Buttons verwenden möchtest, verwende ihn "
1541
+ "bitte ohne AddToAny und erstelle zusätzlich die Cookies und Content Blocker "
1542
+ "für den jeweiligen Dienst."
1543
+
1544
+ #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1545
+ msgid "https://wordpress.org/plugins/add-to-any/"
1546
+ msgstr "https://de.wordpress.org/plugins/add-to-any/"
1547
 
1548
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1549
  msgid ""
1564
  "merken, wie oft welche Werbeplatzierung bereits angezeigt wurde und wie oft "
1565
  "die jeweilige Werbung angeklickt wurde."
1566
 
1567
+ #. translators:
1568
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1569
  msgid ""
1570
+ "Ad Insert plays out ads even without consent. You should <a href=\"%s\" "
1571
+ "target=\"_blank\">obtain consent for the ads via the TCF v2.0 or newer "
1572
+ "standard</a>. Only some features of the plugin require you to obtain consent "
1573
+ "for Ad Inserter."
1574
  msgstr ""
1575
+ "Ad Insert spielt Werbung auch ohne Einwilligung aus. Du solltest <a href=\"%"
1576
+ "s\" target=\"_blank\">die Einwilligung für die Anzeigen über den TCF v2.0 "
1577
+ "oder neueren Standard einholen</a>. Nur für einige Features des Plugins "
1578
+ "musst du die Einwilligung für Ad Inserter einholen."
1579
+
1580
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1581
+ msgid "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1582
+ msgstr "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1583
 
1584
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1585
  msgid ""
1597
  "deaktiviert hast, da dieser Teil des Adblockers Daten an Google und Media."
1598
  "net überträgt, bevor du deine Einwilligung dazu hast."
1599
 
1600
+ #. translators:
1601
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1602
  msgid ""
1603
+ "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"%s\" "
1604
+ "target=\"_blank\">impression and click limits</a> feature of Ad Inserter "
1605
+ "Pro. The duration of the cookie depends on the settings of the feature."
 
1606
  msgstr ""
1607
+ "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn du das <a href=\"%s\" "
1608
+ "target=\"_blank\">Impressions- und Klick-Limit</a> Feature von Ad Inserter "
1609
+ "Pro nutzt. Die Dauer des Cookies hängt von den Einstellungen des Features ab."
1610
+
1611
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1612
+ msgid "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1613
+ msgstr "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1614
 
1615
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1616
  msgid ""
1838
  msgid "Awin Publisher ID"
1839
  msgstr "Awin-Publisher-ID"
1840
 
1841
+ #. translators:
1842
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1843
  msgid ""
1844
+ "You find your publisher ID in the <a href=\"%s\" target=\"_blank\">account "
1845
+ "overview</a> directly blow your account name."
1846
  msgstr ""
1847
+ "Du findest deine Publisher ID in der <a href=\"%s\" target=\"_blank\""
1848
+ ">Account Übersicht</a> direkt unter deinem Benutzernamen."
1849
+
1850
+ #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1851
+ msgid "https://ui.awin.com/user"
1852
+ msgstr "https://ui.awin.com/user"
1853
 
1854
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1855
  msgid ""
1905
  "Auf <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> Du unter Tools > "
1906
  "Conversion tracking > UET tag findest Du Deinen UET-Tag in der Tag-Tabelle."
1907
 
1908
+ #: inc/overrides/pro/presets/BingAdsPreset.php:1
1909
+ msgid "https://ads.microsoft.com"
1910
+ msgstr "https://ads.microsoft.com"
1911
+
1912
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1913
  msgid ""
1914
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
2361
  msgid "etracker Account Key"
2362
  msgstr "etracker Account Key"
2363
 
2364
+ #. translators:
2365
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2366
  msgid ""
2367
+ "You can find your etracker account key under <a href=\"%s\" target=\"_blank"
2368
+ "\">Account info > Settings> Account</a> of your etracker account."
 
2369
  msgstr ""
2370
+ "Du findest deinen etracker Account Key unter <a href=\"%s\" target=\"_blank\""
2371
+ ">Account Info > Einstellungen > Account</a> deines etracker Accounts."
2372
+
2373
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2374
+ msgid "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2375
+ msgstr "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2376
 
2377
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2378
  msgid ""
2389
  "Tracking widersprechen, indem er diesen Service in deinem Cookie Banner "
2390
  "deaktiviert."
2391
 
2392
+ #. translators:
2393
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2394
  msgid ""
2395
  "We also recommend that you deactivate the non-aggregated reporting via the "
2396
+ "<a href=\"%s\" target=\"_blank\">dashboard</a> under <i>menu (top left) > "
2397
+ "Account-ID > Settings > Privacy > Consent-free tracking cookies in "
2398
+ "accordance with CNIL guidelines</i> to ensure that there is definitely no "
2399
+ "personal reference for the collected data."
2400
+ msgstr ""
2401
+ "Wir empfehlen dir zusätzlich über das <a href=\"%s\" target=\"_blank\""
2402
+ ">Dashboard</a> unter <i>Menü (obene links) > Account-ID > Einstellungen > "
2403
+ "Datenschutz > Einwilligungs-freie Tracking Cookies gemäß Anforderungen der "
2404
+ "CNIL</i> die nicht aggregierten Reportings zu deaktivieren, um "
2405
+ "sicherzustellen, dass definitiv kein Personenbezug bei den erhobenen Daten "
2406
+ "besteht."
2407
+
2408
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2409
+ #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2410
+ msgid "https://newapp.etracker.com/"
2411
+ msgstr "https://newapp.etracker.com/"
2412
 
2413
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2414
  msgid "etracker: enhanced tracking"
2456
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2457
  "anreichert."
2458
 
2459
+ #. translators:
2460
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2461
  msgid ""
2462
  "In order for the consent to be taken into account, you must activate the "
2463
+ "toggle \"Opt-In active\" via the <a href=\"%s\" target=\"_blank\">dashboard</"
2464
+ "a> under <i>menu (top left) > Account-ID > Settings > Privacy > Tracking Opt-"
2465
+ "In and agreement</i>, but then switch to \"own Opt-In\" so that etracker "
2466
+ "does not display its own consent dialog, but instead uses the consent "
2467
+ "collected by Real Cookie Banner."
2468
+ msgstr ""
2469
+ "Damit die Einwilligung berücksichtigt wird, musst du via <a href=\"%s\" "
2470
+ "target=\"_blank\">Dashboard</a> unter <i>Menü (oben links) > Account-ID > "
2471
+ "Einstellungen > Datenschutz > Tracking Opt-In und Zustimmung</i> den Toggle "
2472
+ "\"Opt-In aktiv\" aktivieren und anschließend auf \"eigenes Opt-In\" "
2473
+ "umstellen. Damit wird etracker keinen eigenen Einwilligungsdialog anzeigen, "
2474
+ "sondern die Einwilligung, erhoben von Real Cookie Banner, verwenden."
 
2475
 
2476
  #. translators:
2477
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
2779
  "können mit den Daten der auf facebook.com registrierten Benutzer verknüpft "
2780
  "werden."
2781
 
2782
+ #. translators:
2783
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2784
  msgid ""
2785
+ "You can use Facebook's <a href=\"%s\" target=\"_blank\">embedded post "
2786
+ "generator</a> to generate a HTML code to embed post with the Facebook "
2787
+ "JavaScript SDK. Loading the JavaScript SDK is part of the opt-in code. All "
2788
+ "you need to do is place the HTML div and blockqoute elements where you want "
2789
+ "the embedded post to be visible on your site. If you use Facebook post as "
2790
+ "Iframe embeeds, please create in addition a content blocker for Facebook "
2791
+ "Posts to block loading of the content before you have the consent of the "
2792
+ "user."
2793
+ msgstr ""
2794
+ "Du kannst den <a href=\"%s\" target=\"_blank\">Post-Generator von Facebook </"
2795
+ "a> verwenden, um einen HTML-Code zum Einbetten von Posts mit dem Facebook "
 
2796
  "JavaScript SDK zu generieren. Das Laden des JavaScript-SDK ist Teil des Opt-"
2797
  "in Codes. Alles was du tun musst, ist das HTML-Div und blockqoute-Element "
2798
  "dort zu platzieren, wo der eingebettete Beitrag auf deiner Seite sichtbar "
2800
  "bitte zusätzlich einen Inhaltsblocker für Facebook, um das Laden ihres "
2801
  "Inhalts zu blockieren, bevor du die Einwilligung des Nutzers hast."
2802
 
2803
+ #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2804
+ msgid "https://developers.facebook.com/docs/plugins/embedded-posts/"
2805
+ msgstr "https://developers.facebook.com/docs/plugins/embedded-posts/"
2806
+
2807
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2808
  msgid ""
2809
  "Facebook Share button allows users to share a link directly on Facebook. The "
3004
  msgid "Please fill in a valid tracking ID!"
3005
  msgstr "Bitte gib eine gültige Tracking ID an!"
3006
 
3007
+ #. translators:
3008
  #: inc/overrides/pro/presets/GoogleAds.php:1
3009
  msgid ""
3010
+ "You can find your Adwords ID in <a href=\"%s\" target=\"_blank\">Google Ads</"
3011
+ "a> at Tools > Measurement > Conversions > Click on the name of the "
3012
+ "conversation action > Tag setup > Install the tag yourself > Adwords ID in "
3013
+ "the code (e.g. AW-123456789)."
3014
  msgstr ""
3015
+ "Deine Adwords ID findest du in <a href=\"%s\" target=\"_blank\">Google Ads</"
3016
+ "a> unter Tools > Messung > Conversions > Conversion-Aktion > Tag-Einrichtung "
3017
+ "> Tag selbst einfügen > Adwords ID in dem Code (z.B. AW-123456789)."
3018
+
3019
+ #: inc/overrides/pro/presets/GoogleAds.php:1
3020
+ msgid "https://ads.google.com/aw/overview"
3021
+ msgstr "https://ads.google.com/aw/overview"
3022
 
3023
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3024
  msgid ""
3045
  msgid "Google Adsense Publisher ID"
3046
  msgstr "Google Adsense Publisher-ID"
3047
 
3048
+ #. translators:
3049
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3050
  msgid ""
3051
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
3052
  "(if activated in your Adsense account) can be displayed. You can find it in "
3053
+ "the <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> under "
3054
+ "<i>Account > Settings > Account information</i>."
3055
  msgstr ""
3056
+ "Du musst deine Google Adsense Publisher ID eingeben, damit z.B. Auto Ads ("
3057
+ "falls in deinem Adsense Konto aktiviert) angezeigt werden können. Du findest "
3058
+ "sie im <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> unter "
3059
+ "<i>Account > Einstellungen > Kontoinformationen</i>."
3060
+
3061
+ #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3062
+ msgid "https://www.google.com/adsense"
3063
+ msgstr "https://www.google.com/adsense"
3064
 
3065
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3066
  msgid ""
3106
  msgid "Google Analytics Measurement ID"
3107
  msgstr "Google Analytics Measurement-ID"
3108
 
3109
+ #. translators:
3110
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3111
  msgid ""
3112
  "You can find your Measurement ID (also called property ID) in the <a href="
3113
+ "\"%s\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3114
+ "Select your account > Select your property > Setup Assistant > Tag "
3115
+ "installation > Select your website."
3116
  msgstr ""
3117
+ "Du findest deine Measurement ID (auch Property ID genannt) im <a href=\"%s\" "
3118
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3119
+ "Wähle deinen Account aus > Wähle deine Property aus > Setup Assistant > Tag "
3120
+ "Installation > Wähle deine Website aus."
3121
+
3122
+ #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3123
+ #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3124
+ msgid "https://analytics.google.com/analytics/web/"
3125
+ msgstr "https://analytics.google.com/analytics/web/"
3126
 
3127
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3128
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3172
  msgid "Google Analytics Tracking ID"
3173
  msgstr "Google Analytics Tracking-ID"
3174
 
3175
+ #. translators:
3176
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3177
  msgid ""
3178
+ "You can find your Tracking ID (also called Property ID) in the <a href=\"%s"
3179
+ "\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3180
+ "Select your account > Select your property > Tracking Info > Tracking Code."
 
3181
  msgstr ""
3182
+ "Du findest deine Tracking ID (auch Property ID genannt) im <a href=\"%s\" "
3183
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3184
+ "Wähle deinen Account > Wähle deine Property > Tracking Info > Tracking Code."
 
3185
 
3186
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3187
  msgid ""
3425
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
3426
  "Statistiken über sein Verhalten zu sammeln."
3427
 
3428
+ #. translators:
3429
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3430
  msgid ""
3431
+ "You have to create a so-called Beacon on <a href=\"%s\" target=\"_blank"
3432
+ "\">secure.helpscout.net</a> > Manager > Beacon > New Beacon. After creating "
3433
+ "in the Beacon Customizer, the URL looks like <code>https://secure.helpscout."
3434
+ "net/settings/beacons/c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. "
3435
+ "This means that the HelpScout Beacon ID is <code>c676047b-"
3436
+ "c2e8-45b1-8319-344f4e7e2431</code>."
3437
+ msgstr ""
3438
+ "Du musst einen sogenannten Beacon auf <a href=\"%s\" target=\"_blank\">secure"
3439
+ ".helpscout.net</a> > Manager > Beacon > New Beacon erstellen. Nach dem "
3440
+ "Erstellen im Beacon Customizer sieht die URL ähnlich aus wie "
3441
+ "<code>https://secure.helpscout.net/settings/beacons/"
3442
+ "c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. Das bedeutet, dass "
3443
+ "die HelpScout Beacon-ID <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code> "
3444
+ "lautet."
3445
+
3446
+ #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3447
+ msgid "https://secure.helpscout.net"
3448
+ msgstr "https://secure.helpscout.net"
3449
 
3450
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3451
  msgid "HelpScout Beacon ID"
3470
  msgid "Hotjar ID"
3471
  msgstr "Hotjar-ID"
3472
 
3473
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3474
+ msgid "https://wordpress.org/plugins/hotjar/"
3475
+ msgstr "https://de.wordpress.org/plugins/hotjar/"
3476
+
3477
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3478
+ msgid "official Hotjar WordPress Plugin"
3479
+ msgstr "offizielles Hotjar WordPress Plugin"
3480
+
3481
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3482
  msgid ""
3483
  "Imgur allows embedding content posted on imgur.com directly into websites."
3547
  msgid "Intercom application ID"
3548
  msgstr "Intercom Application ID"
3549
 
3550
+ #: inc/overrides/pro/presets/IntercomChatPreset.php:1
3551
+ msgid "https://wordpress.org/plugins/intercom/"
3552
+ msgstr "https://de.wordpress.org/plugins/intercom/"
3553
+
3554
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3555
  msgid ""
3556
  "Issuu allows embedding content posted on issuu.com directly into websites. "
3684
  msgid "https://linkedin.com/legal/privacy-policy"
3685
  msgstr "https://de.linkedin.com/legal/privacy-policy"
3686
 
3687
+ #. translators:
3688
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3689
  msgid ""
3690
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3691
+ "\"%s\" target=\"_blank\">where to find the LinkedIn Partner ID</a> in your "
3692
+ "LinkedIn Ads account."
3693
  msgstr ""
3694
  "Du findest in der Wissensdatenbank von LinkedIn einen Artikel, der dir "
3695
+ "erklärt, <a href=\"%s\" target=\"_blank\">wo du die LinkedIn Partner ID "
3696
+ "findest</a> in deinem LinkedIn Ads Konto."
3697
+
3698
+ #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3699
+ msgid "https://www.linkedin.com/help/lms/answer/a415871"
3700
+ msgstr "https://www.linkedin.com/help/lms/answer/a415871"
3701
 
3702
  #: inc/overrides/pro/presets/LoomPreset.php:1
3703
  msgid ""
3823
  "Anmeldung verwendest, das versteckt werden kann (z.B. Popup). Nur in diesem "
3824
  "Fall wird ein Cookie gesetzt."
3825
 
3826
+ #. translators:
3827
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3828
  msgid ""
3829
  "Personal data will never be transferred directly from the browser of your "
3830
  "visitors to MailPoet, but only, for example, when you sign up for the "
3831
  "newsletter via your WordPress installation. You should always follow the <a "
3832
+ "href=\"%s\" target=\"_blank\">MailPoet Guide to Conform to GDPR</a>."
 
3833
  msgstr ""
3834
  "Personenbezogene Daten werden niemals direkt vom Browser deiner Besucher an "
3835
  "MailPoet übertragen, sondern nur z.B. bei der Anmeldung zum Newsletter über "
3836
+ "deine WordPress-Installation. Du solltest immer den <a href=\"%s\" target="
3837
+ "\"_blank\">MailPoet Guide to Conform to GDPR</a>. beachten."
3838
+
3839
+ #: inc/overrides/pro/presets/MailPoetPreset.php:1
3840
+ msgid "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3841
+ msgstr "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3842
 
3843
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3844
  msgid ""
3914
  msgid "Please provide a valid hash!"
3915
  msgstr "Bitte gib einen gültigen Hash an!"
3916
 
3917
+ #. translators:
3918
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3919
  msgid ""
3920
+ "You find your Metricool hash in the <a href=\"%s\" target=\"_blank"
3921
+ "\">Metricool Brand Conncetions</a>, if you use \"Connect web\" and choose "
3922
+ "the integration as JavaScript tag, within the generated JavaScript."
 
3923
  msgstr ""
3924
+ "Du findest deinen Metricool Hash in den <a href=\"%s\" target=\"_blank\""
3925
+ ">Metricool Brand Conncetions</a>, wenn du \"Connect web\" nutzt und die "
3926
+ "Integration als JavaScript-Tag auswählst, innerhalb des generierten "
3927
+ "JavaScript."
3928
+
3929
+ #: inc/overrides/pro/presets/MetricoolPreset.php:1
3930
+ msgid "https://app.metricool.com/brands/connections"
3931
+ msgstr "https://app.metricool.com/brands/connections"
3932
 
3933
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3934
  msgid ""
3959
  "projects/view/12cggd77jl/</code> lautet, ist deine Projekt-ID "
3960
  "<code>12cggd77jl</code>."
3961
 
3962
+ #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3963
+ msgid "https://wordpress.org/plugins/microsoft-clarity/"
3964
+ msgstr "https://de.wordpress.org/plugins/microsoft-clarity/"
3965
+
3966
  #. translators:
3967
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3968
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
3998
  msgid "Mouseflow Website ID"
3999
  msgstr "Mouseflow Website-ID"
4000
 
4001
+ #. translators:
4002
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
4003
  msgid ""
4004
  "You can find your Mouseflow website ID by hovering over the appropriate "
4005
+ "website at <a href=\"%s\" target=\"_blank\">eu.mouseflow.com/websites</a>. "
4006
+ "You will then see a gear icon that you can click on. In the settings that "
4007
+ "appear, you should find a <code>Website ID</code> field."
 
4008
  msgstr ""
4009
+ "Du findest deine Mouseflow Website ID, indem du auf <a href=\"%s\" target="
4010
+ "\"_blank\">eu.mouseflow.com/websites</a> mit dem Mauszeiger über die "
4011
+ "entsprechende Website fährst. Du siehst dann ein Zahnradsymbol, auf das du "
4012
+ "klicken kannst. In den Einstellungen, die dann erscheinen, solltest du ein "
4013
+ "Feld <code>Website ID</code> finden."
4014
+
4015
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4016
+ msgid "http://eu.mouseflow.com/websites"
4017
+ msgstr "http://eu.mouseflow.com/websites"
4018
+
4019
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4020
+ msgid "https://wordpress.org/plugins/mouseflow-for-wordpress/"
4021
+ msgstr "https://de.wordpress.org/plugins/mouseflow-for-wordpress/"
4022
 
4023
  #. translators:
4024
  #: inc/overrides/pro/presets/MtmPreset.php:1
4250
  msgid "Pinterest Tag ID"
4251
  msgstr "Pinterest Tag-ID"
4252
 
4253
+ #. translators:
4254
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4255
  msgid ""
4256
+ "You can view your Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</"
4257
+ "a> under Ads > Conversions > Add code to website > Add code. It is displayed "
4258
+ "in the top right corner of the modal."
4259
  msgstr ""
4260
+ "Du kannst deine Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</a> "
4261
+ "unter Anzeigen > Conversions > Code zur Website hinzufügen > Code hinzufügen "
4262
+ "einsehen. Er wird in der oberen rechten Ecke des Modals angezeigt."
4263
+
4264
+ #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4265
+ msgid "https://ads.pinterest.com/"
4266
+ msgstr "https://ads.pinterest.com/"
4267
 
4268
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4269
  msgid ""
4435
  "speichern die Sprache des Nutzers und können den Nutzer auf die Version der "
4436
  "Webseite umleiten, welche der Sprache des Browsers des Nutzers entspricht."
4437
 
4438
+ #. translators:
4439
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4440
  msgid ""
4441
  "Please make sure you have not renamed the Polylang cookie name or change it "
4442
  "in the same way in the technical definitions above. Learn more about how to "
4443
+ "change the Polylang cookie name <a href=\"%s\" target=\"_blank\">in their "
 
4444
  "documentation</a>."
4445
  msgstr ""
4446
  "Bitte vergewissere dich, dass du den Namen des Polylang Cookies nicht "
4447
  "umbenannt oder in den technischen Definitionen oben auf die gleiche Weise "
4448
  "geändert hast. Mehr darüber, wie man den Polylang Cookie-Namen ändert, "
4449
+ "findest du <a href=\"%s\" target=\"_blank\">in der Dokumentation</a>."
4450
+
4451
+ #: inc/overrides/pro/presets/PolyLangPreset.php:1
4452
+ msgid "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4453
+ msgstr "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4454
 
4455
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4456
  msgid ""
4756
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4757
  "Statistiken über sein Verhalten zu sammeln."
4758
 
4759
+ #. translators:
4760
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4761
  msgid ""
4762
+ "You can create your own custom chat widget at <a href=\"%s\" target=\"_blank"
4763
+ "\">dashboard.tawk.to</a> > Settings > Chat Widget. The chat widget in the "
4764
+ "opt-in code is just the default example."
4765
  msgstr ""
4766
+ "Du kannst dein eigenes benutzerdefiniertes Chat-Widget unter <a href=\"%s\" "
4767
+ "target=\"_blank\">dashboard.tawk.to</a> > Einstellungen > Chat Widget "
4768
+ "erstellen. Das Chat-Widget im Opt-in Code ist nur das Standardbeispiel."
4769
+
4770
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4771
+ msgid "https://dashboard.tawk.to"
4772
+ msgstr "https://dashboard.tawk.to"
4773
 
4774
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4775
  msgid "tawk.to ID"
4776
  msgstr "tawk.to ID"
4777
 
4778
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4779
+ msgid "https://wordpress.org/plugins/tawkto-live-chat/"
4780
+ msgstr "https://de.wordpress.org/plugins/tawkto-live-chat/"
4781
+
4782
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4783
  msgid ""
4784
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
4818
  "Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4819
  "Statistiken über sein Verhalten zu sammeln."
4820
 
4821
+ #. translators:
4822
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4823
  msgid ""
4824
+ "You get your Tidio JS ID on <a href=\"%s\" target=\"_blank\">tidio.com</a> "
4825
+ "under Settings > Live Chat > Integration > JavaScript in the given "
4826
+ "JavaScript snipped. You can adjust the appearance of the chat at tidio.com "
4827
+ "under Settings > Live Chat > Appearance."
4828
  msgstr ""
4829
+ "Du bekommst deine Tidio JS ID auf <a href=\"%s\" target=\"_blank\">tidio."
4830
+ "com</a> unter Einstellungen > Live Chat > Integration > JavaScript in dem "
4831
+ "angegebene JavaScript-Code. Du kannst das Aussehen des Chats auf tidio.com "
4832
+ "unter Einstellungen > Live Chat > Aussehen anpassen."
4833
+
4834
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4835
+ msgid "https://tidio.com"
4836
+ msgstr "https://www.tidio.com/de/"
4837
 
4838
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4839
  msgid "Tidio JS ID"
4840
  msgstr "Tidio JS-ID"
4841
 
4842
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4843
+ msgid "https://wordpress.org/plugins/tidio-live-chat/"
4844
+ msgstr "https://de.wordpress.org/plugins/tidio-live-chat/"
4845
+
4846
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4847
  msgid ""
4848
  "TikTok Pixel helps to determine whether you are the target audience for "
4874
  msgid "TikTok Pixel ID"
4875
  msgstr "TikTok Pixel-ID"
4876
 
4877
+ #. translators:
4878
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4879
  msgid ""
4880
+ "In the <a href=\"%s\" target=\"_blank\">Event Manager of the TikTok Ad "
4881
+ "Manager</a> you can create a website pixel. Select \"Manually install pixel "
4882
+ "code\" for the type of integration. Whether you want to use the \"Standard "
4883
+ "Mode\" or \"Developer Mode\" depends on your purpose."
 
4884
  msgstr ""
4885
+ "Im <a href=\"%s\" target=\"_blank\">Event Manager des TikTok Ad Managers</a> "
4886
+ "kannst du ein Website-Pixel erstellen. Wähle für die Art der Integration "
4887
+ "\"Manually install pixel code\". Ob du den \"Standard Mode\" oder den "
4888
+ "\"Developer Mode\" verwenden möchtest, hängt von deinem Vorhaben ab."
4889
+
4890
+ #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4891
+ msgid "https://ads.tiktok.com/i18n/events_manager/"
4892
+ msgstr "https://ads.tiktok.com/i18n/events_manager/"
4893
 
4894
+ #. translators:
4895
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4896
  msgid ""
4897
+ "After creating the TikTok Pixel you return to the <a href=\"%s\" target="
4898
+ "\"_blank\">Event Manager of the TikTok Ad Manager</a> and select \"Manage\" "
4899
+ "in the section \"Website Pixel\". You will then see an overview of all the "
4900
+ "TikTok pixels you have created. Each TikTok pixel has its ID directly under "
4901
+ "its name."
4902
  msgstr ""
4903
+ "Nach der Erstellung des TikTok Pixel kehrst du zum <a href=\"%s\" target="
4904
+ "\"_blank\">Event Manager des TikTok Ad Managers</a> zurück und wählst im "
4905
+ "Abschnitt \"Website Pixel\" den Punkt \"Manage\". Du siehst dann eine "
4906
+ "Übersicht über alle TikTok Pixel, die du erstellt hast. Jedes TikTok-Pixel "
4907
+ "hat seine ID direkt unter seinem Namen."
4908
 
4909
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4910
  msgid ""
5021
  msgid "https://www.userlike.com/en/terms#privacy-policy"
5022
  msgstr "https://www.userlike.com/de/terms#privacy-policy"
5023
 
5024
+ #. translators:
5025
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5026
  msgid ""
5027
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
5028
+ "You can find it in the <a href=\"%s\" target=\"_blank\">Userlike widget "
5029
+ "configurator</a> > Name of the widget > Install > JavaScript Widget code."
 
 
5030
  msgstr ""
5031
  "Bitte füge als Opt-in Code den JavaScript Code deines Userlike Widgets ein. "
5032
+ "Du findest ihn unter <a href=\"%s\" target=\"_blank\">Userlike Widget-"
5033
+ "Konfigurator</a> > Name des Widgets > Installieren > JavaScript Widget code."
5034
+
5035
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5036
+ msgid "https://userlike.com/en/dashboard/um/config/um_widget/overview"
5037
+ msgstr "https://userlike.com/de/dashboard/um/config/um_widget/overview"
5038
 
5039
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5040
  msgid "Example opt-in code"
5041
  msgstr "Beispiel Opt-in Code"
5042
 
5043
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5044
+ msgid "https://wordpress.org/plugins/userlike/"
5045
+ msgstr "https://de.wordpress.org/plugins/userlike/"
5046
+
5047
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5048
+ msgid "Userlike WordPress Plugin"
5049
+ msgstr "Userlike WordPress-Plugin"
5050
+
5051
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5052
  msgid ""
5053
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
5114
  "\"essenzielles Cookie\" und keinen Content Blocker wirst du die volle dir "
5115
  "zustehende Ausschüttungen der VG WORT erhalten können."
5116
 
5117
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5118
+ msgid ""
5119
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5120
+ msgstr ""
5121
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5122
+
5123
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5124
+ msgid "https://www.gesetze-im-internet.de/urhg/__53.html"
5125
+ msgstr "https://www.gesetze-im-internet.de/urhg/__53.html"
5126
+
5127
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5128
  msgid ""
5129
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
5374
  "Du findest Deine Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5375
  "\">Yandex Metrica Tags Liste</a>."
5376
 
5377
+ #: inc/overrides/pro/presets/YandexMetricaPreset.php:1
5378
+ msgid "https://metrica.yandex.com/list/"
5379
+ msgstr "https://metrica.yandex.com/list/"
5380
+
5381
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5382
  msgid ""
5383
  "Zendesk Chat is a customer service tool that provides live chat for "
5406
  "Du findest den Zendesk Widget Key im Zendesk Backend unter Einstellungen > "
5407
  "Widget > Web Widget einbetten als Teil des JavaScript Codes."
5408
 
5409
+ #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5410
+ msgid "https://wordpress.org/plugins/zopim-live-chat/"
5411
+ msgstr "https://de.wordpress.org/plugins/zopim-live-chat/"
5412
+
5413
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5414
  msgid ""
5415
  "Zoho Bookings is a planning software the allows you to book book "
5663
  "du in den individuellen Privatsphäre-Einstellungen."
5664
 
5665
  #: inc/overrides/pro/view/TcfBanner.php:1
5666
+ msgctxt "legal-text"
5667
  msgid ""
5668
  "In addition, you consent to the transfer of data to partners under the TCF "
5669
  "standard for the following purposes:"
5672
  "des TCF-Standards für die folgenden Zwecke zu:"
5673
 
5674
  #: inc/overrides/pro/view/TcfBanner.php:1
5675
+ msgctxt "legal-text"
5676
  msgid "Vendor list"
5677
  msgstr "Liste der Anbieter"
5678
 
5679
  #: inc/overrides/pro/view/TcfBanner.php:1
5680
+ msgctxt "legal-text"
5681
  msgid "Vendors"
5682
  msgstr "Anbieter"
5683
 
5691
  msgstr "Verstecken"
5692
 
5693
  #: inc/overrides/pro/view/TcfBanner.php:1
5694
+ msgctxt "legal-text"
5695
  msgid "Data processing on the legal basis of:"
5696
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5697
 
5698
  #: inc/overrides/pro/view/TcfBanner.php:1
5699
+ msgctxt "legal-text"
5700
  msgid "No vendor requests purposes under this legal basis."
5701
  msgstr "Kein Anbieter beantragt Zwecke auf dieser Rechtsgrundlage."
5702
 
5703
  #: inc/overrides/pro/view/TcfBanner.php:1
5704
+ msgctxt "legal-text"
5705
  msgid "Non-standardized data processing"
5706
  msgstr "Nicht standardisierte Datenverarbeitung"
5707
 
5708
  #: inc/overrides/pro/view/TcfBanner.php:1
5709
+ msgctxt "legal-text"
5710
  msgid ""
5711
  "Some services set cookies and/or process personal data without complying "
5712
  "with consent communication standards. These services are divided into "
5724
  "nach einer Einwilligung genutzt werden."
5725
 
5726
  #: inc/overrides/pro/view/TcfBanner.php:1
5727
+ msgctxt "legal-text"
5728
  msgid "Data processing standardized according to TCF"
5729
  msgstr "Datenverarbeitung standardisiert nach TCF"
5730
 
5731
  #: inc/overrides/pro/view/TcfBanner.php:1
5732
+ msgctxt "legal-text"
5733
  msgid ""
5734
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5735
  "consistent consent for processing of personal data and cookie setting. This "
5745
  "gesetzt, verarbeitet und gespeichert werden."
5746
 
5747
  #: inc/overrides/pro/view/TcfBanner.php:1
5748
+ msgctxt "legal-text"
5749
  msgid "Purposes"
5750
  msgstr "Zwecke"
5751
 
5752
  #: inc/overrides/pro/view/TcfBanner.php:1
5753
+ msgctxt "legal-text"
5754
  msgid ""
5755
  "Purposes describe for which purpose which providers may set cookies and "
5756
  "process personal data. Purposes are pre-selected if there is a legitimate "
5764
  "Einwilligung verarbeitet."
5765
 
5766
  #: inc/overrides/pro/view/TcfBanner.php:1
5767
+ msgctxt "legal-text"
5768
  msgid "Special purposes"
5769
  msgstr "Besondere Zwecke"
5770
 
5771
  #: inc/overrides/pro/view/TcfBanner.php:1
5772
+ msgctxt "legal-text"
5773
  msgid ""
5774
  "Special purposes for setting cookies and processing personal data by our "
5775
  "vendors describe purposes for which we have a legitimate interest that "
5781
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5782
 
5783
  #: inc/overrides/pro/view/TcfBanner.php:1
5784
+ msgctxt "legal-text"
5785
  msgid "Features"
5786
  msgstr "Funktionen"
5787
 
5788
  #: inc/overrides/pro/view/TcfBanner.php:1
5789
+ msgctxt "legal-text"
5790
  msgid ""
5791
  "Features for processing personal data describe how data is used to fulfill "
5792
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
5800
  "Jeder Zweck kann dazu führen, dass Funktionen verwendet werden."
5801
 
5802
  #: inc/overrides/pro/view/TcfBanner.php:1
5803
+ msgctxt "legal-text"
5804
  msgid "Special features"
5805
  msgstr "Besondere Funktionen"
5806
 
5807
  #: inc/overrides/pro/view/TcfBanner.php:1
5808
+ msgctxt "legal-text"
5809
  msgid ""
5810
  "Special features for processing personal data describe how data is used to "
5811
  "fulfill one or more purposes in a profound way. Personal data will only be "
6119
  "(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
6120
  "feststellen."
6121
 
6122
+ #. translators:
6123
  #: inc/presets/free/GoogleFontsPreset.php:1
6124
  msgid ""
6125
+ "We therefore recommend <a href=\"%s\" target=\"_blank\">replacing Google "
6126
+ "Fonts with locally hosted fonts</a> when possible, rather than asking for "
6127
+ "consent. We explained how this works in our blog!"
 
6128
  msgstr ""
6129
+ "Wir empfehlen daher, <a href=\"%s\" target=\"_blank\">Google Fonts wenn "
6130
+ "möglich durch lokal gehostete Schriftarten zu ersetzen</a>, anstatt nach "
6131
+ "einer Einwilligung zu fragen. Wie das funktioniert, haben wir in unserem "
6132
+ "Blog erklärt!"
6133
+
6134
+ #: inc/presets/free/GoogleFontsPreset.php:1
6135
+ msgid "https://devowl.io/2022/google-fonts-wordpress-gdpr/"
6136
+ msgstr "https://devowl.io/de/2022/google-fonts-wordpress-dsgvo/"
6137
 
6138
  #: inc/presets/free/GravatarPreset.php:1
6139
  msgid ""
6303
  "Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für diesen Dienst "
6304
  "muss ein Service angelegt werden."
6305
 
6306
+ #. translators:
6307
  #: inc/presets/free/WordPressCommentsPreset.php:1
6308
  msgid ""
6309
  "Do you want to use the comment feature on your website at all? If not, we "
6310
+ "explain in our blog <a href=\"%s\" target=\"_blank\"> how to disable "
6311
+ "comments in WordPress</a>. Then you can also avoid this consent!"
 
6312
  msgstr ""
6313
  "Willst du die Kommentarfunktion auf deiner Website überhaupt nutzen? Wenn "
6314
+ "nicht, erklären wir in unserem Blog, <a href=\"%s\" target=\"_blank\">wie du "
6315
+ "Kommentare in WordPress deaktivieren kannst</a>. Dann kannst du dir die "
6316
+ "Einwilligung auch sparen!"
6317
+
6318
+ #: inc/presets/free/WordPressCommentsPreset.php:1
6319
+ msgid "https://devowl.io/2022/deactivate-wordpress-comments/"
6320
+ msgstr "https://devowl.io/de/2022/wordpress-kommentare-deaktivieren/"
6321
 
6322
  #: inc/presets/free/WordPressEmojisPreset.php:1
6323
  msgid ""
6347
  "können Emojis problemlos ohne das WordPressa-Emoji-Script anzeigen (für das "
6348
  "du diese Einwilligung einholen musst)."
6349
 
6350
+ #. translators:
6351
  #: inc/presets/free/WordPressEmojisPreset.php:1
6352
  msgid ""
6353
  "Unless you need to support particularly old browsers and operating systems, "
6354
+ "we recommend that you <a href=\"%s\" target=\"_blank\">disable the WordPress "
6355
+ "emoji script</a> rather than asking for consent. How to do that, we have "
6356
+ "explained in our blog!"
6357
  msgstr ""
6358
  "Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
6359
+ "musst, empfehlen wir dir, das <a href=\"%s\" target=\"_blank\">WordPress-"
6360
+ "Emoji-Script zu deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. "
6361
+ "Wie du das machst, haben wir in unserem Blog erklärt!"
6362
+
6363
+ #: inc/presets/free/WordPressEmojisPreset.php:1
6364
+ msgid "https://devowl.io/2022/disable-emojis-wordpress/"
6365
+ msgstr "https://devowl.io/de/2022/wordpress-emojis-deaktivieren/"
6366
 
6367
  #: inc/presets/free/WordPressPluginEmbed.php:1
6368
  msgid ""
6624
 
6625
  #: inc/presets/UpdateNotice.php:1
6626
  msgid ""
6627
+ "Changes have been made to the templates you use in Real Cookie Banner. You "
6628
+ "should review the proposed changes and adjust your services if necessary to "
6629
+ "be able to remain legally compliant. The following services are affected:"
6630
  msgstr ""
6631
+ "Es wurden Änderungen an den Vorlagen vorgenommen, die du in Real Cookie "
6632
+ "Banner verwendest. Du solltest die vorgeschlagenen Änderungen überprüfen und "
6633
+ "deine Services gegebenenfalls anpassen, um rechtskonform zu bleiben. Die "
6634
+ "folgenden Services sind betroffen:"
6635
 
6636
  #: inc/presets/UpdateNotice.php:1
6637
  msgid "Service (Cookie)"
6638
  msgstr "Service (Cookie)"
6639
 
6640
  #: inc/presets/UpdateNotice.php:1
6641
+ msgid "Review changes"
6642
+ msgstr "Änderungen überprüfen"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6643
 
6644
  #: inc/presets/UpdateNotice.php:1
6645
  msgid "Dismiss this notice"
6700
  msgstr "Service-Gruppe"
6701
 
6702
  #: inc/settings/CookieGroup.php:1
6703
+ msgctxt "legal-text"
6704
  msgid ""
6705
  "Essential services are required for the basic functionality of the website. "
6706
  "They only contain technically necessary services. These services cannot be "
6711
  "Services kann nicht widersprochen werden."
6712
 
6713
  #: inc/settings/CookieGroup.php:1
6714
+ msgctxt "legal-text"
6715
  msgid ""
6716
  "Functional services are necessary to provide features beyond the essential "
6717
+ "functionality such as prettier fonts, video playback or interactive web 2.0 "
6718
  "features. Content from e.g. video platforms and social media platforms are "
6719
  "blocked by default, and can be consented to. If the service is agreed to, "
6720
  "this content is loaded automatically without further manual consent."
6727
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6728
 
6729
  #: inc/settings/CookieGroup.php:1
6730
+ msgctxt "legal-text"
6731
  msgid ""
6732
  "Statistics services are needed to collect pseudonymous data about the "
6733
  "visitors of the website. The data enables us to understand visitors better "
6738
  "besser zu verstehen und die Website zu optimieren."
6739
 
6740
  #: inc/settings/CookieGroup.php:1
6741
+ msgctxt "legal-text"
6742
  msgid ""
6743
  "Marketing services are used by us and third parties to track the behaviour "
6744
  "of individual visitors (across multiple pages), analyse the data collected "
6746
  "us to track visitors across multiple websites."
6747
  msgstr ""
6748
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6749
+ "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und "
6750
+ "z.B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6751
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6752
 
6753
  #: inc/settings/Revision.php:1
6892
 
6893
  #: inc/view/checklist/SaveSettings.php:1
6894
  msgid ""
6895
+ "Decide which features should be enabled in your cookie banner depending on "
6896
+ "your needs."
6897
  msgstr ""
6898
+ "Entscheide, welche Features in deinem Cookie Banner nach deinen "
6899
+ "Anforderungen aktiviert sein sollen."
6900
 
6901
  #: inc/view/checklist/SaveSettings.php:1
6902
  msgid "Manage settings"
6909
  #: inc/view/checklist/Scanner.php:1
6910
  msgid ""
6911
  "Scan your website to identify services used and external URLs that may "
6912
+ "transmit personal data and/or set cookies."
6913
  msgstr ""
6914
  "Scanne deine Website, um genutzte Services und externe URLs zu "
6915
+ "identifizieren, die persönliche Daten übertragen und/oder Cookies setzen "
6916
+ "können."
6917
 
6918
  #: inc/view/checklist/Scanner.php:1
6919
  msgid "Open scanner"
6927
  msgid ""
6928
  "Your website visitors must be able to view their consent history, change "
6929
  "their consent, or withdraw their consent at any time. This must be as easy "
6930
+ "as giving consent. Therefore, the legal links must be included on every "
6931
  "subpage of the website (e.g. in the footer)."
6932
  msgstr ""
6933
  "Deine Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6934
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6935
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6936
+ "Deshalb müssen die rechtlichen Links auf jeder Unterseite der Website zu "
6937
+ "finden sein (z. B. im Footer/Fußzeile)."
6938
 
6939
  #: inc/view/checklist/Shortcode.php:1
6940
  msgid "Create legal links"
6941
+ msgstr "Rechtliche Links erstellen"
6942
 
6943
  #: inc/view/checklist/ViewStats.php:1
6944
  msgid "Check out statistics about consents"
7014
  msgid "Enabled"
7015
  msgstr "Aktiviert"
7016
 
7017
+ #: inc/view/customize/banner/BasicLayout.php:1
7018
+ msgid ""
7019
+ "The animation you choose will have a negative impact on your PageSpeed "
7020
+ "Insights score. Please choose an animation where the cookie banner is "
7021
+ "animated from outside the website to achieve the best website loading speed!"
7022
+ msgstr ""
7023
+ "Die von dir gewählte Animation hat einen negativen Einfluss auf deinen "
7024
+ "PageSpeed Insights Score. Bitte wähle eine Animation, bei der das Cookie "
7025
+ "Banner von außerhalb der Website animiert wird, um die beste "
7026
+ "Ladegeschwindigkeit der Website zu erreichen!"
7027
+
7028
  #: inc/view/customize/banner/BasicLayout.php:1
7029
  msgid "Basic Layout"
7030
  msgstr "Grundlegendes Layout"
7119
  msgid "Animation on display"
7120
  msgstr "Animation beim Einblenden"
7121
 
7122
+ #: inc/view/customize/banner/BasicLayout.php:1
7123
+ #: inc/view/customize/banner/BodyDesign.php:1
7124
+ #: inc/view/customize/banner/individual/SaveButton.php:1
7125
+ msgid "Type"
7126
+ msgstr "Typ"
7127
+
7128
+ #: inc/view/customize/banner/BasicLayout.php:1
7129
+ msgid "Duration"
7130
+ msgstr "Dauer"
7131
+
7132
  #: inc/view/customize/banner/BasicLayout.php:1
7133
  msgid "Animation only on mobile devices"
7134
  msgstr "Animation nur auf mobilen Geräten"
7335
  msgid "Use the same stylings as for \"Accept all\""
7336
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7337
 
7338
+ #. translators:
7339
  #: inc/view/customize/banner/BodyDesign.php:1
7340
  #: inc/view/customize/banner/individual/SaveButton.php:1
7341
  msgid ""
7342
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7343
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7344
  "way for your visitors to express their choice (agree to everything, continue "
7345
  "without consent or an indivudual decision). Equivalent does not necessarily "
7346
  "mean that the buttons/links must look exactly the same. However, you should "
7347
  "be safest if they look exactly the same."
7348
  msgstr ""
7349
+ "Gemäß der <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7350
+ "Datenschutzbehörden</a> muss es für deine Besucher eine gleichwertige "
7351
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7352
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
 
7353
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7354
  "aussehen müssen. Am sichersten bist du jedoch, wenn sie genau gleich "
7355
  "aussehen."
7455
  msgstr "Einwilligungs-Optionen"
7456
 
7457
  #: inc/view/customize/banner/Decision.php:1
 
7458
  msgid "Accept all"
7459
  msgstr "Alle akzeptieren"
7460
 
7461
  #. translators:
7462
  #: inc/view/customize/banner/Decision.php:1
7463
  msgid ""
7464
+ "According to the %1$sGDPR recital 32%2$s, you are not allowed to pre-select "
7465
+ "services in the form of pre-selected checkboxes for the visitor. However, "
7466
+ "the GDPR and ePrivacy Directive do not prohibit the use of a button to agree "
7467
+ "to all services, if there is also a button to agree only to the essential "
7468
+ "services or to make a user-defined selection."
7469
  msgstr ""
7470
+ "Gemäß der %1$sDSGVO Erwägungsgrund 32%2$s darfst du keine Services in Form "
7471
+ "von vorselektierten Checkboxen für den Besucher auswählen. Die DSGVO und die "
7472
+ "ePrivacy-Richtlinie verbieten jedoch nicht die Verwendung eines Buttons zur "
7473
+ "Einwilligung in alle Services, wenn es auch einen Button gibt, um nur den "
7474
+ "essenziellen Services zuzustimmen oder um eine benutzerdefinierte Auswahl zu "
7475
+ "treffen."
7476
+
7477
+ #: inc/view/customize/banner/Decision.php:1
7478
+ msgid "https://gdpr-info.eu/recitals/no-32/"
7479
+ msgstr "https://dsgvo-gesetz.de/erwaegungsgruende/nr-32/"
7480
 
7481
  #: inc/view/customize/banner/Decision.php:1
7482
  #: inc/view/customize/banner/individual/SaveButton.php:1
7490
  msgstr "Link"
7491
 
7492
  #: inc/view/customize/banner/Decision.php:1
 
7493
  msgid "Continue without consent"
7494
  msgstr "Weiter ohne Einwilligung"
7495
 
7522
  "Einwilligung\"."
7523
 
7524
  #: inc/view/customize/banner/Decision.php:1
 
7525
  msgid "Individual privacy preferences"
7526
  msgstr "Individuelle Privatsphäre-Einstellungen"
7527
 
7528
  #: inc/view/customize/banner/Decision.php:1
7529
  msgid ""
7530
+ "According to the GDPR and the ePrivacy Directive, the user must be free to "
7531
+ "choose which services to use and be informed about their purpose before "
7532
+ "giving consent. Therefore, the user must be given the opportunity to access "
7533
+ "the page with the individual privacy settings."
7534
  msgstr ""
7535
+ "Gemäß der DSGVO und der ePrivacy-Richtlinie muss der Nutzer frei wählen "
7536
+ "können, welche Services genutzt werden sollen und über deren Zweck "
7537
+ "informiert werden, bevor er seine Einwilligung gibt. Daher muss dem Nutzer "
7538
+ "die Möglichkeit gegeben werden, die Seite mit den individuellen Privatsphäre-"
7539
+ "Einstellungen aufzurufen."
7540
 
7541
  #: inc/view/customize/banner/Decision.php:1
7542
  msgid "Order of the buttons"
7543
  msgstr "Reihenfolge der Buttons"
7544
 
7545
+ #. translators:
7546
  #: inc/view/customize/banner/Decision.php:1
7547
  msgid ""
7548
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7549
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7550
  "way for your visitors to express their choice (agree to everything, continue "
7551
  "without consent or an indivudual decision). Which order of options is "
7552
  "considered equivalent is unclear. Therefore, the options should be arranged "
7553
  "according to the cultural conditions of the main target country."
7554
  msgstr ""
7555
+ "Gemäß der <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7556
+ "Datenschutzbehörden</a> muss es für deine Besucher eine gleichwertige "
7557
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7558
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). Welche "
7559
+ "Reihenfolge der Optionen als gleichwertig gilt, ist unklar. Daher sollten "
7560
+ "die Optionen nach den kulturellen Gegebenheiten des Hauptziellandes "
 
7561
  "angeordnet werden."
7562
 
7563
  #: inc/view/customize/banner/Decision.php:1
7589
  msgstr ""
7590
  "Text von “Alle akzeptieren” ändert sich, wenn der Benutzer die Auswahl ändert"
7591
 
7592
+ #: inc/view/customize/banner/Decision.php:1
7593
+ #: inc/view/customize/banner/Texts.php:1
7594
+ msgctxt "legal-text"
7595
+ msgid "Accept all"
7596
+ msgstr "Alle akzeptieren"
7597
+
7598
+ #: inc/view/customize/banner/Decision.php:1
7599
+ #: inc/view/customize/banner/Texts.php:1
7600
+ msgctxt "legal-text"
7601
+ msgid "Continue without consent"
7602
+ msgstr "Weiter ohne Einwilligung"
7603
+
7604
+ #: inc/view/customize/banner/Decision.php:1
7605
+ #: inc/view/customize/banner/individual/Texts.php:1
7606
+ msgctxt "legal-text"
7607
+ msgid "Individual privacy preferences"
7608
+ msgstr "Individuelle Privatsphäre-Einstellungen"
7609
+
7610
  #: inc/view/customize/banner/Decision.php:1
7611
  #: inc/view/customize/banner/individual/Texts.php:1
7612
+ msgctxt "legal-text"
7613
  msgid "Save custom choices"
7614
  msgstr "Individuelle Auswahlen speichern"
7615
 
7853
 
7854
  #: inc/view/customize/banner/individual/Texts.php:1
7855
  #: inc/view/customize/banner/Texts.php:1
7856
+ msgctxt "legal-text"
7857
  msgid ""
7858
  "We use cookies and similar technologies on our website and process your "
7859
  "personal data (e.g. IP address), for example, to personalize content and "
7872
 
7873
  #: inc/view/customize/banner/individual/Texts.php:1
7874
  #: inc/view/customize/banner/Texts.php:1
7875
+ msgctxt "legal-text"
7876
  msgid ""
7877
  "The data processing may take place with your consent or on the basis of a "
7878
  "legitimate interest, which you can object to in the privacy settings. You "
7888
  "{{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7889
 
7890
  #: inc/view/customize/banner/individual/Texts.php:1
7891
+ msgctxt "legal-text"
7892
  msgid ""
7893
  "Below you will find an overview of all services used by this website. You "
7894
  "can view detailed information about each service and agree to them "
7900
  "Gebrauch machen."
7901
 
7902
  #: inc/view/customize/banner/individual/Texts.php:1
7903
+ msgctxt "legal-text"
7904
  msgid "Show service information"
7905
  msgstr "Service-Informationen anzeigen"
7906
 
7907
  #: inc/view/customize/banner/individual/Texts.php:1
7908
+ msgctxt "legal-text"
7909
  msgid "Hide service information"
7910
  msgstr "Service-Informationen ausblenden"
7911
 
8068
  msgstr "“Powered by”-Linktext"
8069
 
8070
  #: inc/view/customize/banner/Texts.php:1
8071
+ msgid "US data processing"
8072
+ msgstr "US-Datenverarbeitung"
 
 
 
 
8073
 
8074
  #: inc/view/customize/banner/Texts.php:1
8075
  msgid "Data processing in the USA"
8141
  msgid "Additional info below the \"Load content\" button"
8142
  msgstr "Zusatzinfo unterhalb dem \"Inhalt laden”-Button"
8143
 
8144
+ #. translators:
8145
  #: inc/view/customize/banner/Texts.php:1
8146
  msgid ""
8147
  "The standard texts in the cookie banner are worded carefully. If you "
8148
  "customize them, make sure they are not misleading or riveting. According to "
8149
+ "the <a href=\"%s\" target=\"_blank\">Data Protection Commissioner of Baden-"
8150
+ "Württeberg, Germany (Section B, 1.3.7.; German)</a>, for example, a headline "
8151
+ "\"We love cookies\" is already misleading."
 
8152
  msgstr ""
8153
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn du sie "
8154
  "anpasst, achte darauf, dass sie nicht irreführend oder vernietlichend sind. "
8155
+ "Nach dem <a href=\"%s\" target=\"_blank\">Datenschutzbeauftragen von Baden-"
8156
+ "Württeberg, Deutschland (Abschnitt B, 1.3.7.)</a> ist z.B. die Überschrift "
8157
+ "\"Wir lieben Cookies\" bereits irreführend."
8158
+
8159
+ #: inc/view/customize/banner/Texts.php:1
8160
+ msgid ""
8161
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8162
+ "#13_informiertheit)"
8163
+ msgstr ""
8164
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8165
+ "#13_informiertheit)"
8166
 
8167
  #. translators:
8168
  #: inc/view/customize/banner/Texts.php:1
8203
  "%2$s, um sie zu aktivieren."
8204
 
8205
  #: inc/view/customize/banner/Texts.php:1
8206
+ msgctxt "legal-text"
8207
  msgid "Privacy preferences"
8208
  msgstr "Privatsphäre-Einstellungen"
8209
 
8210
  #: inc/view/customize/banner/Texts.php:1
8211
+ msgctxt "legal-text"
8212
  msgid "Set privacy settings individually"
8213
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
8214
 
8215
  #: inc/view/customize/banner/Texts.php:1
8216
+ msgctxt "legal-text"
8217
  msgid ""
8218
  "Some services process personal data in the USA. By consenting to the use of "
8219
  "these services, you also consent to the processing of your data in the USA "
8233
  "Möglichkeit eines Rechtsbehelfs."
8234
 
8235
  #: inc/view/customize/banner/Texts.php:1
8236
+ msgctxt "legal-text"
8237
  msgid ""
8238
  "You are under 16 years old? Then you cannot consent to optional services. "
8239
  "Ask your parents or legal guardians to agree to these services with you."
8243
  "dir in diese Services einzuwilligen."
8244
 
8245
  #: inc/view/customize/banner/Texts.php:1
8246
+ msgctxt "legal-text"
8247
  msgid ""
8248
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
8249
  "to this service to view this content. Please ask your parents or guardians "
8254
  "Erziehungsberechtigten, dem Service mit dir zuzustimmen!"
8255
 
8256
  #: inc/view/customize/banner/Texts.php:1
8257
+ msgctxt "legal-text"
8258
  msgid ""
8259
  "By accepting all services, you allow {{services}} to be loaded. These "
8260
  "services are divided into groups {{serviceGroups}} according to their "
8261
  "purpose (belonging marked with superscript numbers)."
8262
  msgstr ""
8263
  "Wenn du alle Services akzeptierst, erlaubst du, dass {{services}} geladen "
8264
+ "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt ("
8265
+ "Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
8266
 
8267
  #: inc/view/customize/banner/Texts.php:1
8268
+ msgctxt "legal-text"
8269
  msgid "Your consent is also applicable on {{websites}}."
8270
  msgstr "Deine Einwilligung gilt auch auf {{websites}}."
8271
 
8272
  #. translators:
8273
  #: inc/view/customize/banner/Texts.php:1
8274
+ msgctxt "legal-text"
8275
  msgid "{{name}} blocked due to privacy settings"
8276
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
8277
 
8278
  #. translators:
8279
  #: inc/view/customize/banner/Texts.php:1
8280
+ msgctxt "legal-text"
8281
  msgid "Show all services you still need to agree to"
8282
  msgstr "Zeige alle Services, denen du noch zustimmen musst"
8283
 
8284
  #: inc/view/customize/banner/Texts.php:1
8285
+ msgctxt "legal-text"
8286
  msgid "Accept required services and load content"
8287
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
8288
 
8289
  #: inc/view/customize/banner/Texts.php:1
8290
+ msgctxt "legal-text"
8291
  msgid ""
8292
  "Loading the blocked content will adjust your privacy settings. Content from "
8293
  "this service will not be blocked in the future. You have the right to revoke "
8327
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8328
 
8329
  #: inc/view/navmenu/NavMenuLinks.php:1
8330
+ msgctxt "legal-text"
8331
  msgid "Change privacy settings"
8332
  msgstr "Privatsphäre-Einstellungen ändern"
8333
 
8334
  #: inc/view/navmenu/NavMenuLinks.php:1
8335
+ msgctxt "legal-text"
8336
  msgid "Privacy settings history"
8337
  msgstr "Historie der Privatsphäre-Einstellungen"
8338
 
8339
  #: inc/view/navmenu/NavMenuLinks.php:1
8340
+ msgctxt "legal-text"
8341
  msgid "Revoke consents"
8342
  msgstr "Einwilligungen widerrufen"
8343
 
8344
  #: inc/view/navmenu/NavMenuLinks.php:1
8345
+ msgctxt "legal-text"
8346
  msgid ""
8347
  "You have successfully revoked the consent. The page will be reloaded now."
8348
  msgstr ""
8392
  msgid "Please provide a `type` attribute in your shortcode. Allowed: %s!"
8393
  msgstr "Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: %s!"
8394
 
8395
+ #~ msgid ""
8396
+ #~ "It seems that since the last update of <strong>Real Cookies Banner</"
8397
+ #~ "strong> some templates have been updated. Please check your following "
8398
+ #~ "services to make sure they are up to date:"
8399
+ #~ msgstr ""
8400
+ #~ "Es scheint, dass seit dem letzten Update von <strong>Real Cookies Banner</"
8401
+ #~ "strong> einige Vorlagen aktualisiert worden sind. Bitte überprüfe deine "
8402
+ #~ "folgenden Services, um sicherzustellen, dass sie auf dem neuesten Stand "
8403
+ #~ "sind:"
8404
+
8405
+ #~ msgid "Edit"
8406
+ #~ msgstr "Bearbeiten"
8407
+
8408
+ #~ msgid "Create new from template"
8409
+ #~ msgstr "Aus Vorlage erstellen"
8410
+
8411
+ #~ msgid ""
8412
+ #~ "The easiest way to apply the changes is to delete the service and all "
8413
+ #~ "connected content blockers in Real Cookie Banner and create it again from "
8414
+ #~ "the service templates."
8415
+ #~ msgstr ""
8416
+ #~ "Am einfachsten kannst du die Änderungen übernehmen, indem du den Service "
8417
+ #~ "und alle damit verbundenen Content Blocker in Real Cookie Banner löschst "
8418
+ #~ "und ihn aus den Service-Vorlagen neu erstellst."
8419
+
8420
+ #~ msgid ""
8421
+ #~ "Define the behavior of the cookie banner and hide the cookie banner both "
8422
+ #~ "in the imprint and privacy policy (required by law)."
8423
+ #~ msgstr ""
8424
+ #~ "Bestimme das Verhalten des Cookie Banners und blende es sowohl im "
8425
+ #~ "Impressum als auch in der Datenschutzerklärung aus (gesetzlich "
8426
+ #~ "vorgeschrieben)."
8427
+
8428
+ #~ msgid ""
8429
+ #~ "Use <code>{{services}}</code> as a placeholder to show all services that "
8430
+ #~ "process data in the USA."
8431
+ #~ msgstr ""
8432
+ #~ "Verwende <code>{{services}}</code> als Platzhalter, um alle Services "
8433
+ #~ "anzuzeigen, die Daten in den USA verarbeiten."
8434
+
8435
  #~ msgid ""
8436
  #~ "An opt-in script is not required, as this service is probably already "
8437
  #~ "integrated via e.g. your theme. In addition to this service, please "
languages/real-cookie-banner-de_DE.mo CHANGED
Binary file
languages/real-cookie-banner-de_DE.po CHANGED
@@ -2,16 +2,16 @@ msgid ""
2
  msgstr ""
3
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
4
  "POT-Creation-Date: n/a\n"
5
- "PO-Revision-Date: 2022-06-13 06:58+0000\n"
6
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
7
- "Language-Team: German <https://translate.devowl.io/projects/wordpress-real-"
8
- "cookie-banner-backend-php/develop/de/>\n"
9
  "Language: de_DE\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
- "X-Generator: Weblate 4.8\n"
15
 
16
  #. Plugin Name of the plugin
17
  msgid "Real Cookie Banner"
@@ -172,22 +172,27 @@ msgstr ""
172
  "heruntergeladen, wodurch weitere rechtliche Probleme vermieden werden."
173
 
174
  #: inc/Assets.php:1
 
175
  msgid "Use on legal basis of"
176
  msgstr "Verwendung auf gesetzlicher Grundlage von"
177
 
178
  #: inc/Assets.php:1
 
179
  msgid "Legitimate interest"
180
  msgstr "Berechtigtes Interesse"
181
 
182
  #: inc/Assets.php:1
 
183
  msgid "Compliance with a legal obligation"
184
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
185
 
186
  #: inc/Assets.php:1
 
187
  msgid "Consent"
188
  msgstr "Einwilligung"
189
 
190
  #: inc/Assets.php:1
 
191
  msgid ""
192
  "We have recognized that you are a crawler/bot. Only natural persons must "
193
  "consent to cookies and processing of personal data. Therefore, the link has "
@@ -198,18 +203,22 @@ msgstr ""
198
  "einwilligen. Daher hat der Link für dich keine Funktion."
199
 
200
  #: inc/Assets.php:1
 
201
  msgid "Technical cookie definition"
202
  msgstr "Technische Cookie-Definition"
203
 
204
  #: inc/Assets.php:1
 
205
  msgid "Uses cookies"
206
  msgstr "Verwendete Cookies"
207
 
208
  #: inc/Assets.php:1
 
209
  msgid "Cookie refresh"
210
  msgstr "Cookie-Auffrischung"
211
 
212
  #: inc/Assets.php:1
 
213
  msgid ""
214
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
215
  msgstr ""
@@ -217,10 +226,12 @@ msgstr ""
217
  "IndexDB, etc.)"
218
 
219
  #: inc/Assets.php:1
 
220
  msgid "Host"
221
  msgstr "Host"
222
 
223
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
 
224
  msgid "Duration"
225
  msgstr "Dauer"
226
 
@@ -249,28 +260,32 @@ msgid "year(s)"
249
  msgstr "Jahr(e)"
250
 
251
  #: inc/Assets.php:1
 
252
  msgid "No expiration"
253
  msgstr "Kein Ablauf"
254
 
255
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
256
- #: inc/view/customize/banner/BodyDesign.php:1
257
- #: inc/view/customize/banner/individual/SaveButton.php:1
258
  msgid "Type"
259
  msgstr "Typ"
260
 
261
  #: inc/Assets.php:1
 
262
  msgid "Purpose"
263
  msgstr "Zweck"
264
 
265
  #: inc/Assets.php:1
 
266
  msgid "History of your privacy settings"
267
  msgstr "Privatsphäre-Einstellungen: Historie"
268
 
269
  #: inc/Assets.php:1
 
270
  msgid "Show consent from"
271
  msgstr "Einwilligungen anzeigen vom"
272
 
273
  #: inc/Assets.php:1
 
274
  msgid "Not yet consented to"
275
  msgstr "Noch nicht eingewilligt"
276
 
@@ -283,20 +298,24 @@ msgid "Close without saving"
283
  msgstr "Schließen ohne Speichern"
284
 
285
  #: inc/Assets.php:1
 
286
  msgid "Provider"
287
  msgstr "Anbieter"
288
 
289
  #: inc/Assets.php:1
 
290
  msgid "Privacy Policy"
291
  msgstr "Datenschutzerklärung"
292
 
293
  #. translators:
294
  #: inc/Assets.php:1
 
295
  msgid "and %d more"
296
  msgstr "und %d mehr"
297
 
298
  #. translators:
299
- #: inc/Assets.php:1 inc/view/customize/banner/Texts.php:1
 
300
  msgid "US data processing"
301
  msgstr "US-Datenverarbeitung"
302
 
@@ -690,46 +709,81 @@ msgstr "Rechtliche Anpassungen von Texten und Design im Cookie Banner"
690
  msgid ""
691
  "In recent months, more clarity has been created about what consent "
692
  "management on websites should look like - and what it shouldn't. In "
693
- "particular, through the <a href=\"https://www.gesetze-im-internet.de/ttdsg/"
694
- "\" target=\"_blank\">TTDSG</a> (Telecommunications Telemedia Data Protection "
695
- "Act; Germany) and <a href=\"https://www.datenschutzkonferenz-online.de/media/"
696
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Guidance of the Conference "
697
- "of Independent Data Protection Authorities for cookie banners</a> "
698
- "(coordinated legal interpretation of all German data protection authorities; "
699
- "in German), there are now clearer rules that further interpret or complement "
700
- "the EU-wide applicable <a href=\"https://eur-lex.europa.eu/legal-content/EN/"
701
- "TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy Directive</a> and "
702
- "<a href=\"https://gdpr-info.eu/\" target=\"_blank\">GDPR</a>. Furthermore, "
703
- "there were important decisions such as the evaluation of <a href=\"https://"
704
- "www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
705
- "n-21-2022-english.pdf\" target=\"_blank\">TCF by ADP (Belgium)</a>, the <a "
706
- "href=\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
707
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics decision by "
708
- "dsb (Austria)</a> and the <a href=\"https://www.cnil.fr/sites/default/files/"
709
- "atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics.pdf\" "
710
- "target=\"_blank\">position on Google Analytics by CNIL</a>."
711
  msgstr ""
712
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
713
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
714
- "aussehen sollte. Insbesondere durch das <a href=\"https://www.gesetze-im-"
715
- "internet.de/ttdsg/\" target=\"_blank\">TTDSG</a> (Telekommunikation-"
716
- "Telemedien-Datenschutz-Gesetz) und die <a href=\"https://www."
717
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
718
- "\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
719
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
720
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
721
- "Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
722
- "legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
723
- "Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
724
- "\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
725
- "Entscheidungen wie die Bewertung von <a href=\"https://www."
726
- "autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
727
- "english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
728
- "\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
729
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
730
- "von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
731
- "files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
732
- "pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
733
 
734
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
735
  msgid ""
@@ -790,15 +844,13 @@ msgstr "Rechtliche Links auf jeder Unterseite platzieren"
790
  #. translators:
791
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
792
  msgid ""
793
- "In accordance with the requirements of the &quot;<a href=\"https://www."
794
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
795
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
796
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
797
  "and revoke consent must be directly accessible on every sub-page of your "
798
  "website."
799
  msgstr ""
800
- "Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
801
- "online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
802
  "\"Orientierungshilfe der Konferenz der unabhängigen "
803
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
804
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
@@ -941,17 +993,21 @@ msgstr "pro-modal/de/mobile-optimization.png"
941
  msgid "Updates in v3.0: You should act to be safe!"
942
  msgstr "Updates in v3.0: Du solltest handeln, um sicher zu sein!"
943
 
 
944
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
945
  msgid ""
946
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
947
  "have implemented, among other things, current legal adjustments. Read more "
948
- "about the changes in our <a href=\"https://devowl.io/2022/real-cookie-"
949
- "banner-3-0/\" target=\"_blank\">blog post</a>."
950
  msgstr ""
951
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
952
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
953
- "Änderungen erfährst du in unserem <a href=\"https://devowl.io/de/2022/real-"
954
- "cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
 
 
 
 
955
 
956
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
957
  msgid ""
@@ -1009,14 +1065,30 @@ msgstr ""
1009
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1010
  "Vorgehen für deinen Einzelfall zu klären."
1011
 
 
 
 
 
1012
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1013
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1014
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1015
 
 
 
 
 
 
 
1016
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1017
  msgid "Statement of the IAB Europe (English)"
1018
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1019
 
 
 
 
 
 
 
1020
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1021
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1022
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
@@ -1395,6 +1467,10 @@ msgstr ""
1395
  "\"_blank\">%3$s</a>. In diesem Fall musst du auch den \"Code bei Opt-in "
1396
  "ausführen\" entfernen."
1397
 
 
 
 
 
1398
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1399
  msgid ""
1400
  "AddThis allows providing links and buttons for sharing content on a variety "
@@ -1448,21 +1524,26 @@ msgstr ""
1448
  "Benutzer eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1449
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1450
 
 
1451
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1452
  msgid ""
1453
- "This template assumes that you use the <a href=\"https://wordpress.org/"
1454
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress plugin</a>. The "
1455
- "template is not suitable to add Facebook Like, Twitter Tweet or Pinterest "
1456
- "Pin button in AddToAny. If you want to use any of these buttons, please use "
1457
- "it without AddToAny and additionally create the cookies and content blockers "
1458
- "for the respective service."
1459
  msgstr ""
1460
- "Diese Vorlage setzt voraus, dass du das <a href=\"https://wordpress.org/"
1461
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress Plugin</a> "
1462
- "verwendest. Die Vorlage ist nicht geeignet, um Facebook Like, Twitter Tweet "
1463
- "oder Pinterest Pin Button in AddToAny einzufügen. Wenn du einen dieser "
1464
- "Buttons verwenden möchtest, verwende ihn bitte ohne AddToAny und erstelle "
1465
- "zusätzlich die Cookies und Content Blocker für den jeweiligen Dienst."
 
 
 
 
1466
 
1467
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1468
  msgid ""
@@ -1483,18 +1564,22 @@ msgstr ""
1483
  "merken, wie oft welche Werbeplatzierung bereits angezeigt wurde und wie oft "
1484
  "die jeweilige Werbung angeklickt wurde."
1485
 
 
1486
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1487
  msgid ""
1488
- "Ad Insert plays out ads even without consent. You should <a href=\"https://"
1489
- "adinserter.pro/faq/gdpr-compliance-cookies-consent\" target=\"_blank"
1490
- "\">obtain consent for the ads via the TCF v2.0 or newer standard</a>. Only "
1491
- "some features of the plugin require you to obtain consent for Ad Inserter."
1492
  msgstr ""
1493
- "Ad Insert spielt Werbung auch ohne Einwilligung aus. Du solltest <a href="
1494
- "\"https://adinserter.pro/faq/gdpr-compliance-cookies-consent\" target="
1495
- "\"_blank\">die Einwilligung für die Anzeigen über den TCF v2.0 oder neueren "
1496
- "Standard einholen</a>. Nur für einige Features des Plugins musst du die "
1497
- "Einwilligung für Ad Inserter einholen."
 
 
 
1498
 
1499
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1500
  msgid ""
@@ -1512,17 +1597,20 @@ msgstr ""
1512
  "deaktiviert hast, da dieser Teil des Adblockers Daten an Google und Media."
1513
  "net überträgt, bevor du deine Einwilligung dazu hast."
1514
 
 
1515
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1516
  msgid ""
1517
- "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"https://"
1518
- "adinserter.pro/documentation/ad-impression-and-click-limiting\" target="
1519
- "\"_blank\">impression and click limits</a> feature of Ad Inserter Pro. The "
1520
- "duration of the cookie depends on the settings of the feature."
1521
  msgstr ""
1522
- "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn du das <a href=\"https://"
1523
- "adinserter.pro/documentation/ad-impression-and-click-limiting\" target="
1524
- "\"_blank\">Impressions- und Klick-Limit</a> Feature von Ad Inserter Pro "
1525
- "nutzt. Die Dauer des Cookies hängt von den Einstellungen des Features ab."
 
 
 
1526
 
1527
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1528
  msgid ""
@@ -1750,13 +1838,18 @@ msgstr ""
1750
  msgid "Awin Publisher ID"
1751
  msgstr "Awin-Publisher-ID"
1752
 
 
1753
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1754
  msgid ""
1755
- "You find your publisher ID in the <a href=\"https://ui.awin.com/user\" "
1756
- "target=\"_blank\">account overview</a> directly blow your account name."
1757
  msgstr ""
1758
- "Du findest deine Publisher ID in der <a href=\"https://ui.awin.com/user\" "
1759
- "target=\"_blank\">Account Übersicht</a> direkt unter deinem Benutzernamen."
 
 
 
 
1760
 
1761
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1762
  msgid ""
@@ -1812,6 +1905,10 @@ msgstr ""
1812
  "Auf <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> Du unter Tools > "
1813
  "Conversion tracking > UET tag findest Du Deinen UET-Tag in der Tag-Tabelle."
1814
 
 
 
 
 
1815
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1816
  msgid ""
1817
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
@@ -2264,15 +2361,18 @@ msgstr "https://www.etracker.com/datenschutzerklaerung/"
2264
  msgid "etracker Account Key"
2265
  msgstr "etracker Account Key"
2266
 
 
2267
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2268
  msgid ""
2269
- "You can find your etracker account key under <a href=\"https://newapp."
2270
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2271
- "info > Settings> Account</a> of your etracker account."
2272
  msgstr ""
2273
- "Du findest deinen etracker Account Key unter <a href=\"https://newapp."
2274
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2275
- "Info > Einstellungen > Account</a> deines etracker Accounts."
 
 
 
2276
 
2277
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2278
  msgid ""
@@ -2289,20 +2389,26 @@ msgstr ""
2289
  "Tracking widersprechen, indem er diesen Service in deinem Cookie Banner "
2290
  "deaktiviert."
2291
 
 
2292
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2293
  msgid ""
2294
  "We also recommend that you deactivate the non-aggregated reporting via the "
2295
- "<a href=\"https://newapp.etracker.com/\" target=\"_blank\">dashboard</a> "
2296
- "under <i>menu (top left) > Account-ID > Settings > Privacy > Consent-free "
2297
- "tracking cookies in accordance with CNIL guidelines</i> to ensure that there "
2298
- "is definitely no personal reference for the collected data."
2299
- msgstr ""
2300
- "Wir empfehlen dir zusätzlich über das <a href=\"https://newapp.etracker.com/"
2301
- "#/report/accountSettings/accountKey\" target=\"_blank\">Dashboard</a> unter "
2302
- "<i>Menü (obene links) > Account-ID > Einstellungen > Datenschutz > "
2303
- "Einwilligungs-freie Tracking Cookies gemäß Anforderungen der CNIL</i> die "
2304
- "nicht aggregierten Reportings zu deaktivieren, um sicherzustellen, dass "
2305
- "definitiv kein Personenbezug bei den erhobenen Daten besteht."
 
 
 
 
 
2306
 
2307
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2308
  msgid "etracker: enhanced tracking"
@@ -2350,22 +2456,22 @@ msgstr ""
2350
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2351
  "anreichert."
2352
 
 
2353
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2354
  msgid ""
2355
  "In order for the consent to be taken into account, you must activate the "
2356
- "toggle \"Opt-In active\" via the <a href=\"https://newapp.etracker.com/\" "
2357
- "target=\"_blank\">dashboard</a> under <i>menu (top left) > Account-ID > "
2358
- "Settings > Privacy > Tracking Opt-In and agreement</i>, but then switch to "
2359
- "\"own Opt-In\" so that etracker does not display its own consent dialog, but "
2360
- "instead uses the consent collected by Real Cookie Banner."
2361
- msgstr ""
2362
- "Damit die Einwilligung berücksichtigt wird, musst du via <a href=\"https://"
2363
- "newapp.etracker.com/\" target=\"_blank\">Dashboard</a> unter <i>Menü (oben "
2364
- "links) > Account-ID > Einstellungen > Datenschutz > Tracking Opt-In und "
2365
- "Zustimmung</i> den Toggle \"Opt-In aktiv\" aktivieren und anschließend auf "
2366
- "\"eigenes Opt-In\" umstellen. Damit wird etracker keinen eigenen "
2367
- "Einwilligungsdialog anzeigen, sondern die Einwilligung, erhoben von Real "
2368
- "Cookie Banner, verwenden."
2369
 
2370
  #. translators:
2371
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
@@ -2673,20 +2779,20 @@ msgstr ""
2673
  "können mit den Daten der auf facebook.com registrierten Benutzer verknüpft "
2674
  "werden."
2675
 
 
2676
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2677
  msgid ""
2678
- "You can use Facebook's <a href=\"https://developers.facebook.com/docs/"
2679
- "plugins/embedded-posts/\" target=\"_blank\">embedded post generator</a> to "
2680
- "generate a HTML code to embed post with the Facebook JavaScript SDK. Loading "
2681
- "the JavaScript SDK is part of the opt-in code. All you need to do is place "
2682
- "the HTML div and blockqoute elements where you want the embedded post to be "
2683
- "visible on your site. If you use Facebook post as Iframe embeeds, please "
2684
- "create in addition a content blocker for Facebook Posts to block loading of "
2685
- "the content before you have the consent of the user."
2686
- msgstr ""
2687
- "Du kannst den <a href=\"https://developers.facebook.com/docs/plugins/"
2688
- "embedded-posts/?locale=de_DE\" target=\"_blank\">Post-Generator von Facebook "
2689
- "</a> verwenden, um einen HTML-Code zum Einbetten von Posts mit dem Facebook "
2690
  "JavaScript SDK zu generieren. Das Laden des JavaScript-SDK ist Teil des Opt-"
2691
  "in Codes. Alles was du tun musst, ist das HTML-Div und blockqoute-Element "
2692
  "dort zu platzieren, wo der eingebettete Beitrag auf deiner Seite sichtbar "
@@ -2694,6 +2800,10 @@ msgstr ""
2694
  "bitte zusätzlich einen Inhaltsblocker für Facebook, um das Laden ihres "
2695
  "Inhalts zu blockieren, bevor du die Einwilligung des Nutzers hast."
2696
 
 
 
 
 
2697
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2698
  msgid ""
2699
  "Facebook Share button allows users to share a link directly on Facebook. The "
@@ -2894,17 +3004,21 @@ msgstr "Google Ads Conversation Tracking-ID"
2894
  msgid "Please fill in a valid tracking ID!"
2895
  msgstr "Bitte gib eine gültige Tracking ID an!"
2896
 
 
2897
  #: inc/overrides/pro/presets/GoogleAds.php:1
2898
  msgid ""
2899
- "You can find your Adwords ID in <a href=\"https://ads.google.com/aw/overview"
2900
- "\" target=\"_blank\">Google Ads</a> at Tools > Measurement > Conversions > "
2901
- "Click on the name of the conversation action > Tag setup > Install the tag "
2902
- "yourself > Adwords ID in the code (e.g. AW-123456789)."
2903
  msgstr ""
2904
- "Deine Adwords ID findest du in <a href=\"https://ads.google.com/aw/overview"
2905
- "\" target=\"_blank\">Google Ads</a> unter Tools > Messung > Conversions > "
2906
- "Conversion-Aktion > Tag-Einrichtung > Tag selbst einfügen > Adwords ID in "
2907
- "dem Code (z.B. AW-123456789)."
 
 
 
2908
 
2909
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2910
  msgid ""
@@ -2931,18 +3045,22 @@ msgstr ""
2931
  msgid "Google Adsense Publisher ID"
2932
  msgstr "Google Adsense Publisher-ID"
2933
 
 
2934
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2935
  msgid ""
2936
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
2937
  "(if activated in your Adsense account) can be displayed. You can find it in "
2938
- "the <a href=\"https://www.google.com/adsense\" target=\"_blank\">Google "
2939
- "Adsense Dashboard</a> under <i>Account > Settings > Account information</i>."
2940
  msgstr ""
2941
- "Du musst deine Google Adsense Publisher ID eingeben, damit z.B. Auto Ads "
2942
- "(falls in deinem Adsense Konto aktiviert) angezeigt werden können. Du "
2943
- "findest sie im <a href=\"https://www.google.com/adsense\" target=\"_blank"
2944
- "\">Google Adsense Dashboard</a> unter <i>Account > Einstellungen > "
2945
- "Kontoinformationen</i>."
 
 
 
2946
 
2947
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2948
  msgid ""
@@ -2988,18 +3106,23 @@ msgstr ""
2988
  msgid "Google Analytics Measurement ID"
2989
  msgstr "Google Analytics Measurement-ID"
2990
 
 
2991
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
2992
  msgid ""
2993
  "You can find your Measurement ID (also called property ID) in the <a href="
2994
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
2995
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
2996
- "property > Setup Assistant > Tag installation > Select your website."
2997
  msgstr ""
2998
- "Du findest deine Measurement ID (auch Property ID genannt) im <a href="
2999
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3000
- "Dashboard</a> unter Admin (Zahnradsymbol) > Wähle deinen Account aus > Wähle "
3001
- "deine Property aus > Setup Assistant > Tag Installation > Wähle deine "
3002
- "Website aus."
 
 
 
 
3003
 
3004
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3005
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
@@ -3049,17 +3172,16 @@ msgstr ""
3049
  msgid "Google Analytics Tracking ID"
3050
  msgstr "Google Analytics Tracking-ID"
3051
 
 
3052
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3053
  msgid ""
3054
- "You can find your Tracking ID (also called Property ID) in the <a href="
3055
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3056
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
3057
- "property > Tracking Info > Tracking Code."
3058
  msgstr ""
3059
- "Du findest deine Tracking ID (auch Property ID genannt) im <a href=\"https://"
3060
- "analytics.google.com/analytics/web/\" target=\"_blank\">Analytics Dashboard</"
3061
- "a> unter Admin (Zahnradsymbol) > Wähle deinen Account > Wähle deine Property "
3062
- "> Tracking Info > Tracking Code."
3063
 
3064
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3065
  msgid ""
@@ -3303,21 +3425,27 @@ msgstr ""
3303
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
3304
  "Statistiken über sein Verhalten zu sammeln."
3305
 
 
3306
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3307
  msgid ""
3308
- "You have to create a so-called Beacon on <a href=\"https://secure.helpscout."
3309
- "net\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3310
- "Beacon. After creating in the Beacon Customizer, the URL looks like "
3311
- "<code>https://secure.helpscout.net/settings/beacons/c676047b-"
3312
- "c2e8-45b1-8319-344f4e7e2431/customize</code>. This means that the HelpScout "
3313
- "Beacon ID is <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code>."
3314
- msgstr ""
3315
- "Du musst einen sogenannten Beacon auf <a href=\"https://secure.helpscout.net"
3316
- "\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3317
- "Beacon erstellen. Nach dem Erstellen im Beacon Customizer sieht die URL "
3318
- "ähnlich aus wie <code>https://secure.helpscout.net/settings/beacons/c676047b-"
3319
- "c2e8-45b1-8319-344f4e7e2431/customize</code>. Das bedeutet, dass die "
3320
- "HelpScout Beacon-ID <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code> lautet."
 
 
 
 
 
3321
 
3322
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3323
  msgid "HelpScout Beacon ID"
@@ -3342,6 +3470,14 @@ msgstr ""
3342
  msgid "Hotjar ID"
3343
  msgstr "Hotjar-ID"
3344
 
 
 
 
 
 
 
 
 
3345
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3346
  msgid ""
3347
  "Imgur allows embedding content posted on imgur.com directly into websites."
@@ -3411,6 +3547,10 @@ msgstr ""
3411
  msgid "Intercom application ID"
3412
  msgstr "Intercom Application ID"
3413
 
 
 
 
 
3414
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3415
  msgid ""
3416
  "Issuu allows embedding content posted on issuu.com directly into websites. "
@@ -3544,16 +3684,20 @@ msgstr ""
3544
  msgid "https://linkedin.com/legal/privacy-policy"
3545
  msgstr "https://de.linkedin.com/legal/privacy-policy"
3546
 
 
3547
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3548
  msgid ""
3549
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3550
- "\"https://www.linkedin.com/help/lms/answer/a415871\" target=\"_blank\">where "
3551
- "to find the LinkedIn Partner ID</a> in your LinkedIn Ads account."
3552
  msgstr ""
3553
  "Du findest in der Wissensdatenbank von LinkedIn einen Artikel, der dir "
3554
- "erklärt, <a href=\"https://www.linkedin.com/help/lms/answer/a415871\" target="
3555
- "\"_blank\">wo du die LinkedIn Partner ID findest</a> in deinem LinkedIn Ads "
3556
- "Konto."
 
 
 
3557
 
3558
  #: inc/overrides/pro/presets/LoomPreset.php:1
3559
  msgid ""
@@ -3679,19 +3823,22 @@ msgstr ""
3679
  "Anmeldung verwendest, das versteckt werden kann (z.B. Popup). Nur in diesem "
3680
  "Fall wird ein Cookie gesetzt."
3681
 
 
3682
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3683
  msgid ""
3684
  "Personal data will never be transferred directly from the browser of your "
3685
  "visitors to MailPoet, but only, for example, when you sign up for the "
3686
  "newsletter via your WordPress installation. You should always follow the <a "
3687
- "href=\"https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr\" target="
3688
- "\"_blank\">MailPoet Guide to Conform to GDPR</a>."
3689
  msgstr ""
3690
  "Personenbezogene Daten werden niemals direkt vom Browser deiner Besucher an "
3691
  "MailPoet übertragen, sondern nur z.B. bei der Anmeldung zum Newsletter über "
3692
- "deine WordPress-Installation. Du solltest immer den <a href=\"https://kb."
3693
- "mailpoet.com/article/246-guide-to-conform-to-gdpr\" target=\"_blank"
3694
- "\">MailPoet Guide to Conform to GDPR</a>. beachten."
 
 
 
3695
 
3696
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3697
  msgid ""
@@ -3767,17 +3914,21 @@ msgstr "Metricool-Hash"
3767
  msgid "Please provide a valid hash!"
3768
  msgstr "Bitte gib einen gültigen Hash an!"
3769
 
 
3770
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3771
  msgid ""
3772
- "You find your Metricool hash in the <a href=\"https://app.metricool.com/"
3773
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, if "
3774
- "you use \"Connect web\" and choose the integration as JavaScript tag, within "
3775
- "the generated JavaScript."
3776
  msgstr ""
3777
- "Du findest deinen Metricool Hash in den <a href=\"https://app.metricool.com/"
3778
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, wenn "
3779
- "du \"Connect web\" nutzt und die Integration als JavaScript-Tag auswählst, "
3780
- "innerhalb des generierten JavaScript."
 
 
 
 
3781
 
3782
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3783
  msgid ""
@@ -3808,6 +3959,10 @@ msgstr ""
3808
  "projects/view/12cggd77jl/</code> lautet, ist deine Projekt-ID "
3809
  "<code>12cggd77jl</code>."
3810
 
 
 
 
 
3811
  #. translators:
3812
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3813
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
@@ -3843,19 +3998,27 @@ msgstr ""
3843
  msgid "Mouseflow Website ID"
3844
  msgstr "Mouseflow Website-ID"
3845
 
 
3846
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
3847
  msgid ""
3848
  "You can find your Mouseflow website ID by hovering over the appropriate "
3849
- "website at <a href=\"http://eu.mouseflow.com/websites\" target=\"_blank\">eu."
3850
- "mouseflow.com/websites</a>. You will then see a gear icon that you can click "
3851
- "on. In the settings that appear, you should find a <code>Website ID</code> "
3852
- "field."
3853
  msgstr ""
3854
- "Du findest deine Mouseflow Website ID, indem du auf <a href=\"https://eu."
3855
- "mouseflow.com/websites\" target=\"_blank\">eu.mouseflow.com/websites</a> mit "
3856
- "dem Mauszeiger über die entsprechende Website fährst. Du siehst dann ein "
3857
- "Zahnradsymbol, auf das du klicken kannst. In den Einstellungen, die dann "
3858
- "erscheinen, solltest du ein Feld <code>Website ID</code> finden."
 
 
 
 
 
 
 
 
3859
 
3860
  #. translators:
3861
  #: inc/overrides/pro/presets/MtmPreset.php:1
@@ -4087,16 +4250,20 @@ msgstr ""
4087
  msgid "Pinterest Tag ID"
4088
  msgstr "Pinterest Tag-ID"
4089
 
 
4090
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4091
  msgid ""
4092
- "You can view your Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4093
- "\"_blank\">Pinterest Ads</a> under Ads > Conversions > Add code to website > "
4094
- "Add code. It is displayed in the top right corner of the modal."
4095
  msgstr ""
4096
- "Du kannst deine Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4097
- "\"_blank\">Pinterest Ads</a> unter Anzeigen > Conversions > Code zur Website "
4098
- "hinzufügen > Code hinzufügen einsehen. Er wird in der oberen rechten Ecke "
4099
- "des Modals angezeigt."
 
 
 
4100
 
4101
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4102
  msgid ""
@@ -4268,19 +4435,22 @@ msgstr ""
4268
  "speichern die Sprache des Nutzers und können den Nutzer auf die Version der "
4269
  "Webseite umleiten, welche der Sprache des Browsers des Nutzers entspricht."
4270
 
 
4271
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4272
  msgid ""
4273
  "Please make sure you have not renamed the Polylang cookie name or change it "
4274
  "in the same way in the technical definitions above. Learn more about how to "
4275
- "change the Polylang cookie name <a href=\"https://polylang.pro/doc/is-"
4276
- "polylang-compatible-with-the-eu-cookie-law/\" target=\"_blank\">in their "
4277
  "documentation</a>."
4278
  msgstr ""
4279
  "Bitte vergewissere dich, dass du den Namen des Polylang Cookies nicht "
4280
  "umbenannt oder in den technischen Definitionen oben auf die gleiche Weise "
4281
  "geändert hast. Mehr darüber, wie man den Polylang Cookie-Namen ändert, "
4282
- "findest du <a href=\"https://polylang.pro/doc/is-polylang-compatible-with-"
4283
- "the-eu-cookie-law/\" target=\"_blank\">in der Dokumentation</a>."
 
 
 
4284
 
4285
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4286
  msgid ""
@@ -4586,21 +4756,29 @@ msgstr ""
4586
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4587
  "Statistiken über sein Verhalten zu sammeln."
4588
 
 
4589
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4590
  msgid ""
4591
- "You can create your own custom chat widget at <a href=\"https://dashboard."
4592
- "tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > Settings > Chat Widget. "
4593
- "The chat widget in the opt-in code is just the default example."
4594
  msgstr ""
4595
- "Du kannst dein eigenes benutzerdefiniertes Chat-Widget unter <a href="
4596
- "\"https://dashboard.tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > "
4597
- "Einstellungen > Chat Widget erstellen. Das Chat-Widget im Opt-in Code ist "
4598
- "nur das Standardbeispiel."
 
 
 
4599
 
4600
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4601
  msgid "tawk.to ID"
4602
  msgstr "tawk.to ID"
4603
 
 
 
 
 
4604
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4605
  msgid ""
4606
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
@@ -4640,22 +4818,31 @@ msgstr ""
4640
  "Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4641
  "Statistiken über sein Verhalten zu sammeln."
4642
 
 
4643
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4644
  msgid ""
4645
- "You get your Tidio JS ID on <a href=\"https://tidio.com\" target=\"_blank"
4646
- "\">tidio.com</a> under Settings > Live Chat > Integration > JavaScript in "
4647
- "the given JavaScript snipped. You can adjust the appearance of the chat at "
4648
- "tidio.com under Settings > Live Chat > Appearance."
4649
  msgstr ""
4650
- "Du bekommst deine Tidio JS ID auf <a href=\"https://tidio.com\" target="
4651
- "\"_blank\">tidio.com</a> unter Einstellungen > Live Chat > Integration > "
4652
- "JavaScript in dem angegebene JavaScript-Code. Du kannst das Aussehen des "
4653
- "Chats auf tidio.com unter Einstellungen > Live Chat > Aussehen anpassen."
 
 
 
 
4654
 
4655
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4656
  msgid "Tidio JS ID"
4657
  msgstr "Tidio JS-ID"
4658
 
 
 
 
 
4659
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4660
  msgid ""
4661
  "TikTok Pixel helps to determine whether you are the target audience for "
@@ -4687,33 +4874,37 @@ msgstr "https://www.tiktok.com/legal/privacy-policy?lang=de-DE"
4687
  msgid "TikTok Pixel ID"
4688
  msgstr "TikTok Pixel-ID"
4689
 
 
4690
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4691
  msgid ""
4692
- "In the <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target="
4693
- "\"_blank\">Event Manager of the TikTok Ad Manager</a> you can create a "
4694
- "website pixel. Select \"Manually install pixel code\" for the type of "
4695
- "integration. Whether you want to use the \"Standard Mode\" or \"Developer "
4696
- "Mode\" depends on your purpose."
4697
  msgstr ""
4698
- "Im <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target=\"_blank"
4699
- "\">Event Manager des TikTok Ad Managers</a> kannst du ein Website-Pixel "
4700
- "erstellen. Wähle für die Art der Integration \"Manually install pixel code"
4701
- "\". Ob du den \"Standard Mode\" oder den \"Developer Mode\" verwenden "
4702
- "möchtest, hängt von deinem Vorhaben ab."
 
 
 
4703
 
 
4704
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4705
  msgid ""
4706
- "After creating the TikTok Pixel you return to the <a href=\"https://ads."
4707
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager of the "
4708
- "TikTok Ad Manager</a> and select \"Manage\" in the section \"Website Pixel"
4709
- "\". You will then see an overview of all the TikTok pixels you have created. "
4710
- "Each TikTok pixel has its ID directly under its name."
4711
  msgstr ""
4712
- "Nach der Erstellung des TikTok Pixel kehrst du zum <a href=\"https://ads."
4713
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager des TikTok "
4714
- "Ad Managers</a> zurück und wählst im Abschnitt \"Website Pixel\" den Punkt "
4715
- "\"Manage\". Du siehst dann eine Übersicht über alle TikTok Pixel, die du "
4716
- "erstellt hast. Jedes TikTok-Pixel hat seine ID direkt unter seinem Namen."
4717
 
4718
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4719
  msgid ""
@@ -4830,24 +5021,33 @@ msgstr ""
4830
  msgid "https://www.userlike.com/en/terms#privacy-policy"
4831
  msgstr "https://www.userlike.com/de/terms#privacy-policy"
4832
 
 
4833
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4834
  msgid ""
4835
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
4836
- "You can find it at <a href=\"https://userlike.com/en/dashboard/um/config/"
4837
- "um_widget/overview\" target=\"_blank\">userlike.com/en/dashboard/um/config/"
4838
- "um_widget/overview</a> > Name of the widget > Install > JavaScript Widget "
4839
- "code."
4840
  msgstr ""
4841
  "Bitte füge als Opt-in Code den JavaScript Code deines Userlike Widgets ein. "
4842
- "Du findest ihn unter <a href=\"https://userlike.com/de/dashboard/um/config/"
4843
- "um_widget/overview\" target=\"_blank\">userlike.com/de/dashboard/um/config/"
4844
- "um_widget/overview</a> > Name des Widgets > Installieren > JavaScript Widget "
4845
- "code."
 
 
4846
 
4847
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4848
  msgid "Example opt-in code"
4849
  msgstr "Beispiel Opt-in Code"
4850
 
 
 
 
 
 
 
 
 
4851
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4852
  msgid ""
4853
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
@@ -4914,6 +5114,16 @@ msgstr ""
4914
  "\"essenzielles Cookie\" und keinen Content Blocker wirst du die volle dir "
4915
  "zustehende Ausschüttungen der VG WORT erhalten können."
4916
 
 
 
 
 
 
 
 
 
 
 
4917
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4918
  msgid ""
4919
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
@@ -5164,6 +5374,10 @@ msgstr ""
5164
  "Du findest Deine Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5165
  "\">Yandex Metrica Tags Liste</a>."
5166
 
 
 
 
 
5167
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5168
  msgid ""
5169
  "Zendesk Chat is a customer service tool that provides live chat for "
@@ -5192,6 +5406,10 @@ msgstr ""
5192
  "Du findest den Zendesk Widget Key im Zendesk Backend unter Einstellungen > "
5193
  "Widget > Web Widget einbetten als Teil des JavaScript Codes."
5194
 
 
 
 
 
5195
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5196
  msgid ""
5197
  "Zoho Bookings is a planning software the allows you to book book "
@@ -5445,6 +5663,7 @@ msgstr ""
5445
  "du in den individuellen Privatsphäre-Einstellungen."
5446
 
5447
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5448
  msgid ""
5449
  "In addition, you consent to the transfer of data to partners under the TCF "
5450
  "standard for the following purposes:"
@@ -5453,10 +5672,12 @@ msgstr ""
5453
  "des TCF-Standards für die folgenden Zwecke zu:"
5454
 
5455
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5456
  msgid "Vendor list"
5457
  msgstr "Liste der Anbieter"
5458
 
5459
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5460
  msgid "Vendors"
5461
  msgstr "Anbieter"
5462
 
@@ -5470,18 +5691,22 @@ msgid "Hide"
5470
  msgstr "Verstecken"
5471
 
5472
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5473
  msgid "Data processing on the legal basis of:"
5474
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5475
 
5476
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5477
  msgid "No vendor requests purposes under this legal basis."
5478
  msgstr "Kein Anbieter beantragt Zwecke auf dieser Rechtsgrundlage."
5479
 
5480
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5481
  msgid "Non-standardized data processing"
5482
  msgstr "Nicht standardisierte Datenverarbeitung"
5483
 
5484
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5485
  msgid ""
5486
  "Some services set cookies and/or process personal data without complying "
5487
  "with consent communication standards. These services are divided into "
@@ -5499,10 +5724,12 @@ msgstr ""
5499
  "nach einer Einwilligung genutzt werden."
5500
 
5501
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5502
  msgid "Data processing standardized according to TCF"
5503
  msgstr "Datenverarbeitung standardisiert nach TCF"
5504
 
5505
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5506
  msgid ""
5507
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5508
  "consistent consent for processing of personal data and cookie setting. This "
@@ -5518,10 +5745,12 @@ msgstr ""
5518
  "gesetzt, verarbeitet und gespeichert werden."
5519
 
5520
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5521
  msgid "Purposes"
5522
  msgstr "Zwecke"
5523
 
5524
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5525
  msgid ""
5526
  "Purposes describe for which purpose which providers may set cookies and "
5527
  "process personal data. Purposes are pre-selected if there is a legitimate "
@@ -5535,10 +5764,12 @@ msgstr ""
5535
  "Einwilligung verarbeitet."
5536
 
5537
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5538
  msgid "Special purposes"
5539
  msgstr "Besondere Zwecke"
5540
 
5541
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5542
  msgid ""
5543
  "Special purposes for setting cookies and processing personal data by our "
5544
  "vendors describe purposes for which we have a legitimate interest that "
@@ -5550,10 +5781,12 @@ msgstr ""
5550
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5551
 
5552
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5553
  msgid "Features"
5554
  msgstr "Funktionen"
5555
 
5556
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5557
  msgid ""
5558
  "Features for processing personal data describe how data is used to fulfill "
5559
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
@@ -5567,10 +5800,12 @@ msgstr ""
5567
  "Jeder Zweck kann dazu führen, dass Funktionen verwendet werden."
5568
 
5569
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5570
  msgid "Special features"
5571
  msgstr "Besondere Funktionen"
5572
 
5573
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5574
  msgid ""
5575
  "Special features for processing personal data describe how data is used to "
5576
  "fulfill one or more purposes in a profound way. Personal data will only be "
@@ -5884,17 +6119,21 @@ msgstr ""
5884
  "(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
5885
  "feststellen."
5886
 
 
5887
  #: inc/presets/free/GoogleFontsPreset.php:1
5888
  msgid ""
5889
- "We therefore recommend <a href=\"https://devowl.io/2022/google-fonts-"
5890
- "wordpress-gdpr/\" target=\"_blank\">replacing Google Fonts with locally "
5891
- "hosted fonts</a> when possible, rather than asking for consent. We explained "
5892
- "how this works in our blog!"
5893
  msgstr ""
5894
- "Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
5895
- "wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
5896
- "gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
5897
- "fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
 
 
 
 
5898
 
5899
  #: inc/presets/free/GravatarPreset.php:1
5900
  msgid ""
@@ -6064,18 +6303,21 @@ msgstr ""
6064
  "Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für diesen Dienst "
6065
  "muss ein Service angelegt werden."
6066
 
 
6067
  #: inc/presets/free/WordPressCommentsPreset.php:1
6068
  msgid ""
6069
  "Do you want to use the comment feature on your website at all? If not, we "
6070
- "explain in our blog <a href=\"https://devowl.io/2022/deactivate-wordpress-"
6071
- "comments/\" target=\"_blank\"> how to disable comments in WordPress</a>. "
6072
- "Then you can also avoid this consent!"
6073
  msgstr ""
6074
  "Willst du die Kommentarfunktion auf deiner Website überhaupt nutzen? Wenn "
6075
- "nicht, erklären wir in unserem Blog, <a href=\"https://devowl.io/de/2022/"
6076
- "wordpress-kommentare-deaktivieren/\" target=\"_blank\">wie du Kommentare in "
6077
- "WordPress deaktivieren kannst</a>. Dann kannst du dir die Einwilligung auch "
6078
- "sparen!"
 
 
 
6079
 
6080
  #: inc/presets/free/WordPressEmojisPreset.php:1
6081
  msgid ""
@@ -6105,18 +6347,22 @@ msgstr ""
6105
  "können Emojis problemlos ohne das WordPressa-Emoji-Script anzeigen (für das "
6106
  "du diese Einwilligung einholen musst)."
6107
 
 
6108
  #: inc/presets/free/WordPressEmojisPreset.php:1
6109
  msgid ""
6110
  "Unless you need to support particularly old browsers and operating systems, "
6111
- "we recommend that you <a href=\"https://devowl.io/2022/disable-emojis-"
6112
- "wordpress/\" target=\"_blank\">disable the WordPress emoji script</a> rather "
6113
- "than asking for consent. How to do that, we have explained in our blog!"
6114
  msgstr ""
6115
  "Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
6116
- "musst, empfehlen wir dir, das <a href=\"https://devowl.io/de/2022/wordpress-"
6117
- "emojis-deaktivieren/\" target=\"_blank\">WordPress-Emoji-Script zu "
6118
- "deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie du das "
6119
- "machst, haben wir in unserem Blog erklärt!"
 
 
 
6120
 
6121
  #: inc/presets/free/WordPressPluginEmbed.php:1
6122
  msgid ""
@@ -6378,35 +6624,22 @@ msgstr "Ezoic (Statistik)"
6378
 
6379
  #: inc/presets/UpdateNotice.php:1
6380
  msgid ""
6381
- "It seems that since the last update of <strong>Real Cookies Banner</strong> "
6382
- "some templates have been updated. Please check your following services to "
6383
- "make sure they are up to date:"
6384
  msgstr ""
6385
- "Es scheint, dass seit dem letzten Update von <strong>Real Cookies Banner</"
6386
- "strong> einige Vorlagen aktualisiert worden sind. Bitte überprüfe deine "
6387
- "folgenden Services, um sicherzustellen, dass sie auf dem neuesten Stand sind:"
 
6388
 
6389
  #: inc/presets/UpdateNotice.php:1
6390
  msgid "Service (Cookie)"
6391
  msgstr "Service (Cookie)"
6392
 
6393
  #: inc/presets/UpdateNotice.php:1
6394
- msgid "Edit"
6395
- msgstr "Bearbeiten"
6396
-
6397
- #: inc/presets/UpdateNotice.php:1
6398
- msgid "Create new from template"
6399
- msgstr "Aus Vorlage erstellen"
6400
-
6401
- #: inc/presets/UpdateNotice.php:1
6402
- msgid ""
6403
- "The easiest way to apply the changes is to delete the service and all "
6404
- "connected content blockers in Real Cookie Banner and create it again from "
6405
- "the service templates."
6406
- msgstr ""
6407
- "Am einfachsten kannst du die Änderungen übernehmen, indem du den Service und "
6408
- "alle damit verbundenen Content Blocker in Real Cookie Banner löschst und ihn "
6409
- "aus den Service-Vorlagen neu erstellst."
6410
 
6411
  #: inc/presets/UpdateNotice.php:1
6412
  msgid "Dismiss this notice"
@@ -6467,6 +6700,7 @@ msgid "Service group"
6467
  msgstr "Service-Gruppe"
6468
 
6469
  #: inc/settings/CookieGroup.php:1
 
6470
  msgid ""
6471
  "Essential services are required for the basic functionality of the website. "
6472
  "They only contain technically necessary services. These services cannot be "
@@ -6477,9 +6711,10 @@ msgstr ""
6477
  "Services kann nicht widersprochen werden."
6478
 
6479
  #: inc/settings/CookieGroup.php:1
 
6480
  msgid ""
6481
  "Functional services are necessary to provide features beyond the essential "
6482
- "functionality such as prettier fonts, video playback or interactive Web 2.0 "
6483
  "features. Content from e.g. video platforms and social media platforms are "
6484
  "blocked by default, and can be consented to. If the service is agreed to, "
6485
  "this content is loaded automatically without further manual consent."
@@ -6492,6 +6727,7 @@ msgstr ""
6492
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6493
 
6494
  #: inc/settings/CookieGroup.php:1
 
6495
  msgid ""
6496
  "Statistics services are needed to collect pseudonymous data about the "
6497
  "visitors of the website. The data enables us to understand visitors better "
@@ -6502,6 +6738,7 @@ msgstr ""
6502
  "besser zu verstehen und die Website zu optimieren."
6503
 
6504
  #: inc/settings/CookieGroup.php:1
 
6505
  msgid ""
6506
  "Marketing services are used by us and third parties to track the behaviour "
6507
  "of individual visitors (across multiple pages), analyse the data collected "
@@ -6509,8 +6746,8 @@ msgid ""
6509
  "us to track visitors across multiple websites."
6510
  msgstr ""
6511
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6512
- "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und z."
6513
- "B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6514
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6515
 
6516
  #: inc/settings/Revision.php:1
@@ -6655,11 +6892,11 @@ msgstr "Einstellungen des Cookie Banners anpassen"
6655
 
6656
  #: inc/view/checklist/SaveSettings.php:1
6657
  msgid ""
6658
- "Define the behavior of the cookie banner and hide the cookie banner both in "
6659
- "the imprint and privacy policy (required by law)."
6660
  msgstr ""
6661
- "Bestimme das Verhalten des Cookie Banners und blende es sowohl im Impressum "
6662
- "als auch in der Datenschutzerklärung aus (gesetzlich vorgeschrieben)."
6663
 
6664
  #: inc/view/checklist/SaveSettings.php:1
6665
  msgid "Manage settings"
@@ -6672,10 +6909,11 @@ msgstr "Scanne deine Website nach Services"
6672
  #: inc/view/checklist/Scanner.php:1
6673
  msgid ""
6674
  "Scan your website to identify services used and external URLs that may "
6675
- "transmit personal data."
6676
  msgstr ""
6677
  "Scanne deine Website, um genutzte Services und externe URLs zu "
6678
- "identifizieren, die persönliche Daten übertragen können."
 
6679
 
6680
  #: inc/view/checklist/Scanner.php:1
6681
  msgid "Open scanner"
@@ -6689,18 +6927,18 @@ msgstr "Platziere legale Links auf deiner Website"
6689
  msgid ""
6690
  "Your website visitors must be able to view their consent history, change "
6691
  "their consent, or withdraw their consent at any time. This must be as easy "
6692
- "as giving consent. Therefore, the shortcodes must be included on every "
6693
  "subpage of the website (e.g. in the footer)."
6694
  msgstr ""
6695
  "Deine Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6696
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6697
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6698
- "Deshalb müssen die Shortcodes auf jeder Unterseite der Website zu finden "
6699
- "sein (z. B. im Footer/Fußzeile)."
6700
 
6701
  #: inc/view/checklist/Shortcode.php:1
6702
  msgid "Create legal links"
6703
- msgstr "Legal links erstellen"
6704
 
6705
  #: inc/view/checklist/ViewStats.php:1
6706
  msgid "Check out statistics about consents"
@@ -6776,6 +7014,17 @@ msgstr "Einstellungen"
6776
  msgid "Enabled"
6777
  msgstr "Aktiviert"
6778
 
 
 
 
 
 
 
 
 
 
 
 
6779
  #: inc/view/customize/banner/BasicLayout.php:1
6780
  msgid "Basic Layout"
6781
  msgstr "Grundlegendes Layout"
@@ -6870,6 +7119,16 @@ msgstr "Button-Rahmen: Abgerundete Ecken"
6870
  msgid "Animation on display"
6871
  msgstr "Animation beim Einblenden"
6872
 
 
 
 
 
 
 
 
 
 
 
6873
  #: inc/view/customize/banner/BasicLayout.php:1
6874
  msgid "Animation only on mobile devices"
6875
  msgstr "Animation nur auf mobilen Geräten"
@@ -7076,22 +7335,21 @@ msgstr "Button: Weiter ohne Einwilligung"
7076
  msgid "Use the same stylings as for \"Accept all\""
7077
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7078
 
 
7079
  #: inc/view/customize/banner/BodyDesign.php:1
7080
  #: inc/view/customize/banner/individual/SaveButton.php:1
7081
  msgid ""
7082
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7083
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7084
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7085
  "way for your visitors to express their choice (agree to everything, continue "
7086
  "without consent or an indivudual decision). Equivalent does not necessarily "
7087
  "mean that the buttons/links must look exactly the same. However, you should "
7088
  "be safest if they look exactly the same."
7089
  msgstr ""
7090
- "Gemäß der <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7091
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7092
- "deutschen Datenschutzbehörden</a> muss es für deine Besucher eine "
7093
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7094
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7095
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7096
  "aussehen müssen. Am sichersten bist du jedoch, wenn sie genau gleich "
7097
  "aussehen."
@@ -7197,25 +7455,28 @@ msgid "Consent options"
7197
  msgstr "Einwilligungs-Optionen"
7198
 
7199
  #: inc/view/customize/banner/Decision.php:1
7200
- #: inc/view/customize/banner/Texts.php:1
7201
  msgid "Accept all"
7202
  msgstr "Alle akzeptieren"
7203
 
7204
  #. translators:
7205
  #: inc/view/customize/banner/Decision.php:1
7206
  msgid ""
7207
- "According to the GDPR (%1$sEU 2016/679%2$s), section 32, you are not allowed "
7208
- "to pre-select services in the form of pre-selected checkboxes for the "
7209
- "visitor. However, the GDPR and ePrivacy Directive do not prohibit the use of "
7210
- "a button to agree to all services, if there is also a button to agree only "
7211
- "to the essential services or to make a user-defined selection."
7212
  msgstr ""
7213
- "Gemäß der DSGVO (%1$sEU 2016/679%2$s), Erwägungsgrund 32, darfst du keine "
7214
- "Services in Form von vorselektierten Checkboxen für den Besucher auswählen. "
7215
- "Die DSGVO und die ePrivacy-Richtlinie verbieten jedoch nicht die Verwendung "
7216
- "eines Buttons zur Einwilligung in alle Services, wenn es auch einen Button "
7217
- "gibt, um nur den essenziellen Services zuzustimmen oder um eine "
7218
- "benutzerdefinierte Auswahl zu treffen."
 
 
 
 
7219
 
7220
  #: inc/view/customize/banner/Decision.php:1
7221
  #: inc/view/customize/banner/individual/SaveButton.php:1
@@ -7229,7 +7490,6 @@ msgid "Link"
7229
  msgstr "Link"
7230
 
7231
  #: inc/view/customize/banner/Decision.php:1
7232
- #: inc/view/customize/banner/Texts.php:1
7233
  msgid "Continue without consent"
7234
  msgstr "Weiter ohne Einwilligung"
7235
 
@@ -7262,44 +7522,42 @@ msgstr ""
7262
  "Einwilligung\"."
7263
 
7264
  #: inc/view/customize/banner/Decision.php:1
7265
- #: inc/view/customize/banner/individual/Texts.php:1
7266
  msgid "Individual privacy preferences"
7267
  msgstr "Individuelle Privatsphäre-Einstellungen"
7268
 
7269
  #: inc/view/customize/banner/Decision.php:1
7270
  msgid ""
7271
- "According to the GDPR (EU 2016/679) and the ePrivacy Directive (EU 2009/136/"
7272
- "EC), the user must be free to choose which services to use and be informed "
7273
- "about their purpose before giving consent. Therefore, the user must be given "
7274
- "the opportunity to access the page with the individual privacy settings."
7275
  msgstr ""
7276
- "Gemäß der DSGVO (EU 2016/679) und der ePrivacy-Richtlinie (EU 2009/136/EG) "
7277
- "muss der Nutzer frei wählen können, welche Services genutzt werden sollen "
7278
- "und über deren Zweck informiert werden, bevor er seine Einwilligung gibt. "
7279
- "Daher muss dem Nutzer die Möglichkeit gegeben werden, die Seite mit den "
7280
- "individuellen Privatsphäre-Einstellungen aufzurufen."
7281
 
7282
  #: inc/view/customize/banner/Decision.php:1
7283
  msgid "Order of the buttons"
7284
  msgstr "Reihenfolge der Buttons"
7285
 
 
7286
  #: inc/view/customize/banner/Decision.php:1
7287
  msgid ""
7288
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7289
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7290
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7291
  "way for your visitors to express their choice (agree to everything, continue "
7292
  "without consent or an indivudual decision). Which order of options is "
7293
  "considered equivalent is unclear. Therefore, the options should be arranged "
7294
  "according to the cultural conditions of the main target country."
7295
  msgstr ""
7296
- "Gemäß der <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7297
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7298
- "deutschen Datenschutzbehörden</a> muss es für deine Besucher eine "
7299
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7300
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7301
- "Welche Reihenfolge der Optionen als gleichwertig gilt, ist unklar. Daher "
7302
- "sollten die Optionen nach den kulturellen Gegebenheiten des Hauptziellandes "
7303
  "angeordnet werden."
7304
 
7305
  #: inc/view/customize/banner/Decision.php:1
@@ -7331,8 +7589,27 @@ msgid "Text of \"Accept all\" changes when user changes selection"
7331
  msgstr ""
7332
  "Text von “Alle akzeptieren” ändert sich, wenn der Benutzer die Auswahl ändert"
7333
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7334
  #: inc/view/customize/banner/Decision.php:1
7335
  #: inc/view/customize/banner/individual/Texts.php:1
 
7336
  msgid "Save custom choices"
7337
  msgstr "Individuelle Auswahlen speichern"
7338
 
@@ -7576,6 +7853,7 @@ msgstr "\"Service-Informationen ausblenden”-Link"
7576
 
7577
  #: inc/view/customize/banner/individual/Texts.php:1
7578
  #: inc/view/customize/banner/Texts.php:1
 
7579
  msgid ""
7580
  "We use cookies and similar technologies on our website and process your "
7581
  "personal data (e.g. IP address), for example, to personalize content and "
@@ -7594,6 +7872,7 @@ msgstr ""
7594
 
7595
  #: inc/view/customize/banner/individual/Texts.php:1
7596
  #: inc/view/customize/banner/Texts.php:1
 
7597
  msgid ""
7598
  "The data processing may take place with your consent or on the basis of a "
7599
  "legitimate interest, which you can object to in the privacy settings. You "
@@ -7609,6 +7888,7 @@ msgstr ""
7609
  "{{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7610
 
7611
  #: inc/view/customize/banner/individual/Texts.php:1
 
7612
  msgid ""
7613
  "Below you will find an overview of all services used by this website. You "
7614
  "can view detailed information about each service and agree to them "
@@ -7620,10 +7900,12 @@ msgstr ""
7620
  "Gebrauch machen."
7621
 
7622
  #: inc/view/customize/banner/individual/Texts.php:1
 
7623
  msgid "Show service information"
7624
  msgstr "Service-Informationen anzeigen"
7625
 
7626
  #: inc/view/customize/banner/individual/Texts.php:1
 
7627
  msgid "Hide service information"
7628
  msgstr "Service-Informationen ausblenden"
7629
 
@@ -7786,12 +8068,8 @@ msgid "\"Powered by\" link text"
7786
  msgstr "“Powered by”-Linktext"
7787
 
7788
  #: inc/view/customize/banner/Texts.php:1
7789
- msgid ""
7790
- "Use <code>{{services}}</code> as a placeholder to show all services that "
7791
- "process data in the USA."
7792
- msgstr ""
7793
- "Verwende <code>{{services}}</code> als Platzhalter, um alle Services "
7794
- "anzuzeigen, die Daten in den USA verarbeiten."
7795
 
7796
  #: inc/view/customize/banner/Texts.php:1
7797
  msgid "Data processing in the USA"
@@ -7863,22 +8141,28 @@ msgstr "\"Inhalt laden”-Button/Link"
7863
  msgid "Additional info below the \"Load content\" button"
7864
  msgstr "Zusatzinfo unterhalb dem \"Inhalt laden”-Button"
7865
 
 
7866
  #: inc/view/customize/banner/Texts.php:1
7867
  msgid ""
7868
  "The standard texts in the cookie banner are worded carefully. If you "
7869
  "customize them, make sure they are not misleading or riveting. According to "
7870
- "the <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-"
7871
- "und-tracking-2/#13_informiertheit)\" target=\"_blank\">Data Protection "
7872
- "Commissioner of Baden-Württeberg, Germany (Section B, 1.3.7.; German)</a>, "
7873
- "for example, a headline \"We love cookies\" is already misleading."
7874
  msgstr ""
7875
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn du sie "
7876
  "anpasst, achte darauf, dass sie nicht irreführend oder vernietlichend sind. "
7877
- "Nach dem <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-"
7878
- "cookies-und-tracking-2/#13_informiertheit)\" target=\"_blank"
7879
- "\">Datenschutzbeauftragen von Baden-Württeberg, Deutschland (Abschnitt B, "
7880
- "1.3.7.)</a> ist z.B. die Überschrift \"Wir lieben Cookies\" bereits "
7881
- "irreführend."
 
 
 
 
 
 
7882
 
7883
  #. translators:
7884
  #: inc/view/customize/banner/Texts.php:1
@@ -7919,14 +8203,17 @@ msgstr ""
7919
  "%2$s, um sie zu aktivieren."
7920
 
7921
  #: inc/view/customize/banner/Texts.php:1
 
7922
  msgid "Privacy preferences"
7923
  msgstr "Privatsphäre-Einstellungen"
7924
 
7925
  #: inc/view/customize/banner/Texts.php:1
 
7926
  msgid "Set privacy settings individually"
7927
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
7928
 
7929
  #: inc/view/customize/banner/Texts.php:1
 
7930
  msgid ""
7931
  "Some services process personal data in the USA. By consenting to the use of "
7932
  "these services, you also consent to the processing of your data in the USA "
@@ -7946,6 +8233,7 @@ msgstr ""
7946
  "Möglichkeit eines Rechtsbehelfs."
7947
 
7948
  #: inc/view/customize/banner/Texts.php:1
 
7949
  msgid ""
7950
  "You are under 16 years old? Then you cannot consent to optional services. "
7951
  "Ask your parents or legal guardians to agree to these services with you."
@@ -7955,6 +8243,7 @@ msgstr ""
7955
  "dir in diese Services einzuwilligen."
7956
 
7957
  #: inc/view/customize/banner/Texts.php:1
 
7958
  msgid ""
7959
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
7960
  "to this service to view this content. Please ask your parents or guardians "
@@ -7965,34 +8254,40 @@ msgstr ""
7965
  "Erziehungsberechtigten, dem Service mit dir zuzustimmen!"
7966
 
7967
  #: inc/view/customize/banner/Texts.php:1
 
7968
  msgid ""
7969
  "By accepting all services, you allow {{services}} to be loaded. These "
7970
  "services are divided into groups {{serviceGroups}} according to their "
7971
  "purpose (belonging marked with superscript numbers)."
7972
  msgstr ""
7973
  "Wenn du alle Services akzeptierst, erlaubst du, dass {{services}} geladen "
7974
- "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt "
7975
- "(Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
7976
 
7977
  #: inc/view/customize/banner/Texts.php:1
 
7978
  msgid "Your consent is also applicable on {{websites}}."
7979
  msgstr "Deine Einwilligung gilt auch auf {{websites}}."
7980
 
7981
  #. translators:
7982
  #: inc/view/customize/banner/Texts.php:1
 
7983
  msgid "{{name}} blocked due to privacy settings"
7984
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
7985
 
7986
  #. translators:
7987
  #: inc/view/customize/banner/Texts.php:1
 
7988
  msgid "Show all services you still need to agree to"
7989
  msgstr "Zeige alle Services, denen du noch zustimmen musst"
7990
 
7991
  #: inc/view/customize/banner/Texts.php:1
 
7992
  msgid "Accept required services and load content"
7993
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
7994
 
7995
  #: inc/view/customize/banner/Texts.php:1
 
7996
  msgid ""
7997
  "Loading the blocked content will adjust your privacy settings. Content from "
7998
  "this service will not be blocked in the future. You have the right to revoke "
@@ -8032,18 +8327,22 @@ msgid "The navigation menu could not be found."
8032
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8033
 
8034
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8035
  msgid "Change privacy settings"
8036
  msgstr "Privatsphäre-Einstellungen ändern"
8037
 
8038
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8039
  msgid "Privacy settings history"
8040
  msgstr "Historie der Privatsphäre-Einstellungen"
8041
 
8042
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8043
  msgid "Revoke consents"
8044
  msgstr "Einwilligungen widerrufen"
8045
 
8046
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8047
  msgid ""
8048
  "You have successfully revoked the consent. The page will be reloaded now."
8049
  msgstr ""
@@ -8093,6 +8392,46 @@ msgstr "Bitte gib ein `text`-Attribut in deinem Shortcode an!"
8093
  msgid "Please provide a `type` attribute in your shortcode. Allowed: %s!"
8094
  msgstr "Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: %s!"
8095
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8096
  #~ msgid ""
8097
  #~ "An opt-in script is not required, as this service is probably already "
8098
  #~ "integrated via e.g. your theme. In addition to this service, please "
2
  msgstr ""
3
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
4
  "POT-Creation-Date: n/a\n"
5
+ "PO-Revision-Date: 2022-08-29 14:24+0000\n"
6
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
7
+ "Language-Team: German <https://translate.devowl.io/projects/"
8
+ "wordpress-real-cookie-banner-backend-php/develop/de/>\n"
9
  "Language: de_DE\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
+ "X-Generator: Weblate 4.13.1\n"
15
 
16
  #. Plugin Name of the plugin
17
  msgid "Real Cookie Banner"
172
  "heruntergeladen, wodurch weitere rechtliche Probleme vermieden werden."
173
 
174
  #: inc/Assets.php:1
175
+ msgctxt "legal-text"
176
  msgid "Use on legal basis of"
177
  msgstr "Verwendung auf gesetzlicher Grundlage von"
178
 
179
  #: inc/Assets.php:1
180
+ msgctxt "legal-text"
181
  msgid "Legitimate interest"
182
  msgstr "Berechtigtes Interesse"
183
 
184
  #: inc/Assets.php:1
185
+ msgctxt "legal-text"
186
  msgid "Compliance with a legal obligation"
187
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
188
 
189
  #: inc/Assets.php:1
190
+ msgctxt "legal-text"
191
  msgid "Consent"
192
  msgstr "Einwilligung"
193
 
194
  #: inc/Assets.php:1
195
+ msgctxt "legal-text"
196
  msgid ""
197
  "We have recognized that you are a crawler/bot. Only natural persons must "
198
  "consent to cookies and processing of personal data. Therefore, the link has "
203
  "einwilligen. Daher hat der Link für dich keine Funktion."
204
 
205
  #: inc/Assets.php:1
206
+ msgctxt "legal-text"
207
  msgid "Technical cookie definition"
208
  msgstr "Technische Cookie-Definition"
209
 
210
  #: inc/Assets.php:1
211
+ msgctxt "legal-text"
212
  msgid "Uses cookies"
213
  msgstr "Verwendete Cookies"
214
 
215
  #: inc/Assets.php:1
216
+ msgctxt "legal-text"
217
  msgid "Cookie refresh"
218
  msgstr "Cookie-Auffrischung"
219
 
220
  #: inc/Assets.php:1
221
+ msgctxt "legal-text"
222
  msgid ""
223
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
224
  msgstr ""
226
  "IndexDB, etc.)"
227
 
228
  #: inc/Assets.php:1
229
+ msgctxt "legal-text"
230
  msgid "Host"
231
  msgstr "Host"
232
 
233
+ #: inc/Assets.php:1
234
+ msgctxt "legal-text"
235
  msgid "Duration"
236
  msgstr "Dauer"
237
 
260
  msgstr "Jahr(e)"
261
 
262
  #: inc/Assets.php:1
263
+ msgctxt "legal-text"
264
  msgid "No expiration"
265
  msgstr "Kein Ablauf"
266
 
267
+ #: inc/Assets.php:1
268
+ msgctxt "legal-text"
 
269
  msgid "Type"
270
  msgstr "Typ"
271
 
272
  #: inc/Assets.php:1
273
+ msgctxt "legal-text"
274
  msgid "Purpose"
275
  msgstr "Zweck"
276
 
277
  #: inc/Assets.php:1
278
+ msgctxt "legal-text"
279
  msgid "History of your privacy settings"
280
  msgstr "Privatsphäre-Einstellungen: Historie"
281
 
282
  #: inc/Assets.php:1
283
+ msgctxt "legal-text"
284
  msgid "Show consent from"
285
  msgstr "Einwilligungen anzeigen vom"
286
 
287
  #: inc/Assets.php:1
288
+ msgctxt "legal-text"
289
  msgid "Not yet consented to"
290
  msgstr "Noch nicht eingewilligt"
291
 
298
  msgstr "Schließen ohne Speichern"
299
 
300
  #: inc/Assets.php:1
301
+ msgctxt "legal-text"
302
  msgid "Provider"
303
  msgstr "Anbieter"
304
 
305
  #: inc/Assets.php:1
306
+ msgctxt "legal-text"
307
  msgid "Privacy Policy"
308
  msgstr "Datenschutzerklärung"
309
 
310
  #. translators:
311
  #: inc/Assets.php:1
312
+ msgctxt "legal-text"
313
  msgid "and %d more"
314
  msgstr "und %d mehr"
315
 
316
  #. translators:
317
+ #: inc/Assets.php:1
318
+ msgctxt "legal-text"
319
  msgid "US data processing"
320
  msgstr "US-Datenverarbeitung"
321
 
709
  msgid ""
710
  "In recent months, more clarity has been created about what consent "
711
  "management on websites should look like - and what it shouldn't. In "
712
+ "particular, through the <a href=\"%1$s\" target=\"_blank\">TTDSG</a> "
713
+ "(Telecommunications Telemedia Data Protection Act; Germany) and <a href="
714
+ "\"%2$s\" target=\"_blank\">Guidance of the Conference of Independent Data "
715
+ "Protection Authorities for cookie banners</a> (coordinated legal "
716
+ "interpretation of all German data protection authorities; in German), there "
717
+ "are now clearer rules that further interpret or complement the EU-wide "
718
+ "applicable <a href=\"%3$s\" target=\"_blank\">ePrivacy Directive</a> and <a "
719
+ "href=\"%4$s\" target=\"_blank\">GDPR</a>. Furthermore, there were important "
720
+ "decisions such as the evaluation of <a href=\"%5$s\" target=\"_blank\">TCF "
721
+ "by ADP (Belgium)</a>, the <a href=\"%6$s\" target=\"_blank\">Google "
722
+ "Analytics decision by dsb (Austria)</a> and the <a href=\"%7$s\" target="
723
+ "\"_blank\">position on Google Analytics by CNIL</a>."
 
 
 
 
 
 
724
  msgstr ""
725
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
726
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
727
+ "aussehen sollte. Insbesondere durch das <a href=\"%1$s\" target=\"_blank\""
728
+ ">TTDSG</a> (Telekommunikation-Telemedien-Datenschutz-Gesetz) und die <a href="
729
+ "\"%2$s\" target=\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
 
 
730
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
731
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
732
+ "Regeln, welche die EU-weit geltende <a href=\"%3$s\" target=\"_blank\""
733
+ ">ePrivacy-Richtlinie</a> und <a href=\"%4$s\" target=\"_blank\">DSGVO</a> "
734
+ "weiter auslegen oder ergänzen. Außerdem gab es wichtige Entscheidungen wie "
735
+ "die Bewertung von <a href=\"%5$s\" target=\"_blank\">TCF durch ADP "
736
+ "(Belgien)</a>, die <a href=\"%6$s\" target=\"_blank\">Google Analytics "
737
+ "Entscheidung von dsb (Österreich)</a> und die <a href=\"%7$s\" target="
738
+ "\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
739
+
740
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
741
+ msgid "https://www.gesetze-im-internet.de/ttdsg/"
742
+ msgstr "https://www.gesetze-im-internet.de/ttdsg/"
743
+
744
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
745
+ #: inc/view/customize/banner/BodyDesign.php:1
746
+ #: inc/view/customize/banner/Decision.php:1
747
+ #: inc/view/customize/banner/individual/SaveButton.php:1
748
+ msgid ""
749
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
750
+ "pdf"
751
+ msgstr ""
752
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
753
+ "pdf"
754
+
755
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
756
+ msgid "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex%3A32009L0136"
757
+ msgstr "https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32009L0136"
758
+
759
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
760
+ msgid "https://gdpr-info.eu/"
761
+ msgstr "https://dsgvo-gesetz.de/"
762
+
763
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
764
+ msgid ""
765
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
766
+ "n-21-2022-english.pdf"
767
+ msgstr ""
768
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-"
769
+ "fond-n-21-2022-english.pdf"
770
+
771
+ #. translators:
772
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
773
+ msgid ""
774
+ "https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%2$20Google"
775
+ "%20Analytics_DE_bk_0.pdf"
776
+ msgstr ""
777
+ "https://noyb.eu/sites/default/files/2022-01/"
778
+ "E-DSB%20-%2$20Google%20Analytics_DE_bk_0.pdf"
779
+
780
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
781
+ msgid ""
782
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
783
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
784
+ msgstr ""
785
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
786
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
787
 
788
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
789
  msgid ""
844
  #. translators:
845
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
846
  msgid ""
847
+ "In accordance with the requirements of the &quot;<a href=\"%s\" target="
 
848
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
849
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
850
  "and revoke consent must be directly accessible on every sub-page of your "
851
  "website."
852
  msgstr ""
853
+ "Gemäß den Anforderungen des <a href=\"%s\" target=\"_blank\">"
 
854
  "\"Orientierungshilfe der Konferenz der unabhängigen "
855
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
856
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
993
  msgid "Updates in v3.0: You should act to be safe!"
994
  msgstr "Updates in v3.0: Du solltest handeln, um sicher zu sein!"
995
 
996
+ #. translators:
997
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
998
  msgid ""
999
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
1000
  "have implemented, among other things, current legal adjustments. Read more "
1001
+ "about the changes in our <a href=\"%s\" target=\"_blank\">blog post</a>."
 
1002
  msgstr ""
1003
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
1004
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
1005
+ "Änderungen erfährst du in unserem <a href=\"%s\" target=\"_blank\""
1006
+ ">Blogbeitrag.</a>."
1007
+
1008
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1009
+ msgid "https://devowl.io/2022/real-cookie-banner-3-0/"
1010
+ msgstr "https://devowl.io/de/2022/real-cookie-banner-3-0/"
1011
 
1012
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1013
  msgid ""
1065
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1066
  "Vorgehen für deinen Einzelfall zu klären."
1067
 
1068
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1069
+ msgid "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1070
+ msgstr "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1071
+
1072
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1073
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1074
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1075
 
1076
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1077
+ msgid ""
1078
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1079
+ msgstr ""
1080
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1081
+
1082
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1083
  msgid "Statement of the IAB Europe (English)"
1084
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1085
 
1086
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1087
+ msgid ""
1088
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1089
+ msgstr ""
1090
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1091
+
1092
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1093
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1094
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
1467
  "\"_blank\">%3$s</a>. In diesem Fall musst du auch den \"Code bei Opt-in "
1468
  "ausführen\" entfernen."
1469
 
1470
+ #: inc/overrides/pro/presets/ActiveCampaignSiteTrackingPreset.php:1
1471
+ msgid "https://wordpress.org/plugins/activecampaign-subscription-forms/"
1472
+ msgstr "https://de.wordpress.org/plugins/activecampaign-subscription-forms/"
1473
+
1474
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1475
  msgid ""
1476
  "AddThis allows providing links and buttons for sharing content on a variety "
1524
  "Benutzer eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1525
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1526
 
1527
+ #. translators:
1528
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1529
  msgid ""
1530
+ "This template assumes that you use the <a href=\"%s\" target=\"_blank"
1531
+ "\">AddToAny WordPress plugin</a>. The template is not suitable to add "
1532
+ "Facebook Like, Twitter Tweet or Pinterest Pin button in AddToAny. If you "
1533
+ "want to use any of these buttons, please use it without AddToAny and "
1534
+ "additionally create the cookies and content blockers for the respective "
1535
+ "service."
1536
  msgstr ""
1537
+ "Diese Vorlage setzt voraus, dass du das <a href=\"%s\" target=\"_blank\""
1538
+ ">AddToAny WordPress Plugin</a> verwendest. Die Vorlage ist nicht geeignet, "
1539
+ "um Facebook Like, Twitter Tweet oder Pinterest Pin Button in AddToAny "
1540
+ "einzufügen. Wenn du einen dieser Buttons verwenden möchtest, verwende ihn "
1541
+ "bitte ohne AddToAny und erstelle zusätzlich die Cookies und Content Blocker "
1542
+ "für den jeweiligen Dienst."
1543
+
1544
+ #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1545
+ msgid "https://wordpress.org/plugins/add-to-any/"
1546
+ msgstr "https://de.wordpress.org/plugins/add-to-any/"
1547
 
1548
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1549
  msgid ""
1564
  "merken, wie oft welche Werbeplatzierung bereits angezeigt wurde und wie oft "
1565
  "die jeweilige Werbung angeklickt wurde."
1566
 
1567
+ #. translators:
1568
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1569
  msgid ""
1570
+ "Ad Insert plays out ads even without consent. You should <a href=\"%s\" "
1571
+ "target=\"_blank\">obtain consent for the ads via the TCF v2.0 or newer "
1572
+ "standard</a>. Only some features of the plugin require you to obtain consent "
1573
+ "for Ad Inserter."
1574
  msgstr ""
1575
+ "Ad Insert spielt Werbung auch ohne Einwilligung aus. Du solltest <a href=\"%"
1576
+ "s\" target=\"_blank\">die Einwilligung für die Anzeigen über den TCF v2.0 "
1577
+ "oder neueren Standard einholen</a>. Nur für einige Features des Plugins "
1578
+ "musst du die Einwilligung für Ad Inserter einholen."
1579
+
1580
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1581
+ msgid "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1582
+ msgstr "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1583
 
1584
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1585
  msgid ""
1597
  "deaktiviert hast, da dieser Teil des Adblockers Daten an Google und Media."
1598
  "net überträgt, bevor du deine Einwilligung dazu hast."
1599
 
1600
+ #. translators:
1601
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1602
  msgid ""
1603
+ "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"%s\" "
1604
+ "target=\"_blank\">impression and click limits</a> feature of Ad Inserter "
1605
+ "Pro. The duration of the cookie depends on the settings of the feature."
 
1606
  msgstr ""
1607
+ "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn du das <a href=\"%s\" "
1608
+ "target=\"_blank\">Impressions- und Klick-Limit</a> Feature von Ad Inserter "
1609
+ "Pro nutzt. Die Dauer des Cookies hängt von den Einstellungen des Features ab."
1610
+
1611
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1612
+ msgid "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1613
+ msgstr "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1614
 
1615
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1616
  msgid ""
1838
  msgid "Awin Publisher ID"
1839
  msgstr "Awin-Publisher-ID"
1840
 
1841
+ #. translators:
1842
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1843
  msgid ""
1844
+ "You find your publisher ID in the <a href=\"%s\" target=\"_blank\">account "
1845
+ "overview</a> directly blow your account name."
1846
  msgstr ""
1847
+ "Du findest deine Publisher ID in der <a href=\"%s\" target=\"_blank\""
1848
+ ">Account Übersicht</a> direkt unter deinem Benutzernamen."
1849
+
1850
+ #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1851
+ msgid "https://ui.awin.com/user"
1852
+ msgstr "https://ui.awin.com/user"
1853
 
1854
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1855
  msgid ""
1905
  "Auf <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> Du unter Tools > "
1906
  "Conversion tracking > UET tag findest Du Deinen UET-Tag in der Tag-Tabelle."
1907
 
1908
+ #: inc/overrides/pro/presets/BingAdsPreset.php:1
1909
+ msgid "https://ads.microsoft.com"
1910
+ msgstr "https://ads.microsoft.com"
1911
+
1912
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1913
  msgid ""
1914
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
2361
  msgid "etracker Account Key"
2362
  msgstr "etracker Account Key"
2363
 
2364
+ #. translators:
2365
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2366
  msgid ""
2367
+ "You can find your etracker account key under <a href=\"%s\" target=\"_blank"
2368
+ "\">Account info > Settings> Account</a> of your etracker account."
 
2369
  msgstr ""
2370
+ "Du findest deinen etracker Account Key unter <a href=\"%s\" target=\"_blank\""
2371
+ ">Account Info > Einstellungen > Account</a> deines etracker Accounts."
2372
+
2373
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2374
+ msgid "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2375
+ msgstr "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2376
 
2377
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2378
  msgid ""
2389
  "Tracking widersprechen, indem er diesen Service in deinem Cookie Banner "
2390
  "deaktiviert."
2391
 
2392
+ #. translators:
2393
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2394
  msgid ""
2395
  "We also recommend that you deactivate the non-aggregated reporting via the "
2396
+ "<a href=\"%s\" target=\"_blank\">dashboard</a> under <i>menu (top left) > "
2397
+ "Account-ID > Settings > Privacy > Consent-free tracking cookies in "
2398
+ "accordance with CNIL guidelines</i> to ensure that there is definitely no "
2399
+ "personal reference for the collected data."
2400
+ msgstr ""
2401
+ "Wir empfehlen dir zusätzlich über das <a href=\"%s\" target=\"_blank\""
2402
+ ">Dashboard</a> unter <i>Menü (obene links) > Account-ID > Einstellungen > "
2403
+ "Datenschutz > Einwilligungs-freie Tracking Cookies gemäß Anforderungen der "
2404
+ "CNIL</i> die nicht aggregierten Reportings zu deaktivieren, um "
2405
+ "sicherzustellen, dass definitiv kein Personenbezug bei den erhobenen Daten "
2406
+ "besteht."
2407
+
2408
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2409
+ #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2410
+ msgid "https://newapp.etracker.com/"
2411
+ msgstr "https://newapp.etracker.com/"
2412
 
2413
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2414
  msgid "etracker: enhanced tracking"
2456
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2457
  "anreichert."
2458
 
2459
+ #. translators:
2460
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2461
  msgid ""
2462
  "In order for the consent to be taken into account, you must activate the "
2463
+ "toggle \"Opt-In active\" via the <a href=\"%s\" target=\"_blank\">dashboard</"
2464
+ "a> under <i>menu (top left) > Account-ID > Settings > Privacy > Tracking Opt-"
2465
+ "In and agreement</i>, but then switch to \"own Opt-In\" so that etracker "
2466
+ "does not display its own consent dialog, but instead uses the consent "
2467
+ "collected by Real Cookie Banner."
2468
+ msgstr ""
2469
+ "Damit die Einwilligung berücksichtigt wird, musst du via <a href=\"%s\" "
2470
+ "target=\"_blank\">Dashboard</a> unter <i>Menü (oben links) > Account-ID > "
2471
+ "Einstellungen > Datenschutz > Tracking Opt-In und Zustimmung</i> den Toggle "
2472
+ "\"Opt-In aktiv\" aktivieren und anschließend auf \"eigenes Opt-In\" "
2473
+ "umstellen. Damit wird etracker keinen eigenen Einwilligungsdialog anzeigen, "
2474
+ "sondern die Einwilligung, erhoben von Real Cookie Banner, verwenden."
 
2475
 
2476
  #. translators:
2477
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
2779
  "können mit den Daten der auf facebook.com registrierten Benutzer verknüpft "
2780
  "werden."
2781
 
2782
+ #. translators:
2783
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2784
  msgid ""
2785
+ "You can use Facebook's <a href=\"%s\" target=\"_blank\">embedded post "
2786
+ "generator</a> to generate a HTML code to embed post with the Facebook "
2787
+ "JavaScript SDK. Loading the JavaScript SDK is part of the opt-in code. All "
2788
+ "you need to do is place the HTML div and blockqoute elements where you want "
2789
+ "the embedded post to be visible on your site. If you use Facebook post as "
2790
+ "Iframe embeeds, please create in addition a content blocker for Facebook "
2791
+ "Posts to block loading of the content before you have the consent of the "
2792
+ "user."
2793
+ msgstr ""
2794
+ "Du kannst den <a href=\"%s\" target=\"_blank\">Post-Generator von Facebook </"
2795
+ "a> verwenden, um einen HTML-Code zum Einbetten von Posts mit dem Facebook "
 
2796
  "JavaScript SDK zu generieren. Das Laden des JavaScript-SDK ist Teil des Opt-"
2797
  "in Codes. Alles was du tun musst, ist das HTML-Div und blockqoute-Element "
2798
  "dort zu platzieren, wo der eingebettete Beitrag auf deiner Seite sichtbar "
2800
  "bitte zusätzlich einen Inhaltsblocker für Facebook, um das Laden ihres "
2801
  "Inhalts zu blockieren, bevor du die Einwilligung des Nutzers hast."
2802
 
2803
+ #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2804
+ msgid "https://developers.facebook.com/docs/plugins/embedded-posts/"
2805
+ msgstr "https://developers.facebook.com/docs/plugins/embedded-posts/"
2806
+
2807
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2808
  msgid ""
2809
  "Facebook Share button allows users to share a link directly on Facebook. The "
3004
  msgid "Please fill in a valid tracking ID!"
3005
  msgstr "Bitte gib eine gültige Tracking ID an!"
3006
 
3007
+ #. translators:
3008
  #: inc/overrides/pro/presets/GoogleAds.php:1
3009
  msgid ""
3010
+ "You can find your Adwords ID in <a href=\"%s\" target=\"_blank\">Google Ads</"
3011
+ "a> at Tools > Measurement > Conversions > Click on the name of the "
3012
+ "conversation action > Tag setup > Install the tag yourself > Adwords ID in "
3013
+ "the code (e.g. AW-123456789)."
3014
  msgstr ""
3015
+ "Deine Adwords ID findest du in <a href=\"%s\" target=\"_blank\">Google Ads</"
3016
+ "a> unter Tools > Messung > Conversions > Conversion-Aktion > Tag-Einrichtung "
3017
+ "> Tag selbst einfügen > Adwords ID in dem Code (z.B. AW-123456789)."
3018
+
3019
+ #: inc/overrides/pro/presets/GoogleAds.php:1
3020
+ msgid "https://ads.google.com/aw/overview"
3021
+ msgstr "https://ads.google.com/aw/overview"
3022
 
3023
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3024
  msgid ""
3045
  msgid "Google Adsense Publisher ID"
3046
  msgstr "Google Adsense Publisher-ID"
3047
 
3048
+ #. translators:
3049
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3050
  msgid ""
3051
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
3052
  "(if activated in your Adsense account) can be displayed. You can find it in "
3053
+ "the <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> under "
3054
+ "<i>Account > Settings > Account information</i>."
3055
  msgstr ""
3056
+ "Du musst deine Google Adsense Publisher ID eingeben, damit z.B. Auto Ads ("
3057
+ "falls in deinem Adsense Konto aktiviert) angezeigt werden können. Du findest "
3058
+ "sie im <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> unter "
3059
+ "<i>Account > Einstellungen > Kontoinformationen</i>."
3060
+
3061
+ #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3062
+ msgid "https://www.google.com/adsense"
3063
+ msgstr "https://www.google.com/adsense"
3064
 
3065
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3066
  msgid ""
3106
  msgid "Google Analytics Measurement ID"
3107
  msgstr "Google Analytics Measurement-ID"
3108
 
3109
+ #. translators:
3110
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3111
  msgid ""
3112
  "You can find your Measurement ID (also called property ID) in the <a href="
3113
+ "\"%s\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3114
+ "Select your account > Select your property > Setup Assistant > Tag "
3115
+ "installation > Select your website."
3116
  msgstr ""
3117
+ "Du findest deine Measurement ID (auch Property ID genannt) im <a href=\"%s\" "
3118
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3119
+ "Wähle deinen Account aus > Wähle deine Property aus > Setup Assistant > Tag "
3120
+ "Installation > Wähle deine Website aus."
3121
+
3122
+ #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3123
+ #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3124
+ msgid "https://analytics.google.com/analytics/web/"
3125
+ msgstr "https://analytics.google.com/analytics/web/"
3126
 
3127
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3128
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3172
  msgid "Google Analytics Tracking ID"
3173
  msgstr "Google Analytics Tracking-ID"
3174
 
3175
+ #. translators:
3176
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3177
  msgid ""
3178
+ "You can find your Tracking ID (also called Property ID) in the <a href=\"%s"
3179
+ "\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3180
+ "Select your account > Select your property > Tracking Info > Tracking Code."
 
3181
  msgstr ""
3182
+ "Du findest deine Tracking ID (auch Property ID genannt) im <a href=\"%s\" "
3183
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3184
+ "Wähle deinen Account > Wähle deine Property > Tracking Info > Tracking Code."
 
3185
 
3186
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3187
  msgid ""
3425
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
3426
  "Statistiken über sein Verhalten zu sammeln."
3427
 
3428
+ #. translators:
3429
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3430
  msgid ""
3431
+ "You have to create a so-called Beacon on <a href=\"%s\" target=\"_blank"
3432
+ "\">secure.helpscout.net</a> > Manager > Beacon > New Beacon. After creating "
3433
+ "in the Beacon Customizer, the URL looks like <code>https://secure.helpscout."
3434
+ "net/settings/beacons/c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. "
3435
+ "This means that the HelpScout Beacon ID is <code>c676047b-"
3436
+ "c2e8-45b1-8319-344f4e7e2431</code>."
3437
+ msgstr ""
3438
+ "Du musst einen sogenannten Beacon auf <a href=\"%s\" target=\"_blank\">secure"
3439
+ ".helpscout.net</a> > Manager > Beacon > New Beacon erstellen. Nach dem "
3440
+ "Erstellen im Beacon Customizer sieht die URL ähnlich aus wie "
3441
+ "<code>https://secure.helpscout.net/settings/beacons/"
3442
+ "c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. Das bedeutet, dass "
3443
+ "die HelpScout Beacon-ID <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code> "
3444
+ "lautet."
3445
+
3446
+ #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3447
+ msgid "https://secure.helpscout.net"
3448
+ msgstr "https://secure.helpscout.net"
3449
 
3450
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3451
  msgid "HelpScout Beacon ID"
3470
  msgid "Hotjar ID"
3471
  msgstr "Hotjar-ID"
3472
 
3473
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3474
+ msgid "https://wordpress.org/plugins/hotjar/"
3475
+ msgstr "https://de.wordpress.org/plugins/hotjar/"
3476
+
3477
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3478
+ msgid "official Hotjar WordPress Plugin"
3479
+ msgstr "offizielles Hotjar WordPress Plugin"
3480
+
3481
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3482
  msgid ""
3483
  "Imgur allows embedding content posted on imgur.com directly into websites."
3547
  msgid "Intercom application ID"
3548
  msgstr "Intercom Application ID"
3549
 
3550
+ #: inc/overrides/pro/presets/IntercomChatPreset.php:1
3551
+ msgid "https://wordpress.org/plugins/intercom/"
3552
+ msgstr "https://de.wordpress.org/plugins/intercom/"
3553
+
3554
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3555
  msgid ""
3556
  "Issuu allows embedding content posted on issuu.com directly into websites. "
3684
  msgid "https://linkedin.com/legal/privacy-policy"
3685
  msgstr "https://de.linkedin.com/legal/privacy-policy"
3686
 
3687
+ #. translators:
3688
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3689
  msgid ""
3690
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3691
+ "\"%s\" target=\"_blank\">where to find the LinkedIn Partner ID</a> in your "
3692
+ "LinkedIn Ads account."
3693
  msgstr ""
3694
  "Du findest in der Wissensdatenbank von LinkedIn einen Artikel, der dir "
3695
+ "erklärt, <a href=\"%s\" target=\"_blank\">wo du die LinkedIn Partner ID "
3696
+ "findest</a> in deinem LinkedIn Ads Konto."
3697
+
3698
+ #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3699
+ msgid "https://www.linkedin.com/help/lms/answer/a415871"
3700
+ msgstr "https://www.linkedin.com/help/lms/answer/a415871"
3701
 
3702
  #: inc/overrides/pro/presets/LoomPreset.php:1
3703
  msgid ""
3823
  "Anmeldung verwendest, das versteckt werden kann (z.B. Popup). Nur in diesem "
3824
  "Fall wird ein Cookie gesetzt."
3825
 
3826
+ #. translators:
3827
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3828
  msgid ""
3829
  "Personal data will never be transferred directly from the browser of your "
3830
  "visitors to MailPoet, but only, for example, when you sign up for the "
3831
  "newsletter via your WordPress installation. You should always follow the <a "
3832
+ "href=\"%s\" target=\"_blank\">MailPoet Guide to Conform to GDPR</a>."
 
3833
  msgstr ""
3834
  "Personenbezogene Daten werden niemals direkt vom Browser deiner Besucher an "
3835
  "MailPoet übertragen, sondern nur z.B. bei der Anmeldung zum Newsletter über "
3836
+ "deine WordPress-Installation. Du solltest immer den <a href=\"%s\" target="
3837
+ "\"_blank\">MailPoet Guide to Conform to GDPR</a>. beachten."
3838
+
3839
+ #: inc/overrides/pro/presets/MailPoetPreset.php:1
3840
+ msgid "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3841
+ msgstr "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3842
 
3843
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3844
  msgid ""
3914
  msgid "Please provide a valid hash!"
3915
  msgstr "Bitte gib einen gültigen Hash an!"
3916
 
3917
+ #. translators:
3918
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3919
  msgid ""
3920
+ "You find your Metricool hash in the <a href=\"%s\" target=\"_blank"
3921
+ "\">Metricool Brand Conncetions</a>, if you use \"Connect web\" and choose "
3922
+ "the integration as JavaScript tag, within the generated JavaScript."
 
3923
  msgstr ""
3924
+ "Du findest deinen Metricool Hash in den <a href=\"%s\" target=\"_blank\""
3925
+ ">Metricool Brand Conncetions</a>, wenn du \"Connect web\" nutzt und die "
3926
+ "Integration als JavaScript-Tag auswählst, innerhalb des generierten "
3927
+ "JavaScript."
3928
+
3929
+ #: inc/overrides/pro/presets/MetricoolPreset.php:1
3930
+ msgid "https://app.metricool.com/brands/connections"
3931
+ msgstr "https://app.metricool.com/brands/connections"
3932
 
3933
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3934
  msgid ""
3959
  "projects/view/12cggd77jl/</code> lautet, ist deine Projekt-ID "
3960
  "<code>12cggd77jl</code>."
3961
 
3962
+ #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3963
+ msgid "https://wordpress.org/plugins/microsoft-clarity/"
3964
+ msgstr "https://de.wordpress.org/plugins/microsoft-clarity/"
3965
+
3966
  #. translators:
3967
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3968
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
3998
  msgid "Mouseflow Website ID"
3999
  msgstr "Mouseflow Website-ID"
4000
 
4001
+ #. translators:
4002
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
4003
  msgid ""
4004
  "You can find your Mouseflow website ID by hovering over the appropriate "
4005
+ "website at <a href=\"%s\" target=\"_blank\">eu.mouseflow.com/websites</a>. "
4006
+ "You will then see a gear icon that you can click on. In the settings that "
4007
+ "appear, you should find a <code>Website ID</code> field."
 
4008
  msgstr ""
4009
+ "Du findest deine Mouseflow Website ID, indem du auf <a href=\"%s\" target="
4010
+ "\"_blank\">eu.mouseflow.com/websites</a> mit dem Mauszeiger über die "
4011
+ "entsprechende Website fährst. Du siehst dann ein Zahnradsymbol, auf das du "
4012
+ "klicken kannst. In den Einstellungen, die dann erscheinen, solltest du ein "
4013
+ "Feld <code>Website ID</code> finden."
4014
+
4015
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4016
+ msgid "http://eu.mouseflow.com/websites"
4017
+ msgstr "http://eu.mouseflow.com/websites"
4018
+
4019
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4020
+ msgid "https://wordpress.org/plugins/mouseflow-for-wordpress/"
4021
+ msgstr "https://de.wordpress.org/plugins/mouseflow-for-wordpress/"
4022
 
4023
  #. translators:
4024
  #: inc/overrides/pro/presets/MtmPreset.php:1
4250
  msgid "Pinterest Tag ID"
4251
  msgstr "Pinterest Tag-ID"
4252
 
4253
+ #. translators:
4254
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4255
  msgid ""
4256
+ "You can view your Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</"
4257
+ "a> under Ads > Conversions > Add code to website > Add code. It is displayed "
4258
+ "in the top right corner of the modal."
4259
  msgstr ""
4260
+ "Du kannst deine Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</a> "
4261
+ "unter Anzeigen > Conversions > Code zur Website hinzufügen > Code hinzufügen "
4262
+ "einsehen. Er wird in der oberen rechten Ecke des Modals angezeigt."
4263
+
4264
+ #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4265
+ msgid "https://ads.pinterest.com/"
4266
+ msgstr "https://ads.pinterest.com/"
4267
 
4268
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4269
  msgid ""
4435
  "speichern die Sprache des Nutzers und können den Nutzer auf die Version der "
4436
  "Webseite umleiten, welche der Sprache des Browsers des Nutzers entspricht."
4437
 
4438
+ #. translators:
4439
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4440
  msgid ""
4441
  "Please make sure you have not renamed the Polylang cookie name or change it "
4442
  "in the same way in the technical definitions above. Learn more about how to "
4443
+ "change the Polylang cookie name <a href=\"%s\" target=\"_blank\">in their "
 
4444
  "documentation</a>."
4445
  msgstr ""
4446
  "Bitte vergewissere dich, dass du den Namen des Polylang Cookies nicht "
4447
  "umbenannt oder in den technischen Definitionen oben auf die gleiche Weise "
4448
  "geändert hast. Mehr darüber, wie man den Polylang Cookie-Namen ändert, "
4449
+ "findest du <a href=\"%s\" target=\"_blank\">in der Dokumentation</a>."
4450
+
4451
+ #: inc/overrides/pro/presets/PolyLangPreset.php:1
4452
+ msgid "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4453
+ msgstr "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4454
 
4455
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4456
  msgid ""
4756
  "frühere Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4757
  "Statistiken über sein Verhalten zu sammeln."
4758
 
4759
+ #. translators:
4760
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4761
  msgid ""
4762
+ "You can create your own custom chat widget at <a href=\"%s\" target=\"_blank"
4763
+ "\">dashboard.tawk.to</a> > Settings > Chat Widget. The chat widget in the "
4764
+ "opt-in code is just the default example."
4765
  msgstr ""
4766
+ "Du kannst dein eigenes benutzerdefiniertes Chat-Widget unter <a href=\"%s\" "
4767
+ "target=\"_blank\">dashboard.tawk.to</a> > Einstellungen > Chat Widget "
4768
+ "erstellen. Das Chat-Widget im Opt-in Code ist nur das Standardbeispiel."
4769
+
4770
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4771
+ msgid "https://dashboard.tawk.to"
4772
+ msgstr "https://dashboard.tawk.to"
4773
 
4774
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4775
  msgid "tawk.to ID"
4776
  msgstr "tawk.to ID"
4777
 
4778
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4779
+ msgid "https://wordpress.org/plugins/tawkto-live-chat/"
4780
+ msgstr "https://de.wordpress.org/plugins/tawkto-live-chat/"
4781
+
4782
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4783
  msgid ""
4784
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
4818
  "Nachrichten mit seinem Chat-Verlauf zu verknüpfen und detaillierte "
4819
  "Statistiken über sein Verhalten zu sammeln."
4820
 
4821
+ #. translators:
4822
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4823
  msgid ""
4824
+ "You get your Tidio JS ID on <a href=\"%s\" target=\"_blank\">tidio.com</a> "
4825
+ "under Settings > Live Chat > Integration > JavaScript in the given "
4826
+ "JavaScript snipped. You can adjust the appearance of the chat at tidio.com "
4827
+ "under Settings > Live Chat > Appearance."
4828
  msgstr ""
4829
+ "Du bekommst deine Tidio JS ID auf <a href=\"%s\" target=\"_blank\">tidio."
4830
+ "com</a> unter Einstellungen > Live Chat > Integration > JavaScript in dem "
4831
+ "angegebene JavaScript-Code. Du kannst das Aussehen des Chats auf tidio.com "
4832
+ "unter Einstellungen > Live Chat > Aussehen anpassen."
4833
+
4834
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4835
+ msgid "https://tidio.com"
4836
+ msgstr "https://www.tidio.com/de/"
4837
 
4838
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4839
  msgid "Tidio JS ID"
4840
  msgstr "Tidio JS-ID"
4841
 
4842
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4843
+ msgid "https://wordpress.org/plugins/tidio-live-chat/"
4844
+ msgstr "https://de.wordpress.org/plugins/tidio-live-chat/"
4845
+
4846
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4847
  msgid ""
4848
  "TikTok Pixel helps to determine whether you are the target audience for "
4874
  msgid "TikTok Pixel ID"
4875
  msgstr "TikTok Pixel-ID"
4876
 
4877
+ #. translators:
4878
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4879
  msgid ""
4880
+ "In the <a href=\"%s\" target=\"_blank\">Event Manager of the TikTok Ad "
4881
+ "Manager</a> you can create a website pixel. Select \"Manually install pixel "
4882
+ "code\" for the type of integration. Whether you want to use the \"Standard "
4883
+ "Mode\" or \"Developer Mode\" depends on your purpose."
 
4884
  msgstr ""
4885
+ "Im <a href=\"%s\" target=\"_blank\">Event Manager des TikTok Ad Managers</a> "
4886
+ "kannst du ein Website-Pixel erstellen. Wähle für die Art der Integration "
4887
+ "\"Manually install pixel code\". Ob du den \"Standard Mode\" oder den "
4888
+ "\"Developer Mode\" verwenden möchtest, hängt von deinem Vorhaben ab."
4889
+
4890
+ #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4891
+ msgid "https://ads.tiktok.com/i18n/events_manager/"
4892
+ msgstr "https://ads.tiktok.com/i18n/events_manager/"
4893
 
4894
+ #. translators:
4895
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4896
  msgid ""
4897
+ "After creating the TikTok Pixel you return to the <a href=\"%s\" target="
4898
+ "\"_blank\">Event Manager of the TikTok Ad Manager</a> and select \"Manage\" "
4899
+ "in the section \"Website Pixel\". You will then see an overview of all the "
4900
+ "TikTok pixels you have created. Each TikTok pixel has its ID directly under "
4901
+ "its name."
4902
  msgstr ""
4903
+ "Nach der Erstellung des TikTok Pixel kehrst du zum <a href=\"%s\" target="
4904
+ "\"_blank\">Event Manager des TikTok Ad Managers</a> zurück und wählst im "
4905
+ "Abschnitt \"Website Pixel\" den Punkt \"Manage\". Du siehst dann eine "
4906
+ "Übersicht über alle TikTok Pixel, die du erstellt hast. Jedes TikTok-Pixel "
4907
+ "hat seine ID direkt unter seinem Namen."
4908
 
4909
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4910
  msgid ""
5021
  msgid "https://www.userlike.com/en/terms#privacy-policy"
5022
  msgstr "https://www.userlike.com/de/terms#privacy-policy"
5023
 
5024
+ #. translators:
5025
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5026
  msgid ""
5027
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
5028
+ "You can find it in the <a href=\"%s\" target=\"_blank\">Userlike widget "
5029
+ "configurator</a> > Name of the widget > Install > JavaScript Widget code."
 
 
5030
  msgstr ""
5031
  "Bitte füge als Opt-in Code den JavaScript Code deines Userlike Widgets ein. "
5032
+ "Du findest ihn unter <a href=\"%s\" target=\"_blank\">Userlike Widget-"
5033
+ "Konfigurator</a> > Name des Widgets > Installieren > JavaScript Widget code."
5034
+
5035
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5036
+ msgid "https://userlike.com/en/dashboard/um/config/um_widget/overview"
5037
+ msgstr "https://userlike.com/de/dashboard/um/config/um_widget/overview"
5038
 
5039
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5040
  msgid "Example opt-in code"
5041
  msgstr "Beispiel Opt-in Code"
5042
 
5043
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5044
+ msgid "https://wordpress.org/plugins/userlike/"
5045
+ msgstr "https://de.wordpress.org/plugins/userlike/"
5046
+
5047
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5048
+ msgid "Userlike WordPress Plugin"
5049
+ msgstr "Userlike WordPress-Plugin"
5050
+
5051
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5052
  msgid ""
5053
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
5114
  "\"essenzielles Cookie\" und keinen Content Blocker wirst du die volle dir "
5115
  "zustehende Ausschüttungen der VG WORT erhalten können."
5116
 
5117
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5118
+ msgid ""
5119
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5120
+ msgstr ""
5121
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5122
+
5123
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5124
+ msgid "https://www.gesetze-im-internet.de/urhg/__53.html"
5125
+ msgstr "https://www.gesetze-im-internet.de/urhg/__53.html"
5126
+
5127
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5128
  msgid ""
5129
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
5374
  "Du findest Deine Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5375
  "\">Yandex Metrica Tags Liste</a>."
5376
 
5377
+ #: inc/overrides/pro/presets/YandexMetricaPreset.php:1
5378
+ msgid "https://metrica.yandex.com/list/"
5379
+ msgstr "https://metrica.yandex.com/list/"
5380
+
5381
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5382
  msgid ""
5383
  "Zendesk Chat is a customer service tool that provides live chat for "
5406
  "Du findest den Zendesk Widget Key im Zendesk Backend unter Einstellungen > "
5407
  "Widget > Web Widget einbetten als Teil des JavaScript Codes."
5408
 
5409
+ #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5410
+ msgid "https://wordpress.org/plugins/zopim-live-chat/"
5411
+ msgstr "https://de.wordpress.org/plugins/zopim-live-chat/"
5412
+
5413
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5414
  msgid ""
5415
  "Zoho Bookings is a planning software the allows you to book book "
5663
  "du in den individuellen Privatsphäre-Einstellungen."
5664
 
5665
  #: inc/overrides/pro/view/TcfBanner.php:1
5666
+ msgctxt "legal-text"
5667
  msgid ""
5668
  "In addition, you consent to the transfer of data to partners under the TCF "
5669
  "standard for the following purposes:"
5672
  "des TCF-Standards für die folgenden Zwecke zu:"
5673
 
5674
  #: inc/overrides/pro/view/TcfBanner.php:1
5675
+ msgctxt "legal-text"
5676
  msgid "Vendor list"
5677
  msgstr "Liste der Anbieter"
5678
 
5679
  #: inc/overrides/pro/view/TcfBanner.php:1
5680
+ msgctxt "legal-text"
5681
  msgid "Vendors"
5682
  msgstr "Anbieter"
5683
 
5691
  msgstr "Verstecken"
5692
 
5693
  #: inc/overrides/pro/view/TcfBanner.php:1
5694
+ msgctxt "legal-text"
5695
  msgid "Data processing on the legal basis of:"
5696
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5697
 
5698
  #: inc/overrides/pro/view/TcfBanner.php:1
5699
+ msgctxt "legal-text"
5700
  msgid "No vendor requests purposes under this legal basis."
5701
  msgstr "Kein Anbieter beantragt Zwecke auf dieser Rechtsgrundlage."
5702
 
5703
  #: inc/overrides/pro/view/TcfBanner.php:1
5704
+ msgctxt "legal-text"
5705
  msgid "Non-standardized data processing"
5706
  msgstr "Nicht standardisierte Datenverarbeitung"
5707
 
5708
  #: inc/overrides/pro/view/TcfBanner.php:1
5709
+ msgctxt "legal-text"
5710
  msgid ""
5711
  "Some services set cookies and/or process personal data without complying "
5712
  "with consent communication standards. These services are divided into "
5724
  "nach einer Einwilligung genutzt werden."
5725
 
5726
  #: inc/overrides/pro/view/TcfBanner.php:1
5727
+ msgctxt "legal-text"
5728
  msgid "Data processing standardized according to TCF"
5729
  msgstr "Datenverarbeitung standardisiert nach TCF"
5730
 
5731
  #: inc/overrides/pro/view/TcfBanner.php:1
5732
+ msgctxt "legal-text"
5733
  msgid ""
5734
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5735
  "consistent consent for processing of personal data and cookie setting. This "
5745
  "gesetzt, verarbeitet und gespeichert werden."
5746
 
5747
  #: inc/overrides/pro/view/TcfBanner.php:1
5748
+ msgctxt "legal-text"
5749
  msgid "Purposes"
5750
  msgstr "Zwecke"
5751
 
5752
  #: inc/overrides/pro/view/TcfBanner.php:1
5753
+ msgctxt "legal-text"
5754
  msgid ""
5755
  "Purposes describe for which purpose which providers may set cookies and "
5756
  "process personal data. Purposes are pre-selected if there is a legitimate "
5764
  "Einwilligung verarbeitet."
5765
 
5766
  #: inc/overrides/pro/view/TcfBanner.php:1
5767
+ msgctxt "legal-text"
5768
  msgid "Special purposes"
5769
  msgstr "Besondere Zwecke"
5770
 
5771
  #: inc/overrides/pro/view/TcfBanner.php:1
5772
+ msgctxt "legal-text"
5773
  msgid ""
5774
  "Special purposes for setting cookies and processing personal data by our "
5775
  "vendors describe purposes for which we have a legitimate interest that "
5781
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5782
 
5783
  #: inc/overrides/pro/view/TcfBanner.php:1
5784
+ msgctxt "legal-text"
5785
  msgid "Features"
5786
  msgstr "Funktionen"
5787
 
5788
  #: inc/overrides/pro/view/TcfBanner.php:1
5789
+ msgctxt "legal-text"
5790
  msgid ""
5791
  "Features for processing personal data describe how data is used to fulfill "
5792
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
5800
  "Jeder Zweck kann dazu führen, dass Funktionen verwendet werden."
5801
 
5802
  #: inc/overrides/pro/view/TcfBanner.php:1
5803
+ msgctxt "legal-text"
5804
  msgid "Special features"
5805
  msgstr "Besondere Funktionen"
5806
 
5807
  #: inc/overrides/pro/view/TcfBanner.php:1
5808
+ msgctxt "legal-text"
5809
  msgid ""
5810
  "Special features for processing personal data describe how data is used to "
5811
  "fulfill one or more purposes in a profound way. Personal data will only be "
6119
  "(Schriftartwechsel nach ein paar Millisekunden) auf deiner Website "
6120
  "feststellen."
6121
 
6122
+ #. translators:
6123
  #: inc/presets/free/GoogleFontsPreset.php:1
6124
  msgid ""
6125
+ "We therefore recommend <a href=\"%s\" target=\"_blank\">replacing Google "
6126
+ "Fonts with locally hosted fonts</a> when possible, rather than asking for "
6127
+ "consent. We explained how this works in our blog!"
 
6128
  msgstr ""
6129
+ "Wir empfehlen daher, <a href=\"%s\" target=\"_blank\">Google Fonts wenn "
6130
+ "möglich durch lokal gehostete Schriftarten zu ersetzen</a>, anstatt nach "
6131
+ "einer Einwilligung zu fragen. Wie das funktioniert, haben wir in unserem "
6132
+ "Blog erklärt!"
6133
+
6134
+ #: inc/presets/free/GoogleFontsPreset.php:1
6135
+ msgid "https://devowl.io/2022/google-fonts-wordpress-gdpr/"
6136
+ msgstr "https://devowl.io/de/2022/google-fonts-wordpress-dsgvo/"
6137
 
6138
  #: inc/presets/free/GravatarPreset.php:1
6139
  msgid ""
6303
  "Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für diesen Dienst "
6304
  "muss ein Service angelegt werden."
6305
 
6306
+ #. translators:
6307
  #: inc/presets/free/WordPressCommentsPreset.php:1
6308
  msgid ""
6309
  "Do you want to use the comment feature on your website at all? If not, we "
6310
+ "explain in our blog <a href=\"%s\" target=\"_blank\"> how to disable "
6311
+ "comments in WordPress</a>. Then you can also avoid this consent!"
 
6312
  msgstr ""
6313
  "Willst du die Kommentarfunktion auf deiner Website überhaupt nutzen? Wenn "
6314
+ "nicht, erklären wir in unserem Blog, <a href=\"%s\" target=\"_blank\">wie du "
6315
+ "Kommentare in WordPress deaktivieren kannst</a>. Dann kannst du dir die "
6316
+ "Einwilligung auch sparen!"
6317
+
6318
+ #: inc/presets/free/WordPressCommentsPreset.php:1
6319
+ msgid "https://devowl.io/2022/deactivate-wordpress-comments/"
6320
+ msgstr "https://devowl.io/de/2022/wordpress-kommentare-deaktivieren/"
6321
 
6322
  #: inc/presets/free/WordPressEmojisPreset.php:1
6323
  msgid ""
6347
  "können Emojis problemlos ohne das WordPressa-Emoji-Script anzeigen (für das "
6348
  "du diese Einwilligung einholen musst)."
6349
 
6350
+ #. translators:
6351
  #: inc/presets/free/WordPressEmojisPreset.php:1
6352
  msgid ""
6353
  "Unless you need to support particularly old browsers and operating systems, "
6354
+ "we recommend that you <a href=\"%s\" target=\"_blank\">disable the WordPress "
6355
+ "emoji script</a> rather than asking for consent. How to do that, we have "
6356
+ "explained in our blog!"
6357
  msgstr ""
6358
  "Sofern du nicht besonders alte Browser und Betriebssysteme unterstützen "
6359
+ "musst, empfehlen wir dir, das <a href=\"%s\" target=\"_blank\">WordPress-"
6360
+ "Emoji-Script zu deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. "
6361
+ "Wie du das machst, haben wir in unserem Blog erklärt!"
6362
+
6363
+ #: inc/presets/free/WordPressEmojisPreset.php:1
6364
+ msgid "https://devowl.io/2022/disable-emojis-wordpress/"
6365
+ msgstr "https://devowl.io/de/2022/wordpress-emojis-deaktivieren/"
6366
 
6367
  #: inc/presets/free/WordPressPluginEmbed.php:1
6368
  msgid ""
6624
 
6625
  #: inc/presets/UpdateNotice.php:1
6626
  msgid ""
6627
+ "Changes have been made to the templates you use in Real Cookie Banner. You "
6628
+ "should review the proposed changes and adjust your services if necessary to "
6629
+ "be able to remain legally compliant. The following services are affected:"
6630
  msgstr ""
6631
+ "Es wurden Änderungen an den Vorlagen vorgenommen, die du in Real Cookie "
6632
+ "Banner verwendest. Du solltest die vorgeschlagenen Änderungen überprüfen und "
6633
+ "deine Services gegebenenfalls anpassen, um rechtskonform zu bleiben. Die "
6634
+ "folgenden Services sind betroffen:"
6635
 
6636
  #: inc/presets/UpdateNotice.php:1
6637
  msgid "Service (Cookie)"
6638
  msgstr "Service (Cookie)"
6639
 
6640
  #: inc/presets/UpdateNotice.php:1
6641
+ msgid "Review changes"
6642
+ msgstr "Änderungen überprüfen"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6643
 
6644
  #: inc/presets/UpdateNotice.php:1
6645
  msgid "Dismiss this notice"
6700
  msgstr "Service-Gruppe"
6701
 
6702
  #: inc/settings/CookieGroup.php:1
6703
+ msgctxt "legal-text"
6704
  msgid ""
6705
  "Essential services are required for the basic functionality of the website. "
6706
  "They only contain technically necessary services. These services cannot be "
6711
  "Services kann nicht widersprochen werden."
6712
 
6713
  #: inc/settings/CookieGroup.php:1
6714
+ msgctxt "legal-text"
6715
  msgid ""
6716
  "Functional services are necessary to provide features beyond the essential "
6717
+ "functionality such as prettier fonts, video playback or interactive web 2.0 "
6718
  "features. Content from e.g. video platforms and social media platforms are "
6719
  "blocked by default, and can be consented to. If the service is agreed to, "
6720
  "this content is loaded automatically without further manual consent."
6727
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6728
 
6729
  #: inc/settings/CookieGroup.php:1
6730
+ msgctxt "legal-text"
6731
  msgid ""
6732
  "Statistics services are needed to collect pseudonymous data about the "
6733
  "visitors of the website. The data enables us to understand visitors better "
6738
  "besser zu verstehen und die Website zu optimieren."
6739
 
6740
  #: inc/settings/CookieGroup.php:1
6741
+ msgctxt "legal-text"
6742
  msgid ""
6743
  "Marketing services are used by us and third parties to track the behaviour "
6744
  "of individual visitors (across multiple pages), analyse the data collected "
6746
  "us to track visitors across multiple websites."
6747
  msgstr ""
6748
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6749
+ "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und "
6750
+ "z.B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6751
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6752
 
6753
  #: inc/settings/Revision.php:1
6892
 
6893
  #: inc/view/checklist/SaveSettings.php:1
6894
  msgid ""
6895
+ "Decide which features should be enabled in your cookie banner depending on "
6896
+ "your needs."
6897
  msgstr ""
6898
+ "Entscheide, welche Features in deinem Cookie Banner nach deinen "
6899
+ "Anforderungen aktiviert sein sollen."
6900
 
6901
  #: inc/view/checklist/SaveSettings.php:1
6902
  msgid "Manage settings"
6909
  #: inc/view/checklist/Scanner.php:1
6910
  msgid ""
6911
  "Scan your website to identify services used and external URLs that may "
6912
+ "transmit personal data and/or set cookies."
6913
  msgstr ""
6914
  "Scanne deine Website, um genutzte Services und externe URLs zu "
6915
+ "identifizieren, die persönliche Daten übertragen und/oder Cookies setzen "
6916
+ "können."
6917
 
6918
  #: inc/view/checklist/Scanner.php:1
6919
  msgid "Open scanner"
6927
  msgid ""
6928
  "Your website visitors must be able to view their consent history, change "
6929
  "their consent, or withdraw their consent at any time. This must be as easy "
6930
+ "as giving consent. Therefore, the legal links must be included on every "
6931
  "subpage of the website (e.g. in the footer)."
6932
  msgstr ""
6933
  "Deine Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6934
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6935
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6936
+ "Deshalb müssen die rechtlichen Links auf jeder Unterseite der Website zu "
6937
+ "finden sein (z. B. im Footer/Fußzeile)."
6938
 
6939
  #: inc/view/checklist/Shortcode.php:1
6940
  msgid "Create legal links"
6941
+ msgstr "Rechtliche Links erstellen"
6942
 
6943
  #: inc/view/checklist/ViewStats.php:1
6944
  msgid "Check out statistics about consents"
7014
  msgid "Enabled"
7015
  msgstr "Aktiviert"
7016
 
7017
+ #: inc/view/customize/banner/BasicLayout.php:1
7018
+ msgid ""
7019
+ "The animation you choose will have a negative impact on your PageSpeed "
7020
+ "Insights score. Please choose an animation where the cookie banner is "
7021
+ "animated from outside the website to achieve the best website loading speed!"
7022
+ msgstr ""
7023
+ "Die von dir gewählte Animation hat einen negativen Einfluss auf deinen "
7024
+ "PageSpeed Insights Score. Bitte wähle eine Animation, bei der das Cookie "
7025
+ "Banner von außerhalb der Website animiert wird, um die beste "
7026
+ "Ladegeschwindigkeit der Website zu erreichen!"
7027
+
7028
  #: inc/view/customize/banner/BasicLayout.php:1
7029
  msgid "Basic Layout"
7030
  msgstr "Grundlegendes Layout"
7119
  msgid "Animation on display"
7120
  msgstr "Animation beim Einblenden"
7121
 
7122
+ #: inc/view/customize/banner/BasicLayout.php:1
7123
+ #: inc/view/customize/banner/BodyDesign.php:1
7124
+ #: inc/view/customize/banner/individual/SaveButton.php:1
7125
+ msgid "Type"
7126
+ msgstr "Typ"
7127
+
7128
+ #: inc/view/customize/banner/BasicLayout.php:1
7129
+ msgid "Duration"
7130
+ msgstr "Dauer"
7131
+
7132
  #: inc/view/customize/banner/BasicLayout.php:1
7133
  msgid "Animation only on mobile devices"
7134
  msgstr "Animation nur auf mobilen Geräten"
7335
  msgid "Use the same stylings as for \"Accept all\""
7336
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7337
 
7338
+ #. translators:
7339
  #: inc/view/customize/banner/BodyDesign.php:1
7340
  #: inc/view/customize/banner/individual/SaveButton.php:1
7341
  msgid ""
7342
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7343
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7344
  "way for your visitors to express their choice (agree to everything, continue "
7345
  "without consent or an indivudual decision). Equivalent does not necessarily "
7346
  "mean that the buttons/links must look exactly the same. However, you should "
7347
  "be safest if they look exactly the same."
7348
  msgstr ""
7349
+ "Gemäß der <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7350
+ "Datenschutzbehörden</a> muss es für deine Besucher eine gleichwertige "
7351
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7352
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
 
7353
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7354
  "aussehen müssen. Am sichersten bist du jedoch, wenn sie genau gleich "
7355
  "aussehen."
7455
  msgstr "Einwilligungs-Optionen"
7456
 
7457
  #: inc/view/customize/banner/Decision.php:1
 
7458
  msgid "Accept all"
7459
  msgstr "Alle akzeptieren"
7460
 
7461
  #. translators:
7462
  #: inc/view/customize/banner/Decision.php:1
7463
  msgid ""
7464
+ "According to the %1$sGDPR recital 32%2$s, you are not allowed to pre-select "
7465
+ "services in the form of pre-selected checkboxes for the visitor. However, "
7466
+ "the GDPR and ePrivacy Directive do not prohibit the use of a button to agree "
7467
+ "to all services, if there is also a button to agree only to the essential "
7468
+ "services or to make a user-defined selection."
7469
  msgstr ""
7470
+ "Gemäß der %1$sDSGVO Erwägungsgrund 32%2$s darfst du keine Services in Form "
7471
+ "von vorselektierten Checkboxen für den Besucher auswählen. Die DSGVO und die "
7472
+ "ePrivacy-Richtlinie verbieten jedoch nicht die Verwendung eines Buttons zur "
7473
+ "Einwilligung in alle Services, wenn es auch einen Button gibt, um nur den "
7474
+ "essenziellen Services zuzustimmen oder um eine benutzerdefinierte Auswahl zu "
7475
+ "treffen."
7476
+
7477
+ #: inc/view/customize/banner/Decision.php:1
7478
+ msgid "https://gdpr-info.eu/recitals/no-32/"
7479
+ msgstr "https://dsgvo-gesetz.de/erwaegungsgruende/nr-32/"
7480
 
7481
  #: inc/view/customize/banner/Decision.php:1
7482
  #: inc/view/customize/banner/individual/SaveButton.php:1
7490
  msgstr "Link"
7491
 
7492
  #: inc/view/customize/banner/Decision.php:1
 
7493
  msgid "Continue without consent"
7494
  msgstr "Weiter ohne Einwilligung"
7495
 
7522
  "Einwilligung\"."
7523
 
7524
  #: inc/view/customize/banner/Decision.php:1
 
7525
  msgid "Individual privacy preferences"
7526
  msgstr "Individuelle Privatsphäre-Einstellungen"
7527
 
7528
  #: inc/view/customize/banner/Decision.php:1
7529
  msgid ""
7530
+ "According to the GDPR and the ePrivacy Directive, the user must be free to "
7531
+ "choose which services to use and be informed about their purpose before "
7532
+ "giving consent. Therefore, the user must be given the opportunity to access "
7533
+ "the page with the individual privacy settings."
7534
  msgstr ""
7535
+ "Gemäß der DSGVO und der ePrivacy-Richtlinie muss der Nutzer frei wählen "
7536
+ "können, welche Services genutzt werden sollen und über deren Zweck "
7537
+ "informiert werden, bevor er seine Einwilligung gibt. Daher muss dem Nutzer "
7538
+ "die Möglichkeit gegeben werden, die Seite mit den individuellen Privatsphäre-"
7539
+ "Einstellungen aufzurufen."
7540
 
7541
  #: inc/view/customize/banner/Decision.php:1
7542
  msgid "Order of the buttons"
7543
  msgstr "Reihenfolge der Buttons"
7544
 
7545
+ #. translators:
7546
  #: inc/view/customize/banner/Decision.php:1
7547
  msgid ""
7548
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7549
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7550
  "way for your visitors to express their choice (agree to everything, continue "
7551
  "without consent or an indivudual decision). Which order of options is "
7552
  "considered equivalent is unclear. Therefore, the options should be arranged "
7553
  "according to the cultural conditions of the main target country."
7554
  msgstr ""
7555
+ "Gemäß der <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7556
+ "Datenschutzbehörden</a> muss es für deine Besucher eine gleichwertige "
7557
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7558
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). Welche "
7559
+ "Reihenfolge der Optionen als gleichwertig gilt, ist unklar. Daher sollten "
7560
+ "die Optionen nach den kulturellen Gegebenheiten des Hauptziellandes "
 
7561
  "angeordnet werden."
7562
 
7563
  #: inc/view/customize/banner/Decision.php:1
7589
  msgstr ""
7590
  "Text von “Alle akzeptieren” ändert sich, wenn der Benutzer die Auswahl ändert"
7591
 
7592
+ #: inc/view/customize/banner/Decision.php:1
7593
+ #: inc/view/customize/banner/Texts.php:1
7594
+ msgctxt "legal-text"
7595
+ msgid "Accept all"
7596
+ msgstr "Alle akzeptieren"
7597
+
7598
+ #: inc/view/customize/banner/Decision.php:1
7599
+ #: inc/view/customize/banner/Texts.php:1
7600
+ msgctxt "legal-text"
7601
+ msgid "Continue without consent"
7602
+ msgstr "Weiter ohne Einwilligung"
7603
+
7604
+ #: inc/view/customize/banner/Decision.php:1
7605
+ #: inc/view/customize/banner/individual/Texts.php:1
7606
+ msgctxt "legal-text"
7607
+ msgid "Individual privacy preferences"
7608
+ msgstr "Individuelle Privatsphäre-Einstellungen"
7609
+
7610
  #: inc/view/customize/banner/Decision.php:1
7611
  #: inc/view/customize/banner/individual/Texts.php:1
7612
+ msgctxt "legal-text"
7613
  msgid "Save custom choices"
7614
  msgstr "Individuelle Auswahlen speichern"
7615
 
7853
 
7854
  #: inc/view/customize/banner/individual/Texts.php:1
7855
  #: inc/view/customize/banner/Texts.php:1
7856
+ msgctxt "legal-text"
7857
  msgid ""
7858
  "We use cookies and similar technologies on our website and process your "
7859
  "personal data (e.g. IP address), for example, to personalize content and "
7872
 
7873
  #: inc/view/customize/banner/individual/Texts.php:1
7874
  #: inc/view/customize/banner/Texts.php:1
7875
+ msgctxt "legal-text"
7876
  msgid ""
7877
  "The data processing may take place with your consent or on the basis of a "
7878
  "legitimate interest, which you can object to in the privacy settings. You "
7888
  "{{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7889
 
7890
  #: inc/view/customize/banner/individual/Texts.php:1
7891
+ msgctxt "legal-text"
7892
  msgid ""
7893
  "Below you will find an overview of all services used by this website. You "
7894
  "can view detailed information about each service and agree to them "
7900
  "Gebrauch machen."
7901
 
7902
  #: inc/view/customize/banner/individual/Texts.php:1
7903
+ msgctxt "legal-text"
7904
  msgid "Show service information"
7905
  msgstr "Service-Informationen anzeigen"
7906
 
7907
  #: inc/view/customize/banner/individual/Texts.php:1
7908
+ msgctxt "legal-text"
7909
  msgid "Hide service information"
7910
  msgstr "Service-Informationen ausblenden"
7911
 
8068
  msgstr "“Powered by”-Linktext"
8069
 
8070
  #: inc/view/customize/banner/Texts.php:1
8071
+ msgid "US data processing"
8072
+ msgstr "US-Datenverarbeitung"
 
 
 
 
8073
 
8074
  #: inc/view/customize/banner/Texts.php:1
8075
  msgid "Data processing in the USA"
8141
  msgid "Additional info below the \"Load content\" button"
8142
  msgstr "Zusatzinfo unterhalb dem \"Inhalt laden”-Button"
8143
 
8144
+ #. translators:
8145
  #: inc/view/customize/banner/Texts.php:1
8146
  msgid ""
8147
  "The standard texts in the cookie banner are worded carefully. If you "
8148
  "customize them, make sure they are not misleading or riveting. According to "
8149
+ "the <a href=\"%s\" target=\"_blank\">Data Protection Commissioner of Baden-"
8150
+ "Württeberg, Germany (Section B, 1.3.7.; German)</a>, for example, a headline "
8151
+ "\"We love cookies\" is already misleading."
 
8152
  msgstr ""
8153
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn du sie "
8154
  "anpasst, achte darauf, dass sie nicht irreführend oder vernietlichend sind. "
8155
+ "Nach dem <a href=\"%s\" target=\"_blank\">Datenschutzbeauftragen von Baden-"
8156
+ "Württeberg, Deutschland (Abschnitt B, 1.3.7.)</a> ist z.B. die Überschrift "
8157
+ "\"Wir lieben Cookies\" bereits irreführend."
8158
+
8159
+ #: inc/view/customize/banner/Texts.php:1
8160
+ msgid ""
8161
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8162
+ "#13_informiertheit)"
8163
+ msgstr ""
8164
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8165
+ "#13_informiertheit)"
8166
 
8167
  #. translators:
8168
  #: inc/view/customize/banner/Texts.php:1
8203
  "%2$s, um sie zu aktivieren."
8204
 
8205
  #: inc/view/customize/banner/Texts.php:1
8206
+ msgctxt "legal-text"
8207
  msgid "Privacy preferences"
8208
  msgstr "Privatsphäre-Einstellungen"
8209
 
8210
  #: inc/view/customize/banner/Texts.php:1
8211
+ msgctxt "legal-text"
8212
  msgid "Set privacy settings individually"
8213
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
8214
 
8215
  #: inc/view/customize/banner/Texts.php:1
8216
+ msgctxt "legal-text"
8217
  msgid ""
8218
  "Some services process personal data in the USA. By consenting to the use of "
8219
  "these services, you also consent to the processing of your data in the USA "
8233
  "Möglichkeit eines Rechtsbehelfs."
8234
 
8235
  #: inc/view/customize/banner/Texts.php:1
8236
+ msgctxt "legal-text"
8237
  msgid ""
8238
  "You are under 16 years old? Then you cannot consent to optional services. "
8239
  "Ask your parents or legal guardians to agree to these services with you."
8243
  "dir in diese Services einzuwilligen."
8244
 
8245
  #: inc/view/customize/banner/Texts.php:1
8246
+ msgctxt "legal-text"
8247
  msgid ""
8248
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
8249
  "to this service to view this content. Please ask your parents or guardians "
8254
  "Erziehungsberechtigten, dem Service mit dir zuzustimmen!"
8255
 
8256
  #: inc/view/customize/banner/Texts.php:1
8257
+ msgctxt "legal-text"
8258
  msgid ""
8259
  "By accepting all services, you allow {{services}} to be loaded. These "
8260
  "services are divided into groups {{serviceGroups}} according to their "
8261
  "purpose (belonging marked with superscript numbers)."
8262
  msgstr ""
8263
  "Wenn du alle Services akzeptierst, erlaubst du, dass {{services}} geladen "
8264
+ "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt ("
8265
+ "Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
8266
 
8267
  #: inc/view/customize/banner/Texts.php:1
8268
+ msgctxt "legal-text"
8269
  msgid "Your consent is also applicable on {{websites}}."
8270
  msgstr "Deine Einwilligung gilt auch auf {{websites}}."
8271
 
8272
  #. translators:
8273
  #: inc/view/customize/banner/Texts.php:1
8274
+ msgctxt "legal-text"
8275
  msgid "{{name}} blocked due to privacy settings"
8276
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
8277
 
8278
  #. translators:
8279
  #: inc/view/customize/banner/Texts.php:1
8280
+ msgctxt "legal-text"
8281
  msgid "Show all services you still need to agree to"
8282
  msgstr "Zeige alle Services, denen du noch zustimmen musst"
8283
 
8284
  #: inc/view/customize/banner/Texts.php:1
8285
+ msgctxt "legal-text"
8286
  msgid "Accept required services and load content"
8287
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
8288
 
8289
  #: inc/view/customize/banner/Texts.php:1
8290
+ msgctxt "legal-text"
8291
  msgid ""
8292
  "Loading the blocked content will adjust your privacy settings. Content from "
8293
  "this service will not be blocked in the future. You have the right to revoke "
8327
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8328
 
8329
  #: inc/view/navmenu/NavMenuLinks.php:1
8330
+ msgctxt "legal-text"
8331
  msgid "Change privacy settings"
8332
  msgstr "Privatsphäre-Einstellungen ändern"
8333
 
8334
  #: inc/view/navmenu/NavMenuLinks.php:1
8335
+ msgctxt "legal-text"
8336
  msgid "Privacy settings history"
8337
  msgstr "Historie der Privatsphäre-Einstellungen"
8338
 
8339
  #: inc/view/navmenu/NavMenuLinks.php:1
8340
+ msgctxt "legal-text"
8341
  msgid "Revoke consents"
8342
  msgstr "Einwilligungen widerrufen"
8343
 
8344
  #: inc/view/navmenu/NavMenuLinks.php:1
8345
+ msgctxt "legal-text"
8346
  msgid ""
8347
  "You have successfully revoked the consent. The page will be reloaded now."
8348
  msgstr ""
8392
  msgid "Please provide a `type` attribute in your shortcode. Allowed: %s!"
8393
  msgstr "Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: %s!"
8394
 
8395
+ #~ msgid ""
8396
+ #~ "It seems that since the last update of <strong>Real Cookies Banner</"
8397
+ #~ "strong> some templates have been updated. Please check your following "
8398
+ #~ "services to make sure they are up to date:"
8399
+ #~ msgstr ""
8400
+ #~ "Es scheint, dass seit dem letzten Update von <strong>Real Cookies Banner</"
8401
+ #~ "strong> einige Vorlagen aktualisiert worden sind. Bitte überprüfe deine "
8402
+ #~ "folgenden Services, um sicherzustellen, dass sie auf dem neuesten Stand "
8403
+ #~ "sind:"
8404
+
8405
+ #~ msgid "Edit"
8406
+ #~ msgstr "Bearbeiten"
8407
+
8408
+ #~ msgid "Create new from template"
8409
+ #~ msgstr "Aus Vorlage erstellen"
8410
+
8411
+ #~ msgid ""
8412
+ #~ "The easiest way to apply the changes is to delete the service and all "
8413
+ #~ "connected content blockers in Real Cookie Banner and create it again from "
8414
+ #~ "the service templates."
8415
+ #~ msgstr ""
8416
+ #~ "Am einfachsten kannst du die Änderungen übernehmen, indem du den Service "
8417
+ #~ "und alle damit verbundenen Content Blocker in Real Cookie Banner löschst "
8418
+ #~ "und ihn aus den Service-Vorlagen neu erstellst."
8419
+
8420
+ #~ msgid ""
8421
+ #~ "Define the behavior of the cookie banner and hide the cookie banner both "
8422
+ #~ "in the imprint and privacy policy (required by law)."
8423
+ #~ msgstr ""
8424
+ #~ "Bestimme das Verhalten des Cookie Banners und blende es sowohl im "
8425
+ #~ "Impressum als auch in der Datenschutzerklärung aus (gesetzlich "
8426
+ #~ "vorgeschrieben)."
8427
+
8428
+ #~ msgid ""
8429
+ #~ "Use <code>{{services}}</code> as a placeholder to show all services that "
8430
+ #~ "process data in the USA."
8431
+ #~ msgstr ""
8432
+ #~ "Verwende <code>{{services}}</code> als Platzhalter, um alle Services "
8433
+ #~ "anzuzeigen, die Daten in den USA verarbeiten."
8434
+
8435
  #~ msgid ""
8436
  #~ "An opt-in script is not required, as this service is probably already "
8437
  #~ "integrated via e.g. your theme. In addition to this service, please "
languages/real-cookie-banner-de_DE_formal.mo CHANGED
Binary file
languages/real-cookie-banner-de_DE_formal.po CHANGED
@@ -5,7 +5,7 @@ msgstr ""
5
  "Project-Id-Version: n/a\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
7
  "POT-Creation-Date: n/a\n"
8
- "PO-Revision-Date: 2022-06-13 06:58+0000\n"
9
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
10
  "Language-Team: German (formal) <https://translate.devowl.io/projects/"
11
  "wordpress-real-cookie-banner-backend-php/develop/de@formal/>\n"
@@ -14,7 +14,7 @@ msgstr ""
14
  "Content-Type: text/plain; charset=UTF-8\n"
15
  "Content-Transfer-Encoding: 8bit\n"
16
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
17
- "X-Generator: Weblate 4.8\n"
18
 
19
  #. Plugin Name of the plugin
20
  msgid "Real Cookie Banner"
@@ -176,22 +176,27 @@ msgstr ""
176
  "weitere rechtliche Probleme vermeidet."
177
 
178
  #: inc/Assets.php:1
 
179
  msgid "Use on legal basis of"
180
  msgstr "Verwendung auf gesetzlicher Grundlage von"
181
 
182
  #: inc/Assets.php:1
 
183
  msgid "Legitimate interest"
184
  msgstr "Berechtigtes Interesse"
185
 
186
  #: inc/Assets.php:1
 
187
  msgid "Compliance with a legal obligation"
188
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
189
 
190
  #: inc/Assets.php:1
 
191
  msgid "Consent"
192
  msgstr "Einwilligung"
193
 
194
  #: inc/Assets.php:1
 
195
  msgid ""
196
  "We have recognized that you are a crawler/bot. Only natural persons must "
197
  "consent to cookies and processing of personal data. Therefore, the link has "
@@ -202,18 +207,22 @@ msgstr ""
202
  "einwilligen. Daher hat der Link für Sie keine Funktion."
203
 
204
  #: inc/Assets.php:1
 
205
  msgid "Technical cookie definition"
206
  msgstr "Technische Cookie-Definition"
207
 
208
  #: inc/Assets.php:1
 
209
  msgid "Uses cookies"
210
  msgstr "Verwendete Cookies"
211
 
212
  #: inc/Assets.php:1
 
213
  msgid "Cookie refresh"
214
  msgstr "Cookie-Auffrischung"
215
 
216
  #: inc/Assets.php:1
 
217
  msgid ""
218
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
219
  msgstr ""
@@ -221,10 +230,12 @@ msgstr ""
221
  "IndexDB, etc.)"
222
 
223
  #: inc/Assets.php:1
 
224
  msgid "Host"
225
  msgstr "Host"
226
 
227
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
 
228
  msgid "Duration"
229
  msgstr "Dauer"
230
 
@@ -253,28 +264,32 @@ msgid "year(s)"
253
  msgstr "Jahr(e)"
254
 
255
  #: inc/Assets.php:1
 
256
  msgid "No expiration"
257
  msgstr "Kein Ablauf"
258
 
259
- #: inc/Assets.php:1 inc/view/customize/banner/BasicLayout.php:1
260
- #: inc/view/customize/banner/BodyDesign.php:1
261
- #: inc/view/customize/banner/individual/SaveButton.php:1
262
  msgid "Type"
263
  msgstr "Typ"
264
 
265
  #: inc/Assets.php:1
 
266
  msgid "Purpose"
267
  msgstr "Zweck"
268
 
269
  #: inc/Assets.php:1
 
270
  msgid "History of your privacy settings"
271
  msgstr "Historie Ihrer Privatsphäre-Einstellungen"
272
 
273
  #: inc/Assets.php:1
 
274
  msgid "Show consent from"
275
  msgstr "Einwilligungen anzeigen vom"
276
 
277
  #: inc/Assets.php:1
 
278
  msgid "Not yet consented to"
279
  msgstr "Noch nicht eingewilligt"
280
 
@@ -287,20 +302,24 @@ msgid "Close without saving"
287
  msgstr "Verlassen ohne Speichern"
288
 
289
  #: inc/Assets.php:1
 
290
  msgid "Provider"
291
  msgstr "Anbieter"
292
 
293
  #: inc/Assets.php:1
 
294
  msgid "Privacy Policy"
295
  msgstr "Datenschutzerklärung"
296
 
297
  #. translators:
298
  #: inc/Assets.php:1
 
299
  msgid "and %d more"
300
  msgstr "und %d mehr"
301
 
302
  #. translators:
303
- #: inc/Assets.php:1 inc/view/customize/banner/Texts.php:1
 
304
  msgid "US data processing"
305
  msgstr "US-Datenverarbeitung"
306
 
@@ -693,46 +712,81 @@ msgstr "Rechtliche Anpassungen von Texten und Design im Cookie Banner"
693
  msgid ""
694
  "In recent months, more clarity has been created about what consent "
695
  "management on websites should look like - and what it shouldn't. In "
696
- "particular, through the <a href=\"https://www.gesetze-im-internet.de/ttdsg/"
697
- "\" target=\"_blank\">TTDSG</a> (Telecommunications Telemedia Data Protection "
698
- "Act; Germany) and <a href=\"https://www.datenschutzkonferenz-online.de/media/"
699
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Guidance of the Conference "
700
- "of Independent Data Protection Authorities for cookie banners</a> "
701
- "(coordinated legal interpretation of all German data protection authorities; "
702
- "in German), there are now clearer rules that further interpret or complement "
703
- "the EU-wide applicable <a href=\"https://eur-lex.europa.eu/legal-content/EN/"
704
- "TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy Directive</a> and "
705
- "<a href=\"https://gdpr-info.eu/\" target=\"_blank\">GDPR</a>. Furthermore, "
706
- "there were important decisions such as the evaluation of <a href=\"https://"
707
- "www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
708
- "n-21-2022-english.pdf\" target=\"_blank\">TCF by ADP (Belgium)</a>, the <a "
709
- "href=\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
710
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics decision by "
711
- "dsb (Austria)</a> and the <a href=\"https://www.cnil.fr/sites/default/files/"
712
- "atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics.pdf\" "
713
- "target=\"_blank\">position on Google Analytics by CNIL</a>."
714
  msgstr ""
715
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
716
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
717
- "aussehen sollte. Insbesondere durch das <a href=\"https://www.gesetze-im-"
718
- "internet.de/ttdsg/\" target=\"_blank\">TTDSG</a> (Telekommunikation-"
719
- "Telemedien-Datenschutz-Gesetz) und die <a href=\"https://www."
720
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
721
- "\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
722
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
723
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
724
- "Regeln, welche die EU-weit geltende <a href=\"https://eur-lex.europa.eu/"
725
- "legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy-"
726
- "Richtlinie</a> und <a href=\"https://dsgvo-gesetz.de/\" target=\"_blank"
727
- "\">DSGVO</a> weiter auslegen oder ergänzen. Außerdem gab es wichtige "
728
- "Entscheidungen wie die Bewertung von <a href=\"https://www."
729
- "autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-"
730
- "english.pdf\" target=\"_blank\">TCF durch ADP (Belgien)</a>, die <a href="
731
- "\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google"
732
- "%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics Entscheidung "
733
- "von dsb (Österreich)</a> und die <a href=\"https://www.cnil.fr/sites/default/"
734
- "files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics."
735
- "pdf\" target=\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
736
 
737
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
738
  msgid ""
@@ -793,15 +847,13 @@ msgstr "Rechtliche Links auf jeder Unterseite platzieren"
793
  #. translators:
794
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
795
  msgid ""
796
- "In accordance with the requirements of the &quot;<a href=\"https://www."
797
- "datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target="
798
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
799
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
800
  "and revoke consent must be directly accessible on every sub-page of your "
801
  "website."
802
  msgstr ""
803
- "Gemäß den Anforderungen des <a href=\"https://www.datenschutzkonferenz-"
804
- "online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">"
805
  "\"Orientierungshilfe der Konferenz der unabhängigen "
806
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
807
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
@@ -944,17 +996,21 @@ msgstr "pro-modal/de/mobile-optimization.png"
944
  msgid "Updates in v3.0: You should act to be safe!"
945
  msgstr "Updates in v3.0: Sie sollten handeln, um sicher zu sein!"
946
 
 
947
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
948
  msgid ""
949
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
950
  "have implemented, among other things, current legal adjustments. Read more "
951
- "about the changes in our <a href=\"https://devowl.io/2022/real-cookie-"
952
- "banner-3-0/\" target=\"_blank\">blog post</a>."
953
  msgstr ""
954
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
955
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
956
- "Änderungen erfahren Sie in unserem <a href=\"https://devowl.io/de/2022/real-"
957
- "cookie-banner-3-0/\" target=\"_blank\">Blogbeitrag.</a>."
 
 
 
 
958
 
959
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
960
  msgid ""
@@ -1012,14 +1068,30 @@ msgstr ""
1012
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1013
  "Vorgehen für Ihren Einzelfall zu klären."
1014
 
 
 
 
 
1015
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1016
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1017
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1018
 
 
 
 
 
 
 
1019
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1020
  msgid "Statement of the IAB Europe (English)"
1021
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1022
 
 
 
 
 
 
 
1023
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1024
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1025
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
@@ -1400,6 +1472,10 @@ msgstr ""
1400
  "\"_blank\">%3$s</a>. In diesem Fall müssen Sie auch den „Code executed on "
1401
  "opt-in“ entfernen."
1402
 
 
 
 
 
1403
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1404
  msgid ""
1405
  "AddThis allows providing links and buttons for sharing content on a variety "
@@ -1453,21 +1529,26 @@ msgstr ""
1453
  "eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1454
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1455
 
 
1456
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1457
  msgid ""
1458
- "This template assumes that you use the <a href=\"https://wordpress.org/"
1459
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress plugin</a>. The "
1460
- "template is not suitable to add Facebook Like, Twitter Tweet or Pinterest "
1461
- "Pin button in AddToAny. If you want to use any of these buttons, please use "
1462
- "it without AddToAny and additionally create the cookies and content blockers "
1463
- "for the respective service."
1464
  msgstr ""
1465
- "Diese Vorlage setzt voraus, dass Sie das <a href=\"https://wordpress.org/"
1466
- "plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress Plugin</a> "
1467
- "verwenden. Die Vorlage ist nicht geeignet, um Facebook Like, Twitter Tweet "
1468
- "oder Pinterest Pin Button in AddToAny hinzuzufügen. Wenn Sie einen dieser "
1469
- "Buttons verwenden möchten, verwenden Sie ihn bitte ohne AddToAny und setzen "
1470
- "Sie zusätzlich die Cookies und Content-Blocker für den jeweiligen Dienst."
 
 
 
 
1471
 
1472
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1473
  msgid ""
@@ -1488,18 +1569,22 @@ msgstr ""
1488
  "oft welche Werbeeinblendung bereits angezeigt wurde und wie oft die "
1489
  "jeweilige Werbung angeklickt worden ist."
1490
 
 
1491
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1492
  msgid ""
1493
- "Ad Insert plays out ads even without consent. You should <a href=\"https://"
1494
- "adinserter.pro/faq/gdpr-compliance-cookies-consent\" target=\"_blank"
1495
- "\">obtain consent for the ads via the TCF v2.0 or newer standard</a>. Only "
1496
- "some features of the plugin require you to obtain consent for Ad Inserter."
1497
  msgstr ""
1498
- "Ad Insert spielt Anzeigen auch ohne Zustimmung aus. Sie sollten <a href="
1499
- "\"https://adinserter.pro/faq/gdpr-compliance-cookies-consent\" target="
1500
- "\"_blank\">die Zustimmung für die Anzeigen über den TCF v2.0 oder neueren "
1501
- "Standard einholen</a>. Nur für einige Funktionen des Plugins müssen Sie die "
1502
- "Zustimmung für Ad Inserter einholen."
 
 
 
1503
 
1504
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1505
  msgid ""
@@ -1517,17 +1602,21 @@ msgstr ""
1517
  "verwenden” deaktiviert haben, da dieser Teil des Adblockers Daten an Google "
1518
  "und Media.net überträgt, bevor Sie Ihre Zustimmung dazu gegeben haben."
1519
 
 
1520
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1521
  msgid ""
1522
- "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"https://"
1523
- "adinserter.pro/documentation/ad-impression-and-click-limiting\" target="
1524
- "\"_blank\">impression and click limits</a> feature of Ad Inserter Pro. The "
1525
- "duration of the cookie depends on the settings of the feature."
1526
  msgstr ""
1527
  "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn Sie die Funktion <a href="
1528
- "\"https://adinserter.pro/documentation/ad-impression-and-click-limiting\" "
1529
- "target=\"_blank\">Impressions- und Klickgrenzen</a> von Ad Inserter Pro "
1530
- "nutzen. Die Dauer des Cookies hängt von den Einstellungen der Funktion ab."
 
 
 
 
1531
 
1532
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1533
  msgid ""
@@ -1756,13 +1845,18 @@ msgstr ""
1756
  msgid "Awin Publisher ID"
1757
  msgstr "Awin Publisher ID"
1758
 
 
1759
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1760
  msgid ""
1761
- "You find your publisher ID in the <a href=\"https://ui.awin.com/user\" "
1762
- "target=\"_blank\">account overview</a> directly blow your account name."
1763
  msgstr ""
1764
- "Ihre Publisher-ID finden Sie in der <a href=\"https://ui.awin.com/user\" "
1765
- "target=\"_blank\">Kontoübersicht</a> direkt über Ihrem Kontonamen."
 
 
 
 
1766
 
1767
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1768
  msgid ""
@@ -1819,6 +1913,10 @@ msgstr ""
1819
  "Conversion Tracking > UET-Tag finden Sie die Tag-ID Ihres UET-Tags in der "
1820
  "Tag-Tabelle."
1821
 
 
 
 
 
1822
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1823
  msgid ""
1824
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
@@ -2272,15 +2370,18 @@ msgstr "https://www.etracker.com/datenschutzerklaerung/"
2272
  msgid "etracker Account Key"
2273
  msgstr "etracker Account Key"
2274
 
 
2275
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2276
  msgid ""
2277
- "You can find your etracker account key under <a href=\"https://newapp."
2278
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2279
- "info > Settings> Account</a> of your etracker account."
2280
  msgstr ""
2281
- "Sie finden Ihren etracker Account Key unter <a href=\"https://newapp."
2282
- "etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account "
2283
- "Info > Einstellungen > Account</a> Ihres etracker Accounts."
 
 
 
2284
 
2285
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2286
  msgid ""
@@ -2297,20 +2398,26 @@ msgstr ""
2297
  "Tracking widersprechen, indem er diesen Service in Ihrem Cookie Banner "
2298
  "deaktiviert."
2299
 
 
2300
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2301
  msgid ""
2302
  "We also recommend that you deactivate the non-aggregated reporting via the "
2303
- "<a href=\"https://newapp.etracker.com/\" target=\"_blank\">dashboard</a> "
2304
- "under <i>menu (top left) > Account-ID > Settings > Privacy > Consent-free "
2305
- "tracking cookies in accordance with CNIL guidelines</i> to ensure that there "
2306
- "is definitely no personal reference for the collected data."
2307
- msgstr ""
2308
- "Wir empfehlen Ihnen, zusätzlich über das <a href=\"https://newapp.etracker."
2309
- "com/#/report/accountSettings/accountKey\" target=\"_blank\">Dashboard</a> "
2310
- "unter <i>Menü (obene links) > Account-ID > Einstellungen > Datenschutz > "
2311
- "Einwilligungs-freie Tracking Cookies gemäß Anforderungen der CNIL</i> die "
2312
- "nicht aggregierten Reportings zu deaktivieren, um sicherzustellen, dass "
2313
- "definitiv kein Personenbezug bei den erhobenen Daten besteht."
 
 
 
 
 
2314
 
2315
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2316
  msgid "etracker: enhanced tracking"
@@ -2358,22 +2465,22 @@ msgstr ""
2358
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2359
  "anreichert."
2360
 
 
2361
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2362
  msgid ""
2363
  "In order for the consent to be taken into account, you must activate the "
2364
- "toggle \"Opt-In active\" via the <a href=\"https://newapp.etracker.com/\" "
2365
- "target=\"_blank\">dashboard</a> under <i>menu (top left) > Account-ID > "
2366
- "Settings > Privacy > Tracking Opt-In and agreement</i>, but then switch to "
2367
- "\"own Opt-In\" so that etracker does not display its own consent dialog, but "
2368
- "instead uses the consent collected by Real Cookie Banner."
2369
- msgstr ""
2370
- "Damit die Einwilligung berücksichtigt wird, müssen Sie via <a href=\"https://"
2371
- "newapp.etracker.com/\" target=\"_blank\">Dashboard</a> unter <i>Menü (oben "
2372
- "links) > Account-ID > Einstellungen > Datenschutz > Tracking Opt-In und "
2373
- "Zustimmung</i> den Toggle \"Opt-In aktiv\" aktivieren und anschließend auf "
2374
- "\"eigenes Opt-In\" umstellen. Damit wird etracker keinen eigenen "
2375
- "Einwilligungsdialog anzeigen, sondern die Einwilligung, erhoben von Real "
2376
- "Cookie Banner, verwenden."
2377
 
2378
  #. translators:
2379
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
@@ -2683,27 +2790,31 @@ msgstr ""
2683
  "sammeln. Diese Daten können mit den Daten der auf facebook.com registrierten "
2684
  "Nutzer verknüpft werden."
2685
 
 
2686
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2687
  msgid ""
2688
- "You can use Facebook's <a href=\"https://developers.facebook.com/docs/"
2689
- "plugins/embedded-posts/\" target=\"_blank\">embedded post generator</a> to "
2690
- "generate a HTML code to embed post with the Facebook JavaScript SDK. Loading "
2691
- "the JavaScript SDK is part of the opt-in code. All you need to do is place "
2692
- "the HTML div and blockqoute elements where you want the embedded post to be "
2693
- "visible on your site. If you use Facebook post as Iframe embeeds, please "
2694
- "create in addition a content blocker for Facebook Posts to block loading of "
2695
- "the content before you have the consent of the user."
2696
- msgstr ""
2697
- "Sie können den <a href=\"https://developers.facebook.com/docs/plugins/"
2698
- "embedded-posts/\" target=\"_blank\">Generator für eingebettete Beiträge</a> "
2699
- "von Facebook verwenden, um einen HTML-Code zum Einbetten von Beiträgen mit "
2700
- "dem Facebook JavaScript SDK zu erzeugen. Das Laden des JavaScript SDK ist "
2701
- "Teil des Opt-in-Codes. Sie müssen lediglich die HTML-Elemente div und "
2702
- "blockqoute an der Stelle platzieren, an der der eingebettete Beitrag auf "
2703
- "Ihrer Website sichtbar sein soll. Wenn Sie Facebook-Posts als Iframe-Embeds "
2704
- "verwenden, erstellen Sie bitte zusätzlich einen Content Blocker für Facebook-"
2705
- "Posts, um das Laden des Inhalts zu blockieren, bevor Sie die Zustimmung des "
2706
- "Nutzers haben."
 
 
 
2707
 
2708
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2709
  msgid ""
@@ -2904,17 +3015,22 @@ msgstr "Google Ads-Konversationsverfolgungs-ID"
2904
  msgid "Please fill in a valid tracking ID!"
2905
  msgstr "Bitte geben Sie eine gültige Tracking-ID an!"
2906
 
 
2907
  #: inc/overrides/pro/presets/GoogleAds.php:1
2908
  msgid ""
2909
- "You can find your Adwords ID in <a href=\"https://ads.google.com/aw/overview"
2910
- "\" target=\"_blank\">Google Ads</a> at Tools > Measurement > Conversions > "
2911
- "Click on the name of the conversation action > Tag setup > Install the tag "
2912
- "yourself > Adwords ID in the code (e.g. AW-123456789)."
2913
  msgstr ""
2914
- "Sie finden Ihre Adwords ID in <a href=\"https://ads.google.com/aw/overview\" "
2915
- "target=\"_blank\">Google Ads</a> unter Tools > Messung > Conversions > "
2916
- "Klicken Sie auf den Namen der Konversationsaktion > Tag einrichten > "
2917
- "Installieren Sie den Tag selbst > Adwords ID im Code (z.B. AW-123456789)."
 
 
 
 
2918
 
2919
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2920
  msgid ""
@@ -2941,18 +3057,22 @@ msgstr ""
2941
  msgid "Google Adsense Publisher ID"
2942
  msgstr "Google Adsense Publisher-ID"
2943
 
 
2944
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2945
  msgid ""
2946
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
2947
  "(if activated in your Adsense account) can be displayed. You can find it in "
2948
- "the <a href=\"https://www.google.com/adsense\" target=\"_blank\">Google "
2949
- "Adsense Dashboard</a> under <i>Account > Settings > Account information</i>."
2950
  msgstr ""
2951
- "Sie müssen Ihre Google Adsense Publisher ID eingeben, damit z.B. Auto Ads "
2952
- "(falls in Ihrem Adsense Konto aktiviert) angezeigt werden können. Sie finden "
2953
- "sie im <a href=\"https://www.google.com/adsense\" target=\"_blank\">Google "
2954
- "Adsense Dashboard</a> unter <i>Konto > Einstellungen > Kontoinformationen</"
2955
- "i>."
 
 
 
2956
 
2957
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
2958
  msgid ""
@@ -2997,18 +3117,23 @@ msgstr ""
2997
  msgid "Google Analytics Measurement ID"
2998
  msgstr "Google Analytics Measurement ID"
2999
 
 
3000
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3001
  msgid ""
3002
  "You can find your Measurement ID (also called property ID) in the <a href="
3003
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3004
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
3005
- "property > Setup Assistant > Tag installation > Select your website."
3006
  msgstr ""
3007
- "Sie finden Ihre Measurement ID (auch Property ID genannt) im <a href="
3008
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3009
- "Dashboard</a> unter Admin (Zahnradsymbol) > Wählen Sie Ihr Konto > Wählen "
3010
- "Sie Ihre Property > Setup Assistant > Tag-Installation > Wählen Sie Ihre "
3011
- "Website."
 
 
 
 
3012
 
3013
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3014
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
@@ -3058,17 +3183,17 @@ msgstr ""
3058
  msgid "Google Analytics Tracking ID"
3059
  msgstr "Google Analytics Tracking ID"
3060
 
 
3061
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3062
  msgid ""
3063
- "You can find your Tracking ID (also called Property ID) in the <a href="
3064
- "\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics "
3065
- "Dashboard</a> under Admin (gear icon) > Select your account > Select your "
3066
- "property > Tracking Info > Tracking Code."
3067
  msgstr ""
3068
- "Sie finden Ihre Tracking ID (auch Property ID genannt) im <a href=\"https://"
3069
- "analytics.google.com/analytics/web/\" target=\"_blank\">Analytics Dashboard</"
3070
- "a> unter Admin (Zahnradsymbol) > Wählen Sie Ihr Konto aus > Wählen Sie Ihre "
3071
- "Immobilie aus > Tracking Info > Tracking Code."
3072
 
3073
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3074
  msgid ""
@@ -3313,21 +3438,26 @@ msgstr ""
3313
  "frühere Nachrichten mit seinem Chatverlauf zu verknüpfen und detaillierte "
3314
  "Statistiken über sein Verhalten zu sammeln."
3315
 
 
3316
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3317
  msgid ""
3318
- "You have to create a so-called Beacon on <a href=\"https://secure.helpscout."
3319
- "net\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3320
- "Beacon. After creating in the Beacon Customizer, the URL looks like "
3321
- "<code>https://secure.helpscout.net/settings/beacons/c676047b-"
3322
- "c2e8-45b1-8319-344f4e7e2431/customize</code>. This means that the HelpScout "
3323
- "Beacon ID is <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code>."
3324
  msgstr ""
3325
- "Sie müssen ein sogenanntes Beacon auf <a href=\"https://secure.helpscout.net"
3326
- "\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New "
3327
- "Beacon erstellen. Nach der Erstellung im Beacon Customizer sieht die URL wie "
3328
- "<code>https://secure.helpscout.net/settings/beacons/c676047b-"
3329
- "c2e8-45b1-8319-344f4e7e2431/customize</code> aus. Das bedeutet, dass die "
3330
- "HelpScout Beacon ID <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code> ist."
 
 
 
 
3331
 
3332
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3333
  msgid "HelpScout Beacon ID"
@@ -3352,6 +3482,14 @@ msgstr ""
3352
  msgid "Hotjar ID"
3353
  msgstr "Hotjar ID"
3354
 
 
 
 
 
 
 
 
 
3355
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3356
  msgid ""
3357
  "Imgur allows embedding content posted on imgur.com directly into websites."
@@ -3424,6 +3562,10 @@ msgstr ""
3424
  msgid "Intercom application ID"
3425
  msgstr "Intercom-Anwendung ID"
3426
 
 
 
 
 
3427
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3428
  msgid ""
3429
  "Issuu allows embedding content posted on issuu.com directly into websites. "
@@ -3556,15 +3698,20 @@ msgstr ""
3556
  msgid "https://linkedin.com/legal/privacy-policy"
3557
  msgstr "https://linkedin.com/legal/privacy-policy"
3558
 
 
3559
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3560
  msgid ""
3561
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3562
- "\"https://www.linkedin.com/help/lms/answer/a415871\" target=\"_blank\">where "
3563
- "to find the LinkedIn Partner ID</a> in your LinkedIn Ads account."
3564
  msgstr ""
3565
  "In der Wissensdatenbank von LinkedIn finden Sie einen Artikel, der erklärt, "
3566
- "<a href=\"https://www.linkedin.com/help/lms/answer/a415871\" target=\"_blank"
3567
- "\">>wo Sie die LinkedIn Partner ID</a> in Ihrem LinkedIn Ads-Konto finden."
 
 
 
 
3568
 
3569
  #: inc/overrides/pro/presets/LoomPreset.php:1
3570
  msgid ""
@@ -3690,19 +3837,23 @@ msgstr ""
3690
  "des Newsletters verwenden, das ausgeblendet werden kann (z.B. Popup). Nur in "
3691
  "diesem Fall wird ein Cookie gesetzt."
3692
 
 
3693
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3694
  msgid ""
3695
  "Personal data will never be transferred directly from the browser of your "
3696
  "visitors to MailPoet, but only, for example, when you sign up for the "
3697
  "newsletter via your WordPress installation. You should always follow the <a "
3698
- "href=\"https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr\" target="
3699
- "\"_blank\">MailPoet Guide to Conform to GDPR</a>."
3700
  msgstr ""
3701
  "Personenbezogene Daten werden niemals direkt vom Browser Ihrer Besucher an "
3702
  "MailPoet übertragen, sondern nur, wenn Sie sich beispielsweise über Ihre "
3703
  "WordPress-Installation für den Newsletter anmelden. Sie sollten immer den <a "
3704
- "href=\"https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr\" target="
3705
- "\"_blank\">MailPoet Leitfaden zur Einhaltung der DSGVO</a> beachten."
 
 
 
 
3706
 
3707
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3708
  msgid ""
@@ -3777,17 +3928,21 @@ msgstr "Metricool-Hash"
3777
  msgid "Please provide a valid hash!"
3778
  msgstr "Bitte geben Sie einen gültigen Hashwert an!"
3779
 
 
3780
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3781
  msgid ""
3782
- "You find your Metricool hash in the <a href=\"https://app.metricool.com/"
3783
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, if "
3784
- "you use \"Connect web\" and choose the integration as JavaScript tag, within "
3785
- "the generated JavaScript."
3786
  msgstr ""
3787
- "Sie finden Ihren Metricool-Hash im <a href=\"https://app.metricool.com/"
3788
- "brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, wenn "
3789
- "Sie „Connect web“ verwenden und die Integration als JavaScript-Tag "
3790
- "auswählen, innerhalb des generierten JavaScript."
 
 
 
 
3791
 
3792
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3793
  msgid ""
@@ -3817,6 +3972,10 @@ msgstr ""
3817
  "com/projects/view/12cggd77jl/</code> lautet, ist Ihre Projekt-ID "
3818
  "<code>12cggd77jl</code>."
3819
 
 
 
 
 
3820
  #. translators:
3821
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3822
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
@@ -3852,19 +4011,27 @@ msgstr ""
3852
  msgid "Mouseflow Website ID"
3853
  msgstr "Mouseflow-Website-ID"
3854
 
 
3855
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
3856
  msgid ""
3857
  "You can find your Mouseflow website ID by hovering over the appropriate "
3858
- "website at <a href=\"http://eu.mouseflow.com/websites\" target=\"_blank\">eu."
3859
- "mouseflow.com/websites</a>. You will then see a gear icon that you can click "
3860
- "on. In the settings that appear, you should find a <code>Website ID</code> "
3861
- "field."
3862
  msgstr ""
3863
  "Sie finden Ihre Mouseflow-Website-ID, indem Sie mit dem Mauszeiger auf die "
3864
- "entsprechende Website unter <a href=\"http://eu.mouseflow.com/websites\" "
3865
- "target=\"_blank\">eu.mouseflow.com/websites</a> fahren. Sie sehen dann ein "
3866
- "Zahnradsymbol, auf das Sie klicken können. In den daraufhin angezeigten "
3867
- "Einstellungen sollten Sie ein Feld <code>Website-ID</code> finden."
 
 
 
 
 
 
 
 
3868
 
3869
  #. translators:
3870
  #: inc/overrides/pro/presets/MtmPreset.php:1
@@ -4095,15 +4262,20 @@ msgstr ""
4095
  msgid "Pinterest Tag ID"
4096
  msgstr "Pinterest Tag-ID"
4097
 
 
4098
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4099
  msgid ""
4100
- "You can view your Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4101
- "\"_blank\">Pinterest Ads</a> under Ads > Conversions > Add code to website > "
4102
- "Add code. It is displayed in the top right corner of the modal."
4103
  msgstr ""
4104
- "Sie können Ihre Tag ID in <a href=\"https://ads.pinterest.com/\" target="
4105
- "\"_blank\">Pinterest Ads</a> unter Ads > Conversions > Add code to website > "
4106
- "Add Code einsehen. Sie wird in der oberen rechten Ecke des Modals angezeigt."
 
 
 
 
4107
 
4108
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4109
  msgid ""
@@ -4275,20 +4447,23 @@ msgstr ""
4275
  "speichern die Sprache des Nutzers und können den Nutzer zu der Version der "
4276
  "Website umleiten, die mit der Sprache des Browsers des Nutzers übereinstimmt."
4277
 
 
4278
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4279
  msgid ""
4280
  "Please make sure you have not renamed the Polylang cookie name or change it "
4281
  "in the same way in the technical definitions above. Learn more about how to "
4282
- "change the Polylang cookie name <a href=\"https://polylang.pro/doc/is-"
4283
- "polylang-compatible-with-the-eu-cookie-law/\" target=\"_blank\">in their "
4284
  "documentation</a>."
4285
  msgstr ""
4286
  "Bitte vergewissern Sie sich, dass Sie den Polylang-Cookie-Namen nicht "
4287
  "umbenannt haben oder ihn auf die gleiche Weise in den obigen technischen "
4288
  "Definitionen ändern. Weitere Informationen zum Ändern des Polylang-Cookie-"
4289
- "Namens finden Sie in der <a href=\"https://polylang.pro/doc/is-polylang-"
4290
- "compatible-with-the-eu-cookie-law/\" target=\"_blank\">Dokumentation</a> von "
4291
- "Polylang."
 
 
 
4292
 
4293
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4294
  msgid ""
@@ -4596,20 +4771,29 @@ msgstr ""
4596
  "Nachrichten mit seinem Chatverlauf zu verknüpfen und detaillierte "
4597
  "Statistiken über sein Verhalten zu sammeln."
4598
 
 
4599
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4600
  msgid ""
4601
- "You can create your own custom chat widget at <a href=\"https://dashboard."
4602
- "tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > Settings > Chat Widget. "
4603
- "The chat widget in the opt-in code is just the default example."
4604
  msgstr ""
4605
- "Sie können Ihr eigenes Chat-Widget unter <a href=\"https://dashboard.tawk.to"
4606
- "\" target=\"_blank\">dashboard.tawk.to</a> > Einstellungen > Chat-Widget "
4607
- "erstellen. Das Chat-Widget im Opt-in-Code ist nur das Standardbeispiel."
 
 
 
 
4608
 
4609
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4610
  msgid "tawk.to ID"
4611
  msgstr "tawk.to ID"
4612
 
 
 
 
 
4613
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4614
  msgid ""
4615
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
@@ -4649,23 +4833,31 @@ msgstr ""
4649
  "Nachrichten mit seinem Chatverlauf zu verknüpfen und detaillierte "
4650
  "Statistiken über sein Verhalten zu sammeln."
4651
 
 
4652
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4653
  msgid ""
4654
- "You get your Tidio JS ID on <a href=\"https://tidio.com\" target=\"_blank"
4655
- "\">tidio.com</a> under Settings > Live Chat > Integration > JavaScript in "
4656
- "the given JavaScript snipped. You can adjust the appearance of the chat at "
4657
- "tidio.com under Settings > Live Chat > Appearance."
4658
  msgstr ""
4659
- "Sie erhalten Ihre Tidio JS ID auf <a href=\"https://tidio.com\" target="
4660
- "\"_blank\">tidio.com</a> unter Einstellungen > Live Chat > Integration > "
4661
- "JavaScript in dem angegebenen JavaScript Ausschnitt. Das Erscheinungsbild "
4662
- "des Chats können Sie auf tidio.com unter Einstellungen > Live Chat > "
4663
- "Erscheinungsbild anpassen."
 
 
 
4664
 
4665
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4666
  msgid "Tidio JS ID"
4667
  msgstr "Tidio JS ID"
4668
 
 
 
 
 
4669
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4670
  msgid ""
4671
  "TikTok Pixel helps to determine whether you are the target audience for "
@@ -4697,33 +4889,37 @@ msgstr "https://www.tiktok.com/legal/privacy-policy?lang=en#privacy-eea"
4697
  msgid "TikTok Pixel ID"
4698
  msgstr "TikTok Pixel-ID"
4699
 
 
4700
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4701
  msgid ""
4702
- "In the <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target="
4703
- "\"_blank\">Event Manager of the TikTok Ad Manager</a> you can create a "
4704
- "website pixel. Select \"Manually install pixel code\" for the type of "
4705
- "integration. Whether you want to use the \"Standard Mode\" or \"Developer "
4706
- "Mode\" depends on your purpose."
4707
  msgstr ""
4708
- "Im <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target=\"_blank"
4709
- "\">Event Manager des TikTok Ad Managers</a> können Sie ein Website-Pixel "
4710
- "erstellen. Wählen Sie für die Art der Integration Pixelcode manuell "
4711
- "installieren“. Ob Sie den „Standardmodusoder den „Entwicklermodus“ "
4712
- "verwenden möchten, hängt von Ihrem Vorhaben ab."
 
 
 
4713
 
 
4714
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4715
  msgid ""
4716
- "After creating the TikTok Pixel you return to the <a href=\"https://ads."
4717
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager of the "
4718
- "TikTok Ad Manager</a> and select \"Manage\" in the section \"Website Pixel"
4719
- "\". You will then see an overview of all the TikTok pixels you have created. "
4720
- "Each TikTok pixel has its ID directly under its name."
4721
  msgstr ""
4722
- "Nach der Erstellung des TikTok Pixels kehren Sie zum <a href=\"https://ads."
4723
- "tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager des TikTok "
4724
- "Ad Managers</a> zurück und wählen im Bereich „Website Pixel“ den Punkt "
4725
- "„Verwalten“. Sie sehen dann eine Übersicht aller TikTok-Pixel, die Sie "
4726
- "erstellt haben. Jedes TikTok-Pixel hat seine ID direkt unter seinem Namen."
4727
 
4728
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4729
  msgid ""
@@ -4842,24 +5038,33 @@ msgstr ""
4842
  msgid "https://www.userlike.com/en/terms#privacy-policy"
4843
  msgstr "https://www.userlike.com/en/terms#privacy-policy"
4844
 
 
4845
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4846
  msgid ""
4847
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
4848
- "You can find it at <a href=\"https://userlike.com/en/dashboard/um/config/"
4849
- "um_widget/overview\" target=\"_blank\">userlike.com/en/dashboard/um/config/"
4850
- "um_widget/overview</a> > Name of the widget > Install > JavaScript Widget "
4851
- "code."
4852
  msgstr ""
4853
  "Bitte fügen Sie den JavaScript-Code Ihres Userlike-Widgets als Opt-in-Code "
4854
- "ein. Sie finden ihn unter <a href=\"https://userlike.com/en/dashboard/um/"
4855
- "config/um_widget/overview\" target=\"_blank\">userlike.com/de/dashboard/um/"
4856
- "config/um_widget/overview</a> > Name des Widgets > Installieren > JavaScript "
4857
- "Widget-Code."
 
 
4858
 
4859
  #: inc/overrides/pro/presets/UserlikePreset.php:1
4860
  msgid "Example opt-in code"
4861
  msgstr "Beispiel für einen Opt-in-Code"
4862
 
 
 
 
 
 
 
 
 
4863
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4864
  msgid ""
4865
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
@@ -4926,6 +5131,16 @@ msgstr ""
4926
  "keinen Content-Blocker verwenden, können Sie die vollen VG WORT-"
4927
  "Ausschüttungen erhalten, auf die Sie Anspruch haben."
4928
 
 
 
 
 
 
 
 
 
 
 
4929
  #: inc/overrides/pro/presets/VGWortPreset.php:1
4930
  msgid ""
4931
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
@@ -5180,6 +5395,10 @@ msgstr ""
5180
  "Sie finden Ihre Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5181
  "\">Yandex Metrica Tags Liste</a>."
5182
 
 
 
 
 
5183
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5184
  msgid ""
5185
  "Zendesk Chat is a customer service tool that provides live chat for "
@@ -5208,6 +5427,10 @@ msgstr ""
5208
  "Sie finden den Zendesk Widget-Schlüssel im Zendesk-Backend unter "
5209
  "Einstellungen > Widget > Web Widget einbetten als Teil des JavaScript-Codes."
5210
 
 
 
 
 
5211
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5212
  msgid ""
5213
  "Zoho Bookings is a planning software the allows you to book book "
@@ -5462,6 +5685,7 @@ msgstr ""
5462
  "Zwecken der Dienste finden Sie in den jeweiligen Datenschutzeinstellungen."
5463
 
5464
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5465
  msgid ""
5466
  "In addition, you consent to the transfer of data to partners under the TCF "
5467
  "standard for the following purposes:"
@@ -5470,10 +5694,12 @@ msgstr ""
5470
  "des TCF-Standards für die folgenden Zwecke zu:"
5471
 
5472
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5473
  msgid "Vendor list"
5474
  msgstr "Liste der Anbieter"
5475
 
5476
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5477
  msgid "Vendors"
5478
  msgstr "Anbieter"
5479
 
@@ -5487,18 +5713,22 @@ msgid "Hide"
5487
  msgstr "Ausblenden"
5488
 
5489
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5490
  msgid "Data processing on the legal basis of:"
5491
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5492
 
5493
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5494
  msgid "No vendor requests purposes under this legal basis."
5495
  msgstr "Kein Verkäufer beantragt Zwecke auf dieser Rechtsgrundlage."
5496
 
5497
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5498
  msgid "Non-standardized data processing"
5499
  msgstr "Nicht standardisierte Datenverarbeitung"
5500
 
5501
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5502
  msgid ""
5503
  "Some services set cookies and/or process personal data without complying "
5504
  "with consent communication standards. These services are divided into "
@@ -5516,10 +5746,12 @@ msgstr ""
5516
  "Dienste nur nach Zustimmung genutzt werden."
5517
 
5518
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5519
  msgid "Data processing standardized according to TCF"
5520
  msgstr "Standardisierte Datenverarbeitung nach TCF"
5521
 
5522
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5523
  msgid ""
5524
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5525
  "consistent consent for processing of personal data and cookie setting. This "
@@ -5535,10 +5767,12 @@ msgstr ""
5535
  "elektronische Kommunikation setzen, verarbeiten und speichern."
5536
 
5537
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5538
  msgid "Purposes"
5539
  msgstr "Zweck"
5540
 
5541
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5542
  msgid ""
5543
  "Purposes describe for which purpose which providers may set cookies and "
5544
  "process personal data. Purposes are pre-selected if there is a legitimate "
@@ -5552,10 +5786,12 @@ msgstr ""
5552
  "Zustimmung verarbeitet."
5553
 
5554
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5555
  msgid "Special purposes"
5556
  msgstr "Besondere Zwecke"
5557
 
5558
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5559
  msgid ""
5560
  "Special purposes for setting cookies and processing personal data by our "
5561
  "vendors describe purposes for which we have a legitimate interest that "
@@ -5567,10 +5803,12 @@ msgstr ""
5567
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5568
 
5569
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5570
  msgid "Features"
5571
  msgstr "Eigenschaften"
5572
 
5573
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5574
  msgid ""
5575
  "Features for processing personal data describe how data is used to fulfill "
5576
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
@@ -5584,10 +5822,12 @@ msgstr ""
5584
  "Jeder Zweck kann zur Verwendung von Merkmalen führen."
5585
 
5586
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5587
  msgid "Special features"
5588
  msgstr "Besondere Merkmale"
5589
 
5590
  #: inc/overrides/pro/view/TcfBanner.php:1
 
5591
  msgid ""
5592
  "Special features for processing personal data describe how data is used to "
5593
  "fulfill one or more purposes in a profound way. Personal data will only be "
@@ -5901,17 +6141,21 @@ msgstr ""
5901
  "kleinen Flackereffekt (Austausch der Schrift nach einigen Millisekunden) "
5902
  "feststellen."
5903
 
 
5904
  #: inc/presets/free/GoogleFontsPreset.php:1
5905
  msgid ""
5906
- "We therefore recommend <a href=\"https://devowl.io/2022/google-fonts-"
5907
- "wordpress-gdpr/\" target=\"_blank\">replacing Google Fonts with locally "
5908
- "hosted fonts</a> when possible, rather than asking for consent. We explained "
5909
- "how this works in our blog!"
5910
  msgstr ""
5911
- "Wir empfehlen daher, <a href=\"https://devowl.io/de/2022/google-fonts-"
5912
- "wordpress-dsgvo/\" target=\"_blank\">Google Fonts wenn möglich durch lokal "
5913
- "gehostete Schriftarten zu ersetzen</a>, anstatt nach einer Einwilligung zu "
5914
- "fragen. Wie das funktioniert, haben wir in unserem Blog erklärt!"
 
 
 
 
5915
 
5916
  #: inc/presets/free/GravatarPreset.php:1
5917
  msgid ""
@@ -6081,18 +6325,21 @@ msgstr ""
6081
  "Dienst Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für Gravatar "
6082
  "müssen Sie einen Service definieren."
6083
 
 
6084
  #: inc/presets/free/WordPressCommentsPreset.php:1
6085
  msgid ""
6086
  "Do you want to use the comment feature on your website at all? If not, we "
6087
- "explain in our blog <a href=\"https://devowl.io/2022/deactivate-wordpress-"
6088
- "comments/\" target=\"_blank\"> how to disable comments in WordPress</a>. "
6089
- "Then you can also avoid this consent!"
6090
  msgstr ""
6091
  "Möchten Sie die Kommentarfunktion auf Ihrer Website überhaupt nutzen? Wenn "
6092
- "nicht, erklären wir in unserem Blog, <a href=\"https://devowl.io/de/2022/"
6093
- "wordpress-kommentare-deaktivieren/\" target=\"_blank\">wie Sie Kommentare in "
6094
- "WordPress deaktivieren können</a>. Dann können Sie sich diese Einwilligung "
6095
- "auch sparen!"
 
 
 
6096
 
6097
  #: inc/presets/free/WordPressEmojisPreset.php:1
6098
  msgid ""
@@ -6122,18 +6369,22 @@ msgstr ""
6122
  "können Emojis ohne das WordPressa Emoji Script (für das Sie diese "
6123
  "Einwilligung einholen müssen) problemlos anzeigen."
6124
 
 
6125
  #: inc/presets/free/WordPressEmojisPreset.php:1
6126
  msgid ""
6127
  "Unless you need to support particularly old browsers and operating systems, "
6128
- "we recommend that you <a href=\"https://devowl.io/2022/disable-emojis-"
6129
- "wordpress/\" target=\"_blank\">disable the WordPress emoji script</a> rather "
6130
- "than asking for consent. How to do that, we have explained in our blog!"
6131
  msgstr ""
6132
  "Sofern Sie nicht besonders alte Browser und Betriebssysteme unterstützen "
6133
- "müssen, empfehlen wir Ihnen, das <a href=\"https://devowl.io/de/2022/"
6134
- "wordpress-emojis-deaktivieren/\" target=\"_blank\">WordPress-Emoji-Script zu "
6135
- "deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. Wie Sie das "
6136
- "machen, haben wir in unserem Blog erklärt!"
 
 
 
6137
 
6138
  #: inc/presets/free/WordPressPluginEmbed.php:1
6139
  msgid ""
@@ -6395,35 +6646,22 @@ msgstr "Ezoic (Statistik)"
6395
 
6396
  #: inc/presets/UpdateNotice.php:1
6397
  msgid ""
6398
- "It seems that since the last update of <strong>Real Cookies Banner</strong> "
6399
- "some templates have been updated. Please check your following services to "
6400
- "make sure they are up to date:"
6401
  msgstr ""
6402
- "Offenbar wurden seit dem letzten Update von <strong>Real Cookies Banner</"
6403
- "strong> einige Vorlagen aktualisiert. Bitte überprüfen Sie Ihre folgenden "
6404
- "Services, um sicherzustellen, dass sie auf dem neuesten Stand sind:"
 
6405
 
6406
  #: inc/presets/UpdateNotice.php:1
6407
  msgid "Service (Cookie)"
6408
  msgstr "Service (Cookie)"
6409
 
6410
  #: inc/presets/UpdateNotice.php:1
6411
- msgid "Edit"
6412
- msgstr "Bearbeiten"
6413
-
6414
- #: inc/presets/UpdateNotice.php:1
6415
- msgid "Create new from template"
6416
- msgstr "Aus Vorlage erstellen"
6417
-
6418
- #: inc/presets/UpdateNotice.php:1
6419
- msgid ""
6420
- "The easiest way to apply the changes is to delete the service and all "
6421
- "connected content blockers in Real Cookie Banner and create it again from "
6422
- "the service templates."
6423
- msgstr ""
6424
- "Am einfachsten können Sie die Änderungen übernehmen, indem Sie den Service "
6425
- "und alle damit verbundenen Content Blocker in Real Cookie Banner löschen und "
6426
- "ihn aus den Service-Vorlagen neu erstellen."
6427
 
6428
  #: inc/presets/UpdateNotice.php:1
6429
  msgid "Dismiss this notice"
@@ -6484,6 +6722,7 @@ msgid "Service group"
6484
  msgstr "Service-Gruppen"
6485
 
6486
  #: inc/settings/CookieGroup.php:1
 
6487
  msgid ""
6488
  "Essential services are required for the basic functionality of the website. "
6489
  "They only contain technically necessary services. These services cannot be "
@@ -6494,9 +6733,10 @@ msgstr ""
6494
  "Services kann nicht widersprochen werden."
6495
 
6496
  #: inc/settings/CookieGroup.php:1
 
6497
  msgid ""
6498
  "Functional services are necessary to provide features beyond the essential "
6499
- "functionality such as prettier fonts, video playback or interactive Web 2.0 "
6500
  "features. Content from e.g. video platforms and social media platforms are "
6501
  "blocked by default, and can be consented to. If the service is agreed to, "
6502
  "this content is loaded automatically without further manual consent."
@@ -6509,6 +6749,7 @@ msgstr ""
6509
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6510
 
6511
  #: inc/settings/CookieGroup.php:1
 
6512
  msgid ""
6513
  "Statistics services are needed to collect pseudonymous data about the "
6514
  "visitors of the website. The data enables us to understand visitors better "
@@ -6519,6 +6760,7 @@ msgstr ""
6519
  "besser zu verstehen und die Webseite zu optimieren."
6520
 
6521
  #: inc/settings/CookieGroup.php:1
 
6522
  msgid ""
6523
  "Marketing services are used by us and third parties to track the behaviour "
6524
  "of individual visitors (across multiple pages), analyse the data collected "
@@ -6526,8 +6768,8 @@ msgid ""
6526
  "us to track visitors across multiple websites."
6527
  msgstr ""
6528
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6529
- "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und z."
6530
- "B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6531
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6532
 
6533
  #: inc/settings/Revision.php:1
@@ -6672,12 +6914,11 @@ msgstr "Einstellungen des Cookie Banners anpassen"
6672
 
6673
  #: inc/view/checklist/SaveSettings.php:1
6674
  msgid ""
6675
- "Define the behavior of the cookie banner and hide the cookie banner both in "
6676
- "the imprint and privacy policy (required by law)."
6677
  msgstr ""
6678
- "Steuern Sie das Verhalten des Cookie Banners und verstecken Sie den Cookie "
6679
- "Banner sowohl im Impressum als auch in der Datenschutzerklärung (gesetzlich "
6680
- "vorgeschrieben)."
6681
 
6682
  #: inc/view/checklist/SaveSettings.php:1
6683
  msgid "Manage settings"
@@ -6690,10 +6931,10 @@ msgstr "Ihre Website nach Services durchsuchen"
6690
  #: inc/view/checklist/Scanner.php:1
6691
  msgid ""
6692
  "Scan your website to identify services used and external URLs that may "
6693
- "transmit personal data."
6694
  msgstr ""
6695
  "Scannen Sie Ihre Website, um Services und externe URLs zu identifizieren, "
6696
- "die personenbezogene Daten übertragen können."
6697
 
6698
  #: inc/view/checklist/Scanner.php:1
6699
  msgid "Open scanner"
@@ -6707,18 +6948,18 @@ msgstr "Platzieren Sie legale Links zu Ihrer Website"
6707
  msgid ""
6708
  "Your website visitors must be able to view their consent history, change "
6709
  "their consent, or withdraw their consent at any time. This must be as easy "
6710
- "as giving consent. Therefore, the shortcodes must be included on every "
6711
  "subpage of the website (e.g. in the footer)."
6712
  msgstr ""
6713
  "Ihre Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6714
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6715
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6716
- "Daher müssen die Shortcodes auf jeder Unterseite der Website enthalten sein "
6717
- "(z. B. im Footer/Fußzeile)."
6718
 
6719
  #: inc/view/checklist/Shortcode.php:1
6720
  msgid "Create legal links"
6721
- msgstr "Legal links erstellen"
6722
 
6723
  #: inc/view/checklist/ViewStats.php:1
6724
  msgid "Check out statistics about consents"
@@ -6794,6 +7035,17 @@ msgstr "Einstellungen"
6794
  msgid "Enabled"
6795
  msgstr "Aktiviert"
6796
 
 
 
 
 
 
 
 
 
 
 
 
6797
  #: inc/view/customize/banner/BasicLayout.php:1
6798
  msgid "Basic Layout"
6799
  msgstr "Grundlegendes Layout"
@@ -6888,6 +7140,16 @@ msgstr "Button: Abgerundete Ecken"
6888
  msgid "Animation on display"
6889
  msgstr "Animation beim Einblenden"
6890
 
 
 
 
 
 
 
 
 
 
 
6891
  #: inc/view/customize/banner/BasicLayout.php:1
6892
  msgid "Animation only on mobile devices"
6893
  msgstr "Animation nur auf mobilen Geräten"
@@ -7094,22 +7356,21 @@ msgstr "Button: Weiter ohne Einwilligung"
7094
  msgid "Use the same stylings as for \"Accept all\""
7095
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7096
 
 
7097
  #: inc/view/customize/banner/BodyDesign.php:1
7098
  #: inc/view/customize/banner/individual/SaveButton.php:1
7099
  msgid ""
7100
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7101
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7102
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7103
  "way for your visitors to express their choice (agree to everything, continue "
7104
  "without consent or an indivudual decision). Equivalent does not necessarily "
7105
  "mean that the buttons/links must look exactly the same. However, you should "
7106
  "be safest if they look exactly the same."
7107
  msgstr ""
7108
- "Gemäß <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7109
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7110
- "deutschen Datenschutzbehörden</a> muss es für Ihre Besucher eine "
7111
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7112
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7113
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7114
  "aussehen müssen. Sie sind jedoch am sichersten, wenn sie genau gleich "
7115
  "aussehen."
@@ -7215,25 +7476,28 @@ msgid "Consent options"
7215
  msgstr "Einwilligungs-Optionen"
7216
 
7217
  #: inc/view/customize/banner/Decision.php:1
7218
- #: inc/view/customize/banner/Texts.php:1
7219
  msgid "Accept all"
7220
  msgstr "Alle akzeptieren"
7221
 
7222
  #. translators:
7223
  #: inc/view/customize/banner/Decision.php:1
7224
  msgid ""
7225
- "According to the GDPR (%1$sEU 2016/679%2$s), section 32, you are not allowed "
7226
- "to pre-select services in the form of pre-selected checkboxes for the "
7227
- "visitor. However, the GDPR and ePrivacy Directive do not prohibit the use of "
7228
- "a button to agree to all services, if there is also a button to agree only "
7229
- "to the essential services or to make a user-defined selection."
7230
  msgstr ""
7231
- "Gemäß der DSGVO (%1$sEU 2016/679%2$s), Erwägungsgrund 32, dürfen Sie keine "
7232
- "Services in Form von vorselektierten Checkboxen für den Besucher "
7233
- "vorauswählen. Die DSGVO und die ePrivacy-Richtlinie verbieten jedoch nicht "
7234
- "die Verwendung eines Buttons zur Einwilligung in alle Services, sofern es "
7235
- "auch einen Button gibt, um nur den essenziellen Services zuzustimmen oder um "
7236
- "eine benutzerdefinierte Auswahl zu treffen."
 
 
 
 
7237
 
7238
  #: inc/view/customize/banner/Decision.php:1
7239
  #: inc/view/customize/banner/individual/SaveButton.php:1
@@ -7247,7 +7511,6 @@ msgid "Link"
7247
  msgstr "Link"
7248
 
7249
  #: inc/view/customize/banner/Decision.php:1
7250
- #: inc/view/customize/banner/Texts.php:1
7251
  msgid "Continue without consent"
7252
  msgstr "Weiter ohne Einwilligung"
7253
 
@@ -7280,45 +7543,43 @@ msgstr ""
7280
  "Einwilligung\"."
7281
 
7282
  #: inc/view/customize/banner/Decision.php:1
7283
- #: inc/view/customize/banner/individual/Texts.php:1
7284
  msgid "Individual privacy preferences"
7285
  msgstr "Individuelle Privatsphäre-Präferenzen"
7286
 
7287
  #: inc/view/customize/banner/Decision.php:1
7288
  msgid ""
7289
- "According to the GDPR (EU 2016/679) and the ePrivacy Directive (EU 2009/136/"
7290
- "EC), the user must be free to choose which services to use and be informed "
7291
- "about their purpose before giving consent. Therefore, the user must be given "
7292
- "the opportunity to access the page with the individual privacy settings."
7293
  msgstr ""
7294
- "Gemäß der DSGVO (EU 2016/679) und der ePrivacy-Richtlinie (EU 2009/136/EG) "
7295
- "muss der Nutzer frei wählen können, welche Services er nutzt, und er muss "
7296
- "über deren Zweck informiert werden, bevor er seine Einwilligung gibt. Daher "
7297
- "muss der Nutzer die Möglichkeit haben, die Seite mit den individuellen "
7298
- "Privatsphären-Einstellungen aufzurufen."
7299
 
7300
  #: inc/view/customize/banner/Decision.php:1
7301
  msgid "Order of the buttons"
7302
  msgstr "Reihenfolge der Buttons"
7303
 
 
7304
  #: inc/view/customize/banner/Decision.php:1
7305
  msgid ""
7306
- "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7307
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data "
7308
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7309
  "way for your visitors to express their choice (agree to everything, continue "
7310
  "without consent or an indivudual decision). Which order of options is "
7311
  "considered equivalent is unclear. Therefore, the options should be arranged "
7312
  "according to the cultural conditions of the main target country."
7313
  msgstr ""
7314
- "Gemäß <a href=\"https://www.datenschutzkonferenz-online.de/media/"
7315
- "oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Orientierungshilfe der "
7316
- "deutschen Datenschutzbehörden</a> muss es für Ihre Besucher eine "
7317
- "gleichwertige Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, "
7318
- "ohne Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
7319
- "Welche Reihenfolge der Optionen als gleichwertig angesehen wird, ist unklar. "
7320
- "Daher sollten die Optionen nach den kulturellen Gegebenheiten des "
7321
- "Hauptziellandes angeordnet werden."
7322
 
7323
  #: inc/view/customize/banner/Decision.php:1
7324
  msgid "Service groups as bullet list"
@@ -7349,8 +7610,27 @@ msgid "Text of \"Accept all\" changes when user changes selection"
7349
  msgstr ""
7350
  "Text von „Alle akzeptieren“ ändert, wenn der Benutzer die Auswahl ändert"
7351
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7352
  #: inc/view/customize/banner/Decision.php:1
7353
  #: inc/view/customize/banner/individual/Texts.php:1
 
7354
  msgid "Save custom choices"
7355
  msgstr "Individuelle Auswahl speichern"
7356
 
@@ -7594,6 +7874,7 @@ msgstr "„Service-Informationen ausblenden“-Link"
7594
 
7595
  #: inc/view/customize/banner/individual/Texts.php:1
7596
  #: inc/view/customize/banner/Texts.php:1
 
7597
  msgid ""
7598
  "We use cookies and similar technologies on our website and process your "
7599
  "personal data (e.g. IP address), for example, to personalize content and "
@@ -7611,6 +7892,7 @@ msgstr ""
7611
 
7612
  #: inc/view/customize/banner/individual/Texts.php:1
7613
  #: inc/view/customize/banner/Texts.php:1
 
7614
  msgid ""
7615
  "The data processing may take place with your consent or on the basis of a "
7616
  "legitimate interest, which you can object to in the privacy settings. You "
@@ -7626,6 +7908,7 @@ msgstr ""
7626
  "in unserer {{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7627
 
7628
  #: inc/view/customize/banner/individual/Texts.php:1
 
7629
  msgid ""
7630
  "Below you will find an overview of all services used by this website. You "
7631
  "can view detailed information about each service and agree to them "
@@ -7637,10 +7920,12 @@ msgstr ""
7637
  "machen."
7638
 
7639
  #: inc/view/customize/banner/individual/Texts.php:1
 
7640
  msgid "Show service information"
7641
  msgstr "Service-Informationen anzeigen"
7642
 
7643
  #: inc/view/customize/banner/individual/Texts.php:1
 
7644
  msgid "Hide service information"
7645
  msgstr "Service-Informationen ausblenden"
7646
 
@@ -7803,12 +8088,8 @@ msgid "\"Powered by\" link text"
7803
  msgstr "„Powered by“ Link-Text"
7804
 
7805
  #: inc/view/customize/banner/Texts.php:1
7806
- msgid ""
7807
- "Use <code>{{services}}</code> as a placeholder to show all services that "
7808
- "process data in the USA."
7809
- msgstr ""
7810
- "Verwenden Sie <code>{{services}}</code> als Platzhalter, um alle Services "
7811
- "anzuzeigen, die Daten in den USA verarbeiten."
7812
 
7813
  #: inc/view/customize/banner/Texts.php:1
7814
  msgid "Data processing in the USA"
@@ -7881,22 +8162,28 @@ msgstr "„Inhalt laden“ Button/Link"
7881
  msgid "Additional info below the \"Load content\" button"
7882
  msgstr "Zusatzinfo unterhalb des „Inhalt laden“-Buttons"
7883
 
 
7884
  #: inc/view/customize/banner/Texts.php:1
7885
  msgid ""
7886
  "The standard texts in the cookie banner are worded carefully. If you "
7887
  "customize them, make sure they are not misleading or riveting. According to "
7888
- "the <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-"
7889
- "und-tracking-2/#13_informiertheit)\" target=\"_blank\">Data Protection "
7890
- "Commissioner of Baden-Württeberg, Germany (Section B, 1.3.7.; German)</a>, "
7891
- "for example, a headline \"We love cookies\" is already misleading."
7892
  msgstr ""
7893
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn Sie "
7894
  "diese anpassen, achten Sie bitte darauf, dass diese nicht irreführend oder "
7895
- "vernietlichend sind. Nach dem <a href=\"https://www.baden-wuerttemberg."
7896
- "datenschutz.de/faq-zu-cookies-und-tracking-2/#13_informiertheit)\" target="
7897
- "\"_blank\">Datenschutzbeauftragen von Baden-Württeberg, Deutschland "
7898
- "(Abschnitt B, 1.3.7.)</a> ist z.B. die Überschrift \"Wir lieben Cookies\" "
7899
- "bereits irreführend."
 
 
 
 
 
 
7900
 
7901
  #. translators:
7902
  #: inc/view/customize/banner/Texts.php:1
@@ -7937,14 +8224,17 @@ msgstr ""
7937
  "Einwilligung%2$s, um sie zu aktivieren."
7938
 
7939
  #: inc/view/customize/banner/Texts.php:1
 
7940
  msgid "Privacy preferences"
7941
  msgstr "Privatsphäre-Einstellungen"
7942
 
7943
  #: inc/view/customize/banner/Texts.php:1
 
7944
  msgid "Set privacy settings individually"
7945
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
7946
 
7947
  #: inc/view/customize/banner/Texts.php:1
 
7948
  msgid ""
7949
  "Some services process personal data in the USA. By consenting to the use of "
7950
  "these services, you also consent to the processing of your data in the USA "
@@ -7963,6 +8253,7 @@ msgstr ""
7963
  "verarbeitet werden, unter Umständen ohne die Möglichkeit eines Rechtsbehelfs."
7964
 
7965
  #: inc/view/customize/banner/Texts.php:1
 
7966
  msgid ""
7967
  "You are under 16 years old? Then you cannot consent to optional services. "
7968
  "Ask your parents or legal guardians to agree to these services with you."
@@ -7972,6 +8263,7 @@ msgstr ""
7972
  "in diese Services einzuwilligen."
7973
 
7974
  #: inc/view/customize/banner/Texts.php:1
 
7975
  msgid ""
7976
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
7977
  "to this service to view this content. Please ask your parents or guardians "
@@ -7982,34 +8274,40 @@ msgstr ""
7982
  "Erziehungsberechtigten, dem Service mit Ihnen zuzustimmen!"
7983
 
7984
  #: inc/view/customize/banner/Texts.php:1
 
7985
  msgid ""
7986
  "By accepting all services, you allow {{services}} to be loaded. These "
7987
  "services are divided into groups {{serviceGroups}} according to their "
7988
  "purpose (belonging marked with superscript numbers)."
7989
  msgstr ""
7990
  "Indem Sie alle Services akzeptieren, erlauben Sie, dass {{services}} geladen "
7991
- "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt "
7992
- "(Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
7993
 
7994
  #: inc/view/customize/banner/Texts.php:1
 
7995
  msgid "Your consent is also applicable on {{websites}}."
7996
  msgstr "Ihre Einwilligung gilt auch auf {{websites}}."
7997
 
7998
  #. translators:
7999
  #: inc/view/customize/banner/Texts.php:1
 
8000
  msgid "{{name}} blocked due to privacy settings"
8001
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
8002
 
8003
  #. translators:
8004
  #: inc/view/customize/banner/Texts.php:1
 
8005
  msgid "Show all services you still need to agree to"
8006
  msgstr "Alle Services anzeigen, denen Sie noch zustimmen müssen"
8007
 
8008
  #: inc/view/customize/banner/Texts.php:1
 
8009
  msgid "Accept required services and load content"
8010
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
8011
 
8012
  #: inc/view/customize/banner/Texts.php:1
 
8013
  msgid ""
8014
  "Loading the blocked content will adjust your privacy settings. Content from "
8015
  "this service will not be blocked in the future. You have the right to revoke "
@@ -8049,18 +8347,22 @@ msgid "The navigation menu could not be found."
8049
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8050
 
8051
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8052
  msgid "Change privacy settings"
8053
  msgstr "Privatsphäre-Einstellungen ändern"
8054
 
8055
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8056
  msgid "Privacy settings history"
8057
  msgstr "Historie der Privatsphäre-Einstellungen"
8058
 
8059
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8060
  msgid "Revoke consents"
8061
  msgstr "Einwilligungen widerrufen"
8062
 
8063
  #: inc/view/navmenu/NavMenuLinks.php:1
 
8064
  msgid ""
8065
  "You have successfully revoked the consent. The page will be reloaded now."
8066
  msgstr ""
@@ -8111,6 +8413,45 @@ msgid "Please provide a `type` attribute in your shortcode. Allowed: %s!"
8111
  msgstr ""
8112
  "Bitte geben Sie in Ihrem Shortcode das Attribut `type` an. Erlaubt: %s!"
8113
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8114
  #~ msgid ""
8115
  #~ "An opt-in script is not required, as this service is probably already "
8116
  #~ "integrated via e.g. your theme. In addition to this service, please "
5
  "Project-Id-Version: n/a\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/src\n"
7
  "POT-Creation-Date: n/a\n"
8
+ "PO-Revision-Date: 2022-08-29 14:24+0000\n"
9
  "Last-Translator: Matthias Günter <matthias.guenter@devowl.io>\n"
10
  "Language-Team: German (formal) <https://translate.devowl.io/projects/"
11
  "wordpress-real-cookie-banner-backend-php/develop/de@formal/>\n"
14
  "Content-Type: text/plain; charset=UTF-8\n"
15
  "Content-Transfer-Encoding: 8bit\n"
16
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
17
+ "X-Generator: Weblate 4.13.1\n"
18
 
19
  #. Plugin Name of the plugin
20
  msgid "Real Cookie Banner"
176
  "weitere rechtliche Probleme vermeidet."
177
 
178
  #: inc/Assets.php:1
179
+ msgctxt "legal-text"
180
  msgid "Use on legal basis of"
181
  msgstr "Verwendung auf gesetzlicher Grundlage von"
182
 
183
  #: inc/Assets.php:1
184
+ msgctxt "legal-text"
185
  msgid "Legitimate interest"
186
  msgstr "Berechtigtes Interesse"
187
 
188
  #: inc/Assets.php:1
189
+ msgctxt "legal-text"
190
  msgid "Compliance with a legal obligation"
191
  msgstr "Erfüllung einer rechtlichen Verpflichtung"
192
 
193
  #: inc/Assets.php:1
194
+ msgctxt "legal-text"
195
  msgid "Consent"
196
  msgstr "Einwilligung"
197
 
198
  #: inc/Assets.php:1
199
+ msgctxt "legal-text"
200
  msgid ""
201
  "We have recognized that you are a crawler/bot. Only natural persons must "
202
  "consent to cookies and processing of personal data. Therefore, the link has "
207
  "einwilligen. Daher hat der Link für Sie keine Funktion."
208
 
209
  #: inc/Assets.php:1
210
+ msgctxt "legal-text"
211
  msgid "Technical cookie definition"
212
  msgstr "Technische Cookie-Definition"
213
 
214
  #: inc/Assets.php:1
215
+ msgctxt "legal-text"
216
  msgid "Uses cookies"
217
  msgstr "Verwendete Cookies"
218
 
219
  #: inc/Assets.php:1
220
+ msgctxt "legal-text"
221
  msgid "Cookie refresh"
222
  msgstr "Cookie-Auffrischung"
223
 
224
  #: inc/Assets.php:1
225
+ msgctxt "legal-text"
226
  msgid ""
227
  "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
228
  msgstr ""
230
  "IndexDB, etc.)"
231
 
232
  #: inc/Assets.php:1
233
+ msgctxt "legal-text"
234
  msgid "Host"
235
  msgstr "Host"
236
 
237
+ #: inc/Assets.php:1
238
+ msgctxt "legal-text"
239
  msgid "Duration"
240
  msgstr "Dauer"
241
 
264
  msgstr "Jahr(e)"
265
 
266
  #: inc/Assets.php:1
267
+ msgctxt "legal-text"
268
  msgid "No expiration"
269
  msgstr "Kein Ablauf"
270
 
271
+ #: inc/Assets.php:1
272
+ msgctxt "legal-text"
 
273
  msgid "Type"
274
  msgstr "Typ"
275
 
276
  #: inc/Assets.php:1
277
+ msgctxt "legal-text"
278
  msgid "Purpose"
279
  msgstr "Zweck"
280
 
281
  #: inc/Assets.php:1
282
+ msgctxt "legal-text"
283
  msgid "History of your privacy settings"
284
  msgstr "Historie Ihrer Privatsphäre-Einstellungen"
285
 
286
  #: inc/Assets.php:1
287
+ msgctxt "legal-text"
288
  msgid "Show consent from"
289
  msgstr "Einwilligungen anzeigen vom"
290
 
291
  #: inc/Assets.php:1
292
+ msgctxt "legal-text"
293
  msgid "Not yet consented to"
294
  msgstr "Noch nicht eingewilligt"
295
 
302
  msgstr "Verlassen ohne Speichern"
303
 
304
  #: inc/Assets.php:1
305
+ msgctxt "legal-text"
306
  msgid "Provider"
307
  msgstr "Anbieter"
308
 
309
  #: inc/Assets.php:1
310
+ msgctxt "legal-text"
311
  msgid "Privacy Policy"
312
  msgstr "Datenschutzerklärung"
313
 
314
  #. translators:
315
  #: inc/Assets.php:1
316
+ msgctxt "legal-text"
317
  msgid "and %d more"
318
  msgstr "und %d mehr"
319
 
320
  #. translators:
321
+ #: inc/Assets.php:1
322
+ msgctxt "legal-text"
323
  msgid "US data processing"
324
  msgstr "US-Datenverarbeitung"
325
 
712
  msgid ""
713
  "In recent months, more clarity has been created about what consent "
714
  "management on websites should look like - and what it shouldn't. In "
715
+ "particular, through the <a href=\"%1$s\" target=\"_blank\">TTDSG</a> "
716
+ "(Telecommunications Telemedia Data Protection Act; Germany) and <a href="
717
+ "\"%2$s\" target=\"_blank\">Guidance of the Conference of Independent Data "
718
+ "Protection Authorities for cookie banners</a> (coordinated legal "
719
+ "interpretation of all German data protection authorities; in German), there "
720
+ "are now clearer rules that further interpret or complement the EU-wide "
721
+ "applicable <a href=\"%3$s\" target=\"_blank\">ePrivacy Directive</a> and <a "
722
+ "href=\"%4$s\" target=\"_blank\">GDPR</a>. Furthermore, there were important "
723
+ "decisions such as the evaluation of <a href=\"%5$s\" target=\"_blank\">TCF "
724
+ "by ADP (Belgium)</a>, the <a href=\"%6$s\" target=\"_blank\">Google "
725
+ "Analytics decision by dsb (Austria)</a> and the <a href=\"%7$s\" target="
726
+ "\"_blank\">position on Google Analytics by CNIL</a>."
 
 
 
 
 
 
727
  msgstr ""
728
  "In den letzten Monaten wurde mehr Klarheit darüber geschaffen, wie das "
729
  "Einwilligungsmanagement auf Websites aussehen sollte - und wie es nicht "
730
+ "aussehen sollte. Insbesondere durch das <a href=\"%1$s\" target=\"_blank\""
731
+ ">TTDSG</a> (Telekommunikation-Telemedien-Datenschutz-Gesetz) und die <a href="
732
+ "\"%2$s\" target=\"_blank\">Orientierungshilfe der Konferenz der unabhängigen "
 
 
733
  "Datenschutzaufsichtsbehörden des Bundes und der Länder</a> (koordinierte "
734
  "Rechtsauslegung aller deutschen Datenschutzbehörden) gibt es jetzt klarere "
735
+ "Regeln, welche die EU-weit geltende <a href=\"%3$s\" target=\"_blank\""
736
+ ">ePrivacy-Richtlinie</a> und <a href=\"%4$s\" target=\"_blank\">DSGVO</a> "
737
+ "weiter auslegen oder ergänzen. Außerdem gab es wichtige Entscheidungen wie "
738
+ "die Bewertung von <a href=\"%5$s\" target=\"_blank\">TCF durch ADP "
739
+ "(Belgien)</a>, die <a href=\"%6$s\" target=\"_blank\">Google Analytics "
740
+ "Entscheidung von dsb (Österreich)</a> und die <a href=\"%7$s\" target="
741
+ "\"_blank\">Stellungnahme zu Google Analytics von CNIL</a>."
742
+
743
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
744
+ msgid "https://www.gesetze-im-internet.de/ttdsg/"
745
+ msgstr "https://www.gesetze-im-internet.de/ttdsg/"
746
+
747
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
748
+ #: inc/view/customize/banner/BodyDesign.php:1
749
+ #: inc/view/customize/banner/Decision.php:1
750
+ #: inc/view/customize/banner/individual/SaveButton.php:1
751
+ msgid ""
752
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
753
+ "pdf"
754
+ msgstr ""
755
+ "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien."
756
+ "pdf"
757
+
758
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
759
+ msgid "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex%3A32009L0136"
760
+ msgstr "https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32009L0136"
761
+
762
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
763
+ msgid "https://gdpr-info.eu/"
764
+ msgstr "https://dsgvo-gesetz.de/"
765
+
766
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
767
+ msgid ""
768
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-"
769
+ "n-21-2022-english.pdf"
770
+ msgstr ""
771
+ "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-"
772
+ "fond-n-21-2022-english.pdf"
773
+
774
+ #. translators:
775
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
776
+ msgid ""
777
+ "https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%2$20Google"
778
+ "%20Analytics_DE_bk_0.pdf"
779
+ msgstr ""
780
+ "https://noyb.eu/sites/default/files/2022-01/"
781
+ "E-DSB%20-%2$20Google%20Analytics_DE_bk_0.pdf"
782
+
783
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
784
+ msgid ""
785
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
786
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
787
+ msgstr ""
788
+ "https://www.cnil.fr/sites/default/files/atoms/files/"
789
+ "decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
790
 
791
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
792
  msgid ""
847
  #. translators:
848
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
849
  msgid ""
850
+ "In accordance with the requirements of the &quot;<a href=\"%s\" target="
 
851
  "\"_blank\">Guidance of the Conference of Independent Data Protection "
852
  "Authorities for cookie banners</a>&quot;, the possibility to view, modify "
853
  "and revoke consent must be directly accessible on every sub-page of your "
854
  "website."
855
  msgstr ""
856
+ "Gemäß den Anforderungen des <a href=\"%s\" target=\"_blank\">"
 
857
  "\"Orientierungshilfe der Konferenz der unabhängigen "
858
  "Datenschutzaufsichtsbehörden des Bundes und der Länder\"</a> muss die "
859
  "Möglichkeit, die Einwilligung einzusehen, zu ändern und zu widerrufen, auf "
996
  msgid "Updates in v3.0: You should act to be safe!"
997
  msgstr "Updates in v3.0: Sie sollten handeln, um sicher zu sein!"
998
 
999
+ #. translators:
1000
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1001
  msgid ""
1002
  "With Real Cookie Banner 3.0 we have released a major update, in which we "
1003
  "have implemented, among other things, current legal adjustments. Read more "
1004
+ "about the changes in our <a href=\"%s\" target=\"_blank\">blog post</a>."
 
1005
  msgstr ""
1006
  "Mit Real Cookie Banner 3.0 haben wir ein großes Update veröffentlicht, in "
1007
  "dem wir u.a. aktuelle rechtliche Anpassungen vorgenommen haben. Mehr zu den "
1008
+ "Änderungen erfahren Sie in unserem <a href=\"%s\" target=\"_blank\""
1009
+ ">Blogbeitrag.</a>."
1010
+
1011
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1012
+ msgid "https://devowl.io/2022/real-cookie-banner-3-0/"
1013
+ msgstr "https://devowl.io/de/2022/real-cookie-banner-3-0/"
1014
 
1015
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
1016
  msgid ""
1068
  "Informationen lesen und eine Rechtsberatung konsultieren, um das weitere "
1069
  "Vorgehen für Ihren Einzelfall zu klären."
1070
 
1071
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1072
+ msgid "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1073
+ msgstr "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
1074
+
1075
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1076
  msgid "Decision of the Belgian Data Protection Authority (APD)"
1077
  msgstr "Entscheidung der belgischen Datenschutzbehörde (APD; Englisch)"
1078
 
1079
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1080
+ msgid ""
1081
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1082
+ msgstr ""
1083
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
1084
+
1085
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1086
  msgid "Statement of the IAB Europe (English)"
1087
  msgstr "Stellungnahme des IAB Europe (Englisch)"
1088
 
1089
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1090
+ msgid ""
1091
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1092
+ msgstr ""
1093
+ "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
1094
+
1095
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
1096
  msgid "Legal assessment by RA Dr. Schwenke (German)"
1097
  msgstr "Rechtliche Einschätzung von RA Dr. Schwenke (Deutsch)"
1472
  "\"_blank\">%3$s</a>. In diesem Fall müssen Sie auch den „Code executed on "
1473
  "opt-in“ entfernen."
1474
 
1475
+ #: inc/overrides/pro/presets/ActiveCampaignSiteTrackingPreset.php:1
1476
+ msgid "https://wordpress.org/plugins/activecampaign-subscription-forms/"
1477
+ msgstr "https://de.wordpress.org/plugins/activecampaign-subscription-forms/"
1478
+
1479
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1480
  msgid ""
1481
  "AddThis allows providing links and buttons for sharing content on a variety "
1529
  "eindeutig zu identifizieren und ihn als potenziellen Angreifer zu "
1530
  "klassifizieren und den schnellsten verfügbaren Server zu ermitteln."
1531
 
1532
+ #. translators:
1533
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1534
  msgid ""
1535
+ "This template assumes that you use the <a href=\"%s\" target=\"_blank"
1536
+ "\">AddToAny WordPress plugin</a>. The template is not suitable to add "
1537
+ "Facebook Like, Twitter Tweet or Pinterest Pin button in AddToAny. If you "
1538
+ "want to use any of these buttons, please use it without AddToAny and "
1539
+ "additionally create the cookies and content blockers for the respective "
1540
+ "service."
1541
  msgstr ""
1542
+ "Diese Vorlage setzt voraus, dass Sie das <a href=\"%s\" target=\"_blank\""
1543
+ ">AddToAny WordPress Plugin</a> verwenden. Die Vorlage ist nicht geeignet, um "
1544
+ "Facebook Like, Twitter Tweet oder Pinterest Pin Button in AddToAny "
1545
+ "hinzuzufügen. Wenn Sie einen dieser Buttons verwenden möchten, verwenden Sie "
1546
+ "ihn bitte ohne AddToAny und setzen Sie zusätzlich die Cookies und Content-"
1547
+ "Blocker für den jeweiligen Dienst."
1548
+
1549
+ #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1550
+ msgid "https://wordpress.org/plugins/add-to-any/"
1551
+ msgstr "https://de.wordpress.org/plugins/add-to-any/"
1552
 
1553
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1554
  msgid ""
1569
  "oft welche Werbeeinblendung bereits angezeigt wurde und wie oft die "
1570
  "jeweilige Werbung angeklickt worden ist."
1571
 
1572
+ #. translators:
1573
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1574
  msgid ""
1575
+ "Ad Insert plays out ads even without consent. You should <a href=\"%s\" "
1576
+ "target=\"_blank\">obtain consent for the ads via the TCF v2.0 or newer "
1577
+ "standard</a>. Only some features of the plugin require you to obtain consent "
1578
+ "for Ad Inserter."
1579
  msgstr ""
1580
+ "Ad Insert spielt Anzeigen auch ohne Zustimmung aus. Sie sollten <a href=\"%"
1581
+ "s\" target=\"_blank\">die Zustimmung für die Anzeigen über den TCF v2.0 oder "
1582
+ "neueren Standard einholen</a>. Nur für einige Funktionen des Plugins müssen "
1583
+ "Sie die Zustimmung für Ad Inserter einholen."
1584
+
1585
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1586
+ msgid "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1587
+ msgstr "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1588
 
1589
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1590
  msgid ""
1602
  "verwenden” deaktiviert haben, da dieser Teil des Adblockers Daten an Google "
1603
  "und Media.net überträgt, bevor Sie Ihre Zustimmung dazu gegeben haben."
1604
 
1605
+ #. translators:
1606
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1607
  msgid ""
1608
+ "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"%s\" "
1609
+ "target=\"_blank\">impression and click limits</a> feature of Ad Inserter "
1610
+ "Pro. The duration of the cookie depends on the settings of the feature."
 
1611
  msgstr ""
1612
  "Das Cookie <code>aiBLOCKS</code> wird gesetzt, wenn Sie die Funktion <a href="
1613
+ "\"%s\" target=\"_blank\">Impressions- und Klickgrenzen</a> von Ad Inserter "
1614
+ "Pro nutzen. Die Dauer des Cookies hängt von den Einstellungen der Funktion "
1615
+ "ab."
1616
+
1617
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1618
+ msgid "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1619
+ msgstr "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1620
 
1621
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1622
  msgid ""
1845
  msgid "Awin Publisher ID"
1846
  msgstr "Awin Publisher ID"
1847
 
1848
+ #. translators:
1849
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1850
  msgid ""
1851
+ "You find your publisher ID in the <a href=\"%s\" target=\"_blank\">account "
1852
+ "overview</a> directly blow your account name."
1853
  msgstr ""
1854
+ "Ihre Publisher-ID finden Sie in der <a href=\"%s\" target=\"_blank\""
1855
+ ">Kontoübersicht</a> direkt über Ihrem Kontonamen."
1856
+
1857
+ #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1858
+ msgid "https://ui.awin.com/user"
1859
+ msgstr "https://ui.awin.com/user"
1860
 
1861
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1862
  msgid ""
1913
  "Conversion Tracking > UET-Tag finden Sie die Tag-ID Ihres UET-Tags in der "
1914
  "Tag-Tabelle."
1915
 
1916
+ #: inc/overrides/pro/presets/BingAdsPreset.php:1
1917
+ msgid "https://ads.microsoft.com"
1918
+ msgstr "https://ads.microsoft.com"
1919
+
1920
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1921
  msgid ""
1922
  "Bing Maps displays maps on the website as iframe or via JavaScript directly "
2370
  msgid "etracker Account Key"
2371
  msgstr "etracker Account Key"
2372
 
2373
+ #. translators:
2374
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2375
  msgid ""
2376
+ "You can find your etracker account key under <a href=\"%s\" target=\"_blank"
2377
+ "\">Account info > Settings> Account</a> of your etracker account."
 
2378
  msgstr ""
2379
+ "Sie finden Ihren etracker Account Key unter <a href=\"%s\" target=\"_blank\""
2380
+ ">Account Info > Einstellungen > Account</a> Ihres etracker Accounts."
2381
+
2382
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2383
+ msgid "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2384
+ msgstr "https://newapp.etracker.com/#/report/accountSettings/accountKey"
2385
 
2386
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2387
  msgid ""
2398
  "Tracking widersprechen, indem er diesen Service in Ihrem Cookie Banner "
2399
  "deaktiviert."
2400
 
2401
+ #. translators:
2402
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
2403
  msgid ""
2404
  "We also recommend that you deactivate the non-aggregated reporting via the "
2405
+ "<a href=\"%s\" target=\"_blank\">dashboard</a> under <i>menu (top left) > "
2406
+ "Account-ID > Settings > Privacy > Consent-free tracking cookies in "
2407
+ "accordance with CNIL guidelines</i> to ensure that there is definitely no "
2408
+ "personal reference for the collected data."
2409
+ msgstr ""
2410
+ "Wir empfehlen Ihnen, zusätzlich über das <a href=\"%s\" target=\"_blank\""
2411
+ ">Dashboard</a> unter <i>Menü (obene links) > Account-ID > Einstellungen > "
2412
+ "Datenschutz > Einwilligungs-freie Tracking Cookies gemäß Anforderungen der "
2413
+ "CNIL</i> die nicht aggregierten Reportings zu deaktivieren, um "
2414
+ "sicherzustellen, dass definitiv kein Personenbezug bei den erhobenen Daten "
2415
+ "besteht."
2416
+
2417
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
2418
+ #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2419
+ msgid "https://newapp.etracker.com/"
2420
+ msgstr "https://newapp.etracker.com/"
2421
 
2422
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2423
  msgid "etracker: enhanced tracking"
2465
  "dieser Service im Falle einer Einwilligung das Tracking nur um weitere Daten "
2466
  "anreichert."
2467
 
2468
+ #. translators:
2469
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
2470
  msgid ""
2471
  "In order for the consent to be taken into account, you must activate the "
2472
+ "toggle \"Opt-In active\" via the <a href=\"%s\" target=\"_blank\">dashboard</"
2473
+ "a> under <i>menu (top left) > Account-ID > Settings > Privacy > Tracking Opt-"
2474
+ "In and agreement</i>, but then switch to \"own Opt-In\" so that etracker "
2475
+ "does not display its own consent dialog, but instead uses the consent "
2476
+ "collected by Real Cookie Banner."
2477
+ msgstr ""
2478
+ "Damit die Einwilligung berücksichtigt wird, müssen Sie via <a href=\"%s\" "
2479
+ "target=\"_blank\">Dashboard</a> unter <i>Menü (oben links) > Account-ID > "
2480
+ "Einstellungen > Datenschutz > Tracking Opt-In und Zustimmung</i> den Toggle "
2481
+ "\"Opt-In aktiv\" aktivieren und anschließend auf \"eigenes Opt-In\" "
2482
+ "umstellen. Damit wird etracker keinen eigenen Einwilligungsdialog anzeigen, "
2483
+ "sondern die Einwilligung, erhoben von Real Cookie Banner, verwenden."
 
2484
 
2485
  #. translators:
2486
  #: inc/overrides/pro/presets/ExactMetricsPreset.php:1
2790
  "sammeln. Diese Daten können mit den Daten der auf facebook.com registrierten "
2791
  "Nutzer verknüpft werden."
2792
 
2793
+ #. translators:
2794
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2795
  msgid ""
2796
+ "You can use Facebook's <a href=\"%s\" target=\"_blank\">embedded post "
2797
+ "generator</a> to generate a HTML code to embed post with the Facebook "
2798
+ "JavaScript SDK. Loading the JavaScript SDK is part of the opt-in code. All "
2799
+ "you need to do is place the HTML div and blockqoute elements where you want "
2800
+ "the embedded post to be visible on your site. If you use Facebook post as "
2801
+ "Iframe embeeds, please create in addition a content blocker for Facebook "
2802
+ "Posts to block loading of the content before you have the consent of the "
2803
+ "user."
2804
+ msgstr ""
2805
+ "Sie können den <a href=\"%s\" target=\"_blank\">Generator für eingebettete "
2806
+ "Beiträge</a> von Facebook verwenden, um einen HTML-Code zum Einbetten von "
2807
+ "Beiträgen mit dem Facebook JavaScript SDK zu erzeugen. Das Laden des "
2808
+ "JavaScript SDK ist Teil des Opt-in-Codes. Sie müssen lediglich die HTML-"
2809
+ "Elemente div und blockqoute an der Stelle platzieren, an der der "
2810
+ "eingebettete Beitrag auf Ihrer Website sichtbar sein soll. Wenn Sie Facebook-"
2811
+ "Posts als Iframe-Embeds verwenden, erstellen Sie bitte zusätzlich einen "
2812
+ "Content Blocker für Facebook-Posts, um das Laden des Inhalts zu blockieren, "
2813
+ "bevor Sie die Zustimmung des Nutzers haben."
2814
+
2815
+ #: inc/overrides/pro/presets/FacebookPostPreset.php:1
2816
+ msgid "https://developers.facebook.com/docs/plugins/embedded-posts/"
2817
+ msgstr "https://developers.facebook.com/docs/plugins/embedded-posts/"
2818
 
2819
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
2820
  msgid ""
3015
  msgid "Please fill in a valid tracking ID!"
3016
  msgstr "Bitte geben Sie eine gültige Tracking-ID an!"
3017
 
3018
+ #. translators:
3019
  #: inc/overrides/pro/presets/GoogleAds.php:1
3020
  msgid ""
3021
+ "You can find your Adwords ID in <a href=\"%s\" target=\"_blank\">Google Ads</"
3022
+ "a> at Tools > Measurement > Conversions > Click on the name of the "
3023
+ "conversation action > Tag setup > Install the tag yourself > Adwords ID in "
3024
+ "the code (e.g. AW-123456789)."
3025
  msgstr ""
3026
+ "Sie finden Ihre Adwords ID in <a href=\"%s\" target=\"_blank\">Google Ads</"
3027
+ "a> unter Tools > Messung > Conversions > Klicken Sie auf den Namen der "
3028
+ "Konversationsaktion > Tag einrichten > Installieren Sie den Tag selbst > "
3029
+ "Adwords ID im Code (z.B. AW-123456789)."
3030
+
3031
+ #: inc/overrides/pro/presets/GoogleAds.php:1
3032
+ msgid "https://ads.google.com/aw/overview"
3033
+ msgstr "https://ads.google.com/aw/overview"
3034
 
3035
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3036
  msgid ""
3057
  msgid "Google Adsense Publisher ID"
3058
  msgstr "Google Adsense Publisher-ID"
3059
 
3060
+ #. translators:
3061
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3062
  msgid ""
3063
  "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads "
3064
  "(if activated in your Adsense account) can be displayed. You can find it in "
3065
+ "the <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> under "
3066
+ "<i>Account > Settings > Account information</i>."
3067
  msgstr ""
3068
+ "Sie müssen Ihre Google Adsense Publisher ID eingeben, damit z.B. Auto Ads ("
3069
+ "falls in Ihrem Adsense Konto aktiviert) angezeigt werden können. Sie finden "
3070
+ "sie im <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> unter "
3071
+ "<i>Konto > Einstellungen > Kontoinformationen</i>."
3072
+
3073
+ #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3074
+ msgid "https://www.google.com/adsense"
3075
+ msgstr "https://www.google.com/adsense"
3076
 
3077
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
3078
  msgid ""
3117
  msgid "Google Analytics Measurement ID"
3118
  msgstr "Google Analytics Measurement ID"
3119
 
3120
+ #. translators:
3121
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3122
  msgid ""
3123
  "You can find your Measurement ID (also called property ID) in the <a href="
3124
+ "\"%s\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3125
+ "Select your account > Select your property > Setup Assistant > Tag "
3126
+ "installation > Select your website."
3127
  msgstr ""
3128
+ "Sie finden Ihre Measurement ID (auch Property ID genannt) im <a href=\"%s\" "
3129
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3130
+ "Wählen Sie Ihr Konto > Wählen Sie Ihre Property > Setup Assistant > Tag-"
3131
+ "Installation > Wählen Sie Ihre Website."
3132
+
3133
+ #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3134
+ #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3135
+ msgid "https://analytics.google.com/analytics/web/"
3136
+ msgstr "https://analytics.google.com/analytics/web/"
3137
 
3138
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
3139
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3183
  msgid "Google Analytics Tracking ID"
3184
  msgstr "Google Analytics Tracking ID"
3185
 
3186
+ #. translators:
3187
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
3188
  msgid ""
3189
+ "You can find your Tracking ID (also called Property ID) in the <a href=\"%s"
3190
+ "\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > "
3191
+ "Select your account > Select your property > Tracking Info > Tracking Code."
 
3192
  msgstr ""
3193
+ "Sie finden Ihre Tracking ID (auch Property ID genannt) im <a href=\"%s\" "
3194
+ "target=\"_blank\">Analytics Dashboard</a> unter Admin (Zahnradsymbol) > "
3195
+ "Wählen Sie Ihr Konto aus > Wählen Sie Ihre Immobilie aus > Tracking Info > "
3196
+ "Tracking Code."
3197
 
3198
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
3199
  msgid ""
3438
  "frühere Nachrichten mit seinem Chatverlauf zu verknüpfen und detaillierte "
3439
  "Statistiken über sein Verhalten zu sammeln."
3440
 
3441
+ #. translators:
3442
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3443
  msgid ""
3444
+ "You have to create a so-called Beacon on <a href=\"%s\" target=\"_blank"
3445
+ "\">secure.helpscout.net</a> > Manager > Beacon > New Beacon. After creating "
3446
+ "in the Beacon Customizer, the URL looks like <code>https://secure.helpscout."
3447
+ "net/settings/beacons/c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. "
3448
+ "This means that the HelpScout Beacon ID is <code>c676047b-"
3449
+ "c2e8-45b1-8319-344f4e7e2431</code>."
3450
  msgstr ""
3451
+ "Sie müssen ein sogenanntes Beacon auf <a href=\"%s\" target=\"_blank\">secure"
3452
+ ".helpscout.net</a> > Manager > Beacon > New Beacon erstellen. Nach der "
3453
+ "Erstellung im Beacon Customizer sieht die URL wie <code>https://secure."
3454
+ "helpscout.net/settings/beacons/c676047b-c2e8-45b1-8319-344f4e7e2431/"
3455
+ "customize</code> aus. Das bedeutet, dass die HelpScout Beacon ID <code"
3456
+ ">c676047b-c2e8-45b1-8319-344f4e7e2431</code> ist."
3457
+
3458
+ #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3459
+ msgid "https://secure.helpscout.net"
3460
+ msgstr "https://secure.helpscout.net"
3461
 
3462
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
3463
  msgid "HelpScout Beacon ID"
3482
  msgid "Hotjar ID"
3483
  msgstr "Hotjar ID"
3484
 
3485
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3486
+ msgid "https://wordpress.org/plugins/hotjar/"
3487
+ msgstr "https://de.wordpress.org/plugins/hotjar/"
3488
+
3489
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
3490
+ msgid "official Hotjar WordPress Plugin"
3491
+ msgstr "offizielles Hotjar WordPress-Plugin"
3492
+
3493
  #: inc/overrides/pro/presets/ImgurPreset.php:1
3494
  msgid ""
3495
  "Imgur allows embedding content posted on imgur.com directly into websites."
3562
  msgid "Intercom application ID"
3563
  msgstr "Intercom-Anwendung ID"
3564
 
3565
+ #: inc/overrides/pro/presets/IntercomChatPreset.php:1
3566
+ msgid "https://wordpress.org/plugins/intercom/"
3567
+ msgstr "https://de.wordpress.org/plugins/intercom/"
3568
+
3569
  #: inc/overrides/pro/presets/IssuuPreset.php:1
3570
  msgid ""
3571
  "Issuu allows embedding content posted on issuu.com directly into websites. "
3698
  msgid "https://linkedin.com/legal/privacy-policy"
3699
  msgstr "https://linkedin.com/legal/privacy-policy"
3700
 
3701
+ #. translators:
3702
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3703
  msgid ""
3704
  "You can find an article in LinkedIn's knowledge base that explains <a href="
3705
+ "\"%s\" target=\"_blank\">where to find the LinkedIn Partner ID</a> in your "
3706
+ "LinkedIn Ads account."
3707
  msgstr ""
3708
  "In der Wissensdatenbank von LinkedIn finden Sie einen Artikel, der erklärt, "
3709
+ "<a href=\"%s\" target=\"_blank\">>wo Sie die LinkedIn Partner ID</a> in "
3710
+ "Ihrem LinkedIn Ads-Konto finden."
3711
+
3712
+ #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
3713
+ msgid "https://www.linkedin.com/help/lms/answer/a415871"
3714
+ msgstr "https://www.linkedin.com/help/lms/answer/a415871"
3715
 
3716
  #: inc/overrides/pro/presets/LoomPreset.php:1
3717
  msgid ""
3837
  "des Newsletters verwenden, das ausgeblendet werden kann (z.B. Popup). Nur in "
3838
  "diesem Fall wird ein Cookie gesetzt."
3839
 
3840
+ #. translators:
3841
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
3842
  msgid ""
3843
  "Personal data will never be transferred directly from the browser of your "
3844
  "visitors to MailPoet, but only, for example, when you sign up for the "
3845
  "newsletter via your WordPress installation. You should always follow the <a "
3846
+ "href=\"%s\" target=\"_blank\">MailPoet Guide to Conform to GDPR</a>."
 
3847
  msgstr ""
3848
  "Personenbezogene Daten werden niemals direkt vom Browser Ihrer Besucher an "
3849
  "MailPoet übertragen, sondern nur, wenn Sie sich beispielsweise über Ihre "
3850
  "WordPress-Installation für den Newsletter anmelden. Sie sollten immer den <a "
3851
+ "href=\"%s\" target=\"_blank\">MailPoet Leitfaden zur Einhaltung der DSGVO</"
3852
+ "a> beachten."
3853
+
3854
+ #: inc/overrides/pro/presets/MailPoetPreset.php:1
3855
+ msgid "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3856
+ msgstr "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
3857
 
3858
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
3859
  msgid ""
3928
  msgid "Please provide a valid hash!"
3929
  msgstr "Bitte geben Sie einen gültigen Hashwert an!"
3930
 
3931
+ #. translators:
3932
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
3933
  msgid ""
3934
+ "You find your Metricool hash in the <a href=\"%s\" target=\"_blank"
3935
+ "\">Metricool Brand Conncetions</a>, if you use \"Connect web\" and choose "
3936
+ "the integration as JavaScript tag, within the generated JavaScript."
 
3937
  msgstr ""
3938
+ "Sie finden Ihren Metricool-Hash im <a href=\"%s\" target=\"_blank\""
3939
+ ">Metricool Brand Conncetions</a>, wenn Sie „Connect web“ verwenden und die "
3940
+ "Integration als JavaScript-Tag auswählen, innerhalb des generierten "
3941
+ "JavaScript."
3942
+
3943
+ #: inc/overrides/pro/presets/MetricoolPreset.php:1
3944
+ msgid "https://app.metricool.com/brands/connections"
3945
+ msgstr "https://app.metricool.com/brands/connections"
3946
 
3947
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3948
  msgid ""
3972
  "com/projects/view/12cggd77jl/</code> lautet, ist Ihre Projekt-ID "
3973
  "<code>12cggd77jl</code>."
3974
 
3975
+ #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
3976
+ msgid "https://wordpress.org/plugins/microsoft-clarity/"
3977
+ msgstr "https://de.wordpress.org/plugins/microsoft-clarity/"
3978
+
3979
  #. translators:
3980
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
3981
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
4011
  msgid "Mouseflow Website ID"
4012
  msgstr "Mouseflow-Website-ID"
4013
 
4014
+ #. translators:
4015
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
4016
  msgid ""
4017
  "You can find your Mouseflow website ID by hovering over the appropriate "
4018
+ "website at <a href=\"%s\" target=\"_blank\">eu.mouseflow.com/websites</a>. "
4019
+ "You will then see a gear icon that you can click on. In the settings that "
4020
+ "appear, you should find a <code>Website ID</code> field."
 
4021
  msgstr ""
4022
  "Sie finden Ihre Mouseflow-Website-ID, indem Sie mit dem Mauszeiger auf die "
4023
+ "entsprechende Website unter <a href=\"%s\" target=\"_blank\">eu.mouseflow."
4024
+ "com/websites</a> fahren. Sie sehen dann ein Zahnradsymbol, auf das Sie "
4025
+ "klicken können. In den daraufhin angezeigten Einstellungen sollten Sie ein "
4026
+ "Feld <code>Website-ID</code> finden."
4027
+
4028
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4029
+ msgid "http://eu.mouseflow.com/websites"
4030
+ msgstr "http://eu.mouseflow.com/websites"
4031
+
4032
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
4033
+ msgid "https://wordpress.org/plugins/mouseflow-for-wordpress/"
4034
+ msgstr "https://de.wordpress.org/plugins/mouseflow-for-wordpress/"
4035
 
4036
  #. translators:
4037
  #: inc/overrides/pro/presets/MtmPreset.php:1
4262
  msgid "Pinterest Tag ID"
4263
  msgstr "Pinterest Tag-ID"
4264
 
4265
+ #. translators:
4266
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4267
  msgid ""
4268
+ "You can view your Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</"
4269
+ "a> under Ads > Conversions > Add code to website > Add code. It is displayed "
4270
+ "in the top right corner of the modal."
4271
  msgstr ""
4272
+ "Sie können Ihre Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</a> "
4273
+ "unter Ads > Conversions > Add code to website > Add Code einsehen. Sie wird "
4274
+ "in der oberen rechten Ecke des Modals angezeigt."
4275
+
4276
+ #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4277
+ msgid "https://ads.pinterest.com/"
4278
+ msgstr "https://ads.pinterest.com/"
4279
 
4280
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
4281
  msgid ""
4447
  "speichern die Sprache des Nutzers und können den Nutzer zu der Version der "
4448
  "Website umleiten, die mit der Sprache des Browsers des Nutzers übereinstimmt."
4449
 
4450
+ #. translators:
4451
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
4452
  msgid ""
4453
  "Please make sure you have not renamed the Polylang cookie name or change it "
4454
  "in the same way in the technical definitions above. Learn more about how to "
4455
+ "change the Polylang cookie name <a href=\"%s\" target=\"_blank\">in their "
 
4456
  "documentation</a>."
4457
  msgstr ""
4458
  "Bitte vergewissern Sie sich, dass Sie den Polylang-Cookie-Namen nicht "
4459
  "umbenannt haben oder ihn auf die gleiche Weise in den obigen technischen "
4460
  "Definitionen ändern. Weitere Informationen zum Ändern des Polylang-Cookie-"
4461
+ "Namens finden Sie in der <a href=\"%s\" target=\"_blank\">Dokumentation</a> "
4462
+ "von Polylang."
4463
+
4464
+ #: inc/overrides/pro/presets/PolyLangPreset.php:1
4465
+ msgid "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4466
+ msgstr "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
4467
 
4468
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
4469
  msgid ""
4771
  "Nachrichten mit seinem Chatverlauf zu verknüpfen und detaillierte "
4772
  "Statistiken über sein Verhalten zu sammeln."
4773
 
4774
+ #. translators:
4775
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4776
  msgid ""
4777
+ "You can create your own custom chat widget at <a href=\"%s\" target=\"_blank"
4778
+ "\">dashboard.tawk.to</a> > Settings > Chat Widget. The chat widget in the "
4779
+ "opt-in code is just the default example."
4780
  msgstr ""
4781
+ "Sie können Ihr eigenes Chat-Widget unter <a href=\"%s\" target=\"_blank\""
4782
+ ">dashboard.tawk.to</a> > Einstellungen > Chat-Widget erstellen. Das Chat-"
4783
+ "Widget im Opt-in-Code ist nur das Standardbeispiel."
4784
+
4785
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4786
+ msgid "https://dashboard.tawk.to"
4787
+ msgstr "https://dashboard.tawk.to"
4788
 
4789
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4790
  msgid "tawk.to ID"
4791
  msgstr "tawk.to ID"
4792
 
4793
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
4794
+ msgid "https://wordpress.org/plugins/tawkto-live-chat/"
4795
+ msgstr "https://de.wordpress.org/plugins/tawkto-live-chat/"
4796
+
4797
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
4798
  msgid ""
4799
  "Thrive Leads allows us, for example, to display opt-in newsletter forms that "
4833
  "Nachrichten mit seinem Chatverlauf zu verknüpfen und detaillierte "
4834
  "Statistiken über sein Verhalten zu sammeln."
4835
 
4836
+ #. translators:
4837
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4838
  msgid ""
4839
+ "You get your Tidio JS ID on <a href=\"%s\" target=\"_blank\">tidio.com</a> "
4840
+ "under Settings > Live Chat > Integration > JavaScript in the given "
4841
+ "JavaScript snipped. You can adjust the appearance of the chat at tidio.com "
4842
+ "under Settings > Live Chat > Appearance."
4843
  msgstr ""
4844
+ "Sie erhalten Ihre Tidio JS ID auf <a href=\"%s\" target=\"_blank\">tidio."
4845
+ "com</a> unter Einstellungen > Live Chat > Integration > JavaScript in dem "
4846
+ "angegebenen JavaScript Ausschnitt. Das Erscheinungsbild des Chats können Sie "
4847
+ "auf tidio.com unter Einstellungen > Live Chat > Erscheinungsbild anpassen."
4848
+
4849
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4850
+ msgid "https://tidio.com"
4851
+ msgstr "https://www.tidio.com/de/"
4852
 
4853
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
4854
  msgid "Tidio JS ID"
4855
  msgstr "Tidio JS ID"
4856
 
4857
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
4858
+ msgid "https://wordpress.org/plugins/tidio-live-chat/"
4859
+ msgstr "https://de.wordpress.org/plugins/tidio-live-chat/"
4860
+
4861
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4862
  msgid ""
4863
  "TikTok Pixel helps to determine whether you are the target audience for "
4889
  msgid "TikTok Pixel ID"
4890
  msgstr "TikTok Pixel-ID"
4891
 
4892
+ #. translators:
4893
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4894
  msgid ""
4895
+ "In the <a href=\"%s\" target=\"_blank\">Event Manager of the TikTok Ad "
4896
+ "Manager</a> you can create a website pixel. Select \"Manually install pixel "
4897
+ "code\" for the type of integration. Whether you want to use the \"Standard "
4898
+ "Mode\" or \"Developer Mode\" depends on your purpose."
 
4899
  msgstr ""
4900
+ "Im <a href=\"%s\" target=\"_blank\">Event Manager des TikTok Ad Managers</a> "
4901
+ "können Sie ein Website-Pixel erstellen. Wählen Sie für die Art der "
4902
+ "Integration „Pixelcode manuell installieren“. Ob Sie denStandardmodus“ "
4903
+ "oder den „Entwicklermodusverwenden möchten, hängt von Ihrem Vorhaben ab."
4904
+
4905
+ #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4906
+ msgid "https://ads.tiktok.com/i18n/events_manager/"
4907
+ msgstr "https://ads.tiktok.com/i18n/events_manager/"
4908
 
4909
+ #. translators:
4910
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
4911
  msgid ""
4912
+ "After creating the TikTok Pixel you return to the <a href=\"%s\" target="
4913
+ "\"_blank\">Event Manager of the TikTok Ad Manager</a> and select \"Manage\" "
4914
+ "in the section \"Website Pixel\". You will then see an overview of all the "
4915
+ "TikTok pixels you have created. Each TikTok pixel has its ID directly under "
4916
+ "its name."
4917
  msgstr ""
4918
+ "Nach der Erstellung des TikTok Pixels kehren Sie zum <a href=\"%s\" target="
4919
+ "\"_blank\">Event Manager des TikTok Ad Managers</a> zurück und wählen im "
4920
+ "Bereich „Website Pixel“ den Punkt „Verwalten“. Sie sehen dann eine Übersicht "
4921
+ "aller TikTok-Pixel, die Sie erstellt haben. Jedes TikTok-Pixel hat seine ID "
4922
+ "direkt unter seinem Namen."
4923
 
4924
  #: inc/overrides/pro/presets/TikTokPreset.php:1
4925
  msgid ""
5038
  msgid "https://www.userlike.com/en/terms#privacy-policy"
5039
  msgstr "https://www.userlike.com/en/terms#privacy-policy"
5040
 
5041
+ #. translators:
5042
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5043
  msgid ""
5044
  "Please insert the JavaScript code of your Userlike widget as opt-in code. "
5045
+ "You can find it in the <a href=\"%s\" target=\"_blank\">Userlike widget "
5046
+ "configurator</a> > Name of the widget > Install > JavaScript Widget code."
 
 
5047
  msgstr ""
5048
  "Bitte fügen Sie den JavaScript-Code Ihres Userlike-Widgets als Opt-in-Code "
5049
+ "ein. Sie finden ihn unter <a href=\"%s\" target=\"_blank\">Userlike Widget-"
5050
+ "Konfigurator </a> > Name des Widgets > Installieren > JavaScript Widget-Code."
5051
+
5052
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5053
+ msgid "https://userlike.com/en/dashboard/um/config/um_widget/overview"
5054
+ msgstr "https://userlike.com/de/dashboard/um/config/um_widget/overview"
5055
 
5056
  #: inc/overrides/pro/presets/UserlikePreset.php:1
5057
  msgid "Example opt-in code"
5058
  msgstr "Beispiel für einen Opt-in-Code"
5059
 
5060
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5061
+ msgid "https://wordpress.org/plugins/userlike/"
5062
+ msgstr "https://de.wordpress.org/plugins/userlike/"
5063
+
5064
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
5065
+ msgid "Userlike WordPress Plugin"
5066
+ msgstr "Userlike WordPress-Plugin"
5067
+
5068
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5069
  msgid ""
5070
  "The VG WORT sets a tracking pixel to measure accesses to texts to determine "
5131
  "keinen Content-Blocker verwenden, können Sie die vollen VG WORT-"
5132
  "Ausschüttungen erhalten, auf die Sie Anspruch haben."
5133
 
5134
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5135
+ msgid ""
5136
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5137
+ msgstr ""
5138
+ "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
5139
+
5140
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
5141
+ msgid "https://www.gesetze-im-internet.de/urhg/__53.html"
5142
+ msgstr "https://www.gesetze-im-internet.de/urhg/__53.html"
5143
+
5144
  #: inc/overrides/pro/presets/VGWortPreset.php:1
5145
  msgid ""
5146
  "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de"
5395
  "Sie finden Ihre Yandex Metrica Tag ID in der <a href=\"%s\" target=\"_blank"
5396
  "\">Yandex Metrica Tags Liste</a>."
5397
 
5398
+ #: inc/overrides/pro/presets/YandexMetricaPreset.php:1
5399
+ msgid "https://metrica.yandex.com/list/"
5400
+ msgstr "https://metrica.yandex.com/list/"
5401
+
5402
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5403
  msgid ""
5404
  "Zendesk Chat is a customer service tool that provides live chat for "
5427
  "Sie finden den Zendesk Widget-Schlüssel im Zendesk-Backend unter "
5428
  "Einstellungen > Widget > Web Widget einbetten als Teil des JavaScript-Codes."
5429
 
5430
+ #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
5431
+ msgid "https://wordpress.org/plugins/zopim-live-chat/"
5432
+ msgstr "https://de.wordpress.org/plugins/zopim-live-chat/"
5433
+
5434
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
5435
  msgid ""
5436
  "Zoho Bookings is a planning software the allows you to book book "
5685
  "Zwecken der Dienste finden Sie in den jeweiligen Datenschutzeinstellungen."
5686
 
5687
  #: inc/overrides/pro/view/TcfBanner.php:1
5688
+ msgctxt "legal-text"
5689
  msgid ""
5690
  "In addition, you consent to the transfer of data to partners under the TCF "
5691
  "standard for the following purposes:"
5694
  "des TCF-Standards für die folgenden Zwecke zu:"
5695
 
5696
  #: inc/overrides/pro/view/TcfBanner.php:1
5697
+ msgctxt "legal-text"
5698
  msgid "Vendor list"
5699
  msgstr "Liste der Anbieter"
5700
 
5701
  #: inc/overrides/pro/view/TcfBanner.php:1
5702
+ msgctxt "legal-text"
5703
  msgid "Vendors"
5704
  msgstr "Anbieter"
5705
 
5713
  msgstr "Ausblenden"
5714
 
5715
  #: inc/overrides/pro/view/TcfBanner.php:1
5716
+ msgctxt "legal-text"
5717
  msgid "Data processing on the legal basis of:"
5718
  msgstr "Datenverarbeitung auf der Rechtsgrundlage von:"
5719
 
5720
  #: inc/overrides/pro/view/TcfBanner.php:1
5721
+ msgctxt "legal-text"
5722
  msgid "No vendor requests purposes under this legal basis."
5723
  msgstr "Kein Verkäufer beantragt Zwecke auf dieser Rechtsgrundlage."
5724
 
5725
  #: inc/overrides/pro/view/TcfBanner.php:1
5726
+ msgctxt "legal-text"
5727
  msgid "Non-standardized data processing"
5728
  msgstr "Nicht standardisierte Datenverarbeitung"
5729
 
5730
  #: inc/overrides/pro/view/TcfBanner.php:1
5731
+ msgctxt "legal-text"
5732
  msgid ""
5733
  "Some services set cookies and/or process personal data without complying "
5734
  "with consent communication standards. These services are divided into "
5746
  "Dienste nur nach Zustimmung genutzt werden."
5747
 
5748
  #: inc/overrides/pro/view/TcfBanner.php:1
5749
+ msgctxt "legal-text"
5750
  msgid "Data processing standardized according to TCF"
5751
  msgstr "Standardisierte Datenverarbeitung nach TCF"
5752
 
5753
  #: inc/overrides/pro/view/TcfBanner.php:1
5754
+ msgctxt "legal-text"
5755
  msgid ""
5756
  "The Transparency and Consent Framework (TCF) is a standard for obtaining "
5757
  "consistent consent for processing of personal data and cookie setting. This "
5767
  "elektronische Kommunikation setzen, verarbeiten und speichern."
5768
 
5769
  #: inc/overrides/pro/view/TcfBanner.php:1
5770
+ msgctxt "legal-text"
5771
  msgid "Purposes"
5772
  msgstr "Zweck"
5773
 
5774
  #: inc/overrides/pro/view/TcfBanner.php:1
5775
+ msgctxt "legal-text"
5776
  msgid ""
5777
  "Purposes describe for which purpose which providers may set cookies and "
5778
  "process personal data. Purposes are pre-selected if there is a legitimate "
5786
  "Zustimmung verarbeitet."
5787
 
5788
  #: inc/overrides/pro/view/TcfBanner.php:1
5789
+ msgctxt "legal-text"
5790
  msgid "Special purposes"
5791
  msgstr "Besondere Zwecke"
5792
 
5793
  #: inc/overrides/pro/view/TcfBanner.php:1
5794
+ msgctxt "legal-text"
5795
  msgid ""
5796
  "Special purposes for setting cookies and processing personal data by our "
5797
  "vendors describe purposes for which we have a legitimate interest that "
5803
  "Beispiel müssen wir Daten verarbeiten, um Betrug zu verhindern."
5804
 
5805
  #: inc/overrides/pro/view/TcfBanner.php:1
5806
+ msgctxt "legal-text"
5807
  msgid "Features"
5808
  msgstr "Eigenschaften"
5809
 
5810
  #: inc/overrides/pro/view/TcfBanner.php:1
5811
+ msgctxt "legal-text"
5812
  msgid ""
5813
  "Features for processing personal data describe how data is used to fulfill "
5814
  "one or more purposes. Features cannot be opted out, but in the \"Purposes\" "
5822
  "Jeder Zweck kann zur Verwendung von Merkmalen führen."
5823
 
5824
  #: inc/overrides/pro/view/TcfBanner.php:1
5825
+ msgctxt "legal-text"
5826
  msgid "Special features"
5827
  msgstr "Besondere Merkmale"
5828
 
5829
  #: inc/overrides/pro/view/TcfBanner.php:1
5830
+ msgctxt "legal-text"
5831
  msgid ""
5832
  "Special features for processing personal data describe how data is used to "
5833
  "fulfill one or more purposes in a profound way. Personal data will only be "
6141
  "kleinen Flackereffekt (Austausch der Schrift nach einigen Millisekunden) "
6142
  "feststellen."
6143
 
6144
+ #. translators:
6145
  #: inc/presets/free/GoogleFontsPreset.php:1
6146
  msgid ""
6147
+ "We therefore recommend <a href=\"%s\" target=\"_blank\">replacing Google "
6148
+ "Fonts with locally hosted fonts</a> when possible, rather than asking for "
6149
+ "consent. We explained how this works in our blog!"
 
6150
  msgstr ""
6151
+ "Wir empfehlen daher, <a href=\"%s\" target=\"_blank\">Google Fonts wenn "
6152
+ "möglich durch lokal gehostete Schriftarten zu ersetzen</a>, anstatt nach "
6153
+ "einer Einwilligung zu fragen. Wie das funktioniert, haben wir in unserem "
6154
+ "Blog erklärt!"
6155
+
6156
+ #: inc/presets/free/GoogleFontsPreset.php:1
6157
+ msgid "https://devowl.io/2022/google-fonts-wordpress-gdpr/"
6158
+ msgstr "https://devowl.io/de/2022/google-fonts-wordpress-dsgvo/"
6159
 
6160
  #: inc/presets/free/GravatarPreset.php:1
6161
  msgid ""
6325
  "Dienst Gravatar, um Avatare von Kommentatoren anzuzeigen. Auch für Gravatar "
6326
  "müssen Sie einen Service definieren."
6327
 
6328
+ #. translators:
6329
  #: inc/presets/free/WordPressCommentsPreset.php:1
6330
  msgid ""
6331
  "Do you want to use the comment feature on your website at all? If not, we "
6332
+ "explain in our blog <a href=\"%s\" target=\"_blank\"> how to disable "
6333
+ "comments in WordPress</a>. Then you can also avoid this consent!"
 
6334
  msgstr ""
6335
  "Möchten Sie die Kommentarfunktion auf Ihrer Website überhaupt nutzen? Wenn "
6336
+ "nicht, erklären wir in unserem Blog, <a href=\"%s\" target=\"_blank\">wie "
6337
+ "Sie Kommentare in WordPress deaktivieren können</a>. Dann können Sie sich "
6338
+ "diese Einwilligung auch sparen!"
6339
+
6340
+ #: inc/presets/free/WordPressCommentsPreset.php:1
6341
+ msgid "https://devowl.io/2022/deactivate-wordpress-comments/"
6342
+ msgstr "https://devowl.io/de/2022/wordpress-kommentare-deaktivieren/"
6343
 
6344
  #: inc/presets/free/WordPressEmojisPreset.php:1
6345
  msgid ""
6369
  "können Emojis ohne das WordPressa Emoji Script (für das Sie diese "
6370
  "Einwilligung einholen müssen) problemlos anzeigen."
6371
 
6372
+ #. translators:
6373
  #: inc/presets/free/WordPressEmojisPreset.php:1
6374
  msgid ""
6375
  "Unless you need to support particularly old browsers and operating systems, "
6376
+ "we recommend that you <a href=\"%s\" target=\"_blank\">disable the WordPress "
6377
+ "emoji script</a> rather than asking for consent. How to do that, we have "
6378
+ "explained in our blog!"
6379
  msgstr ""
6380
  "Sofern Sie nicht besonders alte Browser und Betriebssysteme unterstützen "
6381
+ "müssen, empfehlen wir Ihnen, das <a href=\"%s\" target=\"_blank\">WordPress-"
6382
+ "Emoji-Script zu deaktivieren</a>, anstatt nach einer Einwilligung zu fragen. "
6383
+ "Wie Sie das machen, haben wir in unserem Blog erklärt!"
6384
+
6385
+ #: inc/presets/free/WordPressEmojisPreset.php:1
6386
+ msgid "https://devowl.io/2022/disable-emojis-wordpress/"
6387
+ msgstr "https://devowl.io/de/2022/wordpress-emojis-deaktivieren/"
6388
 
6389
  #: inc/presets/free/WordPressPluginEmbed.php:1
6390
  msgid ""
6646
 
6647
  #: inc/presets/UpdateNotice.php:1
6648
  msgid ""
6649
+ "Changes have been made to the templates you use in Real Cookie Banner. You "
6650
+ "should review the proposed changes and adjust your services if necessary to "
6651
+ "be able to remain legally compliant. The following services are affected:"
6652
  msgstr ""
6653
+ "An den Vorlagen, die Sie in Real Cookie Banner verwenden, wurden Änderungen "
6654
+ "vorgenommen. Sie sollten die vorgeschlagenen Änderungen überprüfen und Ihre "
6655
+ "Services gegebenenfalls anpassen, um rechtskonform zu bleiben. Die folgenden "
6656
+ "Services sind betroffen:"
6657
 
6658
  #: inc/presets/UpdateNotice.php:1
6659
  msgid "Service (Cookie)"
6660
  msgstr "Service (Cookie)"
6661
 
6662
  #: inc/presets/UpdateNotice.php:1
6663
+ msgid "Review changes"
6664
+ msgstr "Änderungen überprüfen"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6665
 
6666
  #: inc/presets/UpdateNotice.php:1
6667
  msgid "Dismiss this notice"
6722
  msgstr "Service-Gruppen"
6723
 
6724
  #: inc/settings/CookieGroup.php:1
6725
+ msgctxt "legal-text"
6726
  msgid ""
6727
  "Essential services are required for the basic functionality of the website. "
6728
  "They only contain technically necessary services. These services cannot be "
6733
  "Services kann nicht widersprochen werden."
6734
 
6735
  #: inc/settings/CookieGroup.php:1
6736
+ msgctxt "legal-text"
6737
  msgid ""
6738
  "Functional services are necessary to provide features beyond the essential "
6739
+ "functionality such as prettier fonts, video playback or interactive web 2.0 "
6740
  "features. Content from e.g. video platforms and social media platforms are "
6741
  "blocked by default, and can be consented to. If the service is agreed to, "
6742
  "this content is loaded automatically without further manual consent."
6749
  "Inhalte automatisch ohne weitere manuelle Einwilligung geladen."
6750
 
6751
  #: inc/settings/CookieGroup.php:1
6752
+ msgctxt "legal-text"
6753
  msgid ""
6754
  "Statistics services are needed to collect pseudonymous data about the "
6755
  "visitors of the website. The data enables us to understand visitors better "
6760
  "besser zu verstehen und die Webseite zu optimieren."
6761
 
6762
  #: inc/settings/CookieGroup.php:1
6763
+ msgctxt "legal-text"
6764
  msgid ""
6765
  "Marketing services are used by us and third parties to track the behaviour "
6766
  "of individual visitors (across multiple pages), analyse the data collected "
6768
  "us to track visitors across multiple websites."
6769
  msgstr ""
6770
  "Marketing Services werden von uns und Dritten genutzt, um das Verhalten "
6771
+ "einzelner Nutzer aufzuzeichnen, die gesammelten Daten zu analysieren und "
6772
+ "z.B. personalisierte Werbung anzuzeigen. Diese Services ermöglichen es uns, "
6773
  "Nutzer über mehrere Websites hinweg zu verfolgen."
6774
 
6775
  #: inc/settings/Revision.php:1
6914
 
6915
  #: inc/view/checklist/SaveSettings.php:1
6916
  msgid ""
6917
+ "Decide which features should be enabled in your cookie banner depending on "
6918
+ "your needs."
6919
  msgstr ""
6920
+ "Entscheiden Sie nach Bedarf, welche Features in Ihrem Cookie Banner aktiv "
6921
+ "sein sollen."
 
6922
 
6923
  #: inc/view/checklist/SaveSettings.php:1
6924
  msgid "Manage settings"
6931
  #: inc/view/checklist/Scanner.php:1
6932
  msgid ""
6933
  "Scan your website to identify services used and external URLs that may "
6934
+ "transmit personal data and/or set cookies."
6935
  msgstr ""
6936
  "Scannen Sie Ihre Website, um Services und externe URLs zu identifizieren, "
6937
+ "die personenbezogene Daten übertragen und/oder Cookies setzen können."
6938
 
6939
  #: inc/view/checklist/Scanner.php:1
6940
  msgid "Open scanner"
6948
  msgid ""
6949
  "Your website visitors must be able to view their consent history, change "
6950
  "their consent, or withdraw their consent at any time. This must be as easy "
6951
+ "as giving consent. Therefore, the legal links must be included on every "
6952
  "subpage of the website (e.g. in the footer)."
6953
  msgstr ""
6954
  "Ihre Website-Besucher müssen in der Lage sein, den Verlauf ihrer "
6955
  "Einwilligung einzusehen, ihre Einwilligung zu ändern oder sie jederzeit zu "
6956
  "widerrufen. Das muss so einfach sein wie die Erteilung der Einwilligung. "
6957
+ "Daher müssen die rechtlichen Links auf jeder Unterseite der Website "
6958
+ "enthalten sein (z. B. im Footer/Fußzeile)."
6959
 
6960
  #: inc/view/checklist/Shortcode.php:1
6961
  msgid "Create legal links"
6962
+ msgstr "Rechtliche Links erstellen"
6963
 
6964
  #: inc/view/checklist/ViewStats.php:1
6965
  msgid "Check out statistics about consents"
7035
  msgid "Enabled"
7036
  msgstr "Aktiviert"
7037
 
7038
+ #: inc/view/customize/banner/BasicLayout.php:1
7039
+ msgid ""
7040
+ "The animation you choose will have a negative impact on your PageSpeed "
7041
+ "Insights score. Please choose an animation where the cookie banner is "
7042
+ "animated from outside the website to achieve the best website loading speed!"
7043
+ msgstr ""
7044
+ "Die von Ihnen gewählte Animation hat einen negativen Einfluss auf Ihren "
7045
+ "PageSpeed Insights Score. Bitte wählen Sie eine Animation, bei der das "
7046
+ "Cookie Banner von außerhalb der Website animiert wird, um die beste "
7047
+ "Ladegeschwindigkeit der Website zu erreichen!"
7048
+
7049
  #: inc/view/customize/banner/BasicLayout.php:1
7050
  msgid "Basic Layout"
7051
  msgstr "Grundlegendes Layout"
7140
  msgid "Animation on display"
7141
  msgstr "Animation beim Einblenden"
7142
 
7143
+ #: inc/view/customize/banner/BasicLayout.php:1
7144
+ #: inc/view/customize/banner/BodyDesign.php:1
7145
+ #: inc/view/customize/banner/individual/SaveButton.php:1
7146
+ msgid "Type"
7147
+ msgstr "Typ"
7148
+
7149
+ #: inc/view/customize/banner/BasicLayout.php:1
7150
+ msgid "Duration"
7151
+ msgstr "Dauer"
7152
+
7153
  #: inc/view/customize/banner/BasicLayout.php:1
7154
  msgid "Animation only on mobile devices"
7155
  msgstr "Animation nur auf mobilen Geräten"
7356
  msgid "Use the same stylings as for \"Accept all\""
7357
  msgstr "Gleiche Formatierung wie für \"Alle akzeptieren\" verwenden"
7358
 
7359
+ #. translators:
7360
  #: inc/view/customize/banner/BodyDesign.php:1
7361
  #: inc/view/customize/banner/individual/SaveButton.php:1
7362
  msgid ""
7363
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7364
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7365
  "way for your visitors to express their choice (agree to everything, continue "
7366
  "without consent or an indivudual decision). Equivalent does not necessarily "
7367
  "mean that the buttons/links must look exactly the same. However, you should "
7368
  "be safest if they look exactly the same."
7369
  msgstr ""
7370
+ "Gemäß <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7371
+ "Datenschutzbehörden</a> muss es für Ihre Besucher eine gleichwertige "
7372
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7373
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). "
 
7374
  "Gleichwertig bedeutet nicht unbedingt, dass die Buttons/Links genau gleich "
7375
  "aussehen müssen. Sie sind jedoch am sichersten, wenn sie genau gleich "
7376
  "aussehen."
7476
  msgstr "Einwilligungs-Optionen"
7477
 
7478
  #: inc/view/customize/banner/Decision.php:1
 
7479
  msgid "Accept all"
7480
  msgstr "Alle akzeptieren"
7481
 
7482
  #. translators:
7483
  #: inc/view/customize/banner/Decision.php:1
7484
  msgid ""
7485
+ "According to the %1$sGDPR recital 32%2$s, you are not allowed to pre-select "
7486
+ "services in the form of pre-selected checkboxes for the visitor. However, "
7487
+ "the GDPR and ePrivacy Directive do not prohibit the use of a button to agree "
7488
+ "to all services, if there is also a button to agree only to the essential "
7489
+ "services or to make a user-defined selection."
7490
  msgstr ""
7491
+ "Gemäß der %1$sDSGVO Erwägungsgrund 32%2$s dürfen Sie keine Services in Form "
7492
+ "von vorselektierten Checkboxen für den Besucher vorauswählen. Die DSGVO und "
7493
+ "die ePrivacy-Richtlinie verbieten jedoch nicht die Verwendung eines Buttons "
7494
+ "zur Einwilligung in alle Services, sofern es auch einen Button gibt, um nur "
7495
+ "den essenziellen Services zuzustimmen oder um eine benutzerdefinierte "
7496
+ "Auswahl zu treffen."
7497
+
7498
+ #: inc/view/customize/banner/Decision.php:1
7499
+ msgid "https://gdpr-info.eu/recitals/no-32/"
7500
+ msgstr "https://dsgvo-gesetz.de/erwaegungsgruende/nr-32/"
7501
 
7502
  #: inc/view/customize/banner/Decision.php:1
7503
  #: inc/view/customize/banner/individual/SaveButton.php:1
7511
  msgstr "Link"
7512
 
7513
  #: inc/view/customize/banner/Decision.php:1
 
7514
  msgid "Continue without consent"
7515
  msgstr "Weiter ohne Einwilligung"
7516
 
7543
  "Einwilligung\"."
7544
 
7545
  #: inc/view/customize/banner/Decision.php:1
 
7546
  msgid "Individual privacy preferences"
7547
  msgstr "Individuelle Privatsphäre-Präferenzen"
7548
 
7549
  #: inc/view/customize/banner/Decision.php:1
7550
  msgid ""
7551
+ "According to the GDPR and the ePrivacy Directive, the user must be free to "
7552
+ "choose which services to use and be informed about their purpose before "
7553
+ "giving consent. Therefore, the user must be given the opportunity to access "
7554
+ "the page with the individual privacy settings."
7555
  msgstr ""
7556
+ "Gemäß der DSGVO und der ePrivacy-Richtlinie muss der Nutzer frei wählen "
7557
+ "können, welche Services er nutzt, und er muss über deren Zweck informiert "
7558
+ "werden, bevor er seine Einwilligung gibt. Daher muss der Nutzer die "
7559
+ "Möglichkeit haben, die Seite mit den individuellen Privatsphären-"
7560
+ "Einstellungen aufzurufen."
7561
 
7562
  #: inc/view/customize/banner/Decision.php:1
7563
  msgid "Order of the buttons"
7564
  msgstr "Reihenfolge der Buttons"
7565
 
7566
+ #. translators:
7567
  #: inc/view/customize/banner/Decision.php:1
7568
  msgid ""
7569
+ "According to the <a href=\"%s\" target=\"_blank\">guidance of the data "
 
7570
  "protection authorities in Germany (German)</a>, there must be an equivalent "
7571
  "way for your visitors to express their choice (agree to everything, continue "
7572
  "without consent or an indivudual decision). Which order of options is "
7573
  "considered equivalent is unclear. Therefore, the options should be arranged "
7574
  "according to the cultural conditions of the main target country."
7575
  msgstr ""
7576
+ "Gemäß <a href=\"%s\" target=\"_blank\">Orientierungshilfe der deutschen "
7577
+ "Datenschutzbehörden</a> muss es für Ihre Besucher eine gleichwertige "
7578
+ "Möglichkeit geben, ihren Willen auszudrücken (allem zustimmen, ohne "
7579
+ "Zustimmung fortfahren oder eine individuelle Entscheidung treffen). Welche "
7580
+ "Reihenfolge der Optionen als gleichwertig angesehen wird, ist unklar. Daher "
7581
+ "sollten die Optionen nach den kulturellen Gegebenheiten des Hauptziellandes "
7582
+ "angeordnet werden."
 
7583
 
7584
  #: inc/view/customize/banner/Decision.php:1
7585
  msgid "Service groups as bullet list"
7610
  msgstr ""
7611
  "Text von „Alle akzeptieren“ ändert, wenn der Benutzer die Auswahl ändert"
7612
 
7613
+ #: inc/view/customize/banner/Decision.php:1
7614
+ #: inc/view/customize/banner/Texts.php:1
7615
+ msgctxt "legal-text"
7616
+ msgid "Accept all"
7617
+ msgstr "Alle akzeptieren"
7618
+
7619
+ #: inc/view/customize/banner/Decision.php:1
7620
+ #: inc/view/customize/banner/Texts.php:1
7621
+ msgctxt "legal-text"
7622
+ msgid "Continue without consent"
7623
+ msgstr "Weiter ohne Einwilligung"
7624
+
7625
+ #: inc/view/customize/banner/Decision.php:1
7626
+ #: inc/view/customize/banner/individual/Texts.php:1
7627
+ msgctxt "legal-text"
7628
+ msgid "Individual privacy preferences"
7629
+ msgstr "Individuelle Privatsphäre-Präferenzen"
7630
+
7631
  #: inc/view/customize/banner/Decision.php:1
7632
  #: inc/view/customize/banner/individual/Texts.php:1
7633
+ msgctxt "legal-text"
7634
  msgid "Save custom choices"
7635
  msgstr "Individuelle Auswahl speichern"
7636
 
7874
 
7875
  #: inc/view/customize/banner/individual/Texts.php:1
7876
  #: inc/view/customize/banner/Texts.php:1
7877
+ msgctxt "legal-text"
7878
  msgid ""
7879
  "We use cookies and similar technologies on our website and process your "
7880
  "personal data (e.g. IP address), for example, to personalize content and "
7892
 
7893
  #: inc/view/customize/banner/individual/Texts.php:1
7894
  #: inc/view/customize/banner/Texts.php:1
7895
+ msgctxt "legal-text"
7896
  msgid ""
7897
  "The data processing may take place with your consent or on the basis of a "
7898
  "legitimate interest, which you can object to in the privacy settings. You "
7908
  "in unserer {{privacyPolicy}}Datenschutzerklärung{{/privacyPolicy}}."
7909
 
7910
  #: inc/view/customize/banner/individual/Texts.php:1
7911
+ msgctxt "legal-text"
7912
  msgid ""
7913
  "Below you will find an overview of all services used by this website. You "
7914
  "can view detailed information about each service and agree to them "
7920
  "machen."
7921
 
7922
  #: inc/view/customize/banner/individual/Texts.php:1
7923
+ msgctxt "legal-text"
7924
  msgid "Show service information"
7925
  msgstr "Service-Informationen anzeigen"
7926
 
7927
  #: inc/view/customize/banner/individual/Texts.php:1
7928
+ msgctxt "legal-text"
7929
  msgid "Hide service information"
7930
  msgstr "Service-Informationen ausblenden"
7931
 
8088
  msgstr "„Powered by“ Link-Text"
8089
 
8090
  #: inc/view/customize/banner/Texts.php:1
8091
+ msgid "US data processing"
8092
+ msgstr "US-Datenverarbeitung"
 
 
 
 
8093
 
8094
  #: inc/view/customize/banner/Texts.php:1
8095
  msgid "Data processing in the USA"
8162
  msgid "Additional info below the \"Load content\" button"
8163
  msgstr "Zusatzinfo unterhalb des „Inhalt laden“-Buttons"
8164
 
8165
+ #. translators:
8166
  #: inc/view/customize/banner/Texts.php:1
8167
  msgid ""
8168
  "The standard texts in the cookie banner are worded carefully. If you "
8169
  "customize them, make sure they are not misleading or riveting. According to "
8170
+ "the <a href=\"%s\" target=\"_blank\">Data Protection Commissioner of Baden-"
8171
+ "Württeberg, Germany (Section B, 1.3.7.; German)</a>, for example, a headline "
8172
+ "\"We love cookies\" is already misleading."
 
8173
  msgstr ""
8174
  "Die Standardtexte im Cookie Banner sind mit Bedacht formuliert. Wenn Sie "
8175
  "diese anpassen, achten Sie bitte darauf, dass diese nicht irreführend oder "
8176
+ "vernietlichend sind. Nach dem <a href=\"%s\" target=\"_blank\""
8177
+ ">Datenschutzbeauftragen von Baden-Württeberg, Deutschland (Abschnitt B, 1.3."
8178
+ "7.)</a> ist z.B. die Überschrift \"Wir lieben Cookies\" bereits irreführend."
8179
+
8180
+ #: inc/view/customize/banner/Texts.php:1
8181
+ msgid ""
8182
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8183
+ "#13_informiertheit)"
8184
+ msgstr ""
8185
+ "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/"
8186
+ "#13_informiertheit)"
8187
 
8188
  #. translators:
8189
  #: inc/view/customize/banner/Texts.php:1
8224
  "Einwilligung%2$s, um sie zu aktivieren."
8225
 
8226
  #: inc/view/customize/banner/Texts.php:1
8227
+ msgctxt "legal-text"
8228
  msgid "Privacy preferences"
8229
  msgstr "Privatsphäre-Einstellungen"
8230
 
8231
  #: inc/view/customize/banner/Texts.php:1
8232
+ msgctxt "legal-text"
8233
  msgid "Set privacy settings individually"
8234
  msgstr "Privatsphäre-Einstellungen individuell festlegen"
8235
 
8236
  #: inc/view/customize/banner/Texts.php:1
8237
+ msgctxt "legal-text"
8238
  msgid ""
8239
  "Some services process personal data in the USA. By consenting to the use of "
8240
  "these services, you also consent to the processing of your data in the USA "
8253
  "verarbeitet werden, unter Umständen ohne die Möglichkeit eines Rechtsbehelfs."
8254
 
8255
  #: inc/view/customize/banner/Texts.php:1
8256
+ msgctxt "legal-text"
8257
  msgid ""
8258
  "You are under 16 years old? Then you cannot consent to optional services. "
8259
  "Ask your parents or legal guardians to agree to these services with you."
8263
  "in diese Services einzuwilligen."
8264
 
8265
  #: inc/view/customize/banner/Texts.php:1
8266
+ msgctxt "legal-text"
8267
  msgid ""
8268
  "You are under 16 years old? Unfortunately, you are not permitted to consent "
8269
  "to this service to view this content. Please ask your parents or guardians "
8274
  "Erziehungsberechtigten, dem Service mit Ihnen zuzustimmen!"
8275
 
8276
  #: inc/view/customize/banner/Texts.php:1
8277
+ msgctxt "legal-text"
8278
  msgid ""
8279
  "By accepting all services, you allow {{services}} to be loaded. These "
8280
  "services are divided into groups {{serviceGroups}} according to their "
8281
  "purpose (belonging marked with superscript numbers)."
8282
  msgstr ""
8283
  "Indem Sie alle Services akzeptieren, erlauben Sie, dass {{services}} geladen "
8284
+ "werden. Diese sind nach ihrem Zweck in Gruppen {{serviceGroups}} unterteilt ("
8285
+ "Zugehörigkeit durch hochgestellte Zahlen gekennzeichnet)."
8286
 
8287
  #: inc/view/customize/banner/Texts.php:1
8288
+ msgctxt "legal-text"
8289
  msgid "Your consent is also applicable on {{websites}}."
8290
  msgstr "Ihre Einwilligung gilt auch auf {{websites}}."
8291
 
8292
  #. translators:
8293
  #: inc/view/customize/banner/Texts.php:1
8294
+ msgctxt "legal-text"
8295
  msgid "{{name}} blocked due to privacy settings"
8296
  msgstr "{{name}} aufgrund von Privatsphäre-Einstellungen blockiert"
8297
 
8298
  #. translators:
8299
  #: inc/view/customize/banner/Texts.php:1
8300
+ msgctxt "legal-text"
8301
  msgid "Show all services you still need to agree to"
8302
  msgstr "Alle Services anzeigen, denen Sie noch zustimmen müssen"
8303
 
8304
  #: inc/view/customize/banner/Texts.php:1
8305
+ msgctxt "legal-text"
8306
  msgid "Accept required services and load content"
8307
  msgstr "Erforderliche Services akzeptieren und Inhalte laden"
8308
 
8309
  #: inc/view/customize/banner/Texts.php:1
8310
+ msgctxt "legal-text"
8311
  msgid ""
8312
  "Loading the blocked content will adjust your privacy settings. Content from "
8313
  "this service will not be blocked in the future. You have the right to revoke "
8347
  msgstr "Das Navigationsmenü konnte nicht gefunden werden."
8348
 
8349
  #: inc/view/navmenu/NavMenuLinks.php:1
8350
+ msgctxt "legal-text"
8351
  msgid "Change privacy settings"
8352
  msgstr "Privatsphäre-Einstellungen ändern"
8353
 
8354
  #: inc/view/navmenu/NavMenuLinks.php:1
8355
+ msgctxt "legal-text"
8356
  msgid "Privacy settings history"
8357
  msgstr "Historie der Privatsphäre-Einstellungen"
8358
 
8359
  #: inc/view/navmenu/NavMenuLinks.php:1
8360
+ msgctxt "legal-text"
8361
  msgid "Revoke consents"
8362
  msgstr "Einwilligungen widerrufen"
8363
 
8364
  #: inc/view/navmenu/NavMenuLinks.php:1
8365
+ msgctxt "legal-text"
8366
  msgid ""
8367
  "You have successfully revoked the consent. The page will be reloaded now."
8368
  msgstr ""
8413
  msgstr ""
8414
  "Bitte geben Sie in Ihrem Shortcode das Attribut `type` an. Erlaubt: %s!"
8415
 
8416
+ #~ msgid ""
8417
+ #~ "It seems that since the last update of <strong>Real Cookies Banner</"
8418
+ #~ "strong> some templates have been updated. Please check your following "
8419
+ #~ "services to make sure they are up to date:"
8420
+ #~ msgstr ""
8421
+ #~ "Offenbar wurden seit dem letzten Update von <strong>Real Cookies Banner</"
8422
+ #~ "strong> einige Vorlagen aktualisiert. Bitte überprüfen Sie Ihre folgenden "
8423
+ #~ "Services, um sicherzustellen, dass sie auf dem neuesten Stand sind:"
8424
+
8425
+ #~ msgid "Edit"
8426
+ #~ msgstr "Bearbeiten"
8427
+
8428
+ #~ msgid "Create new from template"
8429
+ #~ msgstr "Aus Vorlage erstellen"
8430
+
8431
+ #~ msgid ""
8432
+ #~ "The easiest way to apply the changes is to delete the service and all "
8433
+ #~ "connected content blockers in Real Cookie Banner and create it again from "
8434
+ #~ "the service templates."
8435
+ #~ msgstr ""
8436
+ #~ "Am einfachsten können Sie die Änderungen übernehmen, indem Sie den "
8437
+ #~ "Service und alle damit verbundenen Content Blocker in Real Cookie Banner "
8438
+ #~ "löschen und ihn aus den Service-Vorlagen neu erstellen."
8439
+
8440
+ #~ msgid ""
8441
+ #~ "Define the behavior of the cookie banner and hide the cookie banner both "
8442
+ #~ "in the imprint and privacy policy (required by law)."
8443
+ #~ msgstr ""
8444
+ #~ "Steuern Sie das Verhalten des Cookie Banners und verstecken Sie den "
8445
+ #~ "Cookie Banner sowohl im Impressum als auch in der Datenschutzerklärung "
8446
+ #~ "(gesetzlich vorgeschrieben)."
8447
+
8448
+ #~ msgid ""
8449
+ #~ "Use <code>{{services}}</code> as a placeholder to show all services that "
8450
+ #~ "process data in the USA."
8451
+ #~ msgstr ""
8452
+ #~ "Verwenden Sie <code>{{services}}</code> als Platzhalter, um alle Services "
8453
+ #~ "anzuzeigen, die Daten in den USA verarbeiten."
8454
+
8455
  #~ msgid ""
8456
  #~ "An opt-in script is not required, as this service is probably already "
8457
  #~ "integrated via e.g. your theme. In addition to this service, please "
languages/real-cookie-banner.pot CHANGED
@@ -117,48 +117,57 @@ msgid "Real Cookie Banner is a cookie plugin specially designed for WordPress. I
117
  msgstr ""
118
 
119
  #: inc/Assets.php:1
 
120
  msgid "Use on legal basis of"
121
  msgstr ""
122
 
123
  #: inc/Assets.php:1
 
124
  msgid "Legitimate interest"
125
  msgstr ""
126
 
127
  #: inc/Assets.php:1
 
128
  msgid "Compliance with a legal obligation"
129
  msgstr ""
130
 
131
  #: inc/Assets.php:1
 
132
  msgid "Consent"
133
  msgstr ""
134
 
135
  #: inc/Assets.php:1
 
136
  msgid "We have recognized that you are a crawler/bot. Only natural persons must consent to cookies and processing of personal data. Therefore, the link has no function for you."
137
  msgstr ""
138
 
139
  #: inc/Assets.php:1
 
140
  msgid "Technical cookie definition"
141
  msgstr ""
142
 
143
  #: inc/Assets.php:1
 
144
  msgid "Uses cookies"
145
  msgstr ""
146
 
147
  #: inc/Assets.php:1
 
148
  msgid "Cookie refresh"
149
  msgstr ""
150
 
151
  #: inc/Assets.php:1
 
152
  msgid "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
153
  msgstr ""
154
 
155
  #: inc/Assets.php:1
 
156
  msgid "Host"
157
  msgstr ""
158
 
159
  #: inc/Assets.php:1
160
- #: inc/view/customize/banner/BasicLayout.php:1
161
- #: inc/view/customize/banner/BasicLayout.php:1
162
  msgid "Duration"
163
  msgstr ""
164
 
@@ -187,32 +196,32 @@ msgid "year(s)"
187
  msgstr ""
188
 
189
  #: inc/Assets.php:1
 
190
  msgid "No expiration"
191
  msgstr ""
192
 
193
  #: inc/Assets.php:1
194
- #: inc/view/customize/banner/BasicLayout.php:1
195
- #: inc/view/customize/banner/BasicLayout.php:1
196
- #: inc/view/customize/banner/BodyDesign.php:1
197
- #: inc/view/customize/banner/BodyDesign.php:1
198
- #: inc/view/customize/banner/BodyDesign.php:1
199
- #: inc/view/customize/banner/individual/SaveButton.php:1
200
  msgid "Type"
201
  msgstr ""
202
 
203
  #: inc/Assets.php:1
 
204
  msgid "Purpose"
205
  msgstr ""
206
 
207
  #: inc/Assets.php:1
 
208
  msgid "History of your privacy settings"
209
  msgstr ""
210
 
211
  #: inc/Assets.php:1
 
212
  msgid "Show consent from"
213
  msgstr ""
214
 
215
  #: inc/Assets.php:1
 
216
  msgid "Not yet consented to"
217
  msgstr ""
218
 
@@ -225,21 +234,24 @@ msgid "Close without saving"
225
  msgstr ""
226
 
227
  #: inc/Assets.php:1
 
228
  msgid "Provider"
229
  msgstr ""
230
 
231
  #: inc/Assets.php:1
 
232
  msgid "Privacy Policy"
233
  msgstr ""
234
 
235
  #. translators:
236
  #: inc/Assets.php:1
 
237
  msgid "and %d more"
238
  msgstr ""
239
 
240
  #. translators:
241
  #: inc/Assets.php:1
242
- #: inc/view/customize/banner/Texts.php:1
243
  msgid "US data processing"
244
  msgstr ""
245
 
@@ -562,7 +574,40 @@ msgstr ""
562
 
563
  #. translators:
564
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
565
- msgid "In recent months, more clarity has been created about what consent management on websites should look like - and what it shouldn't. In particular, through the <a href=\"https://www.gesetze-im-internet.de/ttdsg/\" target=\"_blank\">TTDSG</a> (Telecommunications Telemedia Data Protection Act; Germany) and <a href=\"https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Guidance of the Conference of Independent Data Protection Authorities for cookie banners</a> (coordinated legal interpretation of all German data protection authorities; in German), there are now clearer rules that further interpret or complement the EU-wide applicable <a href=\"https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex%3A32009L0136\" target=\"_blank\">ePrivacy Directive</a> and <a href=\"https://gdpr-info.eu/\" target=\"_blank\">GDPR</a>. Furthermore, there were important decisions such as the evaluation of <a href=\"https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-english.pdf\" target=\"_blank\">TCF by ADP (Belgium)</a>, the <a href=\"https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%20Google%20Analytics_DE_bk_0.pdf\" target=\"_blank\">Google Analytics decision by dsb (Austria)</a> and the <a href=\"https://www.cnil.fr/sites/default/files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics.pdf\" target=\"_blank\">position on Google Analytics by CNIL</a>."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
566
  msgstr ""
567
 
568
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
@@ -591,7 +636,7 @@ msgstr ""
591
 
592
  #. translators:
593
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
594
- msgid "In accordance with the requirements of the &quot;<a href=\"https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">Guidance of the Conference of Independent Data Protection Authorities for cookie banners</a>&quot;, the possibility to view, modify and revoke consent must be directly accessible on every sub-page of your website."
595
  msgstr ""
596
 
597
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
@@ -668,8 +713,13 @@ msgstr ""
668
  msgid "Updates in v3.0: You should act to be safe!"
669
  msgstr ""
670
 
 
 
 
 
 
671
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
672
- msgid "With Real Cookie Banner 3.0 we have released a major update, in which we have implemented, among other things, current legal adjustments. Read more about the changes in our <a href=\"https://devowl.io/2022/real-cookie-banner-3-0/\" target=\"_blank\">blog post</a>."
673
  msgstr ""
674
 
675
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
@@ -688,14 +738,26 @@ msgstr ""
688
  msgid "If you have previously obtained consents under the Transparency & Consent Framework, be sure to read the following additional information and consult a legal advisor to clarify the further procedure for your individual case."
689
  msgstr ""
690
 
 
 
 
 
691
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
692
  msgid "Decision of the Belgian Data Protection Authority (APD)"
693
  msgstr ""
694
 
 
 
 
 
695
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
696
  msgid "Statement of the IAB Europe (English)"
697
  msgstr ""
698
 
 
 
 
 
699
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
700
  msgid "Legal assessment by RA Dr. Schwenke (German)"
701
  msgstr ""
@@ -955,6 +1017,10 @@ msgstr ""
955
  msgid "You only need a content blocker if you embed %1$s <strong>outside of Real Cookie Banner</strong>, e.g. via the <a href=\"%2$s\" target=\"_blank\">%3$s</a>. In this case, you also must remove the \"Code executed on opt-in\"."
956
  msgstr ""
957
 
 
 
 
 
958
  #: inc/overrides/pro/presets/AddThisPreset.php:1
959
  msgid "AddThis allows providing links and buttons for sharing content on a variety of social networks and other communication tools on the internet. Cookie are used to enable the core functionality of AddThis, to enable AddThis Publishers and Oracle Marketing & Data Cloud customers and partners to market products and services to you, to provide personalized recommendations and messages, to link browsers and apps across devices, to sync unique identifiers; and, to analyze, develop, and improve the AddThis Tools and Oracle products and services and to manage the security of our sites, networks, and systems."
960
  msgstr ""
@@ -972,24 +1038,39 @@ msgstr ""
972
  msgid "AddToAny allows providing links and buttons for sharing content on a variety of social networks and other communication tools on the internet. The cookies are used to uniquely identify the user and classify him or her as a potential attacker and to determine the fastest available server."
973
  msgstr ""
974
 
 
 
 
 
 
975
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
976
- msgid "This template assumes that you use the <a href=\"https://wordpress.org/plugins/add-to-any/\" target=\"_blank\">AddToAny WordPress plugin</a>. The template is not suitable to add Facebook Like, Twitter Tweet or Pinterest Pin button in AddToAny. If you want to use any of these buttons, please use it without AddToAny and additionally create the cookies and content blockers for the respective service."
977
  msgstr ""
978
 
979
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
980
  msgid "Ad Inserter allows us to manage and target advertising based on the content of the website. Cookies are used to detect adblockers, to count the number of page views with an adblocker and to remember whether the user has already been redirected to a subpage that prompts him to switch off his adblocker. In addition, a cookie can be used to remember how often which advertising placement has already been displayed and how often the respective advertisement has been clicked on."
981
  msgstr ""
982
 
 
983
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
984
- msgid "Ad Insert plays out ads even without consent. You should <a href=\"https://adinserter.pro/faq/gdpr-compliance-cookies-consent\" target=\"_blank\">obtain consent for the ads via the TCF v2.0 or newer standard</a>. Only some features of the plugin require you to obtain consent for Ad Inserter."
 
 
 
 
985
  msgstr ""
986
 
987
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
988
  msgid "Only if the ad blocker detection is enabled, the cookies <code>aiADB</code>, <code>aiADB_PV</code> and <code>aiADB_PR</code> are set. The cookie duration depends on the settings of the feature. Please make sure that you have disabled the \"Use external scripts\" checkbox, as this part of the adblocker transmits data to Google and Media.net before you have consent to do so."
989
  msgstr ""
990
 
 
 
 
 
 
991
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
992
- msgid "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"https://adinserter.pro/documentation/ad-impression-and-click-limiting\" target=\"_blank\">impression and click limits</a> feature of Ad Inserter Pro. The duration of the cookie depends on the settings of the feature."
993
  msgstr ""
994
 
995
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
@@ -1074,8 +1155,13 @@ msgstr ""
1074
  msgid "Awin Publisher ID"
1075
  msgstr ""
1076
 
 
 
 
 
 
1077
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1078
- msgid "You find your publisher ID in the <a href=\"https://ui.awin.com/user\" target=\"_blank\">account overview</a> directly blow your account name."
1079
  msgstr ""
1080
 
1081
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
@@ -1112,6 +1198,10 @@ msgstr ""
1112
  msgid "On <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> under Tools > Conversion tracking > UET tag you can find the tag ID of your UET tag in the tag table."
1113
  msgstr ""
1114
 
 
 
 
 
1115
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1116
  msgid "Bing Maps displays maps on the website as iframe or via JavaScript directly embedded as part of the website. Cookies are used to temporarily store the current state of the map. In addition, an advertising ID is assigned with which the client can be identified. It will collect visited websites and detailed statistics about the user behavior."
1117
  msgstr ""
@@ -1334,16 +1424,27 @@ msgstr ""
1334
  msgid "etracker Account Key"
1335
  msgstr ""
1336
 
 
 
 
 
 
1337
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
1338
- msgid "You can find your etracker account key under <a href=\"https://newapp.etracker.com/#/report/accountSettings/accountKey\" target=\"_blank\">Account info > Settings> Account</a> of your etracker account."
1339
  msgstr ""
1340
 
1341
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
1342
  msgid "This service template is designed for tracking without consent on the legal basis of legitimate interest. No cookies are set by etracker for tracking and collected data (as of February 2022) is only processed within the EU. The visitor of your website can object to tracking by disabling this service in your cookie banner."
1343
  msgstr ""
1344
 
 
 
 
 
 
1345
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
1346
- msgid "We also recommend that you deactivate the non-aggregated reporting via the <a href=\"https://newapp.etracker.com/\" target=\"_blank\">dashboard</a> under <i>menu (top left) > Account-ID > Settings > Privacy > Consent-free tracking cookies in accordance with CNIL guidelines</i> to ensure that there is definitely no personal reference for the collected data."
 
1347
  msgstr ""
1348
 
1349
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
@@ -1358,8 +1459,9 @@ msgstr ""
1358
  msgid "This service template is designed for tracking with consent. In order for the tracking to work, you must also create the service \"etracker: Tracking without consent\" resp. \"etracker: basic tracking\", as this service only enriches the tracking with additional data in the case of consent."
1359
  msgstr ""
1360
 
 
1361
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
1362
- msgid "In order for the consent to be taken into account, you must activate the toggle \"Opt-In active\" via the <a href=\"https://newapp.etracker.com/\" target=\"_blank\">dashboard</a> under <i>menu (top left) > Account-ID > Settings > Privacy > Tracking Opt-In and agreement</i>, but then switch to \"own Opt-In\" so that etracker does not display its own consent dialog, but instead uses the consent collected by Real Cookie Banner."
1363
  msgstr ""
1364
 
1365
  #. translators:
@@ -1452,8 +1554,13 @@ msgstr ""
1452
  msgid "Facebook allows embedding content posted on facebook.com directly into websites. The cookies are used to collect visited websites and detailed statistics about the user behaviour. This data can be linked to the data of users registered on facebook.com."
1453
  msgstr ""
1454
 
 
 
 
 
 
1455
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
1456
- msgid "You can use Facebook's <a href=\"https://developers.facebook.com/docs/plugins/embedded-posts/\" target=\"_blank\">embedded post generator</a> to generate a HTML code to embed post with the Facebook JavaScript SDK. Loading the JavaScript SDK is part of the opt-in code. All you need to do is place the HTML div and blockqoute elements where you want the embedded post to be visible on your site. If you use Facebook post as Iframe embeeds, please create in addition a content blocker for Facebook Posts to block loading of the content before you have the consent of the user."
1457
  msgstr ""
1458
 
1459
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
@@ -1535,8 +1642,13 @@ msgstr ""
1535
  msgid "Please fill in a valid tracking ID!"
1536
  msgstr ""
1537
 
 
1538
  #: inc/overrides/pro/presets/GoogleAds.php:1
1539
- msgid "You can find your Adwords ID in <a href=\"https://ads.google.com/aw/overview\" target=\"_blank\">Google Ads</a> at Tools > Measurement > Conversions > Click on the name of the conversation action > Tag setup > Install the tag yourself > Adwords ID in the code (e.g. AW-123456789)."
 
 
 
 
1540
  msgstr ""
1541
 
1542
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
@@ -1547,8 +1659,13 @@ msgstr ""
1547
  msgid "Google Adsense Publisher ID"
1548
  msgstr ""
1549
 
 
1550
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
1551
- msgid "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads (if activated in your Adsense account) can be displayed. You can find it in the <a href=\"https://www.google.com/adsense\" target=\"_blank\">Google Adsense Dashboard</a> under <i>Account > Settings > Account information</i>."
 
 
 
 
1552
  msgstr ""
1553
 
1554
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
@@ -1567,8 +1684,14 @@ msgstr ""
1567
  msgid "Google Analytics Measurement ID"
1568
  msgstr ""
1569
 
 
 
 
 
 
1570
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
1571
- msgid "You can find your Measurement ID (also called property ID) in the <a href=\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > Select your account > Select your property > Setup Assistant > Tag installation > Select your website."
 
1572
  msgstr ""
1573
 
1574
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
@@ -1597,8 +1720,9 @@ msgstr ""
1597
  msgid "Google Analytics Tracking ID"
1598
  msgstr ""
1599
 
 
1600
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
1601
- msgid "You can find your Tracking ID (also called Property ID) in the <a href=\"https://analytics.google.com/analytics/web/\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > Select your account > Select your property > Tracking Info > Tracking Code."
1602
  msgstr ""
1603
 
1604
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
@@ -1718,8 +1842,13 @@ msgstr ""
1718
  msgid "Help Scout is a customer service tool that provides live chat for websites. The cookies are used to identify the user, associate previous messages with their chat history and collect detailed statistics on his/her behavior."
1719
  msgstr ""
1720
 
 
 
 
 
 
1721
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
1722
- msgid "You have to create a so-called Beacon on <a href=\"https://secure.helpscout.net\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New Beacon. After creating in the Beacon Customizer, the URL looks like <code>https://secure.helpscout.net/settings/beacons/c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. This means that the HelpScout Beacon ID is <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code>."
1723
  msgstr ""
1724
 
1725
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
@@ -1734,6 +1863,14 @@ msgstr ""
1734
  msgid "Hotjar ID"
1735
  msgstr ""
1736
 
 
 
 
 
 
 
 
 
1737
  #: inc/overrides/pro/presets/ImgurPreset.php:1
1738
  msgid "Imgur allows embedding content posted on imgur.com directly into websites."
1739
  msgstr ""
@@ -1766,6 +1903,10 @@ msgstr ""
1766
  msgid "Intercom application ID"
1767
  msgstr ""
1768
 
 
 
 
 
1769
  #: inc/overrides/pro/presets/IssuuPreset.php:1
1770
  msgid "Issuu allows embedding content posted on issuu.com directly into websites. The cookies are used to collect visited websites and detailed statistics about the user behaviour. This data can be linked to the data of users registered on issuu.com."
1771
  msgstr ""
@@ -1798,8 +1939,13 @@ msgstr ""
1798
  msgid "https://linkedin.com/legal/privacy-policy"
1799
  msgstr ""
1800
 
 
 
 
 
 
1801
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
1802
- msgid "You can find an article in LinkedIn's knowledge base that explains <a href=\"https://www.linkedin.com/help/lms/answer/a415871\" target=\"_blank\">where to find the LinkedIn Partner ID</a> in your LinkedIn Ads account."
1803
  msgstr ""
1804
 
1805
  #: inc/overrides/pro/presets/LoomPreset.php:1
@@ -1842,8 +1988,13 @@ msgstr ""
1842
  msgid "You need the service template only if you use a form to subscribe to the newsletter that can be hidden (e.g. popup). Only in this case a cookie is set."
1843
  msgstr ""
1844
 
 
1845
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
1846
- msgid "Personal data will never be transferred directly from the browser of your visitors to MailPoet, but only, for example, when you sign up for the newsletter via your WordPress installation. You should always follow the <a href=\"https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr\" target=\"_blank\">MailPoet Guide to Conform to GDPR</a>."
 
 
 
 
1847
  msgstr ""
1848
 
1849
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
@@ -1883,8 +2034,13 @@ msgstr ""
1883
  msgid "Please provide a valid hash!"
1884
  msgstr ""
1885
 
 
1886
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
1887
- msgid "You find your Metricool hash in the <a href=\"https://app.metricool.com/brands/connections\" target=\"_blank\">Metricool Brand Conncetions</a>, if you use \"Connect web\" and choose the integration as JavaScript tag, within the generated JavaScript."
 
 
 
 
1888
  msgstr ""
1889
 
1890
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
@@ -1899,6 +2055,10 @@ msgstr ""
1899
  msgid "You can find your Microsoft Clarity Project ID in the tracking code or in the URL of your Clarity. For example, if the URL is <code>https://clarity.microsoft.com/projects/view/12cggd77jl/</code>, your project ID is <code>12cggd77jl</code>."
1900
  msgstr ""
1901
 
 
 
 
 
1902
  #. translators:
1903
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
1904
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
@@ -1918,8 +2078,17 @@ msgstr ""
1918
  msgid "Mouseflow Website ID"
1919
  msgstr ""
1920
 
 
 
 
 
 
 
 
 
 
1921
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
1922
- msgid "You can find your Mouseflow website ID by hovering over the appropriate website at <a href=\"http://eu.mouseflow.com/websites\" target=\"_blank\">eu.mouseflow.com/websites</a>. You will then see a gear icon that you can click on. In the settings that appear, you should find a <code>Website ID</code> field."
1923
  msgstr ""
1924
 
1925
  #. translators:
@@ -2006,8 +2175,13 @@ msgstr ""
2006
  msgid "Pinterest Tag ID"
2007
  msgstr ""
2008
 
 
 
 
 
 
2009
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
2010
- msgid "You can view your Tag ID in <a href=\"https://ads.pinterest.com/\" target=\"_blank\">Pinterest Ads</a> under Ads > Conversions > Add code to website > Add code. It is displayed in the top right corner of the modal."
2011
  msgstr ""
2012
 
2013
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
@@ -2084,8 +2258,13 @@ msgstr ""
2084
  msgid "Polylang is a multilingual system for WordPress websites. The cookies store the language of the user and can redirect the user to the version of the website that matches with the language of the browser of the user."
2085
  msgstr ""
2086
 
 
 
 
 
 
2087
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
2088
- msgid "Please make sure you have not renamed the Polylang cookie name or change it in the same way in the technical definitions above. Learn more about how to change the Polylang cookie name <a href=\"https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/\" target=\"_blank\">in their documentation</a>."
2089
  msgstr ""
2090
 
2091
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
@@ -2198,14 +2377,23 @@ msgstr ""
2198
  msgid "tawk.to is a customer service tool that provides live chat for websites. The cookies are used to identify the user, associate previous messages with their chat history and collect detailed statistics on his/her behavior."
2199
  msgstr ""
2200
 
 
 
 
 
 
2201
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
2202
- msgid "You can create your own custom chat widget at <a href=\"https://dashboard.tawk.to\" target=\"_blank\">dashboard.tawk.to</a> > Settings > Chat Widget. The chat widget in the opt-in code is just the default example."
2203
  msgstr ""
2204
 
2205
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
2206
  msgid "tawk.to ID"
2207
  msgstr ""
2208
 
 
 
 
 
2209
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
2210
  msgid "Thrive Leads allows us, for example, to display opt-in newsletter forms that may be a prerequisite for receiving certain information such as an information brochure. Cookies are used to measure if, how often, where and in which variant the form was displayed. Cookies are also used to measure the conversion rate of clicks to sign-ups and technical events thrown."
2211
  msgstr ""
@@ -2218,14 +2406,23 @@ msgstr ""
2218
  msgid "Tidio is a customer service tool that provides live chat for websites. The cookies are used to identify the user, associate previous messages with their chat history and collect detailed statistics on his/her behavior."
2219
  msgstr ""
2220
 
 
2221
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
2222
- msgid "You get your Tidio JS ID on <a href=\"https://tidio.com\" target=\"_blank\">tidio.com</a> under Settings > Live Chat > Integration > JavaScript in the given JavaScript snipped. You can adjust the appearance of the chat at tidio.com under Settings > Live Chat > Appearance."
 
 
 
 
2223
  msgstr ""
2224
 
2225
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
2226
  msgid "Tidio JS ID"
2227
  msgstr ""
2228
 
 
 
 
 
2229
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
2230
  msgid "TikTok Pixel helps to determine whether you are the target audience for presenting ads within the TikTok advertising network. The TikTok Pixel also allows to track the effectiveness of TikTok Ads. Cookies are used to differentiate users and to record their behavior on the website in detail, and to link this data with advertising data from the TikTok advertising network. This data can be linked to the data of users registered on tiktokok.com or the app of the service with their TikTok accounts or data from the contact book of the user and friends of the user or with data from third-party providers that are likely to be associated with your person."
2231
  msgstr ""
@@ -2238,12 +2435,19 @@ msgstr ""
2238
  msgid "TikTok Pixel ID"
2239
  msgstr ""
2240
 
 
 
 
 
 
 
2241
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
2242
- msgid "In the <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager of the TikTok Ad Manager</a> you can create a website pixel. Select \"Manually install pixel code\" for the type of integration. Whether you want to use the \"Standard Mode\" or \"Developer Mode\" depends on your purpose."
2243
  msgstr ""
2244
 
 
2245
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
2246
- msgid "After creating the TikTok Pixel you return to the <a href=\"https://ads.tiktok.com/i18n/events_manager/\" target=\"_blank\">Event Manager of the TikTok Ad Manager</a> and select \"Manage\" in the section \"Website Pixel\". You will then see an overview of all the TikTok pixels you have created. Each TikTok pixel has its ID directly under its name."
2247
  msgstr ""
2248
 
2249
  #: inc/overrides/pro/presets/TikTokPreset.php:1
@@ -2290,14 +2494,27 @@ msgstr ""
2290
  msgid "https://www.userlike.com/en/terms#privacy-policy"
2291
  msgstr ""
2292
 
 
 
 
 
 
2293
  #: inc/overrides/pro/presets/UserlikePreset.php:1
2294
- msgid "Please insert the JavaScript code of your Userlike widget as opt-in code. You can find it at <a href=\"https://userlike.com/en/dashboard/um/config/um_widget/overview\" target=\"_blank\">userlike.com/en/dashboard/um/config/um_widget/overview</a> > Name of the widget > Install > JavaScript Widget code."
2295
  msgstr ""
2296
 
2297
  #: inc/overrides/pro/presets/UserlikePreset.php:1
2298
  msgid "Example opt-in code"
2299
  msgstr ""
2300
 
 
 
 
 
 
 
 
 
2301
  #: inc/overrides/pro/presets/VGWortPreset.php:1
2302
  msgid "The VG WORT sets a tracking pixel to measure accesses to texts to determine the copy probability of the text. In this way, the authors of this website participate in the payouts of VG WORT, which ensure the legal compensation for the use of copyrighted works in accordance with § 53 UrhG in Germany. Cookies are used to identify the user and, if necessary, to be able to link data from several visits of the texts."
2303
  msgstr ""
@@ -2307,6 +2524,14 @@ msgstr ""
2307
  msgid "Which group the VG WORT cookie should belong to is controversial. Therefore you have to make a decision yourself.<br /><br />According to the purpose defined below, the VG WORT cookie is a service that is used for tracking and should therefore be assigned to the group \"Statistics\". According to the Cookie Directive 2002/58/EC, the economic interest of authors to participate in the payouts of VG WORT does not entitle them to set the cookie without the user's consent (essential cookie). Further information on this legal opinion can be found on the Website of %1$sIT-Recht Kanzlei (German)%2$s.<br /><br />This is countered by the claim arising from %3$s§ 53 UrhG (German law)%4$s in Germany for compensation for the use of works protected by copyright. Without a counter for all users of a website, this entitlement cannot be enforced or can only be enforced incompletely, since without a counter it is not possible to determine how many users visit a text and thus the copying probability for the use of copyrighted works cannot be determined. Therefore, VG WORT should be classified as an essential cookie.<br /><br />In order to act legally, we recommend classifying the cookie as a “Statistics\" cookie and blocking it by using a content blocker for users without consent. Pragmatically, however, this will significantly reduce or completely prevent your income from VG WORT payouts. Only by classifying the cookie as an \"essential cookie\" and no content blocker will you be able to receive the full VG WORT payouts to which you are entitled."
2308
  msgstr ""
2309
 
 
 
 
 
 
 
 
 
2310
  #: inc/overrides/pro/presets/VGWortPreset.php:1
2311
  msgid "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de\" by VG WORT, please replace the cookie host."
2312
  msgstr ""
@@ -2403,6 +2628,10 @@ msgstr ""
2403
  msgid "You find your Yandex Metrica Tag ID in the <a href=\"%s\" target=\"_blank\">Yandex Metrica Tags list</a>."
2404
  msgstr ""
2405
 
 
 
 
 
2406
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
2407
  msgid "Zendesk Chat is a customer service tool that provides live chat for websites. The cookies are used to identify the user, associate previous messages with their chat history and collect detailed statistics on his/her behavior."
2408
  msgstr ""
@@ -2419,6 +2648,10 @@ msgstr ""
2419
  msgid "You can find the Zendesk Widget Key in the Zendesk backend in Settings > Widget > Embed Web Widget as part of the JavaScript Code."
2420
  msgstr ""
2421
 
 
 
 
 
2422
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
2423
  msgid "Zoho Bookings is a planning software the allows you to book book appointments on our website. The cookies are used for visitor security by preventing the faking of cross-site requests."
2424
  msgstr ""
@@ -2669,14 +2902,17 @@ msgid "Services that do not share consents via the TCF standard, but via other t
2669
  msgstr ""
2670
 
2671
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2672
  msgid "In addition, you consent to the transfer of data to partners under the TCF standard for the following purposes:"
2673
  msgstr ""
2674
 
2675
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2676
  msgid "Vendor list"
2677
  msgstr ""
2678
 
2679
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2680
  msgid "Vendors"
2681
  msgstr ""
2682
 
@@ -2692,58 +2928,72 @@ msgid "Hide"
2692
  msgstr ""
2693
 
2694
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2695
  msgid "Data processing on the legal basis of:"
2696
  msgstr ""
2697
 
2698
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2699
  msgid "No vendor requests purposes under this legal basis."
2700
  msgstr ""
2701
 
2702
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2703
  msgid "Non-standardized data processing"
2704
  msgstr ""
2705
 
2706
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2707
  msgid "Some services set cookies and/or process personal data without complying with consent communication standards. These services are divided into several groups. So-called \"essential services\" are used based on legitimate interest and cannot be opted out (an objection may have to be made by email or letter in accordance with the privacy policy), while all other services are used only after consent has been given."
2708
  msgstr ""
2709
 
2710
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2711
  msgid "Data processing standardized according to TCF"
2712
  msgstr ""
2713
 
2714
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2715
  msgid "The Transparency and Consent Framework (TCF) is a standard for obtaining consistent consent for processing of personal data and cookie setting. This should enable all parties in the digital (advertising) chain to ensure that they set, process and store data and cookies in accordance with the GDPR and the ePrivacy Directive."
2716
  msgstr ""
2717
 
2718
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2719
  msgid "Purposes"
2720
  msgstr ""
2721
 
2722
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2723
  msgid "Purposes describe for which purpose which providers may set cookies and process personal data. Purposes are pre-selected if there is a legitimate interest for its data processing. For all other purposes, data will only be processed with explicit consent."
2724
  msgstr ""
2725
 
2726
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2727
  msgid "Special purposes"
2728
  msgstr ""
2729
 
2730
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2731
  msgid "Special purposes for setting cookies and processing personal data by our vendors describe purposes for which we have a legitimate interest that cannot be rejected. For example, we need to process data to prevent fraud."
2732
  msgstr ""
2733
 
2734
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2735
  msgid "Features"
2736
  msgstr ""
2737
 
2738
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2739
  msgid "Features for processing personal data describe how data is used to fulfill one or more purposes. Features cannot be opted out, but in the \"Purposes\" section, purposes that lead to the use of features can be selected or deselected. Any purpose can lead to features being used."
2740
  msgstr ""
2741
 
2742
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2743
  msgid "Special features"
2744
  msgstr ""
2745
 
2746
  #: inc/overrides/pro/view/TcfBanner.php:1
 
2747
  msgid "Special features for processing personal data describe how data is used to fulfill one or more purposes in a profound way. Personal data will only be processed in this way with explicit consent."
2748
  msgstr ""
2749
 
@@ -2966,8 +3216,13 @@ msgstr ""
2966
  msgid "When loading Google Fonts, personal data of your visitors is transferred to Google, which is why you need consent. Real Cookie Banner has to check the consent before loading Google Fonts (if there is a consent), which takes a few milliseconds per page view. As a result, you will inevitably notice a small flickering effect (font replacement after a few milliseconds) on your website."
2967
  msgstr ""
2968
 
 
 
 
 
 
2969
  #: inc/presets/free/GoogleFontsPreset.php:1
2970
- msgid "We therefore recommend <a href=\"https://devowl.io/2022/google-fonts-wordpress-gdpr/\" target=\"_blank\">replacing Google Fonts with locally hosted fonts</a> when possible, rather than asking for consent. We explained how this works in our blog!"
2971
  msgstr ""
2972
 
2973
  #: inc/presets/free/GravatarPreset.php:1
@@ -3015,8 +3270,13 @@ msgstr ""
3015
  msgid "Please note that if this service is enabled, the \"Save my name, email, and website in this browser for the next time I comment.\" checkbox in the comment form will disappear. Real Cookie Banner handles the consent to set the cookies as part of the overall cookie consent. The commentary system uses the Gravatar service to display avatars of commentators. You must also create a service for Gravatar as well."
3016
  msgstr ""
3017
 
 
 
 
 
 
3018
  #: inc/presets/free/WordPressCommentsPreset.php:1
3019
- msgid "Do you want to use the comment feature on your website at all? If not, we explain in our blog <a href=\"https://devowl.io/2022/deactivate-wordpress-comments/\" target=\"_blank\"> how to disable comments in WordPress</a>. Then you can also avoid this consent!"
3020
  msgstr ""
3021
 
3022
  #: inc/presets/free/WordPressEmojisPreset.php:1
@@ -3031,8 +3291,13 @@ msgstr ""
3031
  msgid "Almost all browsers and operating systems released after 2015 can easily display emojis without the WordPressa Emoji Script (for which you must obtain this consent)."
3032
  msgstr ""
3033
 
 
 
 
 
 
3034
  #: inc/presets/free/WordPressEmojisPreset.php:1
3035
- msgid "Unless you need to support particularly old browsers and operating systems, we recommend that you <a href=\"https://devowl.io/2022/disable-emojis-wordpress/\" target=\"_blank\">disable the WordPress emoji script</a> rather than asking for consent. How to do that, we have explained in our blog!"
3036
  msgstr ""
3037
 
3038
  #: inc/presets/free/WordPressPluginEmbed.php:1
@@ -3228,7 +3493,7 @@ msgid "Ezoic (Statistics)"
3228
  msgstr ""
3229
 
3230
  #: inc/presets/UpdateNotice.php:1
3231
- msgid "It seems that since the last update of <strong>Real Cookies Banner</strong> some templates have been updated. Please check your following services to make sure they are up to date:"
3232
  msgstr ""
3233
 
3234
  #: inc/presets/UpdateNotice.php:1
@@ -3236,15 +3501,7 @@ msgid "Service (Cookie)"
3236
  msgstr ""
3237
 
3238
  #: inc/presets/UpdateNotice.php:1
3239
- msgid "Edit"
3240
- msgstr ""
3241
-
3242
- #: inc/presets/UpdateNotice.php:1
3243
- msgid "Create new from template"
3244
- msgstr ""
3245
-
3246
- #: inc/presets/UpdateNotice.php:1
3247
- msgid "The easiest way to apply the changes is to delete the service and all connected content blockers in Real Cookie Banner and create it again from the service templates."
3248
  msgstr ""
3249
 
3250
  #: inc/presets/UpdateNotice.php:1
@@ -3304,18 +3561,22 @@ msgid "Service group"
3304
  msgstr ""
3305
 
3306
  #: inc/settings/CookieGroup.php:1
 
3307
  msgid "Essential services are required for the basic functionality of the website. They only contain technically necessary services. These services cannot be objected to."
3308
  msgstr ""
3309
 
3310
  #: inc/settings/CookieGroup.php:1
3311
- msgid "Functional services are necessary to provide features beyond the essential functionality such as prettier fonts, video playback or interactive Web 2.0 features. Content from e.g. video platforms and social media platforms are blocked by default, and can be consented to. If the service is agreed to, this content is loaded automatically without further manual consent."
 
3312
  msgstr ""
3313
 
3314
  #: inc/settings/CookieGroup.php:1
 
3315
  msgid "Statistics services are needed to collect pseudonymous data about the visitors of the website. The data enables us to understand visitors better and to optimize the website."
3316
  msgstr ""
3317
 
3318
  #: inc/settings/CookieGroup.php:1
 
3319
  msgid "Marketing services are used by us and third parties to track the behaviour of individual visitors (across multiple pages), analyse the data collected and, for example, display personalized advertisements. These services enable us to track visitors across multiple websites."
3320
  msgstr ""
3321
 
@@ -3426,7 +3687,7 @@ msgid "Adjust the settings of the cookie banner"
3426
  msgstr ""
3427
 
3428
  #: inc/view/checklist/SaveSettings.php:1
3429
- msgid "Define the behavior of the cookie banner and hide the cookie banner both in the imprint and privacy policy (required by law)."
3430
  msgstr ""
3431
 
3432
  #: inc/view/checklist/SaveSettings.php:1
@@ -3438,7 +3699,7 @@ msgid "Scan your website for services"
3438
  msgstr ""
3439
 
3440
  #: inc/view/checklist/Scanner.php:1
3441
- msgid "Scan your website to identify services used and external URLs that may transmit personal data."
3442
  msgstr ""
3443
 
3444
  #: inc/view/checklist/Scanner.php:1
@@ -3450,7 +3711,7 @@ msgid "Place legal links to your website"
3450
  msgstr ""
3451
 
3452
  #: inc/view/checklist/Shortcode.php:1
3453
- msgid "Your website visitors must be able to view their consent history, change their consent, or withdraw their consent at any time. This must be as easy as giving consent. Therefore, the shortcodes must be included on every subpage of the website (e.g. in the footer)."
3454
  msgstr ""
3455
 
3456
  #: inc/view/checklist/Shortcode.php:1
@@ -3498,6 +3759,10 @@ msgstr ""
3498
  msgid "Enabled"
3499
  msgstr ""
3500
 
 
 
 
 
3501
  #: inc/view/customize/banner/BasicLayout.php:1
3502
  msgid "Basic Layout"
3503
  msgstr ""
@@ -3595,6 +3860,20 @@ msgstr ""
3595
  msgid "Animation on display"
3596
  msgstr ""
3597
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3598
  #: inc/view/customize/banner/BasicLayout.php:1
3599
  #: inc/view/customize/banner/BasicLayout.php:1
3600
  msgid "Animation only on mobile devices"
@@ -3808,9 +4087,10 @@ msgstr ""
3808
  msgid "Use the same stylings as for \"Accept all\""
3809
  msgstr ""
3810
 
 
3811
  #: inc/view/customize/banner/BodyDesign.php:1
3812
  #: inc/view/customize/banner/individual/SaveButton.php:1
3813
- msgid "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Equivalent does not necessarily mean that the buttons/links must look exactly the same. However, you should be safest if they look exactly the same."
3814
  msgstr ""
3815
 
3816
  #: inc/view/customize/banner/BodyDesign.php:1
@@ -3875,14 +4155,16 @@ msgid "Consent options"
3875
  msgstr ""
3876
 
3877
  #: inc/view/customize/banner/Decision.php:1
3878
- #: inc/view/customize/banner/Decision.php:1
3879
- #: inc/view/customize/banner/Texts.php:1
3880
  msgid "Accept all"
3881
  msgstr ""
3882
 
3883
  #. translators:
3884
  #: inc/view/customize/banner/Decision.php:1
3885
- msgid "According to the GDPR (%1$sEU 2016/679%2$s), section 32, you are not allowed to pre-select services in the form of pre-selected checkboxes for the visitor. However, the GDPR and ePrivacy Directive do not prohibit the use of a button to agree to all services, if there is also a button to agree only to the essential services or to make a user-defined selection."
 
 
 
 
3886
  msgstr ""
3887
 
3888
  #: inc/view/customize/banner/Decision.php:1
@@ -3901,8 +4183,6 @@ msgid "Link"
3901
  msgstr ""
3902
 
3903
  #: inc/view/customize/banner/Decision.php:1
3904
- #: inc/view/customize/banner/Decision.php:1
3905
- #: inc/view/customize/banner/Texts.php:1
3906
  msgid "Continue without consent"
3907
  msgstr ""
3908
 
@@ -3919,21 +4199,20 @@ msgid "An \"X\" icon is displayed at the top right of the cookie banner, which a
3919
  msgstr ""
3920
 
3921
  #: inc/view/customize/banner/Decision.php:1
3922
- #: inc/view/customize/banner/Decision.php:1
3923
- #: inc/view/customize/banner/individual/Texts.php:1
3924
  msgid "Individual privacy preferences"
3925
  msgstr ""
3926
 
3927
  #: inc/view/customize/banner/Decision.php:1
3928
- msgid "According to the GDPR (EU 2016/679) and the ePrivacy Directive (EU 2009/136/EC), the user must be free to choose which services to use and be informed about their purpose before giving consent. Therefore, the user must be given the opportunity to access the page with the individual privacy settings."
3929
  msgstr ""
3930
 
3931
  #: inc/view/customize/banner/Decision.php:1
3932
  msgid "Order of the buttons"
3933
  msgstr ""
3934
 
 
3935
  #: inc/view/customize/banner/Decision.php:1
3936
- msgid "According to the <a href=\"https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf\" target=\"_blank\">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Which order of options is considered equivalent is unclear. Therefore, the options should be arranged according to the cultural conditions of the main target country."
3937
  msgstr ""
3938
 
3939
  #: inc/view/customize/banner/Decision.php:1
@@ -3964,8 +4243,27 @@ msgstr ""
3964
  msgid "Text of \"Accept all\" changes when user changes selection"
3965
  msgstr ""
3966
 
 
 
 
 
 
 
 
 
 
 
 
 
3967
  #: inc/view/customize/banner/Decision.php:1
3968
  #: inc/view/customize/banner/individual/Texts.php:1
 
 
 
 
 
 
 
3969
  msgid "Save custom choices"
3970
  msgstr ""
3971
 
@@ -4189,23 +4487,28 @@ msgstr ""
4189
 
4190
  #: inc/view/customize/banner/individual/Texts.php:1
4191
  #: inc/view/customize/banner/Texts.php:1
 
4192
  msgid "We use cookies and similar technologies on our website and process your personal data (e.g. IP address), for example, to personalize content and ads, to integrate media from third-party providers or to analyze traffic on our website. Data processing may also happen as a result of cookies being set. We share this data with third parties that we name in the privacy settings."
4193
  msgstr ""
4194
 
4195
  #: inc/view/customize/banner/individual/Texts.php:1
4196
  #: inc/view/customize/banner/Texts.php:1
 
4197
  msgid "The data processing may take place with your consent or on the basis of a legitimate interest, which you can object to in the privacy settings. You have the right not to consent and to change or revoke your consent at a later time. For more information on the use of your data, please visit our {{privacyPolicy}}privacy policy{{/privacyPolicy}}."
4198
  msgstr ""
4199
 
4200
  #: inc/view/customize/banner/individual/Texts.php:1
 
4201
  msgid "Below you will find an overview of all services used by this website. You can view detailed information about each service and agree to them individually or exercise your right to object."
4202
  msgstr ""
4203
 
4204
  #: inc/view/customize/banner/individual/Texts.php:1
 
4205
  msgid "Show service information"
4206
  msgstr ""
4207
 
4208
  #: inc/view/customize/banner/individual/Texts.php:1
 
4209
  msgid "Hide service information"
4210
  msgstr ""
4211
 
@@ -4329,7 +4632,7 @@ msgid "\"Powered by\" link text"
4329
  msgstr ""
4330
 
4331
  #: inc/view/customize/banner/Texts.php:1
4332
- msgid "Use <code>{{services}}</code> as a placeholder to show all services that process data in the USA."
4333
  msgstr ""
4334
 
4335
  #: inc/view/customize/banner/Texts.php:1
@@ -4392,8 +4695,13 @@ msgstr ""
4392
  msgid "Additional info below the \"Load content\" button"
4393
  msgstr ""
4394
 
 
 
 
 
 
4395
  #: inc/view/customize/banner/Texts.php:1
4396
- msgid "The standard texts in the cookie banner are worded carefully. If you customize them, make sure they are not misleading or riveting. According to the <a href=\"https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/#13_informiertheit)\" target=\"_blank\">Data Protection Commissioner of Baden-Württeberg, Germany (Section B, 1.3.7.; German)</a>, for example, a headline \"We love cookies\" is already misleading."
4397
  msgstr ""
4398
 
4399
  #. translators:
@@ -4417,52 +4725,63 @@ msgid "Consent Forwarding is currently disabled. Please navigate to %1$sSettings
4417
  msgstr ""
4418
 
4419
  #: inc/view/customize/banner/Texts.php:1
 
4420
  msgid "Privacy preferences"
4421
  msgstr ""
4422
 
4423
  #: inc/view/customize/banner/Texts.php:1
 
4424
  msgid "Set privacy settings individually"
4425
  msgstr ""
4426
 
4427
  #: inc/view/customize/banner/Texts.php:1
 
4428
  msgid "Some services process personal data in the USA. By consenting to the use of these services, you also consent to the processing of your data in the USA in accordance with Art. 49 (1) lit. a GDPR. The USA is considered by the ECJ to be a country with an insufficient level of data protection according to EU standards. In particular, there is a risk that your data will be processed by US authorities for control and monitoring purposes, perhaps without the possibility of a legal recourse."
4429
  msgstr ""
4430
 
4431
  #: inc/view/customize/banner/Texts.php:1
 
4432
  msgid "You are under 16 years old? Then you cannot consent to optional services. Ask your parents or legal guardians to agree to these services with you."
4433
  msgstr ""
4434
 
4435
  #: inc/view/customize/banner/Texts.php:1
 
4436
  msgid "You are under 16 years old? Unfortunately, you are not permitted to consent to this service to view this content. Please ask your parents or guardians to agree to the service with you!"
4437
  msgstr ""
4438
 
4439
  #: inc/view/customize/banner/Texts.php:1
 
4440
  msgid "By accepting all services, you allow {{services}} to be loaded. These services are divided into groups {{serviceGroups}} according to their purpose (belonging marked with superscript numbers)."
4441
  msgstr ""
4442
 
4443
  #: inc/view/customize/banner/Texts.php:1
 
4444
  msgid "Your consent is also applicable on {{websites}}."
4445
  msgstr ""
4446
 
4447
  #. translators:
4448
  #: inc/view/customize/banner/Texts.php:1
4449
  #: inc/view/customize/banner/Texts.php:1
 
4450
  msgid "{{name}} blocked due to privacy settings"
4451
  msgstr ""
4452
 
4453
  #. translators:
4454
  #: inc/view/customize/banner/Texts.php:1
4455
  #: inc/view/customize/banner/Texts.php:1
 
4456
  msgid "Show all services you still need to agree to"
4457
  msgstr ""
4458
 
4459
  #: inc/view/customize/banner/Texts.php:1
4460
  #: inc/view/customize/banner/Texts.php:1
 
4461
  msgid "Accept required services and load content"
4462
  msgstr ""
4463
 
4464
  #: inc/view/customize/banner/Texts.php:1
4465
  #: inc/view/customize/banner/Texts.php:1
 
4466
  msgid "Loading the blocked content will adjust your privacy settings. Content from this service will not be blocked in the future. You have the right to revoke or change your decision at any time."
4467
  msgstr ""
4468
 
@@ -4496,20 +4815,24 @@ msgstr ""
4496
 
4497
  #: inc/view/navmenu/NavMenuLinks.php:1
4498
  #: inc/view/navmenu/NavMenuLinks.php:1
 
4499
  msgid "Change privacy settings"
4500
  msgstr ""
4501
 
4502
  #: inc/view/navmenu/NavMenuLinks.php:1
4503
  #: inc/view/navmenu/NavMenuLinks.php:1
 
4504
  msgid "Privacy settings history"
4505
  msgstr ""
4506
 
4507
  #: inc/view/navmenu/NavMenuLinks.php:1
4508
  #: inc/view/navmenu/NavMenuLinks.php:1
 
4509
  msgid "Revoke consents"
4510
  msgstr ""
4511
 
4512
  #: inc/view/navmenu/NavMenuLinks.php:1
 
4513
  msgid "You have successfully revoked the consent. The page will be reloaded now."
4514
  msgstr ""
4515
 
117
  msgstr ""
118
 
119
  #: inc/Assets.php:1
120
+ msgctxt "legal-text"
121
  msgid "Use on legal basis of"
122
  msgstr ""
123
 
124
  #: inc/Assets.php:1
125
+ msgctxt "legal-text"
126
  msgid "Legitimate interest"
127
  msgstr ""
128
 
129
  #: inc/Assets.php:1
130
+ msgctxt "legal-text"
131
  msgid "Compliance with a legal obligation"
132
  msgstr ""
133
 
134
  #: inc/Assets.php:1
135
+ msgctxt "legal-text"
136
  msgid "Consent"
137
  msgstr ""
138
 
139
  #: inc/Assets.php:1
140
+ msgctxt "legal-text"
141
  msgid "We have recognized that you are a crawler/bot. Only natural persons must consent to cookies and processing of personal data. Therefore, the link has no function for you."
142
  msgstr ""
143
 
144
  #: inc/Assets.php:1
145
+ msgctxt "legal-text"
146
  msgid "Technical cookie definition"
147
  msgstr ""
148
 
149
  #: inc/Assets.php:1
150
+ msgctxt "legal-text"
151
  msgid "Uses cookies"
152
  msgstr ""
153
 
154
  #: inc/Assets.php:1
155
+ msgctxt "legal-text"
156
  msgid "Cookie refresh"
157
  msgstr ""
158
 
159
  #: inc/Assets.php:1
160
+ msgctxt "legal-text"
161
  msgid "Uses cookie-like information (LocalStorage, SessionStorage, IndexDB, etc.)"
162
  msgstr ""
163
 
164
  #: inc/Assets.php:1
165
+ msgctxt "legal-text"
166
  msgid "Host"
167
  msgstr ""
168
 
169
  #: inc/Assets.php:1
170
+ msgctxt "legal-text"
 
171
  msgid "Duration"
172
  msgstr ""
173
 
196
  msgstr ""
197
 
198
  #: inc/Assets.php:1
199
+ msgctxt "legal-text"
200
  msgid "No expiration"
201
  msgstr ""
202
 
203
  #: inc/Assets.php:1
204
+ msgctxt "legal-text"
 
 
 
 
 
205
  msgid "Type"
206
  msgstr ""
207
 
208
  #: inc/Assets.php:1
209
+ msgctxt "legal-text"
210
  msgid "Purpose"
211
  msgstr ""
212
 
213
  #: inc/Assets.php:1
214
+ msgctxt "legal-text"
215
  msgid "History of your privacy settings"
216
  msgstr ""
217
 
218
  #: inc/Assets.php:1
219
+ msgctxt "legal-text"
220
  msgid "Show consent from"
221
  msgstr ""
222
 
223
  #: inc/Assets.php:1
224
+ msgctxt "legal-text"
225
  msgid "Not yet consented to"
226
  msgstr ""
227
 
234
  msgstr ""
235
 
236
  #: inc/Assets.php:1
237
+ msgctxt "legal-text"
238
  msgid "Provider"
239
  msgstr ""
240
 
241
  #: inc/Assets.php:1
242
+ msgctxt "legal-text"
243
  msgid "Privacy Policy"
244
  msgstr ""
245
 
246
  #. translators:
247
  #: inc/Assets.php:1
248
+ msgctxt "legal-text"
249
  msgid "and %d more"
250
  msgstr ""
251
 
252
  #. translators:
253
  #: inc/Assets.php:1
254
+ msgctxt "legal-text"
255
  msgid "US data processing"
256
  msgstr ""
257
 
574
 
575
  #. translators:
576
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
577
+ msgid "In recent months, more clarity has been created about what consent management on websites should look like - and what it shouldn't. In particular, through the <a href=\"%1$s\" target=\"_blank\">TTDSG</a> (Telecommunications Telemedia Data Protection Act; Germany) and <a href=\"%2$s\" target=\"_blank\">Guidance of the Conference of Independent Data Protection Authorities for cookie banners</a> (coordinated legal interpretation of all German data protection authorities; in German), there are now clearer rules that further interpret or complement the EU-wide applicable <a href=\"%3$s\" target=\"_blank\">ePrivacy Directive</a> and <a href=\"%4$s\" target=\"_blank\">GDPR</a>. Furthermore, there were important decisions such as the evaluation of <a href=\"%5$s\" target=\"_blank\">TCF by ADP (Belgium)</a>, the <a href=\"%6$s\" target=\"_blank\">Google Analytics decision by dsb (Austria)</a> and the <a href=\"%7$s\" target=\"_blank\">position on Google Analytics by CNIL</a>."
578
+ msgstr ""
579
+
580
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
581
+ msgid "https://www.gesetze-im-internet.de/ttdsg/"
582
+ msgstr ""
583
+
584
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
585
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
586
+ #: inc/view/customize/banner/BodyDesign.php:1
587
+ #: inc/view/customize/banner/Decision.php:1
588
+ #: inc/view/customize/banner/individual/SaveButton.php:1
589
+ msgid "https://www.datenschutzkonferenz-online.de/media/oh/20211220_oh_telemedien.pdf"
590
+ msgstr ""
591
+
592
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
593
+ msgid "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex%3A32009L0136"
594
+ msgstr ""
595
+
596
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
597
+ msgid "https://gdpr-info.eu/"
598
+ msgstr ""
599
+
600
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
601
+ msgid "https://www.autoriteprotectiondonnees.be/publications/decision-quant-au-fond-n-21-2022-english.pdf"
602
+ msgstr ""
603
+
604
+ #. translators:
605
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
606
+ msgid "https://noyb.eu/sites/default/files/2022-01/E-DSB%20-%2$20Google%20Analytics_DE_bk_0.pdf"
607
+ msgstr ""
608
+
609
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
610
+ msgid "https://www.cnil.fr/sites/default/files/atoms/files/decision_ordering_to_comply_anonymised_-_google_analytics.pdf"
611
  msgstr ""
612
 
613
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
636
 
637
  #. translators:
638
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
639
+ msgid "In accordance with the requirements of the &quot;<a href=\"%s\" target=\"_blank\">Guidance of the Conference of Independent Data Protection Authorities for cookie banners</a>&quot;, the possibility to view, modify and revoke consent must be directly accessible on every sub-page of your website."
640
  msgstr ""
641
 
642
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
713
  msgid "Updates in v3.0: You should act to be safe!"
714
  msgstr ""
715
 
716
+ #. translators:
717
+ #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
718
+ msgid "With Real Cookie Banner 3.0 we have released a major update, in which we have implemented, among other things, current legal adjustments. Read more about the changes in our <a href=\"%s\" target=\"_blank\">blog post</a>."
719
+ msgstr ""
720
+
721
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
722
+ msgid "https://devowl.io/2022/real-cookie-banner-3-0/"
723
  msgstr ""
724
 
725
  #: inc/comp/migration/DashboardTileMigrationMajor3.php:1
738
  msgid "If you have previously obtained consents under the Transparency & Consent Framework, be sure to read the following additional information and consult a legal advisor to clarify the further procedure for your individual case."
739
  msgstr ""
740
 
741
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
742
+ msgid "https://devowl.io/go/real-cookie-banner/tcf/2020-02/apd-decision"
743
+ msgstr ""
744
+
745
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
746
  msgid "Decision of the Belgian Data Protection Authority (APD)"
747
  msgstr ""
748
 
749
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
750
+ msgid "https://devowl.io/go/real-cookie-banner/tcf/2020-02/iab-europe-statement"
751
+ msgstr ""
752
+
753
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
754
  msgid "Statement of the IAB Europe (English)"
755
  msgstr ""
756
 
757
+ #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
758
+ msgid "https://devowl.io/go/real-cookie-banner/tcf/2020-02/evaluation-ra-schwenke"
759
+ msgstr ""
760
+
761
  #: inc/comp/migration/DashboardTileTcfV2IllegalUsage.php:1
762
  msgid "Legal assessment by RA Dr. Schwenke (German)"
763
  msgstr ""
1017
  msgid "You only need a content blocker if you embed %1$s <strong>outside of Real Cookie Banner</strong>, e.g. via the <a href=\"%2$s\" target=\"_blank\">%3$s</a>. In this case, you also must remove the \"Code executed on opt-in\"."
1018
  msgstr ""
1019
 
1020
+ #: inc/overrides/pro/presets/ActiveCampaignSiteTrackingPreset.php:1
1021
+ msgid "https://wordpress.org/plugins/activecampaign-subscription-forms/"
1022
+ msgstr ""
1023
+
1024
  #: inc/overrides/pro/presets/AddThisPreset.php:1
1025
  msgid "AddThis allows providing links and buttons for sharing content on a variety of social networks and other communication tools on the internet. Cookie are used to enable the core functionality of AddThis, to enable AddThis Publishers and Oracle Marketing & Data Cloud customers and partners to market products and services to you, to provide personalized recommendations and messages, to link browsers and apps across devices, to sync unique identifiers; and, to analyze, develop, and improve the AddThis Tools and Oracle products and services and to manage the security of our sites, networks, and systems."
1026
  msgstr ""
1038
  msgid "AddToAny allows providing links and buttons for sharing content on a variety of social networks and other communication tools on the internet. The cookies are used to uniquely identify the user and classify him or her as a potential attacker and to determine the fastest available server."
1039
  msgstr ""
1040
 
1041
+ #. translators:
1042
+ #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1043
+ msgid "This template assumes that you use the <a href=\"%s\" target=\"_blank\">AddToAny WordPress plugin</a>. The template is not suitable to add Facebook Like, Twitter Tweet or Pinterest Pin button in AddToAny. If you want to use any of these buttons, please use it without AddToAny and additionally create the cookies and content blockers for the respective service."
1044
+ msgstr ""
1045
+
1046
  #: inc/overrides/pro/presets/AddToAnyPreset.php:1
1047
+ msgid "https://wordpress.org/plugins/add-to-any/"
1048
  msgstr ""
1049
 
1050
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1051
  msgid "Ad Inserter allows us to manage and target advertising based on the content of the website. Cookies are used to detect adblockers, to count the number of page views with an adblocker and to remember whether the user has already been redirected to a subpage that prompts him to switch off his adblocker. In addition, a cookie can be used to remember how often which advertising placement has already been displayed and how often the respective advertisement has been clicked on."
1052
  msgstr ""
1053
 
1054
+ #. translators:
1055
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1056
+ msgid "Ad Insert plays out ads even without consent. You should <a href=\"%s\" target=\"_blank\">obtain consent for the ads via the TCF v2.0 or newer standard</a>. Only some features of the plugin require you to obtain consent for Ad Inserter."
1057
+ msgstr ""
1058
+
1059
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1060
+ msgid "https://adinserter.pro/faq/gdpr-compliance-cookies-consent"
1061
  msgstr ""
1062
 
1063
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1064
  msgid "Only if the ad blocker detection is enabled, the cookies <code>aiADB</code>, <code>aiADB_PV</code> and <code>aiADB_PR</code> are set. The cookie duration depends on the settings of the feature. Please make sure that you have disabled the \"Use external scripts\" checkbox, as this part of the adblocker transmits data to Google and Media.net before you have consent to do so."
1065
  msgstr ""
1066
 
1067
+ #. translators:
1068
+ #: inc/overrides/pro/presets/AdInserterPreset.php:1
1069
+ msgid "The cookie <code>aiBLOCKS</code> is set when you use the <a href=\"%s\" target=\"_blank\">impression and click limits</a> feature of Ad Inserter Pro. The duration of the cookie depends on the settings of the feature."
1070
+ msgstr ""
1071
+
1072
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1073
+ msgid "https://adinserter.pro/documentation/ad-impression-and-click-limiting"
1074
  msgstr ""
1075
 
1076
  #: inc/overrides/pro/presets/AdInserterPreset.php:1
1155
  msgid "Awin Publisher ID"
1156
  msgstr ""
1157
 
1158
+ #. translators:
1159
+ #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1160
+ msgid "You find your publisher ID in the <a href=\"%s\" target=\"_blank\">account overview</a> directly blow your account name."
1161
+ msgstr ""
1162
+
1163
  #: inc/overrides/pro/presets/AwinPublisherMasterTagPreset.php:1
1164
+ msgid "https://ui.awin.com/user"
1165
  msgstr ""
1166
 
1167
  #: inc/overrides/pro/presets/BingAdsPreset.php:1
1198
  msgid "On <a href=\"%s\" target=\"_blank\">ads.microsoft.com</a> under Tools > Conversion tracking > UET tag you can find the tag ID of your UET tag in the tag table."
1199
  msgstr ""
1200
 
1201
+ #: inc/overrides/pro/presets/BingAdsPreset.php:1
1202
+ msgid "https://ads.microsoft.com"
1203
+ msgstr ""
1204
+
1205
  #: inc/overrides/pro/presets/BingMapsPreset.php:1
1206
  msgid "Bing Maps displays maps on the website as iframe or via JavaScript directly embedded as part of the website. Cookies are used to temporarily store the current state of the map. In addition, an advertising ID is assigned with which the client can be identified. It will collect visited websites and detailed statistics about the user behavior."
1207
  msgstr ""
1424
  msgid "etracker Account Key"
1425
  msgstr ""
1426
 
1427
+ #. translators:
1428
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
1429
+ msgid "You can find your etracker account key under <a href=\"%s\" target=\"_blank\">Account info > Settings> Account</a> of your etracker account."
1430
+ msgstr ""
1431
+
1432
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
1433
+ msgid "https://newapp.etracker.com/#/report/accountSettings/accountKey"
1434
  msgstr ""
1435
 
1436
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
1437
  msgid "This service template is designed for tracking without consent on the legal basis of legitimate interest. No cookies are set by etracker for tracking and collected data (as of February 2022) is only processed within the EU. The visitor of your website can object to tracking by disabling this service in your cookie banner."
1438
  msgstr ""
1439
 
1440
+ #. translators:
1441
+ #: inc/overrides/pro/presets/EtrackerPreset.php:1
1442
+ msgid "We also recommend that you deactivate the non-aggregated reporting via the <a href=\"%s\" target=\"_blank\">dashboard</a> under <i>menu (top left) > Account-ID > Settings > Privacy > Consent-free tracking cookies in accordance with CNIL guidelines</i> to ensure that there is definitely no personal reference for the collected data."
1443
+ msgstr ""
1444
+
1445
  #: inc/overrides/pro/presets/EtrackerPreset.php:1
1446
+ #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
1447
+ msgid "https://newapp.etracker.com/"
1448
  msgstr ""
1449
 
1450
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
1459
  msgid "This service template is designed for tracking with consent. In order for the tracking to work, you must also create the service \"etracker: Tracking without consent\" resp. \"etracker: basic tracking\", as this service only enriches the tracking with additional data in the case of consent."
1460
  msgstr ""
1461
 
1462
+ #. translators:
1463
  #: inc/overrides/pro/presets/EtrackerWithConsentPreset.php:1
1464
+ msgid "In order for the consent to be taken into account, you must activate the toggle \"Opt-In active\" via the <a href=\"%s\" target=\"_blank\">dashboard</a> under <i>menu (top left) > Account-ID > Settings > Privacy > Tracking Opt-In and agreement</i>, but then switch to \"own Opt-In\" so that etracker does not display its own consent dialog, but instead uses the consent collected by Real Cookie Banner."
1465
  msgstr ""
1466
 
1467
  #. translators:
1554
  msgid "Facebook allows embedding content posted on facebook.com directly into websites. The cookies are used to collect visited websites and detailed statistics about the user behaviour. This data can be linked to the data of users registered on facebook.com."
1555
  msgstr ""
1556
 
1557
+ #. translators:
1558
+ #: inc/overrides/pro/presets/FacebookPostPreset.php:1
1559
+ msgid "You can use Facebook's <a href=\"%s\" target=\"_blank\">embedded post generator</a> to generate a HTML code to embed post with the Facebook JavaScript SDK. Loading the JavaScript SDK is part of the opt-in code. All you need to do is place the HTML div and blockqoute elements where you want the embedded post to be visible on your site. If you use Facebook post as Iframe embeeds, please create in addition a content blocker for Facebook Posts to block loading of the content before you have the consent of the user."
1560
+ msgstr ""
1561
+
1562
  #: inc/overrides/pro/presets/FacebookPostPreset.php:1
1563
+ msgid "https://developers.facebook.com/docs/plugins/embedded-posts/"
1564
  msgstr ""
1565
 
1566
  #: inc/overrides/pro/presets/FacebookSharePreset.php:1
1642
  msgid "Please fill in a valid tracking ID!"
1643
  msgstr ""
1644
 
1645
+ #. translators:
1646
  #: inc/overrides/pro/presets/GoogleAds.php:1
1647
+ msgid "You can find your Adwords ID in <a href=\"%s\" target=\"_blank\">Google Ads</a> at Tools > Measurement > Conversions > Click on the name of the conversation action > Tag setup > Install the tag yourself > Adwords ID in the code (e.g. AW-123456789)."
1648
+ msgstr ""
1649
+
1650
+ #: inc/overrides/pro/presets/GoogleAds.php:1
1651
+ msgid "https://ads.google.com/aw/overview"
1652
  msgstr ""
1653
 
1654
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
1659
  msgid "Google Adsense Publisher ID"
1660
  msgstr ""
1661
 
1662
+ #. translators:
1663
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
1664
+ msgid "You have to enter your Google Adsense Publisher ID, so that e.g. Auto Ads (if activated in your Adsense account) can be displayed. You can find it in the <a href=\"%s\" target=\"_blank\">Google Adsense Dashboard</a> under <i>Account > Settings > Account information</i>."
1665
+ msgstr ""
1666
+
1667
+ #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
1668
+ msgid "https://www.google.com/adsense"
1669
  msgstr ""
1670
 
1671
  #: inc/overrides/pro/presets/GoogleAdSensePreset.php:1
1684
  msgid "Google Analytics Measurement ID"
1685
  msgstr ""
1686
 
1687
+ #. translators:
1688
+ #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
1689
+ msgid "You can find your Measurement ID (also called property ID) in the <a href=\"%s\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > Select your account > Select your property > Setup Assistant > Tag installation > Select your website."
1690
+ msgstr ""
1691
+
1692
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
1693
+ #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
1694
+ msgid "https://analytics.google.com/analytics/web/"
1695
  msgstr ""
1696
 
1697
  #: inc/overrides/pro/presets/GoogleAnalytics4Preset.php:1
1720
  msgid "Google Analytics Tracking ID"
1721
  msgstr ""
1722
 
1723
+ #. translators:
1724
  #: inc/overrides/pro/presets/GoogleAnalyticsPreset.php:1
1725
+ msgid "You can find your Tracking ID (also called Property ID) in the <a href=\"%s\" target=\"_blank\">Analytics Dashboard</a> under Admin (gear icon) > Select your account > Select your property > Tracking Info > Tracking Code."
1726
  msgstr ""
1727
 
1728
  #: inc/overrides/pro/presets/GoogleMapsPreset.php:1
1842
  msgid "Help Scout is a customer service tool that provides live chat for websites. The cookies are used to identify the user, associate previous messages with their chat history and collect detailed statistics on his/her behavior."
1843
  msgstr ""
1844
 
1845
+ #. translators:
1846
+ #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
1847
+ msgid "You have to create a so-called Beacon on <a href=\"%s\" target=\"_blank\">secure.helpscout.net</a> > Manager > Beacon > New Beacon. After creating in the Beacon Customizer, the URL looks like <code>https://secure.helpscout.net/settings/beacons/c676047b-c2e8-45b1-8319-344f4e7e2431/customize</code>. This means that the HelpScout Beacon ID is <code>c676047b-c2e8-45b1-8319-344f4e7e2431</code>."
1848
+ msgstr ""
1849
+
1850
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
1851
+ msgid "https://secure.helpscout.net"
1852
  msgstr ""
1853
 
1854
  #: inc/overrides/pro/presets/HelpScoutChatPreset.php:1
1863
  msgid "Hotjar ID"
1864
  msgstr ""
1865
 
1866
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
1867
+ msgid "https://wordpress.org/plugins/hotjar/"
1868
+ msgstr ""
1869
+
1870
+ #: inc/overrides/pro/presets/HotjarPreset.php:1
1871
+ msgid "official Hotjar WordPress Plugin"
1872
+ msgstr ""
1873
+
1874
  #: inc/overrides/pro/presets/ImgurPreset.php:1
1875
  msgid "Imgur allows embedding content posted on imgur.com directly into websites."
1876
  msgstr ""
1903
  msgid "Intercom application ID"
1904
  msgstr ""
1905
 
1906
+ #: inc/overrides/pro/presets/IntercomChatPreset.php:1
1907
+ msgid "https://wordpress.org/plugins/intercom/"
1908
+ msgstr ""
1909
+
1910
  #: inc/overrides/pro/presets/IssuuPreset.php:1
1911
  msgid "Issuu allows embedding content posted on issuu.com directly into websites. The cookies are used to collect visited websites and detailed statistics about the user behaviour. This data can be linked to the data of users registered on issuu.com."
1912
  msgstr ""
1939
  msgid "https://linkedin.com/legal/privacy-policy"
1940
  msgstr ""
1941
 
1942
+ #. translators:
1943
+ #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
1944
+ msgid "You can find an article in LinkedIn's knowledge base that explains <a href=\"%s\" target=\"_blank\">where to find the LinkedIn Partner ID</a> in your LinkedIn Ads account."
1945
+ msgstr ""
1946
+
1947
  #: inc/overrides/pro/presets/LinkedInAdsPreset.php:1
1948
+ msgid "https://www.linkedin.com/help/lms/answer/a415871"
1949
  msgstr ""
1950
 
1951
  #: inc/overrides/pro/presets/LoomPreset.php:1
1988
  msgid "You need the service template only if you use a form to subscribe to the newsletter that can be hidden (e.g. popup). Only in this case a cookie is set."
1989
  msgstr ""
1990
 
1991
+ #. translators:
1992
  #: inc/overrides/pro/presets/MailPoetPreset.php:1
1993
+ msgid "Personal data will never be transferred directly from the browser of your visitors to MailPoet, but only, for example, when you sign up for the newsletter via your WordPress installation. You should always follow the <a href=\"%s\" target=\"_blank\">MailPoet Guide to Conform to GDPR</a>."
1994
+ msgstr ""
1995
+
1996
+ #: inc/overrides/pro/presets/MailPoetPreset.php:1
1997
+ msgid "https://kb.mailpoet.com/article/246-guide-to-conform-to-gdpr"
1998
  msgstr ""
1999
 
2000
  #: inc/overrides/pro/presets/MatomoIntegrationPluginPreset.php:1
2034
  msgid "Please provide a valid hash!"
2035
  msgstr ""
2036
 
2037
+ #. translators:
2038
  #: inc/overrides/pro/presets/MetricoolPreset.php:1
2039
+ msgid "You find your Metricool hash in the <a href=\"%s\" target=\"_blank\">Metricool Brand Conncetions</a>, if you use \"Connect web\" and choose the integration as JavaScript tag, within the generated JavaScript."
2040
+ msgstr ""
2041
+
2042
+ #: inc/overrides/pro/presets/MetricoolPreset.php:1
2043
+ msgid "https://app.metricool.com/brands/connections"
2044
  msgstr ""
2045
 
2046
  #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
2055
  msgid "You can find your Microsoft Clarity Project ID in the tracking code or in the URL of your Clarity. For example, if the URL is <code>https://clarity.microsoft.com/projects/view/12cggd77jl/</code>, your project ID is <code>12cggd77jl</code>."
2056
  msgstr ""
2057
 
2058
+ #: inc/overrides/pro/presets/MicrosoftClarityPreset.php:1
2059
+ msgid "https://wordpress.org/plugins/microsoft-clarity/"
2060
+ msgstr ""
2061
+
2062
  #. translators:
2063
  #: inc/overrides/pro/presets/MonsterInsights4Preset.php:1
2064
  #: inc/overrides/pro/presets/MonsterInsightsPreset.php:1
2078
  msgid "Mouseflow Website ID"
2079
  msgstr ""
2080
 
2081
+ #. translators:
2082
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
2083
+ msgid "You can find your Mouseflow website ID by hovering over the appropriate website at <a href=\"%s\" target=\"_blank\">eu.mouseflow.com/websites</a>. You will then see a gear icon that you can click on. In the settings that appear, you should find a <code>Website ID</code> field."
2084
+ msgstr ""
2085
+
2086
+ #: inc/overrides/pro/presets/MouseflowPreset.php:1
2087
+ msgid "http://eu.mouseflow.com/websites"
2088
+ msgstr ""
2089
+
2090
  #: inc/overrides/pro/presets/MouseflowPreset.php:1
2091
+ msgid "https://wordpress.org/plugins/mouseflow-for-wordpress/"
2092
  msgstr ""
2093
 
2094
  #. translators:
2175
  msgid "Pinterest Tag ID"
2176
  msgstr ""
2177
 
2178
+ #. translators:
2179
+ #: inc/overrides/pro/presets/PinterestTagPreset.php:1
2180
+ msgid "You can view your Tag ID in <a href=\"%s\" target=\"_blank\">Pinterest Ads</a> under Ads > Conversions > Add code to website > Add code. It is displayed in the top right corner of the modal."
2181
+ msgstr ""
2182
+
2183
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
2184
+ msgid "https://ads.pinterest.com/"
2185
  msgstr ""
2186
 
2187
  #: inc/overrides/pro/presets/PinterestTagPreset.php:1
2258
  msgid "Polylang is a multilingual system for WordPress websites. The cookies store the language of the user and can redirect the user to the version of the website that matches with the language of the browser of the user."
2259
  msgstr ""
2260
 
2261
+ #. translators:
2262
+ #: inc/overrides/pro/presets/PolyLangPreset.php:1
2263
+ msgid "Please make sure you have not renamed the Polylang cookie name or change it in the same way in the technical definitions above. Learn more about how to change the Polylang cookie name <a href=\"%s\" target=\"_blank\">in their documentation</a>."
2264
+ msgstr ""
2265
+
2266
  #: inc/overrides/pro/presets/PolyLangPreset.php:1
2267
+ msgid "https://polylang.pro/doc/is-polylang-compatible-with-the-eu-cookie-law/"
2268
  msgstr ""
2269
 
2270
  #: inc/overrides/pro/presets/PopupMakerPreset.php:1
2377
  msgid "tawk.to is a customer service tool that provides live chat for websites. The cookies are used to identify the user, associate previous messages with their chat history and collect detailed statistics on his/her behavior."
2378
  msgstr ""
2379
 
2380
+ #. translators:
2381
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
2382
+ msgid "You can create your own custom chat widget at <a href=\"%s\" target=\"_blank\">dashboard.tawk.to</a> > Settings > Chat Widget. The chat widget in the opt-in code is just the default example."
2383
+ msgstr ""
2384
+
2385
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
2386
+ msgid "https://dashboard.tawk.to"
2387
  msgstr ""
2388
 
2389
  #: inc/overrides/pro/presets/TawkToChatPreset.php:1
2390
  msgid "tawk.to ID"
2391
  msgstr ""
2392
 
2393
+ #: inc/overrides/pro/presets/TawkToChatPreset.php:1
2394
+ msgid "https://wordpress.org/plugins/tawkto-live-chat/"
2395
+ msgstr ""
2396
+
2397
  #: inc/overrides/pro/presets/ThriveLeadsPreset.php:1
2398
  msgid "Thrive Leads allows us, for example, to display opt-in newsletter forms that may be a prerequisite for receiving certain information such as an information brochure. Cookies are used to measure if, how often, where and in which variant the form was displayed. Cookies are also used to measure the conversion rate of clicks to sign-ups and technical events thrown."
2399
  msgstr ""
2406
  msgid "Tidio is a customer service tool that provides live chat for websites. The cookies are used to identify the user, associate previous messages with their chat history and collect detailed statistics on his/her behavior."
2407
  msgstr ""
2408
 
2409
+ #. translators:
2410
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
2411
+ msgid "You get your Tidio JS ID on <a href=\"%s\" target=\"_blank\">tidio.com</a> under Settings > Live Chat > Integration > JavaScript in the given JavaScript snipped. You can adjust the appearance of the chat at tidio.com under Settings > Live Chat > Appearance."
2412
+ msgstr ""
2413
+
2414
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
2415
+ msgid "https://tidio.com"
2416
  msgstr ""
2417
 
2418
  #: inc/overrides/pro/presets/TidioChatPreset.php:1
2419
  msgid "Tidio JS ID"
2420
  msgstr ""
2421
 
2422
+ #: inc/overrides/pro/presets/TidioChatPreset.php:1
2423
+ msgid "https://wordpress.org/plugins/tidio-live-chat/"
2424
+ msgstr ""
2425
+
2426
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
2427
  msgid "TikTok Pixel helps to determine whether you are the target audience for presenting ads within the TikTok advertising network. The TikTok Pixel also allows to track the effectiveness of TikTok Ads. Cookies are used to differentiate users and to record their behavior on the website in detail, and to link this data with advertising data from the TikTok advertising network. This data can be linked to the data of users registered on tiktokok.com or the app of the service with their TikTok accounts or data from the contact book of the user and friends of the user or with data from third-party providers that are likely to be associated with your person."
2428
  msgstr ""
2435
  msgid "TikTok Pixel ID"
2436
  msgstr ""
2437
 
2438
+ #. translators:
2439
+ #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
2440
+ msgid "In the <a href=\"%s\" target=\"_blank\">Event Manager of the TikTok Ad Manager</a> you can create a website pixel. Select \"Manually install pixel code\" for the type of integration. Whether you want to use the \"Standard Mode\" or \"Developer Mode\" depends on your purpose."
2441
+ msgstr ""
2442
+
2443
+ #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
2444
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
2445
+ msgid "https://ads.tiktok.com/i18n/events_manager/"
2446
  msgstr ""
2447
 
2448
+ #. translators:
2449
  #: inc/overrides/pro/presets/TikTokPixelPreset.php:1
2450
+ msgid "After creating the TikTok Pixel you return to the <a href=\"%s\" target=\"_blank\">Event Manager of the TikTok Ad Manager</a> and select \"Manage\" in the section \"Website Pixel\". You will then see an overview of all the TikTok pixels you have created. Each TikTok pixel has its ID directly under its name."
2451
  msgstr ""
2452
 
2453
  #: inc/overrides/pro/presets/TikTokPreset.php:1
2494
  msgid "https://www.userlike.com/en/terms#privacy-policy"
2495
  msgstr ""
2496
 
2497
+ #. translators:
2498
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
2499
+ msgid "Please insert the JavaScript code of your Userlike widget as opt-in code. You can find it in the <a href=\"%s\" target=\"_blank\">Userlike widget configurator</a> > Name of the widget > Install > JavaScript Widget code."
2500
+ msgstr ""
2501
+
2502
  #: inc/overrides/pro/presets/UserlikePreset.php:1
2503
+ msgid "https://userlike.com/en/dashboard/um/config/um_widget/overview"
2504
  msgstr ""
2505
 
2506
  #: inc/overrides/pro/presets/UserlikePreset.php:1
2507
  msgid "Example opt-in code"
2508
  msgstr ""
2509
 
2510
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
2511
+ msgid "https://wordpress.org/plugins/userlike/"
2512
+ msgstr ""
2513
+
2514
+ #: inc/overrides/pro/presets/UserlikePreset.php:1
2515
+ msgid "Userlike WordPress Plugin"
2516
+ msgstr ""
2517
+
2518
  #: inc/overrides/pro/presets/VGWortPreset.php:1
2519
  msgid "The VG WORT sets a tracking pixel to measure accesses to texts to determine the copy probability of the text. In this way, the authors of this website participate in the payouts of VG WORT, which ensure the legal compensation for the use of copyrighted works in accordance with § 53 UrhG in Germany. Cookies are used to identify the user and, if necessary, to be able to link data from several visits of the texts."
2520
  msgstr ""
2524
  msgid "Which group the VG WORT cookie should belong to is controversial. Therefore you have to make a decision yourself.<br /><br />According to the purpose defined below, the VG WORT cookie is a service that is used for tracking and should therefore be assigned to the group \"Statistics\". According to the Cookie Directive 2002/58/EC, the economic interest of authors to participate in the payouts of VG WORT does not entitle them to set the cookie without the user's consent (essential cookie). Further information on this legal opinion can be found on the Website of %1$sIT-Recht Kanzlei (German)%2$s.<br /><br />This is countered by the claim arising from %3$s§ 53 UrhG (German law)%4$s in Germany for compensation for the use of works protected by copyright. Without a counter for all users of a website, this entitlement cannot be enforced or can only be enforced incompletely, since without a counter it is not possible to determine how many users visit a text and thus the copying probability for the use of copyrighted works cannot be determined. Therefore, VG WORT should be classified as an essential cookie.<br /><br />In order to act legally, we recommend classifying the cookie as a “Statistics\" cookie and blocking it by using a content blocker for users without consent. Pragmatically, however, this will significantly reduce or completely prevent your income from VG WORT payouts. Only by classifying the cookie as an \"essential cookie\" and no content blocker will you be able to receive the full VG WORT payouts to which you are entitled."
2525
  msgstr ""
2526
 
2527
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
2528
+ msgid "https://www.it-recht-kanzlei.de/cookies-vg-wort-einwilligungspflicht.html"
2529
+ msgstr ""
2530
+
2531
+ #: inc/overrides/pro/presets/VGWortPreset.php:1
2532
+ msgid "https://www.gesetze-im-internet.de/urhg/__53.html"
2533
+ msgstr ""
2534
+
2535
  #: inc/overrides/pro/presets/VGWortPreset.php:1
2536
  msgid "If you have been assigned a pixel-code server other than \"vg01.met.vgwort.de\" by VG WORT, please replace the cookie host."
2537
  msgstr ""
2628
  msgid "You find your Yandex Metrica Tag ID in the <a href=\"%s\" target=\"_blank\">Yandex Metrica Tags list</a>."
2629
  msgstr ""
2630
 
2631
+ #: inc/overrides/pro/presets/YandexMetricaPreset.php:1
2632
+ msgid "https://metrica.yandex.com/list/"
2633
+ msgstr ""
2634
+
2635
  #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
2636
  msgid "Zendesk Chat is a customer service tool that provides live chat for websites. The cookies are used to identify the user, associate previous messages with their chat history and collect detailed statistics on his/her behavior."
2637
  msgstr ""
2648
  msgid "You can find the Zendesk Widget Key in the Zendesk backend in Settings > Widget > Embed Web Widget as part of the JavaScript Code."
2649
  msgstr ""
2650
 
2651
+ #: inc/overrides/pro/presets/ZendeskChatPreset.php:1
2652
+ msgid "https://wordpress.org/plugins/zopim-live-chat/"
2653
+ msgstr ""
2654
+
2655
  #: inc/overrides/pro/presets/ZohoBookingsPreset.php:1
2656
  msgid "Zoho Bookings is a planning software the allows you to book book appointments on our website. The cookies are used for visitor security by preventing the faking of cross-site requests."
2657
  msgstr ""
2902
  msgstr ""
2903
 
2904
  #: inc/overrides/pro/view/TcfBanner.php:1
2905
+ msgctxt "legal-text"
2906
  msgid "In addition, you consent to the transfer of data to partners under the TCF standard for the following purposes:"
2907
  msgstr ""
2908
 
2909
  #: inc/overrides/pro/view/TcfBanner.php:1
2910
+ msgctxt "legal-text"
2911
  msgid "Vendor list"
2912
  msgstr ""
2913
 
2914
  #: inc/overrides/pro/view/TcfBanner.php:1
2915
+ msgctxt "legal-text"
2916
  msgid "Vendors"
2917
  msgstr ""
2918
 
2928
  msgstr ""
2929
 
2930
  #: inc/overrides/pro/view/TcfBanner.php:1
2931
+ msgctxt "legal-text"
2932
  msgid "Data processing on the legal basis of:"
2933
  msgstr ""
2934
 
2935
  #: inc/overrides/pro/view/TcfBanner.php:1
2936
+ msgctxt "legal-text"
2937
  msgid "No vendor requests purposes under this legal basis."
2938
  msgstr ""
2939
 
2940
  #: inc/overrides/pro/view/TcfBanner.php:1
2941
+ msgctxt "legal-text"
2942
  msgid "Non-standardized data processing"
2943
  msgstr ""
2944
 
2945
  #: inc/overrides/pro/view/TcfBanner.php:1
2946
+ msgctxt "legal-text"
2947
  msgid "Some services set cookies and/or process personal data without complying with consent communication standards. These services are divided into several groups. So-called \"essential services\" are used based on legitimate interest and cannot be opted out (an objection may have to be made by email or letter in accordance with the privacy policy), while all other services are used only after consent has been given."
2948
  msgstr ""
2949
 
2950
  #: inc/overrides/pro/view/TcfBanner.php:1
2951
+ msgctxt "legal-text"
2952
  msgid "Data processing standardized according to TCF"
2953
  msgstr ""
2954
 
2955
  #: inc/overrides/pro/view/TcfBanner.php:1
2956
+ msgctxt "legal-text"
2957
  msgid "The Transparency and Consent Framework (TCF) is a standard for obtaining consistent consent for processing of personal data and cookie setting. This should enable all parties in the digital (advertising) chain to ensure that they set, process and store data and cookies in accordance with the GDPR and the ePrivacy Directive."
2958
  msgstr ""
2959
 
2960
  #: inc/overrides/pro/view/TcfBanner.php:1
2961
+ msgctxt "legal-text"
2962
  msgid "Purposes"
2963
  msgstr ""
2964
 
2965
  #: inc/overrides/pro/view/TcfBanner.php:1
2966
+ msgctxt "legal-text"
2967
  msgid "Purposes describe for which purpose which providers may set cookies and process personal data. Purposes are pre-selected if there is a legitimate interest for its data processing. For all other purposes, data will only be processed with explicit consent."
2968
  msgstr ""
2969
 
2970
  #: inc/overrides/pro/view/TcfBanner.php:1
2971
+ msgctxt "legal-text"
2972
  msgid "Special purposes"
2973
  msgstr ""
2974
 
2975
  #: inc/overrides/pro/view/TcfBanner.php:1
2976
+ msgctxt "legal-text"
2977
  msgid "Special purposes for setting cookies and processing personal data by our vendors describe purposes for which we have a legitimate interest that cannot be rejected. For example, we need to process data to prevent fraud."
2978
  msgstr ""
2979
 
2980
  #: inc/overrides/pro/view/TcfBanner.php:1
2981
+ msgctxt "legal-text"
2982
  msgid "Features"
2983
  msgstr ""
2984
 
2985
  #: inc/overrides/pro/view/TcfBanner.php:1
2986
+ msgctxt "legal-text"
2987
  msgid "Features for processing personal data describe how data is used to fulfill one or more purposes. Features cannot be opted out, but in the \"Purposes\" section, purposes that lead to the use of features can be selected or deselected. Any purpose can lead to features being used."
2988
  msgstr ""
2989
 
2990
  #: inc/overrides/pro/view/TcfBanner.php:1
2991
+ msgctxt "legal-text"
2992
  msgid "Special features"
2993
  msgstr ""
2994
 
2995
  #: inc/overrides/pro/view/TcfBanner.php:1
2996
+ msgctxt "legal-text"
2997
  msgid "Special features for processing personal data describe how data is used to fulfill one or more purposes in a profound way. Personal data will only be processed in this way with explicit consent."
2998
  msgstr ""
2999
 
3216
  msgid "When loading Google Fonts, personal data of your visitors is transferred to Google, which is why you need consent. Real Cookie Banner has to check the consent before loading Google Fonts (if there is a consent), which takes a few milliseconds per page view. As a result, you will inevitably notice a small flickering effect (font replacement after a few milliseconds) on your website."
3217
  msgstr ""
3218
 
3219
+ #. translators:
3220
+ #: inc/presets/free/GoogleFontsPreset.php:1
3221
+ msgid "We therefore recommend <a href=\"%s\" target=\"_blank\">replacing Google Fonts with locally hosted fonts</a> when possible, rather than asking for consent. We explained how this works in our blog!"
3222
+ msgstr ""
3223
+
3224
  #: inc/presets/free/GoogleFontsPreset.php:1
3225
+ msgid "https://devowl.io/2022/google-fonts-wordpress-gdpr/"
3226
  msgstr ""
3227
 
3228
  #: inc/presets/free/GravatarPreset.php:1
3270
  msgid "Please note that if this service is enabled, the \"Save my name, email, and website in this browser for the next time I comment.\" checkbox in the comment form will disappear. Real Cookie Banner handles the consent to set the cookies as part of the overall cookie consent. The commentary system uses the Gravatar service to display avatars of commentators. You must also create a service for Gravatar as well."
3271
  msgstr ""
3272
 
3273
+ #. translators:
3274
+ #: inc/presets/free/WordPressCommentsPreset.php:1
3275
+ msgid "Do you want to use the comment feature on your website at all? If not, we explain in our blog <a href=\"%s\" target=\"_blank\"> how to disable comments in WordPress</a>. Then you can also avoid this consent!"
3276
+ msgstr ""
3277
+
3278
  #: inc/presets/free/WordPressCommentsPreset.php:1
3279
+ msgid "https://devowl.io/2022/deactivate-wordpress-comments/"
3280
  msgstr ""
3281
 
3282
  #: inc/presets/free/WordPressEmojisPreset.php:1
3291
  msgid "Almost all browsers and operating systems released after 2015 can easily display emojis without the WordPressa Emoji Script (for which you must obtain this consent)."
3292
  msgstr ""
3293
 
3294
+ #. translators:
3295
+ #: inc/presets/free/WordPressEmojisPreset.php:1
3296
+ msgid "Unless you need to support particularly old browsers and operating systems, we recommend that you <a href=\"%s\" target=\"_blank\">disable the WordPress emoji script</a> rather than asking for consent. How to do that, we have explained in our blog!"
3297
+ msgstr ""
3298
+
3299
  #: inc/presets/free/WordPressEmojisPreset.php:1
3300
+ msgid "https://devowl.io/2022/disable-emojis-wordpress/"
3301
  msgstr ""
3302
 
3303
  #: inc/presets/free/WordPressPluginEmbed.php:1
3493
  msgstr ""
3494
 
3495
  #: inc/presets/UpdateNotice.php:1
3496
+ msgid "Changes have been made to the templates you use in Real Cookie Banner. You should review the proposed changes and adjust your services if necessary to be able to remain legally compliant. The following services are affected:"
3497
  msgstr ""
3498
 
3499
  #: inc/presets/UpdateNotice.php:1
3501
  msgstr ""
3502
 
3503
  #: inc/presets/UpdateNotice.php:1
3504
+ msgid "Review changes"
 
 
 
 
 
 
 
 
3505
  msgstr ""
3506
 
3507
  #: inc/presets/UpdateNotice.php:1
3561
  msgstr ""
3562
 
3563
  #: inc/settings/CookieGroup.php:1
3564
+ msgctxt "legal-text"
3565
  msgid "Essential services are required for the basic functionality of the website. They only contain technically necessary services. These services cannot be objected to."
3566
  msgstr ""
3567
 
3568
  #: inc/settings/CookieGroup.php:1
3569
+ msgctxt "legal-text"
3570
+ msgid "Functional services are necessary to provide features beyond the essential functionality such as prettier fonts, video playback or interactive web 2.0 features. Content from e.g. video platforms and social media platforms are blocked by default, and can be consented to. If the service is agreed to, this content is loaded automatically without further manual consent."
3571
  msgstr ""
3572
 
3573
  #: inc/settings/CookieGroup.php:1
3574
+ msgctxt "legal-text"
3575
  msgid "Statistics services are needed to collect pseudonymous data about the visitors of the website. The data enables us to understand visitors better and to optimize the website."
3576
  msgstr ""
3577
 
3578
  #: inc/settings/CookieGroup.php:1
3579
+ msgctxt "legal-text"
3580
  msgid "Marketing services are used by us and third parties to track the behaviour of individual visitors (across multiple pages), analyse the data collected and, for example, display personalized advertisements. These services enable us to track visitors across multiple websites."
3581
  msgstr ""
3582
 
3687
  msgstr ""
3688
 
3689
  #: inc/view/checklist/SaveSettings.php:1
3690
+ msgid "Decide which features should be enabled in your cookie banner depending on your needs."
3691
  msgstr ""
3692
 
3693
  #: inc/view/checklist/SaveSettings.php:1
3699
  msgstr ""
3700
 
3701
  #: inc/view/checklist/Scanner.php:1
3702
+ msgid "Scan your website to identify services used and external URLs that may transmit personal data and/or set cookies."
3703
  msgstr ""
3704
 
3705
  #: inc/view/checklist/Scanner.php:1
3711
  msgstr ""
3712
 
3713
  #: inc/view/checklist/Shortcode.php:1
3714
+ msgid "Your website visitors must be able to view their consent history, change their consent, or withdraw their consent at any time. This must be as easy as giving consent. Therefore, the legal links must be included on every subpage of the website (e.g. in the footer)."
3715
  msgstr ""
3716
 
3717
  #: inc/view/checklist/Shortcode.php:1
3759
  msgid "Enabled"
3760
  msgstr ""
3761
 
3762
+ #: inc/view/customize/banner/BasicLayout.php:1
3763
+ msgid "The animation you choose will have a negative impact on your PageSpeed Insights score. Please choose an animation where the cookie banner is animated from outside the website to achieve the best website loading speed!"
3764
+ msgstr ""
3765
+
3766
  #: inc/view/customize/banner/BasicLayout.php:1
3767
  msgid "Basic Layout"
3768
  msgstr ""
3860
  msgid "Animation on display"
3861
  msgstr ""
3862
 
3863
+ #: inc/view/customize/banner/BasicLayout.php:1
3864
+ #: inc/view/customize/banner/BasicLayout.php:1
3865
+ #: inc/view/customize/banner/BodyDesign.php:1
3866
+ #: inc/view/customize/banner/BodyDesign.php:1
3867
+ #: inc/view/customize/banner/BodyDesign.php:1
3868
+ #: inc/view/customize/banner/individual/SaveButton.php:1
3869
+ msgid "Type"
3870
+ msgstr ""
3871
+
3872
+ #: inc/view/customize/banner/BasicLayout.php:1
3873
+ #: inc/view/customize/banner/BasicLayout.php:1
3874
+ msgid "Duration"
3875
+ msgstr ""
3876
+
3877
  #: inc/view/customize/banner/BasicLayout.php:1
3878
  #: inc/view/customize/banner/BasicLayout.php:1
3879
  msgid "Animation only on mobile devices"
4087
  msgid "Use the same stylings as for \"Accept all\""
4088
  msgstr ""
4089
 
4090
+ #. translators:
4091
  #: inc/view/customize/banner/BodyDesign.php:1
4092
  #: inc/view/customize/banner/individual/SaveButton.php:1
4093
+ msgid "According to the <a href=\"%s\" target=\"_blank\">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Equivalent does not necessarily mean that the buttons/links must look exactly the same. However, you should be safest if they look exactly the same."
4094
  msgstr ""
4095
 
4096
  #: inc/view/customize/banner/BodyDesign.php:1
4155
  msgstr ""
4156
 
4157
  #: inc/view/customize/banner/Decision.php:1
 
 
4158
  msgid "Accept all"
4159
  msgstr ""
4160
 
4161
  #. translators:
4162
  #: inc/view/customize/banner/Decision.php:1
4163
+ msgid "According to the %1$sGDPR recital 32%2$s, you are not allowed to pre-select services in the form of pre-selected checkboxes for the visitor. However, the GDPR and ePrivacy Directive do not prohibit the use of a button to agree to all services, if there is also a button to agree only to the essential services or to make a user-defined selection."
4164
+ msgstr ""
4165
+
4166
+ #: inc/view/customize/banner/Decision.php:1
4167
+ msgid "https://gdpr-info.eu/recitals/no-32/"
4168
  msgstr ""
4169
 
4170
  #: inc/view/customize/banner/Decision.php:1
4183
  msgstr ""
4184
 
4185
  #: inc/view/customize/banner/Decision.php:1
 
 
4186
  msgid "Continue without consent"
4187
  msgstr ""
4188
 
4199
  msgstr ""
4200
 
4201
  #: inc/view/customize/banner/Decision.php:1
 
 
4202
  msgid "Individual privacy preferences"
4203
  msgstr ""
4204
 
4205
  #: inc/view/customize/banner/Decision.php:1
4206
+ msgid "According to the GDPR and the ePrivacy Directive, the user must be free to choose which services to use and be informed about their purpose before giving consent. Therefore, the user must be given the opportunity to access the page with the individual privacy settings."
4207
  msgstr ""
4208
 
4209
  #: inc/view/customize/banner/Decision.php:1
4210
  msgid "Order of the buttons"
4211
  msgstr ""
4212
 
4213
+ #. translators:
4214
  #: inc/view/customize/banner/Decision.php:1
4215
+ msgid "According to the <a href=\"%s\" target=\"_blank\">guidance of the data protection authorities in Germany (German)</a>, there must be an equivalent way for your visitors to express their choice (agree to everything, continue without consent or an indivudual decision). Which order of options is considered equivalent is unclear. Therefore, the options should be arranged according to the cultural conditions of the main target country."
4216
  msgstr ""
4217
 
4218
  #: inc/view/customize/banner/Decision.php:1
4243
  msgid "Text of \"Accept all\" changes when user changes selection"
4244
  msgstr ""
4245
 
4246
+ #: inc/view/customize/banner/Decision.php:1
4247
+ #: inc/view/customize/banner/Texts.php:1
4248
+ msgctxt "legal-text"
4249
+ msgid "Accept all"
4250
+ msgstr ""
4251
+
4252
+ #: inc/view/customize/banner/Decision.php:1
4253
+ #: inc/view/customize/banner/Texts.php:1
4254
+ msgctxt "legal-text"
4255
+ msgid "Continue without consent"
4256
+ msgstr ""
4257
+
4258
  #: inc/view/customize/banner/Decision.php:1
4259
  #: inc/view/customize/banner/individual/Texts.php:1
4260
+ msgctxt "legal-text"
4261
+ msgid "Individual privacy preferences"
4262
+ msgstr ""
4263
+
4264
+ #: inc/view/customize/banner/Decision.php:1
4265
+ #: inc/view/customize/banner/individual/Texts.php:1
4266
+ msgctxt "legal-text"
4267
  msgid "Save custom choices"
4268
  msgstr ""
4269
 
4487
 
4488
  #: inc/view/customize/banner/individual/Texts.php:1
4489
  #: inc/view/customize/banner/Texts.php:1
4490
+ msgctxt "legal-text"
4491
  msgid "We use cookies and similar technologies on our website and process your personal data (e.g. IP address), for example, to personalize content and ads, to integrate media from third-party providers or to analyze traffic on our website. Data processing may also happen as a result of cookies being set. We share this data with third parties that we name in the privacy settings."
4492
  msgstr ""
4493
 
4494
  #: inc/view/customize/banner/individual/Texts.php:1
4495
  #: inc/view/customize/banner/Texts.php:1
4496
+ msgctxt "legal-text"
4497
  msgid "The data processing may take place with your consent or on the basis of a legitimate interest, which you can object to in the privacy settings. You have the right not to consent and to change or revoke your consent at a later time. For more information on the use of your data, please visit our {{privacyPolicy}}privacy policy{{/privacyPolicy}}."
4498
  msgstr ""
4499
 
4500
  #: inc/view/customize/banner/individual/Texts.php:1
4501
+ msgctxt "legal-text"
4502
  msgid "Below you will find an overview of all services used by this website. You can view detailed information about each service and agree to them individually or exercise your right to object."
4503
  msgstr ""
4504
 
4505
  #: inc/view/customize/banner/individual/Texts.php:1
4506
+ msgctxt "legal-text"
4507
  msgid "Show service information"
4508
  msgstr ""
4509
 
4510
  #: inc/view/customize/banner/individual/Texts.php:1
4511
+ msgctxt "legal-text"
4512
  msgid "Hide service information"
4513
  msgstr ""
4514
 
4632
  msgstr ""
4633
 
4634
  #: inc/view/customize/banner/Texts.php:1
4635
+ msgid "US data processing"
4636
  msgstr ""
4637
 
4638
  #: inc/view/customize/banner/Texts.php:1
4695
  msgid "Additional info below the \"Load content\" button"
4696
  msgstr ""
4697
 
4698
+ #. translators:
4699
+ #: inc/view/customize/banner/Texts.php:1
4700
+ msgid "The standard texts in the cookie banner are worded carefully. If you customize them, make sure they are not misleading or riveting. According to the <a href=\"%s\" target=\"_blank\">Data Protection Commissioner of Baden-Württeberg, Germany (Section B, 1.3.7.; German)</a>, for example, a headline \"We love cookies\" is already misleading."
4701
+ msgstr ""
4702
+
4703
  #: inc/view/customize/banner/Texts.php:1
4704
+ msgid "https://www.baden-wuerttemberg.datenschutz.de/faq-zu-cookies-und-tracking-2/#13_informiertheit)"
4705
  msgstr ""
4706
 
4707
  #. translators:
4725
  msgstr ""
4726
 
4727
  #: inc/view/customize/banner/Texts.php:1
4728
+ msgctxt "legal-text"
4729
  msgid "Privacy preferences"
4730
  msgstr ""
4731
 
4732
  #: inc/view/customize/banner/Texts.php:1
4733
+ msgctxt "legal-text"
4734
  msgid "Set privacy settings individually"
4735
  msgstr ""
4736
 
4737
  #: inc/view/customize/banner/Texts.php:1
4738
+ msgctxt "legal-text"
4739
  msgid "Some services process personal data in the USA. By consenting to the use of these services, you also consent to the processing of your data in the USA in accordance with Art. 49 (1) lit. a GDPR. The USA is considered by the ECJ to be a country with an insufficient level of data protection according to EU standards. In particular, there is a risk that your data will be processed by US authorities for control and monitoring purposes, perhaps without the possibility of a legal recourse."
4740
  msgstr ""
4741
 
4742
  #: inc/view/customize/banner/Texts.php:1
4743
+ msgctxt "legal-text"
4744
  msgid "You are under 16 years old? Then you cannot consent to optional services. Ask your parents or legal guardians to agree to these services with you."
4745
  msgstr ""
4746
 
4747
  #: inc/view/customize/banner/Texts.php:1
4748
+ msgctxt "legal-text"
4749
  msgid "You are under 16 years old? Unfortunately, you are not permitted to consent to this service to view this content. Please ask your parents or guardians to agree to the service with you!"
4750
  msgstr ""
4751
 
4752
  #: inc/view/customize/banner/Texts.php:1
4753
+ msgctxt "legal-text"
4754
  msgid "By accepting all services, you allow {{services}} to be loaded. These services are divided into groups {{serviceGroups}} according to their purpose (belonging marked with superscript numbers)."
4755
  msgstr ""
4756
 
4757
  #: inc/view/customize/banner/Texts.php:1
4758
+ msgctxt "legal-text"
4759
  msgid "Your consent is also applicable on {{websites}}."
4760
  msgstr ""
4761
 
4762
  #. translators:
4763
  #: inc/view/customize/banner/Texts.php:1
4764
  #: inc/view/customize/banner/Texts.php:1
4765
+ msgctxt "legal-text"
4766
  msgid "{{name}} blocked due to privacy settings"
4767
  msgstr ""
4768
 
4769
  #. translators:
4770
  #: inc/view/customize/banner/Texts.php:1
4771
  #: inc/view/customize/banner/Texts.php:1
4772
+ msgctxt "legal-text"
4773
  msgid "Show all services you still need to agree to"
4774
  msgstr ""
4775
 
4776
  #: inc/view/customize/banner/Texts.php:1
4777
  #: inc/view/customize/banner/Texts.php:1
4778
+ msgctxt "legal-text"
4779
  msgid "Accept required services and load content"
4780
  msgstr ""
4781
 
4782
  #: inc/view/customize/banner/Texts.php:1
4783
  #: inc/view/customize/banner/Texts.php:1
4784
+ msgctxt "legal-text"
4785
  msgid "Loading the blocked content will adjust your privacy settings. Content from this service will not be blocked in the future. You have the right to revoke or change your decision at any time."
4786
  msgstr ""
4787
 
4815
 
4816
  #: inc/view/navmenu/NavMenuLinks.php:1
4817
  #: inc/view/navmenu/NavMenuLinks.php:1
4818
+ msgctxt "legal-text"
4819
  msgid "Change privacy settings"
4820
  msgstr ""
4821
 
4822
  #: inc/view/navmenu/NavMenuLinks.php:1
4823
  #: inc/view/navmenu/NavMenuLinks.php:1
4824
+ msgctxt "legal-text"
4825
  msgid "Privacy settings history"
4826
  msgstr ""
4827
 
4828
  #: inc/view/navmenu/NavMenuLinks.php:1
4829
  #: inc/view/navmenu/NavMenuLinks.php:1
4830
+ msgctxt "legal-text"
4831
  msgid "Revoke consents"
4832
  msgstr ""
4833
 
4834
  #: inc/view/navmenu/NavMenuLinks.php:1
4835
+ msgctxt "legal-text"
4836
  msgid "You have successfully revoked the consent. The page will be reloaded now."
4837
  msgstr ""
4838
 
public/dist/164.lite.js ADDED
@@ -0,0 +1,2 @@
 
 
1
+ "use strict";(self.webpackChunkrealCookieBanner_name_=self.webpackChunkrealCookieBanner_name_||[]).push([[164],{4290:(e,t,n)=>{n.d(t,{Z:()=>i});var a=n(7363);const r={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"}}]},name:"delete",theme:"outlined"};var o=n(3751),c=function(e,t){return a.createElement(o.Z,Object.assign({},e,{ref:t,icon:r}))};c.displayName="DeleteOutlined";const i=a.forwardRef(c)},9161:(e,t,n)=>{n.d(t,{Z:()=>i});var a=n(7363);const r={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M400 317.7h73.9V656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V317.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 163a8 8 0 00-12.6 0l-112 141.7c-4.1 5.3-.4 13 6.3 13zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"}}]},name:"upload",theme:"outlined"};var o=n(3751),c=function(e,t){return a.createElement(o.Z,Object.assign({},e,{ref:t,icon:r}))};c.displayName="UploadOutlined";const i=a.forwardRef(c)},3735:(e,t,n)=>{n.d(t,{Z:()=>h});var a=n(63),r=n(4741),o=n(7363),c=n(2286),i=n.n(c),l=n(733),s=n(4178);const u=function(e){var t=e.prefixCls,n=e.className,c=e.hoverable,l=void 0===c||c,u=function(e,t){var n={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(n[a[r]]=e[a[r]])}return n}(e,["prefixCls","className","hoverable"]);return o.createElement(s.C,null,(function(e){var c=(0,e.getPrefixCls)("card",t),s=i()("".concat(c,"-grid"),n,(0,a.Z)({},"".concat(c,"-grid-hoverable"),l));return o.createElement("div",(0,r.Z)({},u,{className:s}))}))};var d=n(9440),p=n(5489),f=n(8503),m=n(8533),v=function(e){var t,n,c,v=o.useContext(s.E_),h=v.getPrefixCls,y=v.direction,g=o.useContext(m.Z),b=e.prefixCls,w=e.className,Z=e.extra,E=e.headStyle,C=void 0===E?{}:E,x=e.bodyStyle,k=void 0===x?{}:x,N=e.title,O=e.loading,P=e.bordered,I=void 0===P||P,R=e.size,D=e.type,F=e.cover,j=e.actions,S=e.tabList,L=e.children,M=e.activeTabKey,U=e.defaultActiveTabKey,T=e.tabBarExtraContent,z=e.hoverable,_=e.tabProps,H=void 0===_?{}:_,V=function(e,t){var n={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(n[a[r]]=e[a[r]])}return n}(e,["prefixCls","className","extra","headStyle","bodyStyle","title","loading","bordered","size","type","cover","actions","tabList","children","activeTabKey","defaultActiveTabKey","tabBarExtraContent","hoverable","tabProps"]),A=h("card",b),B=0===k.padding||"0px"===k.padding?{padding:24}:void 0,q=o.createElement("div",{className:"".concat(A,"-loading-block")}),K=o.createElement("div",{className:"".concat(A,"-loading-content"),style:B},o.createElement(p.Z,{gutter:8},o.createElement(f.Z,{span:22},q)),o.createElement(p.Z,{gutter:8},o.createElement(f.Z,{span:8},q),o.createElement(f.Z,{span:15},q)),o.createElement(p.Z,{gutter:8},o.createElement(f.Z,{span:6},q),o.createElement(f.Z,{span:18},q)),o.createElement(p.Z,{gutter:8},o.createElement(f.Z,{span:13},q),o.createElement(f.Z,{span:9},q)),o.createElement(p.Z,{gutter:8},o.createElement(f.Z,{span:4},q),o.createElement(f.Z,{span:3},q),o.createElement(f.Z,{span:16},q))),$=void 0!==M,G=(0,r.Z)((0,r.Z)({},H),(t={},(0,a.Z)(t,$?"activeKey":"defaultActiveKey",$?M:U),(0,a.Z)(t,"tabBarExtraContent",T),t)),W=S&&S.length?o.createElement(d.Z,(0,r.Z)({size:"large"},G,{className:"".concat(A,"-head-tabs"),onChange:function(t){var n;null===(n=e.onTabChange)||void 0===n||n.call(e,t)}}),S.map((function(e){return o.createElement(d.Z.TabPane,{tab:e.tab,disabled:e.disabled,key:e.key})}))):null;(N||Z||W)&&(c=o.createElement("div",{className:"".concat(A,"-head"),style:C},o.createElement("div",{className:"".concat(A,"-head-wrapper")},N&&o.createElement("div",{className:"".concat(A,"-head-title")},N),Z&&o.createElement("div",{className:"".concat(A,"-extra")},Z)),W));var X,J=F?o.createElement("div",{className:"".concat(A,"-cover")},F):null,Q=o.createElement("div",{className:"".concat(A,"-body"),style:k},O?K:L),Y=j&&j.length?o.createElement("ul",{className:"".concat(A,"-actions")},function(e){return e.map((function(t,n){return o.createElement("li",{style:{width:"".concat(100/e.length,"%")},key:"action-".concat(n)},o.createElement("span",null,t))}))}(j)):null,ee=(0,l.Z)(V,["onTabChange"]),te=R||g,ne=i()(A,(n={},(0,a.Z)(n,"".concat(A,"-loading"),O),(0,a.Z)(n,"".concat(A,"-bordered"),I),(0,a.Z)(n,"".concat(A,"-hoverable"),z),(0,a.Z)(n,"".concat(A,"-contain-grid"),(o.Children.forEach(e.children,(function(e){e&&e.type&&e.type===u&&(X=!0)})),X)),(0,a.Z)(n,"".concat(A,"-contain-tabs"),S&&S.length),(0,a.Z)(n,"".concat(A,"-").concat(te),te),(0,a.Z)(n,"".concat(A,"-type-").concat(D),!!D),(0,a.Z)(n,"".concat(A,"-rtl"),"rtl"===y),n),w);return o.createElement("div",(0,r.Z)({},ee,{className:ne}),c,J,Q,Y)};v.Grid=u,v.Meta=function(e){return o.createElement(s.C,null,(function(t){var n=t.getPrefixCls,a=e.prefixCls,c=e.className,l=e.avatar,s=e.title,u=e.description,d=function(e,t){var n={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(n[a[r]]=e[a[r]])}return n}(e,["prefixCls","className","avatar","title","description"]),p=n("card",a),f=i()("".concat(p,"-meta"),c),m=l?o.createElement("div",{className:"".concat(p,"-meta-avatar")},l):null,v=s?o.createElement("div",{className:"".concat(p,"-meta-title")},s):null,h=u?o.createElement("div",{className:"".concat(p,"-meta-description")},u):null,y=v||h?o.createElement("div",{className:"".concat(p,"-meta-detail")},v,h):null;return o.createElement("div",(0,r.Z)({},d,{className:f}),m,y)}))};const h=v},6478:(e,t,n)=>{n.d(t,{Z:()=>w});var a=n(4741),r=n(63),o=n(7363),c=n(7228),i=n(4115),l=n(2286),s=n.n(l),u=n(8833),d=n(5065),p=o.forwardRef((function(e,t){var n,a=e.prefixCls,l=void 0===a?"rc-switch":a,p=e.className,f=e.checked,m=e.defaultChecked,v=e.disabled,h=e.loadingIcon,y=e.checkedChildren,g=e.unCheckedChildren,b=e.onClick,w=e.onChange,Z=e.onKeyDown,E=(0,i.Z)(e,["prefixCls","className","checked","defaultChecked","disabled","loadingIcon","checkedChildren","unCheckedChildren","onClick","onChange","onKeyDown"]),C=(0,u.Z)(!1,{value:f,defaultValue:m}),x=(0,c.Z)(C,2),k=x[0],N=x[1];function O(e,t){var n=k;return v||(N(n=e),null==w||w(n,t)),n}var P=s()(l,p,(n={},(0,r.Z)(n,"".concat(l,"-checked"),k),(0,r.Z)(n,"".concat(l,"-disabled"),v),n));return o.createElement("button",Object.assign({},E,{type:"button",role:"switch","aria-checked":k,disabled:v,className:P,ref:t,onKeyDown:function(e){e.which===d.Z.LEFT?O(!1,e):e.which===d.Z.RIGHT&&O(!0,e),null==Z||Z(e)},onClick:function(e){var t=O(!k,e);null==b||b(t,e)}}),h,o.createElement("span",{className:"".concat(l,"-inner")},k?y:g))}));p.displayName="Switch";const f=p;var m=n(8258),v=n(2787),h=n(4178),y=n(8533),g=n(7139),b=o.forwardRef((function(e,t){var n,c=e.prefixCls,i=e.size,l=e.loading,u=e.className,d=void 0===u?"":u,p=e.disabled,b=function(e,t){var n={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(n[a[r]]=e[a[r]])}return n}(e,["prefixCls","size","loading","className","disabled"]);(0,g.Z)("checked"in b||!("value"in b),"Switch","`value` is not a valid prop, do you mean `checked`?");var w=o.useContext(h.E_),Z=w.getPrefixCls,E=w.direction,C=o.useContext(y.Z),x=Z("switch",c),k=o.createElement("div",{className:"".concat(x,"-handle")},l&&o.createElement(m.Z,{className:"".concat(x,"-loading-icon")})),N=s()((n={},(0,r.Z)(n,"".concat(x,"-small"),"small"===(i||C)),(0,r.Z)(n,"".concat(x,"-loading"),l),(0,r.Z)(n,"".concat(x,"-rtl"),"rtl"===E),n),d);return o.createElement(v.Z,{insertExtraNode:!0},o.createElement(f,(0,a.Z)({},b,{prefixCls:x,className:N,disabled:p||l,ref:t,loadingIcon:k})))}));b.__ANT_SWITCH=!0,b.displayName="Switch";const w=b},1186:(e,t,n)=>{n.d(t,{Z:()=>Ce});var a=n(63),r=n(4741),o=n(3429),c=n(7870),i=n(7228),l=n(5450),s=n.n(l),u=n(7363),d=n.n(u),p=n(6762),f=n(3340),m=n(3841),v=n(5952),h=n(4115),y=n(7938),g=n(2286),b=n.n(g),w=n(3622);function Z(e){var t=e.responseText||e.response;if(!t)return t;try{return JSON.parse(t)}catch(e){return t}}function E(e){var t=new XMLHttpRequest;e.onProgress&&t.upload&&(t.upload.onprogress=function(t){t.total>0&&(t.percent=t.loaded/t.total*100),e.onProgress(t)});var n=new FormData;e.data&&Object.keys(e.data).forEach((function(t){var a=e.data[t];Array.isArray(a)?a.forEach((function(e){n.append("".concat(t,"[]"),e)})):n.append(t,e.data[t])})),e.file instanceof Blob?n.append(e.filename,e.file,e.file.name):n.append(e.filename,e.file),t.onerror=function(t){e.onError(t)},t.onload=function(){return t.status<200||t.status>=300?e.onError(function(e,t){var n="cannot ".concat(e.method," ").concat(e.action," ").concat(t.status,"'"),a=new Error(n);return a.status=t.status,a.method=e.method,a.url=e.action,a}(e,t),Z(t)):e.onSuccess(Z(t),t)},t.open(e.method,e.action,!0),e.withCredentials&&"withCredentials"in t&&(t.withCredentials=!0);var a=e.headers||{};return null!==a["X-Requested-With"]&&t.setRequestHeader("X-Requested-With","XMLHttpRequest"),Object.keys(a).forEach((function(e){null!==a[e]&&t.setRequestHeader(e,a[e])})),t.send(n),{abort:function(){t.abort()}}}var C=+new Date,x=0;function k(){return"rc-upload-".concat(C,"-").concat(++x)}const N=function(e,t){if(e&&t){var n=Array.isArray(t)?t:t.split(","),a=e.name||"",r=e.type||"",o=r.replace(/\/.*$/,"");return n.some((function(e){var t,n,c=e.trim();return!!/^\*(\/\*)?$/.test(e)||("."===c.charAt(0)?(t=a.toLowerCase(),n=c.toLowerCase(),-1!==t.indexOf(n,t.length-n.length)):/\/\*$/.test(c)?o===c.replace(/\/.*$/,""):r===c)}))}return!0},O=function(e,t,n){var a=function e(a,r){a.path=r||"",a.isFile?a.file((function(e){n(e)&&(a.fullPath&&!e.webkitRelativePath&&(Object.defineProperties(e,{webkitRelativePath:{writable:!0}}),e.webkitRelativePath=a.fullPath.replace(/^\//,""),Object.defineProperties(e,{webkitRelativePath:{writable:!1}})),t([e]))})):a.isDirectory&&function(e,t){var n=e.createReader(),a=[];!function e(){n.readEntries((function(n){var r=Array.prototype.slice.apply(n);a=a.concat(r),r.length?e():t(a)}))}()}(a,(function(t){t.forEach((function(t){e(t,"".concat(r).concat(a.name,"/"))}))}))};e.forEach((function(e){a(e.webkitGetAsEntry())}))},P=function(e){(0,m.Z)(n,e);var t=(0,v.Z)(n);function n(){var e;return(0,p.Z)(this,n),(e=t.apply(this,arguments)).state={uid:k()},e.reqs={},e.onChange=function(t){var n=t.target.files,a=(0,c.Z)(n).filter((function(t){return N(t,e.props.accept)}));e.uploadFiles(a),e.reset()},e.onClick=function(t){var n=e.fileInput;if(n){var a=e.props,r=a.children,o=a.onClick;if(r&&"button"===r.type){var c=n.parentNode;c.focus(),c.querySelector("button").blur()}n.click(),o&&o(t)}},e.onKeyDown=function(t){"Enter"===t.key&&e.onClick(t)},e.onFileDrop=function(t){var n=e.props.multiple;if(t.preventDefault(),"dragover"!==t.type)if(e.props.directory)O(Array.prototype.slice.call(t.dataTransfer.items),e.uploadFiles,(function(t){return N(t,e.props.accept)}));else{var a=(0,c.Z)(t.dataTransfer.files).filter((function(t){return N(t,e.props.accept)}));!1===n&&(a=a.slice(0,1)),e.uploadFiles(a)}},e.uploadFiles=function(t){var n=(0,c.Z)(t),a=n.map((function(t){return t.uid=k(),e.processFile(t,n)}));Promise.all(a).then((function(t){var n=e.props.onBatchStart;null==n||n(t.map((function(e){return{file:e.origin,parsedFile:e.parsedFile}}))),t.filter((function(e){return null!==e.parsedFile})).forEach((function(t){e.post(t)}))}))},e.processFile=function(){var t=(0,y.Z)(s().mark((function t(n,a){var r,c,i,l,u,d,p,f,m;return s().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=e.props.beforeUpload,c=n,!r){t.next=14;break}return t.prev=3,t.next=6,r(n,a);case 6:c=t.sent,t.next=12;break;case 9:t.prev=9,t.t0=t.catch(3),c=!1;case 12:if(!1!==c){t.next=14;break}return t.abrupt("return",{origin:n,parsedFile:null,action:null,data:null});case 14:if("function"!=typeof(i=e.props.action)){t.next=21;break}return t.next=18,i(n);case 18:l=t.sent,t.next=22;break;case 21:l=i;case 22:if("function"!=typeof(u=e.props.data)){t.next=29;break}return t.next=26,u(n);case 26:d=t.sent,t.next=30;break;case 29:d=u;case 30:return p="object"!==(0,o.Z)(c)&&"string"!=typeof c||!c?n:c,f=p instanceof File?p:new File([p],n.name,{type:n.type}),(m=f).uid=n.uid,t.abrupt("return",{origin:n,data:d,parsedFile:m,action:l});case 35:case"end":return t.stop()}}),t,null,[[3,9]])})));return function(e,n){return t.apply(this,arguments)}}(),e.saveFileInput=function(t){e.fileInput=t},e}return(0,f.Z)(n,[{key:"componentDidMount",value:function(){this._isMounted=!0}},{key:"componentWillUnmount",value:function(){this._isMounted=!1,this.abort()}},{key:"post",value:function(e){var t=this,n=e.data,a=e.origin,r=e.action,o=e.parsedFile;if(this._isMounted){var c=this.props,i=c.onStart,l=c.customRequest,s=c.name,u=c.headers,d=c.withCredentials,p=c.method,f=a.uid,m=l||E,v={action:r,filename:s,data:n,file:o,headers:u,withCredentials:d,method:p||"post",onProgress:function(e){var n=t.props.onProgress;null==n||n(e,o)},onSuccess:function(e,n){var a=t.props.onSuccess;null==a||a(e,o,n),delete t.reqs[f]},onError:function(e,n){var a=t.props.onError;null==a||a(e,n,o),delete t.reqs[f]}};i(a),this.reqs[f]=m(v)}}},{key:"reset",value:function(){this.setState({uid:k()})}},{key:"abort",value:function(e){var t=this.reqs;if(e){var n=e.uid?e.uid:e;t[n]&&t[n].abort&&t[n].abort(),delete t[n]}else Object.keys(t).forEach((function(e){t[e]&&t[e].abort&&t[e].abort(),delete t[e]}))}},{key:"render",value:function(){var e,t=this.props,n=t.component,o=t.prefixCls,c=t.className,i=t.disabled,l=t.id,s=t.style,u=t.multiple,p=t.accept,f=t.children,m=t.directory,v=t.openFileDialogOnClick,y=t.onMouseEnter,g=t.onMouseLeave,Z=t.capture,E=(0,h.Z)(t,["component","prefixCls","className","disabled","id","style","multiple","accept","children","directory","openFileDialogOnClick","onMouseEnter","onMouseLeave","capture"]),C=b()((e={},(0,a.Z)(e,o,!0),(0,a.Z)(e,"".concat(o,"-disabled"),i),(0,a.Z)(e,c,c),e)),x=m?{directory:"directory",webkitdirectory:"webkitdirectory"}:{},k=i?{}:{onClick:v?this.onClick:function(){},onKeyDown:v?this.onKeyDown:function(){},onMouseEnter:y,onMouseLeave:g,onDrop:this.onFileDrop,onDragOver:this.onFileDrop,tabIndex:"0"};return d().createElement(n,(0,r.Z)({},k,{className:C,role:"button",style:s}),d().createElement("input",(0,r.Z)({},(0,w.Z)(E,{aria:!0,data:!0}),{id:l,type:"file",ref:this.saveFileInput,onClick:function(e){return e.stopPropagation()},key:this.state.uid,style:{display:"none"},accept:p},x,{multiple:u,onChange:this.onChange},null!=Z?{capture:Z}:{})),f)}}]),n}(u.Component);function I(){}var R=function(e){(0,m.Z)(n,e);var t=(0,v.Z)(n);function n(){var e;return(0,p.Z)(this,n),(e=t.apply(this,arguments)).saveUploader=function(t){e.uploader=t},e}return(0,f.Z)(n,[{key:"abort",value:function(e){this.uploader.abort(e)}},{key:"render",value:function(){return d().createElement(P,(0,r.Z)({},this.props,{ref:this.saveUploader}))}}]),n}(u.Component);R.defaultProps={component:"span",prefixCls:"rc-upload",data:{},headers:{},name:"file",multipart:!1,onStart:I,onError:I,onSuccess:I,multiple:!1,beforeUpload:null,customRequest:null,withCredentials:!1,openFileDialogOnClick:!0};const D=R;var F=n(8833),j=function(e,t){var n=e.style,a=e.height,o=function(e,t){var n={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(n[a[r]]=e[a[r]])}return n}(e,["style","height"]);return u.createElement(Ee,(0,r.Z)({ref:t},o,{type:"drag",style:(0,r.Z)((0,r.Z)({},n),{height:a})}))},S=u.forwardRef(j);S.displayName="Dragger";const L=S;var M=n(9064),U=n(8258);const T={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M779.3 196.6c-94.2-94.2-247.6-94.2-341.7 0l-261 260.8c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l261-260.8c32.4-32.4 75.5-50.2 121.3-50.2s88.9 17.8 121.2 50.2c32.4 32.4 50.2 75.5 50.2 121.2 0 45.8-17.8 88.8-50.2 121.2l-266 265.9-43.1 43.1c-40.3 40.3-105.8 40.3-146.1 0-19.5-19.5-30.2-45.4-30.2-73s10.7-53.5 30.2-73l263.9-263.8c6.7-6.6 15.5-10.3 24.9-10.3h.1c9.4 0 18.1 3.7 24.7 10.3 6.7 6.7 10.3 15.5 10.3 24.9 0 9.3-3.7 18.1-10.3 24.7L372.4 653c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l215.6-215.6c19.9-19.9 30.8-46.3 30.8-74.4s-11-54.6-30.8-74.4c-41.1-41.1-107.9-41-149 0L463 364 224.8 602.1A172.22 172.22 0 00174 724.8c0 46.3 18.1 89.8 50.8 122.5 33.9 33.8 78.3 50.7 122.7 50.7 44.4 0 88.8-16.9 122.6-50.7l309.2-309C824.8 492.7 850 432 850 367.5c.1-64.6-25.1-125.3-70.7-170.9z"}}]},name:"paper-clip",theme:"outlined"};var z=n(3751),_=function(e,t){return u.createElement(z.Z,Object.assign({},e,{ref:t,icon:T}))};_.displayName="PaperClipOutlined";const H=u.forwardRef(_),V={icon:function(e,t){return{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 632H136v-39.9l138.5-164.3 150.1 178L658.1 489 888 761.6V792zm0-129.8L664.2 396.8c-3.2-3.8-9-3.8-12.2 0L424.6 666.4l-144-170.7c-3.2-3.8-9-3.8-12.2 0L136 652.7V232h752v430.2z",fill:e}},{tag:"path",attrs:{d:"M424.6 765.8l-150.1-178L136 752.1V792h752v-30.4L658.1 489z",fill:t}},{tag:"path",attrs:{d:"M136 652.7l132.4-157c3.2-3.8 9-3.8 12.2 0l144 170.7L652 396.8c3.2-3.8 9-3.8 12.2 0L888 662.2V232H136v420.7zM304 280a88 88 0 110 176 88 88 0 010-176z",fill:t}},{tag:"path",attrs:{d:"M276 368a28 28 0 1056 0 28 28 0 10-56 0z",fill:t}},{tag:"path",attrs:{d:"M304 456a88 88 0 100-176 88 88 0 000 176zm0-116c15.5 0 28 12.5 28 28s-12.5 28-28 28-28-12.5-28-28 12.5-28 28-28z",fill:e}}]}},name:"picture",theme:"twotone"};var A=function(e,t){return u.createElement(z.Z,Object.assign({},e,{ref:t,icon:V}))};A.displayName="PictureTwoTone";const B=u.forwardRef(A),q={icon:function(e,t){return{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M534 352V136H232v752h560V394H576a42 42 0 01-42-42z",fill:t}},{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM602 137.8L790.2 326H602V137.8zM792 888H232V136h302v216a42 42 0 0042 42h216v494z",fill:e}}]}},name:"file",theme:"twotone"};var K=function(e,t){return u.createElement(z.Z,Object.assign({},e,{ref:t,icon:q}))};K.displayName="FileTwoTone";const $=u.forwardRef(K);var G=n(8929);function W(e){return(0,r.Z)((0,r.Z)({},e),{lastModified:e.lastModified,lastModifiedDate:e.lastModifiedDate,name:e.name,size:e.size,type:e.type,uid:e.uid,percent:0,originFileObj:e})}function X(e,t){var n=(0,c.Z)(t),a=n.findIndex((function(t){return t.uid===e.uid}));return-1===a?n.push(e):n[a]=e,n}function J(e,t){var n=void 0!==e.uid?"uid":"name";return t.filter((function(t){return t[n]===e[n]}))[0]}var Q=function(e){return 0===e.indexOf("image/")},Y=200,ee=n(5670),te=n(4178),ne=n(6469),ae=n(5742),re=n(3161),oe=n(4290);const ce={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"}}]},name:"download",theme:"outlined"};var ie=function(e,t){return u.createElement(z.Z,Object.assign({},e,{ref:t,icon:ce}))};ie.displayName="DownloadOutlined";const le=u.forwardRef(ie);var se=n(1857),ue=n(5193);const de=u.forwardRef((function(e,t){var n,o,c,l=e.prefixCls,s=e.className,d=e.style,p=e.locale,f=e.listType,m=e.file,v=e.items,h=e.progress,y=e.iconRender,g=e.actionIconRender,w=e.itemRender,Z=e.isImgUrl,E=e.showPreviewIcon,C=e.showRemoveIcon,x=e.showDownloadIcon,k=e.removeIcon,N=e.downloadIcon,O=e.onPreview,P=e.onDownload,I=e.onClose,R=u.useState(!1),D=(0,i.Z)(R,2),F=D[0],j=D[1],S=u.useRef();u.useEffect((function(){return S.current=setTimeout((function(){j(!0)}),300),function(){window.clearTimeout(S.current)}}),[]);var L="".concat(l,"-span"),U=y(m),T=u.createElement("div",{className:"".concat(l,"-text-icon")},U);if("picture"===f||"picture-card"===f)if("uploading"===m.status||!m.thumbUrl&&!m.url){var z,_=b()((z={},(0,a.Z)(z,"".concat(l,"-list-item-thumbnail"),!0),(0,a.Z)(z,"".concat(l,"-list-item-file"),"uploading"!==m.status),z));T=u.createElement("div",{className:_},U)}else{var H,V=(null==Z?void 0:Z(m))?u.createElement("img",{src:m.thumbUrl||m.url,alt:m.name,className:"".concat(l,"-list-item-image")}):U,A=b()((H={},(0,a.Z)(H,"".concat(l,"-list-item-thumbnail"),!0),(0,a.Z)(H,"".concat(l,"-list-item-file"),Z&&!Z(m)),H));T=u.createElement("a",{className:A,onClick:function(e){return O(m,e)},href:m.url||m.thumbUrl,target:"_blank",rel:"noopener noreferrer"},V)}var B,q=b()((n={},(0,a.Z)(n,"".concat(l,"-list-item"),!0),(0,a.Z)(n,"".concat(l,"-list-item-").concat(m.status),!0),(0,a.Z)(n,"".concat(l,"-list-item-list-type-").concat(f),!0),n)),K="string"==typeof m.linkProps?JSON.parse(m.linkProps):m.linkProps,$=C?g(("function"==typeof k?k(m):k)||u.createElement(oe.Z,null),(function(){return I(m)}),l,p.removeFile):null,G=x&&"done"===m.status?g(("function"==typeof N?N(m):N)||u.createElement(le,null),(function(){return P(m)}),l,p.downloadFile):null,W="picture-card"!==f&&u.createElement("span",{key:"download-delete",className:b()("".concat(l,"-list-item-card-actions"),{picture:"picture"===f})},G,$),X=b()("".concat(l,"-list-item-name")),J=m.url?[u.createElement("a",(0,r.Z)({key:"view",target:"_blank",rel:"noopener noreferrer",className:X,title:m.name},K,{href:m.url,onClick:function(e){return O(m,e)}}),m.name),W]:[u.createElement("span",{key:"view",className:X,onClick:function(e){return O(m,e)},title:m.name},m.name),W],Q=E?u.createElement("a",{href:m.url||m.thumbUrl,target:"_blank",rel:"noopener noreferrer",style:m.url||m.thumbUrl?void 0:{pointerEvents:"none",opacity:.5},onClick:function(e){return O(m,e)},title:p.previewFile},u.createElement(re.Z,null)):null,Y="picture-card"===f&&"uploading"!==m.status&&u.createElement("span",{className:"".concat(l,"-list-item-actions")},Q,"done"===m.status&&G,$);B=m.response&&"string"==typeof m.response?m.response:(null===(o=m.error)||void 0===o?void 0:o.statusText)||(null===(c=m.error)||void 0===c?void 0:c.message)||p.uploadError;var ee=u.createElement("span",{className:L},T,J),ne=(0,u.useContext(te.E_).getPrefixCls)(),ae=u.createElement("div",{className:q},u.createElement("div",{className:"".concat(l,"-list-item-info")},ee),Y,F&&u.createElement(M.Z,{motionName:"".concat(ne,"-fade"),visible:"uploading"===m.status,motionDeadline:2e3},(function(e){var t=e.className,n="percent"in m?u.createElement(ue.Z,(0,r.Z)({},h,{type:"line",percent:m.percent})):null;return u.createElement("div",{className:b()("".concat(l,"-list-item-progress"),t)},n)}))),ce=b()("".concat(l,"-list-").concat(f,"-container"),s),ie="error"===m.status?u.createElement(se.Z,{title:B,getPopupContainer:function(e){return e.parentNode}},ae):ae;return u.createElement("div",{className:ce,style:d,ref:t},w?w(ie,m,v):ie)}));var pe=(0,r.Z)({},ee.Z);delete pe.onAppearEnd,delete pe.onEnterEnd,delete pe.onLeaveEnd;var fe=function(e,t){var n,o=e.listType,l=e.previewFile,s=e.onPreview,d=e.onDownload,p=e.onRemove,f=e.locale,m=e.iconRender,v=e.isImageUrl,h=e.prefixCls,y=e.items,g=void 0===y?[]:y,w=e.showPreviewIcon,Z=e.showRemoveIcon,E=e.showDownloadIcon,C=e.removeIcon,x=e.downloadIcon,k=e.progress,N=e.appendAction,O=e.itemRender,P=(0,ae.Z)(),I=u.useState(!1),R=(0,i.Z)(I,2),D=R[0],F=R[1];u.useEffect((function(){"picture"!==o&&"picture-card"!==o||(g||[]).forEach((function(e){"undefined"!=typeof document&&"undefined"!=typeof window&&window.FileReader&&window.File&&(e.originFileObj instanceof File||e.originFileObj instanceof Blob)&&void 0===e.thumbUrl&&(e.thumbUrl="",l&&l(e.originFileObj).then((function(t){e.thumbUrl=t||"",P()})))}))}),[o,g,l]),u.useEffect((function(){F(!0)}),[]);var j=function(e,t){if(s)return t.preventDefault(),s(e)},S=function(e){"function"==typeof d?d(e):e.url&&window.open(e.url)},L=function(e){null==p||p(e)},T=function(e){if(m)return m(e,o);var t="uploading"===e.status,n=v&&v(e)?u.createElement(B,null):u.createElement($,null),a=t?u.createElement(U.Z,null):u.createElement(H,null);return"picture"===o?a=t?u.createElement(U.Z,null):n:"picture-card"===o&&(a=t?f.uploading:n),a},z=function(e,t,n,a){var o={type:"text",size:"small",title:a,onClick:function(n){t(),(0,G.l$)(e)&&e.props.onClick&&e.props.onClick(n)},className:"".concat(n,"-list-item-card-actions-btn")};if((0,G.l$)(e)){var c=(0,G.Tm)(e,(0,r.Z)((0,r.Z)({},e.props),{onClick:function(){}}));return u.createElement(ne.Z,(0,r.Z)({},o,{icon:c}))}return u.createElement(ne.Z,o,u.createElement("span",null,e))};u.useImperativeHandle(t,(function(){return{handlePreview:j,handleDownload:S}}));var _=u.useContext(te.E_),V=_.getPrefixCls,A=_.direction,q=V("upload",h),K=b()((n={},(0,a.Z)(n,"".concat(q,"-list"),!0),(0,a.Z)(n,"".concat(q,"-list-").concat(o),!0),(0,a.Z)(n,"".concat(q,"-list-rtl"),"rtl"===A),n)),W=(0,c.Z)(g.map((function(e){return{key:e.uid,file:e}}))),X="picture-card"===o?"animate-inline":"animate",J={motionDeadline:2e3,motionName:"".concat(q,"-").concat(X),keys:W,motionAppear:D};return"picture-card"!==o&&(J=(0,r.Z)((0,r.Z)({},pe),J)),u.createElement("div",{className:K},u.createElement(M.V,(0,r.Z)({},J,{component:!1}),(function(e){var t=e.key,n=e.file,a=e.className,r=e.style;return u.createElement(de,{key:t,locale:f,prefixCls:q,className:a,style:r,file:n,items:g,progress:k,listType:o,isImgUrl:v,showPreviewIcon:w,showRemoveIcon:Z,showDownloadIcon:E,removeIcon:C,downloadIcon:x,iconRender:T,actionIconRender:z,itemRender:O,onPreview:j,onDownload:S,onClose:L})})),N&&u.createElement(M.Z,J,(function(e){var t=e.className,n=e.style;return(0,G.Tm)(N,(function(e){return{className:b()(e.className,t),style:(0,r.Z)((0,r.Z)({},n),e.style)}}))})))},me=u.forwardRef(fe);me.displayName="UploadList",me.defaultProps={listType:"text",progress:{strokeWidth:2,showInfo:!1},showRemoveIcon:!0,showDownloadIcon:!1,showPreviewIcon:!0,previewFile:function(e){return new Promise((function(t){if(e.type&&Q(e.type)){var n=document.createElement("canvas");n.width=Y,n.height=Y,n.style.cssText="position: fixed; left: 0; top: 0; width: ".concat(Y,"px; height: ").concat(Y,"px; z-index: 9999; display: none;"),document.body.appendChild(n);var a=n.getContext("2d"),r=new Image;r.onload=function(){var e=r.width,o=r.height,c=Y,i=Y,l=0,s=0;e>o?s=-((i=o*(Y/e))-c)/2:l=-((c=e*(Y/o))-i)/2,a.drawImage(r,l,s,c,i);var u=n.toDataURL();document.body.removeChild(n),t(u)},r.src=window.URL.createObjectURL(e)}else t("")}))},isImageUrl:function(e){if(e.type&&!e.thumbUrl)return Q(e.type);var t=e.thumbUrl||e.url||"",n=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"").split("/"),t=e[e.length-1].split(/#|\?/)[0];return(/\.[^./\\]*$/.exec(t)||[""])[0]}(t);return!(!/^data:image\//.test(t)&&!/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg|ico)$/i.test(n))||!/^data:/.test(t)&&!n}};const ve=me;var he=n(7416),ye=n(5175),ge=n(7139),be="__LIST_IGNORE_".concat(Date.now(),"__"),we=function(e,t){var n,l=e.fileList,d=e.defaultFileList,p=e.onRemove,f=e.showUploadList,m=e.listType,v=e.onPreview,h=e.onDownload,y=e.onChange,g=e.previewFile,w=e.disabled,Z=e.locale,E=e.iconRender,C=e.isImageUrl,x=e.progress,k=e.prefixCls,N=e.className,O=e.type,P=e.children,I=e.style,R=e.itemRender,j=e.maxCount,S=(0,F.Z)(d||[],{value:l,postState:function(e){return null!=e?e:[]}}),L=(0,i.Z)(S,2),M=L[0],U=L[1],T=u.useState("drop"),z=(0,i.Z)(T,2),_=z[0],H=z[1],V=u.useRef();u.useEffect((function(){(0,ge.Z)("fileList"in e||!("value"in e),"Upload","`value` is not a valid prop, do you mean `fileList`?"),(0,ge.Z)(!("transformFile"in e),"Upload","`transformFile` is deprecated. Please use `beforeUpload` directly.")}),[]),u.useMemo((function(){var e=Date.now();(l||[]).forEach((function(t,n){t.uid||Object.isFrozen(t)||(t.uid="__AUTO__".concat(e,"_").concat(n,"__"))}))}),[l]);var A=function(e,t,n){var a=(0,c.Z)(t);1===j?a=a.slice(-1):j&&(a=a.slice(0,j)),U(a);var r={file:e,fileList:a};n&&(r.event=n),null==y||y(r)},B=function(e){var t=e.filter((function(e){return!e.file[be]}));if(t.length){var n=t.map((function(e){return W(e.file)})),a=(0,c.Z)(M);n.forEach((function(e){a=X(e,a)})),n.forEach((function(e,n){var r=e;if(t[n].parsedFile)e.status="uploading";else{var o,c=e.originFileObj;try{o=new File([c],c.name,{type:c.type})}catch(e){(o=new Blob([c],{type:c.type})).name=c.name,o.lastModifiedDate=new Date,o.lastModified=(new Date).getTime()}o.uid=e.uid,r=o}A(r,a)}))}},q=function(e,t,n){try{"string"==typeof e&&(e=JSON.parse(e))}catch(e){}if(J(t,M)){var a=W(t);a.status="done",a.percent=100,a.response=e,a.xhr=n;var r=X(a,M);A(a,r)}},K=function(e,t){if(J(t,M)){var n=W(t);n.status="uploading",n.percent=e.percent;var a=X(n,M);A(n,a,e)}},$=function(e,t,n){if(J(n,M)){var a=W(n);a.error=e,a.response=t,a.status="error";var r=X(a,M);A(a,r)}},G=function(e){var t;Promise.resolve("function"==typeof p?p(e):p).then((function(n){var a;if(!1!==n){var o=function(e,t){var n=void 0!==e.uid?"uid":"name",a=t.filter((function(t){return t[n]!==e[n]}));return a.length===t.length?null:a}(e,M);o&&(t=(0,r.Z)((0,r.Z)({},e),{status:"removed"}),null==M||M.forEach((function(e){var n=void 0!==t.uid?"uid":"name";e[n]!==t[n]||Object.isFrozen(e)||(e.status="removed")})),null===(a=V.current)||void 0===a||a.abort(t),A(t,o))}}))},Q=function(e){e.stopPropagation(),H(e.type)};u.useImperativeHandle(t,(function(){return{onBatchStart:B,onSuccess:q,onProgress:K,onError:$,fileList:M,upload:V.current}}));var Y=u.useContext(te.E_),ee=Y.getPrefixCls,ne=Y.direction,ae=ee("upload",k),re=(0,r.Z)((0,r.Z)({onBatchStart:B,onError:$,onProgress:K,onSuccess:q},e),{prefixCls:ae,beforeUpload:function(t,n){return a=void 0,r=void 0,c=void 0,i=s().mark((function a(){var r,c,i,l;return s().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:if(r=e.beforeUpload,c=e.transformFile,i=t,!r){a.next=13;break}return a.next=5,r(t,n);case 5:if(!1!==(l=a.sent)){a.next=8;break}return a.abrupt("return",!1);case 8:if(delete t[be],l!==be){a.next=12;break}return Object.defineProperty(t,be,{value:!0,configurable:!0}),a.abrupt("return",!1);case 12:"object"===(0,o.Z)(l)&&l&&(i=l);case 13:if(!c){a.next=17;break}return a.next=16,c(i);case 16:i=a.sent;case 17:return a.abrupt("return",i);case 18:case"end":return a.stop()}}),a)})),new(c||(c=Promise))((function(e,t){function n(e){try{l(i.next(e))}catch(e){t(e)}}function o(e){try{l(i.throw(e))}catch(e){t(e)}}function l(t){var a;t.done?e(t.value):(a=t.value,a instanceof c?a:new c((function(e){e(a)}))).then(n,o)}l((i=i.apply(a,r||[])).next())}));var a,r,c,i},onChange:void 0});delete re.className,delete re.style,P&&!w||delete re.id;var oe=function(e){return f?u.createElement(he.Z,{componentName:"Upload",defaultLocale:ye.Z.Upload},(function(t){var n="boolean"==typeof f?{}:f,a=n.showRemoveIcon,o=n.showPreviewIcon,c=n.showDownloadIcon,i=n.removeIcon,l=n.downloadIcon;return u.createElement(ve,{listType:m,items:M,previewFile:g,onPreview:v,onDownload:h,onRemove:G,showRemoveIcon:!w&&a,showPreviewIcon:o,showDownloadIcon:c,removeIcon:i,downloadIcon:l,iconRender:E,locale:(0,r.Z)((0,r.Z)({},t),Z),isImageUrl:C,progress:x,appendAction:e,itemRender:R})})):e};if("drag"===O){var ce,ie=b()(ae,(ce={},(0,a.Z)(ce,"".concat(ae,"-drag"),!0),(0,a.Z)(ce,"".concat(ae,"-drag-uploading"),M.some((function(e){return"uploading"===e.status}))),(0,a.Z)(ce,"".concat(ae,"-drag-hover"),"dragover"===_),(0,a.Z)(ce,"".concat(ae,"-disabled"),w),(0,a.Z)(ce,"".concat(ae,"-rtl"),"rtl"===ne),ce),N);return u.createElement("span",null,u.createElement("div",{className:ie,onDrop:Q,onDragOver:Q,onDragLeave:Q,style:I},u.createElement(D,(0,r.Z)({},re,{ref:V,className:"".concat(ae,"-btn")}),u.createElement("div",{className:"".concat(ae,"-drag-container")},P))),oe())}var le=b()(ae,(n={},(0,a.Z)(n,"".concat(ae,"-select"),!0),(0,a.Z)(n,"".concat(ae,"-select-").concat(m),!0),(0,a.Z)(n,"".concat(ae,"-disabled"),w),(0,a.Z)(n,"".concat(ae,"-rtl"),"rtl"===ne),n)),se=u.createElement("div",{className:le,style:P?void 0:{display:"none"}},u.createElement(D,(0,r.Z)({},re,{ref:V})));return"picture-card"===m?u.createElement("span",{className:b()("".concat(ae,"-picture-card-wrapper"),N)},oe(se)):u.createElement("span",{className:N},se,oe())},Ze=u.forwardRef(we);Ze.Dragger=L,Ze.LIST_IGNORE=be,Ze.displayName="Upload",Ze.defaultProps={type:"select",multiple:!1,action:"",data:{},accept:"",showUploadList:!0,listType:"text",className:"",disabled:!1,supportServerRender:!0};const Ee=Ze;Ee.Dragger=L;const Ce=Ee}}]);
2
+ //# sourceMappingURL=164.lite.js.map?ver=5aea4fbd79619ea2fa29
public/dist/164.lite.js.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"file":"164.lite.js?ver=5aea4fbd79619ea2fa29","mappings":"8JAEA,QADqB,CAAE,KAAQ,CAAE,IAAO,MAAO,MAAS,CAAE,QAAW,gBAAiB,UAAa,SAAW,SAAY,CAAC,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,0VAA8V,KAAQ,SAAU,MAAS,Y,cCKjhB,EAAiB,SAAwBA,EAAOC,GAClD,OAAoB,gBAAoBC,EAAA,EAAUC,OAAOC,OAAO,GAAIJ,EAAO,CACzEC,IAAKA,EACLI,KAAM,MAIV,EAAeC,YAAc,iBAC7B,QAA4B,aAAiB,I,8CCZ7C,QADqB,CAAE,KAAQ,CAAE,IAAO,MAAO,MAAS,CAAE,QAAW,gBAAiB,UAAa,SAAW,SAAY,CAAC,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,gTAAoT,KAAQ,SAAU,MAAS,Y,cCKve,EAAiB,SAAwBN,EAAOC,GAClD,OAAoB,gBAAoBC,EAAA,EAAUC,OAAOC,OAAO,GAAIJ,EAAO,CACzEC,IAAKA,EACLI,KAAM,MAIV,EAAeC,YAAc,iBAC7B,QAA4B,aAAiB,I,sGCuB7C,QAjBW,SAAcC,GACvB,IAAIC,EAAYD,EAAGC,UACfC,EAAYF,EAAGE,UACfC,EAAeH,EAAGI,UAClBA,OAA6B,IAAjBD,GAAiCA,EAC7CV,EAtB8B,SAAUY,EAAGC,GAC/C,IAAIC,EAAI,GAER,IAAK,IAAIC,KAAKH,EACRT,OAAOa,UAAUC,eAAeC,KAAKN,EAAGG,IAAMF,EAAEM,QAAQJ,GAAK,IAAGD,EAAEC,GAAKH,EAAEG,IAG/E,GAAS,MAALH,GAAqD,mBAAjCT,OAAOiB,sBAA2C,KAAIC,EAAI,EAAb,IAAgBN,EAAIZ,OAAOiB,sBAAsBR,GAAIS,EAAIN,EAAEO,OAAQD,IAClIR,EAAEM,QAAQJ,EAAEM,IAAM,GAAKlB,OAAOa,UAAUO,qBAAqBL,KAAKN,EAAGG,EAAEM,MAAKP,EAAEC,EAAEM,IAAMT,EAAEG,EAAEM,KAEhG,OAAOP,EAYKU,CAAOjB,EAAI,CAAC,YAAa,YAAa,cAElD,OAAoB,gBAAoB,EAAAkB,EAAgB,MAAM,SAAUC,GACtE,IACIC,GAASC,EADMF,EAAKE,cACE,OAAQpB,GAC9BqB,EAAc,IAAW,GAAGC,OAAOH,EAAQ,SAAUlB,GAAW,OAAgB,GAAI,GAAGqB,OAAOH,EAAQ,mBAAoBhB,IAC9H,OAAoB,gBAAoB,OAAO,OAAS,GAAIX,EAAO,CACjES,UAAWoB,S,4CCWbE,EAAO,SAAc/B,GACvB,IAAIgC,EAAWC,EA8FXC,EA5FAC,EAAoB,aAAiB,MACrCP,EAAeO,EAAkBP,aACjCQ,EAAYD,EAAkBC,UAE9BC,EAAO,aAAiBC,EAAA,GAkBxBC,EAAqBvC,EAAMQ,UAC3BC,EAAYT,EAAMS,UAClB+B,EAAQxC,EAAMwC,MACdC,EAAmBzC,EAAM0C,UACzBA,OAAiC,IAArBD,EAA8B,GAAKA,EAC/CE,EAAmB3C,EAAM4C,UACzBA,OAAiC,IAArBD,EAA8B,GAAKA,EAC/CE,EAAQ7C,EAAM6C,MACdC,EAAU9C,EAAM8C,QAChBC,EAAkB/C,EAAMgD,SACxBA,OAA+B,IAApBD,GAAoCA,EAC/CE,EAAgBjD,EAAMqC,KACtBa,EAAOlD,EAAMkD,KACbC,EAAQnD,EAAMmD,MACdC,EAAUpD,EAAMoD,QAChBC,EAAUrD,EAAMqD,QAChBC,EAAWtD,EAAMsD,SACjBC,EAAevD,EAAMuD,aACrBC,EAAsBxD,EAAMwD,oBAC5BC,EAAqBzD,EAAMyD,mBAC3B9C,EAAYX,EAAMW,UAClB+C,EAAkB1D,EAAM2D,SACxBA,OAA+B,IAApBD,EAA6B,GAAKA,EAC7CE,EAxF8B,SAAUhD,EAAGC,GAC/C,IAAIC,EAAI,GAER,IAAK,IAAIC,KAAKH,EACRT,OAAOa,UAAUC,eAAeC,KAAKN,EAAGG,IAAMF,EAAEM,QAAQJ,GAAK,IAAGD,EAAEC,GAAKH,EAAEG,IAG/E,GAAS,MAALH,GAAqD,mBAAjCT,OAAOiB,sBAA2C,KAAIC,EAAI,EAAb,IAAgBN,EAAIZ,OAAOiB,sBAAsBR,GAAIS,EAAIN,EAAEO,OAAQD,IAClIR,EAAEM,QAAQJ,EAAEM,IAAM,GAAKlB,OAAOa,UAAUO,qBAAqBL,KAAKN,EAAGG,EAAEM,MAAKP,EAAEC,EAAEM,IAAMT,EAAEG,EAAEM,KAEhG,OAAOP,EA8EM,CAAOd,EAAO,CAAC,YAAa,YAAa,QAAS,YAAa,YAAa,QAAS,UAAW,WAAY,OAAQ,OAAQ,QAAS,UAAW,UAAW,WAAY,eAAgB,sBAAuB,qBAAsB,YAAa,aAE1PQ,EAAYoB,EAAa,OAAQW,GACjCsB,EAA0C,IAAtBjB,EAAUkB,SAAuC,QAAtBlB,EAAUkB,QAAoB,CAC/EA,QAAS,SACPC,EACAC,EAAqB,gBAAoB,MAAO,CAClDvD,UAAW,GAAGqB,OAAOtB,EAAW,oBAE9ByD,EAA4B,gBAAoB,MAAO,CACzDxD,UAAW,GAAGqB,OAAOtB,EAAW,oBAChC0D,MAAOL,GACO,gBAAoB,IAAK,CACvCM,OAAQ,GACM,gBAAoB,IAAK,CACvCC,KAAM,IACLJ,IAAsB,gBAAoB,IAAK,CAChDG,OAAQ,GACM,gBAAoB,IAAK,CACvCC,KAAM,GACLJ,GAAqB,gBAAoB,IAAK,CAC/CI,KAAM,IACLJ,IAAsB,gBAAoB,IAAK,CAChDG,OAAQ,GACM,gBAAoB,IAAK,CACvCC,KAAM,GACLJ,GAAqB,gBAAoB,IAAK,CAC/CI,KAAM,IACLJ,IAAsB,gBAAoB,IAAK,CAChDG,OAAQ,GACM,gBAAoB,IAAK,CACvCC,KAAM,IACLJ,GAAqB,gBAAoB,IAAK,CAC/CI,KAAM,GACLJ,IAAsB,gBAAoB,IAAK,CAChDG,OAAQ,GACM,gBAAoB,IAAK,CACvCC,KAAM,GACLJ,GAAqB,gBAAoB,IAAK,CAC/CI,KAAM,GACLJ,GAAqB,gBAAoB,IAAK,CAC/CI,KAAM,IACLJ,KACCK,OAAmCN,IAAjBR,EAElBe,GAAa,QAAS,OAAS,GAAIX,IAAY3B,EAAY,IAAI,OAAgBA,EAAWqC,EAAkB,YAAc,mBAAoBA,EAAkBd,EAAeC,IAAsB,OAAgBxB,EAAW,qBAAsByB,GAAqBzB,IAG3QuC,EAAOlB,GAAWA,EAAQ/B,OAAsB,gBAAoB,KAAM,OAAS,CACrFe,KAAM,SACLiC,EAAY,CACb7D,UAAW,GAAGqB,OAAOtB,EAAW,cAChCgE,SA3FgB,SAAqBC,GACrC,IAAIlE,EAEyB,QAA5BA,EAAKP,EAAM0E,mBAAgC,IAAPnE,GAAyBA,EAAGW,KAAKlB,EAAOyE,MAyF3EpB,EAAQsB,KAAI,SAAUC,GACxB,OAAoB,gBAAoB,YAAc,CACpDC,IAAKD,EAAKC,IACVC,SAAUF,EAAKE,SACfL,IAAKG,EAAKH,UAER,MAEF5B,GAASL,GAAS+B,KACpBrC,EAAoB,gBAAoB,MAAO,CAC7CzB,UAAW,GAAGqB,OAAOtB,EAAW,SAChC0D,MAAOxB,GACO,gBAAoB,MAAO,CACzCjC,UAAW,GAAGqB,OAAOtB,EAAW,kBAC/BqC,GAAsB,gBAAoB,MAAO,CAClDpC,UAAW,GAAGqB,OAAOtB,EAAW,gBAC/BqC,GAAQL,GAAsB,gBAAoB,MAAO,CAC1D/B,UAAW,GAAGqB,OAAOtB,EAAW,WAC/BgC,IAAS+B,IAGd,IA1GMQ,EA0GFC,EAAW7B,EAAqB,gBAAoB,MAAO,CAC7D1C,UAAW,GAAGqB,OAAOtB,EAAW,WAC/B2C,GAAS,KACR8B,EAAoB,gBAAoB,MAAO,CACjDxE,UAAW,GAAGqB,OAAOtB,EAAW,SAChC0D,MAAOtB,GACNE,EAAUmB,EAAeX,GACxB4B,EAAY9B,GAAWA,EAAQ9B,OAAsB,gBAAoB,KAAM,CACjFb,UAAW,GAAGqB,OAAOtB,EAAW,aAlJpC,SAAmB4C,GAajB,OAZiBA,EAAQuB,KAAI,SAAUQ,EAAQC,GAC7C,OAGE,gBAAoB,KAAM,CACxBlB,MAAO,CACLmB,MAAO,GAAGvD,OAAO,IAAMsB,EAAQ9B,OAAQ,MAEzCmD,IAAK,UAAU3C,OAAOsD,IACR,gBAAoB,OAAQ,KAAMD,OAyInDG,CAAUlC,IAAY,KACrBmC,IAAW,EAAAC,EAAA,GAAK5B,EAAQ,CAAC,gBACzB6B,GAAaxC,GAAiBZ,EAC9BR,GAAc,IAAWrB,GAAYyB,EAAc,IAAI,OAAgBA,EAAa,GAAGH,OAAOtB,EAAW,YAAasC,IAAU,OAAgBb,EAAa,GAAGH,OAAOtB,EAAW,aAAcwC,IAAW,OAAgBf,EAAa,GAAGH,OAAOtB,EAAW,cAAeG,IAAY,OAAgBsB,EAAa,GAAGH,OAAOtB,EAAW,kBArH5U,mBAAuBR,EAAMsD,UAAU,SAAUoC,GAC3CA,GAAWA,EAAQxC,MAAQwC,EAAQxC,OAAS,IAC9C6B,GAAc,MAGXA,KAgHyW,OAAgB9C,EAAa,GAAGH,OAAOtB,EAAW,iBAAkB6C,GAAWA,EAAQ/B,SAAS,OAAgBW,EAAa,GAAGH,OAAOtB,EAAW,KAAKsB,OAAO2D,IAAaA,KAAa,OAAgBxD,EAAa,GAAGH,OAAOtB,EAAW,UAAUsB,OAAOoB,KAASA,IAAO,OAAgBjB,EAAa,GAAGH,OAAOtB,EAAW,QAAuB,QAAd4B,GAAsBH,GAAcxB,GAC5tB,OAAoB,gBAAoB,OAAO,OAAS,GAAI8E,GAAU,CACpE9E,UAAWoB,KACTK,EAAM8C,EAAUC,EAAMC,IAG5BnD,EAAK4D,KAAO,EACZ5D,EAAK6D,KCrKM,SAAc5F,GACvB,OAAoB,gBAAoB,EAAAyB,EAAgB,MAAM,SAAUC,GACtE,IAAIE,EAAeF,EAAKE,aAEpBW,EAAqBvC,EAAMQ,UAC3BC,EAAYT,EAAMS,UAClBoF,EAAS7F,EAAM6F,OACfhD,EAAQ7C,EAAM6C,MACdiD,EAAc9F,EAAM8F,YACpBlC,EA1B4B,SAAUhD,EAAGC,GAC/C,IAAIC,EAAI,GAER,IAAK,IAAIC,KAAKH,EACRT,OAAOa,UAAUC,eAAeC,KAAKN,EAAGG,IAAMF,EAAEM,QAAQJ,GAAK,IAAGD,EAAEC,GAAKH,EAAEG,IAG/E,GAAS,MAALH,GAAqD,mBAAjCT,OAAOiB,sBAA2C,KAAIC,EAAI,EAAb,IAAgBN,EAAIZ,OAAOiB,sBAAsBR,GAAIS,EAAIN,EAAEO,OAAQD,IAClIR,EAAEM,QAAQJ,EAAEM,IAAM,GAAKlB,OAAOa,UAAUO,qBAAqBL,KAAKN,EAAGG,EAAEM,MAAKP,EAAEC,EAAEM,IAAMT,EAAEG,EAAEM,KAEhG,OAAOP,EAgBQ,CAAOd,EAAO,CAAC,YAAa,YAAa,SAAU,QAAS,gBAErEQ,EAAYoB,EAAa,OAAQW,GACjCV,EAAc,IAAW,GAAGC,OAAOtB,EAAW,SAAUC,GACxDsF,EAAYF,EAAsB,gBAAoB,MAAO,CAC/DpF,UAAW,GAAGqB,OAAOtB,EAAW,iBAC/BqF,GAAU,KACTG,EAAWnD,EAAqB,gBAAoB,MAAO,CAC7DpC,UAAW,GAAGqB,OAAOtB,EAAW,gBAC/BqC,GAAS,KACRoD,EAAiBH,EAA2B,gBAAoB,MAAO,CACzErF,UAAW,GAAGqB,OAAOtB,EAAW,sBAC/BsF,GAAe,KACdI,EAAaF,GAAYC,EAA8B,gBAAoB,MAAO,CACpFxF,UAAW,GAAGqB,OAAOtB,EAAW,iBAC/BwF,EAAUC,GAAkB,KAC/B,OAAoB,gBAAoB,OAAO,OAAS,GAAIrC,EAAQ,CAClEnD,UAAWoB,IACTkE,EAAWG,OD2InB,W,2HElLIC,EAAS,cAAiB,SAAUzE,EAAMzB,GAC5C,IAAIgC,EAEAmE,EAAiB1E,EAAKlB,UACtBA,OAA+B,IAAnB4F,EAA4B,YAAcA,EACtD3F,EAAYiB,EAAKjB,UACjB4F,EAAU3E,EAAK2E,QACfC,EAAiB5E,EAAK4E,eACtBxB,EAAWpD,EAAKoD,SAChByB,EAAc7E,EAAK6E,YACnBC,EAAkB9E,EAAK8E,gBACvBC,EAAoB/E,EAAK+E,kBACzBC,EAAUhF,EAAKgF,QACflC,EAAW9C,EAAK8C,SAChBmC,EAAYjF,EAAKiF,UACjBC,GAAY,OAAyBlF,EAAM,CAAC,YAAa,YAAa,UAAW,iBAAkB,WAAY,cAAe,kBAAmB,oBAAqB,UAAW,WAAY,cAE7LmF,GAAkB,EAAAC,EAAA,IAAe,EAAO,CAC1CC,MAAOV,EACPW,aAAcV,IAEZW,GAAmB,OAAeJ,EAAiB,GACnDK,EAAeD,EAAiB,GAChCE,EAAkBF,EAAiB,GAEvC,SAASG,EAAcC,EAAYC,GACjC,IAAIC,EAAgBL,EAQpB,OANKpC,IAEHqC,EADAI,EAAgBF,GAEhB7C,MAAAA,GAAoDA,EAAS+C,EAAeD,IAGvEC,EAmBT,IAAIC,EAAkB,IAAWhH,EAAWC,GAAYwB,EAAc,IAAI,OAAgBA,EAAa,GAAGH,OAAOtB,EAAW,YAAa0G,IAAe,OAAgBjF,EAAa,GAAGH,OAAOtB,EAAW,aAAcsE,GAAW7C,IACnO,OAAO,gBAAoB,SAAU9B,OAAOC,OAAO,GAAIwG,EAAW,CAChE1D,KAAM,SACNuE,KAAM,SACN,eAAgBP,EAChBpC,SAAUA,EACVrE,UAAW+G,EACXvH,IAAKA,EACL0G,UAxBF,SAA2B9F,GACrBA,EAAE6G,QAAUC,EAAA,OACdP,GAAc,EAAOvG,GACZA,EAAE6G,QAAUC,EAAA,SACrBP,GAAc,EAAMvG,GAGtB8F,MAAAA,GAAsDA,EAAU9F,IAkBhE6F,QAfF,SAAyB7F,GACvB,IAAI+G,EAAMR,GAAeF,EAAcrG,GAEvC6F,MAAAA,GAAkDA,EAAQkB,EAAK/G,MAa7D0F,EAAa,gBAAoB,OAAQ,CAC3C9F,UAAW,GAAGqB,OAAOtB,EAAW,WAC/B0G,EAAeV,EAAkBC,OAEtCN,EAAO7F,YAAc,SACrB,U,sDCnDI,EAAsB,cAAiB,SAAUC,EAAIN,GACvD,IAAIgC,EAEAM,EAAqBhC,EAAGC,UACxByC,EAAgB1C,EAAG8B,KACnBS,EAAUvC,EAAGuC,QACb+E,EAAetH,EAAGE,UAClBA,OAA6B,IAAjBoH,EAA0B,GAAKA,EAC3C/C,EAAWvE,EAAGuE,SACd9E,EA9B8B,SAAUY,EAAGC,GAC/C,IAAIC,EAAI,GAER,IAAK,IAAIC,KAAKH,EACRT,OAAOa,UAAUC,eAAeC,KAAKN,EAAGG,IAAMF,EAAEM,QAAQJ,GAAK,IAAGD,EAAEC,GAAKH,EAAEG,IAG/E,GAAS,MAALH,GAAqD,mBAAjCT,OAAOiB,sBAA2C,KAAIC,EAAI,EAAb,IAAgBN,EAAIZ,OAAOiB,sBAAsBR,GAAIS,EAAIN,EAAEO,OAAQD,IAClIR,EAAEM,QAAQJ,EAAEM,IAAM,GAAKlB,OAAOa,UAAUO,qBAAqBL,KAAKN,EAAGG,EAAEM,MAAKP,EAAEC,EAAEM,IAAMT,EAAEG,EAAEM,KAEhG,OAAOP,EAoBKU,CAAOjB,EAAI,CAAC,YAAa,OAAQ,UAAW,YAAa,cAErE,EAAAuH,EAAA,GAAW,YAAa9H,KAAW,UAAWA,GAAQ,SAAU,uDAEhE,IAAImC,EAAoB,aAAiB,MACrCP,EAAeO,EAAkBP,aACjCQ,EAAYD,EAAkBC,UAE9BC,EAAO,aAAiBC,EAAA,GACxB9B,EAAYoB,EAAa,SAAUW,GACnCgE,EAA2B,gBAAoB,MAAO,CACxD9F,UAAW,GAAGqB,OAAOtB,EAAW,YAC/BsC,GAAwB,gBAAoBiF,EAAA,EAAiB,CAC9DtH,UAAW,GAAGqB,OAAOtB,EAAW,oBAE9BwH,EAAU,KAAY/F,EAAc,IAAI,OAAgBA,EAAa,GAAGH,OAAOtB,EAAW,UAAuC,WAA3ByC,GAAiBZ,KAAoB,OAAgBJ,EAAa,GAAGH,OAAOtB,EAAW,YAAasC,IAAU,OAAgBb,EAAa,GAAGH,OAAOtB,EAAW,QAAuB,QAAd4B,GAAsBH,GAAcxB,GACvT,OAAoB,gBAAoB,IAAM,CAC5CwH,iBAAiB,GACH,gBAAoB,GAAU,OAAS,GAAIjI,EAAO,CAChEQ,UAAWA,EACXC,UAAWuH,EACXlD,SAAUA,GAAYhC,EACtB7C,IAAKA,EACLsG,YAAaA,SAGjB,EAAO2B,cAAe,EACtB,EAAO5H,YAAc,SACrB,W,oNCpDA,SAAS6H,EAAQC,GACf,IAAIC,EAAOD,EAAIE,cAAgBF,EAAIG,SAEnC,IAAKF,EACH,OAAOA,EAGT,IACE,OAAOG,KAAKC,MAAMJ,GAClB,MAAOxH,GACP,OAAOwH,GAII,SAASK,EAAOC,GAE7B,IAAIP,EAAM,IAAIQ,eAEVD,EAAOE,YAAcT,EAAIM,SAC3BN,EAAIM,OAAOI,WAAa,SAAkBjI,GACpCA,EAAEkI,MAAQ,IACZlI,EAAEmI,QAAUnI,EAAEoI,OAASpI,EAAEkI,MAAQ,KAGnCJ,EAAOE,WAAWhI,KAKtB,IAAIqI,EAAW,IAAIC,SAEfR,EAAOS,MACTjJ,OAAOkJ,KAAKV,EAAOS,MAAME,SAAQ,SAAU7E,GACzC,IAAIsC,EAAQ4B,EAAOS,KAAK3E,GAEpB8E,MAAMC,QAAQzC,GAChBA,EAAMuC,SAAQ,SAAU1E,GAGtBsE,EAASO,OAAO,GAAG3H,OAAO2C,EAAK,MAAOG,MAK1CsE,EAASO,OAAOhF,EAAKkE,EAAOS,KAAK3E,OAKjCkE,EAAOe,gBAAgBC,KACzBT,EAASO,OAAOd,EAAOiB,SAAUjB,EAAOe,KAAMf,EAAOe,KAAKG,MAE1DX,EAASO,OAAOd,EAAOiB,SAAUjB,EAAOe,MAG1CtB,EAAI0B,QAAU,SAAejJ,GAC3B8H,EAAOoB,QAAQlJ,IAGjBuH,EAAI4B,OAAS,WAGX,OAAI5B,EAAI6B,OAAS,KAAO7B,EAAI6B,QAAU,IAC7BtB,EAAOoB,QAxEpB,SAAkBpB,EAAQP,GACxB,IAAI8B,EAAM,UAAUpI,OAAO6G,EAAOwB,OAAQ,KAAKrI,OAAO6G,EAAOxD,OAAQ,KAAKrD,OAAOsG,EAAI6B,OAAQ,KACzFG,EAAM,IAAIC,MAAMH,GAIpB,OAHAE,EAAIH,OAAS7B,EAAI6B,OACjBG,EAAID,OAASxB,EAAOwB,OACpBC,EAAIE,IAAM3B,EAAOxD,OACViF,EAkEmBG,CAAS5B,EAAQP,GAAMD,EAAQC,IAGhDO,EAAO6B,UAAUrC,EAAQC,GAAMA,IAGxCA,EAAIqC,KAAK9B,EAAOwB,OAAQxB,EAAOxD,QAAQ,GAEnCwD,EAAO+B,iBAAmB,oBAAqBtC,IACjDA,EAAIsC,iBAAkB,GAGxB,IAAIC,EAAUhC,EAAOgC,SAAW,GAahC,OAVoC,OAAhCA,EAAQ,qBACVvC,EAAIwC,iBAAiB,mBAAoB,kBAG3CzK,OAAOkJ,KAAKsB,GAASrB,SAAQ,SAAUuB,GAClB,OAAfF,EAAQE,IACVzC,EAAIwC,iBAAiBC,EAAGF,EAAQE,OAGpCzC,EAAI0C,KAAK5B,GACF,CACL6B,MAAO,WACL3C,EAAI2C,UCnGV,IAAIC,GAAO,IAAIC,KACX7F,EAAQ,EACG,SAAS8F,IAEtB,MAAO,aAAapJ,OAAOkJ,EAAK,KAAKlJ,SAASsD,GCAhD,iBAA0BsE,EAAMyB,GAC9B,GAAIzB,GAAQyB,EAAe,CACzB,IAAIC,EAAqB7B,MAAMC,QAAQ2B,GAAiBA,EAAgBA,EAAcE,MAAM,KACxFC,EAAW5B,EAAKG,MAAQ,GACxB0B,EAAW7B,EAAKxG,MAAQ,GACxBsI,EAAeD,EAASE,QAAQ,QAAS,IAC7C,OAAOL,EAAmBM,MAAK,SAAUxI,GACvC,IAXYyI,EAAKC,EAWbC,EAAY3I,EAAK4I,OAErB,QAAI,cAAcC,KAAK7I,KAIK,MAAxB2I,EAAUG,OAAO,IAjBTL,EAkBML,EAASW,cAlBVL,EAkByBC,EAAUI,eAjBI,IAArDN,EAAIxK,QAAQyK,EAAQD,EAAIrK,OAASsK,EAAOtK,SAoBvC,QAAQyK,KAAKF,GAERL,IAAiBK,EAAUJ,QAAQ,QAAS,IAG9CF,IAAaM,MAIxB,OAAO,GCkCT,EA1CuB,SAA0BK,EAAOC,EAAUC,GAEhE,IAAIC,EAAoB,SAASA,EAAkBzH,EAAM0H,GAEvD1H,EAAK0H,KAAOA,GAAQ,GAEhB1H,EAAK2H,OACP3H,EAAK8E,MAAK,SAAUA,GACd0C,EAAW1C,KAET9E,EAAK4H,WAAa9C,EAAK+C,qBACzBtM,OAAOuM,iBAAiBhD,EAAM,CAC5B+C,mBAAoB,CAClBE,UAAU,KAIdjD,EAAK+C,mBAAqB7H,EAAK4H,SAASf,QAAQ,MAAO,IACvDtL,OAAOuM,iBAAiBhD,EAAM,CAC5B+C,mBAAoB,CAClBE,UAAU,MAKhBR,EAAS,CAACzC,QAGL9E,EAAKgI,aAlDpB,SAAmBhI,EAAMuH,GACvB,IAAIU,EAAYjI,EAAKkI,eACjBC,EAAW,IAEf,SAASC,IACPH,EAAUI,aAAY,SAAUC,GAC9B,IAAIC,EAAY5D,MAAMvI,UAAUoM,MAAMC,MAAMH,GAC5CH,EAAWA,EAASjL,OAAOqL,GAETA,EAAU7L,OAK1B0L,IAFAb,EAASY,MAOfC,GAgCIM,CAAU1I,GAAM,SAAUsI,GACxBA,EAAQ5D,SAAQ,SAAUiE,GACxBlB,EAAkBkB,EAAW,GAAGzL,OAAOwK,GAAMxK,OAAO8C,EAAKiF,KAAM,aAMvEqC,EAAM5C,SAAQ,SAAUI,GACtB2C,EAAkB3C,EAAK8D,wBCqW3B,EA9YgC,SAAUC,IACxC,OAAUC,EAAcD,GAExB,IAAIE,GAAS,OAAaD,GAE1B,SAASA,IACP,IAAIE,EAsOJ,OApOA,OAAgBC,KAAMH,IAEtBE,EAAQD,EAAON,MAAMQ,KAAMC,YACrBC,MAAQ,CACZ7C,IAAK,KAEP0C,EAAMI,KAAO,GAEbJ,EAAMpJ,SAAW,SAAU3D,GACzB,IAAIqL,EAAQrL,EAAEoN,OAAO/B,MAEjBf,GAAgB,OAAmBe,GAAOgC,QAAO,SAAUxE,GAC7D,OAAO,EAAWA,EAAMkE,EAAM5N,MAAMmO,WAGtCP,EAAMQ,YAAYjD,GAElByC,EAAMS,SAGRT,EAAMlH,QAAU,SAAU7F,GACxB,IAAIyN,EAAKV,EAAMW,UAEf,GAAKD,EAAL,CAIA,IAAIE,EAAcZ,EAAM5N,MACpBsD,EAAWkL,EAAYlL,SACvBoD,EAAU8H,EAAY9H,QAE1B,GAAIpD,GAA8B,WAAlBA,EAASJ,KAAmB,CAC1C,IAAIuL,EAASH,EAAGI,WAChBD,EAAOE,QACPF,EAAOG,cAAc,UAAUC,OAGjCP,EAAGQ,QAECpI,GACFA,EAAQ7F,KAIZ+M,EAAMjH,UAAY,SAAU9F,GACZ,UAAVA,EAAE4D,KACJmJ,EAAMlH,QAAQ7F,IAIlB+M,EAAMmB,WAAa,SAAUlO,GAC3B,IAAImO,EAAWpB,EAAM5N,MAAMgP,SAG3B,GAFAnO,EAAEoO,iBAEa,aAAXpO,EAAEqC,KAIN,GAAI0K,EAAM5N,MAAMkP,UACd,EAAiB3F,MAAMvI,UAAUoM,MAAMlM,KAAKL,EAAEsO,aAAaC,OAAQxB,EAAMQ,aAAa,SAAUiB,GAC9F,OAAO,EAAWA,EAAOzB,EAAM5N,MAAMmO,eAElC,CACL,IAAIjC,GAAQ,OAAmBrL,EAAEsO,aAAajD,OAAOgC,QAAO,SAAUxE,GACpE,OAAO,EAAWA,EAAMkE,EAAM5N,MAAMmO,YAGrB,IAAba,IACF9C,EAAQA,EAAMkB,MAAM,EAAG,IAGzBQ,EAAMQ,YAAYlC,KAItB0B,EAAMQ,YAAc,SAAUlC,GAC5B,IAAIoD,GAAc,OAAmBpD,GAEjCqD,EAAYD,EAAY3K,KAAI,SAAU+E,GAGxC,OADAA,EAAKwB,IAAM,IACJ0C,EAAM4B,YAAY9F,EAAM4F,MAGjCG,QAAQC,IAAIH,GAAWI,MAAK,SAAU5C,GACpC,IAAI6C,EAAehC,EAAM5N,MAAM4P,aAC/BA,MAAAA,GAA4DA,EAAa7C,EAASpI,KAAI,SAAUjD,GAG9F,MAAO,CACLgI,KAHWhI,EAAKmO,OAIhBC,WAHepO,EAAKoO,gBAMxB/C,EAASmB,QAAO,SAAUxE,GACxB,OAA2B,OAApBA,EAAKoG,cACXxG,SAAQ,SAAUI,GACnBkE,EAAMmC,KAAKrG,UASjBkE,EAAM4B,YAA2B,WAC/B,IAAIQ,GAAQ,OAAgC,UAAyB,SAASC,EAAQvG,EAAMqD,GAC1F,IAAImD,EAAcC,EAAiBhL,EAAQiL,EAAchH,EAAMiH,EAAYC,EAAYR,EAAYS,EACnG,OAAO,UAAyB,SAAkBC,GAChD,OACE,OAAQA,EAASC,KAAOD,EAASE,MAC/B,KAAK,EAIH,GAHAR,EAAetC,EAAM5N,MAAMkQ,aAC3BC,EAAkBzG,GAEbwG,EAAc,CACjBM,EAASE,KAAO,GAChB,MAKF,OAFAF,EAASC,KAAO,EAChBD,EAASE,KAAO,EACTR,EAAaxG,EAAMqD,GAE5B,KAAK,EACHoD,EAAkBK,EAASG,KAC3BH,EAASE,KAAO,GAChB,MAEF,KAAK,EACHF,EAASC,KAAO,EAChBD,EAASI,GAAKJ,EAAgB,MAAE,GAEhCL,GAAkB,EAEpB,KAAK,GACH,IAA0B,IAApBA,EAA4B,CAChCK,EAASE,KAAO,GAChB,MAGF,OAAOF,EAASK,OAAO,SAAU,CAC/BhB,OAAQnG,EACRoG,WAAY,KACZ3K,OAAQ,KACRiE,KAAM,OAGV,KAAK,GAIH,GAAwB,mBAFxBjE,EAASyI,EAAM5N,MAAMmF,QAEgB,CACnCqL,EAASE,KAAO,GAChB,MAIF,OADAF,EAASE,KAAO,GACTvL,EAAOuE,GAEhB,KAAK,GACH0G,EAAeI,EAASG,KACxBH,EAASE,KAAO,GAChB,MAEF,KAAK,GACHN,EAAejL,EAEjB,KAAK,GAIH,GAAsB,mBAFtBiE,EAAOwE,EAAM5N,MAAMoJ,MAEgB,CACjCoH,EAASE,KAAO,GAChB,MAIF,OADAF,EAASE,KAAO,GACTtH,EAAKM,GAEd,KAAK,GACH2G,EAAaG,EAASG,KACtBH,EAASE,KAAO,GAChB,MAEF,KAAK,GACHL,EAAajH,EAEf,KAAK,GAeH,OAdAkH,EAE8B,YAA7B,OAAQH,IAA4D,iBAApBA,IAAiCA,EAAoCzG,EAAlByG,EAGlGL,EADEQ,aAAsBQ,KACXR,EAEA,IAAIQ,KAAK,CAACR,GAAa5G,EAAKG,KAAM,CAC7C3G,KAAMwG,EAAKxG,QAIfqN,EAAmBT,GACF5E,IAAMxB,EAAKwB,IACrBsF,EAASK,OAAO,SAAU,CAC/BhB,OAAQnG,EACRN,KAAMiH,EACNP,WAAYS,EACZpL,OAAQiL,IAGZ,KAAK,GACL,IAAK,MACH,OAAOI,EAASO,UAGrBd,EAAS,KAAM,CAAC,CAAC,EAAG,SAGzB,OAAO,SAAUe,EAAIC,GACnB,OAAOjB,EAAM3C,MAAMQ,KAAMC,YAlHI,GAsHjCF,EAAMsD,cAAgB,SAAUC,GAC9BvD,EAAMW,UAAY4C,GAGbvD,EA+JT,OA5JA,OAAaF,EAAc,CAAC,CAC1BjJ,IAAK,oBACLsC,MAAO,WACL8G,KAAKuD,YAAa,IAEnB,CACD3M,IAAK,uBACLsC,MAAO,WACL8G,KAAKuD,YAAa,EAClBvD,KAAK9C,UAEN,CACDtG,IAAK,OACLsC,MAAO,SAAcsK,GACnB,IAAIC,EAASzD,KAETzE,EAAOiI,EAAMjI,KACbyG,EAASwB,EAAMxB,OACf1K,EAASkM,EAAMlM,OACf2K,EAAauB,EAAMvB,WAEvB,GAAKjC,KAAKuD,WAAV,CAIA,IAAIG,EAAe1D,KAAK7N,MACpBwR,EAAUD,EAAaC,QACvBC,EAAgBF,EAAaE,cAC7B5H,EAAO0H,EAAa1H,KACpBc,EAAU4G,EAAa5G,QACvBD,EAAkB6G,EAAa7G,gBAC/BP,EAASoH,EAAapH,OACtBe,EAAM2E,EAAO3E,IACbwG,EAAUD,GAAiB,EAC3BE,EAAgB,CAClBxM,OAAQA,EACRyE,SAAUC,EACVT,KAAMA,EACNM,KAAMoG,EACNnF,QAASA,EACTD,gBAAiBA,EACjBP,OAAQA,GAAU,OAClBtB,WAAY,SAAoBhI,GAC9B,IAAIgI,EAAayI,EAAOtR,MAAM6I,WAC9BA,MAAAA,GAAwDA,EAAWhI,EAAGiP,IAExEtF,UAAW,SAAmB5C,EAAKQ,GACjC,IAAIoC,EAAY8G,EAAOtR,MAAMwK,UAC7BA,MAAAA,GAAsDA,EAAU5C,EAAKkI,EAAY1H,UAC1EkJ,EAAOtD,KAAK9C,IAErBnB,QAAS,SAAiBK,EAAKxC,GAC7B,IAAImC,EAAUuH,EAAOtR,MAAM+J,QAC3BA,MAAAA,GAAkDA,EAAQK,EAAKxC,EAAKkI,UAC7DwB,EAAOtD,KAAK9C,KAGvBsG,EAAQ3B,GACRhC,KAAKG,KAAK9C,GAAOwG,EAAQC,MAE1B,CACDlN,IAAK,QACLsC,MAAO,WACL8G,KAAK+D,SAAS,CACZ1G,IAAK,QAGR,CACDzG,IAAK,QACLsC,MAAO,SAAe2C,GACpB,IAAIsE,EAAOH,KAAKG,KAEhB,GAAItE,EAAM,CACR,IAAIwB,EAAMxB,EAAKwB,IAAMxB,EAAKwB,IAAMxB,EAE5BsE,EAAK9C,IAAQ8C,EAAK9C,GAAKH,OACzBiD,EAAK9C,GAAKH,eAGLiD,EAAK9C,QAEZ/K,OAAOkJ,KAAK2E,GAAM1E,SAAQ,SAAU4B,GAC9B8C,EAAK9C,IAAQ8C,EAAK9C,GAAKH,OACzBiD,EAAK9C,GAAKH,eAGLiD,EAAK9C,QAIjB,CACDzG,IAAK,SACLsC,MAAO,WACL,IAAI9E,EAEA4P,EAAehE,KAAK7N,MACpB8R,EAAMD,EAAaE,UACnBvR,EAAYqR,EAAarR,UACzBC,EAAYoR,EAAapR,UACzBqE,EAAW+M,EAAa/M,SACxBkN,EAAKH,EAAaG,GAClB9N,EAAQ2N,EAAa3N,MACrB8K,EAAW6C,EAAa7C,SACxBb,EAAS0D,EAAa1D,OACtB7K,EAAWuO,EAAavO,SACxB4L,EAAY2C,EAAa3C,UACzB+C,EAAwBJ,EAAaI,sBACrCC,EAAeL,EAAaK,aAC5BC,EAAeN,EAAaM,aAC5BC,EAAUP,EAAaO,QACvBC,GAAa,OAAyBR,EAAc,CAAC,YAAa,YAAa,YAAa,WAAY,KAAM,QAAS,WAAY,SAAU,WAAY,YAAa,wBAAyB,eAAgB,eAAgB,YAE/NS,EAAM,KAAYrQ,EAAc,IAAI,OAAgBA,EAAazB,GAAW,IAAO,OAAgByB,EAAa,GAAGH,OAAOtB,EAAW,aAAcsE,IAAW,OAAgB7C,EAAaxB,EAAWA,GAAYwB,IAElNsQ,EAAWrD,EAAY,CACzBA,UAAW,YACXsD,gBAAiB,mBACf,GACAC,EAAS3N,EAAW,GAAK,CAC3B4B,QAASuL,EAAwBpE,KAAKnH,QAAU,aAChDC,UAAWsL,EAAwBpE,KAAKlH,UAAY,aACpDuL,aAAcA,EACdC,aAAcA,EACdO,OAAQ7E,KAAKkB,WACb4D,WAAY9E,KAAKkB,WACjB6D,SAAU,KAEZ,OAAoB,kBAAoBd,GAAK,OAAS,GAAIW,EAAQ,CAChEhS,UAAW6R,EACX7K,KAAM,SACNvD,MAAOA,IACQ,kBAAoB,SAAS,OAAS,IAAI,EAAA2O,EAAA,GAAUR,EAAY,CAC/ES,MAAM,EACN1J,MAAM,IACJ,CACF4I,GAAIA,EACJ9O,KAAM,OACNjD,IAAK4N,KAAKqD,cACVxK,QAAS,SAAiB7F,GACxB,OAAOA,EAAEkS,mBAGXtO,IAAKoJ,KAAKE,MAAM7C,IAChBhH,MAAO,CACL8O,QAAS,QAEX7E,OAAQA,GACPoE,EAAU,CACXvD,SAAUA,EACVxK,SAAUqJ,KAAKrJ,UACH,MAAX4N,EAAkB,CACnBA,QAASA,GACP,KAAM9O,OAIPoK,EA3YuB,CA4Y9B,EAAAuF,WCrZF,SAASC,KAET,IAAIC,EAAsB,SAAU1F,IAClC,OAAU0F,EAAQ1F,GAElB,IAAIE,GAAS,OAAawF,GAE1B,SAASA,IACP,IAAIvF,EAUJ,OARA,OAAgBC,KAAMsF,IAEtBvF,EAAQD,EAAON,MAAMQ,KAAMC,YAErBsF,aAAe,SAAUjC,GAC7BvD,EAAMyF,SAAWlC,GAGZvD,EAiBT,OAdA,OAAauF,EAAQ,CAAC,CACpB1O,IAAK,QACLsC,MAAO,SAAe2C,GACpBmE,KAAKwF,SAAStI,MAAMrB,KAErB,CACDjF,IAAK,SACLsC,MAAO,WACL,OAAoB,kBAAoB,GAAY,OAAS,GAAI8G,KAAK7N,MAAO,CAC3EC,IAAK4N,KAAKuF,oBAKTD,EAjCiB,CAkCxB,EAAAF,WAEFE,EAAOG,aAAe,CACpBvB,UAAW,OACXvR,UAAW,YACX4I,KAAM,GACNuB,QAAS,GACTd,KAAM,OACN0J,WAAW,EACX/B,QAAS0B,EACTnJ,QAASmJ,EACT1I,UAAW0I,EACXlE,UAAU,EACVkB,aAAc,KACduB,cAAe,KACf/G,iBAAiB,EACjBuH,uBAAuB,GAEzB,MC/DA,ED+DA,E,cE9CIuB,EAAkB,SAAyBjT,EAAIN,GACjD,IAAIiE,EAAQ3D,EAAG2D,MACXuP,EAASlT,EAAGkT,OACZ7M,EAnB8B,SAAUhG,EAAGC,GAC/C,IAAIC,EAAI,GAER,IAAK,IAAIC,KAAKH,EACRT,OAAOa,UAAUC,eAAeC,KAAKN,EAAGG,IAAMF,EAAEM,QAAQJ,GAAK,IAAGD,EAAEC,GAAKH,EAAEG,IAG/E,GAAS,MAALH,GAAqD,mBAAjCT,OAAOiB,sBAA2C,KAAIC,EAAI,EAAb,IAAgBN,EAAIZ,OAAOiB,sBAAsBR,GAAIS,EAAIN,EAAEO,OAAQD,IAClIR,EAAEM,QAAQJ,EAAEM,IAAM,GAAKlB,OAAOa,UAAUO,qBAAqBL,KAAKN,EAAGG,EAAEM,MAAKP,EAAEC,EAAEM,IAAMT,EAAEG,EAAEM,KAEhG,OAAOP,EASSU,CAAOjB,EAAI,CAAC,QAAS,WAErC,OAAoB,gBAAoB,IAAQ,OAAS,CACvDN,IAAKA,GACJ2G,EAAW,CACZ1D,KAAM,OACNgB,OAAO,QAAS,OAAS,GAAIA,GAAQ,CACnCuP,OAAQA,QAKVC,EAAuB,aAAiBF,GAC5CE,EAAQpT,YAAc,UACtB,U,wBCjCA,QADwB,CAAE,KAAQ,CAAE,IAAO,MAAO,MAAS,CAAE,QAAW,gBAAiB,UAAa,SAAW,SAAY,CAAC,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,4zBAAg0B,KAAQ,aAAc,MAAS,Y,cCK1/B,EAAoB,SAA2BN,EAAOC,GACxD,OAAoB,gBAAoBC,EAAA,EAAUC,OAAOC,OAAO,GAAIJ,EAAO,CACzEC,IAAKA,EACLI,KAAM,MAIV,EAAkBC,YAAc,oBAChC,QAA4B,aAAiB,GCZ7C,EADqB,CAAE,KAAQ,SAAgBqT,EAAcC,GAAkB,MAAO,CAAE,IAAO,MAAO,MAAS,CAAE,QAAW,gBAAiB,UAAa,SAAW,SAAY,CAAC,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,iSAAkS,KAAQD,IAAkB,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,6DAA8D,KAAQC,IAAoB,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,uJAAwJ,KAAQA,IAAoB,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,2CAA4C,KAAQA,IAAoB,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,mHAAoH,KAAQD,OAAwB,KAAQ,UAAW,MAAS,WCKzpC,IAAI,EAAiB,SAAwB3T,EAAOC,GAClD,OAAoB,gBAAoBC,EAAA,EAAUC,OAAOC,OAAO,GAAIJ,EAAO,CACzEC,IAAKA,EACLI,KAAM,MAIV,EAAeC,YAAc,iBAC7B,QAA4B,aAAiB,GCZ7C,EADkB,CAAE,KAAQ,SAAgBqT,EAAcC,GAAkB,MAAO,CAAE,IAAO,MAAO,MAAS,CAAE,QAAW,gBAAiB,UAAa,SAAW,SAAY,CAAC,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,qDAAsD,KAAQA,IAAoB,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,4OAA6O,KAAQD,OAAwB,KAAQ,OAAQ,MAAS,WCKzmB,IAAI,EAAc,SAAqB3T,EAAOC,GAC5C,OAAoB,gBAAoBC,EAAA,EAAUC,OAAOC,OAAO,GAAIJ,EAAO,CACzEC,IAAKA,EACLI,KAAM,MAIV,EAAYC,YAAc,cAC1B,QAA4B,aAAiB,G,cCZtC,SAASuT,EAASnK,GACvB,OAAO,QAAS,OAAS,GAAIA,GAAO,CAClCoK,aAAcpK,EAAKoK,aACnBC,iBAAkBrK,EAAKqK,iBACvBlK,KAAMH,EAAKG,KACXxH,KAAMqH,EAAKrH,KACXa,KAAMwG,EAAKxG,KACXgI,IAAKxB,EAAKwB,IACVlC,QAAS,EACTgL,cAAetK,IAKZ,SAASuK,EAAevK,EAAMqD,GACnC,IAAImH,GAAe,OAAmBnH,GAElCoH,EAAYD,EAAaE,WAAU,SAAU1S,GAE/C,OADUA,EAAKwJ,MACAxB,EAAKwB,OAStB,OANmB,IAAfiJ,EACFD,EAAaG,KAAK3K,GAElBwK,EAAaC,GAAazK,EAGrBwK,EAEF,SAASI,EAAY5K,EAAMqD,GAChC,IAAIwH,OAAwBxQ,IAAb2F,EAAKwB,IAAoB,MAAQ,OAChD,OAAO6B,EAASmB,QAAO,SAAUtJ,GAC/B,OAAOA,EAAK2P,KAAc7K,EAAK6K,MAC9B,GAeL,IAQIC,EAAkB,SAAyBtR,GAC7C,OAAkC,IAA3BA,EAAK/B,QAAQ,WA2BlBsT,EAAe,I,kECrFnB,SADuB,CAAE,KAAQ,CAAE,IAAO,MAAO,MAAS,CAAE,QAAW,gBAAiB,UAAa,SAAW,SAAY,CAAC,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,oTAAwT,KAAQ,WAAY,MAAS,YCKnf,IAAI,GAAmB,SAA0BzU,EAAOC,GACtD,OAAoB,gBAAoBC,EAAA,EAAUC,OAAOC,OAAO,GAAIJ,EAAO,CACzEC,IAAKA,EACLI,KAAM,OAIV,GAAiBC,YAAc,mBAC/B,SAA4B,aAAiB,I,0BC+K7C,SAjL4B,cAAiB,SAAUoB,EAAMzB,GAC3D,IAAIyU,EAuBAnU,EAAIoU,EArBJnU,EAAYkB,EAAKlB,UACjBC,EAAYiB,EAAKjB,UACjByD,EAAQxC,EAAKwC,MACb0Q,EAASlT,EAAKkT,OACdC,EAAWnT,EAAKmT,SAChBnL,EAAOhI,EAAKgI,KACZ0F,EAAQ1N,EAAK0N,MACb0F,EAAgBpT,EAAKqT,SACrBC,EAAatT,EAAKsT,WAClBC,EAAmBvT,EAAKuT,iBACxBC,EAAaxT,EAAKwT,WAClBC,EAAWzT,EAAKyT,SAChBC,EAAkB1T,EAAK0T,gBACvBC,EAAiB3T,EAAK2T,eACtBC,EAAmB5T,EAAK4T,iBACxBC,EAAmB7T,EAAK8T,WACxBC,EAAqB/T,EAAKgU,aAC1BC,EAAYjU,EAAKiU,UACjBC,EAAalU,EAAKkU,WAClBC,EAAUnU,EAAKmU,QAKfC,EAAkB,YAAe,GACjCC,GAAmB,OAAeD,EAAiB,GACnDE,EAAeD,EAAiB,GAChCE,EAAkBF,EAAiB,GAEnCG,EAAiB,WACrB,aAAgB,WAId,OAHAA,EAAeC,QAAUC,YAAW,WAClCH,GAAgB,KACf,KACI,WACLI,OAAOC,aAAaJ,EAAeC,YAEpC,IAGH,IAAII,EAAgB,GAAGzU,OAAOtB,EAAW,SACrCgW,EAAWxB,EAAWtL,GACtBrJ,EAAoB,gBAAoB,MAAO,CACjDI,UAAW,GAAGqB,OAAOtB,EAAW,eAC/BgW,GAEH,GAAiB,YAAb3B,GAAuC,iBAAbA,EAC5B,GAAoB,cAAhBnL,EAAKO,SAA2BP,EAAK+M,WAAa/M,EAAKY,IAAK,CAC9D,IAAIrI,EAEAyU,EAAqB,KAAYzU,EAAc,IAAI,OAAgBA,EAAa,GAAGH,OAAOtB,EAAW,yBAAyB,IAAO,OAAgByB,EAAa,GAAGH,OAAOtB,EAAW,mBAAoC,cAAhBkJ,EAAKO,QAAyBhI,IAC7O5B,EAAoB,gBAAoB,MAAO,CAC7CI,UAAWiW,GACVF,OACE,CACL,IAAIG,EAEAC,GAAazB,MAAAA,OAA2C,EAASA,EAASzL,IAAsB,gBAAoB,MAAO,CAC7HmN,IAAKnN,EAAK+M,UAAY/M,EAAKY,IAC3BwM,IAAKpN,EAAKG,KACVpJ,UAAW,GAAGqB,OAAOtB,EAAW,sBAC7BgW,EACDO,EAAa,KAAYJ,EAAe,IAAI,OAAgBA,EAAc,GAAG7U,OAAOtB,EAAW,yBAAyB,IAAO,OAAgBmW,EAAc,GAAG7U,OAAOtB,EAAW,mBAAoB2U,IAAaA,EAASzL,IAAQiN,IACxOtW,EAAoB,gBAAoB,IAAK,CAC3CI,UAAWsW,EACXrQ,QAAS,SAAiB7F,GACxB,OAAO8U,EAAUjM,EAAM7I,IAEzBmW,KAAMtN,EAAKY,KAAOZ,EAAK+M,SACvBxI,OAAQ,SACRgJ,IAAK,uBACJL,GAIP,IAmDIM,EAnDAC,EAAqB,KAAYzC,EAAe,IAAI,OAAgBA,EAAc,GAAG5S,OAAOtB,EAAW,eAAe,IAAO,OAAgBkU,EAAc,GAAG5S,OAAOtB,EAAW,eAAesB,OAAO4H,EAAKO,SAAS,IAAO,OAAgByK,EAAc,GAAG5S,OAAOtB,EAAW,yBAAyBsB,OAAO+S,IAAW,GAAOH,IAChU0C,EAAsC,iBAAnB1N,EAAK0N,UAAyB5O,KAAKC,MAAMiB,EAAK0N,WAAa1N,EAAK0N,UACnF5B,EAAaH,EAAiBJ,GAA8C,mBAArBM,EAAkCA,EAAiB7L,GAAQ6L,IAAkC,gBAAoB8B,GAAA,EAAgB,OAAO,WACjM,OAAOxB,EAAQnM,KACdlJ,EAAWoU,EAAO0C,YAAc,KAC/B5B,EAAeJ,GAAoC,SAAhB5L,EAAKO,OAAoBgL,GAAgD,mBAAvBQ,EAAoCA,EAAmB/L,GAAQ+L,IAAoC,gBAAoB,GAAkB,OAAO,WACvO,OAAOG,EAAWlM,KACjBlJ,EAAWoU,EAAO2C,cAAgB,KACjCC,EAAgC,iBAAb3C,GAA4C,gBAAoB,OAAQ,CAC7FpQ,IAAK,kBACLhE,UAAW,IAAW,GAAGqB,OAAOtB,EAAW,2BAA4B,CACrEiX,QAAsB,YAAb5C,KAEVa,EAAcF,GACbkC,EAAoB,IAAW,GAAG5V,OAAOtB,EAAW,oBACpDmX,EAAUjO,EAAKY,IAAM,CAAc,gBAAoB,KAAK,OAAS,CACvE7F,IAAK,OACLwJ,OAAQ,SACRgJ,IAAK,sBACLxW,UAAWiX,EACX7U,MAAO6G,EAAKG,MACXuN,EAAW,CACZJ,KAAMtN,EAAKY,IACX5D,QAAS,SAAiB7F,GACxB,OAAO8U,EAAUjM,EAAM7I,MAEvB6I,EAAKG,MAAO2N,GAAoB,CAAc,gBAAoB,OAAQ,CAC5E/S,IAAK,OACLhE,UAAWiX,EACXhR,QAAS,SAAiB7F,GACxB,OAAO8U,EAAUjM,EAAM7I,IAEzBgC,MAAO6G,EAAKG,MACXH,EAAKG,MAAO2N,GAKXI,EAAcxC,EAA+B,gBAAoB,IAAK,CACxE4B,KAAMtN,EAAKY,KAAOZ,EAAK+M,SACvBxI,OAAQ,SACRgJ,IAAK,sBACL/S,MAAOwF,EAAKY,KAAOZ,EAAK+M,cAAW1S,EARlB,CACjB8T,cAAe,OACfC,QAAS,IAOTpR,QAAS,SAAiB7F,GACxB,OAAO8U,EAAUjM,EAAM7I,IAEzBgC,MAAO+R,EAAOmD,aACA,gBAAoBC,GAAA,EAAa,OAAS,KACtD5U,EAAuB,iBAAbyR,GAA+C,cAAhBnL,EAAKO,QAAuC,gBAAoB,OAAQ,CACnHxJ,UAAW,GAAGqB,OAAOtB,EAAW,uBAC/BoX,EAA6B,SAAhBlO,EAAKO,QAAqByL,EAAcF,GAItD0B,EADExN,EAAKnB,UAAqC,iBAAlBmB,EAAKnB,SACrBmB,EAAKnB,UAEkB,QAArBhI,EAAKmJ,EAAKuO,aAA0B,IAAP1X,OAAgB,EAASA,EAAG2X,cAAsC,QAArBvD,EAAKjL,EAAKuO,aAA0B,IAAPtD,OAAgB,EAASA,EAAGuC,UAAYtC,EAAOuD,YAGpK,IAAIC,GAA8B,gBAAoB,OAAQ,CAC5D3X,UAAW8V,GACVlW,EAAMsX,GAKLU,IAAgBzW,EAHI,aAAiB,OACJA,gBAGjC0W,GAAmB,gBAAoB,MAAO,CAChD7X,UAAW0W,GACG,gBAAoB,MAAO,CACzC1W,UAAW,GAAGqB,OAAOtB,EAAW,oBAC/B4X,IAAiBhV,EAAS4S,GAA6B,gBAAoB,IAAW,CACvFuC,WAAY,GAAGzW,OAAOuW,GAAe,SACrCG,QAAyB,cAAhB9O,EAAKO,OACdwO,eAAgB,MACf,SAAUzI,GACX,IAAI0I,EAAkB1I,EAAMvP,UAExBkY,EAAkB,YAAajP,EAAoB,gBAAoB,MAAU,OAAS,GAAIoL,EAAe,CAC/G5R,KAAM,OACN8F,QAASU,EAAKV,WACV,KACN,OAAoB,gBAAoB,MAAO,CAC7CvI,UAAW,IAAW,GAAGqB,OAAOtB,EAAW,uBAAwBkY,IAClEC,OAEDC,GAAyB,IAAW,GAAG9W,OAAOtB,EAAW,UAAUsB,OAAO+S,EAAU,cAAepU,GACnGmE,GAAuB,UAAhB8E,EAAKO,OAAkC,gBAAoB,KAAS,CAC7EpH,MAAOqU,EACP2B,kBAAmB,SAA2B1H,GAC5C,OAAOA,EAAKzC,aAEb4J,IAAOA,GACV,OAAoB,gBAAoB,MAAO,CAC7C7X,UAAWmY,GACX1U,MAAOA,EACPjE,IAAKA,GACJiV,EAAaA,EAAWtQ,GAAM8E,EAAM0F,GAASxK,OCxKlD,IAAIkU,IAAiB,OAAS,GAAI,aAE3BA,GAAeC,mBACfD,GAAeE,kBACfF,GAAeG,WAEtB,IAAIC,GAAqB,SAA4BxX,EAAMzB,GACzD,IAAIgC,EAEA4S,EAAWnT,EAAKmT,SAChBkD,EAAcrW,EAAKqW,YACnBpC,EAAYjU,EAAKiU,UACjBC,EAAalU,EAAKkU,WAClBuD,EAAWzX,EAAKyX,SAChBvE,EAASlT,EAAKkT,OACdI,EAAatT,EAAKsT,WAClBG,EAAWzT,EAAK0X,WAChB7W,EAAqBb,EAAKlB,UAC1B6Y,EAAa3X,EAAK0N,MAClBA,OAAuB,IAAfiK,EAAwB,GAAKA,EACrCjE,EAAkB1T,EAAK0T,gBACvBC,EAAiB3T,EAAK2T,eACtBC,EAAmB5T,EAAK4T,iBACxBE,EAAa9T,EAAK8T,WAClBE,EAAehU,EAAKgU,aACpBX,EAAWrT,EAAKqT,SAChBuE,EAAe5X,EAAK4X,aACpBpE,EAAaxT,EAAKwT,WAClBqE,GAAc,EAAAC,GAAA,KAEd1D,EAAkB,YAAe,GACjCC,GAAmB,OAAeD,EAAiB,GACnD2D,EAAe1D,EAAiB,GAChC2D,EAAkB3D,EAAiB,GAGvC,aAAgB,WACG,YAAblB,GAAuC,iBAAbA,IAI7BzF,GAAS,IAAI9F,SAAQ,SAAUI,GACN,oBAAbiQ,UAA8C,oBAAXtD,QAA2BA,OAAOuD,YAAevD,OAAOvF,OAAUpH,EAAKsK,yBAAyBlD,MAAQpH,EAAKsK,yBAAyBrK,YAA2B5F,IAAlB2F,EAAK+M,WAIlM/M,EAAK+M,SAAW,GAEZsB,GACFA,EAAYrO,EAAKsK,eAAerE,MAAK,SAAUkK,GAE7CnQ,EAAK+M,SAAWoD,GAAkB,GAClCN,aAIL,CAAC1E,EAAUzF,EAAO2I,IACrB,aAAgB,WACd2B,GAAgB,KACf,IAEH,IAAII,EAAoB,SAA2BpQ,EAAM7I,GACvD,GAAK8U,EAKL,OADA9U,EAAEoO,iBACK0G,EAAUjM,IAGfqQ,EAAqB,SAA4BrQ,GACzB,mBAAfkM,EACTA,EAAWlM,GACFA,EAAKY,KACd+L,OAAO5L,KAAKf,EAAKY,MAIjB0P,EAAkB,SAAyBtQ,GAC7CyP,MAAAA,GAAoDA,EAASzP,IAG3DuQ,EAAqB,SAA4BvQ,GACnD,GAAIsL,EACF,OAAOA,EAAWtL,EAAMmL,GAG1B,IAAIqF,EAA4B,cAAhBxQ,EAAKO,OACjBkQ,EAAWhF,GAAYA,EAASzL,GAAqB,gBAAoB,EAAgB,MAAqB,gBAAoB,EAAa,MAC/IrJ,EAAO6Z,EAAyB,gBAAoBnS,EAAA,EAAiB,MAAqB,gBAAoB,EAAmB,MAQrI,MANiB,YAAb8M,EACFxU,EAAO6Z,EAAyB,gBAAoBnS,EAAA,EAAiB,MAAQoS,EACvD,iBAAbtF,IACTxU,EAAO6Z,EAAYtF,EAAOwF,UAAYD,GAGjC9Z,GAGL4U,EAAmB,SAA0BoF,EAAYlO,EAAU3L,EAAWqC,GAChF,IAAIyX,EAAW,CACbpX,KAAM,OACNb,KAAM,QACNQ,MAAOA,EACP6D,QAAS,SAAiB7F,GACxBsL,KAEI,QAAekO,IAAeA,EAAWra,MAAM0G,SACjD2T,EAAWra,MAAM0G,QAAQ7F,IAG7BJ,UAAW,GAAGqB,OAAOtB,EAAW,gCAGlC,IAAI,QAAe6Z,GAAa,CAC9B,IAAIE,GAAU,QAAaF,GAAY,QAAS,OAAS,GAAIA,EAAWra,OAAQ,CAC9E0G,QAAS,gBAEX,OAAoB,gBAAoB,MAAQ,OAAS,GAAI4T,EAAU,CACrEja,KAAMka,KAIV,OAAoB,gBAAoB,KAAQD,EAAuB,gBAAoB,OAAQ,KAAMD,KAK3G,sBAA0Bpa,GAAK,WAC7B,MAAO,CACLua,cAAeV,EACfW,eAAgBV,MAIpB,IAAI5X,EAAoB,aAAiB,OACrCP,EAAeO,EAAkBP,aACjCQ,EAAYD,EAAkBC,UAG9B5B,EAAYoB,EAAa,SAAUW,GACnCmY,EAAiB,KAAYzY,EAAc,IAAI,OAAgBA,EAAa,GAAGH,OAAOtB,EAAW,UAAU,IAAO,OAAgByB,EAAa,GAAGH,OAAOtB,EAAW,UAAUsB,OAAO+S,IAAW,IAAO,OAAgB5S,EAAa,GAAGH,OAAOtB,EAAW,aAA4B,QAAd4B,GAAsBH,IAE7R0Y,GAAgB,OAAmBvL,EAAMzK,KAAI,SAAU+E,GACzD,MAAO,CACLjF,IAAKiF,EAAKwB,IACVxB,KAAMA,OAINkR,EAAkC,iBAAb/F,EAA8B,iBAAmB,UAEtEgG,EAAe,CACjBpC,eAAgB,IAChBF,WAAY,GAAGzW,OAAOtB,EAAW,KAAKsB,OAAO8Y,GAC7CvR,KAAMsR,EACNlB,aAAcA,GAOhB,MAJiB,iBAAb5E,IACFgG,GAAe,QAAS,OAAS,GAAI/B,IAAiB+B,IAGpC,gBAAoB,MAAO,CAC7Cpa,UAAWia,GACG,gBAAoB,KAAe,OAAS,GAAIG,EAAc,CAC5E9I,WAAW,KACT,SAAU/B,GACZ,IAAIvL,EAAMuL,EAAMvL,IACZiF,EAAOsG,EAAMtG,KACbgP,EAAkB1I,EAAMvP,UACxBqa,EAAc9K,EAAM9L,MACxB,OAAoB,gBAAoB,GAAU,CAChDO,IAAKA,EACLmQ,OAAQA,EACRpU,UAAWA,EACXC,UAAWiY,EACXxU,MAAO4W,EACPpR,KAAMA,EACN0F,MAAOA,EACP2F,SAAUA,EACVF,SAAUA,EACVM,SAAUA,EACVC,gBAAiBA,EACjBC,eAAgBA,EAChBC,iBAAkBA,EAClBE,WAAYA,EACZE,aAAcA,EACdV,WAAYiF,EACZhF,iBAAkBA,EAClBC,WAAYA,EACZS,UAAWmE,EACXlE,WAAYmE,EACZlE,QAASmE,OAETV,GAA6B,gBAAoB,IAAWuB,GAAc,SAAUxJ,GACtF,IAAIqH,EAAkBrH,EAAM5Q,UACxBqa,EAAczJ,EAAMnN,MACxB,OAAO,QAAaoV,GAAc,SAAUyB,GAC1C,MAAO,CACLta,UAAW,IAAWsa,EAASta,UAAWiY,GAC1CxU,OAAO,QAAS,OAAS,GAAI4W,GAAcC,EAAS7W,gBAMxD8W,GAA0B,aAAiB9B,IAC/C8B,GAAW1a,YAAc,aACzB0a,GAAW1H,aAAe,CACxBuB,SAAU,OACVE,SAAU,CACRkG,YAAa,EACbC,UAAU,GAEZ7F,gBAAgB,EAChBC,kBAAkB,EAClBF,iBAAiB,EACjB2C,YJtJK,SAAsBrO,GAC3B,OAAO,IAAI+F,SAAQ,SAAU0L,GAC3B,GAAKzR,EAAKxG,MAASsR,EAAgB9K,EAAKxG,MAAxC,CAKA,IAAIkY,EAASzB,SAAS0B,cAAc,UACpCD,EAAO/V,MAAQoP,EACf2G,EAAO3H,OAASgB,EAChB2G,EAAOlX,MAAMoX,QAAU,4CAA4CxZ,OAAO2S,EAAc,gBAAgB3S,OAAO2S,EAAc,qCAC7HkF,SAAS1U,KAAKsW,YAAYH,GAC1B,IAAII,EAAMJ,EAAOK,WAAW,MACxBC,EAAM,IAAIC,MAEdD,EAAI1R,OAAS,WACX,IAAI3E,EAAQqW,EAAIrW,MACZoO,EAASiI,EAAIjI,OACbmI,EAAYnH,EACZoH,EAAapH,EACbqH,EAAU,EACVC,EAAU,EAEV1W,EAAQoO,EAEVsI,KADAF,EAAapI,GAAUgB,EAAepP,IACbuW,GAAa,EAGtCE,KADAF,EAAYvW,GAASoP,EAAehB,IACZoI,GAAc,EAGxCL,EAAIQ,UAAUN,EAAKI,EAASC,EAASH,EAAWC,GAChD,IAAII,EAAUb,EAAOc,YACrBvC,SAAS1U,KAAKkX,YAAYf,GAC1BD,EAAQc,IAGVP,EAAI7E,IAAMR,OAAO+F,IAAIC,gBAAgB3S,QAlCnCyR,EAAQ,QIoJZ/B,WJhLsB,SAAoB1P,GAC1C,GAAIA,EAAKxG,OAASwG,EAAK+M,SACrB,OAAOjC,EAAgB9K,EAAKxG,MAG9B,IAAIoH,EAAMZ,EAAK+M,UAAY/M,EAAKY,KAAO,GACnCgS,EAlBQ,WACZ,IACIC,GADMzO,UAAUxM,OAAS,QAAsByC,IAAjB+J,UAAU,GAAmBA,UAAU,GAAK,IAC/DzC,MAAM,KAEjBmR,EADWD,EAAKA,EAAKjb,OAAS,GACG+J,MAAM,QAAQ,GACnD,OAAQ,cAAcoR,KAAKD,IAA0B,CAAC,KAAK,GAa3CE,CAAQpS,GAExB,SAAI,gBAAgByB,KAAKzB,KAAQ,iDAAiDyB,KAAKuQ,MAInF,SAASvQ,KAAKzB,KAKdgS,IIiKN,Y,qCC/LIK,GAAc,iBAAiB7a,OAAOmJ,KAAKD,MAAO,MAElD4R,GAAiB,SAAwB5c,EAAOC,GAClD,IAAI0W,EAEA5J,EAAW/M,EAAM+M,SACjB8P,EAAkB7c,EAAM6c,gBACxB1D,EAAWnZ,EAAMmZ,SACjB2D,EAAiB9c,EAAM8c,eACvBjI,EAAW7U,EAAM6U,SACjBc,EAAY3V,EAAM2V,UAClBC,EAAa5V,EAAM4V,WACnBpR,EAAWxE,EAAMwE,SACjBuT,EAAc/X,EAAM+X,YACpBjT,EAAW9E,EAAM8E,SACjBiY,EAAa/c,EAAM4U,OACnBI,EAAahV,EAAMgV,WACnBoE,EAAapZ,EAAMoZ,WACnBrE,EAAW/U,EAAM+U,SACjBxS,EAAqBvC,EAAMQ,UAC3BC,EAAYT,EAAMS,UAClByC,EAAOlD,EAAMkD,KACbI,EAAWtD,EAAMsD,SACjBY,EAAQlE,EAAMkE,MACdgR,EAAalV,EAAMkV,WACnB8H,EAAWhd,EAAMgd,SAEjBnW,GAAkB,EAAAC,EAAA,GAAe+V,GAAmB,GAAI,CAC1D9V,MAAOgG,EACPkQ,UAAW,SAAmBC,GAC5B,OAAOA,MAAAA,EAAmCA,EAAO,MAGjDjW,GAAmB,OAAeJ,EAAiB,GACnDsW,EAAiBlW,EAAiB,GAClCmW,EAAoBnW,EAAiB,GAErC6O,EAAkB,WAAe,QACjCC,GAAmB,OAAeD,EAAiB,GACnDuH,EAAYtH,EAAiB,GAC7BuH,EAAevH,EAAiB,GAEhCrN,EAAS,WACb,aAAgB,YACd,EAAAZ,GAAA,GAAW,aAAc9H,KAAW,UAAWA,GAAQ,SAAU,yDACjE,EAAA8H,GAAA,KAAa,kBAAmB9H,GAAQ,SAAU,wEACjD,IAEH,WAAc,WACZ,IAAIud,EAAYtS,KAAKD,OACpB+B,GAAY,IAAIzD,SAAQ,SAAUI,EAAMtE,GAClCsE,EAAKwB,KAAQ/K,OAAOqd,SAAS9T,KAChCA,EAAKwB,IAAM,WAAWpJ,OAAOyb,EAAW,KAAKzb,OAAOsD,EAAO,YAG9D,CAAC2H,IAEJ,IAAI0Q,EAAmB,SAA0B/T,EAAMgU,EAAiBpW,GACtE,IAAIqW,GAAY,OAAmBD,GAGlB,IAAbV,EACFW,EAAYA,EAAUvQ,OAAO,GACpB4P,IACTW,EAAYA,EAAUvQ,MAAM,EAAG4P,IAGjCI,EAAkBO,GAClB,IAAIC,EAAa,CACflU,KAAMA,EACNqD,SAAU4Q,GAGRrW,IACFsW,EAAWtW,MAAQA,GAGrB9C,MAAAA,GAAoDA,EAASoZ,IA2E3DhO,EAAe,SAAsBiO,GAEvC,IAAIC,EAAuBD,EAAkB3P,QAAO,SAAU6P,GAC5D,OAAQA,EAAKrU,KAAKiT,OAGpB,GAAKmB,EAAqBxc,OAA1B,CAIA,IAAI0c,EAAiBF,EAAqBnZ,KAAI,SAAUoZ,GACtD,OAAOlK,EAASkK,EAAKrU,SAGnBuU,GAAc,OAAmBd,GAErCa,EAAe1U,SAAQ,SAAU4U,GAE/BD,EAAchK,EAAeiK,EAASD,MAExCD,EAAe1U,SAAQ,SAAU4U,EAAS9Y,GAExC,IAAI+Y,EAAiBD,EAErB,GAAKJ,EAAqB1Y,GAAO0K,WAsB/BoO,EAAQjU,OAAS,gBAtB0B,CAE3C,IACImU,EADApK,EAAgBkK,EAAQlK,cAG5B,IACEoK,EAAQ,IAAItN,KAAK,CAACkD,GAAgBA,EAAcnK,KAAM,CACpD3G,KAAM8Q,EAAc9Q,OAEtB,MAAOrC,IACPud,EAAQ,IAAIzU,KAAK,CAACqK,GAAgB,CAChC9Q,KAAM8Q,EAAc9Q,QAEhB2G,KAAOmK,EAAcnK,KAC3BuU,EAAMrK,iBAAmB,IAAI9I,KAC7BmT,EAAMtK,cAAe,IAAI7I,MAAOoT,UAGlCD,EAAMlT,IAAMgT,EAAQhT,IACpBiT,EAAiBC,EAMnBX,EAAiBU,EAAgBF,QAIjCzT,EAAY,SAAmBjC,EAAUmB,EAAMtB,GACjD,IAC0B,iBAAbG,IACTA,EAAWC,KAAKC,MAAMF,IAExB,MAAO1H,IAKT,GAAKyT,EAAY5K,EAAMyT,GAAvB,CAIA,IAAImB,EAAazK,EAASnK,GAC1B4U,EAAWrU,OAAS,OACpBqU,EAAWtV,QAAU,IACrBsV,EAAW/V,SAAWA,EACtB+V,EAAWlW,IAAMA,EACjB,IAAI8L,EAAeD,EAAeqK,EAAYnB,GAC9CM,EAAiBa,EAAYpK,KAG3BrL,EAAa,SAAoBhI,EAAG6I,GAEtC,GAAK4K,EAAY5K,EAAMyT,GAAvB,CAIA,IAAImB,EAAazK,EAASnK,GAC1B4U,EAAWrU,OAAS,YACpBqU,EAAWtV,QAAUnI,EAAEmI,QACvB,IAAIkL,EAAeD,EAAeqK,EAAYnB,GAC9CM,EAAiBa,EAAYpK,EAAcrT,KAGzCkJ,EAAU,SAAiBkO,EAAO1P,EAAUmB,GAE9C,GAAK4K,EAAY5K,EAAMyT,GAAvB,CAIA,IAAImB,EAAazK,EAASnK,GAC1B4U,EAAWrG,MAAQA,EACnBqG,EAAW/V,SAAWA,EACtB+V,EAAWrU,OAAS,QACpB,IAAIiK,EAAeD,EAAeqK,EAAYnB,GAC9CM,EAAiBa,EAAYpK,KAG3BqK,EAAe,SAAsB7U,GACvC,IAAI8U,EACJ/O,QAAQ0L,QAA4B,mBAAbhC,EAA0BA,EAASzP,GAAQyP,GAAUxJ,MAAK,SAAU/H,GACzF,IAAIrH,EAGJ,IAAY,IAARqH,EAAJ,CAIA,IAAI6W,ELrRH,SAAwB/U,EAAMqD,GACnC,IAAIwH,OAAwBxQ,IAAb2F,EAAKwB,IAAoB,MAAQ,OAC5CwT,EAAU3R,EAASmB,QAAO,SAAUtJ,GACtC,OAAOA,EAAK2P,KAAc7K,EAAK6K,MAGjC,OAAImK,EAAQpd,SAAWyL,EAASzL,OACvB,KAGFod,EK2QmBC,CAAejV,EAAMyT,GAEvCsB,IACFD,GAAc,QAAS,OAAS,GAAI9U,GAAO,CACzCO,OAAQ,YAEVkT,MAAAA,GAAgEA,EAAe7T,SAAQ,SAAU1E,GAC/F,IAAI2P,OAA+BxQ,IAApBya,EAAYtT,IAAoB,MAAQ,OAEnDtG,EAAK2P,KAAciK,EAAYjK,IAAcpU,OAAOqd,SAAS5Y,KAC/DA,EAAKqF,OAAS,cAGQ,QAAzB1J,EAAKmI,EAAOyN,eAA4B,IAAP5V,GAAyBA,EAAGwK,MAAMyT,GACpEf,EAAiBe,EAAaC,SAKhC1P,EAAa,SAAoBlO,GACnCA,EAAEkS,kBACFuK,EAAazc,EAAEqC,OAIjB,sBAA0BjD,GAAK,WAC7B,MAAO,CACL2P,aAAcA,EACdpF,UAAWA,EACX3B,WAAYA,EACZkB,QAASA,EACTgD,SAAUoQ,EACVzU,OAAQA,EAAOyN,YAInB,IAAIhU,EAAoB,aAAiB,OACrCP,GAAeO,EAAkBP,aACjCQ,GAAYD,EAAkBC,UAE9B5B,GAAYoB,GAAa,SAAUW,GAEnCqc,IAAgB,QAAS,OAAS,CACpChP,aAAcA,EACd7F,QAASA,EACTlB,WAAYA,EACZ2B,UAAWA,GACVxK,GAAQ,CACTQ,UAAWA,GACX0P,aA1OuB,SAA4BxG,EAAMmV,GACzD,OA5HgDC,OA4H/B,EA5HwCC,OA4HhC,EA5H4CC,OA4HpC,EA5HuCC,EA4HlB,UAAyB,SAAShP,IACtF,IAAIC,EAAcgP,EAAepP,EAAYqP,EAC7C,OAAO,UAAyB,SAAkB3O,GAChD,OACE,OAAQA,EAASC,KAAOD,EAASE,MAC/B,KAAK,EAIH,GAHAR,EAAelQ,EAAMkQ,aAAcgP,EAAgBlf,EAAMkf,cACzDpP,EAAapG,GAERwG,EAAc,CACjBM,EAASE,KAAO,GAChB,MAIF,OADAF,EAASE,KAAO,EACTR,EAAaxG,EAAMmV,GAE5B,KAAK,EAGH,IAAiB,KAFjBM,EAAS3O,EAASG,MAEO,CACvBH,EAASE,KAAO,EAChB,MAGF,OAAOF,EAASK,OAAO,UAAU,GAEnC,KAAK,EAIH,UAFOnH,EAAKiT,IAENwC,IAAWxC,GAAc,CAC7BnM,EAASE,KAAO,GAChB,MAOF,OAJAvQ,OAAOif,eAAe1V,EAAMiT,GAAa,CACvC5V,OAAO,EACPsY,cAAc,IAET7O,EAASK,OAAO,UAAU,GAEnC,KAAK,GACqB,YAApB,OAAQsO,IAAwBA,IAClCrP,EAAaqP,GAGjB,KAAK,GACH,IAAKD,EAAe,CAClB1O,EAASE,KAAO,GAChB,MAIF,OADAF,EAASE,KAAO,GACTwO,EAAcpP,GAEvB,KAAK,GACHA,EAAaU,EAASG,KAExB,KAAK,GACH,OAAOH,EAASK,OAAO,SAAUf,GAEnC,KAAK,GACL,IAAK,MACH,OAAOU,EAASO,UAGrBd,MAxLA,IAAK+O,IAAMA,EAAIvP,WAAU,SAAU0L,EAASmE,GACjD,SAASC,EAAUxY,GACjB,IACEyY,EAAKP,EAAUvO,KAAK3J,IACpB,MAAOlG,GACPye,EAAOze,IAIX,SAAS4e,EAAS1Y,GAChB,IACEyY,EAAKP,EAAiB,MAAElY,IACxB,MAAOlG,GACPye,EAAOze,IAIX,SAAS2e,EAAKL,GAvBhB,IAAepY,EAwBXoY,EAAOO,KAAOvE,EAAQgE,EAAOpY,QAxBlBA,EAwBiCoY,EAAOpY,MAvB9CA,aAAiBiY,EAAIjY,EAAQ,IAAIiY,GAAE,SAAU7D,GAClDA,EAAQpU,OAsBkD4I,KAAK4P,EAAWE,GAG5ED,GAAMP,EAAYA,EAAU5R,MAAMyR,EAASC,GAAc,KAAKrO,WA5BxB,IAAUoO,EAASC,EAAYC,EAAGC,GAsWxEza,cAAUT,WAGL6a,GAAcne,iBACdme,GAAc1a,MAKhBZ,IAAYwB,UACR8Z,GAAc5M,GAGvB,IAAI2N,GAAmB,SAA0BC,GAC/C,OAAO9C,EAA8B,gBAAoB+C,GAAA,EAAgB,CACvEC,cAAe,SACfC,cAAe,cACd,SAAUnL,GACX,IAAIlT,EAAiC,kBAAnBob,EAA+B,GAAKA,EAClDzH,EAAiB3T,EAAK2T,eACtBD,EAAkB1T,EAAK0T,gBACvBE,EAAmB5T,EAAK4T,iBACxBE,EAAa9T,EAAK8T,WAClBE,EAAehU,EAAKgU,aAExB,OAAoB,gBAAoB,GAAY,CAClDb,SAAUA,EACVzF,MAAO+N,EACPpF,YAAaA,EACbpC,UAAWA,EACXC,WAAYA,EACZuD,SAAUoF,EACVlJ,gBAAiBvQ,GAAYuQ,EAC7BD,gBAAiBA,EACjBE,iBAAkBA,EAClBE,WAAYA,EACZE,aAAcA,EACdV,WAAYA,EACZJ,QAAQ,QAAS,OAAS,GAAIA,GAASmI,GACvC3D,WAAYA,EACZrE,SAAUA,EACVuE,aAAcsG,EACd1K,WAAYA,OAEX0K,GAGP,GAAa,SAAT1c,EAAiB,CACnB,IAAIjB,GAEA+d,GAAU,IAAWxf,IAAYyB,GAAc,IAAI,OAAgBA,GAAa,GAAGH,OAAOtB,GAAW,UAAU,IAAO,OAAgByB,GAAa,GAAGH,OAAOtB,GAAW,mBAAoB2c,EAAezR,MAAK,SAAUhC,GAC5N,MAAuB,cAAhBA,EAAKO,YACT,OAAgBhI,GAAa,GAAGH,OAAOtB,GAAW,eAA8B,aAAd6c,IAA2B,OAAgBpb,GAAa,GAAGH,OAAOtB,GAAW,aAAcsE,IAAW,OAAgB7C,GAAa,GAAGH,OAAOtB,GAAW,QAAuB,QAAd4B,IAAsBH,IAAcxB,GAC5Q,OAAoB,gBAAoB,OAAQ,KAAmB,gBAAoB,MAAO,CAC5FA,UAAWuf,GACXtN,OAAQ3D,EACR4D,WAAY5D,EACZkR,YAAalR,EACb7K,MAAOA,GACO,gBAAoB,GAAU,OAAS,GAAI0a,GAAe,CACxE3e,IAAKyI,EACLjI,UAAW,GAAGqB,OAAOtB,GAAW,UACjB,gBAAoB,MAAO,CAC1CC,UAAW,GAAGqB,OAAOtB,GAAW,oBAC/B8C,KAAaqc,MAGlB,IAAIO,GAAkB,IAAW1f,IAAYmW,EAAe,IAAI,OAAgBA,EAAc,GAAG7U,OAAOtB,GAAW,YAAY,IAAO,OAAgBmW,EAAc,GAAG7U,OAAOtB,GAAW,YAAYsB,OAAO+S,IAAW,IAAO,OAAgB8B,EAAc,GAAG7U,OAAOtB,GAAW,aAAcsE,IAAW,OAAgB6R,EAAc,GAAG7U,OAAOtB,GAAW,QAAuB,QAAd4B,IAAsBuU,IACxXwJ,GAA4B,gBAAoB,MAAO,CACzD1f,UAAWyf,GACXhc,MAAOZ,OAAWS,EAAY,CAC5BiP,QAAS,SAEG,gBAAoB,GAAU,OAAS,GAAI4L,GAAe,CACxE3e,IAAKyI,MAGP,MAAiB,iBAAbmM,EACkB,gBAAoB,OAAQ,CAC9CpU,UAAW,IAAW,GAAGqB,OAAOtB,GAAW,yBAA0BC,IACpEkf,GAAiBQ,KAGF,gBAAoB,OAAQ,CAC9C1f,UAAWA,GACV0f,GAAcR,OAGf,GAAsB,aAAiB/C,IAC3C,GAAOlJ,QAAU,EACjB,GAAOiJ,YAAcA,GACrB,GAAOrc,YAAc,SACrB,GAAOgT,aAAe,CACpBpQ,KAAM,SACN8L,UAAU,EACV7J,OAAQ,GACRiE,KAAM,GACN+E,OAAQ,GACR2O,gBAAgB,EAChBjI,SAAU,OACVpU,UAAW,GACXqE,UAAU,EACVsb,qBAAqB,GAEvB,YCndA,WAAiB,EACjB","sources":["webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons-svg/es/asn/DeleteOutlined.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons/es/icons/DeleteOutlined.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons-svg/es/asn/UploadOutlined.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons/es/icons/UploadOutlined.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/card/Grid.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/card/index.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/card/Meta.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/rc-switch/es/index.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/switch/index.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/rc-upload/es/request.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/rc-upload/es/uid.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/rc-upload/es/attr-accept.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/rc-upload/es/traverseFileTree.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/rc-upload/es/AjaxUploader.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/rc-upload/es/Upload.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/rc-upload/es/index.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/upload/Dragger.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons-svg/es/asn/PaperClipOutlined.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons/es/icons/PaperClipOutlined.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons-svg/es/asn/PictureTwoTone.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons/es/icons/PictureTwoTone.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons-svg/es/asn/FileTwoTone.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons/es/icons/FileTwoTone.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/upload/utils.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons-svg/es/asn/DownloadOutlined.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/@ant-design/icons/es/icons/DownloadOutlined.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/upload/UploadList/ListItem.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/upload/UploadList/index.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/upload/Upload.js","webpack:///../../../../../tmp/builds/devowlio/devowl-wp/node_modules/antd/es/upload/index.js"],"sourcesContent":["// This icon file is generated automatically.\nvar DeleteOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z\" } }] }, \"name\": \"delete\", \"theme\": \"outlined\" };\nexport default DeleteOutlined;\n","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport DeleteOutlinedSvg from \"@ant-design/icons-svg/es/asn/DeleteOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar DeleteOutlined = function DeleteOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: DeleteOutlinedSvg\n }));\n};\n\nDeleteOutlined.displayName = 'DeleteOutlined';\nexport default /*#__PURE__*/React.forwardRef(DeleteOutlined);","// This icon file is generated automatically.\nvar UploadOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M400 317.7h73.9V656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V317.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 163a8 8 0 00-12.6 0l-112 141.7c-4.1 5.3-.4 13 6.3 13zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z\" } }] }, \"name\": \"upload\", \"theme\": \"outlined\" };\nexport default UploadOutlined;\n","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport UploadOutlinedSvg from \"@ant-design/icons-svg/es/asn/UploadOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar UploadOutlined = function UploadOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: UploadOutlinedSvg\n }));\n};\n\nUploadOutlined.displayName = 'UploadOutlined';\nexport default /*#__PURE__*/React.forwardRef(UploadOutlined);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n\n for (var p in s) {\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n }\n\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { ConfigConsumer } from '../config-provider';\n\nvar Grid = function Grid(_a) {\n var prefixCls = _a.prefixCls,\n className = _a.className,\n _a$hoverable = _a.hoverable,\n hoverable = _a$hoverable === void 0 ? true : _a$hoverable,\n props = __rest(_a, [\"prefixCls\", \"className\", \"hoverable\"]);\n\n return /*#__PURE__*/React.createElement(ConfigConsumer, null, function (_ref) {\n var getPrefixCls = _ref.getPrefixCls;\n var prefix = getPrefixCls('card', prefixCls);\n var classString = classNames(\"\".concat(prefix, \"-grid\"), className, _defineProperty({}, \"\".concat(prefix, \"-grid-hoverable\"), hoverable));\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, props, {\n className: classString\n }));\n });\n};\n\nexport default Grid;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n\n for (var p in s) {\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n }\n\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport Grid from './Grid';\nimport Meta from './Meta';\nimport Tabs from '../tabs';\nimport Row from '../row';\nimport Col from '../col';\nimport { ConfigContext } from '../config-provider';\nimport SizeContext from '../config-provider/SizeContext';\n\nfunction getAction(actions) {\n var actionList = actions.map(function (action, index) {\n return (\n /*#__PURE__*/\n // eslint-disable-next-line react/no-array-index-key\n React.createElement(\"li\", {\n style: {\n width: \"\".concat(100 / actions.length, \"%\")\n },\n key: \"action-\".concat(index)\n }, /*#__PURE__*/React.createElement(\"span\", null, action))\n );\n });\n return actionList;\n}\n\nvar Card = function Card(props) {\n var _extends2, _classNames;\n\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n\n var size = React.useContext(SizeContext);\n\n var onTabChange = function onTabChange(key) {\n var _a;\n\n (_a = props.onTabChange) === null || _a === void 0 ? void 0 : _a.call(props, key);\n };\n\n var isContainGrid = function isContainGrid() {\n var containGrid;\n React.Children.forEach(props.children, function (element) {\n if (element && element.type && element.type === Grid) {\n containGrid = true;\n }\n });\n return containGrid;\n };\n\n var customizePrefixCls = props.prefixCls,\n className = props.className,\n extra = props.extra,\n _props$headStyle = props.headStyle,\n headStyle = _props$headStyle === void 0 ? {} : _props$headStyle,\n _props$bodyStyle = props.bodyStyle,\n bodyStyle = _props$bodyStyle === void 0 ? {} : _props$bodyStyle,\n title = props.title,\n loading = props.loading,\n _props$bordered = props.bordered,\n bordered = _props$bordered === void 0 ? true : _props$bordered,\n customizeSize = props.size,\n type = props.type,\n cover = props.cover,\n actions = props.actions,\n tabList = props.tabList,\n children = props.children,\n activeTabKey = props.activeTabKey,\n defaultActiveTabKey = props.defaultActiveTabKey,\n tabBarExtraContent = props.tabBarExtraContent,\n hoverable = props.hoverable,\n _props$tabProps = props.tabProps,\n tabProps = _props$tabProps === void 0 ? {} : _props$tabProps,\n others = __rest(props, [\"prefixCls\", \"className\", \"extra\", \"headStyle\", \"bodyStyle\", \"title\", \"loading\", \"bordered\", \"size\", \"type\", \"cover\", \"actions\", \"tabList\", \"children\", \"activeTabKey\", \"defaultActiveTabKey\", \"tabBarExtraContent\", \"hoverable\", \"tabProps\"]);\n\n var prefixCls = getPrefixCls('card', customizePrefixCls);\n var loadingBlockStyle = bodyStyle.padding === 0 || bodyStyle.padding === '0px' ? {\n padding: 24\n } : undefined;\n var block = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-loading-block\")\n });\n var loadingBlock = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-loading-content\"),\n style: loadingBlockStyle\n }, /*#__PURE__*/React.createElement(Row, {\n gutter: 8\n }, /*#__PURE__*/React.createElement(Col, {\n span: 22\n }, block)), /*#__PURE__*/React.createElement(Row, {\n gutter: 8\n }, /*#__PURE__*/React.createElement(Col, {\n span: 8\n }, block), /*#__PURE__*/React.createElement(Col, {\n span: 15\n }, block)), /*#__PURE__*/React.createElement(Row, {\n gutter: 8\n }, /*#__PURE__*/React.createElement(Col, {\n span: 6\n }, block), /*#__PURE__*/React.createElement(Col, {\n span: 18\n }, block)), /*#__PURE__*/React.createElement(Row, {\n gutter: 8\n }, /*#__PURE__*/React.createElement(Col, {\n span: 13\n }, block), /*#__PURE__*/React.createElement(Col, {\n span: 9\n }, block)), /*#__PURE__*/React.createElement(Row, {\n gutter: 8\n }, /*#__PURE__*/React.createElement(Col, {\n span: 4\n }, block), /*#__PURE__*/React.createElement(Col, {\n span: 3\n }, block), /*#__PURE__*/React.createElement(Col, {\n span: 16\n }, block)));\n var hasActiveTabKey = activeTabKey !== undefined;\n\n var extraProps = _extends(_extends({}, tabProps), (_extends2 = {}, _defineProperty(_extends2, hasActiveTabKey ? 'activeKey' : 'defaultActiveKey', hasActiveTabKey ? activeTabKey : defaultActiveTabKey), _defineProperty(_extends2, \"tabBarExtraContent\", tabBarExtraContent), _extends2));\n\n var head;\n var tabs = tabList && tabList.length ? /*#__PURE__*/React.createElement(Tabs, _extends({\n size: \"large\"\n }, extraProps, {\n className: \"\".concat(prefixCls, \"-head-tabs\"),\n onChange: onTabChange\n }), tabList.map(function (item) {\n return /*#__PURE__*/React.createElement(Tabs.TabPane, {\n tab: item.tab,\n disabled: item.disabled,\n key: item.key\n });\n })) : null;\n\n if (title || extra || tabs) {\n head = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-head\"),\n style: headStyle\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-head-wrapper\")\n }, title && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-head-title\")\n }, title), extra && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-extra\")\n }, extra)), tabs);\n }\n\n var coverDom = cover ? /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-cover\")\n }, cover) : null;\n var body = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-body\"),\n style: bodyStyle\n }, loading ? loadingBlock : children);\n var actionDom = actions && actions.length ? /*#__PURE__*/React.createElement(\"ul\", {\n className: \"\".concat(prefixCls, \"-actions\")\n }, getAction(actions)) : null;\n var divProps = omit(others, ['onTabChange']);\n var mergedSize = customizeSize || size;\n var classString = classNames(prefixCls, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-loading\"), loading), _defineProperty(_classNames, \"\".concat(prefixCls, \"-bordered\"), bordered), _defineProperty(_classNames, \"\".concat(prefixCls, \"-hoverable\"), hoverable), _defineProperty(_classNames, \"\".concat(prefixCls, \"-contain-grid\"), isContainGrid()), _defineProperty(_classNames, \"\".concat(prefixCls, \"-contain-tabs\"), tabList && tabList.length), _defineProperty(_classNames, \"\".concat(prefixCls, \"-\").concat(mergedSize), mergedSize), _defineProperty(_classNames, \"\".concat(prefixCls, \"-type-\").concat(type), !!type), _defineProperty(_classNames, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _classNames), className);\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, divProps, {\n className: classString\n }), head, coverDom, body, actionDom);\n};\n\nCard.Grid = Grid;\nCard.Meta = Meta;\nexport default Card;","import _extends from \"@babel/runtime/helpers/esm/extends\";\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n\n for (var p in s) {\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n }\n\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { ConfigConsumer } from '../config-provider';\n\nvar Meta = function Meta(props) {\n return /*#__PURE__*/React.createElement(ConfigConsumer, null, function (_ref) {\n var getPrefixCls = _ref.getPrefixCls;\n\n var customizePrefixCls = props.prefixCls,\n className = props.className,\n avatar = props.avatar,\n title = props.title,\n description = props.description,\n others = __rest(props, [\"prefixCls\", \"className\", \"avatar\", \"title\", \"description\"]);\n\n var prefixCls = getPrefixCls('card', customizePrefixCls);\n var classString = classNames(\"\".concat(prefixCls, \"-meta\"), className);\n var avatarDom = avatar ? /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-meta-avatar\")\n }, avatar) : null;\n var titleDom = title ? /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-meta-title\")\n }, title) : null;\n var descriptionDom = description ? /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-meta-description\")\n }, description) : null;\n var MetaDetail = titleDom || descriptionDom ? /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-meta-detail\")\n }, titleDom, descriptionDom) : null;\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, others, {\n className: classString\n }), avatarDom, MetaDetail);\n });\n};\n\nexport default Meta;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport KeyCode from \"rc-util/es/KeyCode\";\nvar Switch = React.forwardRef(function (_ref, ref) {\n var _classNames;\n\n var _ref$prefixCls = _ref.prefixCls,\n prefixCls = _ref$prefixCls === void 0 ? 'rc-switch' : _ref$prefixCls,\n className = _ref.className,\n checked = _ref.checked,\n defaultChecked = _ref.defaultChecked,\n disabled = _ref.disabled,\n loadingIcon = _ref.loadingIcon,\n checkedChildren = _ref.checkedChildren,\n unCheckedChildren = _ref.unCheckedChildren,\n onClick = _ref.onClick,\n onChange = _ref.onChange,\n onKeyDown = _ref.onKeyDown,\n restProps = _objectWithoutProperties(_ref, [\"prefixCls\", \"className\", \"checked\", \"defaultChecked\", \"disabled\", \"loadingIcon\", \"checkedChildren\", \"unCheckedChildren\", \"onClick\", \"onChange\", \"onKeyDown\"]);\n\n var _useMergedState = useMergedState(false, {\n value: checked,\n defaultValue: defaultChecked\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n innerChecked = _useMergedState2[0],\n setInnerChecked = _useMergedState2[1];\n\n function triggerChange(newChecked, event) {\n var mergedChecked = innerChecked;\n\n if (!disabled) {\n mergedChecked = newChecked;\n setInnerChecked(mergedChecked);\n onChange === null || onChange === void 0 ? void 0 : onChange(mergedChecked, event);\n }\n\n return mergedChecked;\n }\n\n function onInternalKeyDown(e) {\n if (e.which === KeyCode.LEFT) {\n triggerChange(false, e);\n } else if (e.which === KeyCode.RIGHT) {\n triggerChange(true, e);\n }\n\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n }\n\n function onInternalClick(e) {\n var ret = triggerChange(!innerChecked, e); // [Legacy] trigger onClick with value\n\n onClick === null || onClick === void 0 ? void 0 : onClick(ret, e);\n }\n\n var switchClassName = classNames(prefixCls, className, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-checked\"), innerChecked), _defineProperty(_classNames, \"\".concat(prefixCls, \"-disabled\"), disabled), _classNames));\n return React.createElement(\"button\", Object.assign({}, restProps, {\n type: \"button\",\n role: \"switch\",\n \"aria-checked\": innerChecked,\n disabled: disabled,\n className: switchClassName,\n ref: ref,\n onKeyDown: onInternalKeyDown,\n onClick: onInternalClick\n }), loadingIcon, React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-inner\")\n }, innerChecked ? checkedChildren : unCheckedChildren));\n});\nSwitch.displayName = 'Switch';\nexport default Switch;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n\n for (var p in s) {\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n }\n\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n\nimport * as React from 'react';\nimport RcSwitch from 'rc-switch';\nimport classNames from 'classnames';\nimport LoadingOutlined from \"@ant-design/icons/es/icons/LoadingOutlined\";\nimport Wave from '../_util/wave';\nimport { ConfigContext } from '../config-provider';\nimport SizeContext from '../config-provider/SizeContext';\nimport devWarning from '../_util/devWarning';\nvar Switch = /*#__PURE__*/React.forwardRef(function (_a, ref) {\n var _classNames;\n\n var customizePrefixCls = _a.prefixCls,\n customizeSize = _a.size,\n loading = _a.loading,\n _a$className = _a.className,\n className = _a$className === void 0 ? '' : _a$className,\n disabled = _a.disabled,\n props = __rest(_a, [\"prefixCls\", \"size\", \"loading\", \"className\", \"disabled\"]);\n\n devWarning('checked' in props || !('value' in props), 'Switch', '`value` is not a valid prop, do you mean `checked`?');\n\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n\n var size = React.useContext(SizeContext);\n var prefixCls = getPrefixCls('switch', customizePrefixCls);\n var loadingIcon = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-handle\")\n }, loading && /*#__PURE__*/React.createElement(LoadingOutlined, {\n className: \"\".concat(prefixCls, \"-loading-icon\")\n }));\n var classes = classNames((_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-small\"), (customizeSize || size) === 'small'), _defineProperty(_classNames, \"\".concat(prefixCls, \"-loading\"), loading), _defineProperty(_classNames, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _classNames), className);\n return /*#__PURE__*/React.createElement(Wave, {\n insertExtraNode: true\n }, /*#__PURE__*/React.createElement(RcSwitch, _extends({}, props, {\n prefixCls: prefixCls,\n className: classes,\n disabled: disabled || loading,\n ref: ref,\n loadingIcon: loadingIcon\n })));\n});\nSwitch.__ANT_SWITCH = true;\nSwitch.displayName = 'Switch';\nexport default Switch;","function getError(option, xhr) {\n var msg = \"cannot \".concat(option.method, \" \").concat(option.action, \" \").concat(xhr.status, \"'\");\n var err = new Error(msg);\n err.status = xhr.status;\n err.method = option.method;\n err.url = option.action;\n return err;\n}\n\nfunction getBody(xhr) {\n var text = xhr.responseText || xhr.response;\n\n if (!text) {\n return text;\n }\n\n try {\n return JSON.parse(text);\n } catch (e) {\n return text;\n }\n}\n\nexport default function upload(option) {\n // eslint-disable-next-line no-undef\n var xhr = new XMLHttpRequest();\n\n if (option.onProgress && xhr.upload) {\n xhr.upload.onprogress = function progress(e) {\n if (e.total > 0) {\n e.percent = e.loaded / e.total * 100;\n }\n\n option.onProgress(e);\n };\n } // eslint-disable-next-line no-undef\n\n\n var formData = new FormData();\n\n if (option.data) {\n Object.keys(option.data).forEach(function (key) {\n var value = option.data[key]; // support key-value array data\n\n if (Array.isArray(value)) {\n value.forEach(function (item) {\n // { list: [ 11, 22 ] }\n // formData.append('list[]', 11);\n formData.append(\"\".concat(key, \"[]\"), item);\n });\n return;\n }\n\n formData.append(key, option.data[key]);\n });\n } // eslint-disable-next-line no-undef\n\n\n if (option.file instanceof Blob) {\n formData.append(option.filename, option.file, option.file.name);\n } else {\n formData.append(option.filename, option.file);\n }\n\n xhr.onerror = function error(e) {\n option.onError(e);\n };\n\n xhr.onload = function onload() {\n // allow success when 2xx status\n // see https://github.com/react-component/upload/issues/34\n if (xhr.status < 200 || xhr.status >= 300) {\n return option.onError(getError(option, xhr), getBody(xhr));\n }\n\n return option.onSuccess(getBody(xhr), xhr);\n };\n\n xhr.open(option.method, option.action, true); // Has to be after `.open()`. See https://github.com/enyo/dropzone/issues/179\n\n if (option.withCredentials && 'withCredentials' in xhr) {\n xhr.withCredentials = true;\n }\n\n var headers = option.headers || {}; // when set headers['X-Requested-With'] = null , can close default XHR header\n // see https://github.com/react-component/upload/issues/33\n\n if (headers['X-Requested-With'] !== null) {\n xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\n }\n\n Object.keys(headers).forEach(function (h) {\n if (headers[h] !== null) {\n xhr.setRequestHeader(h, headers[h]);\n }\n });\n xhr.send(formData);\n return {\n abort: function abort() {\n xhr.abort();\n }\n };\n}","var now = +new Date();\nvar index = 0;\nexport default function uid() {\n // eslint-disable-next-line no-plusplus\n return \"rc-upload-\".concat(now, \"-\").concat(++index);\n}","function endsWith(str, suffix) {\n return str.indexOf(suffix, str.length - suffix.length) !== -1;\n}\n\nexport default (function (file, acceptedFiles) {\n if (file && acceptedFiles) {\n var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(',');\n var fileName = file.name || '';\n var mimeType = file.type || '';\n var baseMimeType = mimeType.replace(/\\/.*$/, '');\n return acceptedFilesArray.some(function (type) {\n var validType = type.trim(); // This is something like */*,* allow all files\n\n if (/^\\*(\\/\\*)?$/.test(type)) {\n return true;\n }\n\n if (validType.charAt(0) === '.') {\n return endsWith(fileName.toLowerCase(), validType.toLowerCase());\n }\n\n if (/\\/\\*$/.test(validType)) {\n // This is something like a image/* mime type\n return baseMimeType === validType.replace(/\\/.*$/, '');\n }\n\n return mimeType === validType;\n });\n }\n\n return true;\n});","function loopFiles(item, callback) {\n var dirReader = item.createReader();\n var fileList = [];\n\n function sequence() {\n dirReader.readEntries(function (entries) {\n var entryList = Array.prototype.slice.apply(entries);\n fileList = fileList.concat(entryList); // Check if all the file has been viewed\n\n var isFinished = !entryList.length;\n\n if (isFinished) {\n callback(fileList);\n } else {\n sequence();\n }\n });\n }\n\n sequence();\n}\n\nvar traverseFileTree = function traverseFileTree(files, callback, isAccepted) {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n var _traverseFileTree = function _traverseFileTree(item, path) {\n // eslint-disable-next-line no-param-reassign\n item.path = path || '';\n\n if (item.isFile) {\n item.file(function (file) {\n if (isAccepted(file)) {\n // https://github.com/ant-design/ant-design/issues/16426\n if (item.fullPath && !file.webkitRelativePath) {\n Object.defineProperties(file, {\n webkitRelativePath: {\n writable: true\n }\n }); // eslint-disable-next-line no-param-reassign\n\n file.webkitRelativePath = item.fullPath.replace(/^\\//, '');\n Object.defineProperties(file, {\n webkitRelativePath: {\n writable: false\n }\n });\n }\n\n callback([file]);\n }\n });\n } else if (item.isDirectory) {\n loopFiles(item, function (entries) {\n entries.forEach(function (entryItem) {\n _traverseFileTree(entryItem, \"\".concat(path).concat(item.name, \"/\"));\n });\n });\n }\n };\n\n files.forEach(function (file) {\n _traverseFileTree(file.webkitGetAsEntry());\n });\n};\n\nexport default traverseFileTree;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/esm/asyncToGenerator\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport React, { Component } from 'react';\nimport classNames from 'classnames';\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport defaultRequest from './request';\nimport getUid from './uid';\nimport attrAccept from './attr-accept';\nimport traverseFileTree from './traverseFileTree';\n\nvar AjaxUploader = /*#__PURE__*/function (_Component) {\n _inherits(AjaxUploader, _Component);\n\n var _super = _createSuper(AjaxUploader);\n\n function AjaxUploader() {\n var _this;\n\n _classCallCheck(this, AjaxUploader);\n\n _this = _super.apply(this, arguments);\n _this.state = {\n uid: getUid()\n };\n _this.reqs = {};\n\n _this.onChange = function (e) {\n var files = e.target.files;\n\n var acceptedFiles = _toConsumableArray(files).filter(function (file) {\n return attrAccept(file, _this.props.accept);\n });\n\n _this.uploadFiles(acceptedFiles);\n\n _this.reset();\n };\n\n _this.onClick = function (e) {\n var el = _this.fileInput;\n\n if (!el) {\n return;\n }\n\n var _this$props = _this.props,\n children = _this$props.children,\n onClick = _this$props.onClick;\n\n if (children && children.type === 'button') {\n var parent = el.parentNode;\n parent.focus();\n parent.querySelector('button').blur();\n }\n\n el.click();\n\n if (onClick) {\n onClick(e);\n }\n };\n\n _this.onKeyDown = function (e) {\n if (e.key === 'Enter') {\n _this.onClick(e);\n }\n };\n\n _this.onFileDrop = function (e) {\n var multiple = _this.props.multiple;\n e.preventDefault();\n\n if (e.type === 'dragover') {\n return;\n }\n\n if (_this.props.directory) {\n traverseFileTree(Array.prototype.slice.call(e.dataTransfer.items), _this.uploadFiles, function (_file) {\n return attrAccept(_file, _this.props.accept);\n });\n } else {\n var files = _toConsumableArray(e.dataTransfer.files).filter(function (file) {\n return attrAccept(file, _this.props.accept);\n });\n\n if (multiple === false) {\n files = files.slice(0, 1);\n }\n\n _this.uploadFiles(files);\n }\n };\n\n _this.uploadFiles = function (files) {\n var originFiles = _toConsumableArray(files);\n\n var postFiles = originFiles.map(function (file) {\n // eslint-disable-next-line no-param-reassign\n file.uid = getUid();\n return _this.processFile(file, originFiles);\n }); // Batch upload files\n\n Promise.all(postFiles).then(function (fileList) {\n var onBatchStart = _this.props.onBatchStart;\n onBatchStart === null || onBatchStart === void 0 ? void 0 : onBatchStart(fileList.map(function (_ref) {\n var origin = _ref.origin,\n parsedFile = _ref.parsedFile;\n return {\n file: origin,\n parsedFile: parsedFile\n };\n }));\n fileList.filter(function (file) {\n return file.parsedFile !== null;\n }).forEach(function (file) {\n _this.post(file);\n });\n });\n };\n /**\n * Process file before upload. When all the file is ready, we start upload.\n */\n\n\n _this.processFile = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(file, fileList) {\n var beforeUpload, transformedFile, action, mergedAction, data, mergedData, parsedData, parsedFile, mergedParsedFile;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n beforeUpload = _this.props.beforeUpload;\n transformedFile = file;\n\n if (!beforeUpload) {\n _context.next = 14;\n break;\n }\n\n _context.prev = 3;\n _context.next = 6;\n return beforeUpload(file, fileList);\n\n case 6:\n transformedFile = _context.sent;\n _context.next = 12;\n break;\n\n case 9:\n _context.prev = 9;\n _context.t0 = _context[\"catch\"](3);\n // Rejection will also trade as false\n transformedFile = false;\n\n case 12:\n if (!(transformedFile === false)) {\n _context.next = 14;\n break;\n }\n\n return _context.abrupt(\"return\", {\n origin: file,\n parsedFile: null,\n action: null,\n data: null\n });\n\n case 14:\n // Get latest action\n action = _this.props.action;\n\n if (!(typeof action === 'function')) {\n _context.next = 21;\n break;\n }\n\n _context.next = 18;\n return action(file);\n\n case 18:\n mergedAction = _context.sent;\n _context.next = 22;\n break;\n\n case 21:\n mergedAction = action;\n\n case 22:\n // Get latest data\n data = _this.props.data;\n\n if (!(typeof data === 'function')) {\n _context.next = 29;\n break;\n }\n\n _context.next = 26;\n return data(file);\n\n case 26:\n mergedData = _context.sent;\n _context.next = 30;\n break;\n\n case 29:\n mergedData = data;\n\n case 30:\n parsedData = // string type is from legacy `transformFile`.\n // Not sure if this will work since no related test case works with it\n (_typeof(transformedFile) === 'object' || typeof transformedFile === 'string') && transformedFile ? transformedFile : file;\n\n if (parsedData instanceof File) {\n parsedFile = parsedData;\n } else {\n parsedFile = new File([parsedData], file.name, {\n type: file.type\n });\n }\n\n mergedParsedFile = parsedFile;\n mergedParsedFile.uid = file.uid;\n return _context.abrupt(\"return\", {\n origin: file,\n data: mergedData,\n parsedFile: mergedParsedFile,\n action: mergedAction\n });\n\n case 35:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[3, 9]]);\n }));\n\n return function (_x, _x2) {\n return _ref2.apply(this, arguments);\n };\n }();\n\n _this.saveFileInput = function (node) {\n _this.fileInput = node;\n };\n\n return _this;\n }\n\n _createClass(AjaxUploader, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this._isMounted = true;\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this._isMounted = false;\n this.abort();\n }\n }, {\n key: \"post\",\n value: function post(_ref3) {\n var _this2 = this;\n\n var data = _ref3.data,\n origin = _ref3.origin,\n action = _ref3.action,\n parsedFile = _ref3.parsedFile;\n\n if (!this._isMounted) {\n return;\n }\n\n var _this$props2 = this.props,\n onStart = _this$props2.onStart,\n customRequest = _this$props2.customRequest,\n name = _this$props2.name,\n headers = _this$props2.headers,\n withCredentials = _this$props2.withCredentials,\n method = _this$props2.method;\n var uid = origin.uid;\n var request = customRequest || defaultRequest;\n var requestOption = {\n action: action,\n filename: name,\n data: data,\n file: parsedFile,\n headers: headers,\n withCredentials: withCredentials,\n method: method || 'post',\n onProgress: function onProgress(e) {\n var onProgress = _this2.props.onProgress;\n onProgress === null || onProgress === void 0 ? void 0 : onProgress(e, parsedFile);\n },\n onSuccess: function onSuccess(ret, xhr) {\n var onSuccess = _this2.props.onSuccess;\n onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess(ret, parsedFile, xhr);\n delete _this2.reqs[uid];\n },\n onError: function onError(err, ret) {\n var onError = _this2.props.onError;\n onError === null || onError === void 0 ? void 0 : onError(err, ret, parsedFile);\n delete _this2.reqs[uid];\n }\n };\n onStart(origin);\n this.reqs[uid] = request(requestOption);\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.setState({\n uid: getUid()\n });\n }\n }, {\n key: \"abort\",\n value: function abort(file) {\n var reqs = this.reqs;\n\n if (file) {\n var uid = file.uid ? file.uid : file;\n\n if (reqs[uid] && reqs[uid].abort) {\n reqs[uid].abort();\n }\n\n delete reqs[uid];\n } else {\n Object.keys(reqs).forEach(function (uid) {\n if (reqs[uid] && reqs[uid].abort) {\n reqs[uid].abort();\n }\n\n delete reqs[uid];\n });\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var _classNames;\n\n var _this$props3 = this.props,\n Tag = _this$props3.component,\n prefixCls = _this$props3.prefixCls,\n className = _this$props3.className,\n disabled = _this$props3.disabled,\n id = _this$props3.id,\n style = _this$props3.style,\n multiple = _this$props3.multiple,\n accept = _this$props3.accept,\n children = _this$props3.children,\n directory = _this$props3.directory,\n openFileDialogOnClick = _this$props3.openFileDialogOnClick,\n onMouseEnter = _this$props3.onMouseEnter,\n onMouseLeave = _this$props3.onMouseLeave,\n capture = _this$props3.capture,\n otherProps = _objectWithoutProperties(_this$props3, [\"component\", \"prefixCls\", \"className\", \"disabled\", \"id\", \"style\", \"multiple\", \"accept\", \"children\", \"directory\", \"openFileDialogOnClick\", \"onMouseEnter\", \"onMouseLeave\", \"capture\"]);\n\n var cls = classNames((_classNames = {}, _defineProperty(_classNames, prefixCls, true), _defineProperty(_classNames, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_classNames, className, className), _classNames)); // because input don't have directory/webkitdirectory type declaration\n\n var dirProps = directory ? {\n directory: 'directory',\n webkitdirectory: 'webkitdirectory'\n } : {};\n var events = disabled ? {} : {\n onClick: openFileDialogOnClick ? this.onClick : function () {},\n onKeyDown: openFileDialogOnClick ? this.onKeyDown : function () {},\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onDrop: this.onFileDrop,\n onDragOver: this.onFileDrop,\n tabIndex: '0'\n };\n return /*#__PURE__*/React.createElement(Tag, _extends({}, events, {\n className: cls,\n role: \"button\",\n style: style\n }), /*#__PURE__*/React.createElement(\"input\", _extends({}, pickAttrs(otherProps, {\n aria: true,\n data: true\n }), {\n id: id,\n type: \"file\",\n ref: this.saveFileInput,\n onClick: function onClick(e) {\n return e.stopPropagation();\n } // https://github.com/ant-design/ant-design/issues/19948\n ,\n key: this.state.uid,\n style: {\n display: 'none'\n },\n accept: accept\n }, dirProps, {\n multiple: multiple,\n onChange: this.onChange\n }, capture != null ? {\n capture: capture\n } : {})), children);\n }\n }]);\n\n return AjaxUploader;\n}(Component);\n\nexport default AjaxUploader;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\n\n/* eslint react/prop-types:0 */\nimport React, { Component } from 'react';\nimport AjaxUpload from './AjaxUploader';\n\nfunction empty() {}\n\nvar Upload = /*#__PURE__*/function (_Component) {\n _inherits(Upload, _Component);\n\n var _super = _createSuper(Upload);\n\n function Upload() {\n var _this;\n\n _classCallCheck(this, Upload);\n\n _this = _super.apply(this, arguments);\n\n _this.saveUploader = function (node) {\n _this.uploader = node;\n };\n\n return _this;\n }\n\n _createClass(Upload, [{\n key: \"abort\",\n value: function abort(file) {\n this.uploader.abort(file);\n }\n }, {\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(AjaxUpload, _extends({}, this.props, {\n ref: this.saveUploader\n }));\n }\n }]);\n\n return Upload;\n}(Component);\n\nUpload.defaultProps = {\n component: 'span',\n prefixCls: 'rc-upload',\n data: {},\n headers: {},\n name: 'file',\n multipart: false,\n onStart: empty,\n onError: empty,\n onSuccess: empty,\n multiple: false,\n beforeUpload: null,\n customRequest: null,\n withCredentials: false,\n openFileDialogOnClick: true\n};\nexport default Upload;","import Upload from './Upload';\nexport default Upload;","import _extends from \"@babel/runtime/helpers/esm/extends\";\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n\n for (var p in s) {\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n }\n\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n\nimport * as React from 'react';\nimport Upload from './Upload';\n\nvar InternalDragger = function InternalDragger(_a, ref) {\n var style = _a.style,\n height = _a.height,\n restProps = __rest(_a, [\"style\", \"height\"]);\n\n return /*#__PURE__*/React.createElement(Upload, _extends({\n ref: ref\n }, restProps, {\n type: \"drag\",\n style: _extends(_extends({}, style), {\n height: height\n })\n }));\n};\n\nvar Dragger = /*#__PURE__*/React.forwardRef(InternalDragger);\nDragger.displayName = 'Dragger';\nexport default Dragger;","// This icon file is generated automatically.\nvar PaperClipOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M779.3 196.6c-94.2-94.2-247.6-94.2-341.7 0l-261 260.8c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l261-260.8c32.4-32.4 75.5-50.2 121.3-50.2s88.9 17.8 121.2 50.2c32.4 32.4 50.2 75.5 50.2 121.2 0 45.8-17.8 88.8-50.2 121.2l-266 265.9-43.1 43.1c-40.3 40.3-105.8 40.3-146.1 0-19.5-19.5-30.2-45.4-30.2-73s10.7-53.5 30.2-73l263.9-263.8c6.7-6.6 15.5-10.3 24.9-10.3h.1c9.4 0 18.1 3.7 24.7 10.3 6.7 6.7 10.3 15.5 10.3 24.9 0 9.3-3.7 18.1-10.3 24.7L372.4 653c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l215.6-215.6c19.9-19.9 30.8-46.3 30.8-74.4s-11-54.6-30.8-74.4c-41.1-41.1-107.9-41-149 0L463 364 224.8 602.1A172.22 172.22 0 00174 724.8c0 46.3 18.1 89.8 50.8 122.5 33.9 33.8 78.3 50.7 122.7 50.7 44.4 0 88.8-16.9 122.6-50.7l309.2-309C824.8 492.7 850 432 850 367.5c.1-64.6-25.1-125.3-70.7-170.9z\" } }] }, \"name\": \"paper-clip\", \"theme\": \"outlined\" };\nexport default PaperClipOutlined;\n","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport PaperClipOutlinedSvg from \"@ant-design/icons-svg/es/asn/PaperClipOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar PaperClipOutlined = function PaperClipOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: PaperClipOutlinedSvg\n }));\n};\n\nPaperClipOutlined.displayName = 'PaperClipOutlined';\nexport default /*#__PURE__*/React.forwardRef(PaperClipOutlined);","// This icon file is generated automatically.\nvar PictureTwoTone = { \"icon\": function render(primaryColor, secondaryColor) { return { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 632H136v-39.9l138.5-164.3 150.1 178L658.1 489 888 761.6V792zm0-129.8L664.2 396.8c-3.2-3.8-9-3.8-12.2 0L424.6 666.4l-144-170.7c-3.2-3.8-9-3.8-12.2 0L136 652.7V232h752v430.2z\", \"fill\": primaryColor } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M424.6 765.8l-150.1-178L136 752.1V792h752v-30.4L658.1 489z\", \"fill\": secondaryColor } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M136 652.7l132.4-157c3.2-3.8 9-3.8 12.2 0l144 170.7L652 396.8c3.2-3.8 9-3.8 12.2 0L888 662.2V232H136v420.7zM304 280a88 88 0 110 176 88 88 0 010-176z\", \"fill\": secondaryColor } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M276 368a28 28 0 1056 0 28 28 0 10-56 0z\", \"fill\": secondaryColor } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M304 456a88 88 0 100-176 88 88 0 000 176zm0-116c15.5 0 28 12.5 28 28s-12.5 28-28 28-28-12.5-28-28 12.5-28 28-28z\", \"fill\": primaryColor } }] }; }, \"name\": \"picture\", \"theme\": \"twotone\" };\nexport default PictureTwoTone;\n","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport PictureTwoToneSvg from \"@ant-design/icons-svg/es/asn/PictureTwoTone\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar PictureTwoTone = function PictureTwoTone(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: PictureTwoToneSvg\n }));\n};\n\nPictureTwoTone.displayName = 'PictureTwoTone';\nexport default /*#__PURE__*/React.forwardRef(PictureTwoTone);","// This icon file is generated automatically.\nvar FileTwoTone = { \"icon\": function render(primaryColor, secondaryColor) { return { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M534 352V136H232v752h560V394H576a42 42 0 01-42-42z\", \"fill\": secondaryColor } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM602 137.8L790.2 326H602V137.8zM792 888H232V136h302v216a42 42 0 0042 42h216v494z\", \"fill\": primaryColor } }] }; }, \"name\": \"file\", \"theme\": \"twotone\" };\nexport default FileTwoTone;\n","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport FileTwoToneSvg from \"@ant-design/icons-svg/es/asn/FileTwoTone\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar FileTwoTone = function FileTwoTone(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: FileTwoToneSvg\n }));\n};\n\nFileTwoTone.displayName = 'FileTwoTone';\nexport default /*#__PURE__*/React.forwardRef(FileTwoTone);","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nexport function file2Obj(file) {\n return _extends(_extends({}, file), {\n lastModified: file.lastModified,\n lastModifiedDate: file.lastModifiedDate,\n name: file.name,\n size: file.size,\n type: file.type,\n uid: file.uid,\n percent: 0,\n originFileObj: file\n });\n}\n/** Upload fileList. Replace file if exist or just push into it. */\n\nexport function updateFileList(file, fileList) {\n var nextFileList = _toConsumableArray(fileList);\n\n var fileIndex = nextFileList.findIndex(function (_ref) {\n var uid = _ref.uid;\n return uid === file.uid;\n });\n\n if (fileIndex === -1) {\n nextFileList.push(file);\n } else {\n nextFileList[fileIndex] = file;\n }\n\n return nextFileList;\n}\nexport function getFileItem(file, fileList) {\n var matchKey = file.uid !== undefined ? 'uid' : 'name';\n return fileList.filter(function (item) {\n return item[matchKey] === file[matchKey];\n })[0];\n}\nexport function removeFileItem(file, fileList) {\n var matchKey = file.uid !== undefined ? 'uid' : 'name';\n var removed = fileList.filter(function (item) {\n return item[matchKey] !== file[matchKey];\n });\n\n if (removed.length === fileList.length) {\n return null;\n }\n\n return removed;\n} // ==================== Default Image Preview ====================\n\nvar extname = function extname() {\n var url = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var temp = url.split('/');\n var filename = temp[temp.length - 1];\n var filenameWithoutSuffix = filename.split(/#|\\?/)[0];\n return (/\\.[^./\\\\]*$/.exec(filenameWithoutSuffix) || [''])[0];\n};\n\nvar isImageFileType = function isImageFileType(type) {\n return type.indexOf('image/') === 0;\n};\n\nexport var isImageUrl = function isImageUrl(file) {\n if (file.type && !file.thumbUrl) {\n return isImageFileType(file.type);\n }\n\n var url = file.thumbUrl || file.url || '';\n var extension = extname(url);\n\n if (/^data:image\\//.test(url) || /(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg|ico)$/i.test(extension)) {\n return true;\n }\n\n if (/^data:/.test(url)) {\n // other file types of base64\n return false;\n }\n\n if (extension) {\n // other file types which have extension\n return false;\n }\n\n return true;\n};\nvar MEASURE_SIZE = 200;\nexport function previewImage(file) {\n return new Promise(function (resolve) {\n if (!file.type || !isImageFileType(file.type)) {\n resolve('');\n return;\n }\n\n var canvas = document.createElement('canvas');\n canvas.width = MEASURE_SIZE;\n canvas.height = MEASURE_SIZE;\n canvas.style.cssText = \"position: fixed; left: 0; top: 0; width: \".concat(MEASURE_SIZE, \"px; height: \").concat(MEASURE_SIZE, \"px; z-index: 9999; display: none;\");\n document.body.appendChild(canvas);\n var ctx = canvas.getContext('2d');\n var img = new Image();\n\n img.onload = function () {\n var width = img.width,\n height = img.height;\n var drawWidth = MEASURE_SIZE;\n var drawHeight = MEASURE_SIZE;\n var offsetX = 0;\n var offsetY = 0;\n\n if (width > height) {\n drawHeight = height * (MEASURE_SIZE / width);\n offsetY = -(drawHeight - drawWidth) / 2;\n } else {\n drawWidth = width * (MEASURE_SIZE / height);\n offsetX = -(drawWidth - drawHeight) / 2;\n }\n\n ctx.drawImage(img, offsetX, offsetY, drawWidth, drawHeight);\n var dataURL = canvas.toDataURL();\n document.body.removeChild(canvas);\n resolve(dataURL);\n };\n\n img.src = window.URL.createObjectURL(file);\n });\n}","// This icon file is generated automatically.\nvar DownloadOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z\" } }] }, \"name\": \"download\", \"theme\": \"outlined\" };\nexport default DownloadOutlined;\n","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport DownloadOutlinedSvg from \"@ant-design/icons-svg/es/asn/DownloadOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar DownloadOutlined = function DownloadOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: DownloadOutlinedSvg\n }));\n};\n\nDownloadOutlined.displayName = 'DownloadOutlined';\nexport default /*#__PURE__*/React.forwardRef(DownloadOutlined);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport CSSMotion from 'rc-motion';\nimport classNames from 'classnames';\nimport EyeOutlined from \"@ant-design/icons/es/icons/EyeOutlined\";\nimport DeleteOutlined from \"@ant-design/icons/es/icons/DeleteOutlined\";\nimport DownloadOutlined from \"@ant-design/icons/es/icons/DownloadOutlined\";\nimport Tooltip from '../../tooltip';\nimport Progress from '../../progress';\nimport { ConfigContext } from '../../config-provider';\nvar ListItem = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var _classNames3;\n\n var prefixCls = _ref.prefixCls,\n className = _ref.className,\n style = _ref.style,\n locale = _ref.locale,\n listType = _ref.listType,\n file = _ref.file,\n items = _ref.items,\n progressProps = _ref.progress,\n iconRender = _ref.iconRender,\n actionIconRender = _ref.actionIconRender,\n itemRender = _ref.itemRender,\n isImgUrl = _ref.isImgUrl,\n showPreviewIcon = _ref.showPreviewIcon,\n showRemoveIcon = _ref.showRemoveIcon,\n showDownloadIcon = _ref.showDownloadIcon,\n customRemoveIcon = _ref.removeIcon,\n customDownloadIcon = _ref.downloadIcon,\n onPreview = _ref.onPreview,\n onDownload = _ref.onDownload,\n onClose = _ref.onClose;\n\n var _a, _b; // Delay to show the progress bar\n\n\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n showProgress = _React$useState2[0],\n setShowProgress = _React$useState2[1];\n\n var progressRafRef = React.useRef();\n React.useEffect(function () {\n progressRafRef.current = setTimeout(function () {\n setShowProgress(true);\n }, 300);\n return function () {\n window.clearTimeout(progressRafRef.current);\n };\n }, []); // This is used for legacy span make scrollHeight the wrong value.\n // We will force these to be `display: block` with non `picture-card`\n\n var spanClassName = \"\".concat(prefixCls, \"-span\");\n var iconNode = iconRender(file);\n var icon = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-text-icon\")\n }, iconNode);\n\n if (listType === 'picture' || listType === 'picture-card') {\n if (file.status === 'uploading' || !file.thumbUrl && !file.url) {\n var _classNames;\n\n var uploadingClassName = classNames((_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-list-item-thumbnail\"), true), _defineProperty(_classNames, \"\".concat(prefixCls, \"-list-item-file\"), file.status !== 'uploading'), _classNames));\n icon = /*#__PURE__*/React.createElement(\"div\", {\n className: uploadingClassName\n }, iconNode);\n } else {\n var _classNames2;\n\n var thumbnail = (isImgUrl === null || isImgUrl === void 0 ? void 0 : isImgUrl(file)) ? /*#__PURE__*/React.createElement(\"img\", {\n src: file.thumbUrl || file.url,\n alt: file.name,\n className: \"\".concat(prefixCls, \"-list-item-image\")\n }) : iconNode;\n var aClassName = classNames((_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(prefixCls, \"-list-item-thumbnail\"), true), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-list-item-file\"), isImgUrl && !isImgUrl(file)), _classNames2));\n icon = /*#__PURE__*/React.createElement(\"a\", {\n className: aClassName,\n onClick: function onClick(e) {\n return onPreview(file, e);\n },\n href: file.url || file.thumbUrl,\n target: \"_blank\",\n rel: \"noopener noreferrer\"\n }, thumbnail);\n }\n }\n\n var infoUploadingClass = classNames((_classNames3 = {}, _defineProperty(_classNames3, \"\".concat(prefixCls, \"-list-item\"), true), _defineProperty(_classNames3, \"\".concat(prefixCls, \"-list-item-\").concat(file.status), true), _defineProperty(_classNames3, \"\".concat(prefixCls, \"-list-item-list-type-\").concat(listType), true), _classNames3));\n var linkProps = typeof file.linkProps === 'string' ? JSON.parse(file.linkProps) : file.linkProps;\n var removeIcon = showRemoveIcon ? actionIconRender((typeof customRemoveIcon === 'function' ? customRemoveIcon(file) : customRemoveIcon) || /*#__PURE__*/React.createElement(DeleteOutlined, null), function () {\n return onClose(file);\n }, prefixCls, locale.removeFile) : null;\n var downloadIcon = showDownloadIcon && file.status === 'done' ? actionIconRender((typeof customDownloadIcon === 'function' ? customDownloadIcon(file) : customDownloadIcon) || /*#__PURE__*/React.createElement(DownloadOutlined, null), function () {\n return onDownload(file);\n }, prefixCls, locale.downloadFile) : null;\n var downloadOrDelete = listType !== 'picture-card' && /*#__PURE__*/React.createElement(\"span\", {\n key: \"download-delete\",\n className: classNames(\"\".concat(prefixCls, \"-list-item-card-actions\"), {\n picture: listType === 'picture'\n })\n }, downloadIcon, removeIcon);\n var listItemNameClass = classNames(\"\".concat(prefixCls, \"-list-item-name\"));\n var preview = file.url ? [/*#__PURE__*/React.createElement(\"a\", _extends({\n key: \"view\",\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n className: listItemNameClass,\n title: file.name\n }, linkProps, {\n href: file.url,\n onClick: function onClick(e) {\n return onPreview(file, e);\n }\n }), file.name), downloadOrDelete] : [/*#__PURE__*/React.createElement(\"span\", {\n key: \"view\",\n className: listItemNameClass,\n onClick: function onClick(e) {\n return onPreview(file, e);\n },\n title: file.name\n }, file.name), downloadOrDelete];\n var previewStyle = {\n pointerEvents: 'none',\n opacity: 0.5\n };\n var previewIcon = showPreviewIcon ? /*#__PURE__*/React.createElement(\"a\", {\n href: file.url || file.thumbUrl,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n style: file.url || file.thumbUrl ? undefined : previewStyle,\n onClick: function onClick(e) {\n return onPreview(file, e);\n },\n title: locale.previewFile\n }, /*#__PURE__*/React.createElement(EyeOutlined, null)) : null;\n var actions = listType === 'picture-card' && file.status !== 'uploading' && /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-list-item-actions\")\n }, previewIcon, file.status === 'done' && downloadIcon, removeIcon);\n var message;\n\n if (file.response && typeof file.response === 'string') {\n message = file.response;\n } else {\n message = ((_a = file.error) === null || _a === void 0 ? void 0 : _a.statusText) || ((_b = file.error) === null || _b === void 0 ? void 0 : _b.message) || locale.uploadError;\n }\n\n var iconAndPreview = /*#__PURE__*/React.createElement(\"span\", {\n className: spanClassName\n }, icon, preview);\n\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls;\n\n var rootPrefixCls = getPrefixCls();\n var dom = /*#__PURE__*/React.createElement(\"div\", {\n className: infoUploadingClass\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-list-item-info\")\n }, iconAndPreview), actions, showProgress && /*#__PURE__*/React.createElement(CSSMotion, {\n motionName: \"\".concat(rootPrefixCls, \"-fade\"),\n visible: file.status === 'uploading',\n motionDeadline: 2000\n }, function (_ref2) {\n var motionClassName = _ref2.className;\n // show loading icon if upload progress listener is disabled\n var loadingProgress = 'percent' in file ? /*#__PURE__*/React.createElement(Progress, _extends({}, progressProps, {\n type: \"line\",\n percent: file.percent\n })) : null;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-list-item-progress\"), motionClassName)\n }, loadingProgress);\n }));\n var listContainerNameClass = classNames(\"\".concat(prefixCls, \"-list-\").concat(listType, \"-container\"), className);\n var item = file.status === 'error' ? /*#__PURE__*/React.createElement(Tooltip, {\n title: message,\n getPopupContainer: function getPopupContainer(node) {\n return node.parentNode;\n }\n }, dom) : dom;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: listContainerNameClass,\n style: style,\n ref: ref\n }, itemRender ? itemRender(item, file, items) : item);\n});\nexport default ListItem;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport CSSMotion, { CSSMotionList } from 'rc-motion';\nimport classNames from 'classnames';\nimport LoadingOutlined from \"@ant-design/icons/es/icons/LoadingOutlined\";\nimport PaperClipOutlined from \"@ant-design/icons/es/icons/PaperClipOutlined\";\nimport PictureTwoTone from \"@ant-design/icons/es/icons/PictureTwoTone\";\nimport FileTwoTone from \"@ant-design/icons/es/icons/FileTwoTone\";\nimport { cloneElement, isValidElement } from '../../_util/reactNode';\nimport { previewImage, isImageUrl } from '../utils';\nimport collapseMotion from '../../_util/motion';\nimport { ConfigContext } from '../../config-provider';\nimport Button from '../../button';\nimport useForceUpdate from '../../_util/hooks/useForceUpdate';\nimport ListItem from './ListItem';\n\nvar listItemMotion = _extends({}, collapseMotion);\n\ndelete listItemMotion.onAppearEnd;\ndelete listItemMotion.onEnterEnd;\ndelete listItemMotion.onLeaveEnd;\n\nvar InternalUploadList = function InternalUploadList(_ref, ref) {\n var _classNames;\n\n var listType = _ref.listType,\n previewFile = _ref.previewFile,\n onPreview = _ref.onPreview,\n onDownload = _ref.onDownload,\n onRemove = _ref.onRemove,\n locale = _ref.locale,\n iconRender = _ref.iconRender,\n isImgUrl = _ref.isImageUrl,\n customizePrefixCls = _ref.prefixCls,\n _ref$items = _ref.items,\n items = _ref$items === void 0 ? [] : _ref$items,\n showPreviewIcon = _ref.showPreviewIcon,\n showRemoveIcon = _ref.showRemoveIcon,\n showDownloadIcon = _ref.showDownloadIcon,\n removeIcon = _ref.removeIcon,\n downloadIcon = _ref.downloadIcon,\n progress = _ref.progress,\n appendAction = _ref.appendAction,\n itemRender = _ref.itemRender;\n var forceUpdate = useForceUpdate();\n\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n motionAppear = _React$useState2[0],\n setMotionAppear = _React$useState2[1]; // ============================= Effect =============================\n\n\n React.useEffect(function () {\n if (listType !== 'picture' && listType !== 'picture-card') {\n return;\n }\n\n (items || []).forEach(function (file) {\n if (typeof document === 'undefined' || typeof window === 'undefined' || !window.FileReader || !window.File || !(file.originFileObj instanceof File || file.originFileObj instanceof Blob) || file.thumbUrl !== undefined) {\n return;\n }\n\n file.thumbUrl = '';\n\n if (previewFile) {\n previewFile(file.originFileObj).then(function (previewDataUrl) {\n // Need append '' to avoid dead loop\n file.thumbUrl = previewDataUrl || '';\n forceUpdate();\n });\n }\n });\n }, [listType, items, previewFile]);\n React.useEffect(function () {\n setMotionAppear(true);\n }, []); // ============================= Events =============================\n\n var onInternalPreview = function onInternalPreview(file, e) {\n if (!onPreview) {\n return;\n }\n\n e.preventDefault();\n return onPreview(file);\n };\n\n var onInternalDownload = function onInternalDownload(file) {\n if (typeof onDownload === 'function') {\n onDownload(file);\n } else if (file.url) {\n window.open(file.url);\n }\n };\n\n var onInternalClose = function onInternalClose(file) {\n onRemove === null || onRemove === void 0 ? void 0 : onRemove(file);\n };\n\n var internalIconRender = function internalIconRender(file) {\n if (iconRender) {\n return iconRender(file, listType);\n }\n\n var isLoading = file.status === 'uploading';\n var fileIcon = isImgUrl && isImgUrl(file) ? /*#__PURE__*/React.createElement(PictureTwoTone, null) : /*#__PURE__*/React.createElement(FileTwoTone, null);\n var icon = isLoading ? /*#__PURE__*/React.createElement(LoadingOutlined, null) : /*#__PURE__*/React.createElement(PaperClipOutlined, null);\n\n if (listType === 'picture') {\n icon = isLoading ? /*#__PURE__*/React.createElement(LoadingOutlined, null) : fileIcon;\n } else if (listType === 'picture-card') {\n icon = isLoading ? locale.uploading : fileIcon;\n }\n\n return icon;\n };\n\n var actionIconRender = function actionIconRender(customIcon, callback, prefixCls, title) {\n var btnProps = {\n type: 'text',\n size: 'small',\n title: title,\n onClick: function onClick(e) {\n callback();\n\n if (isValidElement(customIcon) && customIcon.props.onClick) {\n customIcon.props.onClick(e);\n }\n },\n className: \"\".concat(prefixCls, \"-list-item-card-actions-btn\")\n };\n\n if (isValidElement(customIcon)) {\n var btnIcon = cloneElement(customIcon, _extends(_extends({}, customIcon.props), {\n onClick: function onClick() {}\n }));\n return /*#__PURE__*/React.createElement(Button, _extends({}, btnProps, {\n icon: btnIcon\n }));\n }\n\n return /*#__PURE__*/React.createElement(Button, btnProps, /*#__PURE__*/React.createElement(\"span\", null, customIcon));\n }; // ============================== Ref ===============================\n // Test needs\n\n\n React.useImperativeHandle(ref, function () {\n return {\n handlePreview: onInternalPreview,\n handleDownload: onInternalDownload\n };\n });\n\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction; // ============================= Render =============================\n\n\n var prefixCls = getPrefixCls('upload', customizePrefixCls);\n var listClassNames = classNames((_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-list\"), true), _defineProperty(_classNames, \"\".concat(prefixCls, \"-list-\").concat(listType), true), _defineProperty(_classNames, \"\".concat(prefixCls, \"-list-rtl\"), direction === 'rtl'), _classNames)); // >>> Motion config\n\n var motionKeyList = _toConsumableArray(items.map(function (file) {\n return {\n key: file.uid,\n file: file\n };\n }));\n\n var animationDirection = listType === 'picture-card' ? 'animate-inline' : 'animate'; // const transitionName = list.length === 0 ? '' : `${prefixCls}-${animationDirection}`;\n\n var motionConfig = {\n motionDeadline: 2000,\n motionName: \"\".concat(prefixCls, \"-\").concat(animationDirection),\n keys: motionKeyList,\n motionAppear: motionAppear\n };\n\n if (listType !== 'picture-card') {\n motionConfig = _extends(_extends({}, listItemMotion), motionConfig);\n }\n\n return /*#__PURE__*/React.createElement(\"div\", {\n className: listClassNames\n }, /*#__PURE__*/React.createElement(CSSMotionList, _extends({}, motionConfig, {\n component: false\n }), function (_ref2) {\n var key = _ref2.key,\n file = _ref2.file,\n motionClassName = _ref2.className,\n motionStyle = _ref2.style;\n return /*#__PURE__*/React.createElement(ListItem, {\n key: key,\n locale: locale,\n prefixCls: prefixCls,\n className: motionClassName,\n style: motionStyle,\n file: file,\n items: items,\n progress: progress,\n listType: listType,\n isImgUrl: isImgUrl,\n showPreviewIcon: showPreviewIcon,\n showRemoveIcon: showRemoveIcon,\n showDownloadIcon: showDownloadIcon,\n removeIcon: removeIcon,\n downloadIcon: downloadIcon,\n iconRender: internalIconRender,\n actionIconRender: actionIconRender,\n itemRender: itemRender,\n onPreview: onInternalPreview,\n onDownload: onInternalDownload,\n onClose: onInternalClose\n });\n }), appendAction && /*#__PURE__*/React.createElement(CSSMotion, motionConfig, function (_ref3) {\n var motionClassName = _ref3.className,\n motionStyle = _ref3.style;\n return cloneElement(appendAction, function (oriProps) {\n return {\n className: classNames(oriProps.className, motionClassName),\n style: _extends(_extends({}, motionStyle), oriProps.style)\n };\n });\n }));\n};\n\nvar UploadList = /*#__PURE__*/React.forwardRef(InternalUploadList);\nUploadList.displayName = 'UploadList';\nUploadList.defaultProps = {\n listType: 'text',\n progress: {\n strokeWidth: 2,\n showInfo: false\n },\n showRemoveIcon: true,\n showDownloadIcon: false,\n showPreviewIcon: true,\n previewFile: previewImage,\n isImageUrl: isImageUrl\n};\nexport default UploadList;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _regeneratorRuntime from \"@babel/runtime/regenerator\";\n\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\n\nimport * as React from 'react';\nimport RcUpload from 'rc-upload';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport classNames from 'classnames';\nimport Dragger from './Dragger';\nimport UploadList from './UploadList';\nimport { file2Obj, getFileItem, removeFileItem, updateFileList } from './utils';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport defaultLocale from '../locale/default';\nimport { ConfigContext } from '../config-provider';\nimport devWarning from '../_util/devWarning';\nvar LIST_IGNORE = \"__LIST_IGNORE_\".concat(Date.now(), \"__\");\n\nvar InternalUpload = function InternalUpload(props, ref) {\n var _classNames2;\n\n var fileList = props.fileList,\n defaultFileList = props.defaultFileList,\n onRemove = props.onRemove,\n showUploadList = props.showUploadList,\n listType = props.listType,\n onPreview = props.onPreview,\n onDownload = props.onDownload,\n onChange = props.onChange,\n previewFile = props.previewFile,\n disabled = props.disabled,\n propLocale = props.locale,\n iconRender = props.iconRender,\n isImageUrl = props.isImageUrl,\n progress = props.progress,\n customizePrefixCls = props.prefixCls,\n className = props.className,\n type = props.type,\n children = props.children,\n style = props.style,\n itemRender = props.itemRender,\n maxCount = props.maxCount;\n\n var _useMergedState = useMergedState(defaultFileList || [], {\n value: fileList,\n postState: function postState(list) {\n return list !== null && list !== void 0 ? list : [];\n }\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedFileList = _useMergedState2[0],\n setMergedFileList = _useMergedState2[1];\n\n var _React$useState = React.useState('drop'),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n dragState = _React$useState2[0],\n setDragState = _React$useState2[1];\n\n var upload = React.useRef();\n React.useEffect(function () {\n devWarning('fileList' in props || !('value' in props), 'Upload', '`value` is not a valid prop, do you mean `fileList`?');\n devWarning(!('transformFile' in props), 'Upload', '`transformFile` is deprecated. Please use `beforeUpload` directly.');\n }, []); // Control mode will auto fill file uid if not provided\n\n React.useMemo(function () {\n var timestamp = Date.now();\n (fileList || []).forEach(function (file, index) {\n if (!file.uid && !Object.isFrozen(file)) {\n file.uid = \"__AUTO__\".concat(timestamp, \"_\").concat(index, \"__\");\n }\n });\n }, [fileList]);\n\n var onInternalChange = function onInternalChange(file, changedFileList, event) {\n var cloneList = _toConsumableArray(changedFileList); // Cut to match count\n\n\n if (maxCount === 1) {\n cloneList = cloneList.slice(-1);\n } else if (maxCount) {\n cloneList = cloneList.slice(0, maxCount);\n }\n\n setMergedFileList(cloneList);\n var changeInfo = {\n file: file,\n fileList: cloneList\n };\n\n if (event) {\n changeInfo.event = event;\n }\n\n onChange === null || onChange === void 0 ? void 0 : onChange(changeInfo);\n };\n\n var mergedBeforeUpload = function mergedBeforeUpload(file, fileListArgs) {\n return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var beforeUpload, transformFile, parsedFile, result;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n beforeUpload = props.beforeUpload, transformFile = props.transformFile;\n parsedFile = file;\n\n if (!beforeUpload) {\n _context.next = 13;\n break;\n }\n\n _context.next = 5;\n return beforeUpload(file, fileListArgs);\n\n case 5:\n result = _context.sent;\n\n if (!(result === false)) {\n _context.next = 8;\n break;\n }\n\n return _context.abrupt(\"return\", false);\n\n case 8:\n // Hack for LIST_IGNORE, we add additional info to remove from the list\n delete file[LIST_IGNORE];\n\n if (!(result === LIST_IGNORE)) {\n _context.next = 12;\n break;\n }\n\n Object.defineProperty(file, LIST_IGNORE, {\n value: true,\n configurable: true\n });\n return _context.abrupt(\"return\", false);\n\n case 12:\n if (_typeof(result) === 'object' && result) {\n parsedFile = result;\n }\n\n case 13:\n if (!transformFile) {\n _context.next = 17;\n break;\n }\n\n _context.next = 16;\n return transformFile(parsedFile);\n\n case 16:\n parsedFile = _context.sent;\n\n case 17:\n return _context.abrupt(\"return\", parsedFile);\n\n case 18:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n\n var onBatchStart = function onBatchStart(batchFileInfoList) {\n // Skip file which marked as `LIST_IGNORE`, these file will not add to file list\n var filteredFileInfoList = batchFileInfoList.filter(function (info) {\n return !info.file[LIST_IGNORE];\n }); // Nothing to do since no file need upload\n\n if (!filteredFileInfoList.length) {\n return;\n }\n\n var objectFileList = filteredFileInfoList.map(function (info) {\n return file2Obj(info.file);\n }); // Concat new files with prev files\n\n var newFileList = _toConsumableArray(mergedFileList);\n\n objectFileList.forEach(function (fileObj) {\n // Replace file if exist\n newFileList = updateFileList(fileObj, newFileList);\n });\n objectFileList.forEach(function (fileObj, index) {\n // Repeat trigger `onChange` event for compatible\n var triggerFileObj = fileObj;\n\n if (!filteredFileInfoList[index].parsedFile) {\n // `beforeUpload` return false\n var originFileObj = fileObj.originFileObj;\n var clone;\n\n try {\n clone = new File([originFileObj], originFileObj.name, {\n type: originFileObj.type\n });\n } catch (e) {\n clone = new Blob([originFileObj], {\n type: originFileObj.type\n });\n clone.name = originFileObj.name;\n clone.lastModifiedDate = new Date();\n clone.lastModified = new Date().getTime();\n }\n\n clone.uid = fileObj.uid;\n triggerFileObj = clone;\n } else {\n // Inject `uploading` status\n fileObj.status = 'uploading';\n }\n\n onInternalChange(triggerFileObj, newFileList);\n });\n };\n\n var onSuccess = function onSuccess(response, file, xhr) {\n try {\n if (typeof response === 'string') {\n response = JSON.parse(response);\n }\n } catch (e) {\n /* do nothing */\n } // removed\n\n\n if (!getFileItem(file, mergedFileList)) {\n return;\n }\n\n var targetItem = file2Obj(file);\n targetItem.status = 'done';\n targetItem.percent = 100;\n targetItem.response = response;\n targetItem.xhr = xhr;\n var nextFileList = updateFileList(targetItem, mergedFileList);\n onInternalChange(targetItem, nextFileList);\n };\n\n var onProgress = function onProgress(e, file) {\n // removed\n if (!getFileItem(file, mergedFileList)) {\n return;\n }\n\n var targetItem = file2Obj(file);\n targetItem.status = 'uploading';\n targetItem.percent = e.percent;\n var nextFileList = updateFileList(targetItem, mergedFileList);\n onInternalChange(targetItem, nextFileList, e);\n };\n\n var onError = function onError(error, response, file) {\n // removed\n if (!getFileItem(file, mergedFileList)) {\n return;\n }\n\n var targetItem = file2Obj(file);\n targetItem.error = error;\n targetItem.response = response;\n targetItem.status = 'error';\n var nextFileList = updateFileList(targetItem, mergedFileList);\n onInternalChange(targetItem, nextFileList);\n };\n\n var handleRemove = function handleRemove(file) {\n var currentFile;\n Promise.resolve(typeof onRemove === 'function' ? onRemove(file) : onRemove).then(function (ret) {\n var _a; // Prevent removing file\n\n\n if (ret === false) {\n return;\n }\n\n var removedFileList = removeFileItem(file, mergedFileList);\n\n if (removedFileList) {\n currentFile = _extends(_extends({}, file), {\n status: 'removed'\n });\n mergedFileList === null || mergedFileList === void 0 ? void 0 : mergedFileList.forEach(function (item) {\n var matchKey = currentFile.uid !== undefined ? 'uid' : 'name';\n\n if (item[matchKey] === currentFile[matchKey] && !Object.isFrozen(item)) {\n item.status = 'removed';\n }\n });\n (_a = upload.current) === null || _a === void 0 ? void 0 : _a.abort(currentFile);\n onInternalChange(currentFile, removedFileList);\n }\n });\n };\n\n var onFileDrop = function onFileDrop(e) {\n e.stopPropagation();\n setDragState(e.type);\n }; // Test needs\n\n\n React.useImperativeHandle(ref, function () {\n return {\n onBatchStart: onBatchStart,\n onSuccess: onSuccess,\n onProgress: onProgress,\n onError: onError,\n fileList: mergedFileList,\n upload: upload.current\n };\n });\n\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n\n var prefixCls = getPrefixCls('upload', customizePrefixCls);\n\n var rcUploadProps = _extends(_extends({\n onBatchStart: onBatchStart,\n onError: onError,\n onProgress: onProgress,\n onSuccess: onSuccess\n }, props), {\n prefixCls: prefixCls,\n beforeUpload: mergedBeforeUpload,\n onChange: undefined\n });\n\n delete rcUploadProps.className;\n delete rcUploadProps.style; // Remove id to avoid open by label when trigger is hidden\n // !children: https://github.com/ant-design/ant-design/issues/14298\n // disabled: https://github.com/ant-design/ant-design/issues/16478\n // https://github.com/ant-design/ant-design/issues/24197\n\n if (!children || disabled) {\n delete rcUploadProps.id;\n }\n\n var renderUploadList = function renderUploadList(button) {\n return showUploadList ? /*#__PURE__*/React.createElement(LocaleReceiver, {\n componentName: \"Upload\",\n defaultLocale: defaultLocale.Upload\n }, function (locale) {\n var _ref = typeof showUploadList === 'boolean' ? {} : showUploadList,\n showRemoveIcon = _ref.showRemoveIcon,\n showPreviewIcon = _ref.showPreviewIcon,\n showDownloadIcon = _ref.showDownloadIcon,\n removeIcon = _ref.removeIcon,\n downloadIcon = _ref.downloadIcon;\n\n return /*#__PURE__*/React.createElement(UploadList, {\n listType: listType,\n items: mergedFileList,\n previewFile: previewFile,\n onPreview: onPreview,\n onDownload: onDownload,\n onRemove: handleRemove,\n showRemoveIcon: !disabled && showRemoveIcon,\n showPreviewIcon: showPreviewIcon,\n showDownloadIcon: showDownloadIcon,\n removeIcon: removeIcon,\n downloadIcon: downloadIcon,\n iconRender: iconRender,\n locale: _extends(_extends({}, locale), propLocale),\n isImageUrl: isImageUrl,\n progress: progress,\n appendAction: button,\n itemRender: itemRender\n });\n }) : button;\n };\n\n if (type === 'drag') {\n var _classNames;\n\n var dragCls = classNames(prefixCls, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-drag\"), true), _defineProperty(_classNames, \"\".concat(prefixCls, \"-drag-uploading\"), mergedFileList.some(function (file) {\n return file.status === 'uploading';\n })), _defineProperty(_classNames, \"\".concat(prefixCls, \"-drag-hover\"), dragState === 'dragover'), _defineProperty(_classNames, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_classNames, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _classNames), className);\n return /*#__PURE__*/React.createElement(\"span\", null, /*#__PURE__*/React.createElement(\"div\", {\n className: dragCls,\n onDrop: onFileDrop,\n onDragOver: onFileDrop,\n onDragLeave: onFileDrop,\n style: style\n }, /*#__PURE__*/React.createElement(RcUpload, _extends({}, rcUploadProps, {\n ref: upload,\n className: \"\".concat(prefixCls, \"-btn\")\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-drag-container\")\n }, children))), renderUploadList());\n }\n\n var uploadButtonCls = classNames(prefixCls, (_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(prefixCls, \"-select\"), true), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-select-\").concat(listType), true), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _classNames2));\n var uploadButton = /*#__PURE__*/React.createElement(\"div\", {\n className: uploadButtonCls,\n style: children ? undefined : {\n display: 'none'\n }\n }, /*#__PURE__*/React.createElement(RcUpload, _extends({}, rcUploadProps, {\n ref: upload\n })));\n\n if (listType === 'picture-card') {\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(\"\".concat(prefixCls, \"-picture-card-wrapper\"), className)\n }, renderUploadList(uploadButton));\n }\n\n return /*#__PURE__*/React.createElement(\"span\", {\n className: className\n }, uploadButton, renderUploadList());\n};\n\nvar Upload = /*#__PURE__*/React.forwardRef(InternalUpload);\nUpload.Dragger = Dragger;\nUpload.LIST_IGNORE = LIST_IGNORE;\nUpload.displayName = 'Upload';\nUpload.defaultProps = {\n type: 'select',\n multiple: false,\n action: '',\n data: {},\n accept: '',\n showUploadList: true,\n listType: 'text',\n className: '',\n disabled: false,\n supportServerRender: true\n};\nexport default Upload;","import Upload from './Upload';\nimport Dragger from './Dragger';\nUpload.Dragger = Dragger;\nexport default Upload;"],"names":["props","ref","AntdIcon","Object","assign","icon","displayName","_a","prefixCls","className","_a$hoverable","hoverable","s","e","t","p","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","__rest","C","_ref","prefix","getPrefixCls","classString","concat","Card","_extends2","_classNames","head","_React$useContext","direction","size","SizeContext","customizePrefixCls","extra","_props$headStyle","headStyle","_props$bodyStyle","bodyStyle","title","loading","_props$bordered","bordered","customizeSize","type","cover","actions","tabList","children","activeTabKey","defaultActiveTabKey","tabBarExtraContent","_props$tabProps","tabProps","others","loadingBlockStyle","padding","undefined","block","loadingBlock","style","gutter","span","hasActiveTabKey","extraProps","tabs","onChange","key","onTabChange","map","item","tab","disabled","containGrid","coverDom","body","actionDom","action","index","width","getAction","divProps","omit","mergedSize","element","Grid","Meta","avatar","description","avatarDom","titleDom","descriptionDom","MetaDetail","Switch","_ref$prefixCls","checked","defaultChecked","loadingIcon","checkedChildren","unCheckedChildren","onClick","onKeyDown","restProps","_useMergedState","useMergedState","value","defaultValue","_useMergedState2","innerChecked","setInnerChecked","triggerChange","newChecked","event","mergedChecked","switchClassName","role","which","KeyCode","ret","_a$className","devWarning","LoadingOutlined","classes","insertExtraNode","__ANT_SWITCH","getBody","xhr","text","responseText","response","JSON","parse","upload","option","XMLHttpRequest","onProgress","onprogress","total","percent","loaded","formData","FormData","data","keys","forEach","Array","isArray","append","file","Blob","filename","name","onerror","onError","onload","status","msg","method","err","Error","url","getError","onSuccess","open","withCredentials","headers","setRequestHeader","h","send","abort","now","Date","uid","acceptedFiles","acceptedFilesArray","split","fileName","mimeType","baseMimeType","replace","some","str","suffix","validType","trim","test","charAt","toLowerCase","files","callback","isAccepted","_traverseFileTree","path","isFile","fullPath","webkitRelativePath","defineProperties","writable","isDirectory","dirReader","createReader","fileList","sequence","readEntries","entries","entryList","slice","apply","loopFiles","entryItem","webkitGetAsEntry","_Component","AjaxUploader","_super","_this","this","arguments","state","reqs","target","filter","accept","uploadFiles","reset","el","fileInput","_this$props","parent","parentNode","focus","querySelector","blur","click","onFileDrop","multiple","preventDefault","directory","dataTransfer","items","_file","originFiles","postFiles","processFile","Promise","all","then","onBatchStart","origin","parsedFile","post","_ref2","_callee","beforeUpload","transformedFile","mergedAction","mergedData","parsedData","mergedParsedFile","_context","prev","next","sent","t0","abrupt","File","stop","_x","_x2","saveFileInput","node","_isMounted","_ref3","_this2","_this$props2","onStart","customRequest","request","requestOption","setState","_this$props3","Tag","component","id","openFileDialogOnClick","onMouseEnter","onMouseLeave","capture","otherProps","cls","dirProps","webkitdirectory","events","onDrop","onDragOver","tabIndex","pickAttrs","aria","stopPropagation","display","Component","empty","Upload","saveUploader","uploader","defaultProps","multipart","InternalDragger","height","Dragger","primaryColor","secondaryColor","file2Obj","lastModified","lastModifiedDate","originFileObj","updateFileList","nextFileList","fileIndex","findIndex","push","getFileItem","matchKey","isImageFileType","MEASURE_SIZE","_classNames3","_b","locale","listType","progressProps","progress","iconRender","actionIconRender","itemRender","isImgUrl","showPreviewIcon","showRemoveIcon","showDownloadIcon","customRemoveIcon","removeIcon","customDownloadIcon","downloadIcon","onPreview","onDownload","onClose","_React$useState","_React$useState2","showProgress","setShowProgress","progressRafRef","current","setTimeout","window","clearTimeout","spanClassName","iconNode","thumbUrl","uploadingClassName","_classNames2","thumbnail","src","alt","aClassName","href","rel","message","infoUploadingClass","linkProps","DeleteOutlined","removeFile","downloadFile","downloadOrDelete","picture","listItemNameClass","preview","previewIcon","pointerEvents","opacity","previewFile","EyeOutlined","error","statusText","uploadError","iconAndPreview","rootPrefixCls","dom","motionName","visible","motionDeadline","motionClassName","loadingProgress","listContainerNameClass","getPopupContainer","listItemMotion","onAppearEnd","onEnterEnd","onLeaveEnd","InternalUploadList","onRemove","isImageUrl","_ref$items","appendAction","forceUpdate","useForceUpdate","motionAppear","setMotionAppear","document","FileReader","previewDataUrl","onInternalPreview","onInternalDownload","onInternalClose","internalIconRender","isLoading","fileIcon","uploading","customIcon","btnProps","btnIcon","handlePreview","handleDownload","listClassNames","motionKeyList","animationDirection","motionConfig","motionStyle","oriProps","UploadList","strokeWidth","showInfo","resolve","canvas","createElement","cssText","appendChild","ctx","getContext","img","Image","drawWidth","drawHeight","offsetX","offsetY","drawImage","dataURL","toDataURL","removeChild","URL","createObjectURL","extension","temp","filenameWithoutSuffix","exec","extname","LIST_IGNORE","InternalUpload","defaultFileList","showUploadList","propLocale","maxCount","postState","list","mergedFileList","setMergedFileList","dragState","setDragState","timestamp","isFrozen","onInternalChange","changedFileList","cloneList","changeInfo","batchFileInfoList","filteredFileInfoList","info","objectFileList","newFileList","fileObj","triggerFileObj","clone","getTime","targetItem","handleRemove","currentFile","removedFileList","removed","removeFileItem","rcUploadProps","fileListArgs","thisArg","_arguments","P","generator","transformFile","result","defineProperty","configurable","reject","fulfilled","step","rejected","done","renderUploadList","button","LocaleReceiver","componentName","defaultLocale","dragCls","onDragLeave","uploadButtonCls","uploadButton","supportServerRender"],"sourceRoot":""}
public/dist/18.lite.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunkrealCookieBanner_name_=self.webpackChunkrealCookieBanner_name_||[]).push([[18],{5235:function(e,t,n){n.d(t,{C:function(){return P}});var r=n(4741),a=n(63),c=n(3429),o=n(7228),l=n(7363),i=n(2286),s=n.n(i),f=n(4707),u=n(5643),d=n(4178),m=n(7139),p=n(5e3),v=n(5806),h=l.createContext("default"),y=function(e){var t=e.children,n=e.size;return l.createElement(h.Consumer,null,(function(e){return l.createElement(h.Provider,{value:n||e},t)}))},b=h,g=function(e,t){var n,i,h=l.useContext(b),y=l.useState(1),g=(0,o.Z)(y,2),E=g[0],Z=g[1],O=l.useState(!1),C=(0,o.Z)(O,2),x=C[0],N=C[1],P=l.useState(!0),w=(0,o.Z)(P,2),z=w[0],k=w[1],S=l.useRef(),j=l.useRef(),R=(0,u.sQ)(t,S),T=l.useContext(d.E_).getPrefixCls,W=function(){if(j.current&&S.current){var t=j.current.offsetWidth,n=S.current.offsetWidth;if(0!==t&&0!==n){var r=e.gap,a=void 0===r?4:r;2*a<n&&Z(n-2*a<t?(n-2*a)/t:1)}}};l.useEffect((function(){N(!0)}),[]),l.useEffect((function(){k(!0),Z(1)}),[e.src]),l.useEffect((function(){W()}),[e.gap]);var H=e.prefixCls,_=e.shape,B=e.size,K=e.src,A=e.srcSet,I=e.icon,M=e.className,U=e.alt,D=e.draggable,L=e.children,V=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]])}return n}(e,["prefixCls","shape","size","src","srcSet","icon","className","alt","draggable","children"]),F="default"===B?h:B,G=(0,v.Z)(),Q=l.useMemo((function(){if("object"!==(0,c.Z)(F))return{};var e=p.c4.find((function(e){return G[e]})),t=F[e];return t?{width:t,height:t,lineHeight:"".concat(t,"px"),fontSize:I?t/2:18}:{}}),[G,F]);(0,m.Z)(!("string"==typeof I&&I.length>2),"Avatar","`icon` is using ReactNode instead of string naming in v4. Please check `".concat(I,"` at https://ant.design/components/icon"));var X,Y=T("avatar",H),q=s()((n={},(0,a.Z)(n,"".concat(Y,"-lg"),"large"===F),(0,a.Z)(n,"".concat(Y,"-sm"),"small"===F),n)),J=l.isValidElement(K),$=s()(Y,q,(i={},(0,a.Z)(i,"".concat(Y,"-").concat(_),!!_),(0,a.Z)(i,"".concat(Y,"-image"),J||K&&z),(0,a.Z)(i,"".concat(Y,"-icon"),!!I),i),M),ee="number"==typeof F?{width:F,height:F,lineHeight:"".concat(F,"px"),fontSize:I?F/2:18}:{};if("string"==typeof K&&z)X=l.createElement("img",{src:K,draggable:D,srcSet:A,onError:function(){var t=e.onError;!1!==(t?t():void 0)&&k(!1)},alt:U});else if(J)X=K;else if(I)X=I;else if(x||1!==E){var te="scale(".concat(E,") translateX(-50%)"),ne={msTransform:te,WebkitTransform:te,transform:te},re="number"==typeof F?{lineHeight:"".concat(F,"px")}:{};X=l.createElement(f.Z,{onResize:W},l.createElement("span",{className:"".concat(Y,"-string"),ref:function(e){j.current=e},style:(0,r.Z)((0,r.Z)({},re),ne)},L))}else X=l.createElement("span",{className:"".concat(Y,"-string"),style:{opacity:0},ref:function(e){j.current=e}},L);return delete V.onError,delete V.gap,l.createElement("span",(0,r.Z)({},V,{style:(0,r.Z)((0,r.Z)((0,r.Z)({},ee),Q),V.style),className:$,ref:R}),X)},E=l.forwardRef(g);E.displayName="Avatar",E.defaultProps={shape:"circle",size:"default"};var Z=E,O=n(4237),C=n(8929),x=n(7109),N=Z;N.Group=function(e){var t=l.useContext(d.E_),n=t.getPrefixCls,r=t.direction,c=e.prefixCls,o=e.className,i=void 0===o?"":o,f=e.maxCount,u=e.maxStyle,m=e.size,p=n("avatar-group",c),v=s()(p,(0,a.Z)({},"".concat(p,"-rtl"),"rtl"===r),i),h=e.children,b=e.maxPopoverPlacement,g=void 0===b?"top":b,E=(0,O.Z)(h).map((function(e,t){return(0,C.Tm)(e,{key:"avatar-key-".concat(t)})})),N=E.length;if(f&&f<N){var P=E.slice(0,f),w=E.slice(f,N);return P.push(l.createElement(x.Z,{key:"avatar-popover-key",content:w,trigger:"hover",placement:g,overlayClassName:"".concat(p,"-popover")},l.createElement(Z,{style:u},"+".concat(N-f)))),l.createElement(y,{size:m},l.createElement("div",{className:v,style:e.style},P))}return l.createElement(y,{size:m},l.createElement("div",{className:v,style:e.style},E))};var P=N},3735:function(e,t,n){n.d(t,{Z:function(){return h}});var r=n(63),a=n(4741),c=n(7363),o=n(2286),l=n.n(o),i=n(733),s=n(4178),f=function(e){var t=e.prefixCls,n=e.className,o=e.hoverable,i=void 0===o||o,f=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]])}return n}(e,["prefixCls","className","hoverable"]);return c.createElement(s.C,null,(function(e){var o=(0,e.getPrefixCls)("card",t),s=l()("".concat(o,"-grid"),n,(0,r.Z)({},"".concat(o,"-grid-hoverable"),i));return c.createElement("div",(0,a.Z)({},f,{className:s}))}))},u=n(9440),d=n(5489),m=n(8503),p=n(8533),v=function(e){var t,n,o,v=c.useContext(s.E_),h=v.getPrefixCls,y=v.direction,b=c.useContext(p.Z),g=e.prefixCls,E=e.className,Z=e.extra,O=e.headStyle,C=void 0===O?{}:O,x=e.bodyStyle,N=void 0===x?{}:x,P=e.title,w=e.loading,z=e.bordered,k=void 0===z||z,S=e.size,j=e.type,R=e.cover,T=e.actions,W=e.tabList,H=e.children,_=e.activeTabKey,B=e.defaultActiveTabKey,K=e.tabBarExtraContent,A=e.hoverable,I=e.tabProps,M=void 0===I?{}:I,U=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]])}return n}(e,["prefixCls","className","extra","headStyle","bodyStyle","title","loading","bordered","size","type","cover","actions","tabList","children","activeTabKey","defaultActiveTabKey","tabBarExtraContent","hoverable","tabProps"]),D=h("card",g),L=0===N.padding||"0px"===N.padding?{padding:24}:void 0,V=c.createElement("div",{className:"".concat(D,"-loading-block")}),F=c.createElement("div",{className:"".concat(D,"-loading-content"),style:L},c.createElement(d.Z,{gutter:8},c.createElement(m.Z,{span:22},V)),c.createElement(d.Z,{gutter:8},c.createElement(m.Z,{span:8},V),c.createElement(m.Z,{span:15},V)),c.createElement(d.Z,{gutter:8},c.createElement(m.Z,{span:6},V),c.createElement(m.Z,{span:18},V)),c.createElement(d.Z,{gutter:8},c.createElement(m.Z,{span:13},V),c.createElement(m.Z,{span:9},V)),c.createElement(d.Z,{gutter:8},c.createElement(m.Z,{span:4},V),c.createElement(m.Z,{span:3},V),c.createElement(m.Z,{span:16},V))),G=void 0!==_,Q=(0,a.Z)((0,a.Z)({},M),(t={},(0,r.Z)(t,G?"activeKey":"defaultActiveKey",G?_:B),(0,r.Z)(t,"tabBarExtraContent",K),t)),X=W&&W.length?c.createElement(u.Z,(0,a.Z)({size:"large"},Q,{className:"".concat(D,"-head-tabs"),onChange:function(t){var n;null===(n=e.onTabChange)||void 0===n||n.call(e,t)}}),W.map((function(e){return c.createElement(u.Z.TabPane,{tab:e.tab,disabled:e.disabled,key:e.key})}))):null;(P||Z||X)&&(o=c.createElement("div",{className:"".concat(D,"-head"),style:C},c.createElement("div",{className:"".concat(D,"-head-wrapper")},P&&c.createElement("div",{className:"".concat(D,"-head-title")},P),Z&&c.createElement("div",{className:"".concat(D,"-extra")},Z)),X));var Y,q=R?c.createElement("div",{className:"".concat(D,"-cover")},R):null,J=c.createElement("div",{className:"".concat(D,"-body"),style:N},w?F:H),$=T&&T.length?c.createElement("ul",{className:"".concat(D,"-actions")},function(e){return e.map((function(t,n){return c.createElement("li",{style:{width:"".concat(100/e.length,"%")},key:"action-".concat(n)},c.createElement("span",null,t))}))}(T)):null,ee=(0,i.Z)(U,["onTabChange"]),te=S||b,ne=l()(D,(n={},(0,r.Z)(n,"".concat(D,"-loading"),w),(0,r.Z)(n,"".concat(D,"-bordered"),k),(0,r.Z)(n,"".concat(D,"-hoverable"),A),(0,r.Z)(n,"".concat(D,"-contain-grid"),(c.Children.forEach(e.children,(function(e){e&&e.type&&e.type===f&&(Y=!0)})),Y)),(0,r.Z)(n,"".concat(D,"-contain-tabs"),W&&W.length),(0,r.Z)(n,"".concat(D,"-").concat(te),te),(0,r.Z)(n,"".concat(D,"-type-").concat(j),!!j),(0,r.Z)(n,"".concat(D,"-rtl"),"rtl"===y),n),E);return c.createElement("div",(0,a.Z)({},ee,{className:ne}),o,q,J,$)};v.Grid=f,v.Meta=function(e){return c.createElement(s.C,null,(function(t){var n=t.getPrefixCls,r=e.prefixCls,o=e.className,i=e.avatar,s=e.title,f=e.description,u=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]])}return n}(e,["prefixCls","className","avatar","title","description"]),d=n("card",r),m=l()("".concat(d,"-meta"),o),p=i?c.createElement("div",{className:"".concat(d,"-meta-avatar")},i):null,v=s?c.createElement("div",{className:"".concat(d,"-meta-title")},s):null,h=f?c.createElement("div",{className:"".concat(d,"-meta-description")},f):null,y=v||h?c.createElement("div",{className:"".concat(d,"-meta-detail")},v,h):null;return c.createElement("div",(0,a.Z)({},u,{className:m}),p,y)}))};var h=v},5806:function(e,t,n){var r=n(7228),a=n(7363),c=n(5e3);t.Z=function(){var e=(0,a.useState)({}),t=(0,r.Z)(e,2),n=t[0],o=t[1];return(0,a.useEffect)((function(){var e=c.ZP.subscribe((function(e){o(e)}));return function(){return c.ZP.unsubscribe(e)}}),[]),n}},7109:function(e,t,n){var r=n(4741),a=n(7363),c=n(1857),o=n(4178),l=n(5266),i=n(5670),s=a.forwardRef((function(e,t){var n=e.prefixCls,s=e.title,f=e.content,u=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]])}return n}(e,["prefixCls","title","content"]),d=a.useContext(o.E_).getPrefixCls,m=d("popover",n),p=d();return a.createElement(c.Z,(0,r.Z)({},u,{prefixCls:m,ref:t,overlay:function(e){return a.createElement(a.Fragment,null,s&&a.createElement("div",{className:"".concat(e,"-title")},(0,l.Z)(s)),a.createElement("div",{className:"".concat(e,"-inner-content")},(0,l.Z)(f)))}(m),transitionName:(0,i.m)(p,"zoom-big",u.transitionName)}))}));s.displayName="Popover",s.defaultProps={placement:"top",trigger:"hover",mouseEnterDelay:.1,mouseLeaveDelay:.1,overlayStyle:{}},t.Z=s},4707:function(e,t,n){var r=n(2711),a=n(6762),c=n(3340),o=n(3841),l=n(5952),i=n(7363),s=n(8369),f=n(4237),u=n(1894),d=n(5643),m=n(7410),p=function(e){(0,o.Z)(n,e);var t=(0,l.Z)(n);function n(){var e;return(0,a.Z)(this,n),(e=t.apply(this,arguments)).resizeObserver=null,e.childNode=null,e.currentElement=null,e.state={width:0,height:0,offsetHeight:0,offsetWidth:0},e.onResize=function(t){var n=e.props.onResize,a=t[0].target,c=a.getBoundingClientRect(),o=c.width,l=c.height,i=a.offsetWidth,s=a.offsetHeight,f=Math.floor(o),u=Math.floor(l);if(e.state.width!==f||e.state.height!==u||e.state.offsetWidth!==i||e.state.offsetHeight!==s){var d={width:f,height:u,offsetWidth:i,offsetHeight:s};e.setState(d),n&&Promise.resolve().then((function(){n((0,r.Z)((0,r.Z)({},d),{},{offsetWidth:i,offsetHeight:s}),a)}))}},e.setChildNode=function(t){e.childNode=t},e}return(0,c.Z)(n,[{key:"componentDidMount",value:function(){this.onComponentUpdated()}},{key:"componentDidUpdate",value:function(){this.onComponentUpdated()}},{key:"componentWillUnmount",value:function(){this.destroyObserver()}},{key:"onComponentUpdated",value:function(){if(this.props.disabled)this.destroyObserver();else{var e=(0,s.Z)(this.childNode||this);e!==this.currentElement&&(this.destroyObserver(),this.currentElement=e),!this.resizeObserver&&e&&(this.resizeObserver=new m.Z(this.onResize),this.resizeObserver.observe(e))}}},{key:"destroyObserver",value:function(){this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)}},{key:"render",value:function(){var e=this.props.children,t=(0,f.Z)(e);if(t.length>1)(0,u.ZP)(!1,"Find more than one child node with `children` in ResizeObserver. Will only observe first one.");else if(0===t.length)return(0,u.ZP)(!1,"`children` of ResizeObserver is empty. Nothing is in observe."),null;var n=t[0];if(i.isValidElement(n)&&(0,d.Yr)(n)){var r=n.ref;t[0]=i.cloneElement(n,{ref:(0,d.sQ)(r,this.setChildNode)})}return 1===t.length?t[0]:t.map((function(e,t){return!i.isValidElement(e)||"key"in e&&null!==e.key?e:i.cloneElement(e,{key:"".concat("rc-observer-key","-").concat(t)})}))}}]),n}(i.Component);p.displayName="ResizeObserver",t.Z=p}}]);
2
- //# sourceMappingURL=18.lite.js.map?ver=bbe976f46f8c4fbf81dd
 
 
public/dist/193.lite.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";(self.webpackChunkrealCookieBanner_name_=self.webpackChunkrealCookieBanner_name_||[]).push([[193],{5193:function(e,t,r){r.d(t,{Z:function(){return G}});var s=r(63),n=r(4741),o=r(6762),a=r(3340),c=r(5558),i=r(3841),l=r(5952),p=r(7363),u=r(2286),d=r.n(u),f=r(733),h=r(1543),k=r(2412),m=r(8719),g=r(2324),y=r(4178),v=r(7988),b=r(7139),C=r(6294);function P(e){return!e||e<0?0:e>100?100:e}function O(e){var t=e.success,r=e.successPercent;return t&&"progress"in t&&((0,b.Z)(!1,"Progress","`success.progress` is deprecated. Please use `success.percent` instead."),r=t.progress),t&&"percent"in t&&(r=t.percent),r}var x=function(e,t){var r,s,n=e.from,o=void 0===n?C.ez.blue:n,a=e.to,c=void 0===a?C.ez.blue:a,i=e.direction,l=void 0===i?"rtl"===t?"to left":"to right":i,p=function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(e);n<s.length;n++)t.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(e,s[n])&&(r[s[n]]=e[s[n]])}return r}(e,["from","to","direction"]);if(0!==Object.keys(p).length){var u=(r=p,s=[],Object.keys(r).forEach((function(e){var t=parseFloat(e.replace(/%/g,""));isNaN(t)||s.push({key:t,value:r[e]})})),(s=s.sort((function(e,t){return e.key-t.key}))).map((function(e){var t=e.key,r=e.value;return"".concat(r," ").concat(t,"%")})).join(", "));return{backgroundImage:"linear-gradient(".concat(l,", ").concat(u,")")}}return{backgroundImage:"linear-gradient(".concat(l,", ").concat(o,", ").concat(c,")")}},E=function(e){var t=e.prefixCls,r=e.direction,s=e.percent,o=e.strokeWidth,a=e.size,c=e.strokeColor,i=e.strokeLinecap,l=e.children,u=e.trailColor,d=e.success,f=c&&"string"!=typeof c?x(c,r):{background:c},h=u?{backgroundColor:u}:void 0,k=(0,n.Z)({width:"".concat(P(s),"%"),height:o||("small"===a?6:8),borderRadius:"square"===i?0:""},f),m=O(e),g={width:"".concat(P(m),"%"),height:o||("small"===a?6:8),borderRadius:"square"===i?0:"",backgroundColor:null==d?void 0:d.strokeColor},y=void 0!==m?p.createElement("div",{className:"".concat(t,"-success-bg"),style:g}):null;return p.createElement(p.Fragment,null,p.createElement("div",{className:"".concat(t,"-outer")},p.createElement("div",{className:"".concat(t,"-inner"),style:h},p.createElement("div",{className:"".concat(t,"-bg"),style:k}),y)),l)},Z=r(7228),N=r(4115),w={className:"",percent:0,prefixCls:"rc-progress",strokeColor:"#2db7f5",strokeLinecap:"round",strokeWidth:1,style:{},trailColor:"#D9D9D9",trailWidth:1},j=function(e){var t=e.map((function(){return(0,p.useRef)()})),r=(0,p.useRef)(null);return(0,p.useEffect)((function(){var e=Date.now(),s=!1;Object.keys(t).forEach((function(n){var o=t[n].current;if(o){s=!0;var a=o.style;a.transitionDuration=".3s, .3s, .3s, .06s",r.current&&e-r.current<100&&(a.transitionDuration="0s, 0s")}})),s&&(r.current=Date.now())})),[t]},W=function(e){var t=e.className,r=e.percent,s=e.prefixCls,n=e.strokeColor,o=e.strokeLinecap,a=e.strokeWidth,c=e.style,i=e.trailColor,l=e.trailWidth,u=e.transition,f=(0,N.Z)(e,["className","percent","prefixCls","strokeColor","strokeLinecap","strokeWidth","style","trailColor","trailWidth","transition"]);delete f.gapPosition;var h=Array.isArray(r)?r:[r],k=Array.isArray(n)?n:[n],m=j(h),g=(0,Z.Z)(m,1)[0],y=a/2,v=100-a/2,b="M ".concat("round"===o?y:0,",").concat(y,"\n L ").concat("round"===o?v:100,",").concat(y),C="0 0 100 ".concat(a),P=0;return p.createElement("svg",Object.assign({className:d()("".concat(s,"-line"),t),viewBox:C,preserveAspectRatio:"none",style:c},f),p.createElement("path",{className:"".concat(s,"-line-trail"),d:b,strokeLinecap:o,stroke:i,strokeWidth:l||a,fillOpacity:"0"}),h.map((function(e,t){var r={strokeDasharray:"".concat(e,"px, 100px"),strokeDashoffset:"-".concat(P,"px"),transition:u||"stroke-dashoffset 0.3s ease 0s, stroke-dasharray .3s ease 0s, stroke 0.3s linear"},n=k[t]||k[k.length-1];return P+=e,p.createElement("path",{key:t,className:"".concat(s,"-line-path"),d:b,strokeLinecap:o,stroke:n,strokeWidth:a,fillOpacity:"0",ref:g[t],style:r})})))};W.defaultProps=w,W.displayName="Line";var S=0;function D(e){return+e.replace("%","")}function L(e){return Array.isArray(e)?e:[e]}function I(e,t,r,s){var n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,o=arguments.length>5?arguments[5]:void 0,a=50-s/2,c=0,i=-a,l=0,p=-2*a;switch(o){case"left":c=-a,i=0,l=2*a,p=0;break;case"right":c=a,i=0,l=-2*a,p=0;break;case"bottom":i=a,p=2*a}var u="M 50,50 m ".concat(c,",").concat(i,"\n a ").concat(a,",").concat(a," 0 1 1 ").concat(l,",").concat(-p,"\n a ").concat(a,",").concat(a," 0 1 1 ").concat(-l,",").concat(p),d=2*Math.PI*a,f={stroke:r,strokeDasharray:"".concat(t/100*(d-n),"px ").concat(d,"px"),strokeDashoffset:"-".concat(n/2+e/100*(d-n),"px"),transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s"};return{pathString:u,pathStyle:f}}var z=function(e){var t,r=e.prefixCls,s=e.strokeWidth,n=e.trailWidth,o=e.gapDegree,a=e.gapPosition,c=e.trailColor,i=e.strokeLinecap,l=e.style,u=e.className,f=e.strokeColor,h=e.percent,k=(0,N.Z)(e,["prefixCls","strokeWidth","trailWidth","gapDegree","gapPosition","trailColor","strokeLinecap","style","className","strokeColor","percent"]),m=p.useMemo((function(){return S+=1}),[]),g=I(0,100,c,s,o,a),y=g.pathString,v=g.pathStyle,b=L(h),C=L(f),P=C.find((function(e){return"[object Object]"===Object.prototype.toString.call(e)})),O=j(b),x=(0,Z.Z)(O,1)[0];return p.createElement("svg",Object.assign({className:d()("".concat(r,"-circle"),u),viewBox:"0 0 100 100",style:l},k),P&&p.createElement("defs",null,p.createElement("linearGradient",{id:"".concat(r,"-gradient-").concat(m),x1:"100%",y1:"0%",x2:"0%",y2:"0%"},Object.keys(P).sort((function(e,t){return D(e)-D(t)})).map((function(e,t){return p.createElement("stop",{key:t,offset:e,stopColor:P[e]})})))),p.createElement("path",{className:"".concat(r,"-circle-trail"),d:y,stroke:c,strokeLinecap:i,strokeWidth:n||s,fillOpacity:"0",style:v}),(t=0,b.map((function(e,n){var c=C[n]||C[C.length-1],l="[object Object]"===Object.prototype.toString.call(c)?"url(#".concat(r,"-gradient-").concat(m,")"):"",u=I(t,e,c,s,o,a);return t+=e,p.createElement("path",{key:n,className:"".concat(r,"-circle-path"),d:u.pathString,stroke:l,strokeLinecap:i,strokeWidth:s,opacity:0===e?0:1,fillOpacity:"0",style:u.pathStyle,ref:x[n]})}))).reverse())};z.defaultProps=w,z.displayName="Circle";var A=z;function M(e){var t=e.percent,r=e.success,s=e.successPercent,n=P(t),o=O({success:r,successPercent:s});return o?[P(o),P(n-P(o))]:n}var R=function(e){var t,r,n,o=e.prefixCls,a=e.width,c=e.strokeWidth,i=e.trailColor,l=e.strokeLinecap,u=e.gapPosition,f=e.gapDegree,h=e.type,k=e.children,m=a||120,g={width:m,height:m,fontSize:.15*m+6},y=c||6,v=u||"dashboard"===h&&"bottom"||"top",b=(r=(t=e).success,n=t.strokeColor||null,O({success:r,successPercent:t.successPercent})?[C.ez.green,n]:n),P="[object Object]"===Object.prototype.toString.call(b),x=d()("".concat(o,"-inner"),(0,s.Z)({},"".concat(o,"-circle-gradient"),P));return p.createElement("div",{className:x,style:g},p.createElement(A,{percent:M(e),strokeWidth:y,trailWidth:y,strokeColor:b,strokeLinecap:l,trailColor:i,prefixCls:o,gapDegree:f||0===f?f:"dashboard"===h?75:void 0,gapPosition:v}),k)},B=function(e){for(var t=e.size,r=e.steps,n=e.percent,o=void 0===n?0:n,a=e.strokeWidth,c=void 0===a?8:a,i=e.strokeColor,l=e.trailColor,u=e.prefixCls,f=e.children,h=Math.round(r*(o/100)),k="small"===t?2:14,m=[],g=0;g<r;g+=1)m.push(p.createElement("div",{key:g,className:d()("".concat(u,"-steps-item"),(0,s.Z)({},"".concat(u,"-steps-item-active"),g<=h-1)),style:{backgroundColor:g<=h-1?i:l,width:k,height:c}}));return p.createElement("div",{className:"".concat(u,"-steps-outer")},m,f)},_=function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(e);n<s.length;n++)t.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(e,s[n])&&(r[s[n]]=e[s[n]])}return r},q=((0,v.b)("line","circle","dashboard"),(0,v.b)("normal","exception","active","success")),F=function(e){(0,i.Z)(r,e);var t=(0,l.Z)(r);function r(){var e;return(0,o.Z)(this,r),(e=t.apply(this,arguments)).renderProgress=function(t){var r,o,a=t.getPrefixCls,i=t.direction,l=(0,c.Z)(e).props,u=l.prefixCls,h=l.className,k=l.size,m=l.type,g=l.steps,y=l.showInfo,v=l.strokeColor,C=_(l,["prefixCls","className","size","type","steps","showInfo","strokeColor"]),P=a("progress",u),O=e.getProgressStatus(),x=e.renderProcessInfo(P,O);(0,b.Z)(!("successPercent"in l),"Progress","`successPercent` is deprecated. Please use `success.percent` instead."),"line"===m?o=g?p.createElement(B,(0,n.Z)({},e.props,{strokeColor:"string"==typeof v?v:void 0,prefixCls:P,steps:g}),x):p.createElement(E,(0,n.Z)({},e.props,{prefixCls:P,direction:i}),x):"circle"!==m&&"dashboard"!==m||(o=p.createElement(R,(0,n.Z)({},e.props,{prefixCls:P,progressStatus:O}),x));var Z=d()(P,(r={},(0,s.Z)(r,"".concat(P,"-").concat(("dashboard"===m?"circle":g&&"steps")||m),!0),(0,s.Z)(r,"".concat(P,"-status-").concat(O),!0),(0,s.Z)(r,"".concat(P,"-show-info"),y),(0,s.Z)(r,"".concat(P,"-").concat(k),k),(0,s.Z)(r,"".concat(P,"-rtl"),"rtl"===i),r),h);return p.createElement("div",(0,n.Z)({},(0,f.Z)(C,["status","format","trailColor","strokeWidth","width","gapDegree","gapPosition","strokeLinecap","percent","success","successPercent"]),{className:Z}),o)},e}return(0,a.Z)(r,[{key:"getPercentNumber",value:function(){var e=this.props.percent,t=void 0===e?0:e,r=O(this.props);return parseInt(void 0!==r?r.toString():t.toString(),10)}},{key:"getProgressStatus",value:function(){var e=this.props.status;return q.indexOf(e)<0&&this.getPercentNumber()>=100?"success":e||"normal"}},{key:"renderProcessInfo",value:function(e,t){var r,s=this.props,n=s.showInfo,o=s.format,a=s.type,c=s.percent,i=O(this.props);if(!n)return null;var l="line"===a;return o||"exception"!==t&&"success"!==t?r=(o||function(e){return"".concat(e,"%")})(P(c),P(i)):"exception"===t?r=l?p.createElement(g.Z,null):p.createElement(h.Z,null):"success"===t&&(r=l?p.createElement(m.Z,null):p.createElement(k.Z,null)),p.createElement("span",{className:"".concat(e,"-text"),title:"string"==typeof r?r:void 0},r)}},{key:"render",value:function(){return p.createElement(y.C,null,this.renderProgress)}}]),r}(p.Component);F.defaultProps={type:"line",percent:0,showInfo:!0,trailColor:null,size:"default",gapDegree:void 0,strokeLinecap:"round"};var G=F}}]);
1
+ "use strict";(self.webpackChunkrealCookieBanner_name_=self.webpackChunkrealCookieBanner_name_||[]).push([[193],{5193:(e,t,r)=>{r.d(t,{Z:()=>G});var s=r(63),n=r(4741),o=r(6762),c=r(3340),a=r(5558),i=r(3841),l=r(5952),p=r(7363),u=r(2286),d=r.n(u),f=r(733),h=r(1543),k=r(2412),m=r(8719),g=r(2324),y=r(4178),v=r(7988),b=r(7139),C=r(6294);function P(e){return!e||e<0?0:e>100?100:e}function O(e){var t=e.success,r=e.successPercent;return t&&"progress"in t&&((0,b.Z)(!1,"Progress","`success.progress` is deprecated. Please use `success.percent` instead."),r=t.progress),t&&"percent"in t&&(r=t.percent),r}var x=function(e,t){var r,s,n=e.from,o=void 0===n?C.ez.blue:n,c=e.to,a=void 0===c?C.ez.blue:c,i=e.direction,l=void 0===i?"rtl"===t?"to left":"to right":i,p=function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(e);n<s.length;n++)t.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(e,s[n])&&(r[s[n]]=e[s[n]])}return r}(e,["from","to","direction"]);if(0!==Object.keys(p).length){var u=(r=p,s=[],Object.keys(r).forEach((function(e){var t=parseFloat(e.replace(/%/g,""));isNaN(t)||s.push({key:t,value:r[e]})})),(s=s.sort((function(e,t){return e.key-t.key}))).map((function(e){var t=e.key,r=e.value;return"".concat(r," ").concat(t,"%")})).join(", "));return{backgroundImage:"linear-gradient(".concat(l,", ").concat(u,")")}}return{backgroundImage:"linear-gradient(".concat(l,", ").concat(o,", ").concat(a,")")}};const E=function(e){var t=e.prefixCls,r=e.direction,s=e.percent,o=e.strokeWidth,c=e.size,a=e.strokeColor,i=e.strokeLinecap,l=e.children,u=e.trailColor,d=e.success,f=a&&"string"!=typeof a?x(a,r):{background:a},h=u?{backgroundColor:u}:void 0,k=(0,n.Z)({width:"".concat(P(s),"%"),height:o||("small"===c?6:8),borderRadius:"square"===i?0:""},f),m=O(e),g={width:"".concat(P(m),"%"),height:o||("small"===c?6:8),borderRadius:"square"===i?0:"",backgroundColor:null==d?void 0:d.strokeColor},y=void 0!==m?p.createElement("div",{className:"".concat(t,"-success-bg"),style:g}):null;return p.createElement(p.Fragment,null,p.createElement("div",{className:"".concat(t,"-outer")},p.createElement("div",{className:"".concat(t,"-inner"),style:h},p.createElement("div",{className:"".concat(t,"-bg"),style:k}),y)),l)};var Z=r(7228),N=r(4115),w={className:"",percent:0,prefixCls:"rc-progress",strokeColor:"#2db7f5",strokeLinecap:"round",strokeWidth:1,style:{},trailColor:"#D9D9D9",trailWidth:1},j=function(e){var t=e.map((function(){return(0,p.useRef)()})),r=(0,p.useRef)(null);return(0,p.useEffect)((function(){var e=Date.now(),s=!1;Object.keys(t).forEach((function(n){var o=t[n].current;if(o){s=!0;var c=o.style;c.transitionDuration=".3s, .3s, .3s, .06s",r.current&&e-r.current<100&&(c.transitionDuration="0s, 0s")}})),s&&(r.current=Date.now())})),[t]},W=function(e){var t=e.className,r=e.percent,s=e.prefixCls,n=e.strokeColor,o=e.strokeLinecap,c=e.strokeWidth,a=e.style,i=e.trailColor,l=e.trailWidth,u=e.transition,f=(0,N.Z)(e,["className","percent","prefixCls","strokeColor","strokeLinecap","strokeWidth","style","trailColor","trailWidth","transition"]);delete f.gapPosition;var h=Array.isArray(r)?r:[r],k=Array.isArray(n)?n:[n],m=j(h),g=(0,Z.Z)(m,1)[0],y=c/2,v=100-c/2,b="M ".concat("round"===o?y:0,",").concat(y,"\n L ").concat("round"===o?v:100,",").concat(y),C="0 0 100 ".concat(c),P=0;return p.createElement("svg",Object.assign({className:d()("".concat(s,"-line"),t),viewBox:C,preserveAspectRatio:"none",style:a},f),p.createElement("path",{className:"".concat(s,"-line-trail"),d:b,strokeLinecap:o,stroke:i,strokeWidth:l||c,fillOpacity:"0"}),h.map((function(e,t){var r={strokeDasharray:"".concat(e,"px, 100px"),strokeDashoffset:"-".concat(P,"px"),transition:u||"stroke-dashoffset 0.3s ease 0s, stroke-dasharray .3s ease 0s, stroke 0.3s linear"},n=k[t]||k[k.length-1];return P+=e,p.createElement("path",{key:t,className:"".concat(s,"-line-path"),d:b,strokeLinecap:o,stroke:n,strokeWidth:c,fillOpacity:"0",ref:g[t],style:r})})))};W.defaultProps=w,W.displayName="Line";var S=0;function D(e){return+e.replace("%","")}function L(e){return Array.isArray(e)?e:[e]}function I(e,t,r,s){var n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,o=arguments.length>5?arguments[5]:void 0,c=50-s/2,a=0,i=-c,l=0,p=-2*c;switch(o){case"left":a=-c,i=0,l=2*c,p=0;break;case"right":a=c,i=0,l=-2*c,p=0;break;case"bottom":i=c,p=2*c}var u="M 50,50 m ".concat(a,",").concat(i,"\n a ").concat(c,",").concat(c," 0 1 1 ").concat(l,",").concat(-p,"\n a ").concat(c,",").concat(c," 0 1 1 ").concat(-l,",").concat(p),d=2*Math.PI*c,f={stroke:r,strokeDasharray:"".concat(t/100*(d-n),"px ").concat(d,"px"),strokeDashoffset:"-".concat(n/2+e/100*(d-n),"px"),transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s"};return{pathString:u,pathStyle:f}}var z=function(e){var t,r=e.prefixCls,s=e.strokeWidth,n=e.trailWidth,o=e.gapDegree,c=e.gapPosition,a=e.trailColor,i=e.strokeLinecap,l=e.style,u=e.className,f=e.strokeColor,h=e.percent,k=(0,N.Z)(e,["prefixCls","strokeWidth","trailWidth","gapDegree","gapPosition","trailColor","strokeLinecap","style","className","strokeColor","percent"]),m=p.useMemo((function(){return S+=1}),[]),g=I(0,100,a,s,o,c),y=g.pathString,v=g.pathStyle,b=L(h),C=L(f),P=C.find((function(e){return"[object Object]"===Object.prototype.toString.call(e)})),O=j(b),x=(0,Z.Z)(O,1)[0];return p.createElement("svg",Object.assign({className:d()("".concat(r,"-circle"),u),viewBox:"0 0 100 100",style:l},k),P&&p.createElement("defs",null,p.createElement("linearGradient",{id:"".concat(r,"-gradient-").concat(m),x1:"100%",y1:"0%",x2:"0%",y2:"0%"},Object.keys(P).sort((function(e,t){return D(e)-D(t)})).map((function(e,t){return p.createElement("stop",{key:t,offset:e,stopColor:P[e]})})))),p.createElement("path",{className:"".concat(r,"-circle-trail"),d:y,stroke:a,strokeLinecap:i,strokeWidth:n||s,fillOpacity:"0",style:v}),(t=0,b.map((function(e,n){var a=C[n]||C[C.length-1],l="[object Object]"===Object.prototype.toString.call(a)?"url(#".concat(r,"-gradient-").concat(m,")"):"",u=I(t,e,a,s,o,c);return t+=e,p.createElement("path",{key:n,className:"".concat(r,"-circle-path"),d:u.pathString,stroke:l,strokeLinecap:i,strokeWidth:s,opacity:0===e?0:1,fillOpacity:"0",style:u.pathStyle,ref:x[n]})}))).reverse())};z.defaultProps=w,z.displayName="Circle";const A=z;function M(e){var t=e.percent,r=e.success,s=e.successPercent,n=P(t),o=O({success:r,successPercent:s});return o?[P(o),P(n-P(o))]:n}const R=function(e){var t,r,n,o=e.prefixCls,c=e.width,a=e.strokeWidth,i=e.trailColor,l=e.strokeLinecap,u=e.gapPosition,f=e.gapDegree,h=e.type,k=e.children,m=c||120,g={width:m,height:m,fontSize:.15*m+6},y=a||6,v=u||"dashboard"===h&&"bottom"||"top",b=(r=(t=e).success,n=t.strokeColor||null,O({success:r,successPercent:t.successPercent})?[C.ez.green,n]:n),P="[object Object]"===Object.prototype.toString.call(b),x=d()("".concat(o,"-inner"),(0,s.Z)({},"".concat(o,"-circle-gradient"),P));return p.createElement("div",{className:x,style:g},p.createElement(A,{percent:M(e),strokeWidth:y,trailWidth:y,strokeColor:b,strokeLinecap:l,trailColor:i,prefixCls:o,gapDegree:f||0===f?f:"dashboard"===h?75:void 0,gapPosition:v}),k)},B=function(e){for(var t=e.size,r=e.steps,n=e.percent,o=void 0===n?0:n,c=e.strokeWidth,a=void 0===c?8:c,i=e.strokeColor,l=e.trailColor,u=e.prefixCls,f=e.children,h=Math.round(r*(o/100)),k="small"===t?2:14,m=[],g=0;g<r;g+=1)m.push(p.createElement("div",{key:g,className:d()("".concat(u,"-steps-item"),(0,s.Z)({},"".concat(u,"-steps-item-active"),g<=h-1)),style:{backgroundColor:g<=h-1?i:l,width:k,height:a}}));return p.createElement("div",{className:"".concat(u,"-steps-outer")},m,f)};var _=function(e,t){var r={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(e);n<s.length;n++)t.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(e,s[n])&&(r[s[n]]=e[s[n]])}return r},q=((0,v.b)("line","circle","dashboard"),(0,v.b)("normal","exception","active","success")),F=function(e){(0,i.Z)(r,e);var t=(0,l.Z)(r);function r(){var e;return(0,o.Z)(this,r),(e=t.apply(this,arguments)).renderProgress=function(t){var r,o,c=t.getPrefixCls,i=t.direction,l=(0,a.Z)(e).props,u=l.prefixCls,h=l.className,k=l.size,m=l.type,g=l.steps,y=l.showInfo,v=l.strokeColor,C=_(l,["prefixCls","className","size","type","steps","showInfo","strokeColor"]),P=c("progress",u),O=e.getProgressStatus(),x=e.renderProcessInfo(P,O);(0,b.Z)(!("successPercent"in l),"Progress","`successPercent` is deprecated. Please use `success.percent` instead."),"line"===m?o=g?p.createElement(B,(0,n.Z)({},e.props,{strokeColor:"string"==typeof v?v:void 0,prefixCls:P,steps:g}),x):p.createElement(E,(0,n.Z)({},e.props,{prefixCls:P,direction:i}),x):"circle"!==m&&"dashboard"!==m||(o=p.createElement(R,(0,n.Z)({},e.props,{prefixCls:P,progressStatus:O}),x));var Z=d()(P,(r={},(0,s.Z)(r,"".concat(P,"-").concat(("dashboard"===m?"circle":g&&"steps")||m),!0),(0,s.Z)(r,"".concat(P,"-status-").concat(O),!0),(0,s.Z)(r,"".concat(P,"-show-info"),y),(0,s.Z)(r,"".concat(P,"-").concat(k),k),(0,s.Z)(r,"".concat(P,"-rtl"),"rtl"===i),r),h);return p.createElement("div",(0,n.Z)({},(0,f.Z)(C,["status","format","trailColor","strokeWidth","width","gapDegree","gapPosition","strokeLinecap","percent","success","successPercent"]),{className:Z}),o)},e}return(0,c.Z)(r,[{key:"getPercentNumber",value:function(){var e=this.props.percent,t=void 0===e?0:e,r=O(this.props);return parseInt(void 0!==r?r.toString():t.toString(),10)}},{key:"getProgressStatus",value:function(){var e=this.props.status;return q.indexOf(e)<0&&this.getPercentNumber()>=100?"success":e||"normal"}},{key:"renderProcessInfo",value:function(e,t){var