j1-template 2023.0.17 → 2023.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (269) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +2 -2
  3. data/_includes/themes/j1/modules/attics/generator.html +3 -1
  4. data/_includes/themes/j1/modules/navigator/generator.html +2 -2
  5. data/_includes/themes/j1/procedures/collections/create_collection_article_preview.proc +1 -1
  6. data/_layouts/{paginator/autopage_category.html → autopage_category.html} +1 -1
  7. data/_layouts/{paginator/autopage_collection.html → autopage_collection.html} +1 -6
  8. data/_layouts/{paginator/autopage_collections_tags.html → autopage_collections_tags.html} +1 -1
  9. data/_layouts/category.html +67 -0
  10. data/_layouts/readme +2 -0
  11. data/assets/data/banner.html +2 -2
  12. data/assets/data/masonry.4.html +213 -0
  13. data/assets/data/masonry.html +207 -0
  14. data/assets/data/panel.html +1 -1
  15. data/assets/data/quicklinks.html +12 -12
  16. data/assets/data/slick.html +192 -0
  17. data/assets/themes/j1/adapter/js/attic.js +31 -16
  18. data/assets/themes/j1/adapter/js/j1.js +55 -21
  19. data/assets/themes/j1/adapter/js/masonry.js +111 -49
  20. data/assets/themes/j1/adapter/js/mmenu.js +4 -3
  21. data/assets/themes/j1/adapter/js/navigator.js +69 -19
  22. data/assets/themes/j1/adapter/js/slick.3.js +365 -0
  23. data/assets/themes/j1/adapter/js/slick.js +188 -44
  24. data/assets/themes/j1/adapter/js/toccer.js +27 -14
  25. data/assets/themes/j1/adapter/js/waves.js +3 -1
  26. data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +47 -364
  27. data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +2 -2
  28. data/assets/themes/j1/core/js/template.js +1 -3
  29. data/assets/themes/j1/core/js/template.min.js +1 -1
  30. data/assets/themes/j1/core/js/template.min.js.map +1 -1
  31. data/assets/themes/j1/modules/masonry/css/theme/uno.css +35 -0
  32. data/assets/themes/j1/modules/masonry/css/theme/uno.min.css +15 -0
  33. data/assets/themes/j1/modules/mmenuLight/css/theme/uno/mmenu.css +3 -3
  34. data/assets/themes/j1/modules/mmenuLight/css/theme/uno/mmenu.min.css +1 -1
  35. data/assets/themes/j1/modules/slick/lightbox/LICENSE +20 -0
  36. data/assets/themes/j1/modules/slick/lightbox/README.md +133 -0
  37. data/assets/themes/j1/modules/slick/lightbox/css/slick-lightbox.css +128 -0
  38. data/assets/themes/j1/modules/slick/lightbox/css/slick-lightbox.min.css +1 -0
  39. data/assets/themes/j1/modules/slick/lightbox/js/slick-lightbox.js +353 -0
  40. data/assets/themes/j1/modules/slick/lightbox/js/slick-lightbox.min.js +2 -0
  41. data/assets/themes/j1/modules/slick/lightbox/js/slick-lightbox.min.js.map +1 -0
  42. data/assets/themes/j1/modules/slick/{README.md → slider/README.md} +13 -14
  43. data/assets/themes/j1/modules/slick/{css → slider/css}/slick.css +16 -10
  44. data/assets/themes/j1/modules/slick/slider/css/slick.min.css +15 -0
  45. data/assets/themes/j1/modules/slick/slider/css/theme/uno.css +256 -0
  46. data/assets/themes/j1/modules/slick/slider/css/theme/uno.min.css +15 -0
  47. data/assets/themes/j1/modules/slick/{fonts → slider/fonts}/slick.svg +14 -14
  48. data/assets/themes/j1/modules/slick/{js → slider/js}/slick.js +6 -1
  49. data/lib/j1/patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/3.2/fastfilereaderext.so +0 -0
  50. data/lib/j1/patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/3.2/rubyeventmachine.so +0 -0
  51. data/lib/j1/version.rb +1 -1
  52. data/lib/j1_app/log4r/yamlconfigurator.rb +41 -41
  53. data/lib/starter_web/Gemfile +4 -4
  54. data/lib/starter_web/README.md +142 -143
  55. data/lib/starter_web/_config.yml +31 -25
  56. data/lib/starter_web/_data/blocks/defaults/banner.yml +4 -4
  57. data/lib/starter_web/_data/blocks/defaults/panel.yml +11 -11
  58. data/lib/starter_web/_data/blocks/footer.yml +2 -2
  59. data/lib/starter_web/_data/blocks/panel.yml +8 -8
  60. data/lib/starter_web/_data/layouts/collection.yml +9 -0
  61. data/lib/starter_web/_data/layouts/home.yml +12 -0
  62. data/lib/starter_web/_data/layouts/page.yml +36 -3
  63. data/lib/starter_web/_data/layouts/post.yml +36 -3
  64. data/lib/starter_web/_data/layouts/raw.yml +35 -3
  65. data/lib/starter_web/_data/modules/advertising.yml +1 -2
  66. data/lib/starter_web/_data/modules/analytics.yml +1 -2
  67. data/lib/starter_web/_data/modules/attics.yml +2 -2
  68. data/lib/starter_web/_data/modules/blog_navigator.yml +1 -2
  69. data/lib/starter_web/_data/modules/carousel.yml +1 -2
  70. data/lib/starter_web/_data/modules/comments.yml +1 -2
  71. data/lib/starter_web/_data/modules/cookieconsent.yml +1 -2
  72. data/lib/starter_web/_data/modules/cookies.yml +1 -2
  73. data/lib/starter_web/_data/modules/defaults/advertising.yml +1 -2
  74. data/lib/starter_web/_data/modules/defaults/analytics.yml +1 -2
  75. data/lib/starter_web/_data/modules/defaults/attics.yml +2 -2
  76. data/lib/starter_web/_data/modules/defaults/authentication.yml +1 -2
  77. data/lib/starter_web/_data/modules/defaults/blog_navigator.yml +1 -1
  78. data/lib/starter_web/_data/modules/defaults/carousel.yml +1 -2
  79. data/lib/starter_web/_data/modules/defaults/comments.yml +1 -1
  80. data/lib/starter_web/_data/modules/defaults/cookieconsent.yml +1 -2
  81. data/lib/starter_web/_data/modules/defaults/cookies.yml +1 -2
  82. data/lib/starter_web/_data/modules/defaults/dropdowns.yml +1 -2
  83. data/lib/starter_web/_data/modules/defaults/fab.yml +1 -2
  84. data/lib/starter_web/_data/modules/defaults/framer.yml +1 -2
  85. data/lib/starter_web/_data/modules/defaults/justifiedGallery.yml +1 -2
  86. data/lib/starter_web/_data/modules/defaults/lightGallery.yml +1 -2
  87. data/lib/starter_web/_data/modules/defaults/lightbox.yml +1 -2
  88. data/lib/starter_web/_data/modules/defaults/log4javascript.yml +1 -2
  89. data/lib/starter_web/_data/modules/defaults/log4r.yml +7 -9
  90. data/lib/starter_web/_data/modules/defaults/lunr.yml +1 -2
  91. data/lib/starter_web/_data/modules/defaults/masonry.yml +52 -23
  92. data/lib/starter_web/_data/modules/defaults/navigator.yml +13 -12
  93. data/lib/starter_web/_data/modules/defaults/nbinteract.yml +1 -2
  94. data/lib/starter_web/_data/modules/defaults/particles.yml +1 -2
  95. data/lib/starter_web/_data/modules/defaults/rangeSlider.yml +1 -2
  96. data/lib/starter_web/_data/modules/defaults/rtable.yml +1 -2
  97. data/lib/starter_web/_data/modules/defaults/{scoller.yml → scroller.yml} +8 -2
  98. data/lib/starter_web/_data/modules/defaults/slick.yml +493 -0
  99. data/lib/starter_web/_data/modules/defaults/themer.yml +1 -2
  100. data/lib/starter_web/_data/modules/defaults/toccer.yml +2 -3
  101. data/lib/starter_web/_data/modules/defaults/translator.yml +2 -3
  102. data/lib/starter_web/_data/modules/defaults/waves.yml +1 -2
  103. data/lib/starter_web/_data/modules/dropdowns.yml +1 -2
  104. data/lib/starter_web/_data/modules/fab.yml +1 -2
  105. data/lib/starter_web/_data/modules/framer.yml +1 -2
  106. data/lib/starter_web/_data/modules/justifiedGallery.yml +1 -2
  107. data/lib/starter_web/_data/modules/lightGallery.yml +1 -2
  108. data/lib/starter_web/_data/modules/lightbox.yml +1 -2
  109. data/lib/starter_web/_data/modules/log4r.yml +140 -7
  110. data/lib/starter_web/_data/modules/lunr.yml +1 -2
  111. data/lib/starter_web/_data/modules/masonry.yml +178 -23
  112. data/lib/starter_web/_data/modules/masterslider.yml +2 -1
  113. data/lib/starter_web/_data/modules/navigator.yml +13 -25
  114. data/lib/starter_web/_data/modules/navigator_menu.yml +31 -0
  115. data/lib/starter_web/_data/modules/particles.yml +1 -2
  116. data/lib/starter_web/_data/modules/rangeSlider.yml +1 -2
  117. data/lib/starter_web/_data/modules/rtable.yml +1 -2
  118. data/lib/starter_web/_data/modules/scroller.yml +8 -2
  119. data/lib/starter_web/_data/modules/slick.yml +295 -0
  120. data/lib/starter_web/_data/modules/themer.yml +1 -2
  121. data/lib/starter_web/_data/modules/toccer.yml +1 -2
  122. data/lib/starter_web/_data/modules/translator.yml +1 -2
  123. data/lib/starter_web/_data/modules/waves.yml +1 -2
  124. data/lib/starter_web/_data/plugins/defaults/paginator.yml +23 -4
  125. data/lib/starter_web/_data/plugins/paginator.yml +10 -13
  126. data/lib/starter_web/_data/resources.yml +35 -29
  127. data/lib/starter_web/_data/templates/feed.xml +1 -1
  128. data/lib/starter_web/_data/utilities/defaults/util_srv.yml +2 -2
  129. data/lib/starter_web/_data/utilities/util_srv.yml +2 -3
  130. data/lib/starter_web/_includes/custom/templates/custom_header.html +76 -0
  131. data/lib/starter_web/_plugins/asciidoctor/masonry-block.rb +50 -0
  132. data/lib/starter_web/_plugins/asciidoctor/masterslider-block.rb +6 -5
  133. data/lib/starter_web/_plugins/asciidoctor/slick-block.rb +49 -0
  134. data/lib/starter_web/_plugins/index/lunr.rb +1 -1
  135. data/lib/starter_web/assets/images/custom/header/avatar.svg +248 -0
  136. data/lib/starter_web/assets/images/custom/header/family.svg +2209 -0
  137. data/lib/starter_web/assets/images/parsa/customers/200x150/img1.png +0 -0
  138. data/lib/starter_web/assets/images/parsa/customers/200x150/img2.png +0 -0
  139. data/lib/starter_web/assets/images/parsa/customers/200x150/img3.png +0 -0
  140. data/lib/starter_web/assets/images/parsa/customers/200x150/img4.png +0 -0
  141. data/lib/starter_web/assets/images/parsa/customers/200x150/img5.png +0 -0
  142. data/lib/starter_web/assets/images/parsa/customers/200x150/img6.png +0 -0
  143. data/lib/starter_web/assets/images/parsa/customers/200x150/img7.png +0 -0
  144. data/lib/starter_web/assets/images/parsa/customers/200x150/img8.png +0 -0
  145. data/lib/starter_web/assets/images/parsa/customers/200x150/img9.png +0 -0
  146. data/lib/starter_web/assets/images/parsa/customers/client-1.png +0 -0
  147. data/lib/starter_web/assets/images/parsa/customers/client-2.png +0 -0
  148. data/lib/starter_web/assets/images/parsa/customers/client-3.png +0 -0
  149. data/lib/starter_web/assets/images/parsa/customers/client-4.png +0 -0
  150. data/lib/starter_web/assets/images/parsa/customers/client-5.png +0 -0
  151. data/lib/starter_web/assets/images/parsa/customers/client-6.png +0 -0
  152. data/lib/starter_web/assets/images/parsa/customers/client-7.png +0 -0
  153. data/lib/starter_web/assets/images/parsa/icons/close-icon.svg +1 -0
  154. data/lib/starter_web/assets/images/parsa/icons/favicon.ico +0 -0
  155. data/lib/starter_web/assets/images/parsa/icons/icon.png +0 -0
  156. data/lib/starter_web/assets/images/parsa/icons/icon.svg +152 -0
  157. data/lib/starter_web/assets/images/parsa/icons/logo.svg +172 -0
  158. data/lib/starter_web/assets/images/parsa/icons/up.svg +1 -0
  159. data/lib/starter_web/assets/images/parsa/masthead/19-02-_2023_09-05-46.jpg +0 -0
  160. data/lib/starter_web/assets/images/parsa/masthead/banner-img.png +0 -0
  161. data/lib/starter_web/assets/images/parsa/pages/1920x1280/author.jpg +0 -0
  162. data/lib/starter_web/assets/images/parsa/pages/1920x1280/contact.jpg +0 -0
  163. data/lib/starter_web/assets/images/parsa/pages/author.jpg +0 -0
  164. data/lib/starter_web/assets/images/parsa/pages/contact.jpg +0 -0
  165. data/lib/starter_web/assets/images/parsa/partners/scalable/facebook.svg +34 -0
  166. data/lib/starter_web/assets/images/parsa/partners/scalable/google.svg +35 -0
  167. data/lib/starter_web/assets/images/parsa/partners/scalable/ibm.svg +24 -0
  168. data/lib/starter_web/assets/images/parsa/partners/scalable/microsoft.svg +42 -0
  169. data/lib/starter_web/assets/images/parsa/portfolio/1.jpg +0 -0
  170. data/lib/starter_web/assets/images/parsa/portfolio/2.jpg +0 -0
  171. data/lib/starter_web/assets/images/parsa/portfolio/3.jpg +0 -0
  172. data/lib/starter_web/assets/images/parsa/portfolio/4.jpg +0 -0
  173. data/lib/starter_web/assets/images/parsa/portfolio/5.jpg +0 -0
  174. data/lib/starter_web/assets/images/parsa/portfolio/6.jpg +0 -0
  175. data/lib/starter_web/assets/images/parsa/posts/1280x1024/post-img.jpg +0 -0
  176. data/lib/starter_web/assets/images/parsa/posts/1280x1024/post-single.jpg +0 -0
  177. data/lib/starter_web/assets/images/parsa/posts/featured/post-1.jpg +0 -0
  178. data/lib/starter_web/assets/images/parsa/posts/featured/post-2.jpg +0 -0
  179. data/lib/starter_web/assets/images/parsa/posts/featured/post-3.jpg +0 -0
  180. data/lib/starter_web/assets/images/parsa/posts/featured/post-4.jpg +0 -0
  181. data/lib/starter_web/assets/images/parsa/posts/featured/post-5.jpg +0 -0
  182. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-1.jpg +0 -0
  183. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-10.jpg +0 -0
  184. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-11.jpg +0 -0
  185. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-12.jpg +0 -0
  186. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-13.jpg +0 -0
  187. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-2.jpg +0 -0
  188. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-3.jpg +0 -0
  189. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-4.jpg +0 -0
  190. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-5.jpg +0 -0
  191. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-6.jpg +0 -0
  192. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-7.jpg +0 -0
  193. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-8.jpg +0 -0
  194. data/lib/starter_web/assets/images/parsa/posts/natural_food/post-9.jpg +0 -0
  195. data/lib/starter_web/assets/images/parsa/posts/post-img.jpg +0 -0
  196. data/lib/starter_web/assets/images/parsa/posts/post-single.jpg +0 -0
  197. data/lib/starter_web/assets/images/parsa/promo/home/screenshot.jpg +0 -0
  198. data/lib/starter_web/collections/_biography/a-life-in-questions.adoc +7 -3
  199. data/lib/starter_web/collections/_biography/becoming.adoc +6 -3
  200. data/lib/starter_web/collections/_biography/born-to-run.adoc +6 -3
  201. data/lib/starter_web/collections/_biography/forty-autumns.adoc +6 -2
  202. data/lib/starter_web/collections/_biography/not-dead-yet.adoc +6 -3
  203. data/lib/starter_web/collections/_biography/princess-diarist-the.adoc +6 -2
  204. data/lib/starter_web/collections/_biography/when-breath-becomes-air.adoc +6 -3
  205. data/lib/starter_web/collections/_fantasy/harry-potter-deathly-hallows.adoc +82 -0
  206. data/lib/starter_web/collections/_fantasy/harry-potter-philosophers-stone.adoc +82 -0
  207. data/lib/starter_web/collections/_fantasy/mistborn-trilogy.adoc +80 -0
  208. data/lib/starter_web/collections/_fantasy/ready-player-one.adoc +82 -0
  209. data/lib/starter_web/collections/_fantasy/sword-of-destiny.adoc +80 -0
  210. data/lib/starter_web/collections/_fantasy/terry-pratchet-diary-2017.adoc +78 -0
  211. data/lib/starter_web/collections/_romance/breath-of-snow-and-ashes-a.adoc +86 -0
  212. data/lib/starter_web/collections/_romance/dressmaker-the.adoc +79 -0
  213. data/lib/starter_web/collections/_romance/fiery-cross-the.adoc +87 -0
  214. data/lib/starter_web/collections/_romance/it-ends-with-us.adoc +84 -0
  215. data/lib/starter_web/collections/_romance/outlander-novel.adoc +96 -0
  216. data/lib/starter_web/collections/_romance/virgins-outlander-short-story.adoc +80 -0
  217. data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +49 -6
  218. data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.adoc +0 -13
  219. data/lib/starter_web/collections/posts/public/series/_posts/2022-08-01-organize-your-life.adoc +118 -0
  220. data/lib/starter_web/collections/posts/public/series/_posts/2022-08-02-organize-your-life.adoc +118 -0
  221. data/lib/starter_web/collections/posts/public/series/_posts/2022-08-03-organize-your-life.adoc +118 -0
  222. data/lib/starter_web/collections/posts/public/series/_posts/2022-09-01-organize-your-life.adoc +117 -0
  223. data/lib/starter_web/collections/posts/public/series/_posts/2022-09-02-organize-your-life.adoc +117 -0
  224. data/lib/starter_web/dot.bundle/config +2 -0
  225. data/lib/starter_web/index.html +129 -114
  226. data/lib/starter_web/package.json +9 -9
  227. data/lib/starter_web/pages/public/about/site.adoc +2 -2
  228. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.adoc +1 -1
  229. data/lib/starter_web/pages/public/blog/navigator/archive/allview.html +1 -1
  230. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +1 -1
  231. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +1 -1
  232. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +1 -1
  233. data/lib/starter_web/pages/public/bookshelf/article_previewer/viewer_biography.adoc +89 -0
  234. data/lib/starter_web/pages/public/bookshelf/article_previewer/viewer_fantasy.adoc +81 -0
  235. data/lib/starter_web/pages/public/bookshelf/article_previewer/viewer_romance.adoc +81 -0
  236. data/lib/starter_web/pages/public/bookshelf/{whats_up.adoc → jekyll_collections.adoc} +31 -23
  237. data/lib/starter_web/pages/public/features/template.adoc +1 -1
  238. data/lib/starter_web/pages/public/learn/roundtrip/asciidoc_extensions.adoc +8 -4
  239. data/lib/starter_web/pages/public/learn/roundtrip/bootstrap_themes.adoc +21 -13
  240. data/lib/starter_web/pages/public/learn/roundtrip/icon_fonts.adoc +10 -1
  241. data/lib/starter_web/pages/public/learn/roundtrip/lunr_search.adoc +22 -5
  242. data/lib/starter_web/pages/public/learn/roundtrip/modal_extentions.adoc +14 -8
  243. data/lib/starter_web/pages/public/learn/roundtrip/present_images.adoc +8 -1
  244. data/lib/starter_web/pages/public/learn/roundtrip/present_videos.adoc +15 -3
  245. data/lib/starter_web/pages/public/learn/roundtrip/responsive_tables.adoc +13 -1
  246. data/lib/starter_web/pages/public/learn/roundtrip/typography.adoc +10 -3
  247. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +4 -4
  248. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +117 -116
  249. data/lib/starter_web/pages/public/previewer/preview_masonry.adoc +361 -0
  250. data/lib/starter_web/pages/public/previewer/preview_slick_slider.adoc +375 -0
  251. data/lib/starter_web/utilsrv/_defaults/package.json +2 -2
  252. data/lib/starter_web/utilsrv/package.json +2 -2
  253. metadata +132 -30
  254. data/_layouts/paginator/readme +0 -2
  255. data/assets/themes/j1/modules/slick/css/slick.min.css +0 -15
  256. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-wiki-series.adoc +0 -144
  257. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-wiki-series.adoc +0 -103
  258. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-wiki-series.adoc +0 -117
  259. data/lib/starter_web/collections/posts/public/series/_posts/_includes/attributes.asciidoc +0 -44
  260. data/lib/starter_web/collections/posts/public/series/_posts/_includes/documents/readme +0 -0
  261. data/lib/starter_web/collections/posts/public/series/_posts/_includes/tables/readme +0 -0
  262. data/lib/starter_web/pages/public/bookshelf/viewer_biography.adoc +0 -58
  263. /data/_layouts/{paginator/autopage_tags.html → autopage_tags.html} +0 -0
  264. /data/assets/themes/j1/modules/slick/{LICENSE → slider/LICENSE} +0 -0
  265. /data/assets/themes/j1/modules/slick/{fonts → slider/fonts}/slick.eot +0 -0
  266. /data/assets/themes/j1/modules/slick/{fonts → slider/fonts}/slick.ttf +0 -0
  267. /data/assets/themes/j1/modules/slick/{fonts → slider/fonts}/slick.woff +0 -0
  268. /data/assets/themes/j1/modules/slick/{ajax-loader.gif → slider/images/ajax-loader.gif} +0 -0
  269. /data/assets/themes/j1/modules/slick/{js → slider/js}/slick.min.js +0 -0
