j1-template 2022.0.7 → 2022.0.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/themes/j1/modules/ads/google_ad_content_home.html +11 -0
- data/_includes/themes/j1/modules/ads/google_ad_top_home.html +11 -0
- data/_layouts/default.html +0 -56
- data/apps/public/cc/index.adoc +0 -1
- data/assets/data/article_navigator/index.html +0 -1
- data/assets/data/news_panel_posts/index.html +0 -1
- data/assets/error_pages/HTTP444.html +4 -4
- data/assets/error_pages/HTTP445.html +7 -6
- data/assets/error_pages/HTTP446.html +110 -0
- data/assets/error_pages/HTTP447.html +110 -0
- data/assets/error_pages/HTTP448.html +111 -0
- data/assets/themes/j1/adapter/js/advertising.js +413 -0
- data/assets/themes/j1/adapter/js/algolia.js +1 -4
- data/assets/themes/j1/adapter/js/analytics.js +237 -0
- data/assets/themes/j1/adapter/js/asciidoctor.js +1 -4
- data/assets/themes/j1/adapter/js/attic.js +1 -4
- data/assets/themes/j1/adapter/js/bmd.js +1 -4
- data/assets/themes/j1/adapter/js/carousel.js +1 -4
- data/assets/themes/j1/adapter/js/clipboard.js +1 -2
- data/assets/themes/j1/adapter/js/comments.js +387 -0
- data/assets/themes/j1/adapter/js/cookieConsent.js +103 -59
- data/assets/themes/j1/adapter/js/fab.js +1 -1
- data/assets/themes/j1/adapter/js/framer.js +1 -7
- data/assets/themes/j1/adapter/js/j1.js +157 -354
- data/assets/themes/j1/adapter/js/justifiedGallery.js +1 -4
- data/assets/themes/j1/adapter/js/justifiedGalleryCustomizer.js +1 -4
- data/assets/themes/j1/adapter/js/lightbox.js +1 -5
- data/assets/themes/j1/adapter/js/logger.js +1 -2
- data/assets/themes/j1/adapter/js/mmenu.js +2 -3
- data/assets/themes/j1/adapter/js/navigator.js +4 -3
- data/assets/themes/j1/adapter/js/quicksearch.js +1 -4
- data/assets/themes/j1/adapter/js/rouge.js +2 -5
- data/assets/themes/j1/adapter/js/rtable.js +1 -4
- data/assets/themes/j1/adapter/js/rtextResizer.js +1 -4
- data/assets/themes/j1/adapter/js/scroller.js +2 -5
- data/assets/themes/j1/adapter/js/themer.js +1 -1
- data/assets/themes/j1/adapter/js/toccer.js +1 -4
- data/assets/themes/j1/adapter/js/translator.js +121 -112
- data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +6 -0
- data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/js/template.js +13 -5
- data/assets/themes/j1/core/js/template.min.js +1 -1
- data/assets/themes/j1/core/js/template.min.js.map +1 -1
- data/assets/themes/j1/modules/advertising/js/google/adInitializer.js +117 -0
- data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.js +29 -13
- data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.min.js +1 -1
- data/assets/themes/j1/modules/deeplAPI/js/deeplAPI.2.js +1 -1
- data/assets/themes/j1/modules/deeplAPI/js/deeplAPI.js +1 -1
- data/assets/themes/j1/modules/scroller/js/scroller.js +1 -1
- data/assets/themes/j1/modules/translator/js/translator.js +97 -62
- data/assets/themes/j1/modules/translator/js/translator.min.js +1 -1
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/Gemfile +1 -1
- data/lib/starter_web/_config.yml +1 -13
- data/lib/starter_web/_data/apps/carousel.yml +2 -2
- data/lib/starter_web/_data/apps/defaults/carousel.yml +3 -2
- data/lib/starter_web/_data/apps/defaults/justifiedGallery.yml +2 -2
- data/lib/starter_web/_data/apps/defaults/justifiedGalleryCustomizer.yml +2 -2
- data/lib/starter_web/_data/apps/defaults/lightGallery.yml +2 -2
- data/lib/starter_web/_data/apps/defaults/lightbox.yml +2 -2
- data/lib/starter_web/_data/apps/justifiedGallery.yml +2 -2
- data/lib/starter_web/_data/apps/justifiedGalleryCustomizer.yml +2 -2
- data/lib/starter_web/_data/apps/lightGallery.yml +2 -2
- data/lib/starter_web/_data/apps/lightbox.yml +2 -2
- data/lib/starter_web/_data/blocks/banner.yml +3 -2
- data/lib/starter_web/_data/blocks/defaults/banner.yml +9 -0
- data/lib/starter_web/_data/blocks/defaults/footer.yml +9 -0
- data/lib/starter_web/_data/blocks/defaults/panel.yml +9 -0
- data/lib/starter_web/_data/blocks/footer.yml +3 -2
- data/lib/starter_web/_data/blocks/panel.yml +3 -2
- data/lib/starter_web/_data/builder/blog_navigator.yml +3 -2
- data/lib/starter_web/_data/builder/defaults/blog_navigator.yml +8 -8
- data/lib/starter_web/_data/j1_config.yml +0 -116
- data/lib/starter_web/_data/layouts/default.yml +21 -21
- data/lib/starter_web/_data/layouts/home.yml +24 -0
- data/lib/starter_web/_data/layouts/page.yml +7 -18
- data/lib/starter_web/_data/layouts/post.yml +0 -11
- data/lib/starter_web/_data/modules/advertising.yml +140 -12
- data/lib/starter_web/_data/modules/analytics.yml +99 -0
- data/lib/starter_web/_data/modules/attics.yml +3 -2
- data/lib/starter_web/_data/modules/comments.yml +55 -0
- data/lib/starter_web/_data/modules/cookieconsent.yml +2 -1
- data/lib/starter_web/_data/modules/cookies.yml +3 -1
- data/lib/starter_web/_data/modules/defaults/advertising.yml +106 -0
- data/lib/starter_web/_data/modules/defaults/analytics.yml +93 -0
- data/lib/starter_web/_data/modules/defaults/attics.yml +3 -2
- data/lib/starter_web/_data/modules/defaults/authentication.yml +51 -48
- data/lib/starter_web/_data/modules/defaults/comments.yml +114 -0
- data/lib/starter_web/_data/modules/defaults/cookieconsent.yml +6 -6
- data/lib/starter_web/_data/modules/defaults/cookies.yml +90 -6
- data/lib/starter_web/_data/modules/defaults/fab.yml +4 -2
- data/lib/starter_web/_data/modules/defaults/framer.yml +2 -3
- data/lib/starter_web/_data/modules/defaults/log4javascript.yml +3 -2
- data/lib/starter_web/_data/modules/defaults/log4r.yml +2 -2
- data/lib/starter_web/_data/modules/defaults/navigator.yml +4 -2
- data/lib/starter_web/_data/modules/defaults/quicksearch.yml +4 -3
- data/lib/starter_web/_data/modules/defaults/rtable.yml +3 -2
- data/lib/starter_web/_data/modules/defaults/scoller.yml +3 -2
- data/lib/starter_web/_data/modules/defaults/themer.yml +119 -118
- data/lib/starter_web/_data/modules/defaults/toccer.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/translator.yml +1 -1
- data/lib/starter_web/_data/modules/fab.yml +3 -2
- data/lib/starter_web/_data/modules/framer.yml +3 -4
- data/lib/starter_web/_data/modules/log4r.yml +2 -2
- data/lib/starter_web/_data/modules/navigator.yml +4 -2
- data/lib/starter_web/_data/modules/quicksearch.yml +3 -3
- data/lib/starter_web/_data/modules/rtable.yml +3 -3
- data/lib/starter_web/_data/modules/scroller.yml +2 -3
- data/lib/starter_web/_data/modules/themer.yml +2 -3
- data/lib/starter_web/_data/modules/toccer.yml +3 -3
- data/lib/starter_web/_data/modules/translator.yml +1 -1
- data/lib/starter_web/_data/plugins/defaults/paginator.yml +2 -2
- data/lib/starter_web/_data/plugins/paginator.yml +2 -2
- data/lib/starter_web/_data/resources.yml +447 -290
- data/lib/starter_web/_includes/attributes.asciidoc +1 -1
- data/lib/starter_web/_includes/themes/j1/modules/ads/google_ad_content_home.html +11 -0
- data/lib/starter_web/_includes/themes/j1/modules/ads/google_ad_top_home.html +11 -0
- data/lib/starter_web/_plugins/lunr_index.rb +1 -1
- data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.ads.asciidoc +196 -0
- data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.comments.asciidoc +182 -0
- data/lib/starter_web/index.html +0 -1
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.adoc +0 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/multi.adoc +0 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/simple-document/simple.adoc +0 -1
- data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +0 -1
- data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +0 -1
- data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +0 -1
- data/lib/starter_web/pages/public/blog/navigator/archive.html +0 -1
- data/lib/starter_web/pages/public/blog/navigator/index.html +0 -1
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +4 -3
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.ads.asciidoc +265 -0
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.base.asciidoc +237 -0
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.comments.asciidoc +237 -0
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +62 -0
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/google-ad.js +130 -0
- data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +0 -1
- data/lib/starter_web/pages/public/legal/en/200_impress.adoc +0 -1
- data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +0 -1
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +24 -70
- data/_includes/themes/j1/blocks/ads/ad.html +0 -64
- data/_includes/themes/j1/modules/boards/news_pin_board.html +0 -183
- data/_includes/themes/j1/modules/connectors/ad/custom-provider.html +0 -30
- data/_includes/themes/j1/modules/connectors/ad/google-adsense.html +0 -62
- data/_includes/themes/j1/modules/connectors/ads +0 -56
- data/_includes/themes/j1/modules/connectors/analytic/custom-provider.html +0 -32
- data/_includes/themes/j1/modules/connectors/analytic/google-analytics.html +0 -30
- data/_includes/themes/j1/modules/connectors/analytics +0 -60
- data/_includes/themes/j1/modules/connectors/comment/commento.html +0 -31
- data/_includes/themes/j1/modules/connectors/comment/custom-provider.html +0 -30
- data/_includes/themes/j1/modules/connectors/comment/disqus.html +0 -32
- data/_includes/themes/j1/modules/connectors/comment/facebook.html +0 -30
- data/_includes/themes/j1/modules/connectors/comment/hyvor.html +0 -32
- data/_includes/themes/j1/modules/connectors/comment/just-comments.html +0 -31
- data/_includes/themes/j1/modules/connectors/comments +0 -64
- data/_includes/themes/j1/modules/connectors/sharing +0 -29
- data/_includes/themes/j1/modules/connectors/survey/custom-provider.html +0 -30
- data/_includes/themes/j1/modules/connectors/survey/jotform.html +0 -32
- data/_includes/themes/j1/modules/connectors/surveys +0 -58
- data/_includes/themes/j1/modules/connectors/translator +0 -58
- data/_includes/themes/j1/modules/connectors/translators/custom-translator.html +0 -32
- data/_includes/themes/j1/modules/connectors/translators/google-translator.html +0 -53
- data/_includes/themes/j1/modules/search/algolia.html +0 -181
- data/_includes/themes/j1/modules/search/docsearch.html +0 -42
- data/assets/data/disqus.js +0 -81
- data/assets/data/hyvor.js +0 -72
- data/lib/starter_web/pages/_test_pages/100_side-bar-tester.adoc +0 -244
- data/lib/starter_web/pages/_test_pages/_includes/attributes.asciidoc +0 -110
- data/lib/starter_web/pages/_test_pages/_includes/documents/100_gistblock.asciidoc +0 -28
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_bottom_info.asciidoc +0 -14
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_bottom_left_warning.asciidoc +0 -11
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_bottom_right_danger.asciidoc +0 -11
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_central_success.asciidoc +0 -11
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_full_height_left_info.asciidoc +0 -11
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_full_height_right_success.asciidoc +0 -11
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_table_bs_modal_examples.asciidoc +0 -47
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_top_info.asciidoc +0 -11
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_top_left_info.asciidoc +0 -11
- data/lib/starter_web/pages/_test_pages/_includes/documents/410_top_right_success.asciidoc +0 -11
- data/lib/starter_web/pages/_test_pages/_includes/documents/419_advanced_modals_demo.asciidoc +0 -337
- data/lib/starter_web/pages/_test_pages/_includes/documents/tables/bs_modal_examples.asciidoc +0 -47
- data/lib/starter_web/pages/_test_pages/accordion-01-tester.adoc +0 -220
- data/lib/starter_web/pages/_test_pages/accordion-02-tester.adoc +0 -177
- data/lib/starter_web/pages/_test_pages/accordion-03-tester.adoc +0 -148
- data/lib/starter_web/pages/_test_pages/attribute-changes-01-tester.adoc +0 -226
- data/lib/starter_web/pages/_test_pages/backdrop-tester.adoc +0 -109
- data/lib/starter_web/pages/_test_pages/button-tester-1.adoc +0 -127
- data/lib/starter_web/pages/_test_pages/card-tester.adoc +0 -128
- data/lib/starter_web/pages/_test_pages/cookieConsent.adoc +0 -96
- data/lib/starter_web/pages/_test_pages/deepl.0.adoc +0 -258
- data/lib/starter_web/pages/_test_pages/deepl.adoc +0 -204
- data/lib/starter_web/pages/_test_pages/desandro-button.adoc +0 -171
- data/lib/starter_web/pages/_test_pages/desandro.adoc +0 -147
- data/lib/starter_web/pages/_test_pages/flipcard-1-tester.adoc +0 -308
- data/lib/starter_web/pages/_test_pages/formular-01-tester.adoc +0 -167
- data/lib/starter_web/pages/_test_pages/formular-02-tester.adoc +0 -727
- data/lib/starter_web/pages/_test_pages/google-translate-tester.0.adoc +0 -113
- data/lib/starter_web/pages/_test_pages/google-translate-tester.1.adoc +0 -231
- data/lib/starter_web/pages/_test_pages/google-translate-tester.3.adoc +0 -149
- data/lib/starter_web/pages/_test_pages/google-translate-tester.4.adoc +0 -237
- data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-2.adoc +0 -183
- data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-3.adoc +0 -235
- data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-4.adoc +0 -222
- data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-5.adoc +0 -119
- data/lib/starter_web/pages/_test_pages/infinite-scroll-tester.1.adoc +0 -236
- data/lib/starter_web/pages/_test_pages/infinite-scroll-tester.adoc +0 -225
- data/lib/starter_web/pages/_test_pages/list-group-tester.adoc +0 -265
- data/lib/starter_web/pages/_test_pages/tictok.adoc +0 -127
@@ -55,7 +55,7 @@ regenerate: true
|
|
55
55
|
{% assign toccer_defaults = modules.defaults.toccer.defaults %}
|
56
56
|
|
57
57
|
{% assign cookie_defaults = modules.defaults.cookies.defaults %}
|
58
|
-
{% assign cookie_settings = modules.
|
58
|
+
{% assign cookie_settings = modules.cookies.settings %}
|
59
59
|
|
60
60
|
{% assign themer_defaults = modules.defaults.themer.defaults %}
|
61
61
|
{% assign themer_settings = modules.themer.settings %}
|
@@ -82,24 +82,10 @@ regenerate: true
|
|
82
82
|
{% assign themer_enabled = modules.themer_options.enabled %}
|
83
83
|
{% assign themer_reloadPageOnChange = modules.themer_options.reloadPageOnChange %}
|
84
84
|
{% assign themer_hideOnReload = modules.themer_options.hideOnReload %}
|
85
|
-
|
85
|
+
|
86
86
|
|
87
87
|
{% comment %} Set variables
|
88
88
|
-------------------------------------------------------------------------------- {% endcomment %}
|
89
|
-
{% if comment_provider == 'disqus' %}
|
90
|
-
{% assign site_id = template_config.comments.disqus.site_id %}
|
91
|
-
{% elsif comment_provider == 'hyvor' %}
|
92
|
-
{% assign site_id = template_config.comments.hyvor.site_id %}
|
93
|
-
{% elsif comment_provider == 'commento' %}
|
94
|
-
{% assign site_id = template_config.comments.commento.site_id %}
|
95
|
-
{% elsif comment_provider == 'just-comments' %}
|
96
|
-
{% assign site_id = template_config.comments.just-comments.site_id %}
|
97
|
-
{% elsif comment_provider == 'facebook' %}
|
98
|
-
{% assign site_id = template_config.comments.facebook.site_id %}
|
99
|
-
{% else %}
|
100
|
-
{% assign site_id = false %}
|
101
|
-
{% endif %}
|
102
|
-
|
103
89
|
{% assign production = false %}
|
104
90
|
{% if environment == 'prod' or environment == 'production' %}
|
105
91
|
{% assign production = true %}
|
@@ -115,14 +101,6 @@ regenerate: true
|
|
115
101
|
{% assign language = "en" %}
|
116
102
|
{% endif %}
|
117
103
|
|
118
|
-
{% if language == "en" %}
|
119
|
-
{% assign comments_headline = template_config.comments.comments_headline.en %}
|
120
|
-
{% endif %}
|
121
|
-
|
122
|
-
{% if language == "de" %}
|
123
|
-
{% assign comments_headline = template_config.comments.comments_headline.de %}
|
124
|
-
{% endif %}
|
125
|
-
|
126
104
|
/*
|
127
105
|
# -----------------------------------------------------------------------------
|
128
106
|
# ~/assets/themes/j1/adapter/js/j1_template.js
|
@@ -151,7 +129,6 @@ regenerate: true
|
|
151
129
|
/* eslint semi: "off" */
|
152
130
|
// -----------------------------------------------------------------------------
|
153
131
|
'use strict';
|
154
|
-
|
155
132
|
var j1 = (function () {
|
156
133
|
|
157
134
|
// ---------------------------------------------------------------------------
|
@@ -174,9 +151,7 @@ var j1 = (function () {
|
|
174
151
|
// Default comment provider information
|
175
152
|
var comment_provider = '{{comment_provider}}';
|
176
153
|
var site_id = '{{site_id}}';
|
177
|
-
|
178
|
-
// Default translator settings (currently NOT supported)
|
179
|
-
// var translation_enabled = {{template_config.translation.enabled}};
|
154
|
+
var check_cookies = {{cookie_options.check_cookies}};
|
180
155
|
|
181
156
|
var current_user_data;
|
182
157
|
var current_page;
|
@@ -309,7 +284,7 @@ var j1 = (function () {
|
|
309
284
|
j1['xhrDOMState'] = {};
|
310
285
|
|
311
286
|
// -----------------------------------------------------------------------
|
312
|
-
//
|
287
|
+
// final updates before browser page|tab
|
313
288
|
// see: https://stackoverflow.com/questions/3888902/detect-browser-or-tab-closing
|
314
289
|
// -----------------------------------------------------------------------
|
315
290
|
window.addEventListener('beforeunload', function (event) {
|
@@ -322,49 +297,27 @@ var j1 = (function () {
|
|
322
297
|
var url;
|
323
298
|
var baseUrl;
|
324
299
|
|
325
|
-
// final update of the user state cookie
|
326
|
-
|
327
|
-
|
328
|
-
user_state.session_active = false;
|
329
|
-
user_state.last_session_ts = timestamp_now;
|
300
|
+
// final update of the user state cookie
|
301
|
+
user_state.session_active = false;
|
302
|
+
user_state.last_session_ts = timestamp_now;
|
330
303
|
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
if (!cookie_written) {
|
341
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_consent);
|
342
|
-
}
|
343
|
-
logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
|
344
|
-
cookie_written = j1.writeCookie({
|
345
|
-
name: cookie_names.user_state,
|
346
|
-
data: user_state,
|
347
|
-
secure: secure,
|
348
|
-
expires: 0
|
349
|
-
});
|
350
|
-
if (!cookie_written) {
|
351
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_consent);
|
352
|
-
}
|
353
|
-
} else {
|
354
|
-
logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
|
355
|
-
cookie_written = j1.writeCookie({
|
356
|
-
name: cookie_names.user_state,
|
357
|
-
data: user_state,
|
358
|
-
secure: secure,
|
359
|
-
expires: 365
|
360
|
-
});
|
361
|
-
if (!cookie_written) {
|
362
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_state);
|
363
|
-
}
|
364
|
-
}
|
304
|
+
if (!user_consent.analysis || !user_consent.personalization) {
|
305
|
+
logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
|
306
|
+
|
307
|
+
cookie_written = j1.writeCookie({
|
308
|
+
name: cookie_names.user_state,
|
309
|
+
data: user_state,
|
310
|
+
secure: secure,
|
311
|
+
expires: 0
|
312
|
+
});
|
365
313
|
} else {
|
366
|
-
|
367
|
-
|
314
|
+
logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
|
315
|
+
cookie_written = j1.writeCookie({
|
316
|
+
name: cookie_names.user_state,
|
317
|
+
data: user_state,
|
318
|
+
secure: secure,
|
319
|
+
expires: 365
|
320
|
+
});
|
368
321
|
}
|
369
322
|
}); // END beforeunload
|
370
323
|
|
@@ -383,9 +336,6 @@ var j1 = (function () {
|
|
383
336
|
secure: secure,
|
384
337
|
expires: 0
|
385
338
|
});
|
386
|
-
if (!cookie_written) {
|
387
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
|
388
|
-
}
|
389
339
|
|
390
340
|
user_state = j1.existsCookie(cookie_names.user_state)
|
391
341
|
? j1.readCookie(cookie_names.user_state)
|
@@ -395,96 +345,25 @@ var j1 = (function () {
|
|
395
345
|
secure: secure,
|
396
346
|
expires: 365
|
397
347
|
});
|
398
|
-
if (!cookie_written) {
|
399
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_state);
|
400
|
-
}
|
401
348
|
|
402
|
-
// jadams, 2021-
|
403
|
-
//
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
gaCookies.forEach(item => console.log('j1.core.switcher: ' + item));
|
412
|
-
user_state = j1.readCookie(cookie_names.user_state);
|
413
|
-
user_state.session_active = true;
|
349
|
+
// jadams, 2021-12-06: Check if access to cookies for this site failed.
|
350
|
+
// Possibly, a third-party domain or an attacker tries to access it.
|
351
|
+
if (check_cookies) {
|
352
|
+
if (!user_state) {
|
353
|
+
logger.error('\n' + 'Access to cookie failed or cookie not found: ' + cookie_names.user_state);
|
354
|
+
logger.debug('\n' + 'j1 cookies found:' + j1Cookies.length);
|
355
|
+
// redirect to error page: blocked content
|
356
|
+
window.location.href = '/446.html';
|
357
|
+
}
|
414
358
|
}
|
415
359
|
|
416
360
|
if (!user_consent.analysis || !user_consent.personalization) {
|
417
|
-
//
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
data: user_state,
|
422
|
-
secure: secure,
|
423
|
-
expires: 0
|
424
|
-
});
|
425
|
-
if (!cookie_written) {
|
426
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_state);
|
427
|
-
}
|
428
|
-
} else {
|
429
|
-
logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
|
430
|
-
cookie_written = j1.writeCookie({
|
431
|
-
name: cookie_names.user_state,
|
432
|
-
data: user_state,
|
433
|
-
secure: secure,
|
434
|
-
expires: 365
|
435
|
-
});
|
436
|
-
if (!cookie_written) {
|
437
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_state);
|
438
|
-
}
|
361
|
+
// expire permanent cookies to session
|
362
|
+
j1.expireCookie({ name: cookie_names.user_state });
|
363
|
+
j1.expireCookie({ name: cookie_names.user_consent });
|
364
|
+
j1.expireCookie({ name: cookie_names.user_translate });
|
439
365
|
}
|
440
366
|
|
441
|
-
// jadams, 2021-11-10: anchor links of type #void are used/managed
|
442
|
-
// by the FAB module. No geneneraL use for NOW.
|
443
|
-
// -----------------------------------------------------------------------
|
444
|
-
// initialize event handler for smooth scroll on in-page anchors
|
445
|
-
// $('a[href*=\\#]').on('click', function (event) {
|
446
|
-
// // ignore void links
|
447
|
-
// if (window.location.href.includes('#void')||this.href.includes('#void')) {
|
448
|
-
// return false;
|
449
|
-
// }
|
450
|
-
// // for external links, redirect to this page
|
451
|
-
// if (window.location.pathname !== this.pathname) {
|
452
|
-
// window.location.href = this.href;
|
453
|
-
// } else {
|
454
|
-
// // continue on in-page anchor
|
455
|
-
// var toccerScrollDuration = 300;
|
456
|
-
// var toccerScrollOffset = 10;
|
457
|
-
//
|
458
|
-
// // calculate offset value for correct (smooth) scroll position
|
459
|
-
// //
|
460
|
-
// var $pagehead = $('.attic');
|
461
|
-
// var $navbar = $('nav.navbar');
|
462
|
-
// var $adblock = $('#adblock');
|
463
|
-
// var navbarType = $navbar.hasClass('navbar-fixed') ? 'fixed' : 'scrolled';
|
464
|
-
// var fontSize = $('body').css('font-size').replace('px','');
|
465
|
-
// var start = window.pageYOffset;
|
466
|
-
// var l = parseInt(fontSize);
|
467
|
-
// var h = $pagehead.length ? $pagehead.height() : 0;
|
468
|
-
// var n = $navbar.length ? $navbar.height() : 0;
|
469
|
-
// var a = $adblock.length ? $adblock.height() : 0;
|
470
|
-
// var scrollOffset = navbarType == 'fixed' ? -1*(n + a + l) : -1*(h + n + a + l);
|
471
|
-
//
|
472
|
-
// // TODO: to be checked why this static offset (toccerScrollOffset)
|
473
|
-
// // is needed
|
474
|
-
// scrollOffset = scrollOffset + toccerScrollOffset;
|
475
|
-
//
|
476
|
-
// logger.debug('\n' + 'scroll to anchor: ' + this.hash);
|
477
|
-
// $("html, body").animate({
|
478
|
-
// scrollTop: $($(this).attr("href")).offset().top + scrollOffset + "px"
|
479
|
-
// }, {
|
480
|
-
// duration: toccerScrollDuration,
|
481
|
-
// easing: "swing"
|
482
|
-
// });
|
483
|
-
// // disable bubble up the event
|
484
|
-
// return false;
|
485
|
-
// } // End in-page link
|
486
|
-
// }); // END click event on anchors
|
487
|
-
|
488
367
|
// initialize event handler for window/history/back on <ESC>
|
489
368
|
// -----------------------------------------------------------------------
|
490
369
|
window.onkeyup = function (event) {
|
@@ -523,10 +402,6 @@ var j1 = (function () {
|
|
523
402
|
expires: 0
|
524
403
|
});
|
525
404
|
|
526
|
-
if (!cookie_written) {
|
527
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
|
528
|
-
}
|
529
|
-
|
530
405
|
j1.setState(curr_state);
|
531
406
|
logger.info('\n' + 'state: ' + j1.getState());
|
532
407
|
|
@@ -570,9 +445,6 @@ var j1 = (function () {
|
|
570
445
|
secure: secure,
|
571
446
|
expires: 0
|
572
447
|
});
|
573
|
-
if (!cookie_written) {
|
574
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
|
575
|
-
}
|
576
448
|
|
577
449
|
j1.setState(curr_state);
|
578
450
|
logger.info('\n' + 'state: ' + j1.getState());
|
@@ -601,7 +473,8 @@ var j1 = (function () {
|
|
601
473
|
themeName = user_session.theme_name;
|
602
474
|
themeCss = user_session.theme_css;
|
603
475
|
|
604
|
-
//
|
476
|
+
// -----------------------------------------------------------------------
|
477
|
+
// Save last page access
|
605
478
|
// see: https://stackoverflow.com/questions/3528324/how-to-get-the-previous-url-in-javascript
|
606
479
|
// see: https://developer.mozilla.org/de/docs/Web/API/Window/history
|
607
480
|
//
|
@@ -633,10 +506,6 @@ var j1 = (function () {
|
|
633
506
|
expires: 0
|
634
507
|
});
|
635
508
|
|
636
|
-
if (!cookie_written) {
|
637
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
|
638
|
-
}
|
639
|
-
|
640
509
|
// NOTE: asynchronous calls should be rewitten to xhrData
|
641
510
|
// initialize page resources for blocks
|
642
511
|
j1.initBanner(settings);
|
@@ -645,7 +514,6 @@ var j1 = (function () {
|
|
645
514
|
|
646
515
|
state = 'running';
|
647
516
|
logger.info('\n' + 'state: ' + state);
|
648
|
-
// logger.info(logText);
|
649
517
|
|
650
518
|
user_session.timestamp = timestamp_now;
|
651
519
|
logger.debug('\n' + 'write to cookie : ' + cookie_names.user_session);
|
@@ -655,9 +523,6 @@ var j1 = (function () {
|
|
655
523
|
secure: secure,
|
656
524
|
expires: 0
|
657
525
|
});
|
658
|
-
if (!cookie_written) {
|
659
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
|
660
|
-
}
|
661
526
|
|
662
527
|
// -----------------------------------------------------------------------
|
663
528
|
// additional BS helpers from j1.core
|
@@ -779,7 +644,6 @@ var j1 = (function () {
|
|
779
644
|
// initPanel()
|
780
645
|
// AJAX fetcher to load and place all panel used for a page
|
781
646
|
// -------------------------------------------------------------------------
|
782
|
-
// ToDo:
|
783
647
|
initPanel: function ( options ) {
|
784
648
|
var logger = log4javascript.getLogger('j1.initPanel');
|
785
649
|
var panel = [];
|
@@ -961,6 +825,7 @@ var j1 = (function () {
|
|
961
825
|
var categoryAllowed;
|
962
826
|
|
963
827
|
// provider APIs require user consent
|
828
|
+
// -----------------------------------------------------------------------
|
964
829
|
var meta_analytics = $('meta[name=analytics]').attr('content');
|
965
830
|
var analytics = (meta_analytics === 'true') ? true: false;
|
966
831
|
var meta_comments = $('meta[name=comments]').attr('content');
|
@@ -977,6 +842,7 @@ var j1 = (function () {
|
|
977
842
|
var personalization = (meta_personalization === 'true') ? true: false;
|
978
843
|
|
979
844
|
// if personalized content detected, page requires user consent
|
845
|
+
// -----------------------------------------------------------------------
|
980
846
|
if (personalization && !user_consent.personalization) {
|
981
847
|
// redirect to error page: blocked content
|
982
848
|
window.location.href = '/444.html';
|
@@ -986,7 +852,9 @@ var j1 = (function () {
|
|
986
852
|
logText= '\n' + 'loading page partials: started';
|
987
853
|
logger.info(logText);
|
988
854
|
|
989
|
-
if (j1.appDetected()) {
|
855
|
+
if (j1.appDetected()) {
|
856
|
+
// app mode
|
857
|
+
// ---------------------------------------------------------------------
|
990
858
|
logger.info('\n' + 'mode detected: app');
|
991
859
|
|
992
860
|
$.when ($.ajax(ep_status))
|
@@ -1003,16 +871,14 @@ var j1 = (function () {
|
|
1003
871
|
secure: secure,
|
1004
872
|
expires: 0
|
1005
873
|
});
|
1006
|
-
if (!cookie_written) {
|
1007
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
|
1008
|
-
}
|
1009
874
|
|
1010
875
|
providerPermissions = user_session.provider_permissions;
|
1011
876
|
categoryAllowed = providerPermissions.includes(user_session.page_permission);
|
1012
877
|
|
878
|
+
// -------------------------------------------------------------------
|
1013
879
|
// check protected pages (applies for APP only)
|
1014
880
|
// make sure that protected pages are ALWAYS checked for permissions
|
1015
|
-
//
|
881
|
+
//
|
1016
882
|
if (
|
1017
883
|
j1.authEnabled() &&
|
1018
884
|
user_session.page_permission !== 'public' &&
|
@@ -1031,78 +897,22 @@ var j1 = (function () {
|
|
1031
897
|
|
1032
898
|
// show the page delayed
|
1033
899
|
setTimeout (function() {
|
1034
|
-
// Manage providers for personalization OptIn/Out (Comments|Ads)
|
1035
|
-
if (!user_consent.personalization) {
|
1036
|
-
logger.debug('\n' + 'disable comment provider: ' + comment_provider);
|
1037
|
-
logger.debug('\n' + 'personalization not allowed, privacy settings for personalization: ' + user_consent.personalization);
|
1038
|
-
$('#leave-a-comment').remove();
|
1039
|
-
if (comment_provider === 'disqus') {
|
1040
|
-
$('#dsq-count-scr').remove();
|
1041
|
-
$('#disqus-thread').remove();
|
1042
|
-
}
|
1043
|
-
if (comment_provider === 'hyvor') {
|
1044
|
-
$('#hyvor-embed').remove();
|
1045
|
-
$('#hyvor-talk-view').remove();
|
1046
|
-
}
|
1047
|
-
} else {
|
1048
|
-
if (comments) {
|
1049
|
-
logger.info('\n' + 'enable comment provider: ' + comment_provider);
|
1050
|
-
$('#main-content').append('<h2 id="leave-a-comment" class="mt-4">{{comments_headline}}</h2>');
|
1051
|
-
if (comment_provider === 'disqus') {
|
1052
|
-
logger.info('\n' + 'load comment provider code: ' + comment_provider);
|
1053
|
-
$('#main-content').append('<div id="disqus_thread"></div>');
|
1054
|
-
$('body').append('<script async id="dsq-count-scr" src="//' + site_id + '.disqus.com/count.js"></script>');
|
1055
|
-
j1.loadJS({
|
1056
|
-
xhr_data_path: '/assets/data/' + comment_provider + '.js',
|
1057
|
-
xhr_data_element: comment_provider
|
1058
|
-
});
|
1059
|
-
}
|
1060
|
-
if (comment_provider === 'hyvor') {
|
1061
|
-
$('body').append('<script> var HYVOR_TALK_WEBSITE = ' + site_id + '; var HYVOR_TALK_CONFIG = { url: false, id: false };');
|
1062
|
-
$('#main-content').append('<div id="hyvor-talk-view"></div>');
|
1063
|
-
$('body').append('<script async id="hyvor-embed" type="text/javascript" src="//talk.hyvor.com/web-api/embed.js"></script>');
|
1064
|
-
}
|
1065
|
-
}
|
1066
|
-
}
|
1067
|
-
|
1068
900
|
// display page
|
1069
|
-
|
901
|
+
$('#no_flicker').css('display', 'block');
|
1070
902
|
|
1071
|
-
|
1072
|
-
|
903
|
+
// manage Dropcaps if translation is enabled|disabled
|
904
|
+
// -----------------------------------------------------------------
|
905
|
+
if (user_translate.translationEnabled) {
|
1073
906
|
logger.info('\n' + 'translation enabled: ' + user_translate.translationEnabled);
|
1074
907
|
logger.debug('\n' + 'skipped processing of dropcaps');
|
1075
|
-
|
908
|
+
} else {
|
1076
909
|
// initialize dropcaps
|
1077
910
|
logger.info('\n' + 'post processing: createDropCap');
|
1078
911
|
j1.core.createDropCap();
|
1079
|
-
}
|
1080
|
-
|
1081
|
-
// add recommended title to hyvor iframe for SEO optimization (if loadad)
|
1082
|
-
if (comment_provider === 'hyvor') {
|
1083
|
-
var dependencies_met_load_finished = setInterval (function () {
|
1084
|
-
if ($('#hyvor-talk-view').children().length) {
|
1085
|
-
$('#hyvor-talk-iframe').prop('title', 'Hyvor talk iframe');
|
1086
|
-
clearInterval(dependencies_met_load_finished);
|
1087
|
-
}
|
1088
|
-
}, 25);
|
1089
|
-
}
|
1090
|
-
// NOTE: Placed tracking warning/info here because page may reloaded
|
1091
|
-
// after cookie consent selection
|
1092
|
-
if (user_consent.analysis) {
|
1093
|
-
logger.info('\n' + 'tracking allowed, privacy settings for analysis: ' + user_consent.analysis);
|
1094
|
-
if (tracking_enabled && !tracking_id_valid) {
|
1095
|
-
logger.error('\n' + 'tracking enabled, but invalid tracking id found: ' + tracking_id);
|
1096
|
-
} else if (tracking_enabled && tracking_id_valid) {
|
1097
|
-
logger.info('\n' + 'tracking enabled, tracking id found: ' + tracking_id);
|
1098
|
-
} else {
|
1099
|
-
logger.info('\n' + 'tracking disabled, tracking id found: ' + tracking_id);
|
1100
|
-
}
|
1101
|
-
} else {
|
1102
|
-
logger.debug('\n' + 'tracking not allowed, privacy settings for analysis: ' + user_consent.analysis);
|
1103
912
|
}
|
1104
913
|
|
1105
|
-
//
|
914
|
+
// TODO: should MOVED to Cookiebar ???
|
915
|
+
// show|hide cookie icon
|
1106
916
|
if (j1.existsCookie(cookie_names.user_consent)) {
|
1107
917
|
// Display cookie icon
|
1108
918
|
logText = '\n' + 'show cookie icon';
|
@@ -1115,13 +925,8 @@ var j1 = (function () {
|
|
1115
925
|
$('#quickLinksCookieButton').css('display', 'none');
|
1116
926
|
}
|
1117
927
|
|
1118
|
-
//
|
1119
|
-
//
|
1120
|
-
// logger.info('\n' + 'translator detected: google');
|
1121
|
-
// logger.info('\n' + 'initialize language selector');
|
1122
|
-
// $('.goog-te-combo').addClass('form-control');
|
1123
|
-
// }
|
1124
|
-
|
928
|
+
// TODO: should MOVED to ControlCenter Adapter ???
|
929
|
+
// -----------------------------------------------------------------
|
1125
930
|
// show cc icon (currently NOT supported)
|
1126
931
|
// $('#quickLinksControlCenterButton').css('display', 'block');
|
1127
932
|
|
@@ -1141,6 +946,7 @@ var j1 = (function () {
|
|
1141
946
|
$('#quickLinksSignInOutButton').css('display', 'block');
|
1142
947
|
}
|
1143
948
|
|
949
|
+
// TODO: should MOVED to Themer ???
|
1144
950
|
// jadams, 2021-07-25: hide|show themes menu on cookie consent
|
1145
951
|
// (analysis|personalization) settings. BootSwatch is a 3rd party
|
1146
952
|
// is using e.g GA. Because NO control is possible on 3rd parties,
|
@@ -1154,10 +960,7 @@ var j1 = (function () {
|
|
1154
960
|
$("#themes_menu").show();
|
1155
961
|
}
|
1156
962
|
|
1157
|
-
// if
|
1158
|
-
// do a smooth scroll to
|
1159
|
-
j1.scrollTo();
|
1160
|
-
|
963
|
+
// detect if a loaded page has been chenged
|
1161
964
|
if (user_session.previous_page !== user_session.current_page) {
|
1162
965
|
logText = '\n' + 'page change detected';
|
1163
966
|
logger.info(logText);
|
@@ -1173,56 +976,34 @@ var j1 = (function () {
|
|
1173
976
|
current_user_data = j1.mergeData(user_session, user_state);
|
1174
977
|
j1.core.navigator.updateSidebar(current_user_data);
|
1175
978
|
|
1176
|
-
//
|
979
|
+
// set|log status
|
1177
980
|
state = 'finished';
|
981
|
+
j1.setState(state);
|
1178
982
|
logText = '\n' + 'state: ' + state;
|
1179
983
|
logger.info(logText);
|
1180
984
|
logText = '\n' + 'page finalized successfully';
|
1181
985
|
logger.info(logText);
|
986
|
+
|
987
|
+
// do a (smooth) scroll if all nav elements ready
|
988
|
+
// -----------------------------------------------------------------
|
989
|
+
var dependencies_met_navigator_finished = setInterval(function() {
|
990
|
+
if (j1.adapter.navigator.getState() == 'finished') {
|
991
|
+
// if a page requested contains an anchor element, do a smooth scroll
|
992
|
+
j1.scrollTo();
|
993
|
+
clearInterval(dependencies_met_navigator_finished);
|
994
|
+
}
|
995
|
+
}, 25);
|
1182
996
|
}, flickerTimeout);
|
1183
997
|
});
|
1184
998
|
} else {
|
1185
999
|
// web mode
|
1000
|
+
// ---------------------------------------------------------------------
|
1186
1001
|
setTimeout (function() {
|
1187
|
-
j1.setState('finished');
|
1002
|
+
// j1.setState('finished');
|
1188
1003
|
logger.info('\n' + 'state: finished');
|
1189
1004
|
logger.info('\n' + 'page initialization: finished');
|
1190
1005
|
|
1191
|
-
//
|
1192
|
-
if (!user_consent.personalization) {
|
1193
|
-
logger.debug('\n' + 'disable comment provider: ' + comment_provider);
|
1194
|
-
logger.debug('\n' + 'personalization not allowed, privacy settings for personalization: ' + user_consent.personalization);
|
1195
|
-
$('#leave-a-comment').remove();
|
1196
|
-
if (comment_provider === 'disqus') {
|
1197
|
-
$('#dsq-count-scr').remove();
|
1198
|
-
$('#disqus-thread').remove();
|
1199
|
-
}
|
1200
|
-
if (comment_provider === 'hyvor') {
|
1201
|
-
$('#hyvor-embed').remove();
|
1202
|
-
$('#hyvor-talk-view').remove();
|
1203
|
-
}
|
1204
|
-
} else {
|
1205
|
-
if (comments) {
|
1206
|
-
logger.info('\n' + 'enable comment provider: ' + comment_provider);
|
1207
|
-
$('#main-content').append('<h2 id="leave-a-comment" class="mt-4">{{comments_headline}}</h2>');
|
1208
|
-
if (comment_provider === 'disqus') {
|
1209
|
-
logger.info('\n' + 'load comment provider code: ' + comment_provider);
|
1210
|
-
$('#main-content').append('<div id="disqus_thread"></div>');
|
1211
|
-
$('body').append('<script async id="dsq-count-scr" src="//' + site_id + '.disqus.com/count.js"></script>');
|
1212
|
-
j1.loadJS({
|
1213
|
-
xhr_data_path: '/assets/data/' + comment_provider + '.js',
|
1214
|
-
xhr_data_element: comment_provider
|
1215
|
-
});
|
1216
|
-
}
|
1217
|
-
if (comment_provider === 'hyvor') {
|
1218
|
-
$('body').append('<script> var HYVOR_TALK_WEBSITE = ' + site_id + '; var HYVOR_TALK_CONFIG = { url: false, id: false };');
|
1219
|
-
$('#main-content').append('<div id="hyvor-talk-view"></div>');
|
1220
|
-
$('body').append('<script async id="hyvor-embed" type="text/javascript" src="//talk.hyvor.com/web-api/embed.js"></script>');
|
1221
|
-
}
|
1222
|
-
}
|
1223
|
-
}
|
1224
|
-
|
1225
|
-
// display page
|
1006
|
+
// display the page loaded
|
1226
1007
|
$('#no_flicker').css('display', 'block');
|
1227
1008
|
|
1228
1009
|
// jadams, 2021-11-19: test code for 'tapTarget' of 'materializeCss'
|
@@ -1249,7 +1030,8 @@ var j1 = (function () {
|
|
1249
1030
|
$(this).parents(".card-header").toggleClass("highlight");
|
1250
1031
|
});
|
1251
1032
|
|
1252
|
-
//
|
1033
|
+
// manage Dropcaps if translation is enabled|disabled
|
1034
|
+
// -------------------------------------------------------------------
|
1253
1035
|
if (user_translate.translationEnabled) {
|
1254
1036
|
logger.info('\n' + 'translation enabled: ' + user_translate.translationEnabled);
|
1255
1037
|
logger.debug('\n' + 'skipped processing of dropcaps');
|
@@ -1259,31 +1041,6 @@ var j1 = (function () {
|
|
1259
1041
|
j1.core.createDropCap();
|
1260
1042
|
}
|
1261
1043
|
|
1262
|
-
// add recommended title to hyvor iframe for SEO optimization (if loadad)
|
1263
|
-
if (comment_provider === 'hyvor') {
|
1264
|
-
var dependencies_met_load_finished = setInterval (function () {
|
1265
|
-
if ($('#hyvor-talk-view').children().length) {
|
1266
|
-
$('#hyvor-talk-iframe').prop('title', 'Hyvor talk iframe');
|
1267
|
-
clearInterval(dependencies_met_load_finished);
|
1268
|
-
}
|
1269
|
-
}, 25);
|
1270
|
-
}
|
1271
|
-
|
1272
|
-
// NOTE: Placed tracking warning/info here because page may reloaded
|
1273
|
-
// after cookie consent selection
|
1274
|
-
if (user_consent.analysis) {
|
1275
|
-
logger.info('\n' + 'tracking allowed, privacy settings for analysis: ' + user_consent.analysis);
|
1276
|
-
if (tracking_enabled && !tracking_id_valid) {
|
1277
|
-
logger.error('\n' + 'tracking enabled, but invalid tracking id found: ' + tracking_id);
|
1278
|
-
} else if (tracking_enabled && tracking_id_valid) {
|
1279
|
-
logger.info('\n' + 'tracking enabled, tracking id found: ' + tracking_id);
|
1280
|
-
} else {
|
1281
|
-
logger.info('\n' + 'tracking disabled, tracking id found: ' + tracking_id);
|
1282
|
-
}
|
1283
|
-
} else {
|
1284
|
-
logger.debug('\n' + 'tracking not allowed, privacy settings for analysis: ' + user_consent.analysis);
|
1285
|
-
}
|
1286
|
-
|
1287
1044
|
logger.info('\n' + 'mode detected: web');
|
1288
1045
|
logger.info('\n' + 'hide signin icon');
|
1289
1046
|
$('#quickLinksSignInOutButton').css('display', 'none');
|
@@ -1296,20 +1053,13 @@ var j1 = (function () {
|
|
1296
1053
|
secure: secure,
|
1297
1054
|
expires: 0
|
1298
1055
|
});
|
1299
|
-
if (!cookie_written) {
|
1300
|
-
logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
|
1301
|
-
}
|
1302
|
-
|
1303
|
-
// show|hide translator icon (currently NOT supported)
|
1304
|
-
// if (translation_enabled) {
|
1305
|
-
// logger.info('\n' + 'translator detected: google');
|
1306
|
-
// logger.info('\n' + 'initialize language selector');
|
1307
|
-
// $('.goog-te-combo').addClass('form-control');
|
1308
|
-
// }
|
1309
1056
|
|
1057
|
+
// TODO: should MOVED to ControlCenter Adapter ???
|
1058
|
+
// -----------------------------------------------------------------
|
1310
1059
|
// show cc icon (currently NOT supported)
|
1311
1060
|
// $('#quickLinksControlCenterButton').css('display', 'block');
|
1312
1061
|
|
1062
|
+
// TODO: should MOVED to Cookiebar ???
|
1313
1063
|
// show|hide cookie icon
|
1314
1064
|
if (j1.existsCookie(cookie_names.user_consent)) {
|
1315
1065
|
// Display cookie icon
|
@@ -1323,6 +1073,7 @@ var j1 = (function () {
|
|
1323
1073
|
$('#quickLinksCookieButton').css('display', 'none');
|
1324
1074
|
}
|
1325
1075
|
|
1076
|
+
// TODO: should MOVED to Themer ???
|
1326
1077
|
// jadams, 2021-07-25: hide|show themes menu on cookie consent
|
1327
1078
|
// (analysis|personalization) settings. BootSwatch is a 3rd party
|
1328
1079
|
// is using e.g GA. Because NO control is possible on 3rd parties,
|
@@ -1336,10 +1087,7 @@ var j1 = (function () {
|
|
1336
1087
|
$("#themes_menu").show();
|
1337
1088
|
}
|
1338
1089
|
|
1339
|
-
//
|
1340
|
-
// do a smooth scroll
|
1341
|
-
j1.scrollTo();
|
1342
|
-
|
1090
|
+
// detect if a loaded page has been chenged
|
1343
1091
|
if (user_session.previous_page !== user_session.current_page) {
|
1344
1092
|
logText = '\n' + 'page change detected';
|
1345
1093
|
logger.info(logText);
|
@@ -1357,10 +1105,21 @@ var j1 = (function () {
|
|
1357
1105
|
|
1358
1106
|
// set|log status
|
1359
1107
|
state = 'finished';
|
1108
|
+
j1.setState(state);
|
1360
1109
|
logText = '\n' + 'state: ' + state;
|
1361
1110
|
logger.info(logText);
|
1362
1111
|
logText = '\n' + 'page finalized successfully';
|
1363
1112
|
logger.info(logText);
|
1113
|
+
|
1114
|
+
// do a (smooth) scroll if all nav elements ready
|
1115
|
+
// -------------------------------------------------------------------
|
1116
|
+
var dependencies_met_navigator_finished = setInterval(function() {
|
1117
|
+
if (j1.adapter.navigator.getState() == 'finished') {
|
1118
|
+
// if a page requested contains an anchor element, do a smooth scroll
|
1119
|
+
j1.scrollTo();
|
1120
|
+
clearInterval(dependencies_met_navigator_finished);
|
1121
|
+
}
|
1122
|
+
}, 25);
|
1364
1123
|
}, flickerTimeout);
|
1365
1124
|
}
|
1366
1125
|
},
|
@@ -1441,6 +1200,7 @@ var j1 = (function () {
|
|
1441
1200
|
|
1442
1201
|
return scrollOffset;
|
1443
1202
|
},
|
1203
|
+
|
1444
1204
|
// -------------------------------------------------------------------------
|
1445
1205
|
// scrollTo()
|
1446
1206
|
// Scrolls smooth to any anchor referenced by an page URL on
|
@@ -1452,9 +1212,9 @@ var j1 = (function () {
|
|
1452
1212
|
var anchor = window.location.href.split('#')[1];
|
1453
1213
|
var anchor_id = typeof anchor !== 'undefined' ? '#' + anchor : false;
|
1454
1214
|
var scrollDuration = {{toccer_options.scrollSmoothDuration}};
|
1215
|
+
var scrollOffset = j1.getScrollOffset();
|
1455
1216
|
var isSlider = false;
|
1456
1217
|
var selector;
|
1457
|
-
var scrollOffset;
|
1458
1218
|
|
1459
1219
|
if (typeof anchor === 'undefined') {
|
1460
1220
|
return false;
|
@@ -1462,15 +1222,13 @@ var j1 = (function () {
|
|
1462
1222
|
return false;
|
1463
1223
|
}
|
1464
1224
|
|
1465
|
-
scrollOffset = j1.getScrollOffset();
|
1466
|
-
|
1467
1225
|
// Check if the anchor is an slider/gallery element
|
1468
1226
|
if (typeof anchor !== 'undefined') {
|
1469
|
-
isSlider
|
1227
|
+
isSlider = anchor.includes('slide');
|
1470
1228
|
}
|
1471
1229
|
|
1472
1230
|
if (anchor_id && anchor_id !== '#' && !isSlider) {
|
1473
|
-
// scroll only, if an anchor is given with URL
|
1231
|
+
// scroll only, if an anchor is given with an URL
|
1474
1232
|
selector = $(anchor_id);
|
1475
1233
|
if (selector.length) {
|
1476
1234
|
j1.core.scrollSmooth.scroll(anchor_id, {
|
@@ -1745,13 +1503,18 @@ var j1 = (function () {
|
|
1745
1503
|
// context/HTTPS).
|
1746
1504
|
// -------------------------------------------------------------------------
|
1747
1505
|
writeCookie: function (options /*name, data, [path, expires, domain, samesite, http_only, secure]*/) {
|
1748
|
-
var date
|
1749
|
-
var timestamp_now
|
1750
|
-
var
|
1506
|
+
var date = new Date();
|
1507
|
+
var timestamp_now = date.toISOString()
|
1508
|
+
var url = new liteURL(window.location.href);
|
1509
|
+
var baseUrl = url.origin;;
|
1510
|
+
var hostname = url.hostname;
|
1511
|
+
var domain = hostname.substring(hostname.lastIndexOf('.', hostname.lastIndexOf('.') - 1) + 1);
|
1512
|
+
var stringifiedAttributes = '';
|
1513
|
+
var cookie_data = {};
|
1751
1514
|
var data_json;
|
1752
1515
|
var data_encoded;
|
1753
1516
|
var expires;
|
1754
|
-
var
|
1517
|
+
var domainAttribute;
|
1755
1518
|
|
1756
1519
|
var defaults = {
|
1757
1520
|
data: {},
|
@@ -1763,7 +1526,6 @@ var j1 = (function () {
|
|
1763
1526
|
http_only: '{{cookie_options.http_only}}',
|
1764
1527
|
secure: '{{cookie_options.secure}}'
|
1765
1528
|
};
|
1766
|
-
|
1767
1529
|
var settings = $.extend(defaults, options);
|
1768
1530
|
|
1769
1531
|
cookie_data.timestamp = timestamp_now;
|
@@ -1779,17 +1541,26 @@ var j1 = (function () {
|
|
1779
1541
|
data_encoded = window.btoa(data_json);
|
1780
1542
|
}
|
1781
1543
|
|
1782
|
-
stringifiedAttributes += '; ' + '
|
1544
|
+
stringifiedAttributes += '; ' + 'Path=' + settings.path;
|
1783
1545
|
|
1784
1546
|
if (settings.expires > 0) {
|
1785
1547
|
date.setTime(date.getTime() + (settings.expires * 24 * 60 * 60 * 1000));
|
1786
|
-
stringifiedAttributes += '; ' + '
|
1548
|
+
stringifiedAttributes += '; ' + 'Expires=' + date.toUTCString();
|
1787
1549
|
}
|
1788
1550
|
|
1789
1551
|
stringifiedAttributes += '; ' + 'SameSite=' + settings.samesite;
|
1790
1552
|
|
1791
|
-
|
1792
|
-
|
1553
|
+
// set domain used by cookies
|
1554
|
+
if (settings.domain == 'auto') {
|
1555
|
+
domainAttribute = domain;
|
1556
|
+
stringifiedAttributes += '; ' + 'Domain=' + domainAttribute;
|
1557
|
+
} else {
|
1558
|
+
domainAttribute = 'localhost';
|
1559
|
+
stringifiedAttributes += '; ' + 'Domain=' + domainAttribute;
|
1560
|
+
}
|
1561
|
+
|
1562
|
+
if (settings.secure == true) {
|
1563
|
+
stringifiedAttributes += '; ' + 'Secure=' + settings.secure;
|
1793
1564
|
}
|
1794
1565
|
|
1795
1566
|
// write the cookie
|
@@ -1824,16 +1595,31 @@ var j1 = (function () {
|
|
1824
1595
|
// removeCookie (Vanilla JS)
|
1825
1596
|
// -------------------------------------------------------------------------
|
1826
1597
|
removeCookie: function (options /*name, [path, domain]*/) {
|
1827
|
-
var
|
1598
|
+
var domainAttribute;
|
1599
|
+
|
1828
1600
|
var defaults = {
|
1829
|
-
|
1830
|
-
|
1601
|
+
path: '{{cookie_options.path}}',
|
1602
|
+
expires: '{{cookie_options.expires}}',
|
1603
|
+
domain: '{{cookie_options.domain}}',
|
1604
|
+
samesite: '{{cookie_options.same_site}}',
|
1605
|
+
http_only: '{{cookie_options.http_only}}',
|
1606
|
+
secure: '{{cookie_options.secure}}'
|
1831
1607
|
};
|
1608
|
+
var cookieExists;
|
1609
|
+
|
1832
1610
|
var settings = $.extend(defaults, options);
|
1833
1611
|
|
1612
|
+
// set domain used by cookies
|
1613
|
+
if (settings.domain == 'auto') {
|
1614
|
+
domainAttribute = domain ;
|
1615
|
+
} else {
|
1616
|
+
// domainAttribute = hostname;
|
1617
|
+
domainAttribute = '';
|
1618
|
+
}
|
1619
|
+
|
1834
1620
|
if (j1.findCookie(settings.name)) {
|
1835
1621
|
// clear cookie CONTENT and set expiry date in the PAST
|
1836
|
-
document.cookie = settings.name + '=;
|
1622
|
+
document.cookie = settings.name + '=; Domain=' + domainAttribute + '; Expires=Thu, 01 Jan 1970 00:00:00 UTC; Path=/;';
|
1837
1623
|
return true;
|
1838
1624
|
} else {
|
1839
1625
|
return false;
|
@@ -1859,13 +1645,30 @@ var j1 = (function () {
|
|
1859
1645
|
// to JavaScript. For that reason, attributes needs to be set explicitly.
|
1860
1646
|
// -------------------------------------------------------------------------
|
1861
1647
|
expireCookie: function (options /*name [,path, samesite, secure]*/) {
|
1648
|
+
var url = new liteURL(window.location.href);
|
1649
|
+
var baseUrl = url.origin;;
|
1650
|
+
var hostname = url.hostname;
|
1651
|
+
var domain = hostname.substring(hostname.lastIndexOf('.', hostname.lastIndexOf('.') - 1) + 1);
|
1652
|
+
var domainAttribute;
|
1653
|
+
|
1862
1654
|
var defaults = {
|
1863
|
-
|
1864
|
-
|
1865
|
-
|
1655
|
+
path: '{{cookie_options.path}}',
|
1656
|
+
expires: '{{cookie_options.expires}}',
|
1657
|
+
domain: '{{cookie_options.domain}}',
|
1658
|
+
samesite: '{{cookie_options.same_site}}',
|
1659
|
+
http_only: '{{cookie_options.http_only}}',
|
1660
|
+
secure: '{{cookie_options.secure}}'
|
1866
1661
|
};
|
1867
1662
|
var settings = $.extend(defaults, options);
|
1868
1663
|
|
1664
|
+
// set domain used by cookies
|
1665
|
+
if (settings.domain == 'auto') {
|
1666
|
+
domainAttribute = domain ;
|
1667
|
+
} else {
|
1668
|
+
// domainAttribute = hostname;
|
1669
|
+
domainAttribute = '';
|
1670
|
+
}
|
1671
|
+
|
1869
1672
|
var dc = document.cookie; // all cookies in page
|
1870
1673
|
var end = dc.length; // default to end of the string
|
1871
1674
|
var prefix = settings.name + '='; // search string for the cookie name given
|
@@ -1893,10 +1696,10 @@ var j1 = (function () {
|
|
1893
1696
|
|
1894
1697
|
// expire cookie to session
|
1895
1698
|
content = decodeURI(dc.substring(begin + prefix.length, end) ).replace(/"/g, '');
|
1896
|
-
if (settings.secure) {
|
1897
|
-
document.cookie = settings.name + '=' + content +';
|
1699
|
+
if (settings.secure == 'true') {
|
1700
|
+
document.cookie = settings.name + '=' + content +'; Path=' + settings.path + '; ' + 'SameSite=' + settings.samesite + '; ' + 'Domain=' + domainAttribute + '; Secure' + '; ';
|
1898
1701
|
} else {
|
1899
|
-
document.cookie = settings.name + '=' + content +';
|
1702
|
+
document.cookie = settings.name + '=' + content +'; Path=' + settings.path + '; ' + 'SameSite=' + settings.samesite + '; ' + 'Domain=' + domainAttribute + '; ';
|
1900
1703
|
}
|
1901
1704
|
|
1902
1705
|
return true;
|