j1-template 2023.2.6 → 2023.3.0

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 (373) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +2 -1
  3. data/_includes/themes/j1/layouts/content_generator_post.html +2 -2
  4. data/_includes/themes/j1/layouts/layout_metadata_generator.html +41 -38
  5. data/_includes/themes/j1/procedures/blocks/footer/boxes/about_box.proc +1 -1
  6. data/_includes/themes/j1/procedures/blocks/footer/boxes/contacts_box.proc +1 -1
  7. data/_includes/themes/j1/procedures/blocks/footer/boxes/issue.proc +1 -1
  8. data/_includes/themes/j1/procedures/blocks/footer/boxes/links_box.proc +1 -1
  9. data/_includes/themes/j1/procedures/blocks/footer/boxes/news_box.proc +1 -1
  10. data/_includes/themes/j1/procedures/layouts/default_writer.proc +1 -3
  11. data/_includes/themes/j1/procedures/layouts/module_writer.proc +7 -23
  12. data/_includes/themes/j1/procedures/layouts/resource_writer.proc +8 -8
  13. data/_layouts/compress.html +26 -21
  14. data/_layouts/default.html +36 -30
  15. data/assets/data/banner.html +5 -2
  16. data/assets/data/footer.html +15 -3
  17. data/assets/data/masterslider.html +1 -0
  18. data/assets/data/menu.html +4 -4
  19. data/assets/data/panel.html +6 -3
  20. data/assets/data/quicklinks.html +138 -149
  21. data/assets/error_pages/HTTP204.html +3 -3
  22. data/assets/error_pages/HTTP400.html +3 -3
  23. data/assets/error_pages/HTTP401.html +3 -3
  24. data/assets/error_pages/HTTP403.html +3 -3
  25. data/assets/error_pages/HTTP404.html +3 -3
  26. data/assets/error_pages/HTTP444.html +3 -3
  27. data/assets/error_pages/HTTP445.html +3 -3
  28. data/assets/error_pages/HTTP446.html +5 -5
  29. data/assets/error_pages/HTTP447.html +7 -7
  30. data/assets/error_pages/HTTP448.html +7 -7
  31. data/assets/error_pages/HTTP500.html +3 -3
  32. data/assets/error_pages/HTTP501.html +3 -3
  33. data/assets/error_pages/HTTP502.html +3 -3
  34. data/assets/error_pages/HTTP503.html +3 -3
  35. data/assets/themes/j1/adapter/js/advertising.js +109 -116
  36. data/assets/themes/j1/adapter/js/analytics.js +1 -1
  37. data/assets/themes/j1/adapter/js/asciidoctor.js +1 -1
  38. data/assets/themes/j1/adapter/js/attic.js +22 -14
  39. data/assets/themes/j1/adapter/js/bmd.js +1 -1
  40. data/assets/themes/j1/adapter/js/carousel.js +5 -4
  41. data/assets/themes/j1/adapter/js/clipboard.js +1 -1
  42. data/assets/themes/j1/adapter/js/comments.js +5 -5
  43. data/assets/themes/j1/adapter/js/cookieConsent.js +1 -1
  44. data/assets/themes/j1/adapter/js/customFunctions.js +1 -1
  45. data/assets/themes/j1/adapter/js/customModule.js +1 -1
  46. data/assets/themes/j1/adapter/js/dropdowns.js +4 -2
  47. data/assets/themes/j1/adapter/js/fab.js +9 -6
  48. data/assets/themes/j1/adapter/js/framer.js +1 -1
  49. data/assets/themes/j1/adapter/js/iconPicker.js +227 -0
  50. data/assets/themes/j1/adapter/js/j1.js +401 -76
  51. data/assets/themes/j1/adapter/js/justifiedGallery.js +9 -3
  52. data/assets/themes/j1/adapter/js/justifiedGalleryCustomizer.js +2 -2
  53. data/assets/themes/j1/adapter/js/lightbox.js +4 -3
  54. data/assets/themes/j1/adapter/js/logger.js +1 -1
  55. data/assets/themes/j1/adapter/js/lunr.js +1 -1
  56. data/assets/themes/j1/adapter/js/masonry.js +4 -3
  57. data/assets/themes/j1/adapter/js/masterslider.js +30 -57
  58. data/assets/themes/j1/adapter/js/mmenu.js +2 -2
  59. data/assets/themes/j1/adapter/js/navigator.js +7 -5
  60. data/assets/themes/j1/adapter/js/nbinteract.js +9 -9
  61. data/assets/themes/j1/adapter/js/particles.js +2 -2
  62. data/assets/themes/j1/adapter/js/rangeSlider.js +2 -2
  63. data/assets/themes/j1/adapter/js/rouge.js +2 -2
  64. data/assets/themes/j1/adapter/js/rtable.js +1 -1
  65. data/assets/themes/j1/adapter/js/rtextResizer.js +1 -1
  66. data/assets/themes/j1/adapter/js/scroller.js +97 -109
  67. data/assets/themes/j1/adapter/js/slick.js +28 -18
  68. data/assets/themes/j1/adapter/js/themeToggler.js +259 -0
  69. data/assets/themes/j1/adapter/js/themer.js +17 -8
  70. data/assets/themes/j1/adapter/js/toccer.js +9 -6
  71. data/assets/themes/j1/adapter/js/translator.js +4 -2
  72. data/assets/themes/j1/adapter/js/waves.js +6 -4
  73. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.css +1322 -417
  74. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.min.css +3 -3
  75. data/assets/themes/j1/core/css/themes/unodark/bootstrap.css +1983 -1266
  76. data/assets/themes/j1/core/css/themes/unodark/bootstrap.min.css +3 -3
  77. data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +10268 -9402
  78. data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +10 -10
  79. data/assets/themes/j1/core/css/vendor.css +0 -14
  80. data/assets/themes/j1/core/css/vendor.min.css +1 -1
  81. data/assets/themes/j1/modules/advertising/js/adInitializer.js +160 -0
  82. data/assets/themes/j1/modules/backstretch/js/backstretch.js +6 -4
  83. data/assets/themes/j1/modules/backstretch/js/backstretch.min.js +1 -1
  84. data/assets/themes/j1/modules/deeplAPI/js/deeplAPI.js +1 -1
  85. data/assets/themes/j1/modules/deeplAPI/js/deeplAPI.min.js +1 -1
  86. data/assets/themes/j1/modules/iconPicker/README.md +266 -0
  87. data/assets/themes/j1/modules/iconPicker/css/universal-icon-picker.css +419 -0
  88. data/assets/themes/j1/modules/iconPicker/css/universal-icon-picker.min.css +17 -0
  89. data/assets/themes/j1/modules/iconPicker/icons-libraries/font-awesome-brands.json +467 -0
  90. data/assets/themes/j1/modules/iconPicker/icons-libraries/font-awesome-brands.min.json +1 -0
  91. data/assets/themes/j1/modules/iconPicker/icons-libraries/font-awesome-regular.json +169 -0
  92. data/assets/themes/j1/modules/iconPicker/icons-libraries/font-awesome-regular.min.json +1 -0
  93. data/assets/themes/j1/modules/iconPicker/icons-libraries/font-awesome-solid.json +1136 -0
  94. data/assets/themes/j1/modules/iconPicker/icons-libraries/font-awesome-solid.min.json +1 -0
  95. data/assets/themes/j1/modules/iconPicker/icons-libraries/font-awesome.json +1772 -0
  96. data/assets/themes/j1/modules/iconPicker/icons-libraries/font-awesome.min.json +1 -0
  97. data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-light.json +292 -0
  98. data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-light.min.json +1 -0
  99. data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-regular.json +7312 -0
  100. data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-regular.min.json +1 -0
  101. data/assets/themes/j1/modules/iconPicker/images/magnifying-glass-solid.svg +1 -0
  102. data/assets/themes/j1/modules/iconPicker/images/star-of-life-solid.svg +3 -0
  103. data/assets/themes/j1/modules/iconPicker/images/xmark-solid.svg +3 -0
  104. data/assets/themes/j1/modules/iconPicker/js/universal-icon-picker.js +493 -0
  105. data/assets/themes/j1/modules/iconPicker/js/universal-icon-picker.min.js +17 -0
  106. data/assets/themes/j1/modules/jquery/AUTHORS.txt +372 -0
  107. data/assets/themes/j1/modules/jquery/LICENSE.txt +43 -0
  108. data/assets/themes/j1/modules/jquery/css/images/ui-icons_444444_256x240.png +0 -0
  109. data/assets/themes/j1/modules/jquery/css/images/ui-icons_555555_256x240.png +0 -0
  110. data/assets/themes/j1/modules/jquery/css/images/ui-icons_777620_256x240.png +0 -0
  111. data/assets/themes/j1/modules/jquery/css/images/ui-icons_777777_256x240.png +0 -0
  112. data/assets/themes/j1/modules/jquery/css/images/ui-icons_cc0000_256x240.png +0 -0
  113. data/assets/themes/j1/modules/jquery/css/images/ui-icons_ffffff_256x240.png +0 -0
  114. data/assets/themes/j1/modules/jquery/css/jquery-ui/jquery-ui.css +92 -92
  115. data/assets/themes/j1/modules/jquery/css/jquery-ui/jquery-ui.min.css +4 -4
  116. data/assets/themes/j1/modules/jquery/css/jquery-ui/jquery-ui.structure.css +88 -88
  117. data/assets/themes/j1/modules/jquery/css/jquery-ui/jquery-ui.structure.min.css +2 -2
  118. data/assets/themes/j1/modules/jquery/css/jquery-ui/jquery-ui.theme.css +4 -4
  119. data/assets/themes/j1/modules/jquery/css/jquery-ui/jquery-ui.theme.min.css +2 -2
  120. data/assets/themes/j1/modules/jquery/js/jquery-ui.js +13683 -13678
  121. data/assets/themes/j1/modules/jquery/js/jquery-ui.min.js +3 -3
  122. data/assets/themes/j1/modules/jquery/js/jquery.js +1029 -1203
  123. data/assets/themes/j1/modules/jquery/js/jquery.min.js +2 -2
  124. data/assets/themes/j1/modules/jquery/js/jquery.min.map +1 -1
  125. data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.css +1315 -0
  126. data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.min.css +7 -0
  127. data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.structure.css +886 -0
  128. data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.structure.min.css +5 -0
  129. data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.theme.css +446 -0
  130. data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.theme.min.css +5 -0
  131. data/assets/themes/j1/modules/jquery-3.5.1/js/extensions/hasClass.js +37 -0
  132. data/assets/themes/j1/modules/jquery-3.5.1/js/extensions/hasClass.min.js +17 -0
  133. data/assets/themes/j1/modules/jquery-3.5.1/js/extensions/removeClass.js +42 -0
  134. data/assets/themes/j1/modules/jquery-3.5.1/js/extensions/removeClass.min.js +17 -0
  135. data/assets/themes/j1/modules/jquery-3.5.1/js/jquery-ui.js +19057 -0
  136. data/assets/themes/j1/modules/jquery-3.5.1/js/jquery-ui.min.js +6 -0
  137. data/assets/themes/j1/modules/jquery-3.5.1/js/jquery.js +10872 -0
  138. data/assets/themes/j1/modules/jquery-3.5.1/js/jquery.min.js +2 -0
  139. data/assets/themes/j1/modules/jquery-3.5.1/js/jquery.min.map +1 -0
  140. data/assets/themes/j1/modules/jquery-3.5.1/js/require.js +2145 -0
  141. data/assets/themes/j1/modules/jquery-3.5.1/js/require.min.js +5 -0
  142. data/assets/themes/j1/modules/lightGallery/js/modules/j1/j1-video.js +2 -2
  143. data/assets/themes/j1/modules/lightGallery/js/modules/j1/j1-video.min.js +1 -1
  144. data/assets/themes/j1/modules/masterslider/css/theme/uno.css +9 -9
  145. data/assets/themes/j1/modules/masterslider/css/theme/uno.min.css +1 -1
  146. data/assets/themes/j1/modules/mmenuLight/css/theme/uno/mmenu.css +2 -2
  147. data/assets/themes/j1/modules/mmenuLight/css/theme/uno/mmenu.min.css +1 -1
  148. data/assets/themes/j1/modules/rouge/css/uno.dark/theme.css +136 -47
  149. data/assets/themes/j1/modules/rouge/css/uno.light/theme.css +9 -9
  150. data/assets/themes/j1/modules/scroller/js/scroller.js +76 -69
  151. data/assets/themes/j1/modules/scroller/js/scroller.min.js +1 -1
  152. data/assets/themes/j1/modules/translator/js/translator.js +1 -1
  153. data/assets/themes/j1/modules/translator/js/translator.min.js +1 -1
  154. data/lib/j1/version.rb +1 -1
  155. data/lib/starter_web/Gemfile +2 -2
  156. data/lib/starter_web/README.md +5 -5
  157. data/lib/starter_web/_config.yml +4 -1
  158. data/lib/starter_web/_data/blocks/banner.yml +8 -5
  159. data/lib/starter_web/_data/blocks/defaults/footer.yml +3 -3
  160. data/lib/starter_web/_data/blocks/footer.yml +9 -5
  161. data/lib/starter_web/_data/blocks/panel.yml +41 -38
  162. data/lib/starter_web/_data/j1_config.yml +68 -58
  163. data/lib/starter_web/_data/layouts/collection.yml +1 -0
  164. data/lib/starter_web/_data/layouts/default.yml +1 -1
  165. data/lib/starter_web/_data/layouts/home.yml +9 -9
  166. data/lib/starter_web/_data/layouts/news_panel_posts.yml +1 -0
  167. data/lib/starter_web/_data/layouts/page.yml +2 -1
  168. data/lib/starter_web/_data/layouts/post.yml +1 -0
  169. data/lib/starter_web/_data/layouts/raw.yml +1 -0
  170. data/lib/starter_web/_data/modules/advertising.yml +134 -61
  171. data/lib/starter_web/_data/modules/analytics.yml +2 -2
  172. data/lib/starter_web/_data/modules/attics.yml +4 -7
  173. data/lib/starter_web/_data/modules/defaults/advertising.yml +2 -1
  174. data/lib/starter_web/_data/modules/defaults/attics.yml +3 -3
  175. data/lib/starter_web/_data/modules/defaults/iconPicker.yml +42 -0
  176. data/lib/starter_web/_data/modules/defaults/navigator.yml +15 -13
  177. data/lib/starter_web/_data/modules/defaults/theme_toggler.yml +42 -0
  178. data/lib/starter_web/_data/modules/iconPicker.yml +64 -0
  179. data/lib/starter_web/_data/modules/masonry.yml +1 -1
  180. data/lib/starter_web/_data/modules/masterslider.yml +5 -5
  181. data/lib/starter_web/_data/modules/navigator_menu.yml +150 -41
  182. data/lib/starter_web/_data/modules/scroller.yml +8 -8
  183. data/lib/starter_web/_data/modules/theme_toggler.yml +29 -0
  184. data/lib/starter_web/_data/modules/themer.yml +0 -6
  185. data/lib/starter_web/_data/resources.yml +53 -52
  186. data/lib/starter_web/_data/templates/feed.xml +1 -1
  187. data/lib/starter_web/_includes/attributes.asciidoc +57 -50
  188. data/lib/starter_web/_plugins/asciidoctor/google-ad-block.rb +47 -0
  189. data/lib/starter_web/_plugins/index/lunr.rb +1 -1
  190. data/lib/starter_web/assets/images/icons/mdi/mdi.svg +1 -0
  191. data/lib/starter_web/assets/images/icons/mdi/mdil.svg +1 -0
  192. data/lib/starter_web/assets/images/modules/attics/1920x1280/alexander-redl.jpg +0 -0
  193. data/lib/starter_web/assets/images/modules/attics/1920x1280/alina-grubnyak.jpg +0 -0
  194. data/lib/starter_web/assets/images/modules/attics/1920x1280/andrea-badino.jpg +0 -0
  195. data/lib/starter_web/assets/images/modules/attics/1920x1280/brad-neathery.jpg +0 -0
  196. data/lib/starter_web/assets/images/modules/attics/1920x1280/bruno-figueiredo.jpg +0 -0
  197. data/lib/starter_web/assets/images/modules/attics/1920x1280/clem-onojeghuo.jpg +0 -0
  198. data/lib/starter_web/assets/images/modules/attics/1920x1280/core_web_vitals_best.png +0 -0
  199. data/lib/starter_web/assets/images/modules/attics/1920x1280/crawford-jolly.jpg +0 -0
  200. data/lib/starter_web/assets/images/modules/attics/1920x1280/eleni-afiontzi.jpg +0 -0
  201. data/lib/starter_web/assets/images/modules/attics/1920x1280/fly-d.jpg +0 -0
  202. data/lib/starter_web/assets/images/modules/attics/1920x1280/guillaume-bolduc.jpg +0 -0
  203. data/lib/starter_web/assets/images/modules/attics/1920x1280/harpal-singh.jpg +0 -0
  204. data/lib/starter_web/assets/images/modules/attics/1920x1280/hayden-mills-2.jpg +0 -0
  205. data/lib/starter_web/assets/images/modules/attics/1920x1280/j1-content-mockup-1.jpg +0 -0
  206. data/lib/starter_web/assets/images/modules/attics/1920x1280/j1-content-mockup-2.jpg +0 -0
  207. data/lib/starter_web/assets/images/modules/attics/1920x1280/j1-content-mockup-3.jpg +0 -0
  208. data/lib/starter_web/assets/images/modules/attics/1920x1280/j1-starter-mockup-1.jpg +0 -0
  209. data/lib/starter_web/assets/images/modules/attics/1920x1280/john-schnobrich-2.jpg +0 -0
  210. data/lib/starter_web/assets/images/modules/attics/1920x1280/josep-martins.jpg +0 -0
  211. data/lib/starter_web/assets/images/modules/attics/1920x1280/josh-liu.jpg +0 -0
  212. data/lib/starter_web/assets/images/modules/attics/1920x1280/kelly-sikkemal.jpg +0 -0
  213. data/lib/starter_web/assets/images/modules/attics/1920x1280/kira-auf-der-heide.jpg +0 -0
  214. data/lib/starter_web/assets/images/modules/attics/1920x1280/kristopher-roller.jpg +0 -0
  215. data/lib/starter_web/assets/images/modules/attics/1920x1280/kristopher-roller.webp +0 -0
  216. data/lib/starter_web/assets/images/modules/attics/1920x1280/matthaeus.jpg +0 -0
  217. data/lib/starter_web/assets/images/modules/attics/1920x1280/melanie-deziel.jpg +0 -0
  218. data/lib/starter_web/assets/images/modules/attics/1920x1280/milad-fakurian.jpg +0 -0
  219. data/lib/starter_web/assets/images/modules/attics/1920x1280/mohammad-rahmani.jpg +0 -0
  220. data/lib/starter_web/assets/images/modules/attics/1920x1280/nasa.jpg +0 -0
  221. data/lib/starter_web/assets/images/modules/attics/1920x1280/quino-al-2.jpg +0 -0
  222. data/lib/starter_web/assets/images/modules/attics/1920x1280/recha-oktaviani.jpg +0 -0
  223. data/lib/starter_web/assets/images/modules/attics/building-blocks-1920x1280.jpg +0 -0
  224. data/lib/starter_web/assets/images/modules/attics/christina-1920x1280.jpg +0 -0
  225. data/lib/starter_web/assets/images/modules/attics/cookies-1920x1200.jpg +0 -0
  226. data/lib/starter_web/assets/images/modules/attics/katie-moum-1920x1280.jpg +0 -0
  227. data/lib/starter_web/assets/images/pages/core_web_vitals/core_web_vitals_best.jpg +0 -0
  228. data/lib/starter_web/assets/images/pages/core_web_vitals/core_web_vitals_best.png +0 -0
  229. data/lib/starter_web/assets/images/pages/core_web_vitals/core_web_vitals_best_full.png +0 -0
  230. data/lib/starter_web/assets/images/pages/html_validator/appdevtools-html-validator.jpg +0 -0
  231. data/lib/starter_web/assets/images/pages/html_validator/freeformatter-html-validator.jpg +0 -0
  232. data/lib/starter_web/assets/images/pages/html_validator/w3c-nu-checker.jpg +0 -0
  233. data/lib/starter_web/assets/images/pages/html_validator/w3c-validator.jpg +0 -0
  234. data/lib/starter_web/collections/_biography/a-life-in-questions.adoc +8 -9
  235. data/lib/starter_web/collections/_biography/becoming.adoc +22 -9
  236. data/lib/starter_web/collections/_biography/born-to-run.adoc +27 -9
  237. data/lib/starter_web/collections/_biography/forty-autumns.adoc +19 -12
  238. data/lib/starter_web/collections/_biography/not-dead-yet.adoc +24 -14
  239. data/lib/starter_web/collections/_biography/princess-diarist-the.adoc +23 -14
  240. data/lib/starter_web/collections/_biography/when-breath-becomes-air.adoc +24 -11
  241. data/lib/starter_web/collections/_fantasy/harry-potter-deathly-hallows.adoc +14 -10
  242. data/lib/starter_web/collections/_fantasy/harry-potter-philosophers-stone.adoc +11 -8
  243. data/lib/starter_web/collections/_fantasy/mistborn-trilogy.adoc +7 -8
  244. data/lib/starter_web/collections/_fantasy/ready-player-one.adoc +17 -14
  245. data/lib/starter_web/collections/_fantasy/sword-of-destiny.adoc +12 -13
  246. data/lib/starter_web/collections/_fantasy/terry-pratchet-diary.adoc +15 -15
  247. data/lib/starter_web/collections/_people/diana-petersen.adoc +2 -0
  248. data/lib/starter_web/collections/_people/larry-parker.adoc +2 -0
  249. data/lib/starter_web/collections/_people/parveen-anand.adoc +2 -0
  250. data/lib/starter_web/collections/_portfolio/branding.adoc +5 -0
  251. data/lib/starter_web/collections/_portfolio/graphic_design.adoc +5 -0
  252. data/lib/starter_web/collections/_portfolio/identity.adoc +5 -0
  253. data/lib/starter_web/collections/_portfolio/illustration.adoc +5 -0
  254. data/lib/starter_web/collections/_portfolio/photography.adoc +5 -0
  255. data/lib/starter_web/collections/_portfolio/web_design.adoc +5 -0
  256. data/lib/starter_web/collections/_romance/breath-of-snow-and-ashes-a.adoc +8 -5
  257. data/lib/starter_web/collections/_romance/dressmaker-the.adoc +14 -14
  258. data/lib/starter_web/collections/_romance/fiery-cross-the.adoc +12 -9
  259. data/lib/starter_web/collections/_romance/it-ends-with-us.adoc +14 -11
  260. data/lib/starter_web/collections/_romance/outlander-novel.adoc +48 -25
  261. data/lib/starter_web/collections/_romance/virgins-outlander-short-story.adoc +30 -15
  262. data/lib/starter_web/index.html +6 -14
  263. data/lib/starter_web/package.json +3 -3
  264. data/lib/starter_web/pages/public/about/features.adoc +1 -4
  265. data/lib/starter_web/pages/public/about/reporting_issues.adoc +1 -3
  266. data/lib/starter_web/pages/public/blog/navigator/archive/allview.html +0 -5
  267. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +0 -4
  268. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +0 -5
  269. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +0 -5
  270. data/lib/starter_web/pages/public/blog/navigator/index.html +2 -6
  271. data/lib/starter_web/pages/public/features/general.adoc +0 -4
  272. data/lib/starter_web/pages/public/features/template.adoc +0 -4
  273. data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_all_books.adoc +1 -3
  274. data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_biography.adoc +1 -1
  275. data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_fantasy.adoc +1 -1
  276. data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_romance.adoc +1 -2
  277. data/lib/starter_web/pages/public/learn/bookshelf/jekyll_collections.adoc +75 -66
  278. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/attributes.asciidoc +58 -0
  279. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/accordion.asciidoc +34 -0
  280. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/alerts.asciidoc +15 -0
  281. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/badges.asciidoc +9 -0
  282. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/body.asciidoc +14 -0
  283. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/breadcrumbs.asciidoc +14 -0
  284. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/buttons.asciidoc +75 -0
  285. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/cards.asciidoc +22 -0
  286. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/carousel.asciidoc +37 -0
  287. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/close.asciidoc +15 -0
  288. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/code.asciidoc +14 -0
  289. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/color_system.asciidoc +353 -0
  290. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/components.asciidoc +69 -0
  291. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/dropdowns.asciidoc +53 -0
  292. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/figures.asciidoc +5 -0
  293. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/forms.asciidoc +270 -0
  294. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/grid.asciidoc +49 -0
  295. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/links.asciidoc +21 -0
  296. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/list_groups.asciidoc +28 -0
  297. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/modals.asciidoc +43 -0
  298. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/navbar.asciidoc +45 -0
  299. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/navs.asciidoc +28 -0
  300. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/offcanvas.asciidoc +16 -0
  301. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/options.asciidoc +30 -0
  302. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/pagination.asciidoc +40 -0
  303. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/paragraph.asciidoc +5 -0
  304. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/placeholders.asciidoc +5 -0
  305. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/popovers.asciidoc +28 -0
  306. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/position.asciidoc +8 -0
  307. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/progress_bars.asciidoc +12 -0
  308. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/spacing.asciidoc +14 -0
  309. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/spinners.asciidoc +12 -0
  310. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/tables.asciidoc +55 -0
  311. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/thumbnails.asciidoc +9 -0
  312. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/toasts.asciidoc +18 -0
  313. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/tooltips.asciidoc +28 -0
  314. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/typography.asciidoc +115 -0
  315. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/documents/z_index.asciidoc +26 -0
  316. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/tables/_table.asciidoc +9 -0
  317. data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/tables/accordion.asciidoc +87 -0
  318. data/lib/starter_web/pages/public/learn/bs_sass_variables/bs_sass_variables.adoc +262 -0
  319. data/lib/starter_web/pages/public/learn/cheatsheet/gem.adoc +255 -0
  320. data/lib/starter_web/pages/public/learn/cheatsheet/git.adoc +1458 -0
  321. data/lib/starter_web/pages/public/learn/cheatsheet/j1.adoc +63 -0
  322. data/lib/starter_web/pages/public/learn/cheatsheet/yaml.adoc +514 -0
  323. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/attributes.asciidoc +59 -0
  324. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/documents/100_chapter.asciidoc +541 -0
  325. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/documents/200_chapter.asciidoc +33 -0
  326. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/tables/build_command_options.asciidoc +72 -0
  327. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/tables/files_and_folders.asciidoc +66 -0
  328. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/tables/global_configuration_options.asciidoc +63 -0
  329. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/tables/global_variables.asciidoc +26 -0
  330. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/tables/page_variables.asciidoc +54 -0
  331. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/tables/serve_command_options.asciidoc +45 -0
  332. data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/tables/site_variables.asciidoc +59 -0
  333. data/lib/starter_web/pages/public/learn/core_web_vitals/core_web_vitals.adoc +442 -0
  334. data/lib/starter_web/pages/public/learn/roundtrip/_includes/attributes.asciidoc +1 -1
  335. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/100_gistblock.asciidoc +3 -4
  336. data/lib/starter_web/pages/public/learn/roundtrip/asciidoc_extensions.adoc +2 -2
  337. data/lib/starter_web/pages/public/learn/roundtrip/icon_fonts.adoc +10 -10
  338. data/lib/starter_web/pages/public/learn/roundtrip/lunr_search.adoc +0 -2
  339. data/lib/starter_web/pages/public/learn/roundtrip/present_images.adoc +8 -2
  340. data/lib/starter_web/pages/public/learn/roundtrip/responsive_tables.adoc +3 -7
  341. data/lib/starter_web/pages/public/learn/where_to_go.adoc +39 -45
  342. data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +2 -6
  343. data/lib/starter_web/pages/public/legal/en/200_impress.adoc +0 -1
  344. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +2 -6
  345. data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +2 -6
  346. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +0 -2
  347. data/lib/starter_web/pages/public/plans/plans.adoc +0 -2
  348. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +93 -7
  349. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  350. data/lib/starter_web/utilsrv/package.json +1 -1
  351. metadata +133 -24
  352. data/_includes/themes/j1/modules/ads/google_ad_content_home.html +0 -11
  353. data/_includes/themes/j1/modules/ads/google_ad_top_home.html +0 -11
  354. data/assets/themes/j1/core/css/nbinteract-tutorial/styles.css +0 -1711
  355. data/assets/themes/j1/core/css/nbinteract-tutorial/styles.min.css +0 -1
  356. data/assets/themes/j1/modules/advertising/js/google/adInitializer.js +0 -127
  357. data/assets/themes/j1/modules/deeplAPI/js/deeplAPI.2.js +0 -460
  358. data/assets/themes/j1/modules/mdiPreviewer/css/previewer.css +0 -97
  359. data/assets/themes/j1/modules/mdiPreviewer/css/previewer.min.css +0 -15
  360. data/assets/themes/j1/modules/mdiPreviewer/js/previewer.js +0 -115
  361. data/assets/themes/j1/modules/mdiPreviewer/js/previewer.min.js +0 -15
  362. data/assets/themes/j1/modules/mdilPreviewer/css/previewer.css +0 -97
  363. data/assets/themes/j1/modules/mdilPreviewer/css/previewer.min.css +0 -15
  364. data/assets/themes/j1/modules/mdilPreviewer/js/previewer.js +0 -125
  365. data/assets/themes/j1/modules/mdilPreviewer/js/previewer.min.js +0 -15
  366. data/lib/starter_web/_includes/themes/j1/modules/ads/google_ad_content_home.html +0 -11
  367. data/lib/starter_web/_includes/themes/j1/modules/ads/google_ad_top_home.html +0 -11
  368. /data/lib/starter_web/assets/images/{promo → quotes/promo}/home/screenshot.jpg +0 -0
  369. /data/lib/starter_web/assets/images/{promo → quotes/promo}/jekyll/jekyll-faq.jpg +0 -0
  370. /data/lib/starter_web/assets/images/{promo → quotes/promo}/jekyll/jekyll-generator.jpg +0 -0
  371. /data/lib/starter_web/assets/images/{promo → quotes/promo}/jekyll/jekyll-generator.png +0 -0
  372. /data/lib/starter_web/assets/images/{promo → quotes/promo}/jekyll/jekyll-og.png +0 -0
  373. /data/lib/starter_web/assets/images/{promo → quotes/promo}/jekyll/scalable/jekyll-faq.psd +0 -0