@@ -266,17 +266,17 @@ exclude_from_search: true
266
266
 
267
267
  {% comment %} Link buttons
268
268
  ------------------------------------------------------------------------------ {% endcomment %}
269
- {% if back_url != "none" %}<li id="quickLinksBackButton" class="nav-item"><a id="page_back_id" class="nav-icon" href="{{back_url}}" aria-label="{{back_label}}"><i class="{{icon_family}} {{icon_family}}-{{back_icon}} {{icon_size}}"></i></a></li>{% endif %}
270
- {% if home_url != "none" %}<li id="quickLinksHomeButton" class="nav-item"><a id="home_id" class="nav-icon" href="{{home_url}}" aria-label="{{home_label}}"><i class="{{icon_family}} {{icon_family}}-{{home_icon}} {{icon_size}}"></i></a></li>{% endif %}
271
- {% if disqus_url != "none" %}<li id="quickLinksDisqusButton" class="nav-item"><a id="disqus_id" class="nav-icon" href="{{disqus_url}}" aria-label="{{disqus_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{disqus_icon}} {{icon_size}}"></i></a></li>{% endif %}
272
- {% if github_url != "none" %}<li id="quickLinksGithubButton" class="nav-item"><a id="github_id" class="nav-icon" href="{{github_url}}" aria-label="{{github_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{github_icon}} {{icon_size}}"></i></a></li>{% endif %}
273
- {% if patreon_url != "none" %}<li id="quickLinksPatreonButton" class="nav-item"><a id="patreon_id" class="nav-icon" href="{{patreon_url}}" aria-label="{{patreon_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{patreon_icon}} {{icon_size}}"></i></a></li>{% endif %}
274
- {% if facebook_url != "none" %}<li id="quickLinksFacebookButton" class="nav-item"><a id="facebook_id" class="nav-icon" href="{{facebook_url}}" aria-label="{{facebook_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{facebook_icon}} {{icon_size}}"></i></a></li>{% endif %}
275
- {% if twitter_url != "none" %}<li id="quickLinksTwitterButton" class="nav-item"><a id="twitter_id" class="nav-icon" href="{{twitter_url}}" aria-label="{{twitter_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{twitter_icon}} {{icon_size}}"></i></a></li>{% endif %}
269
+ {% if back_url != "none" %}<li id="quickLinksBackButton" class="nav-item"><a id="page_back_id" href="{{back_url}}" aria-label="{{back_label}}"><i class="nav-icon {{icon_family}} {{icon_family}}-{{back_icon}} {{icon_size}}"></i></a></li>{% endif %}
270
+ {% if home_url != "none" %}<li id="quickLinksHomeButton" class="nav-item"><a id="home_id" href="{{home_url}}" aria-label="{{home_label}}"><i class="nav-icon {{icon_family}} {{icon_family}}-{{home_icon}} {{icon_size}}"></i></a></li>{% endif %}
271
+ {% if disqus_url != "none" %}<li id="quickLinksDisqusButton" class="nav-item"><a id="disqus_id" href="{{disqus_url}}" aria-label="{{disqus_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{disqus_icon}} {{icon_size}}"></i></a></li>{% endif %}
272
+ {% if github_url != "none" %}<li id="quickLinksGithubButton" class="nav-item"><a id="github_id" href="{{github_url}}" aria-label="{{github_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{github_icon}} {{icon_size}}"></i></a></li>{% endif %}
273
+ {% if patreon_url != "none" %}<li id="quickLinksPatreonButton" class="nav-item"><a id="patreon_id" href="{{patreon_url}}" aria-label="{{patreon_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{patreon_icon}} {{icon_size}}"></i></a></li>{% endif %}
274
+ {% if facebook_url != "none" %}<li id="quickLinksFacebookButton" class="nav-item"><a id="facebook_id" href="{{facebook_url}}" aria-label="{{facebook_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{facebook_icon}} {{icon_size}}"></i></a></li>{% endif %}
275
+ {% if twitter_url != "none" %}<li id="quickLinksTwitterButton" class="nav-item"><a id="twitter_id" href="{{twitter_url}}" aria-label="{{twitter_label}}" target="blank"><i class="nav-icon {{icon_family}} {{icon_family}}-{{twitter_icon}} {{icon_size}}"></i></a></li>{% endif %}
276
276
 
277
277
  {% comment %} Action buttons
278
278
  ------------------------------------------------------------------------------ {% endcomment %}
279
- {% if show_quicksearch_icon %}<li id="quickLinksSearchButton" class="nav-item {{quicksearch_action}}"><a class="nav-icon" href="#" aria-label="{{quicksearch_label}}"><i class="nav-icon {{icon_family}} {{icon_family}}-{{quicksearch_icon}} {{icon_size}}"></i></a></li>{% endif %}
279
+ {% if show_quicksearch_icon %}<li id="quickLinksSearchButton" class="nav-item {{quicksearch_action}}"><a href="#" aria-label="{{quicksearch_label}}"><i class="nav-icon {{icon_family}} {{icon_family}}-{{quicksearch_icon}} {{icon_size}}"></i></a></li>{% endif %}
280
280
  {% if show_auth_manager_icon %}<li id="quickLinksSignInOutButton" class="nav-item sign-inout" style="display: none;"><a class="nav-icon" id="navLinkSignInOut" aria-label="SignOut" href="#" data-bs-toggle="modal" data-bs-target="#{{signin_modal_id}}"><i id="iconSignInOut" class="nav-icon {{icon_family}} {{icon_family}}-{{signin_icon}} {{icon_size}}"></i></a></li>{% endif %}
281
281
  {% if show_cookieconsent_icon %}<li id="quickLinksCookieButton" class="nav-item {{cookies_action}}" style="display: block;"><a href="#" aria-label="{{cookies_label}}"><i class="nav-icon {{icon_family}} {{icon_family}}-{{cookies_icon}} {{icon_size}}"></i></a></li>{% endif %}
282
282
  {% if show_r_text_icon %}<li id="quickLinksRTextButton" class="nav-item {{r_text_action}}" style="display: block;"><a class="nav-icon" href="#" aria-label="{{r_text_label}}" data-bs-toggle="modal" data-bs-target="#fluidModalRTextResizer"><i class="nav-icon {{icon_family}} {{icon_family}}-{{r_text_icon}} {{icon_size}}"></i></a></li>{% endif %}
@@ -284,11 +284,11 @@ exclude_from_search: true
284
284
  {% if show_notebooks_icon %}<li id="quickLinksNotebookseButton" class="nav-item {{notebooks_action}}" style="display: none;"><a href="#" aria-label="{{translate_label}}"><i class="nav-icon {{icon_family}} {{icon_family}}-{{notebooks_icon}} {{icon_size}}"></i></a></li>{% endif %}
285
285
 
286
286
  {% comment %} Unused
287
- --------------------------------------------------------------------------------
288
- {% if show_control_center_icon %}<li id="quickLinksControlCenterButton" class="nav-item control-center" style="display: block;"><a class="nav-icon" href="{{control_center_url}}" aria-label="ControlCenter"><i class="{{icon_family}} {{icon_family}}-{{control_center_icon}} {{icon_size}}"></i></a></li>{% endif %}
287
+ ------------------------------------------------------------------------------
288
+ {% if show_control_center_icon %}<li id="quickLinksControlCenterButton" class="nav-item control-center" style="display: block;"><a class="nav-icon" href="{{control_center_url}}" aria-label="ControlCenter"><i class="nav-icon {{icon_family}} {{icon_family}}-{{control_center_icon}} {{icon_size}}"></i></a></li>{% endif %}
289
289
  {% if show_translator_icon %}<li id="quickLinksLanguageButton" class="nav-item translator"><a class="nav-icon" href="#void" aria-label="Translator"><i class="nav-icon {{icon_family}} {{icon_family}}-{{translator_icon}} {{icon_size}}"></i></a></li>{% endif %}
