j1-template 2021.1.13 → 2021.1.18

Sign up to get free protection for your applications and to get access to all the features.
Files changed (144) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/blocks/footer/boxes/issue.proc +28 -5
  3. data/_includes/themes/j1/blocks/footer/boxes/legal_statements.proc +66 -23
  4. data/_includes/themes/j1/blocks/footer/boxes/links_box.proc +0 -1
  5. data/_includes/themes/j1/blocks/footer/boxes/news_box.proc +16 -1
  6. data/_includes/themes/j1/layouts/content_generator_blog_archive.html +197 -219
  7. data/_includes/themes/j1/layouts/content_generator_collection.html +4 -2
  8. data/_includes/themes/j1/layouts/content_generator_post.html +34 -24
  9. data/_includes/themes/j1/layouts/layout_metadata_generator.html +30 -7
  10. data/_includes/themes/j1/modules/navigator/procedures/topsearch.proc +2 -2
  11. data/_includes/themes/j1/procedures/posts/collate_timeline.proc +27 -5
  12. data/_includes/themes/j1/procedures/posts/create_series_header.proc +1 -1
  13. data/_includes/themes/j1/procedures/posts/pager.proc +123 -0
  14. data/_layouts/default.html +2 -2
  15. data/assets/data/authclient.html +1 -0
  16. data/assets/data/banner.html +1 -0
  17. data/assets/data/carousel.json +1 -0
  18. data/assets/data/cookieconsent.html +1 -2
  19. data/assets/data/fam.html +1 -0
  20. data/assets/data/footer.html +1 -0
  21. data/assets/data/galleries.json +1 -0
  22. data/assets/data/gallery_customizer.html +1 -0
  23. data/assets/data/mdi_icons.json +1 -0
  24. data/assets/data/menu.html +2 -1
  25. data/assets/data/mmenu.html +1 -0
  26. data/assets/data/mmenu_sidebar.html +1 -0
  27. data/assets/data/mmenu_toc.html +21 -1
  28. data/assets/data/panel.html +29 -7
  29. data/assets/data/quicklinks.html +1 -0
  30. data/assets/data/themes.json +1 -0
  31. data/assets/data/twa_v1.json +1 -0
  32. data/assets/error_pages/HTTP204.html +17 -2
  33. data/assets/error_pages/HTTP400.html +17 -2
  34. data/assets/error_pages/HTTP401.html +17 -2
  35. data/assets/error_pages/HTTP403.html +17 -2
  36. data/assets/error_pages/HTTP404.html +17 -2
  37. data/assets/error_pages/HTTP444.html +17 -2
  38. data/assets/error_pages/HTTP500.html +17 -2
  39. data/assets/error_pages/HTTP501.html +17 -2
  40. data/assets/error_pages/HTTP502.html +17 -2
  41. data/assets/error_pages/HTTP503.html +17 -3
  42. data/assets/themes/j1/adapter/js/cookieConsent.js +9 -8
  43. data/assets/themes/j1/adapter/js/j1.js +137 -65
  44. data/assets/themes/j1/adapter/js/navigator.js +7 -0
  45. data/assets/themes/j1/adapter/js/themer.js +16 -26
  46. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +21 -42
  47. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +1 -1
  48. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.min.js +2 -288
  49. data/assets/themes/j1/modules/themeSwitcher/js/switcher.js +60 -41
  50. data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +75 -57
  51. data/lib/j1/version.rb +1 -1
  52. data/lib/starter_web/Gemfile +4 -5
  53. data/lib/starter_web/_config.yml +7 -1
  54. data/lib/starter_web/_data/blocks/footer.yml +52 -20
  55. data/lib/starter_web/_data/blocks/panel.yml +4 -4
  56. data/lib/starter_web/_data/builder/blog_navigator.yml +9 -192
  57. data/lib/starter_web/_data/builder/defaults/blog_navigator.yml +389 -0
  58. data/lib/starter_web/_data/j1_config.yml +55 -39
  59. data/lib/starter_web/_data/locales/be.yml +269 -0
  60. data/lib/starter_web/_data/locales/cs.yml +218 -0
  61. data/lib/starter_web/_data/locales/da.yml +213 -0
  62. data/lib/starter_web/_data/locales/de.yml +222 -0
  63. data/lib/starter_web/_data/locales/el.yml +215 -0
  64. data/lib/starter_web/_data/locales/en.yml +215 -0
  65. data/lib/starter_web/_data/locales/es.yml +219 -0
  66. data/lib/starter_web/_data/locales/et.yml +207 -0
  67. data/lib/starter_web/_data/locales/fi.yml +211 -0
  68. data/lib/starter_web/_data/locales/fr.yml +219 -0
  69. data/lib/starter_web/_data/locales/hr.yml +240 -0
  70. data/lib/starter_web/_data/locales/hu.yml +196 -0
  71. data/lib/starter_web/_data/locales/it.yml +215 -0
  72. data/lib/starter_web/_data/locales/lv.yml +233 -0
  73. data/lib/starter_web/_data/locales/nl.yml +213 -0
  74. data/lib/starter_web/_data/locales/pl.yml +241 -0
  75. data/lib/starter_web/_data/locales/pt.yml +217 -0
  76. data/lib/starter_web/_data/locales/readme +4 -0
  77. data/lib/starter_web/_data/locales/ro.yml +209 -0
  78. data/lib/starter_web/_data/locales/ru.yml +269 -0
  79. data/lib/starter_web/_data/locales/sk.yml +211 -0
  80. data/lib/starter_web/_data/locales/sl.yml +209 -0
  81. data/lib/starter_web/_data/locales/sv.yml +207 -0
  82. data/lib/starter_web/_data/modules/defaults/cookieconsent.yml +10 -10
  83. data/lib/starter_web/_data/modules/defaults/quicksearch.yml +6 -5
  84. data/lib/starter_web/_data/modules/defaults/themer.yml +1 -0
  85. data/lib/starter_web/_data/modules/quicksearch.yml +4 -1
  86. data/lib/starter_web/_data/modules/themer.yml +1 -0
  87. data/lib/starter_web/_data/plugins/defaults/paginator.yml +7 -6
  88. data/lib/starter_web/_data/plugins/paginator.yml +3 -0
  89. data/lib/starter_web/_includes/attributes.asciidoc +1 -1
  90. data/lib/starter_web/_plugins/date-i18n.rb +67 -0
  91. data/lib/starter_web/_plugins/lunr_index.rb +5 -1
  92. data/lib/starter_web/assets/images/modules/attics/markus-spiske-1920x1280.jpg +0 -0
  93. data/lib/starter_web/assets/images/modules/attics/matthew-dockery-1920x1280.jpg +0 -0
  94. data/lib/starter_web/collections/posts/public/featured/_posts/2020-01-01-about-cookies.adoc +1 -1
  95. data/lib/starter_web/collections/posts/public/featured/_posts/2021-03-01-site-generators.adoc +1 -1
  96. data/lib/starter_web/collections/posts/public/featured/_posts/2021-03-03-about-j1.adoc +1 -1
  97. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-test-series.adoc +2 -2
  98. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-test-series.adoc +2 -2
  99. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-test-series.adoc +2 -2
  100. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-04-post-test-series.adoc +2 -2
  101. data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-20-minneapolis.adoc +1 -1
  102. data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-24-narcisse-snake-dens.adoc +1 -1
  103. data/lib/starter_web/index.html +5 -2
  104. data/lib/starter_web/package.json +1 -1
  105. data/lib/starter_web/pages/public/asciidoc_skeletons/book/000_intro.adoc +2 -2
  106. data/lib/starter_web/pages/public/asciidoc_skeletons/book/100_chapter.adoc +2 -2
  107. data/lib/starter_web/pages/public/asciidoc_skeletons/book/200_chapter.adoc +2 -2
  108. data/lib/starter_web/pages/public/asciidoc_skeletons/book/900_references.adoc +2 -2
  109. data/lib/starter_web/pages/public/asciidoc_skeletons/book/book.adoc +2 -2
  110. data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/100_chapter.asciidoc +2 -2
  111. data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/200_chapter.asciidoc +2 -2
  112. data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/multi.adoc +2 -2
  113. data/lib/starter_web/pages/public/asciidoc_skeletons/simple-document/simple.adoc +2 -2
  114. data/lib/starter_web/pages/public/blog/navigator/archive.html +82 -17
  115. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +92 -28
  116. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +85 -20
  117. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +98 -41
  118. data/lib/starter_web/pages/public/blog/navigator/index.html +2 -1
  119. data/lib/starter_web/pages/public/learn/quickstart.adoc +473 -0
  120. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +2 -2
  121. data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +2 -2
  122. data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +2 -2
  123. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +2 -2
  124. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +2 -2
  125. data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +2 -2
  126. data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +2 -2
  127. data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +2 -2
  128. data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +2 -2
  129. data/lib/starter_web/pages/public/legal/de/100_copyright.adoc +118 -0
  130. data/lib/starter_web/pages/public/legal/de/100_impress.adoc +90 -0
  131. data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +322 -0
  132. data/lib/starter_web/pages/public/legal/de/400_comment_policy.adoc +125 -0
  133. data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +8 -5
  134. data/lib/starter_web/pages/public/legal/en/200_impress.adoc +7 -5
  135. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +10 -8
  136. data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +36 -18
  137. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +3 -2
  138. data/lib/starter_web/pages/public/previewer/iframer.adoc +1 -1
  139. data/lib/starter_web/pages/public/previewer/rouge.adoc +1 -1
  140. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  141. data/lib/starter_web/utilsrv/package.json +1 -1
  142. metadata +35 -4
  143. data/_includes/themes/j1/procedures/global/pager.proc +0 -79
  144. data/lib/starter_web/pages/public/cookieConsent.adoc +0 -96
