j1-template 2021.3.2 → 2022.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (198) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +4 -4
  3. data/_includes/themes/j1/layouts/content_generator_post.html +3 -3
  4. data/_includes/themes/j1/modules/navigator/generator.html +9 -11
  5. data/_includes/themes/j1/modules/search/docsearch.html +1 -1
  6. data/_includes/themes/j1/procedures/global/create_bs_button.proc +5 -5
  7. data/_includes/themes/j1/procedures/global/create_word_cloud.proc +3 -1
  8. data/_includes/themes/j1/procedures/layouts/module_writer.proc +1 -1
  9. data/_includes/themes/j1/procedures/posts/collate_timeline.proc +1 -1
  10. data/_layouts/default.html +66 -22
  11. data/_layouts/home.html +1 -1
  12. data/_layouts/raw.html +2 -1
  13. data/assets/data/article_navigator/index.html +1 -1
  14. data/assets/data/banner.html +6 -12
  15. data/assets/data/cookieconsent.html +11 -11
  16. data/assets/data/{fam.html → fab.html} +41 -24
  17. data/assets/data/gallery_customizer.html +2 -2
  18. data/assets/data/panel.html +12 -18
  19. data/assets/data/private.json +5 -1
  20. data/assets/data/quicklinks.html +4 -5
  21. data/assets/data/themes.bootswatch.json +75 -0
  22. data/assets/data/themes.json +6 -6
  23. data/assets/data/translator.html +15 -15
  24. data/assets/error_pages/HTTP445.html +110 -0
  25. data/assets/themes/j1/adapter/js/bmd.js +1 -1
  26. data/assets/themes/j1/adapter/js/cookieConsent.js +7 -1
  27. data/assets/themes/j1/adapter/js/{fam.js → fab.js} +114 -111
  28. data/assets/themes/j1/adapter/js/j1.js +202 -142
  29. data/assets/themes/j1/adapter/js/mmenu.js +18 -24
  30. data/assets/themes/j1/adapter/js/navigator.js +3 -1
  31. data/assets/themes/j1/adapter/js/toccer.js +37 -76
  32. data/assets/themes/j1/adapter/js/translator.js +6 -0
  33. data/assets/themes/j1/core/country-flags/css/theme/uno.min.css +15 -0
  34. data/assets/themes/j1/core/css/icon-fonts/mdi.css +22307 -0
  35. data/assets/themes/j1/core/css/icon-fonts/mdi.min.css +1 -0
  36. data/assets/themes/j1/core/css/icon-fonts/mdil.css +1222 -0
  37. data/assets/themes/j1/core/css/icon-fonts/mdil.min.css +1 -0
  38. data/assets/themes/j1/core/css/icon-fonts/twemoji.css +4 -0
  39. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.css +5341 -4730
  40. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.min.css +3 -1
  41. data/assets/themes/j1/core/css/themes/theme_vapor/bootstrap.css +8301 -0
  42. data/assets/themes/j1/core/css/themes/theme_vapor/bootstrap.min.css +3 -0
  43. data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.css +5293 -4702
  44. data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.min.css +3 -1
  45. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +11929 -12546
  46. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +18 -18
  47. data/assets/themes/j1/core/css/vendor.css +2 -28
  48. data/assets/themes/j1/core/css/vendor.min.css +1 -1
  49. data/assets/themes/j1/core/js/template.js +41 -27
  50. data/assets/themes/j1/core/js/template.min.js +5 -5
  51. data/assets/themes/j1/core/js/template.min.js.map +1 -1
  52. data/assets/themes/j1/modules/bmd/js/bmd.js +2280 -0
  53. data/assets/themes/j1/modules/bmd/js/bmd.min.js +20 -0
  54. data/assets/themes/j1/modules/bootstrap/js/bootstrap.js +5072 -0
  55. data/assets/themes/j1/modules/bootstrap/js/bootstrap.min.js +7 -0
  56. data/assets/themes/j1/modules/bootstrap/js/bootstrap.min.js.map +1 -0
  57. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.js +19 -17
  58. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.min.js +1 -1
  59. data/assets/themes/j1/modules/{fam/css/theme/uno/fam.css → fab/css/theme/uno/fab.css} +32 -28
  60. data/assets/themes/j1/modules/{fam/css/theme/uno/fam.min.css → fab/css/theme/uno/fab.min.css} +3 -3
  61. data/assets/themes/j1/modules/{materialize → fab}/js/cash.js +20 -2
  62. data/assets/themes/j1/modules/{fam/js/fam.js → fab/js/fab.js} +4 -2
  63. data/assets/themes/j1/modules/{util → gtag-opt-in}/js/gtag-opt-in.js +15 -1
  64. data/assets/themes/j1/modules/gtag-opt-in/js/gtag-opt-in.min.js +15 -0
  65. data/assets/themes/j1/modules/lightGallery/js/modules/lg-thumbnail.min.js +4 -1
  66. data/assets/themes/j1/modules/materialize/js/bin/materialize.js +12374 -0
  67. data/assets/themes/j1/modules/materialize/js/bin/materialize.min.js +6 -0
  68. data/assets/themes/j1/modules/materialize/js/{tapTarget.js → tapTarget.cash.js} +0 -0
  69. data/assets/themes/j1/modules/materialize/js/tapTarget.jQuery.js +187 -0
  70. data/assets/themes/j1/modules/popper/js/popper.js +1670 -2346
  71. data/assets/themes/j1/modules/popper/js/popper.min.js +6 -4
  72. data/assets/themes/j1/modules/popper/js/popper.min.js.map +1 -1
  73. data/assets/themes/j1/modules/translator/js/translator.js +6 -2
  74. data/assets/themes/j1/modules/translator/js/translator.min.js +1 -1
  75. data/lib/j1/version.rb +1 -1
  76. data/lib/starter_web/Gemfile +1 -1
  77. data/lib/starter_web/_config.yml +21 -24
  78. data/lib/starter_web/_data/blocks/banner.yml +22 -7
  79. data/lib/starter_web/_data/blocks/panel.yml +2 -2
  80. data/lib/starter_web/_data/builder/defaults/blog_navigator.yml +42 -35
  81. data/lib/starter_web/_data/j1_config.yml +1 -1
  82. data/lib/starter_web/_data/layouts/article_navigator.yml +1 -1
  83. data/lib/starter_web/_data/layouts/blog_archive.yml +1 -1
  84. data/lib/starter_web/_data/layouts/collection.yml +1 -1
  85. data/lib/starter_web/_data/layouts/home.yml +5 -5
  86. data/lib/starter_web/_data/layouts/news_panel_posts.yml +1 -1
  87. data/lib/starter_web/_data/layouts/page.yml +1 -1
  88. data/lib/starter_web/_data/layouts/post.yml +1 -1
  89. data/lib/starter_web/_data/modules/defaults/{fam.yml → fab.yml} +8 -7
  90. data/lib/starter_web/_data/modules/defaults/navigator.yml +3 -0
  91. data/lib/starter_web/_data/modules/defaults/rtable.yml +2 -1
  92. data/lib/starter_web/_data/modules/defaults/scoller.yml +33 -0
  93. data/lib/starter_web/_data/modules/defaults/themer.yml +1 -1
  94. data/lib/starter_web/_data/modules/defaults/toccer.yml +5 -4
  95. data/lib/starter_web/_data/modules/{fam.yml → fab.yml} +31 -31
  96. data/lib/starter_web/_data/modules/scroller.yml +2 -2
  97. data/lib/starter_web/_data/modules/toccer.yml +3 -5
  98. data/lib/starter_web/_data/resources.yml +45 -31
  99. data/lib/starter_web/_includes/attributes.asciidoc +48 -48
  100. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  101. data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +1 -4
  102. data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.adoc +2 -2
  103. data/lib/starter_web/collections/posts/public/featured/_posts/2021-02-01-site-generators.adoc +2 -2
  104. data/lib/starter_web/collections/posts/public/featured/_posts/2021-03-03-about-j1.adoc +2 -2
  105. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-wiki-series.adoc +1 -1
  106. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-wiki-series.adoc +1 -1
  107. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-wiki-series.adoc +2 -2
  108. data/lib/starter_web/index.html +1 -1
  109. data/lib/starter_web/package.json +1 -1
  110. data/lib/starter_web/pages/_test_pages/100_side-bar-tester.adoc +244 -0
  111. data/lib/starter_web/pages/_test_pages/_includes/attributes.asciidoc +110 -0
  112. data/lib/starter_web/pages/_test_pages/_includes/documents/100_gistblock.asciidoc +28 -0
  113. data/lib/starter_web/pages/_test_pages/_includes/documents/410_bottom_info.asciidoc +14 -0
  114. data/lib/starter_web/pages/_test_pages/_includes/documents/410_bottom_left_warning.asciidoc +11 -0
  115. data/lib/starter_web/pages/_test_pages/_includes/documents/410_bottom_right_danger.asciidoc +11 -0
  116. data/lib/starter_web/pages/_test_pages/_includes/documents/410_central_success.asciidoc +11 -0
  117. data/lib/starter_web/pages/_test_pages/_includes/documents/410_full_height_left_info.asciidoc +11 -0
  118. data/lib/starter_web/pages/_test_pages/_includes/documents/410_full_height_right_success.asciidoc +11 -0
  119. data/lib/starter_web/pages/_test_pages/_includes/documents/410_table_bs_modal_examples.asciidoc +47 -0
  120. data/lib/starter_web/pages/_test_pages/_includes/documents/410_top_info.asciidoc +11 -0
  121. data/lib/starter_web/pages/_test_pages/_includes/documents/410_top_left_info.asciidoc +11 -0
  122. data/lib/starter_web/pages/_test_pages/_includes/documents/410_top_right_success.asciidoc +11 -0
  123. data/lib/starter_web/pages/_test_pages/_includes/documents/419_advanced_modals_demo.asciidoc +337 -0
  124. data/lib/starter_web/pages/_test_pages/_includes/documents/tables/bs_modal_examples.asciidoc +47 -0
  125. data/lib/starter_web/pages/_test_pages/accordion-01-tester.adoc +220 -0
  126. data/lib/starter_web/pages/_test_pages/accordion-02-tester.adoc +177 -0
  127. data/lib/starter_web/pages/_test_pages/accordion-03-tester.adoc +148 -0
  128. data/lib/starter_web/pages/_test_pages/attribute-changes-01-tester.adoc +226 -0
  129. data/lib/starter_web/pages/_test_pages/backdrop-tester.adoc +109 -0
  130. data/lib/starter_web/pages/_test_pages/button-tester-1.adoc +127 -0
  131. data/lib/starter_web/pages/_test_pages/card-tester.adoc +128 -0
  132. data/lib/starter_web/pages/_test_pages/cookieConsent.adoc +96 -0
  133. data/lib/starter_web/pages/_test_pages/deepl.0.adoc +258 -0
  134. data/lib/starter_web/pages/_test_pages/deepl.adoc +204 -0
  135. data/lib/starter_web/pages/_test_pages/desandro-button.adoc +171 -0
  136. data/lib/starter_web/pages/_test_pages/desandro.adoc +147 -0
  137. data/lib/starter_web/pages/_test_pages/flipcard-1-tester.adoc +308 -0
  138. data/lib/starter_web/pages/_test_pages/formular-01-tester.adoc +167 -0
  139. data/lib/starter_web/pages/_test_pages/formular-02-tester.adoc +727 -0
  140. data/lib/starter_web/pages/_test_pages/google-translate-tester.0.adoc +113 -0
  141. data/lib/starter_web/pages/_test_pages/google-translate-tester.1.adoc +233 -0
  142. data/lib/starter_web/pages/_test_pages/google-translate-tester.3.adoc +149 -0
  143. data/lib/starter_web/pages/_test_pages/google-translate-tester.4.adoc +239 -0
  144. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-2.adoc +183 -0
  145. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-3.adoc +235 -0
  146. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-4.adoc +222 -0
  147. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-5.adoc +119 -0
  148. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester.1.adoc +236 -0
  149. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester.adoc +225 -0
  150. data/lib/starter_web/pages/_test_pages/list-group-tester.adoc +265 -0
  151. data/lib/starter_web/pages/_test_pages/tictok.adoc +127 -0
  152. data/lib/starter_web/pages/public/about/about_site.adoc +1 -1
  153. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/000_intro.adoc +1 -1
  154. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/100_converter.adoc +1 -1
  155. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/200_themes.adoc +1 -1
  156. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.a2p +1 -1
  157. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.adoc +1 -1
  158. data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/multi.adoc +1 -1
  159. data/lib/starter_web/pages/public/asciidoc_skeletons/simple-document/simple.adoc +1 -1
  160. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +5 -5
  161. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +3 -3
  162. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +3 -3
  163. data/lib/starter_web/pages/public/blog/navigator/archive.html +3 -3
  164. data/lib/starter_web/pages/public/blog/navigator/index.html +1 -1
  165. data/lib/starter_web/pages/public/learn/quickstart.adoc +2 -2
  166. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +2 -2
  167. data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +2 -2
  168. data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +2 -2
  169. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +2 -2
  170. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +2 -2
  171. data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +2 -2
  172. data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +2 -2
  173. data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +2 -2
  174. data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +13 -11
  175. data/lib/starter_web/pages/public/learn/roundtrip/_includes/attributes.asciidoc +1 -1
  176. data/lib/starter_web/pages/public/learn/where_to_go.adoc +2 -2
  177. data/lib/starter_web/pages/public/legal/de/100_copyright.adoc +2 -2
  178. data/lib/starter_web/pages/public/legal/de/100_impress.adoc +2 -2
  179. data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +2 -2
  180. data/lib/starter_web/pages/public/legal/de/400_comment_policy.adoc +2 -2
  181. data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +2 -2
  182. data/lib/starter_web/pages/public/legal/en/200_impress.adoc +2 -2
  183. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +2 -2
  184. data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +2 -2
  185. data/lib/starter_web/pages/public/manuals/dropdown-help.adoc +1 -1
  186. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +2 -2
  187. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +1578 -666
  188. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  189. data/lib/starter_web/utilsrv/package.json +1 -1
  190. metadata +73 -20
  191. data/assets/themes/j1/modules/bmd/css/bootstrap-material-design.css +0 -12177
  192. data/assets/themes/j1/modules/bmd/css/bootstrap-material-design.min.css +0 -8
  193. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.full.js +0 -6930
  194. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.js +0 -6936
  195. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.js.map +0 -1
  196. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.min.js +0 -1
  197. data/assets/themes/j1/modules/popper/js/popper.js.map +0 -1
  198. data/assets/themes/j1/modules/util/js/domready.js +0 -146