290
- {% if show_google_translate_lang %}<li id="quickLinksTranslateLangButton" class="nav-item" style="display: block;"><a href="javascript:j1.translator.showDialog()" aria-label="Google Translate"><i class="nav-icon flag-icon flag-icon-{{translate_lang}} rectangle size-md"></i></a></li>{% endif %}
291
- -------------------------------------------------------------------------------- {% endcomment %}
290
+ {% if show_google_translate_lang %}<li id="quickLinksTranslateLangButton" sclass="nav-item" style="display: block;"><a href="javascript:j1.translator.showDialog()" aria-label="Google Translate"><i class="nav-icon flag-icon flag-icon-{{translate_lang}} rectangle size-md"></i></a></li>{% endif %}
291
+ ------------------------------------------------------------------------------ {% endcomment %}
292
292
 
293
293
  </ul>
294
294
 
@@ -0,0 +1,192 @@
1
+ ---
2
+ regenerate: true
3
+ exclude_from_search: true
4
+ ---
5
+
6
+ {% capture cache %}
7
+
8
+ {% comment %}
9
+ # -----------------------------------------------------------------------------
10
+ # ~/assets/data/slick.html
11
+ # Liquid procedure to generate the HTML portion for all Silick Sliders
12
+ # configured
13
+ #
14
+ # Product/Info:
15
+ # https://jekyll.one
16
+ #
17
+ # Copyright (C) 2023 Juergen Adams
18
+ #
19
+ # J1 Theme is licensed under the MIT License.
20
+ # See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
21
+ # -----------------------------------------------------------------------------
22
+ # NOTE: Data loaded dynamically by J1 Master Slider module (AJAX)
23
+ # -----------------------------------------------------------------------------
24
+ # Test data:
25
+ # {{variable | debug}}
26
+ # -----------------------------------------------------------------------------
27
+ {% endcomment %}
28
+
29
+ {% comment %} Liquid procedures (currently unused)
30
+ --------------------------------------------------------------------------------
31
+ {% capture select_color %}themes/{{site.template.name}}/procedures/global/select_color.proc{% endcapture %}
32
+ {% capture select_icon_size %}themes/{{site.template.name}}/procedures/global/select_icon_size.proc{% endcapture %}
33
+ -------------------------------------------------------------------------------- {% endcomment %}
34
+
35
+ {% comment %} Liquid var initialization
36
+ -------------------------------------------------------------------------------- {% endcomment %}
37
+
38
+ {% comment %} Set config files
39
+ -------------------------------------------------------------------------------- {% endcomment %}
40
+ {% assign template_config = site.data.j1_config %}
41
+ {% assign modules = site.data.modules %}
42
+
43
+ {% comment %} Set config data
44
+ -------------------------------------------------------------------------------- {% endcomment %}
45
+ {% assign environment = site.environment %}
46
+ {% assign slider_defaults = modules.defaults.slick.defaults %}
47
+ {% assign slider_settings = modules.slick.settings %}
48
+
49
+ {% comment %} Set config options
50
+ -------------------------------------------------------------------------------- {% endcomment %}
51
+ {% assign slider_options = slider_defaults | merge: slider_settings %}
52
+ {% assign sliders = slider_settings.sliders %}
53
+
54
+ {% comment %} Configure permalink settings
55
+ -------------------------------------------------------------------------------- {% endcomment %}
56
+ {% assign ext = '' %}
57
+ {% if site.permalink == 'none' %}
58
+ {% assign ext = '.html' %}
59
+ {% endif %}
60
+
61
+ {% comment %} Detect prod mode
62
+ -------------------------------------------------------------------------------- {% endcomment %}
63
+ {% assign production = false %}
64
+ {% if environment == 'prod' or environment == 'production' %}
65
+ {% assign production = true %}
66
+ {% endif %}
67
+
68
+ {% comment %} Main
69
+ ================================================================================ {% endcomment %}
70
+ <!-- [INFO ] [~/assets/data/masterslider.html ] [ set meta data (robots) to exclude HTML datafiles from index ] -->
71
+ <head>
72
+ <meta name="robots" content="noindex, nofollow" />
73
+ </head>
74
+
75
+ {% comment %} Main
76
+ -------------------------------------------------------------------------------- {% endcomment %}
77
+ <!-- [INFO ] [~/assets/data/masterslider.html ] [collect all slider items] -->
78
+ {% for slider in sliders %}
79
+ {% if slider.enabled %}
80
+
81
+ {% comment %} Generate HTML portion for all sliders (enabled)
82
+ ------------------------------------------------------------------------------ {% endcomment %}
83
+
84
+ {% comment %} Collect Post Sliders
85
+ ---------------------------------------------------------------------------- {% endcomment %}
86
+ {% if slider.type == 'post' %}
87
+ <!-- Posts -->
88
+ <div id="{{slider.id}}" class="{{slider.id | replace: '_','-' }}">
89
+ {% for post in site.posts %}
90
+ {% if post.group contains slider.group %}
91
+ <!-- Collect data only if group matches -->
92
+ <div class="col-lg-3 col-sm-6 mb-2 mb-lg-0 px-1">
93
+ <article class="card bg-dark text-center text-white border-0 rounded-0">
94
+ <!-- img class="card-img rounded-0 img-fluid w-100" src="{{post.image.path | relative_url}}" alt="{{post.title}}" style="filter: grayscale(1) contrast(0.8) brightness(0.6);" -->
95
+ <img class="card-img rounded-0 img-fluid w-100" src="{{post.image.path | relative_url}}" alt="{{post.title}}" style="filter: contrast(1) brightness(0.5);">
96
+ <div class="card-img-overlay">
97
+ <div class="card-content mt-6">
98
+ {% if post %}
99
+ {% assign categories = post.categories %}
100
+ {% else %}
101
+ {% assign categories = page.categories %}
102
+ {% endif %}
103
+
104
+ {% comment %} categories: {{categories | debug}}
105
+ ---------------------------------------------------------------- {% endcomment %}
106
+
107
+ {% for category in categories %}
108
+ {% if category contains post.group %}
109
+ <!--a class="d-block text-white text-uppercase link-no-decoration"
110
+ href="{{site.jekyll-archives.category_archive_path | relative_url}}bla_{{category | slugify}}"
111
+ style="font-size: 24px;">{{category}}
112
+ </a -->
113
+ <a class="d-block text-white text-uppercase link-no-decoration"
114
+ href="/pages/public/blog/navigator/archive/categoryview/#{{category | slugify}}"
115
+ style="font-size: 24px;">{{category}}
116
+ </a>
117
+ {% endif %}
118
+ {% endfor %}
119
+
120
+ <ul class="list-inline d-flex justify-content-center mb-5">
121
+ <li class="list-inline-item">
122
+ <i class="mdi mdi-account md-gray-400 mdi-24px mr-1" style="margin-right: 8px;"></i>
123
+ {{site.author.name | split: ' ' | first}} &nbsp;&middot;&nbsp;&nbsp;
124
+ </li>
125
+ <li class="list-inline-item">
126
+ <i class="mdi mdi-calendar-blank md-gray-400 mdi-24px mr-1"></i>
127
+ {{post.date | date: '%b %d, %Y'}}
128
+ </li>
129
+ </ul>
130
+ <h4 class="notoc card-title">
131
+ <a class="text-white link-no-decoration" href="{{post.url | relative_url}}">{{post.tags[0]}}</a>
132
+ </h4>
133
+ </div>
134
+ </div>
135
+ </article>
136
+ </div>
137
+ {% endif %}
138
+ {% endfor %}
139
+ </div>
140
+ <!-- /Posts -->
141
+ {% endif %}
142
+
143
+ {% comment %} Collect Example Sliders
144
+ ---------------------------------------------------------------------------- {% endcomment %}
145
+ {% if slider.type == 'example' %}
146
+ <!-- Example slider -->
147
+ <div id="{{slider.id}}" class="{{slider.id | replace: '_','-' }}">
148
+ {% for i in (1..slider.slides) %}
149
+ <div>
150
+ <h3 class="slide-item notoc">{{i}}</h3>
151
+ </div>
152
+ {% endfor %}
153
+ </div>
154
+ <!-- /Example slider -->
155
+ {% endif %}
156
+
157
+ {% comment %} Collect Image Sliders
158
+ ---------------------------------------------------------------------------- {% endcomment %}
159
+ {% if slider.type == 'image' %}
160
+ <!-- Image slider -->
161
+ <div id="{{slider.id}}" class="{{slider.id | replace: '_','-' }}">
162
+
163
+ {% for slide in slider.slides %}
164
+ <div class="col-sm-6 col-lg-4 mb-4">
165
+ <div class="card">
166
+ {% if slider.lightbox.enabled %}
167
+ <a href="{{slider.image_base_path}}/{{slide.image}}" data-caption="{{slide.title}}">
168
+ <img class="{{slider.image_styles}}" src="{{slider.image_base_path}}/{{slide.image}}" alt="{{slide.title}}">
169
+ </a>
170
+ {% else %}
171
+ <img id="{{forloop.index}}" class="{{slider.image_styles}}" src="{{slider.image_base_path}}/{{slide.image}}" alt="{{slide.title}}">
172
+ {% endif %}
173
+ </div>
174
+ </div>
175
+ {% endfor %}
176
+
177
+ </div>
178
+ <!-- /Image slider -->
179
+ {% endif %}
180
+
181
+ {% endif %}
182
+ {% endfor %}
183
+ <!-- [INFO ] [~/assets/data/slick.html ] [end collecting all slider items] -->
184
+
185
+ {% endcapture %}
186
+
187
+ {% if production %}
188
+ {% capture _LINE_FEED %}{% endcapture %}{% if site.compress_html.ignore.envs contains jekyll.environment %}{{ cache | strip_html_comments }}{% else %}{% capture _content %}{{ cache | strip_html_comments }}{% endcapture %}{% assign _profile = site.compress_html.profile %}{% if site.compress_html.endings == "all" %}{% assign _endings = "html head body li dt dd p rt rp optgroup option colgroup caption thead tbody tfoot tr td th" | split: " " %}{% else %}{% assign _endings = site.compress_html.endings %}{% endif %}{% for _element in _endings %}{% capture _end %}</{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _end %}{% endfor %}{% if _profile and _endings %}{% assign _profile_endings = _content | size | plus: 1 %}{% endif %}{% for _element in site.compress_html.startings %}{% capture _start %}<{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _start %}{% endfor %}{% if _profile and site.compress_html.startings %}{% assign _profile_startings = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.comments == "all" %}{% assign _comments = "<!-- -->" | split: " " %}{% else %}{% assign _comments = site.compress_html.comments %}{% endif %}{% if _comments.size == 2 %}{% capture _comment_befores %}.{{ _content }}{% endcapture %}{% assign _comment_befores = _comment_befores | split: _comments.first %}{% for _comment_before in _comment_befores %}{% if forloop.first %}{% continue %}{% endif %}{% capture _comment_outside %}{% if _carry %}{{ _comments.first }}{% endif %}{{ _comment_before }}{% endcapture %}{% capture _comment %}{% unless _carry %}{{ _comments.first }}{% endunless %}{{ _comment_outside | split: _comments.last | first }}{% if _comment_outside contains _comments.last %}{{ _comments.last }}{% assign _carry = false %}{% else %}{% assign _carry = true %}{% endif %}{% endcapture %}{% assign _content = _content | remove_first: _comment %}{% endfor %}{% if _profile %}{% assign _profile_comments = _content | size | plus: 1 %}{% endif %}{% endif %}{% assign _pre_befores = _content | split: "<pre" %}{% assign _content = "" %}{% for _pre_before in _pre_befores %}{% assign _pres = _pre_before | split: "</pre>" %}{% assign _pres_after = "" %}{% if _pres.size != 0 %}{% if site.compress_html.blanklines %}{% assign _lines = _pres.last | split: _LINE_FEED %}{% capture _pres_after %}{% for _line in _lines %}{% assign _trimmed = _line | split: " " | join: " " %}{% if _trimmed != empty or forloop.last %}{% unless forloop.first %}{{ _LINE_FEED }}{% endunless %}{{ _line }}{% endif %}{% endfor %}{% endcapture %}{% else %}{% assign _pres_after = _pres.last | split: " " | join: " " %}{% endif %}{% endif %}{% capture _content %}{{ _content }}{% if _pre_before contains "</pre>" %}<pre{{ _pres.first }}</pre>{% endif %}{% unless _pre_before contains "</pre>" and _pres.size == 1 %}{{ _pres_after }}{% endunless %}{% endcapture %}{% endfor %}{% if _profile %}{% assign _profile_collapse = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.clippings == "all" %}{% assign _clippings = "html head title base link meta style body article section nav aside h1 h2 h3 h4 h5 h6 hgroup header footer address p hr blockquote ol ul li dl dt dd figure figcaption main div table caption colgroup col tbody thead tfoot tr td th" | split: " " %}{% else %}{% assign _clippings = site.compress_html.clippings %}{% endif %}{% for _element in _clippings %}{% assign _edges = " <e;<e; </e>;</e>;</e> ;</e>" | replace: "e", _element | split: ";" %}{% assign _content = _content | replace: _edges[0], _edges[1] | replace: _edges[2], _edges[3] | replace: _edges[4], _edges[5] %}{% endfor %}{% if _profile and _clippings %}{% assign _profile_clippings = _content | size | plus: 1 %}{% endif %}{{ _content }}{% if _profile %} <table id="compress_html_profile_{{ site.time | date: "%Y%m%d" }}" class="compress_html_profile"> <thead> <tr> <td>Step <td>Bytes <tbody> <tr> <td>raw <td>{{ cache | strip_html_comments | size }}{% if _profile_endings %} <tr> <td>endings <td>{{ _profile_endings }}{% endif %}{% if _profile_startings %} <tr> <td>startings <td>{{ _profile_startings }}{% endif %}{% if _profile_comments %} <tr> <td>comments <td>{{ _profile_comments }}{% endif %}{% if _profile_collapse %} <tr> <td>collapse <td>{{ _profile_collapse }}{% endif %}{% if _profile_clippings %} <tr> <td>clippings <td>{{ _profile_clippings }}{% endif %} </table>{% endif %}{% endif %}
189
+ {% else %}
190
+ {{ cache | pretty_print | remove:'<html><body>' | remove:'</body></html>' | strip_empty_lines }}
191
+ {% endif %}
192
+ {% assign cache = nil %}
@@ -56,11 +56,6 @@ regenerate: true
56
56
  {% assign production = true %}