@@ -18,7 +18,7 @@
18
18
 
19
19
  {% comment %} Liquid procedures
20
20
  -------------------------------------------------------------------------------- {% endcomment %}
21
- {% capture pager %}themes/{{site.template.name}}/procedures/global/pager.proc{% endcapture %}
21
+ {% capture pager %}themes/{{site.template.name}}/procedures/posts/pager.proc{% endcapture %}
22
22
 
23
23
  {% comment %} Process YML config data
24
24
  ================================================================================ {% endcomment %}
@@ -39,6 +39,8 @@
39
39
  {% assign toccer_options = toccer_defaults | merge: toccer_settings %}
40
40
  {% assign tocbot_enabled = toccer_options.enabled %}
41
41
 
42
+ {% comment %} Variables
43
+ -------------------------------------------------------------------------------- {% endcomment %}
42
44
  {% assign rtext = template_config.typography.rtext %}
43
45
  {% assign page_rtext = page.rtext %}
44
46
  {% assign page_rtext_size = page.rtext_size %}
@@ -75,7 +77,7 @@
75
77
  <!-- Include a pager at top position -->
76
78
  {% include {{pager}} %}
77
79
  <div class="post-headline mt-4">
78
- <h2 id="blog_article_navigator" class="notoc">{{ page.title }}</h2>
80
+ <h1 id="blog_article_navigator" class="notoc">{{ page.title }}</h1>
79
81
  </div>
80
82
 
81
83
  <!-- [INFO ] [j1.layout.content_generator_coll.html ] [ start place content ] -->
@@ -20,7 +20,7 @@
20
20
  -------------------------------------------------------------------------------- {% endcomment %}
21
21
  {% capture create_series_header %}themes/{{site.template.name}}/procedures/posts/create_series_header.proc{% endcapture %}
22
22
  {% capture create_ad_block %}themes/{{site.template.name}}/procedures/posts/create_ad_block.proc{% endcapture %}
23
- {% capture pager %}themes/{{site.template.name}}/procedures/global/pager.proc{% endcapture %}
23
+ {% capture pager %}themes/{{site.template.name}}/procedures/posts/pager.proc{% endcapture %}
24
24
 
25
25
  {% comment %} Process YML config data
26
26
  ================================================================================ {% endcomment %}
@@ -30,6 +30,8 @@
30
30
  {% assign template_config = site.data.j1_config %}
31
31
  {% assign blocks = site.data.blocks %}
32
32
  {% assign modules = site.data.modules %}
33
+ {% assign builder = site.data.builder %}
34
+ {% assign plugins = site.data.plugins %}
33
35
 
34
36
  {% comment %} Set config data
35
37
  -------------------------------------------------------------------------------- {% endcomment %}
@@ -37,54 +39,70 @@
37
39
  {% comment %} Set config options
38
40
  -------------------------------------------------------------------------------- {% endcomment %}
39
41
 
40
- {% assign rtext = site.data.j1_config.typography.rtext %}
42
+
43
+ {% comment %} Variables
44
+ -------------------------------------------------------------------------------- {% endcomment %}
45
+ {% assign rtext = template_config.typography.rtext %}
41
46
  {% assign page_rtext = page.rtext %}
42
47
  {% assign page_rtext_size = page.rtext_size %}