@@ -0,0 +1,222 @@
1
+ ---
2
+ title: Tester
3
+ tagline: infinite scroll
4
+ date: 2020-11-03 00:00:00 +100
5
+ description: >
6
+ Welcome to the preview page focussing on the image module. This page
7
+ shows some valuable features of the J1 Template to manage your image-based
8
+ content using lightboxes, carousels (slider), and galleries.
9
+
10
+ categories: [ Testpages ]
11
+ tags: [ Example ]
12
+
13
+ comments: false
14
+ fab_menu_id: page_ctrl_simple
15
+
16
+ permalink: /pages/public/learn/scroller-4/
17
+ regenerate: false
18
+
19
+ resources: [ j1scroll ]
20
+ resource_options:
21
+ - attic:
22
+ padding_top: 400
23
+ padding_bottom: 50
24
+ opacity: 0.5
25
+ slides:
26
+ - url: /assets/images/pages/roundtrip/images-1920x1280-bw.jpg
27
+ alt: Photo by Ricardo Gomez Angel on Unsplash
28
+ badge:
29
+ type: unsplash
30
+ author: Ricardo Gomez Angel
31
+ href: https://unsplash.com/@ripato/portfolio
32
+ ---
33
+
34
+ // Page Initializer
35
+ // =============================================================================
36
+ // Enable the Liquid Preprocessor
37
+ :page-liquid:
38
+
39
+ // Set (local) page attributes here
40
+ // -----------------------------------------------------------------------------
41
+ // :page--attr: <attr-value>
42
+ :images-dir: {imagesdir}/pages/roundtrip/100_present_images
43
+
44
+ // Load Liquid procedures
45
+ // -----------------------------------------------------------------------------
46
+ {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
47
+
48
+ // Load page attributes
49
+ // -----------------------------------------------------------------------------
50
+ {% include {{load_attributes}} scope="global" %}
51
+
52
+ // Page content
53
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
54
+
55
+ // Include sub-documents (if any)
56
+ // -----------------------------------------------------------------------------
57
+
58
+ == Infinite scroll example 3
59
+
60
+ lorem:sentences[5]
61
+
62
+ ++++
63
+ <div class="row">
64
+ <ul id="home_news_panel-scroll-group" class="list-group list-group-horizontal align-items-stretch flex-wrap">
65
+ <!-- [INFO ] [j1.assets.data.panel.html ] [ write post items ] -->
66
+ <li id="home_news_panel-scroll-item" class="list-group-item items-2 p-0">
67
+ <article class="card card-same-height raised-z3 mb-3">
68
+ <img class="img-fluid img-object--cover g-height-200" src="/assets/images/modules/attics/katie-moum-1920x1280.jpg" alt="Welcome">
69
+ <h3 class="card-header bg-primary notoc">Welcome</h3>
70
+ <!-- Body|Excerpt -->
71
+ <div class="card-body r-text-300 mt-4">
72
+ <div class="paragraph dropcap">
73
+ <p class="dropcap"><span class="j1-dropcap">A</span>ll you’re doing at the end of the day is writing your content, and the J1
74
+ Template does all the tricky things: putting out HTML, Javascript, and CSS.
75
+ As a result, the site creation process gets out of your way.</p>
76
+ </div>
77
+ <div class="paragraph">
78
+ <p><strong>Sounds fun, isn’t it</strong>?</p>
79
+ </div>
80
+ </div>
81
+ <!-- End Body|Excerpt -->
82
+ <div class="card-footer r-text-200">
83
+ <div class="card-footer-text">
84
+ <i class="mdi mdi-calendar-blank md-grey-600 mr-1"></i>2021 March, 28
85
+ </div>
86
+ <a class="card-link text-muted text-lowercase" href="/posts/public/featured/info/2021/03/28/welcome-to-j1/">
87
+ read · jekyll for everyone
88
+ </a>
89
+ </div>
90
+ </article>
91
+ </li>
92
+ <li id="home_news_panel-scroll-item" class="list-group-item items-2 p-0">
93
+
94
+ <article class="card card-same-height raised-z3 mb-3">
95
+ <img class="img-fluid img-object--cover g-height-200" src="/assets/images/modules/attics/runner-1920x1200.jpg" alt="J1 Template">
96
+ <h3 class="card-header bg-primary notoc">J1 Template</h3>
97
+ <!-- Body|Excerpt -->
98
+ <div class="card-body r-text-300 mt-4">
99
+ <div class="paragraph dropcap">
100
+ <p class="dropcap"><span class="j1-dropcap">T</span>he template system was initially developed to create a simple but fully
101
+ configurable website creation toolset for document servers. Document servers
102
+ provide websites or other content formats like PDF, projects, software
103
+ documentation, or similar approaches.</p>
104
+ </div>
105
+ </div>
106
+ <!-- End Body|Excerpt -->
107
+ <div class="card-footer r-text-200">
108
+ <div class="card-footer-text">
109
+ <i class="mdi mdi-calendar-blank md-grey-600 mr-1"></i>2021 March, 3
110
+ </div>
111
+ <a class="card-link text-muted text-lowercase" href="/posts/public/featured/knowledge/2021/03/03/about-j1/">
112
+ read · first version is out
113
+ </a>
114
+ </div>
115
+ </article>
116
+ </li>
117
+ </ul>
118
+ </div>
119
+ ++++
120
+
121
+ ++++
122
+ <script>
123
+
124
+ var _createClass = function () {
125
+ function defineProperties(target, props) {
126
+ for (var i = 0; i < props.length; i++) {
127
+ var descriptor = props[i];
128
+ descriptor.enumerable = descriptor.enumerable || false;
129
+ descriptor.configurable = true;
130
+ if ("value" in descriptor) descriptor.writable = true;
131
+ Object.defineProperty(target, descriptor.key, descriptor);
132
+ }
133
+ }
134
+ return function (Constructor, protoProps, staticProps) {
135
+ if (protoProps) defineProperties(Constructor.prototype, protoProps);
136
+ if (staticProps) defineProperties(Constructor, staticProps);
137
+ return Constructor;
138
+ };
139
+ }();
140
+
141
+ function _classCallCheck(instance, Constructor) {
142
+ if (!(instance instanceof Constructor)) {
143
+ throw new TypeError("Cannot call a class as a function");
144
+ }
145
+ }
146
+
147
+ var j1Scroller = function () {
148
+ function j1Scroller(path, wrapperId) {
149
+ _classCallCheck(this, j1Scroller);
150
+
151
+ if (path === undefined || wrapperId === undefined) throw Error('no parameter.');
152
+ this.path = path;
153
+ this.pNum = 2;
154
+ this.pMaxNum = 6;
155
+ this.wNode = document.getElementById(wrapperId);
156
+ this.wrapperId = wrapperId;
157
+ this.enable = true;
158
+
159
+ this.detectScroll();
160
+ }
161
+
162
+ _createClass(j1Scroller, [{
163
+ key: 'detectScroll',
164
+ value: function detectScroll() {
165
+ var _this = this;
166
+
167
+ window.onscroll = function (ev) {
168
+ if (window.innerHeight + window.pageYOffset >= document.body.offsetHeight) _this.getNewPost();
169
+ };
170
+ }
171
+ }, {
172
+ key: 'getNewPost',
173
+ value: function getNewPost() {
174
+ var _this = this;
175
+ if (_this.pNum >= this.pMaxNum ) {
176
+ return;
177
+ }
178
+ if (this.enable === false) return false;
179
+ this.enable = false;
180
+ var xmlhttp = new XMLHttpRequest();
181
+ xmlhttp.onreadystatechange = function () {
182
+ if (xmlhttp.readyState == XMLHttpRequest.DONE) {
183
+ if (xmlhttp.status == 200) {
184
+ _this.pNum++;
185
+ var childItems = _this.getChildItemsByAjaxHTML(xmlhttp.responseText);
186
+ _this.appendNewItems(childItems);
187
+ }
188
+ return _this.enable = true;
189
+ }
190
+ };
191
+ xmlhttp.open("GET", location.origin + this.path + this.pNum + '/index.html', true);
192
+ xmlhttp.send();
193
+ }
194
+ }, {
195
+ key: 'getChildItemsByAjaxHTML',
196
+ value: function getChildItemsByAjaxHTML(HTMLText) {
197
+ var newHTML = document.createElement('html');
198
+ newHTML.innerHTML = HTMLText;
199
+ var childItems = newHTML.querySelectorAll('#' + this.wrapperId + ' > *');
200
+ return childItems;
201
+ }
202
+ }, {
203
+ key: 'appendNewItems',
204
+ value: function appendNewItems(items) {
205
+ var _this = this;
206
+
207
+ items.forEach(function (item) {
208
+ _this.wNode.appendChild(item);
209
+ });
210
+ }
211
+ }]);
212
+
213
+ return j1Scroller;
214
+ }();
215
+
216
+ var postWrapperId = 'home_news_panel-scroll-group';
217
+ var paginatePath = '/assets/data/news_panel_posts/page';
218
+
219
+ // new j1Scroller(paginatePath, postWrapperId);
220
+
221
+ </script>
222
+ ++++
@@ -0,0 +1,119 @@
1
+ ---
2
+ title: Tester
3
+ tagline: infinite scroll
4
+ date: 2020-11-03 00:00:00 +100
5
+ description: >
6
+ Welcome to the preview page focussing on the image module. This page
7
+ shows some valuable features of the J1 Template to manage your image-based
8
+ content using lightboxes, carousels (slider), and galleries.
9
+
10
+ categories: [ Testpages ]
11
+ tags: [ Example ]
12
+
13
+ comments: false
14
+ fab_menu_id: page_ctrl_simple
15
+
16
+ permalink: /pages/public/learn/scroller-5/
17
+ regenerate: false
18
+
19
+ resources: [ j1scroll, showonscroll ]
20
+ resource_options:
21
+ - attic:
22
+ padding_top: 400
23
+ padding_bottom: 50
24
+ opacity: 0.5
25
+ slides:
26
+ - url: /assets/images/pages/roundtrip/images-1920x1280-bw.jpg
27
+ alt: Photo by Ricardo Gomez Angel on Unsplash
28
+ badge:
29
+ type: unsplash
30
+ author: Ricardo Gomez Angel
31
+ href: https://unsplash.com/@ripato/portfolio
32
+ ---
33
+
34
+ // Page Initializer
35
+ // =============================================================================
36
+ // Enable the Liquid Preprocessor
37
+ :page-liquid:
38
+
39
+ // Set (local) page attributes here
40
+ // -----------------------------------------------------------------------------
41
+ // :page--attr: <attr-value>
42
+ :images-dir: {imagesdir}/pages/roundtrip/100_present_images
43
+
44
+ // Load Liquid procedures
45
+ // -----------------------------------------------------------------------------
46
+ {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
47
+
48
+ // Load page attributes
49
+ // -----------------------------------------------------------------------------
50
+ {% include {{load_attributes}} scope="global" %}
51
+
52
+ // Page content
53
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
54
+
55
+ // Include sub-documents (if any)
56
+ // -----------------------------------------------------------------------------
57
+
58
+ == Infinite scroll example 5
59
+
60
+ lorem:sentences[5]
61
+
62
+ ++++
63
+ <div class="noClass">
64
+ <ul id="home_news_panel-scroll-group" class="list-group list-group-horizontal align-items-stretch flex-wrap">
65
+ <!-- [INFO ] [j1.assets.data.panel.html ] [ write post items ] -->
66
+ <li id="home_news_panel-scroll-item" class="list-group-item items-2 p-0">
67
+ <article class="card card-same-height raised-z3 mb-3">
68
+ <img class="img-fluid img-object--cover g-height-200" src="/assets/images/modules/attics/katie-moum-1920x1280.jpg" alt="Welcome">
69
+ <h3 class="card-header bg-primary notoc">Welcome</h3>
70
+ <!-- Body|Excerpt -->
71
+ <div class="card-body r-text-300 mt-4">
72
+ <div class="paragraph dropcap">
73
+ <p class="dropcap"><span class="j1-dropcap">A</span>ll you’re doing at the end of the day is writing your content, and the J1
74
+ Template does all the tricky things: putting out HTML, Javascript, and CSS.
75
+ As a result, the site creation process gets out of your way.</p>
76
+ </div>
77
+ <div class="paragraph">
78
+ <p><strong>Sounds fun, isn’t it</strong>?</p>
79
+ </div>
80
+ </div>
81
+ <!-- End Body|Excerpt -->
82
+ <div class="card-footer r-text-200">
83
+ <div class="card-footer-text">
84
+ <i class="mdi mdi-calendar-blank md-grey-600 mr-1"></i>2021 March, 28
85
+ </div>
86
+ <a class="card-link text-muted text-lowercase" href="/posts/public/featured/info/2021/03/28/welcome-to-j1/">
87
+ read · jekyll for everyone
88
+ </a>
89
+ </div>
90
+ </article>
91
+ </li>
92
+ <li id="home_news_panel-scroll-item" class="list-group-item items-2 p-0">
93
+
94
+ <article class="card card-same-height raised-z3 mb-3">
95
+ <img class="img-fluid img-object--cover g-height-200" src="/assets/images/modules/attics/runner-1920x1200.jpg" alt="J1 Template">
96
+ <h3 class="card-header bg-primary notoc">J1 Template</h3>
97
+ <!-- Body|Excerpt -->
98
+ <div class="card-body r-text-300 mt-4">
99
+ <div class="paragraph dropcap">
100
+ <p class="dropcap"><span class="j1-dropcap">T</span>he template system was initially developed to create a simple but fully
101
+ configurable website creation toolset for document servers. Document servers
102
+ provide websites or other content formats like PDF, projects, software
103
+ documentation, or similar approaches.</p>
104
+ </div>
105
+ </div>
106
+ <!-- End Body|Excerpt -->
107
+ <div class="card-footer r-text-200">
108
+ <div class="card-footer-text">
109
+ <i class="mdi mdi-calendar-blank md-grey-600 mr-1"></i>2021 March, 3
110
+ </div>
111
+ <a class="card-link text-muted text-lowercase" href="/posts/public/featured/knowledge/2021/03/03/about-j1/">
112
+ read · first version is out
113
+ </a>
114
+ </div>
115
+ </article>
116
+ </li>
117
+ </ul>
118
+ </div>
119
+ ++++
@@ -0,0 +1,236 @@
1
+ ---
2
+ title: Tester
3
+ tagline: infinite scroll
4
+ date: 2020-11-03 00:00:00 +100
5
+ description: >
6
+ Welcome to the preview page focussing on the image module. This page
7
+ shows some valuable features of the J1 Template to manage your image-based
8
+ content using lightboxes, carousels (slider), and galleries.
9
+
10
+ categories: [ Testpages ]
11
+ tags: [ Example ]
12
+
13
+ comments: false
14
+ fab_menu_id: page_ctrl_simple
15
+
16
+ permalink: /pages/public/learn/scroller/
17
+ regenerate: false
18
+
19
+ resources: [
20
+ clipboard, rouge, carousel, lightbox,
21
+ justifiedGallery, lightGallery
22
+ ]
23
+ resource_options:
24
+ - attic:
25
+ padding_top: 400
26
+ padding_bottom: 50
27
+ opacity: 0.5
28
+ slides:
29
+ - url: /assets/images/pages/roundtrip/images-1920x1280-bw.jpg
30
+ alt: Photo by Ricardo Gomez Angel on Unsplash
31
+ badge:
32
+ type: unsplash
33
+ author: Ricardo Gomez Angel
34
+ href: https://unsplash.com/@ripato/portfolio
35
+ ---
36
+
37
+ // Page Initializer
38
+ // =============================================================================
39
+ // Enable the Liquid Preprocessor
40
+ :page-liquid:
41
+
42
+ // Set (local) page attributes here
43
+ // -----------------------------------------------------------------------------
44
+ // :page--attr: <attr-value>
45
+ :images-dir: {imagesdir}/pages/roundtrip/100_present_images
46
+
47
+ // Load Liquid procedures
48
+ // -----------------------------------------------------------------------------
49
+ {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
50
+
51
+ // Load page attributes
52
+ // -----------------------------------------------------------------------------
53
+ {% include {{load_attributes}} scope="global" %}
54
+
55
+ // Page content
56
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
57
+
58
+ // Include sub-documents (if any)
59
+ // -----------------------------------------------------------------------------
60
+
61
+ == Example with cards
62
+ ++++
63
+ <div class="row">
64
+ <section id="scroller">
65
+ <ul class="list-group list-group-horizontal align-items-stretch flex-wrap">
66
+ <li class="list-group-item items-2 p-0">
67
+ <article class="card raised-z3 p-0">
68
+ <img class="img-fluid img-object--cover" src="/assets/images/modules/attics/rirri-1920x1280.jpg" alt="Polaroid">
69
+ <h3 class="card-header bg-primary notoc">Polaroid</h3>
70
+ <div class="card-body r-text-300">
71
+ <div class="paragraph dropcap">
72
+ <p class="dropcap"><span class="j1-dropcap">M</span>ehr als zehn Jahre nach der Insolvenz von Polaroid ist die Sofortbildfotografie heute erfolgreicher denn je. Sofortbilder sind vorallem eines: Einzigartig. Polaroids fangen Momente ein wie sind. Nicht zu wiederholen.</p>
73
+ </div>
74
+ <div class="paragraph">
75
+ <p><strong>Was geht denn sofort?</strong></p>
76
+ </div>
77
+ </div>
78
+ <div class="card-footer r-text-200">
79
+
80
+ <div class="card-footer-text"> <i class="mdi mdi-calendar-blank md-grey-600 mr-1"></i>1. Januar 2025 </div>
81
+ <a class="card-link text-muted text-lowercase" href="/posts/public/featured/produkte/2025/01/01/gegenbewegung_polaroit/"> lesen · Gegenbewegung </a>
82
+ </div>
83
+ </article>
84
+ </li>
85
+ <li class="list-group-item items-2 p-0">
86
+ <article class="card raised-z3 p-0">
87
+ <img class="img-fluid img-object--cover" src="/assets/images/modules/attics/franck-1920x1280.jpg" alt="TikTok">
88
+ <h3 class="card-header bg-primary notoc">TikTok</h3>
89
+ <div class="card-body r-text-300">
90
+ <div class="paragraph dropcap">
91
+ <p class="dropcap"><span class="j1-dropcap">T</span>ikTok ist eine Social-Media Plattform mit Schwerpunkt Video-Content. Die Nutzer können kurze selbstgemachte Videos teilen. Die Plattform bietet einen Raum, in dem einfach und schnell die eigenen Inhalte veröffentlicht werden können.</p>
92
+ </div>
93
+ <div class="paragraph">
94
+ <p><strong>Was kann TikTok besser?</strong></p>
95
+ </div>
96
+ </div>
97
+ <div class="card-footer r-text-200">
98
+
99
+ <div class="card-footer-text"> <i class="mdi mdi-calendar-blank md-grey-600 mr-1"></i>1. Januar 2025 </div>
100
+ <a class="card-link text-muted text-lowercase" href="/posts/public/featured/produkte/2025/01/01/aufsteiger_tiktok/"> lesen · video neu gedacht </a>
101
+ </div>
102
+ </article>
103
+ </li>
104
+ </ul>
105
+ </section>
106
+ <div class="page-load-status">
107
+ <div class="loader-ellips infinite-scroll-request">
108
+ <span class="loader-ellips__dot"></span>
109
+ <span class="loader-ellips__dot"></span>
110
+ <span class="loader-ellips__dot"></span>
111
+ <span class="loader-ellips__dot"></span>
112
+ </div>
113
+ <!-- p class="infinite-scroll-last">End of content</p -->
114
+ <!-- p class="infinite-scroll-error">Weitere Artikel finden Sie im <a href="/pages/public/blog/navigator/">Blog Navigator</a></p -->
115
+ <p class="infinite-scroll-last">Weitere Artikel finden Sie im <a href="/pages/public/blog/navigator/">Blog Navigator</a></p>
116
+ </div>
117
+
118
+ <!-- div class="last-page-indicator">
119
+ <p class="infinite-scroll-last">End of content</p>
120
+ <p class="infinite-scroll-error">Weitere Artikel finden Sie im <a href="/pages/public/blog/navigator/">Blog Navigator</a></p>
121
+ </div -->
122
+
123
+ </div>
124
+
125
+ <style>
126
+
127
+ .card {
128
+ height: calc(100% - 1.75rem);
129
+ }
130
+
131
+ .page-load-status {
132
+ display: none; /* hidden by default */
133
+ padding-top: 20px;
134
+ border-top: 1px solid #DDD;
135
+ text-align: center;
136
+ color: #777;
137
+ }
138
+
139
+ .loader-ellips {
140
+ font-size: 20px; /* change size here */
141
+ position: relative;
142
+ width: 4em;
143
+ height: 1em;
144
+ margin: 10px auto;
145
+ }
146
+
147
+ .loader-ellips__dot {
148
+ display: block;
149
+ width: 1em;
150
+ height: 1em;
151
+ border-radius: 0.5em;
152
+ background: #555; /* change color here */
153
+ position: absolute;
154
+ animation-duration: 0.5s;
155
+ animation-timing-function: ease;
156
+ animation-iteration-count: infinite;
157
+ }
158
+
159
+ .loader-ellips__dot:nth-child(1),
160
+ .loader-ellips__dot:nth-child(2) {
161
+ left: 0;
162
+ }
163
+ .loader-ellips__dot:nth-child(3) { left: 1.5em; }
164
+ .loader-ellips__dot:nth-child(4) { left: 3em; }
165
+
166
+ @keyframes reveal {
167
+ from { transform: scale(0.001); }
168
+ to { transform: scale(1); }
169
+ }
170
+
171
+ @keyframes slide {
172
+ to { transform: translateX(1.5em) }
173
+ }
174
+
175
+ .loader-ellips__dot:nth-child(1) {
176
+ animation-name: reveal;
177
+ }
178
+
179
+ .loader-ellips__dot:nth-child(2),
180
+ .loader-ellips__dot:nth-child(3) {
181
+ animation-name: slide;
182
+ }
183
+
184
+ .loader-ellips__dot:nth-child(4) {
185
+ animation-name: reveal;
186
+ animation-direction: reverse;
187
+ }
188
+
189
+ </style>
190
+
191
+ <script>
192
+
193
+ $(document).ready(function() {
194
+
195
+ var dependencies_met_page_ready = setInterval (function (options) {
196
+ if ( j1.getState() === 'finished' ) {
197
+ var logger = log4javascript.getLogger("j1.infiniteScroll");
198
+ var log_text = '\n module infiniteScroll is being initialized';
199
+ logger.info(log_text);
200
+
201
+ function getPosts() {
202
+ var pageNumber = ( this.loadCount + 1 );
203
+ if ( pageNumber < 30) {
204
+ return `/pages/public/scroller/scroller-p${pageNumber}.html`;
205
+ }
206
+ }
207
+
208
+ // status: '.page-load-status',
209
+ $('.list-group').infiniteScroll({
210
+ path: getPosts,
211
+ append: '.list-group-item',
212
+ history: false,
213
+ scrollThreshold: 10,
214
+ checkLastPage: true,
215
+ status: '.page-load-status',
216
+ });
217
+
218
+ $('.list-group').on( 'error.infiniteScroll', function( event, error, path, response ) {
219
+ var logger = log4javascript.getLogger("j1.infiniteScroll");
220
+ var log_text = `\n Could not load: ${path}. ${error}`;
221
+ logger.info(log_text);
222
+ });
223
+
224
+ $('.list-group').on( 'last.infiniteScroll', function( event, body, path ) {
225
+ var logger = log4javascript.getLogger("j1.infiniteScroll");
226
+ var log_text = `\n last page reached on ${path}`;
227
+ logger.info(log_text);
228
+ // console.log(`Last page hit on ${path}`);
229
+ });
230
+ clearInterval(dependencies_met_page_ready);
231
+ }
232
+ });
233
+ });
234
+
235
+ </script>
236
+ ++++