57
57
  {% endif %}
58
58
 
59
-
60
-
61
-
62
-
63
-
64
59
  /*
65
60
  # -----------------------------------------------------------------------------
66
61
  # ~/assets/themes/j1/adapter/js/attic.js
@@ -134,9 +129,7 @@ j1.adapter.attic = (function (j1, window) {
134
129
  // create settings object from attic options
135
130
  var atticDefaults = $.extend({}, {{attic_defaults | replace: 'nil', 'null' | replace: '=>', ':' }});
136
131
  var atticSettings = $.extend({}, {{attic_settings | replace: 'nil', 'null' | replace: '=>', ':' }});
137
-
138
- // merge all attic options
139
- var atticOptions = $.extend({}, atticDefaults, atticSettings, frontmatterOptions);
132
+ var atticOptions = $.extend(true, {}, atticDefaults, atticSettings, frontmatterOptions);
140
133
 
141
134
  // Save frontmatterOptions and atticOptions in the j1 namespace
142
135
  // to be used later by j1.template.init() to load the header
@@ -148,18 +141,31 @@ j1.adapter.attic = (function (j1, window) {
148
141
  logger.debug('\n' + 'state: ' + _this.getState());
149
142
  logger.info('\n' + 'module is being initialized');
150
143
 
151
- _this.loadHeader();
152
-
144
+ var dependencies_met_page_ready = setInterval (function (options) {
145
+ var pageState = $('#no_flicker').css("display");
146
+ var pageVisible = (pageState == 'block') ? true: false;
147
+ if ( j1.getState() === 'finished' && pageVisible ) {
148
+ {% if attic_options.enabled %}
149
+ logger.info('\n' + 'create all attics configured');
150
+ _this.createAllAttics();
151
+ clearInterval(dependencies_met_page_ready);
152
+ {% else %}
153
+ logger.warn('\n' + 'found module attics disabled');
154
+ // add additional top space
155
+ $('#content').addClass('mt-5');
156
+ clearInterval(dependencies_met_page_ready);
157
+ {% endif %}
158
+ }
159
+ }, 25);
153
160
  }, // END init
154
161
 
155
162
  // -------------------------------------------------------------------------
156
163
  // Initialize all header supported
157
164
  // -------------------------------------------------------------------------
158
- loadHeader: function () {
165
+ createAllAttics: function () {
159
166
  var frontmatterOptions = _this.frontmatterOptions;
160
167
  // merge all attic options
161
- var atticOptions = $.extend({}, _this.atticOptions, _this.frontmatterOptions);
162
-
168
+ var atticOptions = $.extend(true, {}, _this.atticOptions, _this.frontmatterOptions);
163
169
 
164
170
  {% comment %} Load data from header config (yaml data file)
165
171
  -------------------------------------------------------------------------- {% endcomment %}
@@ -182,6 +188,8 @@ j1.adapter.attic = (function (j1, window) {
182
188
  // Create the SPECIFIC header loader FUNCTION of type: {{attic_id}}
183
189
  function {{attic_id}} (atticOptions) {
184
190
 
191
+ logger.info('\n' + 'initialize attic on id: {{attic_id}}');
192
+
185
193
  // convert attic filter settings to object to array to string
186
194
  atticFilters = $.extend({}, {{item.attic.filters | replace: 'nil', 'null' | replace: '=>', ':' }});
187
195
  filterArray = [];
@@ -216,6 +224,8 @@ j1.adapter.attic = (function (j1, window) {
216
224
  loop: atticOptions.loop,
217
225
  mute: atticOptions.mute
218
226
  });
227
+ } else {
228
+ logger.warn('\n' + 'no attic container found on id: {{attic_id}}');
219
229
  }
220
230
 
221
231
  {% comment %} Add a spinner if configured
@@ -379,7 +389,7 @@ j1.adapter.attic = (function (j1, window) {
379
389
 
380
390
  _this.setState('finished');
381
391
  logger.debug('\n' + 'state: ' + _this.getState());
382
- // logger.info('\n' + 'module initialized successfully');
392
+ logger.info('\n' + 'finished attic on id: {{attic_id}}');
383
393
  }); // END on('backstretch.after')
384
394
 
385
395
  } // END if attic_id exists
@@ -605,14 +615,19 @@ j1.adapter.attic = (function (j1, window) {
605
615
  if (typeof atticOptions.slides != 'undefined') {
606
616
  // Load the image header if the page is ready (visible)
607
617
  $(function() {
608
- // logger.debug('\n' + 'Load image header on: ' + {{attic_id}});
609
- logger.debug('\n' + 'Load image header');
618
+ // logger.info('\n' + 'Load image header on id: {{attic_id}}');
610
619
  {{attic_id}}(atticOptions);
611
620
  _this.setState('completed');
612
621
  logger.debug('\n' + 'state: ' + _this.getState());
613
622
  });
614
623
  }
615
624
  } // END if header id found in page
625
+
626
+ {% else %}
627
+ {% assign attic_id = item.attic.id %}
628
+ // add additional top space
629
+ $('#content').addClass('mt-8');
630
+ logger.info('\n' + 'found attic disabled on id: {{attic_id}}');
616
631
  {% endif %} // END if header enabled
617
632
  {% endfor %} // END for item in header_config.attics
618
633
 
@@ -60,6 +60,9 @@ regenerate: true
60
60
  {% assign themer_defaults = modules.defaults.themer.defaults %}
61
61
  {% assign themer_settings = modules.themer.settings %}
62
62
 
63
+ {% assign scroller_defaults = modules.defaults.scroller.defaults %}
64
+ {% assign scroller_settings = modules.scroller.settings %}
65
+
63
66
  {% assign tracking_enabled = modules.analytics.enabled %}
64
67
  {% assign tracking_id = modules.analytics.google.trackingID %}
65
68
 
@@ -135,10 +138,13 @@ var j1 = (function (options) {
135
138
  // globals
136
139
  // ---------------------------------------------------------------------------
137
140
  // base page resources
138
- var rePager = new RegExp('navigator|dateview|tagview|archive');
139
- var environment = '{{environment}}';
140
- var moduleOptions = {};
141
- var j1_runtime_data = {};
141
+ var rePager = new RegExp('navigator|dateview|tagview|archive');
142
+ var environment = '{{environment}}';
143
+ var moduleOptions = {};
144
+ var j1_runtime_data = {};
145
+ var scrollerSettings = {};
146
+ var scrollerOptions = {};
147
+ var scrollerDefaults = {};
142
148
  var _this;
143
149
  var settings;
144
150
  var json_data;
@@ -147,6 +153,9 @@ var j1 = (function (options) {
147
153
  var referrer;
148
154
  var documentHeight;
149
155
 
156
+ var scrollOffset;
157
+ var scrollOffsetCorrection;
158
+
150
159
  // defaults for status information
151
160
  var state = 'not_started';
152
161
  var mode = 'not_detected';
@@ -301,6 +310,11 @@ var j1 = (function (options) {
301
310
  // create settings object from frontmatter options
302
311
  var frontmatterOptions = options != null ? $.extend({}, options) : {};
303
312
 
313
+ // Load scroller module DEFAULTS|CONFIGs
314
+ scrollerDefaults = $.extend({}, {{scroller_defaults | replace: 'nil', 'null' | replace: '=>', ':' }});
315
+ scrollerSettings = $.extend({}, {{scroller_settings | replace: 'nil', 'null' | replace: '=>', ':' }});
316
+ scrollerOptions = $.extend(true, {}, scrollerDefaults, scrollerSettings);
317
+
304
318
  // settings for dynamic pages
305
319
  scrollDynamicPagesTopOnChange = frontmatterOptions.scrollDynamicPagesTopOnChange ? frontmatterOptions.scrollDynamicPagesTopOnChange : '{{template_config.scrollDynamicPagesTopOnChange}}';
306
320
  scrollDynamicPagesTopOnChange = j1.stringToBoolean(scrollDynamicPagesTopOnChange);
@@ -1311,12 +1325,12 @@ var j1 = (function (options) {
1311
1325
  // getScrollOffset()
1312
1326
  // Calculate offset for a correct (smooth) scroll position
1313
1327
  // -------------------------------------------------------------------------
1314
- getScrollOffset: function () {
1315
- var scrollOffset;
1316
- var offsetCorrection = 0;
1328
+ getScrollOffset: function (offsetCorrection) {
1329
+ // var scrollOffset;
1330
+ // var offsetCorrection = 0;
1317
1331
 
1318
1332
  var $pagehead = $('.attic');
1319
- var $navbar = $('nav.navbar');
1333
+ var $navbar = $('#navigator_nav_navbar');
1320
1334
  var $adblock = $('#adblock');
1321
1335
  var navbarType = $navbar.hasClass('navbar-fixed') ? 'fixed' : 'scrolled';
1322
1336
  var fontSize = $('body').css('font-size').replace('px','');
@@ -2430,6 +2444,7 @@ var j1 = (function (options) {
2430
2444
  // -------------------------------------------------------------------------
2431
2445
  scrollToAnchor: function () {
2432
2446
  var logger = log4javascript.getLogger('j1.adapter.scrollToAnchor');
2447
+ var scrollOffset;
2433
2448
 
2434
2449
  var dependencies_met_page_displayed = setInterval (function () {
2435
2450
  var pageState = $('#no_flicker').css("display");
@@ -2439,24 +2454,26 @@ var j1 = (function (options) {
2439
2454
  // TODO: Check why a timeout is required to run the smmoth scroller (j1.scrollTo)
2440
2455
  if (j1['pageMonitor'].pageType == 'static') {
2441
2456
  setTimeout (function() {
2442
- logger.info('\n' + 'Scroller: Scroll static page')
2443
- const scrollOffset = j1.getScrollOffset();
2457
+ logger.debug('\n' + 'Scroller: Scroll static page');
2458
+ scrollOffsetCorrection = scrollerOptions.smoothscroll.offsetCorrection;
2459
+ scrollOffset = j1.getScrollOffset(scrollOffsetCorrection);
2444
2460
  j1.scrollTo(scrollOffset);
2445
- }, {{template_config.page_on_load_timeout}} );
2461
+ }, {{template_config.timeoutScrollStaticPages}} );
2446
2462
  clearInterval(dependencies_met_page_displayed);
2447
2463
  } else if (j1['pageMonitor'].pageType == 'dynamic') {
2448
2464
  setTimeout (function() {
2449
- const scrollOffset = j1.getScrollOffset();
2465
+ scrollOffsetCorrection = scrollerOptions.smoothscroll.offsetCorrection;
2466
+ scrollOffset = j1.getScrollOffset(scrollOffsetCorrection);
2450
2467
  j1.scrollTo(scrollOffset);
2451
- logger.info('\n' + 'Scroller: Scroll dynamic page on timeout')
2452
- // }, timeoutScrollDynamicPages);
2453
- }, {{template_config.page_on_load_timeout}} );
2468
+ logger.debug('\n' + 'Scroller: Scroll dynamic page on timeout');
2469
+ }, {{template_config.timeoutScrollDynamicPages}} );
2454
2470
  clearInterval(dependencies_met_page_displayed);
2455
2471
  } else {
2456
2472
  // failsave fallback
2457
2473
  setTimeout (function() {
2458
- logger.warn('\n' + 'Scroller: Scroll page of unknown type')
2459
- const scrollOffset = j1.getScrollOffset();
2474
+ logger.debug('\n' + 'Scroller: Scroll page of unknown type');
2475
+ scrollOffsetCorrection = scrollerOptions.smoothscroll.offsetCorrection;
2476
+ scrollOffset = j1.getScrollOffset(scrollOffsetCorrection);
2460
2477
  j1.scrollTo(scrollOffset);
2461
2478
  }, {{template_config.page_on_load_timeout}} );
2462
2479
  clearInterval(dependencies_met_page_displayed);
@@ -2498,9 +2515,10 @@ var j1 = (function (options) {
2498
2515
  // see: https://stackoverflow.com/questions/14866775/detect-document-height-change
2499
2516
  //
2500
2517
  const observer = new ResizeObserver(entries => {
2501
- const body = document.body,
2502
- html = document.documentElement,
2503
- scrollOffset = j1.getScrollOffset();
2518
+ var scrollOffsetCorrection = scrollerOptions.smoothscroll.offsetCorrection;
2519
+ const body = document.body,
2520
+ html = document.documentElement,
2521
+ scrollOffset = j1.getScrollOffset(scrollOffsetCorrection);
2504
2522
 
2505
2523
  // get the page height from the DOM
2506
2524
  //
@@ -2618,7 +2636,23 @@ var j1 = (function (options) {
2618
2636
  window.onkeyup = function (event) {
2619
2637
  if (event.keyCode == 27) window.history.back();
2620
2638
  };
2621
- }
2639
+
2640
+ $("a[href*='#']:not([href='#'])").click(function() {
2641
+ if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
2642
+ var target = $(this.hash);
2643
+ target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
2644
+ if (target.length) {
2645
+ var scrollOffsetCorrection = scrollerOptions.smoothscroll.offsetCorrectionLocal;
2646
+ var offset = target.offset().top + scrollOffsetCorrection;
2647
+ $('html,body').animate({
2648
+ scrollTop: offset
2649
+ }, 1000);
2650
+ return false;
2651
+ }
2652
+ }
2653
+ });
2654
+
2655
+ } // END registerEvents
2622
2656
  };
2623
2657
  }) (j1, window);
2624
2658