43
48
 
44
49
  {% if rtext %}
45
- {% assign rtext_size = site.data.j1_config.typography.rtext_size %}
50
+ {% assign rtext_size = template_config.typography.rtext_size %}
46
51
  {% else %}
47
52
  {% assign rtext_size = 0 %}
48
53
  {% endif %}
49
54
 
55
+ {% comment %} language detection
56
+ -------------------------------------------------------------------------------- {% endcomment %}
57
+ {% if site.language == "en" %}
58
+ {% assign language = "en" %}
59
+ {% elsif site.language == "de"%}
60
+ {% assign language = "de" %}
61
+ {% else %}
62
+ {% assign language = "en" %}
63
+ {% endif %}
50
64
 
51
65
  {% comment %} Main
52
66
  -------------------------------------------------------------------------------- {% endcomment %}
53
67
  <!-- [INFO ] [j1.layout.content_generator_post.html ] [ begin content ] -->
54
68
  {% if page.comments %}
55
- <!-- div class="container mr-5 mb-0" -->
56
- <!-- no sidebar, mr-* disabled -->
69
+ <!-- No space between set if comments enabled -->
57
70
  <div class="container mb-0">
58
71
  {% else %}
59
- <!-- div class="container mr-5 mb-5" -->
60
- <!-- no sidebar, mr-* disabled -->
61
- <div class="container mb-5"> <!-- Add additional space between end of article and the footer -->
72
+ <!-- Add additional space between end of article and the footer -->
73
+ <div class="container mb-5">
62
74
  {% endif %}
63
75
 
64
76
  {% comment %} Blog post CONTENT
65
77
  ------------------------------------------------------------------------------ {% endcomment %}
66
- <!-- FULL page - no sidebar for page toc -->
78
+ <!-- Blog post CONTENT -->
67
79
  <div class="row">
68
80
  <main id="main-content" class="r-text-{{rtext_size}} js-toc-content">
69
81
  <!-- Include a pager at top position -->
70
82
  {% include {{pager}} %}
71
- <!-- div class="featured-headline" -->
72
83
  <div class="post-headline mt-4">
73
- <h2 class="notoc">{{ page.date | date_to_long_string }}</h2>
84
+ {% if language == "en" %}
85
+ <h1 class="notoc">{{ page.date | localize: "%Y %B, %e" }}</h1>
86
+ {% endif %}
87
+ {% if language == "de" %}
88
+ <h1 class="notoc">{{ page.date | localize: "%-d. %B %Y" }}</h1>
89
+ {% endif %}
74
90
  </div>
75
91
 
76
92
  {% comment %} Place Blog post SERIES Navigation
77
- ------------------------------------------------------------------------ {% endcomment %}
93
+ -------------------------------------------------------------------------- {% endcomment %}
78
94
  {% if page.series %}
79
95
  <header class="bmd-layout-header">
80
96
  <!-- jadams, 2021-02-28 added mb-3 to the navbar -->
81
97
  <div class="navbar navbar-dark bg-primary raised-z2 mb-3">
82
- <button class="bmd-drawer drawer-toggler animated fadeIn" type="button" data-toggle="drawer" data-target="#post_navigator">
98
+ <button class="bmd-drawer drawer-toggler animated fadeIn" type="button" data-toggle="drawer" data-target="#post_navigator" aria-label="drawer-toggler-button">
83
99
  <span class="mdi mdi-menu mdi-2x"></span>
84
100
  </button>
85
101
  <ul class="nav navbar-nav">
86
102
  <li class="nav-item">
87
- <span class="navbar-text">Series: {{page.series}}</span>
103
+ <!-- jadams, 2021-08-04: modified displaying the series name -->
104
+ <!-- span class="navbar-text">Series: {{page.series}}</span-->
105
+ <span class="navbar-text">{{page.series|upcase}}</span>
88
106
  </li>
89
107
  </ul>
90
108
  </div>
@@ -103,21 +121,13 @@
103
121
  </div>
104
122
  {% endif %}
105
123
  {% comment %} END SERIES Navigation
106
- ------------------------------------------------------------------------ {% endcomment %}
124
+ -------------------------------------------------------------------------- {% endcomment %}
107
125
 
108
126
  {% comment %} Inherit CONTENT
109
- ------------------------------------------------------------------------ {% endcomment %}
127
+ -------------------------------------------------------------------------- {% endcomment %}
110
128
  <!-- Content placed by post_content.html -->
111
-
112
129
  {{content}}
113
130
 
114
- {% comment %} Place additional headline for comments
115
- ------------------------------------------------------------------------ {% endcomment %}
116
- {% if page.comments %}
117
- <h2 id="comments_leave_comment"> Leave a comment </h2>
118
- {% endif %}
119
- <!-- End Content placed by post_content.html -->
120
-
121
131
  {% if page.series %}</nav>{% endif %}
122
132
 
123
133
  </div> <!-- end col-md-12 -->
@@ -79,14 +79,28 @@
79
79
  {% endif %}
80
80
  {% else %}
81
81
  {% if page.description %}
82
+ <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ detected content type: PAGE ] -->
82
83
  {% assign size = site.description|size %}
83
- <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ SIZE of page description: {{size}} ] -->
84
- {% if size >= 15 %}
85
- <!-- [SEO ] [j1.layout.meta_data_generator.html ] [ GRATULATIONS. Your page description has more than 15 word. (Recommended: 70-160 characters ) ] -->
84
+ <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ SIZE of page description: {{size}} chars ] -->
85
+ {% if size >= 70 %}
86
+ <!-- [SEO ] [j1.layout.meta_data_generator.html ] [ GRATULATIONS. Your page description has more than 70 characters. (Recommended: 70-160 characters) ] -->
86
87
  {% else %}
87
- <!-- [SEO ] [j1.layout.meta_data_generator.html ] [ Consider! to IMPROVE|INCREASE your page description ] -->
88
+ <!-- [SEO ] [j1.layout.meta_data_generator.html ] [ Consider to IMPROVE|INCREASE your page description! ] -->
88
89
  {% endif %}
89
90
  <meta name="description" content="{{page.description}}" />
91
+ {% elsif page.excerpt %}
92
+ <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ detected content type: POST ] -->
93
+ {% assign size = page.excerpt|size %}
94
+ <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ SIZE of page exerpt: {{size}} chars ] -->
95
+ {% if size >= 70 %}
96
+ <!-- [SEO ] [j1.layout.meta_data_generator.html ] [ GRATULATIONS. Your page description (exerpt) has more than 70 characters. (Recommended: 70-160 characters) ] -->
97
+ {% else %}
98
+ <!-- [SEO ] [j1.layout.meta_data_generator.html ] [ Consider to IMPROVE|INCREASE your post excerpt for a valid page description! ] -->
99
+ {% endif %}
100
+ <meta name="description" content="{{page.excerpt|strip_html}}" />
101
+ {% else %}
102
+ <!-- [WARNING] [j1.layout.meta_data_generator.html ] [ NO page description detected ] -->
103
+ <!-- [SEO ] [j1.layout.meta_data_generator.html ] [ Consider to add a page description! ] -->
90
104
  {% endif %}
91
105
  {% endif %}
92
106
 
@@ -173,7 +187,7 @@
173
187
  {{robots_follow}}
174
188
 
175
189
  <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ meta tag for provider APIs: analytics ] -->
176
- {% if page.analytics %}
190
+ {% if page.analytics and site.data.j1_config.analytics.enabled %}
177
191
  {% capture analytics %}<meta name="analytics" content="true" />{% endcapture %}
178
192
  {% else %}
179
193
  {% capture analytics %}<meta name="analytics" content="false" />{% endcapture %}
@@ -182,7 +196,7 @@
182
196
  {{analytics}}
183
197
 
184
198
  <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ meta tag for provider APIs: comments ] -->
185
- {% if page.comments %}
199
+ {% if page.comments and site.data.j1_config.comments.enabled %}
186
200
  {% capture comments %}<meta name="comments" content="true" />{% endcapture %}
187
201
  {% else %}
188
202
  {% capture comments %}<meta name="comments" content="false" />{% endcapture %}
@@ -191,7 +205,7 @@
191
205
  {{comments}}
192
206
 
193
207
  <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ meta tag for provider APIs: advertising ] -->
194
- {% if page.advertising %}
208
+ {% if page.advertising and site.data.j1_config.advertising.enabled %}
195
209
  {% capture advertising %}<meta name="advertising" content="true" />{% endcapture %}
196
210
  {% else %}
197
211
  {% capture advertising %}<meta name="advertising" content="false" />{% endcapture %}
@@ -199,6 +213,15 @@
199
213
 
200
214
  {{advertising}}