@@ -6,9 +6,9 @@
6
6
  # Product/Info:
7
7
  # https://jekyll.one
8
8
  #
9
- # Copyright (C) 2023 Juergen Adams
9
+ # Copyright (C) 2022 Juergen Adams
10
10
  #
11
- # J1 Theme is licensed under the MIT License.
11
+ # J1 Template is licensed under the MIT License.
12
12
  # For details, see: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
13
13
  # -----------------------------------------------------------------------------
14
14
  # NOTE: Based on https://github.com/jquery-boilerplate/jquery-boilerplate
@@ -23,7 +23,8 @@
23
23
  ;(function($, window, document, undefined) {
24
24
  'use strict';
25
25
 
26
- // Create the defaults
26
+ // create the defaults
27
+ //
27
28
  var pluginName = 'scroller',
28
29
  defaults = {
29
30
  type: 'infiniteScroll',
@@ -38,25 +39,29 @@
38
39
  onAfterLoad: function (){} // callback after new items are loaded
39
40
  };
40
41
 
41
- // Plugin constructor
42
+ // plugin constructor
43
+ //
42
44
  function Plugin (element, options) {
43
45
  this.element = element;
44
46
  this.settings = $.extend( {}, defaults, options);
45
47
  this.settings.elementID = '#' + this.element.id;
46
48
 
47
49
  // call the initializer
50
+ //
48
51
  this.init(this.settings);
49
52
  }
50
53
 
51
- // Avoid plugin prototype conflicts
54
+ // avoid plugin prototype conflicts
55
+ //
52
56
  $.extend(Plugin.prototype, {
53
- // -----------------------------------------------------------------------
57
+
58
+ // -------------------------------------------------------------------------
54
59
  // init()
55
60
  // plugin initializer
56
- // -----------------------------------------------------------------------
61
+ // -------------------------------------------------------------------------
57
62
  init: function(options) {
63
+ var logger = log4javascript.getLogger('j1.scroller.core');
58
64
  var _this = this;
59
- var logger = log4javascript.getLogger('j1.scroller.core.init');
60
65
 
61
66
  logger.info('\n' + 'initializing plugin: started');
62
67
  logger.info('\n' + 'state: started');
@@ -67,22 +72,13 @@
67
72
  _this.scroller = window;
68
73
  }
69
74
 
70
- if (options.loadStatus) {
71
- var spinner = '<div class="loader-ellips" style="display: none"> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> </div>';
72
- $(spinner).insertAfter(options.elementID);
73
- }
74
-
75
- if (options.infoLastPage) {
76
- var message = options.lastPageInfo;
77
- $(message).insertAfter(options.elementID);
78
- }
79
-
80
- // jadams, 2021-11-08: for testing reason, registerScrollEvent delayed
81
- // until page_ready state
75
+ // registerScrollEvent delayed until page_ready state
76
+ //
82
77
  var dependencies_met_page_ready = setInterval (function () {
83
78
  if (j1.getState() === 'finished') {
84
79
 
85
80
  // initialize infinite scroll
81
+ //
86
82
  if ( options.type === 'infiniteScroll') {
87
83
  logger.info('\n' + 'processing mode: ' + options.type);
88
84
  logger.info('\n' + 'loading items from path: ' + options.pagePath);
@@ -90,6 +86,7 @@
90
86
  _this.registerScrollEvent(options);
91
87
  }
92
88
  // initialize show on scroll
89
+ //
93
90
  if ( options.type === 'showOnScroll') {
94
91
  logger.info('\n' + 'processing mode: ' + options.type);
95
92
  logger.info('\n' + 'loading items from path: ' + options.pagePath);
@@ -109,17 +106,18 @@
109
106
  // -------------------------------------------------------------------------
110
107
  isInViewport: function (elm, offset) {
111
108
  // if the element doesn't exist, abort
109
+ //
112
110
  if( elm.length == 0 ) {
113
111
  return;
114
112
  }
115
- var $window = jQuery(window);
116
- var viewport_top = $window.scrollTop();
117
- var viewport_height = $window.height();
118
- var viewport_bottom = viewport_top + viewport_height;
119
- var $elm = jQuery(elm);
120
- var top = $elm.offset().top + offset;
121
- var height = $elm.height();
122
- var bottom = top + height;
113
+ var $window = jQuery(window);
114
+ var viewport_top = $window.scrollTop();
115
+ var viewport_height = $window.height();
116
+ var viewport_bottom = viewport_top + viewport_height;
117
+ var $elm = jQuery(elm);
118
+ var top = $elm.offset().top + offset;
119
+ var height = $elm.height();
120
+ var bottom = top + height;
123
121
 
124
122
  return (top >= viewport_top && top < viewport_bottom) ||
125
123
  (bottom > viewport_top && bottom <= viewport_bottom) ||
@@ -144,20 +142,22 @@
144
142
 
145
143
  if (_this.settings.elementScroll) {
146
144
  // check scroll position of the container items are to be added
147
- var $window = $(window);
148
- var viewport_top = $window.scrollTop();
145
+ //
146
+ var $window = $(window);
147
+ var viewport_top = $window.scrollTop();
149
148
  var viewport_height = $window.height();
150
149
  var viewport_bottom = viewport_top + viewport_height - options.scrollOffset;
151
- var $elm = $(options.elementID);
152
- var top = $elm.offset().top + clientHeight;
153
- var height = $elm.height();
154
- bottom = top + height;
150
+ var $elm = $(options.elementID);
151
+ var top = $elm.offset().top + clientHeight;
152
+ var height = $elm.height();
153
+ bottom = top + height;
155
154
 
156
155
  return (top >= viewport_top && top < viewport_bottom) ||
157
156
  (bottom > viewport_top && bottom <= viewport_bottom) ||
158
157
  (height > viewport_height && top <= viewport_top && bottom >= viewport_bottom);
159
158
  } else {
160
159
  // check scroll position of the (overall) window
160
+ //
161
161
  return (window.innerHeight + window.pageYOffset + options.scrollOffset >= document.body.offsetHeight);
162
162
  }
163
163
  },
@@ -168,49 +168,52 @@
168
168
  // position reached
169
169
  // -------------------------------------------------------------------------
170
170
  registerScrollEvent: function (options) {
171
- var _this = this;
172
- var logger = log4javascript.getLogger('j1.scroller.core.registerScrollEvent');
171
+ var logger = log4javascript.getLogger('j1.scroller.core');
172
+ var _this = this;
173
173
 
174
- // scroller type infiniteScroll
174
+ // scroller type 'infiniteScroll'
175
+ //
175
176
  if (options.type === 'infiniteScroll') {
176
- logger.info('\n' + 'register scroll event of type: ' + options.type);
177
-
178
177
  // register event function DYNAMICALLY
178
+ //
179
179
  _this[options.id] = function (event) {
180
180
  var options = _this.settings;
181
181
 
182
182
  if (_this.isBottomReached(options)) {
183
183
  if (options.firstPage > options.lastPage ) {
184
- logger.info('\n' + 'last page detected on: ' + options.lastPage);
185
184
  window.removeEventListener('scroll', _this[options.id]);
186
- logger.info('\n' + 'scroll event: removed');
185
+ logger.debug('\n' + 'scroll event removed: ' + options.type);
187
186
 
188
187
  if (options.infoLastPage ) {
189
- _this.infoLastPage(options);
188
+ logger.debug('\n' + 'show last page info');
189
+ _this.infoLastPage(options);
190
190
  }
191
191
  return false;
192
192
  }
193
193
  _this.getNewPost(options);
194
194
  }
195
195
  };
196
+
196
197
  window.addEventListener('scroll', _this[options.id]);
197
- logger.info('\n' + 'scroll event: registered');
198
+ logger.debug('\n' + 'scroll event registered: ' + options.type);
198
199
  }
199
200
 
200
- // scroller type showOnScroll
201
+ // scroller type 'showOnScroll'
202
+ //
201
203
  if (options.type === 'showOnScroll') {
202
- logger.info('\n' + 'register scroll event of type: ' + options.type);
203
-
204
204
  // register event function DYNAMICALLY
205
+ //
205
206
  _this[options.id] = function (event) {
206
207
  if (_this.isInViewport ($('#' + options.id ), options.scrollOffset)) {
207
- logger.info('\n' + 'specified container is in view: ' + options.id);
208
+ logger.debug('\n' + 'specified container is in view: ' + options.id);
208
209
  $('.' + options.id).show(options.showDelay);
209
- logger.info('\n' + 'remove eventHandler');
210
210
  window.removeEventListener('scroll', _this[options.id]);
211
+ logger.debug('\n' + 'scroll event showOnScroll: removed');
211
212
  }
212
213
  }
214
+
213
215
  window.addEventListener('scroll', _this[options.id]);
216
+ logger.debug('\n' + 'scroll event registered: ' + options.type);
214
217
  }
215
218
 
216
219
  },
@@ -222,18 +225,21 @@
222
225
  // is NOT finished
223
226
  // -------------------------------------------------------------------------
224
227
  getNewPost: function (options) {
225
- var _this = this;
226
- var logger = log4javascript.getLogger('j1.scroller.core.getNewPost');
228
+ var logger = log4javascript.getLogger('j1.scroller.core');
229
+ var _this = this;
227
230
 
228
- logger.debug('\n' + 'trigger loading ');
231
+ logger.debug('\n' + 'loading new posts');
229
232
 
230
233
  // initialze loader flag
234
+ //
231
235
  if (this.itemsLoaded === false) return false;
232
236
 
233
- // set loader flag (false == not loaded)
237
+ // set loader flag (false == not loaded
238
+ //
234
239
  this.itemsLoaded = false;
235
240
 
236
241
  // display spinner while loading
242
+ //
237
243
  if (options.loadStatus) {
238
244
  logger.info('\n' + 'show: spinner');
239
245
  $('.loader-ellips').show();
@@ -266,8 +272,6 @@
266
272
  }
267
273
 
268
274
  logger.error('\n' + 'loading new items failed, HTTP response: ' + xmlhttp.status );
269
- // set loader flag (true == loaded)
270
- // return _this.itemsLoaded = false;
271
275
  _this.itemsLoaded = false;
272
276
  }
273
277
  }
@@ -282,12 +286,12 @@
282
286
  // extract items from page loaded
283
287
  // -------------------------------------------------------------------------
284
288
  getChildItemsByAjaxHTML: function (options, HTMLText) {
289
+ var logger = log4javascript.getLogger('j1.scroller.core');
285
290
  var newHTML = document.createElement('html');
286
- var logger = log4javascript.getLogger('j1.scroller.core.getChildItemsByAjaxHTML');
287
291
 
288
292
  logger.debug('\n' + 'load new items');
289
293
  newHTML.innerHTML = HTMLText;
290
- var childItems = newHTML.querySelectorAll(options.elementID + ' > *');
294
+ var childItems = newHTML.querySelectorAll(options.elementID + ' > *');
291
295
  return childItems;
292
296
  },
293
297
 
@@ -296,22 +300,25 @@
296
300
  // append items and run post processing
297
301
  // -------------------------------------------------------------------------
298
302
  appendNewItems: function (items) {
303
+ var logger = log4javascript.getLogger('j1.scroller.core');
299
304
  var _this = this;
300
- var logger = log4javascript.getLogger('j1.scroller.core.appendNewItems');
301
305
  var cookie_names = j1.getCookieNames();
302
306
  var user_translate = j1.readCookie(cookie_names.user_translate);
303
307
 
304
- logger.debug('\n' + 'append new items');
305
308
  items.forEach(function (item) {
306
- _this.element.appendChild(item);
309
+ var elmID = _this.element.id
310
+ document.getElementById(elmID).appendChild(item);
311
+ logger.debug('\n' + 'new item appended');
307
312
  });
308
313
 
309
314
  // no dropcaps if translation enabled
315
+ //
310
316
  if (user_translate.translationEnabled) {
311
317
  logger.info('\n' + 'translation enabled: ' + user_translate.translationEnabled);
312
- logger.warn('\n' + 'skipped processing of dropcaps');
318
+ logger.info('\n' + 'skipped processing of dropcaps');
313
319
  } else {
314
320
  // initialize dropcaps
321
+ //
315
322
  logger.info('\n' + 'post processing: createDropCap');
316
323
  j1.core.createDropCap();
317
324
  }
@@ -319,21 +326,21 @@
319
326
  },
320
327
 
321
328
  // -------------------------------------------------------------------------
322
- // getNewPost()
323
- // load|append new items
324
- // Note: loader flag prevents to load items if AJAX load in progress
325
- // is NOT finished
329
+ // infoLastPage()
330
+ // append|show info message on last page (infiniteScroll)
326
331
  // -------------------------------------------------------------------------
327
332
  infoLastPage: function (options) {
328
- var _this = this;
329
- var logger = log4javascript.getLogger('j1.scroller.core.infoLastPage');
333
+ var message = options.lastPageInfo;
334
+
335
+ $(message).insertAfter(options.elementID);
336
+ $('.page-scroll-last').show();
337
+
338
+ } // END infoLastPage
330
339
 
331
- logger.info('\n' + 'show: infoLastPage');
332
- $('.page-scroll-last').show();
333
- }
334
340
  }); // END prototype
335
341
 
336
342
  // wrapper around the constructor to prevent multiple instantiations
343
+ //
337
344
  $.fn [pluginName] = function(options) {
338
345
  return this.each(function() {
339
346
  if (!$.data( this, "plugin_" + pluginName)) {
@@ -12,4 +12,4 @@
12
12
  # For details, see: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
13
13
  # -----------------------------------------------------------------------------
14
14
  */
15
- !function(e,t,n,i){"use strict";var o={type:"infiniteScroll",scrollOffset:100,elementScroll:!1,firstPage:2,lastPage:!1,infoLastPage:!1,loadStatus:!1,onInit:function(){},onBeforeLoad:function(){},onAfterLoad:function(){}};function s(t,n){this.element=t,this.settings=e.extend({},o,n),this.settings.elementID="#"+this.element.id,this.init(this.settings)}e.extend(s.prototype,{init:function(n){var i=this,o=log4javascript.getLogger("j1.scroller.core.init");if(o.info("\ninitializing plugin: started"),o.info("\nstate: started"),n.elementScroll?i.scroller=i.element:i.scroller=t,n.loadStatus){e('<div class="loader-ellips" style="display: none"> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> </div>').insertAfter(n.elementID)}if(n.infoLastPage){var s=n.lastPageInfo;e(s).insertAfter(n.elementID)}var r=setInterval(function(){"finished"===j1.getState()&&("infiniteScroll"===n.type&&(o.info("\nprocessing mode: "+n.type),o.info("\nloading items from path: "+n.pagePath),o.info("\nmonitoring element set to: "+this.scroller),i.registerScrollEvent(n)),"showOnScroll"===n.type&&(o.info("\nprocessing mode: "+n.type),o.info("\nloading items from path: "+n.pagePath),o.info("\nmonitoring element set to: "+this.scroller),i.registerScrollEvent(n)),o.info("\ninitializing plugin: finished"),o.info("\nstate: finished"),clearInterval(r))},25)},isInViewport:function(e,n){if(0!=e.length){var i=jQuery(t),o=i.scrollTop(),s=i.height(),r=o+s,l=jQuery(e),a=l.offset().top+n,f=l.height(),c=a+f;return a>=o&&a<r||c>o&&c<=r||f>s&&a<=o&&c>=r}},isBottomReached:function(i){var o,s=e(i.elementID).height();if(this.settings.elementScroll){var r=e(t),l=r.scrollTop(),a=r.height(),f=l+a-i.scrollOffset,c=e(i.elementID),d=c.offset().top+s,g=c.height();return o=d+g,d>=l&&d<f||o>l&&o<=f||g>a&&d<=l&&o>=f}return t.innerHeight+t.pageYOffset+i.scrollOffset>=n.body.offsetHeight},registerScrollEvent:function(n){var i=this,o=log4javascript.getLogger("j1.scroller.core.registerScrollEvent");"infiniteScroll"===n.type&&(o.info("\nregister scroll event of type: "+n.type),i[n.id]=function(e){var n=i.settings;if(i.isBottomReached(n)){if(n.firstPage>n.lastPage)return o.info("\nlast page detected on: "+n.lastPage),t.removeEventListener("scroll",i[n.id]),o.info("\nscroll event: removed"),n.infoLastPage&&i.infoLastPage(n),!1;i.getNewPost(n)}},t.addEventListener("scroll",i[n.id]),o.info("\nscroll event: registered")),"showOnScroll"===n.type&&(o.info("\nregister scroll event of type: "+n.type),i[n.id]=function(s){i.isInViewport(e("#"+n.id),n.scrollOffset)&&(o.info("\nspecified container is in view: "+n.id),e("."+n.id).show(n.showDelay),o.info("\nremove eventHandler"),t.removeEventListener("scroll",i[n.id]))},t.addEventListener("scroll",i[n.id]))},getNewPost:function(t){var n=this,i=log4javascript.getLogger("j1.scroller.core.getNewPost");if(i.debug("\ntrigger loading "),!1===this.itemsLoaded)return!1;this.itemsLoaded=!1,t.loadStatus&&(i.info("\nshow: spinner"),e(".loader-ellips").show());var o=new XMLHttpRequest;o.onreadystatechange=function(){if(o.readyState==XMLHttpRequest.DONE)if(200==o.status){t.firstPage++;var s=n.getChildItemsByAjaxHTML(t,o.responseText);n.appendNewItems(s),i.info("\nloading new items: successful"),t.loadStatus&&(i.info("\nhide: spinner"),e(".loader-ellips").hide()),n.itemsLoaded=!0}else t.loadStatus&&(i.info("\nhide: spinner"),e(".loader-ellips").hide()),i.error("\nloading new items failed, HTTP response: "+o.status),n.itemsLoaded=!1},i.info("\nloading new items from path: "+t.pagePath+t.firstPage),o.open("GET",location.origin+t.pagePath+t.firstPage+"/index.html",!0),o.send()},getChildItemsByAjaxHTML:function(e,t){var i=n.createElement("html");return log4javascript.getLogger("j1.scroller.core.getChildItemsByAjaxHTML").debug("\nload new items"),i.innerHTML=t,i.querySelectorAll(e.elementID+" > *")},appendNewItems:function(e){var t=this,n=log4javascript.getLogger("j1.scroller.core.appendNewItems"),i=j1.getCookieNames(),o=j1.readCookie(i.user_translate);n.debug("\nappend new items"),e.forEach(function(e){t.element.appendChild(e)}),o.translationEnabled?(n.info("\ntranslation enabled: "+o.translationEnabled),n.warn("\nskipped processing of dropcaps")):(n.info("\npost processing: createDropCap"),j1.core.createDropCap())},infoLastPage:function(t){log4javascript.getLogger("j1.scroller.core.infoLastPage").info("\nshow: infoLastPage"),e(".page-scroll-last").show()}}),e.fn.scroller=function(t){return this.each(function(){e.data(this,"plugin_scroller")||e.data(this,"plugin_scroller",new s(this,t))})}}(jQuery,window,document);
15
+ !function(e,t,n,i){"use strict";var o="scroller",s={type:"infiniteScroll",scrollOffset:100,elementScroll:!1,firstPage:2,lastPage:!1,infoLastPage:!1,loadStatus:!1,onInit:function(){},onBeforeLoad:function(){},onAfterLoad:function(){}};function r(t,n){this.element=t,this.settings=e.extend({},s,n),this.settings.elementID="#"+this.element.id,this.init(this.settings)}e.extend(r.prototype,{init:function(e){var n=log4javascript.getLogger("j1.scroller.core"),i=this;n.info("\ninitializing plugin: started"),n.info("\nstate: started"),e.elementScroll?i.scroller=i.element:i.scroller=t;var o=setInterval(function(){"finished"===j1.getState()&&("infiniteScroll"===e.type&&(n.info("\nprocessing mode: "+e.type),n.info("\nloading items from path: "+e.pagePath),n.info("\nmonitoring element set to: "+this.scroller),i.registerScrollEvent(e)),"showOnScroll"===e.type&&(n.info("\nprocessing mode: "+e.type),n.info("\nloading items from path: "+e.pagePath),n.info("\nmonitoring element set to: "+this.scroller),i.registerScrollEvent(e)),n.info("\ninitializing plugin: finished"),n.info("\nstate: finished"),clearInterval(o))},25)},isInViewport:function(e,n){if(0!=e.length){var i=jQuery(t),o=i.scrollTop(),s=i.height(),r=o+s,l=jQuery(e),a=l.offset().top+n,d=l.height(),f=a+d;return a>=o&&a<r||f>o&&f<=r||d>s&&a<=o&&f>=r}},isBottomReached:function(i){var o,s=e(i.elementID).height();if(!this.settings.elementScroll)return t.innerHeight+t.pageYOffset+i.scrollOffset>=n.body.offsetHeight;var r=e(t),l=r.scrollTop(),a=r.height(),d=l+a-i.scrollOffset,f=e(i.elementID),g=f.offset().top+s,c=f.height();return o=g+c,g>=l&&g<d||o>l&&o<=d||c>a&&g<=l&&o>=d},registerScrollEvent:function(n){var i=log4javascript.getLogger("j1.scroller.core"),o=this;"infiniteScroll"===n.type&&(o[n.id]=function(e){var n=o.settings;if(o.isBottomReached(n)){if(n.firstPage>n.lastPage)return t.removeEventListener("scroll",o[n.id]),i.debug("\nscroll event removed: "+n.type),n.infoLastPage&&(i.debug("\nshow last page info"),o.infoLastPage(n)),!1;o.getNewPost(n)}},t.addEventListener("scroll",o[n.id]),i.debug("\nscroll event registered: "+n.type)),"showOnScroll"===n.type&&(o[n.id]=function(s){o.isInViewport(e("#"+n.id),n.scrollOffset)&&(i.debug("\nspecified container is in view: "+n.id),e("."+n.id).show(n.showDelay),t.removeEventListener("scroll",o[n.id]),i.debug("\nscroll event showOnScroll: removed"))},t.addEventListener("scroll",o[n.id]),i.debug("\nscroll event registered: "+n.type))},getNewPost:function(t){var n=log4javascript.getLogger("j1.scroller.core"),i=this;if(n.debug("\nloading new posts"),!1===this.itemsLoaded)return!1;this.itemsLoaded=!1,t.loadStatus&&(n.info("\nshow: spinner"),e(".loader-ellips").show());var o=new XMLHttpRequest;o.onreadystatechange=function(){if(o.readyState==XMLHttpRequest.DONE){if(200==o.status){t.firstPage++;var s=i.getChildItemsByAjaxHTML(t,o.responseText);i.appendNewItems(s),n.info("\nloading new items: successful"),t.loadStatus&&(n.info("\nhide: spinner"),e(".loader-ellips").hide()),i.itemsLoaded=!0}else t.loadStatus&&(n.info("\nhide: spinner"),e(".loader-ellips").hide()),n.error("\nloading new items failed, HTTP response: "+o.status),i.itemsLoaded=!1}},n.info("\nloading new items from path: "+t.pagePath+t.firstPage),o.open("GET",location.origin+t.pagePath+t.firstPage+"/index.html",!0),o.send()},getChildItemsByAjaxHTML:function(e,t){var i=log4javascript.getLogger("j1.scroller.core"),o=n.createElement("html");return i.debug("\nload new items"),o.innerHTML=t,o.querySelectorAll(e.elementID+" > *")},appendNewItems:function(e){var t=log4javascript.getLogger("j1.scroller.core"),i=this,o=j1.getCookieNames(),s=j1.readCookie(o.user_translate);e.forEach(function(e){var o=i.element.id;n.getElementById(o).appendChild(e),t.debug("\nnew item appended")}),s.translationEnabled?(t.info("\ntranslation enabled: "+s.translationEnabled),t.info("\nskipped processing of dropcaps")):(t.info("\npost processing: createDropCap"),j1.core.createDropCap())},infoLastPage:function(t){e(t.lastPageInfo).insertAfter(t.elementID),e(".page-scroll-last").show()}}),e.fn[o]=function(t){return this.each(function(){e.data(this,"plugin_"+o)||e.data(this,"plugin_"+o,new r(this,t))})}}(jQuery,window,document);
@@ -390,7 +390,7 @@ function Translator(props) {
390
390
  clearInterval(dependencies_met_msDropdownJSON_loaded);
391
391
  }
392
392
  }
393
- }, 25);
393
+ }, 10);
394
394
 
395
395
  }); // END modal on 'shown'
396
396
 
@@ -12,4 +12,4 @@
12
12
  # See: https://github.com/jekyll-one/J1 Theme/blob/master/LICENSE
13
13
  # -----------------------------------------------------------------------------
14
14
  */
15
- "use strict";function Translator(o){var e,t,a=this,n=log4javascript.getLogger("j1.core.translator"),i=!!new liteURL(window.location.href).protocol.includes("https"),s=!1,r={set:function(o,e,t,a,n,i){var s=window.btoa(e),r="; expires=Thu, 01 Jan 1970 00:00:00 UTC";if(t>0){var l=new Date;l.setTime(l.getTime()+24*t*60*60*1e3),r="; expires="+l.toUTCString()}document.cookie=i?o+"="+(s||"")+r+"; Path=/; SameSite="+a+"; Domain="+n+"; Secure="+i+";":o+"="+(s||"")+r+"; Path=/; SameSite="+a+";Domain="+n+"; "},get:function(o){for(var e=o+"=",t=document.cookie.split(";"),a=0;a<t.length;a++){for(var n=t[a];" "===n.charAt(0);)n=n.substring(1,n.length);if(0===n.indexOf(e)){var i=n.substring(e.length,n.length);return window.atob(i)}}}};for(var l in n.info("\ninitializing core module: started"),n.info("\nstate: started"),this.props={contentURL:"/assets/data/translator",cookieName:"j1.user.state",cookieConsentName:"j1.user.consent",cookieStorageDays:365,cookieSameSite:"Lax",cookieSecure:i,translationEnabled:!1,disableLanguageSelector:!1,translatorName:"google",translationLanguages:"all",translationLanguage:"auto",translateAllPages:!0,hideSuggestionBox:!0,hidePoweredBy:!0,hideTopFrame:!0,dialogLanguage:"content",dialogLanguages:["en","de"],dialogContainerID:"translator-modal",xhrDataElement:"",postSelectionCallback:""},o)this.props[l]=o[l];-1!==this.props.dialogLanguage.indexOf("-")&&(this.props.dialogLanguage=this.props.dialogLanguage.split("-")[0]),this.props.dialogLanguages.includes(this.props.dialogLanguage)||(this.props.dialogLanguage=this.props.dialogLanguages[0]),this.props.xhrDataElement=this.props.xhrDataElement+"-"+this.props.dialogLanguage,n.info("\ninitializing core module: started"),n.info("\nstate: started");r.get(a.props.cookieName)||(n.info("\ninitializing translator cookie: "+a.props.cookieName),r.set(a.props.cookieName,JSON.stringify({translatorName:"google",translationEnabled:!1,translateAllPages:!0,useLanguageFromBrowser:!0,translationLanguage:"de",analysis:!0,personalization:!0}),a.props.cookieStorageDays,a.props.cookieSameSite,a.props.cookieDomain,a.props.cookieSecure));var d={documentReady:function(o){"loading"!==document.readyState?o():document.addEventListener("DOMContentLoaded",o)}};function p(o){var e,t=function o(){var e={},t=!1,a=0,n=arguments.length;"[object Boolean]"===Object.prototype.toString.call(arguments[0])&&(t=arguments[0],a++);for(var i=function(a){for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(t&&"[object Object]"===Object.prototype.toString.call(a[n])?e[n]=o(!0,e[n],a[n]):e[n]=a[n])};a<n;a++)i(arguments[a]);return e}({size:0,width:250,multiple:!1,selectedIndex:1,enableAutoFilter:!1,visibleRows:null},o);e="#"+t.selector,$.ajax({url:t.url,dataType:"json",success:function(o){var n=[];if(a.props.translationLanguages.includes("all"))n=o[t.elm];else for(var i=0;i<o[t.elm].length;i++)a.props.translationLanguages.includes(o[t.elm][i].value)&&n.push(o[t.elm][i]);t.visibleRows>n.length&&(t.visibleRows=n.length),MsDropdown.make(e,{byJson:{data:n,name:t.name,size:t.size,width:t.width,multiple:t.multiple},enableAutoFilter:t.enableAutoFilter,visibleRows:t.visibleRows})},error:function(o,e,a){n.error("\nfailed to retrieve JSON data from: "+t.url)}})}function c(){d.documentReady(function(){if(a.modal=document.getElementById(a.props.dialogContainerID),a.modal)a.$modal.modal("show");else{n.info("\nload consent modal"),a.modal=document.createElement("div"),a.modal.id=a.props.dialogContainerID,a.modal.style.display="none",a.modal.setAttribute("class","modal fade"),a.modal.setAttribute("tabindex","-1"),a.modal.setAttribute("role","dialog"),a.modal.setAttribute("aria-labelledby",a.props.dialogContainerID),document.body.append(a.modal),a.$modal=$(a.modal),a.$modal.on("show.bs.modal",function(){n.debug("\nshow.bs.modal: entered"),$.when(p({url:"/assets/data/iso-639-language-codes-flags.json",elm:"iso-639-languages",selector:"dropdownJSON",width:400,visibleRows:8})).then(function(o){n.info("\ncreating msDropdown from JSON data: finished")})}),a.$modal.on("shown.bs.modal",function(){var o,i;i=setInterval(function(){void 0!==document.getElementById("dropdownJSON").msDropdown&&((o=document.getElementById("dropdownJSON").msDropdown).length?("auto"===a.props.translationLanguage?(e=navigator.language||navigator.userLanguage,t=e.split("-")[0]):t=a.props.translationLanguage,o.selectedIndex=$("#dropdownJSON option[value="+t+"]").index(),a.props.disableLanguageSelector&&(o.disabled=!0),$("#dropdownJSON").show(),$("body").addClass("stop-scrolling"),n.info("\nmsDropdown successfully loaded in translation dialog"),clearInterval(i)):(n.error("\nno msDropdown found in translation dialog"),a.$modal.hide()))},25)}),a.$modal.on("hidden.bs.modal",function(){$("body").removeClass("stop-scrolling"),function(o,e){for(var t=Array.prototype.slice.call(arguments,2),a=o.split("."),n=a.pop(),i=0;i<a.length;i++)e=e[a[i]];e[n].apply(e,t)}(a.props.postSelectionCallback,window)});var o=a.props.contentURL+"/index.html";$.get(o).done(function(o){n.info("\nloading consent modal: successfully"),a.modal.innerHTML=o,a.modal.innerHTML=$("#"+a.props.xhrDataElement).eq(0).html(),a.modal.style.display="block",$(a.modal).modal({backdrop:"static",keyboard:!1}),a.$buttonDoNotAgree=$("#translator-buttonDoNotAgree"),a.$buttonAgree=$("#translator-buttonAgree"),a.$buttonSave=$("#translator-buttonSave"),a.$buttonAgreeAll=$("#translator-buttonAgreeAll"),n.info("\nload/initialze options from cookie"),u(),g(),$("#google-options").on("hide.bs.collapse",function(){s=!1,u()}).on("show.bs.collapse",function(){s=!0,u()}),n.info("\ninitialze button event handler"),a.$buttonDoNotAgree.click(function(){var o;(o=m()).translationEnabled=!1,r.set(a.props.cookieName,JSON.stringify(o),a.props.cookieStorageDays,a.props.cookieSameSite,a.props.cookieDomain,a.props.cookieSecure),a.$modal.modal("hide")}),a.$buttonAgree.click(function(){f()}),a.$buttonSave.click(function(){var o,e;$("#google-options").collapse("hide"),o=m(),(e=JSON.parse(r.get(a.props.cookieConsentName))).analysis=o.analysis,e.personalization=o.personalization,r.set(a.props.cookieConsentName,JSON.stringify(e),a.props.cookieStorageDays,a.props.cookieSameSite,a.props.cookieDomain,a.props.cookieSecure),r.set(a.props.cookieName,JSON.stringify(o),a.props.cookieStorageDays,a.props.cookieSameSite,a.props.cookieDomain,a.props.cookieSecure),a.$modal.modal("hide"),g()}),a.$buttonAgreeAll.click(function(){$("#google-options").collapse("hide"),f()}),a.$modal.modal("show")}).fail(function(){n.error("\nloading translator dialog (modal): failed"),n.warn("\nprobably no|wrong `contentURL` set")})}}.bind(this))}function g(){var o=a.getSettings();if(o)for(var e in o){a.$modal.find("#google-options .translator-option[data-name="+e+'] input[type="checkbox"]').prop("checked",o[e])}}function u(){s?(a.$buttonDoNotAgree.hide(),a.$buttonAgree.hide(),a.$buttonSave.show(),a.$buttonAgreeAll.show()):(a.$buttonDoNotAgree.show(),a.$buttonAgree.show(),a.$buttonSave.hide(),a.$buttonAgreeAll.hide())}function m(o){for(var e=a.$modal.find("#google-options .translator-option"),t={},n=0;n<e.length;n++){var i=e[n],s=i.getAttribute("data-name");if("necessary"===s)t[s]=!0;else if(void 0===o){var r=$(i).find('input[type="checkbox"]');t[s]=r.prop("checked")}else t[s]=!!o}return t}function f(){var o=JSON.parse(r.get(a.props.cookieConsentName)),e=JSON.parse(r.get(a.props.cookieName));e.analysis=!0,e.personalization=!0,e.translationEnabled=!0,o.analysis=e.analysis,o.personalization=e.personalization,r.set(a.props.cookieConsentName,JSON.stringify(o),a.props.cookieStorageDays,a.props.cookieSameSite,a.props.cookieDomain,a.props.cookieSecure),r.set(a.props.cookieName,JSON.stringify(e),a.props.cookieStorageDays,a.props.cookieSameSite,a.props.cookieDomain,a.props.cookieSecure),a.$modal.modal("hide")}this.showDialog=function(){c()},this.getSettings=function(o){if(r.get(a.props.cookieName)){var e=JSON.parse(r.get(a.props.cookieName));return void 0===o?e:!!e&&e[o]}},n.info("\ninitializing core module finished"),n.info("\nstate: finished")}
15
+ "use strict";function Translator(o){var e,a,t=this,n=log4javascript.getLogger("j1.core.translator"),i=!!new liteURL(window.location.href).protocol.includes("https"),s=!1,r={set:function(o,e,a,t,n,i){var s=window.btoa(e),r="; expires=Thu, 01 Jan 1970 00:00:00 UTC";if(a>0){var l=new Date;l.setTime(l.getTime()+864e5*a),r="; expires="+l.toUTCString()}i?n?document.cookie=o+"="+(s||"")+r+"; Path=/; SameSite="+t+"; Domain="+n+"; Secure="+i+";":document.cookie=o+"="+(s||"")+r+"; Path=/; SameSite="+t+"; Secure="+i+";":n?document.cookie=o+"="+(s||"")+r+"; Path=/; SameSite="+t+";Domain="+n+"; ":document.cookie=o+"="+(s||"")+r+"; Path=/; SameSite="+t+";"},get:function(o){for(var e=o+"=",a=document.cookie.split(";"),t=0;t<a.length;t++){for(var n=a[t];" "===n.charAt(0);)n=n.substring(1,n.length);if(0===n.indexOf(e)){var i=n.substring(e.length,n.length);return window.atob(i)}}}};for(var l in this.props={contentURL:"/assets/data/translator",cookieName:"j1.user.state",cookieConsentName:"j1.user.consent",cookieStorageDays:365,cookieSameSite:"Lax",cookieSecure:i,translationEnabled:!1,disableLanguageSelector:!1,translatorName:"google",translationLanguages:"all",translationLanguage:"auto",translateAllPages:!0,hideSuggestionBox:!0,hidePoweredBy:!0,hideTopFrame:!0,dialogLanguage:"content",dialogLanguages:["en","de"],dialogContainerID:"translator-modal",xhrDataElement:"",postSelectionCallback:""},o)this.props[l]=o[l];-1!==this.props.dialogLanguage.indexOf("-")&&(this.props.dialogLanguage=this.props.dialogLanguage.split("-")[0]),this.props.dialogLanguages.includes(this.props.dialogLanguage)||(this.props.dialogLanguage=this.props.dialogLanguages[0]),this.props.xhrDataElement=this.props.xhrDataElement+"-"+this.props.dialogLanguage,n.info("\ninitializing core module: started"),n.debug("\nstate: started"),r.get(t.props.cookieName)||(n.info("\ninitializing translator cookie: "+t.props.cookieName),r.set(t.props.cookieName,JSON.stringify({translatorName:"google",translationEnabled:!1,translateAllPages:!0,useLanguageFromBrowser:!0,translationLanguage:"de",analysis:!0,personalization:!0}),t.props.cookieStorageDays,t.props.cookieSameSite,t.props.cookieDomain,t.props.cookieSecure));var p={documentReady:function(o){"loading"!==document.readyState?o():document.addEventListener("DOMContentLoaded",o)}};function d(){var o=t.getSettings();if(o)for(var e in o)t.$modal.find("#google-options .translator-option[data-name="+e+'] input[type="checkbox"]').prop("checked",o[e])}function g(){s?(t.$buttonDoNotAgree.hide(),t.$buttonAgree.hide(),t.$buttonSave.show(),t.$buttonAgreeAll.show()):(t.$buttonDoNotAgree.show(),t.$buttonAgree.show(),t.$buttonSave.hide(),t.$buttonAgreeAll.hide())}function c(o){for(var e=t.$modal.find("#google-options .translator-option"),a={},n=0;n<e.length;n++){var i=e[n],s=i.getAttribute("data-name");if("necessary"===s)a[s]=!0;else if(void 0===o){var r=$(i).find('input[type="checkbox"]');a[s]=r.prop("checked")}else a[s]=!!o}return a}function u(){var o=JSON.parse(r.get(t.props.cookieConsentName)),e=JSON.parse(r.get(t.props.cookieName));e.analysis=!0,e.personalization=!0,e.translationEnabled=!0,o.analysis=e.analysis,o.personalization=e.personalization,r.set(t.props.cookieConsentName,JSON.stringify(o),t.props.cookieStorageDays,t.props.cookieSameSite,t.props.cookieDomain,t.props.cookieSecure),r.set(t.props.cookieName,JSON.stringify(e),t.props.cookieStorageDays,t.props.cookieSameSite,t.props.cookieDomain,t.props.cookieSecure),t.$modal.modal("hide")}this.showDialog=function(){!function o(){p.documentReady((function(){if(t.modal=document.getElementById(t.props.dialogContainerID),t.modal)t.$modal.modal("show");else{n.info("\nload consent modal"),t.modal=document.createElement("div"),t.modal.id=t.props.dialogContainerID,t.modal.style.display="none",t.modal.setAttribute("class","modal fade"),t.modal.setAttribute("tabindex","-1"),t.modal.setAttribute("role","dialog"),t.modal.setAttribute("aria-labelledby",t.props.dialogContainerID),document.body.append(t.modal),t.$modal=$(t.modal),t.$modal.on("show.bs.modal",function(){var o,e,a;n.debug("\nshow.bs.modal: entered"),$.when(void(e="#"+(a=function o(){var e={},a=!1,t=0,n=arguments.length;for("[object Boolean]"===Object.prototype.toString.call(arguments[0])&&(a=arguments[0],t++);t<n;t++){var i=arguments[t];!function(t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(a&&"[object Object]"===Object.prototype.toString.call(t[n])?e[n]=o(!0,e[n],t[n]):e[n]=t[n])}(i)}return e}({size:0,width:250,multiple:!1,selectedIndex:1,enableAutoFilter:!1,visibleRows:null},o={url:"/assets/data/iso-639-language-codes-flags.json",elm:"iso-639-languages",selector:"dropdownJSON",width:400,visibleRows:8})).selector,$.ajax({url:a.url,dataType:"json",success:function(o){var n=[];if(t.props.translationLanguages.includes("all"))n=o[a.elm];else for(var i=0;i<o[a.elm].length;i++)t.props.translationLanguages.includes(o[a.elm][i].value)&&n.push(o[a.elm][i]);a.visibleRows>n.length&&(a.visibleRows=n.length),MsDropdown.make(e,{byJson:{data:n,name:a.name,size:a.size,width:a.width,multiple:a.multiple},enableAutoFilter:a.enableAutoFilter,visibleRows:a.visibleRows})},error:function(o,e,t){n.error("\nfailed to retrieve JSON data from: "+a.url)}}))).then(function(o){n.info("\ncreating msDropdown from JSON data: finished")})}),t.$modal.on("shown.bs.modal",function(){var o,i;i=setInterval(function(){void 0!==document.getElementById("dropdownJSON").msDropdown&&((o=document.getElementById("dropdownJSON").msDropdown).length?(a="auto"===t.props.translationLanguage?(e=navigator.language||navigator.userLanguage).split("-")[0]:t.props.translationLanguage,o.selectedIndex=$("#dropdownJSON option[value="+a+"]").index(),t.props.disableLanguageSelector&&(o.disabled=!0),$("#dropdownJSON").show(),$("body").addClass("stop-scrolling"),n.info("\nmsDropdown successfully loaded in translation dialog"),clearInterval(i)):(n.error("\nno msDropdown found in translation dialog"),t.$modal.hide()))},10)}),t.$modal.on("hidden.bs.modal",function(){$("body").removeClass("stop-scrolling"),function o(e,a){for(var t=Array.prototype.slice.call(arguments,2),n=e.split("."),i=n.pop(),s=0;s<n.length;s++)a=a[n[s]];return a[i].apply(a,t)}(t.props.postSelectionCallback,window)});var o=t.props.contentURL+"/index.html";$.get(o).done(function(o){n.info("\nloading consent modal: successfully"),t.modal.innerHTML=o,t.modal.innerHTML=$("#"+t.props.xhrDataElement).eq(0).html(),t.modal.style.display="block",$(t.modal).modal({backdrop:"static",keyboard:!1}),t.$buttonDoNotAgree=$("#translator-buttonDoNotAgree"),t.$buttonAgree=$("#translator-buttonAgree"),t.$buttonSave=$("#translator-buttonSave"),t.$buttonAgreeAll=$("#translator-buttonAgreeAll"),n.info("\nload/initialze options from cookie"),g(),d(),$("#google-options").on("hide.bs.collapse",function(){s=!1,g()}).on("show.bs.collapse",function(){s=!0,g()}),n.info("\ninitialze button event handler"),t.$buttonDoNotAgree.click(function(){var o;o=c(),o.translationEnabled=!1,r.set(t.props.cookieName,JSON.stringify(o),t.props.cookieStorageDays,t.props.cookieSameSite,t.props.cookieDomain,t.props.cookieSecure),t.$modal.modal("hide")}),t.$buttonAgree.click(function(){u()}),t.$buttonSave.click(function(){var o,e;$("#google-options").collapse("hide"),o=c(),(e=JSON.parse(r.get(t.props.cookieConsentName))).analysis=o.analysis,e.personalization=o.personalization,r.set(t.props.cookieConsentName,JSON.stringify(e),t.props.cookieStorageDays,t.props.cookieSameSite,t.props.cookieDomain,t.props.cookieSecure),r.set(t.props.cookieName,JSON.stringify(o),t.props.cookieStorageDays,t.props.cookieSameSite,t.props.cookieDomain,t.props.cookieSecure),t.$modal.modal("hide"),d()}),t.$buttonAgreeAll.click(function(){$("#google-options").collapse("hide"),u()}),t.$modal.modal("show")}).fail(function(){n.error("\nloading translator dialog (modal): failed"),n.warn("\nprobably no|wrong `contentURL` set")})}}).bind(this))}()},this.getSettings=function(o){if(r.get(t.props.cookieName)){var e=JSON.parse(r.get(t.props.cookieName));return void 0===o?e:!!e&&e[o]}},n.info("\ninitializing core module finished"),n.debug("\nstate: finished")}
data/lib/j1/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module J1
2
- VERSION = '2023.2.6'
2
+ VERSION = '2023.3.0'
3
3
  end
@@ -75,11 +75,11 @@ end
75
75
  # Specify the THEME GEM used for the project
76
76
 
77
77
  # Loaded from RubyGems
78
- gem 'j1-template', '~> 2023.2.0'
78
+ gem 'j1-template', '~> 2023.3.0'
79
79
 
80
80
  # Loaded from gem.fury.io
81
81
  #source 'https://gem.fury.io/jekyll-one-org/' do
82
- # gem 'j1-template', '~> 2023.2.0'
82
+ # gem 'j1-template', '~> 2023.3.0'
83
83
  #end
84
84
 
85
85
  # ------------------------------------------------------------------------------
@@ -379,7 +379,7 @@ This command creates a **initial** project in folder **my-starter**.
379
379
  2023-02-28 18:12:12 - GENERATE: Resolving dependencies...
380
380
  2023-02-28 18:12:12 - GENERATE: Using bundler 2.3.7
381
381
  ...
382
- 2023-02-28 18:12:12 - GENERATE: Using j1-template 2023.2.6
382
+ 2023-02-28 18:12:12 - GENERATE: Using j1-template 2023.3.0
383
383
  2023-02-28 18:12:12 - GENERATE: Bundle complete! 31 Gemfile dependencies, 78 gems now installed.
384
384
  2023-02-28 18:12:12 - GENERATE: Bundled gems are installed into `../../.gem`
385
385
  2023-02-28 18:12:12 - GENERATE: C:/Users/xxx/.gem/ruby/3.1.0;C:/DevTools/Ruby31-x64/lib/ruby/gems/3.1.0;
@@ -415,7 +415,7 @@ commands are available as well.
415
415
  2023-02-28 18:17:48 - SETUP: Initialize the project ...
416
416
  2023-02-28 18:17:48 - SETUP: Be patient, this will take a while ...
417
417
  2023-02-28 18:17:49 - SETUP:
418
- 2023-02-28 18:17:49 - SETUP: > j1@2023.2.6 setup C:\Users\xxx\j1-projects\my-starter
418
+ 2023-02-28 18:17:49 - SETUP: > j1@2023.3.0 setup C:\Users\xxx\j1-projects\my-starter
419
419
  2023-02-28 18:17:49 - SETUP: > npm --silent run setup-start && npm --silent run setup-base && run-s -s setup:*
420
420
  2023-02-28 18:17:49 - SETUP:
421
421
  2023-02-28 18:17:50 - SETUP: Setup project for first use ..
@@ -460,7 +460,7 @@ browser. Let's start the journey ...
460
460
  Check setup state of the J1 project ...
461
461
  2023-02-28 18:26:18 - SITE: Starting up your site ...
462
462
  2023-02-28 18:26:18 - SITE:
463
- 2023-02-28 18:26:18 - SITE: > j1@2023.2.6 j1-site C:\Users\jadams\j1-projects\my-starter
463
+ 2023-02-28 18:26:18 - SITE: > j1@2023.3.0 j1-site C:\Users\jadams\j1-projects\my-starter
464
464
  2023-02-28 18:26:18 - SITE: > run-p -s j1-site:*
465
465
  2023-02-28 18:26:18 - SITE:
466
466
  2023-02-28 18:26:20 - SITE: Startup UTILSRV ..
@@ -499,7 +499,7 @@ Check setup state of the J1 project ...
499
499
  REBUILD: Rebuild the projects website ...
500
500
  REBUILD: Be patient, this will take a while ...
501
501
  2023-02-28 18:45:09 - REBUILD:
502
- 2023-02-28 18:45:09 - REBUILD: > j1@2023.2.6 rebuild C:\Users\xxx\j1-projects\my-starter
502
+ 2023-02-28 18:45:09 - REBUILD: > j1@2023.3.0 rebuild C:\Users\xxx\j1-projects\my-starter
503
503
  2023-02-28 18:45:09 - REBUILD: > run-s -s rebuild:* && run-s -s post-rebuild:*
504
504
  2023-02-28 18:45:09 - REBUILD:
505
505
  2023-02-28 18:45:10 - REBUILD: Rebuild site incremental ..
@@ -547,7 +547,7 @@ using Lerna for all packages:
547
547
  2023-02-28 18:29:07 - RESET: Reset the project to factory state ...
548
548
  2023-02-28 18:29:07 - RESET: Be patient, this will take a while ...
549
549
  2023-02-28 18:29:08 - RESET:
550
- 2023-02-28 18:29:08 - RESET: > j1@2023.2.6 reset C:\Users\xxx\j1-projects\my-starter
550
+ 2023-02-28 18:29:08 - RESET: > j1@2023.3.0 reset C:\Users\xxx\j1-projects\my-starter
551
551
  2023-02-28 18:29:08 - RESET: > run-s -s reset:*
552
552
  2023-02-28 18:29:08 - RESET:
553
553
  2023-02-28 18:29:08 - RESET: Reset project to factory state ..
@@ -53,7 +53,7 @@ environment: development
53
53
  # ------------------------------------------------------------------------------
54
54
  # Sets the build version of the site
55
55
  #
56
- version: 2023.2.6
56
+ version: 2023.3.0
57
57
 
58
58
  # copyright
59
59
  # ------------------------------------------------------------------------------
@@ -682,6 +682,7 @@ defaults:
682
682
 
683
683
  toc: true
684
684
  fab_menu_id: open_toc
685
+ comments: false
685
686
  scrollbar: false
686
687
  personalization: false
687
688
  exclude_from_search: false
@@ -725,6 +726,7 @@ defaults:
725
726
 
726
727
  toc: true
727
728
  fab_menu_id: open_toc
729
+ comments: false
728
730
  scrollbar: false
729
731
  page_navigation: true
730
732
  personalization: false
@@ -763,6 +765,7 @@ defaults:
763
765
 
764
766
  toc: true
765
767
  fab_menu_id: open_toc
768
+ comments: false
766
769
  scrollbar: false
767
770
  page_navigation: true
768
771
  personalization: false
@@ -11,6 +11,9 @@
11
11
  # See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
12
12
  #
13
13
  # ------------------------------------------------------------------------------
14
+ # NOTE: All banner id's has to be prefixed by 'banner_'
15
+ #
16
+ # ------------------------------------------------------------------------------
14
17
 
15
18
  # ------------------------------------------------------------------------------
16
19
  # Description
@@ -41,7 +44,7 @@ settings:
41
44
  banner:
42
45
  enabled: true
43
46
 
44
- id: divider-1
47
+ id: banner_divider_1
45
48
  comment: Divider Banner 1
46
49
  type: divider
47
50
 
@@ -49,7 +52,7 @@ settings:
49
52
  banner:
50
53
  enabled: true
51
54
 
52
- id: divider-2
55
+ id: banner_divider_2
53
56
  comment: Divider Banner 2
54
57
  type: divider
55
58
 
@@ -70,7 +73,7 @@ settings:
70
73
  banner:
71
74
  enabled: true
72
75
 
73
- id: home_teaser_banner
76
+ id: banner_home_teaser
74
77
  comment: Top teaser shown on home page
75
78
  type: teaser
76
79
  badges: false
@@ -189,7 +192,7 @@ settings:
189
192
  banner:
190
193
  enabled: true
191
194
 
192
- id: home_parallax_banner
195
+ id: banner_home_parallax
193
196
  comment: Main parallax banner shown on home page
194
197
  type: parallax
195
198
  properties:
@@ -232,7 +235,7 @@ settings:
232
235
  banner:
233
236
  enabled: true
234
237
 
235
- id: home_image_banner
238
+ id: banner_home_image
236
239
  comment: Image banner shown on home page
237
240
  type: image
238
241
  properties: mt-6 mb-6
@@ -25,12 +25,13 @@ description:
25
25
  # DEFAULT settings
26
26
  #
27
27
  defaults:
28
+ enabled: true
28
29
 
29
30
  # ----------------------------------------------------------------------------
30
31
  # FOOTER global settings
31
32
  #
33
+ active_footer: footer_uno # active footer on all pages
32
34
  data_path: /assets/data/footer/index.html
33
- container-id: j1_footer
34
35
 
35
36
  # ----------------------------------------------------------------------------
36
37
  # FOOTER properties
@@ -38,10 +39,9 @@ defaults:
38
39
  footer:
39
40
  enabled: true
40
41
  id: default-footer
42
+ comment: Default Footer
41
43
  wave: false
42
44
  wave_color: "#212121"
43
- comment: Default Footer
44
- theme: footer-light-theme
45
45
 
46
46
  # --------------------------------------------------------------------------
47
47
  # ISSUE settings
@@ -11,7 +11,9 @@
11
11
  # See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
12
12
  #
13
13
  # ------------------------------------------------------------------------------
14
-
14
+ # NOTE: All footer id's has to be prefixed by 'footer_'
15
+ #
16
+ # ------------------------------------------------------------------------------
15
17
  # ------------------------------------------------------------------------------
16
18
  # Description (used for J1 CC only)
17
19
  #
@@ -25,6 +27,9 @@ description:
25
27
  # SETTINGS
26
28
  #
27
29
  settings:
30
+ enabled: true
31
+
32
+ active_footer: footer_uno
28
33
 
29
34
  # ----------------------------------------------------------------------------
30
35
  # FOOTER properties
@@ -32,15 +37,14 @@ settings:
32
37
  footers:
33
38
 
34
39
  # --------------------------------------------------------------------------
35
- # Footer UNO light
40
+ # Footer UNO
36
41
  #
37
- - name: Footer UNO light
42
+ - name: Footer UNO
38
43
  footer:
39
44
  enabled: true
40
45
 
41
- id: footer-en
46
+ id: footer_uno
42
47
  comment: Footer UNO EN-EN
43
- theme: footer-light-theme
44
48
  properties: mt-4
45
49
 
46
50
  wave: