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,239 @@
1
+ ---
2
+ title: Tester
3
+ tagline: google translate
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/gtrans-4/
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
+ ++++
62
+ <div class="ct-topbar">
63
+ <div class="container">
64
+ <ul class="list-unstyled list-inline ct-topbar__list">
65
+ <li class="ct-language">Language <i class="fa fa-arrow-down"></i>
66
+ <ul class="list-unstyled ct-language__dropdown">
67
+ <li><a href="#void" class="lang-select" src-lang="en" dest-lang="en"><i class="flag-icon flag-icon-us rectangle size-md" alt="USA"></i></a> American English</li>
68
+ <li><a href="#void" class="lang-select" src-lang="en" dest-lang="de"><i class="flag-icon flag-icon-de rectangle size-md" alt="GERMANY"></i></a> German</li>
69
+ <li><a href="#void" class="lang-select" src-lang="en" dest-lang="es"><i class="flag-icon flag-icon-es rectangle size-md" alt="SPAIN"></i></a> Spanish</li>
70
+ <li><a href="#void" class="lang-select" src-lang="en" dest-lang="fr"><i class="flag-icon flag-icon-fr rectangle size-md" alt="FRANCE"></i></a> French</li>
71
+ <li><a href="#void" class="lang-select" src-lang="remove"> Stop translation </a> </li>
72
+ </ul>
73
+ </li>
74
+ </ul>
75
+ </div>
76
+ </div>
77
+ ++++
78
+
79
+ Machine translation (MT) transfers information from one language to another
80
+ by a computer without human intervention. NMT is the most advanced method
81
+ of computer-generated translations. Thanks to autonomous learning based on
82
+ artificial intelligence.
83
+
84
+ == Neural Machine Translation
85
+
86
+ Neural Machine Translation (NMT) works on a completely different principle
87
+ than previous statistics-based or rule-based machine translation methods.
88
+ The NMT uses a large neural network based on the human brain model with
89
+ the help of artificial intelligence.
90
+
91
+ The NMT is the most advanced method of computer-generated translations.
92
+ Thanks to autonomous learning based on artificial intelligence, Big Data,
93
+ and Deep Learning, this method has made enormous progress in the last recent
94
+ years. Nowadays, neural machine translation programs can be used as a basis
95
+ for professional translations.
96
+
97
+ Neural algorithms can generate accurate translations as well as *learn* a
98
+ language. This technology improves the quality of the translated data
99
+ continuously. For the NMT to work well, it must be trained to be used.
100
+ Training means that a large amount of data feeds the algorithms to
101
+ improve the reliability of the final results.
102
+
103
+ == Translation with Deepl
104
+
105
+ _Deepl_ offers one of the best NMT engines worldwide. The translater can be
106
+ used online or by an application (app) installed on a computer locally.
107
+ The third option to translate is the cloud-based service offered
108
+ by the *Deepl API* to be integrated into custom apps or websites, for example.
109
+
110
+ J1 integrates the cloud-based translator service for the *Free* service and
111
+ professional translations using the *Pro* system. The current API *version V2*
112
+ supports the translation of more than 25 languages vice versa.
113
+
114
+ Try the translator with _Jekyll One_ and _Deepl_ on your own!
115
+
116
+
117
+ ++++
118
+ <style>
119
+
120
+ /* hide the suggestion box */
121
+ #goog-gt-tt, .goog-te-balloon-frame {
122
+ display: none !important;
123
+ }
124
+ .goog-text-highlight {
125
+ background: none !important;
126
+ box-shadow: none !important;
127
+ }
128
+
129
+ /* hide the powered by */
130
+ .goog-logo-link {display: none !important;}
131
+ .goog-te-gadget {height: 28px !important; overflow: hidden;}
132
+
133
+ /* remove the top frame */
134
+ /* body{ top: 0 !important;}
135
+ .goog-te-banner-frame{display: none !important;} */
136
+
137
+ </style>
138
+ ++++
139
+
140
+ ++++
141
+ <script>
142
+
143
+ var gtranslate = true;
144
+ var srcLang = 'en';
145
+
146
+ function googleTranslateElementInit() {
147
+ new google.translate.TranslateElement({
148
+ pageLanguage: 'en',
149
+ layout: google.translate.TranslateElement.FloatPosition.TOP_LEFT
150
+ },
151
+ 'google_translate_element'
152
+ );
153
+ }
154
+
155
+ // Set a Cookie
156
+ function setCookie(options) {
157
+ var defaults = {
158
+ name: '',
159
+ path: '/',
160
+ expires: 0,
161
+ domain: 'localhost'
162
+ };
163
+ var settings = $.extend(defaults, options);
164
+
165
+ let date = new Date();
166
+ date.setTime(date.getTime() + (settings.expires * 24 * 60 * 60 * 1000));
167
+ const expires = "expires=" + date.toUTCString();
168
+ // document.cookie = cName + "=" + cValue + "; " + expires + "; path=/";
169
+ document.cookie = settings.name + "=" + settings.data + "; " + expires + "; path=/";
170
+ // document.cookie = settings.name + '=' + settings.data + '; ' + expires + '; path=' + settings.path + '"';
171
+ // document.cookie = settings.name + '=' + settings.data + '; path=' + settings.path + '"';
172
+ }
173
+
174
+ // ---------------------------------------------------------------------------
175
+ // Manage events
176
+ // ---------------------------------------------------------------------------
177
+ window.onload = function (event) {
178
+ var cookie_names = j1.getCookieNames();
179
+ var date = new Date();
180
+ var timestamp_now = date.toISOString();
181
+ var user_state = j1.readCookie(cookie_names.user_state);
182
+ var user_consent = j1.readCookie(cookie_names.user_consent);
183
+ var head = document.getElementsByTagName('head')[0];
184
+ var script = document.createElement('script');
185
+ var thisURI = window.location.href
186
+
187
+ // set script details for google-translate
188
+ script.id = 'google-translate';
189
+ script.src = '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit';
190
+
191
+ // set current TS to cookie
192
+ user_state.last_session_ts = timestamp_now;
193
+
194
+ // enable|disable google-translate
195
+ if (!user_consent.personalization || !gtranslate) {
196
+ user_state.gtranslate = 'disabled';
197
+ cookie_written = j1.writeCookie({
198
+ name: cookie_names.user_state,
199
+ data: user_state,
200
+ samesite: 'Strict',
201
+ expires: 0
202
+ });
203
+ j1.removeCookie({name: 'googtrans'});
204
+ } else {
205
+ user_state.gtranslate = 'enabled';
206
+ cookie_written = j1.writeCookie({
207
+ name: cookie_names.user_state,
208
+ data: user_state,
209
+ samesite: 'Strict',
210
+ expires: 365
211
+ });
212
+ head.appendChild(script);
213
+ }
214
+ }; // END onload
215
+
216
+ $('.lang-select').click(function() {
217
+ var cookie_names = j1.getCookieNames();
218
+ var srcLang = $(this).attr('src-lang');
219
+ var destLang = $(this).attr('dest-lang');
220
+ // var thisURI = decodeURIComponent($(this).attr('href'));
221
+ var transCode = '/' + srcLang + '/' + destLang;
222
+
223
+ // location.reload();
224
+ // j1.writeCookie({
225
+ // name: 'googtrans',
226
+ // data: transCode
227
+ // });
228
+
229
+ setCookie({
230
+ name: 'googtrans',
231
+ data: transCode
232
+ });
233
+ // window.location = thisURI;
234
+ window.location = window.location.pathname;
235
+ location.reload();
236
+ });
237
+
238
+ </script>
239
+ ++++
@@ -0,0 +1,183 @@
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
+ pagination:
14
+ enabled: true
15
+ per_page: 2
16
+ permalink: /page:num/
17
+
18
+ comments: false
19
+ fab_menu_id: page_ctrl_simple
20
+
21
+ permalink: /pages/public/learn/scroller-2/
22
+ regenerate: false
23
+
24
+ resources: [ j1Scroller ]
25
+ resource_options:
26
+ - attic:
27
+ padding_top: 400
28
+ padding_bottom: 50
29
+ opacity: 0.5
30
+ slides:
31
+ - url: /assets/images/pages/roundtrip/images-1920x1280-bw.jpg
32
+ alt: Photo by Ricardo Gomez Angel on Unsplash
33
+ badge:
34
+ type: unsplash
35
+ author: Ricardo Gomez Angel
36
+ href: https://unsplash.com/@ripato/portfolio
37
+ ---
38
+
39
+ // Page Initializer
40
+ // =============================================================================
41
+ // Enable the Liquid Preprocessor
42
+ :page-liquid:
43
+
44
+ // Set (local) page attributes here
45
+ // -----------------------------------------------------------------------------
46
+ // :page--attr: <attr-value>
47
+ :images-dir: {imagesdir}/pages/roundtrip/100_present_images
48
+
49
+ // Load Liquid procedures
50
+ // -----------------------------------------------------------------------------
51
+ {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
52
+
53
+ // Load page attributes
54
+ // -----------------------------------------------------------------------------
55
+ {% include {{load_attributes}} scope="global" %}
56
+
57
+ {% comment %} language detection|i18n
58
+ -------------------------------------------------------------------------------- {% endcomment %}
59
+ {% if site.language == "en" %}
60
+ {% assign language = "en" %}
61
+ {% elsif site.language == "de"%}
62
+ {% assign language = "de" %}
63
+ {% else %}
64
+ {% assign language = "en" %}
65
+ {% endif %}
66
+
67
+ {% if language == "en" %}
68
+ {% assign readmore_text = "read" %}
69
+ {% assign infinite_scroll_last = "More articles can be found with the" %}
70
+ {% endif %}
71
+
72
+ {% if language == "de" %}
73
+ {% assign readmore_text = "lesen" %}
74
+ {% assign infinite_scroll_last = "Weitere Artikel finden Sie im" %}
75
+ {% endif %}
76
+
77
+ // Page content
78
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
79
+
80
+ // Include sub-documents (if any)
81
+ // -----------------------------------------------------------------------------
82
+
83
+ == Infinite scroll example 2
84
+
85
+ lorem:sentences[5]
86
+
87
+ ++++
88
+ <div class="card--group" id="card-wrapper">
89
+ {% for post in site.posts %}
90
+ <a href="{{ post.url | relative_url }}">
91
+ <div class="card">
92
+ <div class="card__header">
93
+ <h3 class="card__header__title">{{ post.title | escape }}</h3>
94
+ </div>
95
+ <div class="card__body">
96
+ {{ post.excerpt }}
97
+ </div>
98
+ </div>
99
+ </a>
100
+ {% endfor %}
101
+ </div>
102
+ ++++
103
+
104
+ ++++
105
+ <script>
106
+
107
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
108
+
109
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
110
+
111
+ var j1Scroller = function () {
112
+ function j1Scroller(path, wrapperId) {
113
+ _classCallCheck(this, j1Scroller);
114
+
115
+ if (path === undefined || wrapperId === undefined) throw Error('no parameter.');
116
+ this.path = path;
117
+ this.pNum = 2;
118
+ this.wNode = document.getElementById(wrapperId);
119
+ this.wrapperId = wrapperId;
120
+ this.enable = true;
121
+
122
+ this.detectScroll();
123
+ }
124
+
125
+ _createClass(j1Scroller, [{
126
+ key: 'detectScroll',
127
+ value: function detectScroll() {
128
+ var _this = this;
129
+
130
+ window.onscroll = function (ev) {
131
+ if (window.innerHeight + window.pageYOffset >= document.body.offsetHeight) _this.getNewPost();
132
+ };
133
+ }
134
+ }, {
135
+ key: 'getNewPost',
136
+ value: function getNewPost() {
137
+ var _this2 = this;
138
+
139
+ if (this.enable === false) return false;
140
+ this.enable = false;
141
+ var xmlhttp = new XMLHttpRequest();
142
+ xmlhttp.onreadystatechange = function () {
143
+ if (xmlhttp.readyState == XMLHttpRequest.DONE) {
144
+ if (xmlhttp.status == 200) {
145
+ _this2.pNum++;
146
+ var childItems = _this2.getChildItemsByAjaxHTML(xmlhttp.responseText);
147
+ _this2.appendNewItems(childItems);
148
+ }
149
+ return _this2.enable = true;
150
+ }
151
+ };
152
+ xmlhttp.open("GET", location.origin + this.path + this.pNum + '/index.html', true);
153
+ xmlhttp.send();
154
+ }
155
+ }, {
156
+ key: 'getChildItemsByAjaxHTML',
157
+ value: function getChildItemsByAjaxHTML(HTMLText) {
158
+ var newHTML = document.createElement('html');
159
+ newHTML.innerHTML = HTMLText;
160
+ var childItems = newHTML.querySelectorAll('#' + this.wrapperId + ' > *');
161
+ return childItems;
162
+ }
163
+ }, {
164
+ key: 'appendNewItems',
165
+ value: function appendNewItems(items) {
166
+ var _this3 = this;
167
+
168
+ items.forEach(function (item) {
169
+ _this3.wNode.appendChild(item);
170
+ });
171
+ }
172
+ }]);
173
+
174
+ return j1Scroller;
175
+ }();
176
+
177
+
178
+ var postWrapperId = 'card-wrapper';
179
+ var paginatePath = '/pages/public/learn/scroller-2/page'
180
+ new j1Scroller(paginatePath, postWrapperId);
181
+
182
+ </script>
183
+ ++++
@@ -0,0 +1,235 @@
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-3/
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
+ $(function() {
217
+ var dependencies_met_page_ready = setInterval (function (options) {
218
+ if (j1.getState() === 'finished') {
219
+
220
+ var postWrapperId = 'home_news_panel-scroll-group';
221
+ var paginatePath = '/assets/data/news_panel_posts/page';
222
+
223
+ new j1Scroller(paginatePath, postWrapperId);
224
+
225
+ $("#home_news_panel-scroll-group").j1Scroll({
226
+ propertyName: "a custom value"
227
+ });
228
+
229
+ clearInterval(dependencies_met_page_ready);
230
+ }
231
+ });
232
+ });
233
+
234
+ </script>
235
+ ++++