201
215
 
216
+ <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ meta tag for provider APIs: advertising ] -->
217
+ {% if page.translation and site.data.j1_config.translation.enabled %}
218
+ {% capture translation %}<meta name="translation" content="true" />{% endcapture %}
219
+ {% else %}
220
+ {% capture translation %}<meta name="translation" content="false" />{% endcapture %}
221
+ {% endif %}
222
+
223
+ {{translation}}
224
+
202
225
  <!-- [INFO ] [j1.layout.meta_data_generator.html ] [ meta tag for provider APIs: youtube ] -->
203
226
  {% if page.youtube %}
204
227
  {% capture youtube %}<meta name="youtube" content="true" />{% endcapture %}
@@ -114,8 +114,8 @@
114
114
  </p>
115
115
  <p class="result-item-text">{{description}}</p>
116
116
  <p class="result-item-text small text-muted mb-3">
117
- <i class="mdi mdi-tag mdi-18px mr-1"></i><span class="sr-tags">{{#tags}} {{.}} · {{/tags}}</span>
118
- <i class="mdi mdi-tag-text-outline mdi-18px mr-1 ml-2"></i><span class="sr-categories">{{#categories}} {{.}} · {{/categories}}</span>
117
+ <i class="mdi mdi-tag-text-outline mdi-18px mr-1"></i><span class="sr-categories">{{#categories}} {{.}} · {{/categories}}</span>
118
+ <i class="mdi mdi-tag mdi-18px mr-1 ml-2"></i><span class="sr-tags">{{#tags}} {{.}} · {{/tags}}</span>
119
119
  </p>
120
120
  </li>
121
121
  {{/docs}}
@@ -49,6 +49,23 @@
49
49
  {% assign posts_collate = include.items %}
50
50
  {% assign limit_excerpt = include.limit_excerpt %}
51
51
 
52
+ {% comment %} language detection
53
+ -------------------------------------------------------------------------------- {% endcomment %}
54
+ {% if site.language == "en" %}
55
+ {% assign language = "en" %}
56
+ {% elsif site.language == "de"%}
57
+ {% assign language = "de" %}
58
+ {% else %}
59
+ {% assign language = "en" %}
60
+ {% endif %}
61
+
62
+ {% if language == "en" %}
63
+ {% assign readmore_text = "read" %}
64
+ {% endif %}
65
+
66
+ {% if language == "de" %}
67
+ {% assign readmore_text = "lesen" %}
68
+ {% endif %}
52
69
 
53
70
  {% comment %} Main
54
71
  -------------------------------------------------------------------------------- {% endcomment %}
@@ -150,7 +167,7 @@
150
167
  <a href="{{post.url}}#readmore"
151
168
  class="btn btn-secondary btn-raised btn-flex mb-0">
152
169
  <i class="mdi mdi-eye mdi-lg mr-1" style="color:#FFFFFF;">
153
- </i> Read · {{post.tagline}}
170
+ </i> {{readmore_text}} · {{post.tagline}}
154
171
  </a>
155
172
  </div>
156
173
  </div>
@@ -172,7 +189,7 @@
172
189
  <a href="{{post.url}}#readmore"
173
190
  class="btn btn-secondary btn-raised btn-flex mb-0">
174
191
  <i class="mdi mdi-eye mdi-lg mr-1" style="color:#FFFFFF;">
175
- </i> Read · {{post.tagline}}
192
+ </i> {{readmore_text}} · {{post.tagline}}
176
193
  </a>
177
194
  </div>
178
195
  </div>
@@ -196,11 +213,16 @@
196
213
  {% assign comment_count = sharing.comment_count %}
197
214
  {% endfor %}
198
215
 
199
- <div class="card-footer r-text-200 text-lowercase">
216
+ <div class="card-footer r-text-200">
200
217
  <hr class="my-3">
201
218
  <div class="card-footer-text">
202
219
  {% if post.date %}
203
- <i class="mdi mdi-calendar-blank md-grey-600 mr-1"></i> {{post.date | date: "%Y %B, %e"}}
220
+ {% if language == "en" %}
221
+ <i class="mdi mdi-calendar-blank md-grey-600 mr-1"></i>{{post.date | localize: "%Y %B, %e"}}
222
+ {% endif %}
223
+ {% if language == "de" %}
224
+ <i class="mdi mdi-calendar-blank md-grey-600 mr-1"></i>{{post.date | localize: "%-d. %B %Y"}}
225
+ {% endif %}
204
226
  {% endif %}
205
227
  {% if likes_count %}
206
228
  <span class="font-weight-bold"> · </span>
@@ -213,7 +235,7 @@
213
235
  </div>
214
236
  <a class="card-link text-muted text-lowercase"
215
237
  href="{{post.url}}#readmore">
216
- Read · {{post.tagline}}
238
+ {{readmore_text}} · {{post.tagline}}
217
239
  </a>
218
240
  </div>
219
241
  {% endif %}
@@ -59,7 +59,7 @@
59
59
  <div class="row">
60
60
  <!-- div class="col-xs-12 col-md-12 col-lg-12 mb-4" -->
61
61
  <div class="">
62
- <h5 id="blog_series_list" class="notoc mt-2 mr-2 mb-4">This article is <strong>part <<idx>> </strong> in a <strong><<count>>-part</strong> series:</h5>
62
+ <h4 id="blog_series_list" class="notoc mt-2 mr-2 mb-4">This article is <strong>part <<idx>> </strong> in a <strong><<count>>-part</strong> series:</h4>
63
63
  <ul class="side-nav">
64
64
  {% endcapture %}
65
65
  {% for post in site.posts reversed %}
@@ -0,0 +1,123 @@
1
+ {% comment %}
2
+ # -----------------------------------------------------------------------------
3
+ # ~/_includes/themes/j1/procedures/posts/pager.proc
4
+ # HTML/Liquid procedure to create a pager for content of type "post|collection"
5
+ #
6
+ # Product/Info:
7
+ # http://jekyll.one
8
+ #
9
+ # Copyright (C) 2021 Juergen Adams
10
+ #
11
+ # J1 Template is licensed under the MIT License.
12
+ # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
13
+ # -----------------------------------------------------------------------------
14
+ # NOTE:
15
+ # This pager reads the "page path" from cookie "cookieUserState". This
16
+ # data is used to return from a previous (page builder) page.
17
+ # -----------------------------------------------------------------------------
18
+ # Test data:
19
+ # liquid_var: {{ liquid_var | debug }}
20
+ # -----------------------------------------------------------------------------
21
+ {% endcomment %}
22
+
23
+ {% comment %} Liquid procedures
24
+ -------------------------------------------------------------------------------- {% endcomment %}
25
+
26
+ {% comment %} Process YML config data
27
+ ================================================================================ {% endcomment %}
28
+
29
+ {% comment %} Set config files
30
+ -------------------------------------------------------------------------------- {% endcomment %}
31
+ {% assign template_config = site.data.j1_config %}
32
+ {% assign blocks = site.data.blocks %}
33
+ {% assign modules = site.data.modules %}
34
+ {% assign builder = site.data.builder %}
35
+ {% assign plugins = site.data.plugins %}
36
+
37
+ {% comment %} Set config data
38
+ -------------------------------------------------------------------------------- {% endcomment %}
39
+ {% assign blog_navigator_defaults = builder.defaults.blog_navigator.defaults %}
40
+ {% assign blog_navigator_settings = builder.blog_navigator.settings %}
41
+
42
+ {% comment %} Set config options
43
+ -------------------------------------------------------------------------------- {% endcomment %}
44
+ {% assign blog_navigator_options = blog_navigator_defaults | merge: blog_navigator_settings %}
45
+
46
+
47
+ {% comment %} Language detection
48
+ -------------------------------------------------------------------------------- {% endcomment %}
49
+ {% if {{site.language}} == "en" %}
50
+ {% assign language = "en" %}
51
+ {% elsif {{site.language}} == "de"%}
52
+ {% assign language = "de" %}
53
+ {% else %}
54
+ {% assign language = "en" %}
55
+ {% endif %}
56
+
57
+ {% comment %} Set language specific button text
58
+ -------------------------------------------------------------------------------- {% endcomment %}
59
+ {% if language == "en" %}
60
+ {% assign pager_previous_button_text = blog_navigator_options.button_text.pager.previous.en %}
61
+ {% assign pager_next_button_text = blog_navigator_options.button_text.pager.next.en %}
62
+ {% assign pager_back_button_text = blog_navigator_options.button_text.pager.back.en %}
63
+ {% assign pager_first_button_text = blog_navigator_options.button_text.pager.first.en %}
64
+ {% assign pager_last_button_text = blog_navigator_options.button_text.pager.last.en %}
65
+ {% endif %}
66
+
67
+ {% if language == "de" %}
68
+ {% assign pager_previous_button_text = blog_navigator_options.button_text.pager.previous.de %}
69
+ {% assign pager_next_button_text = blog_navigator_options.button_text.pager.next.de %}
70
+ {% assign pager_back_button_text = blog_navigator_options.button_text.pager.back.de %}
71
+ {% assign pager_first_button_text = blog_navigator_options.button_text.pager.first.de %}
72
+ {% assign pager_last_button_text = blog_navigator_options.button_text.pager.last.de %}
73
+ {% endif %}
74
+
75
+
76
+ {% comment %} Main
77
+ -------------------------------------------------------------------------------- {% endcomment %}
78
+
79
+ <div class="paginator">
80
+ <ul class="pagination raised-z0">
81
+
82
+ {% comment %} Set PREVIOUS page
83
+ ---------------------------------------------------------------------------- {% endcomment %}
84
+ {% if page.previous %}
85
+ <li class="page-item"><a class="page-link" href="{{base_path}}{{page.previous.url}}" title="{{page.previous.title}}">{{pager_previous_button_text}}</a></li>
86
+ {% else %}
87
+ <li class="page-item disabled"><a class="page-link">{{pager_first_button_text}}</a></li>
88
+ {% endif %}
89
+
90
+ {% comment %} Set BACK page (PagerURL)
91
+ ---------------------------------------------------------------------------- {% endcomment %}
92
+ <!-- [INFO ] [procedures.global.pager.proc ] [Manage the current pager settings for: {{builder_path}}] -->
93
+ <script>
94
+ var cookie_names = j1.getCookieNames();
95
+ var user_state_cookie_name = cookie_names.user_session;
96
+ var user_state = j1.readCookie(user_state_cookie_name);
97
+ var re = new RegExp('navigator|dateview|tagview|archive');
98
+ var last_pager = user_state.last_pager;
99
+ var last_pager_url;
100
+
101
+ <!-- [INFO ] [procedures.global.pager.proc ] [Calculate BackURL from User State Cookie for page: {{page.title}}] -->
102
+ if (re.test(last_pager)) {
103
+ last_pager_url = '<li class="page-item"><a class="page-link" href="' + last_pager + '" title="Back to Top Page">{{pager_back_button_text}}</a></li>';
104
+ } else {
105
+ last_pager_url = '<li class="page-item disabled"><a class="page-link" title="Back to Top Page">{{pager_back_button_text}}</a></li>';
106
+ }
107
+ document.write( last_pager_url );
108
+ j1.writeCookie({
109
+ name: user_state_cookie_name,
110
+ data: user_state
111
+ });
112
+ </script>
113
+
114
+ {% comment %} Set NEXT page
115
+ ---------------------------------------------------------------------------- {% endcomment %}
116
+ {% if page.next %}
117
+ <li class="page-item"><a class="page-link" href="{{base_path}}{{page.next.url}}" title="{{page.next.title}}">{{pager_next_button_text}}</a></li>
118
+ {% else %}
119
+ <li class="page-item disabled"><a class="page-link" href="#">{{pager_last_button_text}}</a></li>
120
+ {% endif %}
121
+
122
+ </ul>
123
+ </div>
@@ -91,7 +91,7 @@ layout: compress
91
91
  {% comment %} main
92
92
  -------------------------------------------------------------------------------- {% endcomment %}
93
93
  <!DOCTYPE {{ site.doctype }}>
94
- <html lang="{{ site.language }}">
94
+ <html lang="{{site.language}}">
95
95
 
96
96
  {% comment %} additional debug data
97
97
  -------------------------------------------------------------------------------- {% endcomment %}
@@ -188,7 +188,7 @@ layout: compress
188
188
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
189
189
  <meta name="viewport" content="width=device-width, initial-scale=1" />
190
190
  <meta name="robots" content="noindex, nofollow">
191
- <link rel="icon" type="image/ico" href="modules/icons/j1/j1-32x32.ico">
191
+ <link rel="icon" type="{{site.favicon.type}}" href="{{site.data.j1_config.image_path}}/{{site.favicon.image}}" />
192
192
  <title>{{title}} · {{http_error}}</title>
193
193
  <style> .my { margin-top: 8.5rem !important;} </style>
194
194
  <style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{cursor: pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{cursor: pointer ;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>