j1-template 2022.0.4 → 2022.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/_layouts/default.html +34 -75
  3. data/assets/error_pages/HTTP444.html +4 -4
  4. data/assets/error_pages/HTTP445.html +3 -3
  5. data/assets/error_pages/HTTP446.html +110 -0
  6. data/assets/themes/j1/adapter/js/cookieConsent.js +53 -25
  7. data/assets/themes/j1/adapter/js/j1.js +81 -196
  8. data/assets/themes/j1/adapter/js/themer.js +0 -1
  9. data/assets/themes/j1/adapter/js/translator.js +107 -56
  10. data/assets/themes/j1/core/css/themes/unodark/bootstrap.css +6 -0
  11. data/assets/themes/j1/core/css/themes/unodark/bootstrap.min.css +1 -1
  12. data/assets/themes/j1/core/js/template.js +5 -6
  13. data/assets/themes/j1/core/js/template.min.js +1 -1
  14. data/assets/themes/j1/core/js/template.min.js.map +1 -1
  15. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.js +29 -13
  16. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.min.js +1 -1
  17. data/assets/themes/j1/modules/themeSwitcher/js/switcher.js +0 -1
  18. data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +1 -1
  19. data/assets/themes/j1/modules/translator/js/translator.js +98 -63
  20. data/assets/themes/j1/modules/translator/js/translator.min.js +1 -1
  21. data/lib/j1/version.rb +1 -1
  22. data/lib/starter_web/Gemfile +1 -1
  23. data/lib/starter_web/_config.yml +2 -3
  24. data/lib/starter_web/_data/modules/cookies.yml +30 -0
  25. data/lib/starter_web/_data/modules/defaults/cookieconsent.yml +3 -3
  26. data/lib/starter_web/_data/modules/defaults/cookies.yml +103 -0
  27. data/lib/starter_web/_data/modules/navigator_menu.yml +10 -1
  28. data/lib/starter_web/_includes/attributes.asciidoc +6 -1
  29. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  30. data/lib/starter_web/package.json +1 -1
  31. data/lib/starter_web/pages/_test_pages/google-translate-tester.1.adoc +0 -2
  32. data/lib/starter_web/pages/_test_pages/google-translate-tester.4.adoc +0 -2
  33. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/100_converter.adoc +1 -1
  34. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/200_themes.adoc +1 -1
  35. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +1 -1
  36. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +1 -1
  37. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +1 -1
  38. data/lib/starter_web/pages/public/blog/navigator/archive.html +1 -1
  39. data/lib/starter_web/pages/public/blog/navigator/index.html +1 -1
  40. data/lib/starter_web/pages/public/learn/quickstart.adoc +1 -1
  41. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +1 -1
  42. data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +2 -2
  43. data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +1 -1
  44. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +1 -1
  45. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +1 -1
  46. data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +1 -1
  47. data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +1 -1
  48. data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +1 -1
  49. data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +1 -1
  50. data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +2 -12
  51. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +2 -12
  52. data/lib/starter_web/pages/public/manuals/dropdown-help.adoc +1 -1
  53. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +1 -1
  54. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +1 -1
  55. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  56. data/lib/starter_web/utilsrv/package.json +1 -1
  57. metadata +5 -2
@@ -54,6 +54,9 @@ regenerate: true
54
54
  {% assign footer_config_defaults = blocks.defaults.footer.defaults %}
55
55
  {% assign toccer_defaults = modules.defaults.toccer.defaults %}
56
56
 
57
+ {% assign cookie_defaults = modules.defaults.cookies.defaults %}
58
+ {% assign cookie_settings = modules.cookies.settings %}
59
+
57
60
  {% assign themer_defaults = modules.defaults.themer.defaults %}
58
61
  {% assign themer_settings = modules.themer.settings %}
59
62
 
@@ -67,6 +70,7 @@ regenerate: true
67
70
  -------------------------------------------------------------------------------- {% endcomment %}
68
71
  {% assign toccer_options = toccer_defaults | merge: toccer_settings %}
69
72
  {% assign themer_options = themer_defaults| merge: themer_settings %}
73
+ {% assign cookie_options = cookie_defaults | merge: cookie_settings %}
70
74
 
71
75
  {% assign authentication_options = authentication_defaults | merge: authentication_settings %}
72
76
 
@@ -171,9 +175,6 @@ var j1 = (function () {
171
175
  var comment_provider = '{{comment_provider}}';
172
176
  var site_id = '{{site_id}}';
173
177
 
174
- // Default translator settings (currently NOT supported)
175
- // var translation_enabled = {{template_config.translation.enabled}};
176
-
177
178
  var current_user_data;
178
179
  var current_page;
179
180
  var previous_page;
@@ -305,7 +306,7 @@ var j1 = (function () {
305
306
  j1['xhrDOMState'] = {};
306
307
 
307
308
  // -----------------------------------------------------------------------
308
- // update cookies if browser window get closed
309
+ // final updates before browser page|tab
309
310
  // see: https://stackoverflow.com/questions/3888902/detect-browser-or-tab-closing
310
311
  // -----------------------------------------------------------------------
311
312
  window.addEventListener('beforeunload', function (event) {
@@ -318,52 +319,27 @@ var j1 = (function () {
318
319
  var url;
319
320
  var baseUrl;
320
321
 
321
- // final update of the user state cookie before browser page|tab
322
- // get closed
323
- if (user_state) {
324
- user_state.session_active = false;
325
- user_state.last_session_ts = timestamp_now;
322
+ // final update of the user state cookie
323
+ user_state.session_active = false;
324
+ user_state.last_session_ts = timestamp_now;
326
325
 
327
- if (!user_consent.analysis || !user_consent.personalization) {
328
- // rewrite consent|state cookies to session
329
- logger.debug('\n' + 'write to cookie : ' + cookie_names.user_consent);
330
- cookie_written = j1.writeCookie({
331
- name: cookie_names.user_consent,
332
- data: user_consent,
333
- samesite: 'Strict',
334
- secure: secure,
335
- expires: 0
336
- });
337
- if (!cookie_written) {
338
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_consent);
339
- }
340
- logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
341
- cookie_written = j1.writeCookie({
342
- name: cookie_names.user_state,
343
- data: user_state,
344
- samesite: 'Strict',
345
- secure: secure,
346
- expires: 0
347
- });
348
- if (!cookie_written) {
349
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_consent);
350
- }
351
- } else {
352
- logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
353
- cookie_written = j1.writeCookie({
354
- name: cookie_names.user_state,
355
- data: user_state,
356
- samesite: 'Strict',
357
- secure: secure,
358
- expires: 365
359
- });
360
- if (!cookie_written) {
361
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_state);
362
- }
363
- }
326
+ if (!user_consent.analysis || !user_consent.personalization) {
327
+ logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
328
+
329
+ cookie_written = j1.writeCookie({
330
+ name: cookie_names.user_state,
331
+ data: user_state,
332
+ secure: secure,
333
+ expires: 0
334
+ });
364
335
  } else {
365
- // jadams, 2021-07-11: on beforeunload, a user state cookie is expected
366
- logger.error('\n' + 'missing cookie detected: ' + cookie_names.user_state);
336
+ logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
337
+ cookie_written = j1.writeCookie({
338
+ name: cookie_names.user_state,
339
+ data: user_state,
340
+ secure: secure,
341
+ expires: 365
342
+ });
367
343
  }
368
344
  }); // END beforeunload
369
345
 
@@ -379,115 +355,35 @@ var j1 = (function () {
379
355
  : cookie_written = j1.writeCookie({
380
356
  name: cookie_names.user_session,
381
357
  data: user_session,
382
- samesite: 'Strict',
383
358
  secure: secure,
384
359
  expires: 0
385
360
  });
386
- if (!cookie_written) {
387
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
388
- }
389
361
 
390
362
  user_state = j1.existsCookie(cookie_names.user_state)
391
363
  ? j1.readCookie(cookie_names.user_state)
392
364
  : cookie_written = j1.writeCookie({
393
365
  name: cookie_names.user_state,
394
366
  data: user_state,
395
- samesite: 'Strict',
396
367
  secure: secure,
397
368
  expires: 365
398
369
  });
399
- if (!cookie_written) {
400
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_state);
401
- }
402
370
 
403
- // jadams, 2021-07-11: Found situation that user_state NOT initialized
404
- // correctly (user_state == false).
405
- // TODO: Check if/why user state (cookie NOT created?) NOT initialized
406
- // for what reason.
371
+ // jadams, 2021-12-06: Access to cookies for this site failed.
372
+ // Possibly, a third-party domain or an attacker tries to access it.
407
373
  if (!user_state) {
408
- logger.error('\n' + 'cookie not found: ' + cookie_names.user_state);
374
+ logger.error('\n' + 'Access to cookie failed or cookie not found: ' + cookie_names.user_state);
409
375
  logger.debug('\n' + 'j1 cookies found:' + j1Cookies.length);
410
- j1Cookies.forEach(item => console.log('j1.core.switcher: ' + item));
411
- logger.debug('\n' + 'ga cookies found:' + gaCookies.length);
412
- gaCookies.forEach(item => console.log('j1.core.switcher: ' + item));
413
- user_state = j1.readCookie(cookie_names.user_state);
414
- user_state.session_active = true;
376
+ // redirect to error page: blocked content
377
+ window.location.href = '/446.html';
415
378
  }
416
379
 
417
380
  if (!user_consent.analysis || !user_consent.personalization) {
418
- // rewrite consent|state cookies to session
419
- logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
420
- cookie_written = j1.writeCookie({
421
- name: cookie_names.user_state,
422
- data: user_state,
423
- samesite: 'Strict',
424
- secure: secure,
425
- expires: 0
426
- });
427
- if (!cookie_written) {
428
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_state);
429
- }
430
- } else {
431
- logger.debug('\n' + 'write to cookie : ' + cookie_names.user_state);
432
- cookie_written = j1.writeCookie({
433
- name: cookie_names.user_state,
434
- data: user_state,
435
- samesite: 'Strict',
436
- secure: secure,
437
- expires: 365
438
- });
439
- if (!cookie_written) {
440
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_state);
441
- }
381
+ // expire permanent cookies to session
382
+ j1.expireCookie({ name: cookie_names.user_state });
383
+ j1.expireCookie({ name: cookie_names.user_consent });
384
+ j1.expireCookie({ name: cookie_names.user_translate });
442
385
  }
443
386
 
444
- // jadams, 2021-11-10: anchor links of type #void are used/managed
445
- // by the FAB module. No geneneraL use for NOW.
446
- // -----------------------------------------------------------------------
447
- // initialize event handler for smooth scroll on in-page anchors
448
- // $('a[href*=\\#]').on('click', function (event) {
449
- // // ignore void links
450
- // if (window.location.href.includes('#void')||this.href.includes('#void')) {
451
- // return false;
452
- // }
453
- // // for external links, redirect to this page
454
- // if (window.location.pathname !== this.pathname) {
455
- // window.location.href = this.href;
456
- // } else {
457
- // // continue on in-page anchor
458
- // var toccerScrollDuration = 300;
459
- // var toccerScrollOffset = 10;
460
- //
461
- // // calculate offset value for correct (smooth) scroll position
462
- // //
463
- // var $pagehead = $('.attic');
464
- // var $navbar = $('nav.navbar');
465
- // var $adblock = $('#adblock');
466
- // var navbarType = $navbar.hasClass('navbar-fixed') ? 'fixed' : 'scrolled';
467
- // var fontSize = $('body').css('font-size').replace('px','');
468
- // var start = window.pageYOffset;
469
- // var l = parseInt(fontSize);
470
- // var h = $pagehead.length ? $pagehead.height() : 0;
471
- // var n = $navbar.length ? $navbar.height() : 0;
472
- // var a = $adblock.length ? $adblock.height() : 0;
473
- // var scrollOffset = navbarType == 'fixed' ? -1*(n + a + l) : -1*(h + n + a + l);
474
- //
475
- // // TODO: to be checked why this static offset (toccerScrollOffset)
476
- // // is needed
477
- // scrollOffset = scrollOffset + toccerScrollOffset;
478
- //
479
- // logger.debug('\n' + 'scroll to anchor: ' + this.hash);
480
- // $("html, body").animate({
481
- // scrollTop: $($(this).attr("href")).offset().top + scrollOffset + "px"
482
- // }, {
483
- // duration: toccerScrollDuration,
484
- // easing: "swing"
485
- // });
486
- // // disable bubble up the event
487
- // return false;
488
- // } // End in-page link
489
- // }); // END click event on anchors
490
-
491
387
  // initialize event handler for window/history/back on <ESC>
492
388
  // -----------------------------------------------------------------------
493
389
  window.onkeyup = function (event) {
@@ -522,15 +418,10 @@ var j1 = (function () {
522
418
  cookie_written = j1.writeCookie({
523
419
  name: cookie_names.user_session,
524
420
  data: user_session,
525
- samesite: 'Strict',
526
421
  secure: secure,
527
422
  expires: 0
528
423
  });
529
424
 
530
- if (!cookie_written) {
531
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
532
- }
533
-
534
425
  j1.setState(curr_state);
535
426
  logger.info('\n' + 'state: ' + j1.getState());
536
427
 
@@ -571,13 +462,9 @@ var j1 = (function () {
571
462
  cookie_written = j1.writeCookie({
572
463
  name: cookie_names.user_session,
573
464
  data: user_session,
574
- samesite: 'Strict',
575
465
  secure: secure,
576
466
  expires: 0
577
467
  });
578
- if (!cookie_written) {
579
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
580
- }
581
468
 
582
469
  j1.setState(curr_state);
583
470
  logger.info('\n' + 'state: ' + j1.getState());
@@ -606,7 +493,8 @@ var j1 = (function () {
606
493
  themeName = user_session.theme_name;
607
494
  themeCss = user_session.theme_css;
608
495
 
609
- // save last page access
496
+ // -----------------------------------------------------------------------
497
+ // Save last page access
610
498
  // see: https://stackoverflow.com/questions/3528324/how-to-get-the-previous-url-in-javascript
611
499
  // see: https://developer.mozilla.org/de/docs/Web/API/Window/history
612
500
  //
@@ -634,15 +522,10 @@ var j1 = (function () {
634
522
  cookie_written = j1.writeCookie({
635
523
  name: cookie_names.user_session,
636
524
  data: user_session,
637
- samesite: 'Strict',
638
525
  secure: secure,
639
526
  expires: 0
640
527
  });
641
528
 
642
- if (!cookie_written) {
643
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
644
- }
645
-
646
529
  // NOTE: asynchronous calls should be rewitten to xhrData
647
530
  // initialize page resources for blocks
648
531
  j1.initBanner(settings);
@@ -651,20 +534,15 @@ var j1 = (function () {
651
534
 
652
535
  state = 'running';
653
536
  logger.info('\n' + 'state: ' + state);
654
- // logger.info(logText);
655
537
 
656
538
  user_session.timestamp = timestamp_now;
657
539
  logger.debug('\n' + 'write to cookie : ' + cookie_names.user_session);
658
540
  cookie_written = j1.writeCookie({
659
541
  name: cookie_names.user_session,
660
542
  data: user_session,
661
- samesite: 'Strict',
662
543
  secure: secure,
663
544
  expires: 0
664
545
  });
665
- if (!cookie_written) {
666
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
667
- }
668
546
 
669
547
  // -----------------------------------------------------------------------
670
548
  // additional BS helpers from j1.core
@@ -786,7 +664,6 @@ var j1 = (function () {
786
664
  // initPanel()
787
665
  // AJAX fetcher to load and place all panel used for a page
788
666
  // -------------------------------------------------------------------------
789
- // ToDo:
790
667
  initPanel: function ( options ) {
791
668
  var logger = log4javascript.getLogger('j1.initPanel');
792
669
  var panel = [];
@@ -1007,20 +884,17 @@ var j1 = (function () {
1007
884
  cookie_written = j1.writeCookie({
1008
885
  name: cookie_names.user_session,
1009
886
  data: user_session,
1010
- samesite: 'Strict',
1011
887
  secure: secure,
1012
888
  expires: 0
1013
889
  });
1014
- if (!cookie_written) {
1015
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
1016
- }
1017
890
 
1018
891
  providerPermissions = user_session.provider_permissions;
1019
892
  categoryAllowed = providerPermissions.includes(user_session.page_permission);
1020
893
 
894
+ // -------------------------------------------------------------------
1021
895
  // check protected pages (applies for APP only)
1022
896
  // make sure that protected pages are ALWAYS checked for permissions
1023
- // -------------------------------------------------------------------
897
+ //
1024
898
  if (
1025
899
  j1.authEnabled() &&
1026
900
  user_session.page_permission !== 'public' &&
@@ -1123,13 +997,7 @@ var j1 = (function () {
1123
997
  $('#quickLinksCookieButton').css('display', 'none');
1124
998
  }
1125
999
 
1126
- // show|hide translator icon (currently NOT supported)
1127
- // if (translation_enabled) {
1128
- // logger.info('\n' + 'translator detected: google');
1129
- // logger.info('\n' + 'initialize language selector');
1130
- // $('.goog-te-combo').addClass('form-control');
1131
- // }
1132
-
1000
+ // -----------------------------------------------------------------
1133
1001
  // show cc icon (currently NOT supported)
1134
1002
  // $('#quickLinksControlCenterButton').css('display', 'block');
1135
1003
 
@@ -1301,20 +1169,9 @@ var j1 = (function () {
1301
1169
  cookie_written = j1.writeCookie({
1302
1170
  name: cookie_names.user_session,
1303
1171
  data: user_session,
1304
- samesite: 'Strict',
1305
1172
  secure: secure,
1306
1173
  expires: 0
1307
1174
  });
1308
- if (!cookie_written) {
1309
- logger.error('\n' + 'failed to write cookie: ' + cookie_names.user_session);
1310
- }
1311
-
1312
- // show|hide translator icon (currently NOT supported)
1313
- // if (translation_enabled) {
1314
- // logger.info('\n' + 'translator detected: google');
1315
- // logger.info('\n' + 'initialize language selector');
1316
- // $('.goog-te-combo').addClass('form-control');
1317
- // }
1318
1175
 
1319
1176
  // show cc icon (currently NOT supported)
1320
1177
  // $('#quickLinksControlCenterButton').css('display', 'block');
@@ -1450,6 +1307,7 @@ var j1 = (function () {
1450
1307
 
1451
1308
  return scrollOffset;
1452
1309
  },
1310
+
1453
1311
  // -------------------------------------------------------------------------
1454
1312
  // scrollTo()
1455
1313
  // Scrolls smooth to any anchor referenced by an page URL on
@@ -1754,25 +1612,29 @@ var j1 = (function () {
1754
1612
  // context/HTTPS).
1755
1613
  // -------------------------------------------------------------------------
1756
1614
  writeCookie: function (options /*name, data, [path, expires, domain, samesite, http_only, secure]*/) {
1757
- var date = new Date();
1758
- var timestamp_now = date.toISOString();
1759
- var cookie_data = {};
1615
+ var date = new Date();
1616
+ var timestamp_now = date.toISOString()
1617
+ var url = new liteURL(window.location.href);
1618
+ var baseUrl = url.origin;;
1619
+ var hostname = url.hostname;
1620
+ var domain = hostname.substring(hostname.lastIndexOf('.', hostname.lastIndexOf('.') - 1) + 1);
1621
+ var domain_enabled = '{{cookie_options.domain}}';
1622
+ var cookie_data = {};
1760
1623
  var data_json;
1761
1624
  var data_encoded;
1762
1625
  var expires;
1763
1626
  var stringifiedAttributes = '';
1764
1627
 
1765
1628
  var defaults = {
1766
- data: {},
1767
- name: '',
1768
- path: '/',
1769
- expires: 0,
1770
- domain: 'localhost',
1771
- samesite: 'Strict',
1772
- http_only: false,
1773
- secure: false
1629
+ data: {},
1630
+ name: '',
1631
+ path: '{{cookie_options.path}}',
1632
+ expires: '{{cookie_options.expires}}',
1633
+ domain: 'localhost',
1634
+ samesite: '{{cookie_options.same_site}}',
1635
+ http_only: '{{cookie_options.http_only}}',
1636
+ secure: '{{cookie_options.secure}}'
1774
1637
  };
1775
-
1776
1638
  var settings = $.extend(defaults, options);
1777
1639
 
1778
1640
  cookie_data.timestamp = timestamp_now;
@@ -1797,6 +1659,16 @@ var j1 = (function () {
1797
1659
 
1798
1660
  stringifiedAttributes += '; ' + 'SameSite=' + settings.samesite;
1799
1661
 
1662
+ // settings.domain = settings.domain ? '.' + domain : hostname;
1663
+
1664
+ if (domain != hostname) {
1665
+ settings.domain = domain_enabled ? '.' + domain : hostname;
1666
+ } else {
1667
+ settings.domain = hostname;
1668
+ }
1669
+
1670
+ stringifiedAttributes += '; ' + 'domain=' + settings.domain;
1671
+
1800
1672
  if (settings.secure) {
1801
1673
  stringifiedAttributes += '; ' + 'secure=' + settings.secure;
1802
1674
  }
@@ -1868,13 +1740,26 @@ var j1 = (function () {
1868
1740
  // to JavaScript. For that reason, attributes needs to be set explicitly.
1869
1741
  // -------------------------------------------------------------------------
1870
1742
  expireCookie: function (options /*name [,path, samesite, secure]*/) {
1743
+ var url = new liteURL(window.location.href);
1744
+ var baseUrl = url.origin;;
1745
+ var hostname = url.hostname;
1746
+ var domain = hostname.substring(hostname.lastIndexOf('.', hostname.lastIndexOf('.') - 1) + 1);
1747
+ var domain_enabled = '{{cookie_options.domain}}';
1748
+
1871
1749
  var defaults = {
1872
1750
  path: '/',
1873
- samesite: 'Strict',
1751
+ samesite: 'Lax',
1874
1752
  secure: false
1875
1753
  };
1754
+
1876
1755
  var settings = $.extend(defaults, options);
1877
1756
 
1757
+ if (domain != hostname) {
1758
+ settings.domain = domain_enabled ? '.' + domain : hostname;
1759
+ } else {
1760
+ settings.domain = hostname;
1761
+ }
1762
+
1878
1763
  var dc = document.cookie; // all cookies in page
1879
1764
  var end = dc.length; // default to end of the string
1880
1765
  var prefix = settings.name + '='; // search string for the cookie name given
@@ -1903,9 +1788,9 @@ var j1 = (function () {
1903
1788
  // expire cookie to session
1904
1789
  content = decodeURI(dc.substring(begin + prefix.length, end) ).replace(/"/g, '');
1905
1790
  if (settings.secure) {
1906
- document.cookie = settings.name + '=' + content +'; path=' + settings.path + '; ' + 'SameSite=' + settings.samesite + '; secure';
1791
+ document.cookie = settings.name + '=' + content +'; path=' + settings.path + '; ' + 'SameSite=' + settings.samesite + '; ' + 'Domain=' + settings.domain + '; secure' + '; ';
1907
1792
  } else {
1908
- document.cookie = settings.name + '=' + content +'; path=' + settings.path + '; ' + 'SameSite=' + settings.samesite;
1793
+ document.cookie = settings.name + '=' + content +'; path=' + settings.path + '; ' + 'SameSite=' + settings.samesite + '; ' + 'Domain=' + settings.domain + '; ';
1909
1794
  }
1910
1795
 
1911
1796
  return true;
@@ -203,7 +203,6 @@ j1.adapter['themer'] = (function (j1, window) {
203
203
  cookie_written = j1.writeCookie({
204
204
  name: cookie_names.user_state,
205
205
  data: user_state,
206
- samesite: 'Strict',
207
206
  secure: secure,
208
207
  expires: 365
209
208
  });