j1-template 2021.1.4 → 2021.1.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (156) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/layouts/layout_metadata_generator.html +4 -4
  3. data/_includes/themes/j1/modules/connectors/ad/google-adsense.html +7 -15
  4. data/_includes/themes/j1/modules/connectors/ads +18 -7
  5. data/_includes/themes/j1/modules/connectors/analytic/google-analytics.html +7 -3
  6. data/_includes/themes/j1/modules/connectors/analytics +17 -3
  7. data/_includes/themes/j1/modules/connectors/comments +22 -8
  8. data/_includes/themes/j1/modules/connectors/translator +20 -6
  9. data/_includes/themes/j1/modules/navigator/generator.html +2 -2
  10. data/_includes/themes/j1/procedures/global/select_location.proc +3 -3
  11. data/_layouts/default.html +4 -7
  12. data/assets/data/cookieconsent.html +249 -0
  13. data/assets/data/quicklinks.html +18 -16
  14. data/assets/data/themes.json +6 -6
  15. data/assets/error_pages/HTTP204.html +30 -10
  16. data/assets/error_pages/HTTP400.html +29 -8
  17. data/assets/error_pages/HTTP401.html +29 -9
  18. data/assets/error_pages/HTTP403.html +29 -8
  19. data/assets/error_pages/HTTP404.html +29 -8
  20. data/assets/error_pages/HTTP500.html +29 -8
  21. data/assets/error_pages/HTTP501.html +29 -8
  22. data/assets/error_pages/HTTP502.html +29 -8
  23. data/assets/error_pages/HTTP503.html +30 -8
  24. data/assets/themes/j1/adapter/js/cookieConsent.js +290 -0
  25. data/assets/themes/j1/adapter/js/fam.js +2 -1
  26. data/assets/themes/j1/adapter/js/j1.js +154 -153
  27. data/assets/themes/j1/adapter/js/navigator.js +157 -200
  28. data/assets/themes/j1/adapter/js/themer.1.js +326 -0
  29. data/assets/themes/j1/adapter/js/themer.js +41 -57
  30. data/assets/themes/j1/adapter/js/toccer.js +4 -45
  31. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +2 -2
  32. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +1 -1
  33. data/assets/themes/j1/core/js/template.js +3 -9
  34. data/assets/themes/j1/core/js/template.js.map +1 -1
  35. data/assets/themes/j1/core/js/template.min.js +3 -9
  36. data/assets/themes/j1/core/js/template.min.js.map +1 -1
  37. data/assets/themes/j1/modules/cookieConsent/LICENSE +21 -0
  38. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.js +301 -0
  39. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.min.js +301 -0
  40. data/assets/themes/j1/modules/fam/css/{uno → theme/uno}/fam.css +0 -0
  41. data/assets/themes/j1/modules/fam/css/theme/uno/fam.min.css +15 -0
  42. data/assets/themes/j1/modules/fam/js/fam.js +1 -6
  43. data/assets/themes/j1/modules/iframeResizer/examples/frame.absolute.html +4 -2
  44. data/assets/themes/j1/modules/iframeResizer/examples/frame.content.html +4 -3
  45. data/assets/themes/j1/modules/iframeResizer/examples/frame.hover.html +4 -2
  46. data/assets/themes/j1/modules/iframeResizer/examples/frame.nested.html +4 -2
  47. data/assets/themes/j1/modules/iframeResizer/examples/frame.textarea.html +4 -2
  48. data/assets/themes/j1/modules/iframeResizer/examples/frame.tolerance.html +4 -2
  49. data/assets/themes/j1/modules/iframeResizer/examples/index.html +2 -0
  50. data/assets/themes/j1/modules/iframeResizer/examples/two.html +4 -2
  51. data/assets/themes/j1/modules/mmenuLight/css/{mmenu.css → mmenu-light.css} +0 -0
  52. data/assets/themes/j1/modules/mmenuLight/css/{mmenu.min.css → mmenu-light.min.css} +0 -0
  53. data/assets/themes/j1/modules/mmenuLight/css/theme/{uno.css → uno/mmenu.css} +0 -0
  54. data/assets/themes/j1/modules/mmenuLight/css/theme/{uno.min.css → uno/mmenu.min.css} +0 -0
  55. data/assets/themes/j1/modules/rtable/css/theme/{uno.css → uno/rtable.css} +0 -0
  56. data/assets/themes/j1/modules/rtable/css/theme/{uno.min.css → uno/rtable.min.css} +0 -0
  57. data/assets/themes/j1/modules/themeSwitcher/js/switcher.js +34 -49
  58. data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +410 -2
  59. data/assets/themes/j1/modules/util/js/domready.js +146 -0
  60. data/assets/themes/j1/modules/util/js/gtag-opt-in.js +1 -0
  61. data/lib/j1/version.rb +3 -3
  62. data/lib/j1_app/j1_auth_manager/auth_manager.rb +2 -3
  63. data/lib/starter_web/Gemfile +1 -1
  64. data/lib/starter_web/_config.yml +19 -10
  65. data/lib/starter_web/_data/_defaults/resources.yml +11 -8
  66. data/lib/starter_web/_data/j1_config.yml +21 -18
  67. data/lib/starter_web/_data/modules/{cookiebar.yml → cookieconsent.yml} +5 -4
  68. data/lib/starter_web/_data/modules/defaults/cookieconsent.yml +136 -0
  69. data/lib/starter_web/_data/modules/defaults/themer.yml +2 -1
  70. data/lib/starter_web/_data/pages/builder.yml +7 -7
  71. data/lib/starter_web/_data/private.default.yml +119 -0
  72. data/lib/starter_web/_data/private.yml +6 -6
  73. data/lib/starter_web/_data/resources.yml +15 -14
  74. data/lib/starter_web/_includes/attributes.asciidoc +10 -1
  75. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  76. data/lib/starter_web/assets/images/modules/attics/{cookies-1920x1200-bw.jpg → cookies-1920x1200.jpg} +0 -0
  77. data/lib/starter_web/assets/images/modules/attics/lianhao-1920x1280.jpg +0 -0
  78. data/lib/starter_web/collections/posts/public/featured/_posts/2020-01-01-about-cookies.adoc +2 -2
  79. data/lib/starter_web/dot.gitignore +1 -1
  80. data/lib/starter_web/index.html +3 -3
  81. data/lib/starter_web/package.json +2 -2
  82. data/lib/starter_web/pages/public/blog/navigator/archive.html +5 -3
  83. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +3 -2
  84. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +6 -4
  85. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +23 -5
  86. data/lib/starter_web/pages/public/cookieConsent.adoc +93 -0
  87. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +2 -1
  88. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +111 -213
  89. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  90. data/lib/starter_web/utilsrv/package.json +1 -1
  91. metadata +24 -76
  92. data/_includes/themes/j1/modules/navigator/generator.org.html +0 -232
  93. data/assets/data/cookiebar.html +0 -288
  94. data/assets/data/footer.new.1.html +0 -256
  95. data/assets/data/footer.new.2.html +0 -256
  96. data/assets/data/footer.org.html +0 -249
  97. data/assets/error_pages/HTTP520.html +0 -68
  98. data/assets/error_pages/HTTP521.html +0 -68
  99. data/assets/error_pages/HTTP533.html +0 -68
  100. data/assets/themes/j1/adapter/js/cookiebar.js +0 -212
  101. data/assets/themes/j1/adapter/js/j1.new.js +0 -1878
  102. data/assets/themes/j1/adapter/js/j1.org.js +0 -1874
  103. data/assets/themes/j1/modules/_lightGallery/css/core/lg-fb-comment-box.css +0 -58
  104. data/assets/themes/j1/modules/_lightGallery/css/core/lg-fb-comment-box.min.css +0 -5
  105. data/assets/themes/j1/modules/_lightGallery/css/core/lg-transitions.css +0 -778
  106. data/assets/themes/j1/modules/_lightGallery/css/core/lg-transitions.min.css +0 -5
  107. data/assets/themes/j1/modules/_lightGallery/css/core/lightgallery.css +0 -981
  108. data/assets/themes/j1/modules/_lightGallery/css/core/lightgallery.min.css +0 -5
  109. data/assets/themes/j1/modules/_lightGallery/css/fonts/lg.eot +0 -0
  110. data/assets/themes/j1/modules/_lightGallery/css/fonts/lg.svg +0 -47
  111. data/assets/themes/j1/modules/_lightGallery/css/fonts/lg.ttf +0 -0
  112. data/assets/themes/j1/modules/_lightGallery/css/fonts/lg.woff +0 -0
  113. data/assets/themes/j1/modules/_lightGallery/css/img/loading.gif +0 -0
  114. data/assets/themes/j1/modules/_lightGallery/css/img/video-play.png +0 -0
  115. data/assets/themes/j1/modules/_lightGallery/css/img/vimeo-play.png +0 -0
  116. data/assets/themes/j1/modules/_lightGallery/css/img/youtube-play.png +0 -0
  117. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/animation-w.png +0 -0
  118. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/customize-w.png +0 -0
  119. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/dynamic-w.png +0 -0
  120. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/facebook-icon.svg +0 -10
  121. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/googleplus-icon.svg +0 -30
  122. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/html5-w.png +0 -0
  123. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/linked-in.png +0 -0
  124. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/module-w.png +0 -0
  125. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/play-button.png +0 -0
  126. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/responsive-w.png +0 -0
  127. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/thumb-w.png +0 -0
  128. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/touch-w.png +0 -0
  129. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/twitter-icon.svg +0 -15
  130. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/twitter.png +0 -0
  131. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/video1-w.png +0 -0
  132. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/zoom-w.png +0 -0
  133. data/assets/themes/j1/modules/_lightGallery/css/themes/icons/zoom.png +0 -0
  134. data/assets/themes/j1/modules/_lightGallery/css/themes/uno.css +0 -262
  135. data/assets/themes/j1/modules/_lightGallery/css/themes/uno.min.css +0 -15
  136. data/assets/themes/j1/modules/_lightGallery/js/core/lightgallery.js +0 -1362
  137. data/assets/themes/j1/modules/_lightGallery/js/core/lightgallery.min.js +0 -4
  138. data/assets/themes/j1/modules/_lightGallery/js/modules/j1/j1-video.js +0 -402
  139. data/assets/themes/j1/modules/_lightGallery/js/modules/j1/j1-video.min.js +0 -8
  140. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-autoplay.js +0 -206
  141. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-autoplay.min.js +0 -5
  142. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-fullscreen.js +0 -126
  143. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-fullscreen.min.js +0 -5
  144. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-hash.js +0 -101
  145. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-hash.min.js +0 -5
  146. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-pager.js +0 -105
  147. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-pager.min.js +0 -5
  148. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-share.js +0 -107
  149. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-share.min.js +0 -5
  150. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-thumbnail.js +0 -478
  151. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-thumbnail.min.js +0 -5
  152. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-video.js +0 -342
  153. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-video.min.js +0 -5
  154. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-zoom.js +0 -527
  155. data/assets/themes/j1/modules/_lightGallery/js/modules/lg-zoom.min.js +0 -5
  156. data/lib/starter_web/_data/modules/defaults/cookiebar.yml +0 -133
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  regenerate: false
3
3
  permalink: /500.html
4
+ http_error: 500
4
5
  sitemap: false
5
6
  ---
6
7
  {% capture j1_cache %}
@@ -21,13 +22,16 @@ sitemap: false
21
22
  # HttpErrorPages are licensed under the MIT License.
22
23
  # See: https://github.com/AndiDittrich/HttpErrorPages
23
24
  # -----------------------------------------------------------------------------
25
+ # NOTE
26
+ # German translation, see: https://de.wikipedia.org/wiki/HTTP-Statuscode
27
+ # -----------------------------------------------------------------------------
24
28
  # Test data:
25
29
  # liquid_var: {{ liquid_var | debug }}
26
30
  # config: {{ config | debug }}
27
31
  # -----------------------------------------------------------------------------
28
32
  {% endcomment %}
29
33
 
30
- {% assign title = "Uups | Service currently unavailable" %}
34
+ {% assign language = site.language %}
31
35
  {% assign webmaster_email = site.webmaster.email %}
32
36
  {% assign copyright_info = site.copyright %}
33
37
  {% assign favicon = site.favicon.image %}
@@ -38,27 +42,44 @@ sitemap: false
38
42
 
39
43
  {% capture brand_image %}{{images_dir}}/{{brand_image_source}}{% endcapture %}
40
44
 
45
+ {% if language != 'en' or language != 'de' %}
46
+ {% assign language = 'en' %}
47
+ {% endif %}
48
+
49
+ {% if language == 'en' %}
50
+ {% assign title = "Internal Server Error" %}
51
+ {% assign reason = "An unexpected condition was encountered. <br/> Our service team has been dispatched to bring it back online." %}
52
+ {% assign contact_issue = "Technical Contact" %}
53
+ {% endif %}
54
+
55
+ {% if language == 'de' %}
56
+ {% assign title = "Interner Server Fehler" %}
57
+ {% assign reason = "Es ist ein unerwartete Serverfehler aufgetreten. <br/> Das Service Team ist bemüht den Dienst wiederherzustellen." %}
58
+ {% assign contact_issue = "Technischer Kontakt" %}
59
+ {% endif %}
60
+
41
61
  <!DOCTYPE html>
42
- <html lang="en">
62
+ <html lang="{{language}}">
43
63
  <head>
44
- <!-- Simple HttpErrorPages | MIT License | https://github.com/AndiDittrich/HttpErrorPages -->
64
+ <!-- [INFO ] [j1.error.pages ] [ Simple HttpErrorPages | MIT License | https://github.com/AndiDittrich/HttpErrorPages ] -->
65
+ <!-- [INFO ] [j1.error.pages ] [ detected language (site): {{language}} ] -->
45
66
  <meta charset="utf-8" />
46
67
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
47
68
  <meta name="viewport" content="width=device-width, initial-scale=1" />
48
69
  <meta name="robots" content="noindex, nofollow">
49
70
  <link rel="icon" type="image/ico" href="{{favicon}}">
50
- <title>{{title}}</title>
71
+ <title>{{title}} · {{page.http_error}}</title>
51
72
  <style> .attic { background-image: -webkit-gradient(linear, left top, left bottom, from(#263238), to(#3F51B5));background-image: -webkit-linear-gradient(top, #263238 0%, #3F51B5 100%);background-image: -o-linear-gradient(top, #263238 0%, #3F51B5 100%);background-image: linear-gradient(to bottom, #263238 0%, #3F51B5 100%);filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#263238", endColorstr="#3F51B5", GradientType=0); } </style>
52
- <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}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */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>
73
+ <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>
53
74
  </head>
54
75
  <body>
55
76
  <a href="/"><img src="{{brand_image}}" height="{{brand_image_height}}" alt="{{brand_text}}"></a>
56
77
  <div class="cover attic">
57
- <h1>Service currently unavailable <small>500</small></h1>
58
- <p class="lead">An unexpected condition was encountered.<br />Our service team has been dispatched to bring it back online.</p>
78
+ <h1>{{title}} <small>{{page.http_error}}</small></h1>
79
+ <p class="lead">{{reason}}</p>
59
80
  </div>
60
81
  <footer>
61
- <p>{{copyright_info}} · Technical Contact: <p>{{copyright_info}} · Technical Contact: <a href="mailto:{{webmaster_email}}?subject={{title}}">{{webmaster_email}}</a></p>
82
+ <p>{{copyright_info}} · {{contact_issue}}: <a href="mailto:{{webmaster_email}}?subject={{title}}">{{webmaster_email}}</a></p>
62
83
  </footer>
63
84
  </body>
64
85
  </html>
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  regenerate: false
3
3
  permalink: /501.html
4
+ http_error: 501
4
5
  sitemap: false
5
6
  ---
6
7
  {% capture j1_cache %}
@@ -21,13 +22,16 @@ sitemap: false
21
22
  # HttpErrorPages are licensed under the MIT License.
22
23
  # See: https://github.com/AndiDittrich/HttpErrorPages
23
24
  # -----------------------------------------------------------------------------
25
+ # NOTE
26
+ # German translation, see: https://de.wikipedia.org/wiki/HTTP-Statuscode
27
+ # -----------------------------------------------------------------------------
24
28
  # Test data:
25
29
  # liquid_var: {{ liquid_var | debug }}
26
30
  # config: {{ config | debug }}
27
31
  # -----------------------------------------------------------------------------
28
32
  {% endcomment %}
29
33
 
30
- {% assign title = "Uups | Not Implemented" %}
34
+ {% assign language = site.language %}
31
35
  {% assign webmaster_email = site.webmaster.email %}
32
36
  {% assign copyright_info = site.copyright %}
33
37
  {% assign favicon = site.favicon.image %}
@@ -38,27 +42,44 @@ sitemap: false
38
42
 
39
43
  {% capture brand_image %}{{images_dir}}/{{brand_image_source}}{% endcapture %}
40
44
 
45
+ {% if language != 'en' or language != 'de' %}
46
+ {% assign language = 'en' %}
47
+ {% endif %}
48
+
49
+ {% if language == 'en' %}
50
+ {% assign title = "Not Implemented" %}
51
+ {% assign reason = "Unknown request type. <br/> The Webserver cannot recognize the request method." %}
52
+ {% assign contact_issue = "Technical Contact" %}
53
+ {% endif %}
54
+
55
+ {% if language == 'de' %}
56
+ {% assign title = "Nicht verfügbar" %}
57
+ {% assign reason = "Unbekannter Anfragetyp. <br/> Die Funktionalität, um die Anfrage zu bearbeiten, wird von diesem Server nicht bereitgestellt." %}
58
+ {% assign contact_issue = "Technischer Kontakt" %}
59
+ {% endif %}
60
+
41
61
  <!DOCTYPE html>
42
- <html lang="en">
62
+ <html lang="{{language}}">
43
63
  <head>
44
- <!-- Simple HttpErrorPages | MIT License | https://github.com/AndiDittrich/HttpErrorPages -->
64
+ <!-- [INFO ] [j1.error.pages ] [ Simple HttpErrorPages | MIT License | https://github.com/AndiDittrich/HttpErrorPages ] -->
65
+ <!-- [INFO ] [j1.error.pages ] [ detected language (site): {{language}} ] -->
45
66
  <meta charset="utf-8" />
46
67
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
47
68
  <meta name="viewport" content="width=device-width, initial-scale=1" />
48
69
  <meta name="robots" content="noindex, nofollow">
49
70
  <link rel="icon" type="image/ico" href="{{favicon}}">
50
- <title>{{title}}</title>
71
+ <title>{{title}} · {{page.http_error}}</title>
51
72
  <style> .attic { background-image: -webkit-gradient(linear, left top, left bottom, from(#263238), to(#3F51B5));background-image: -webkit-linear-gradient(top, #263238 0%, #3F51B5 100%);background-image: -o-linear-gradient(top, #263238 0%, #3F51B5 100%);background-image: linear-gradient(to bottom, #263238 0%, #3F51B5 100%);filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#263238", endColorstr="#3F51B5", GradientType=0); } </style>
52
- <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}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */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>
73
+ <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>
53
74
  </head>
54
75
  <body>
55
76
  <a href="/"><img src="{{brand_image}}" height="{{brand_image_height}}" alt="{{brand_text}}"></a>
56
77
  <div class="cover attic">
57
- <h1>Not Implemented <small>501</small></h1>
58
- <p class="lead">The Webserver cannot recognize the request method.</p>
78
+ <h1>{{title}} <small>{{page.http_error}}</small></h1>
79
+ <p class="lead">{{reason}}</p>
59
80
  </div>
60
81
  <footer>
61
- <p>{{copyright_info}} · Technical Contact: <p>{{copyright_info}} · Technical Contact: <a href="mailto:{{webmaster_email}}?subject={{title}}">{{webmaster_email}}</a></p>
82
+ <p>{{copyright_info}} · {{contact_issue}}: <a href="mailto:{{webmaster_email}}?subject={{title}}">{{webmaster_email}}</a></p>
62
83
  </footer>
63
84
  </body>
64
85
  </html>
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  regenerate: false
3
3
  permalink: /502.html
4
+ http_error: 502
4
5
  sitemap: false
5
6
  ---
6
7
  {% capture j1_cache %}
@@ -21,13 +22,16 @@ sitemap: false
21
22
  # HttpErrorPages are licensed under the MIT License.
22
23
  # See: https://github.com/AndiDittrich/HttpErrorPages
23
24
  # -----------------------------------------------------------------------------
25
+ # NOTE
26
+ # German translation, see: https://de.wikipedia.org/wiki/HTTP-Statuscode
27
+ # -----------------------------------------------------------------------------
24
28
  # Test data:
25
29
  # liquid_var: {{ liquid_var | debug }}
26
30
  # config: {{ config | debug }}
27
31
  # -----------------------------------------------------------------------------
28
32
  {% endcomment %}
29
33
 
30
- {% assign title = "Uups | Service currently unavailable" %}
34
+ {% assign language = site.language %}
31
35
  {% assign webmaster_email = site.webmaster.email %}
32
36
  {% assign copyright_info = site.copyright %}
33
37
  {% assign favicon = site.favicon.image %}
@@ -38,27 +42,44 @@ sitemap: false
38
42
 
39
43
  {% capture brand_image %}{{images_dir}}/{{brand_image_source}}{% endcapture %}
40
44
 
45
+ {% if language != 'en' or language != 'de' %}
46
+ {% assign language = 'en' %}
47
+ {% endif %}
48
+
49
+ {% if language == 'en' %}
50
+ {% assign title = "Service currently unavailable" %}
51
+ {% assign reason = "We&#39;ve got some trouble with our backend upstream cluster. <br/> Our service team has been dispatched to bring it back online." %}
52
+ {% assign contact_issue = "Technical Contact" %}
53
+ {% endif %}
54
+
55
+ {% if language == 'de' %}
56
+ {% assign title = "Dienst zurzeit nicht verfügbar" %}
57
+ {% assign reason = "Der Server konnte seine Funktion als Gateway oder Proxy nicht erfüllen. <br/> Das Service Team ist bemüht den Dienst wiederherzustellen." %}
58
+ {% assign contact_issue = "Technischer Kontakt" %}
59
+ {% endif %}
60
+
41
61
  <!DOCTYPE html>
42
- <html lang="en">
62
+ <html lang="{{language}}">
43
63
  <head>
44
- <!-- Simple HttpErrorPages | MIT License | https://github.com/AndiDittrich/HttpErrorPages -->
64
+ <!-- [INFO ] [j1.error.pages ] [ Simple HttpErrorPages | MIT License | https://github.com/AndiDittrich/HttpErrorPages ] -->
65
+ <!-- [INFO ] [j1.error.pages ] [ detected language (site): {{language}} ] -->
45
66
  <meta charset="utf-8" />
46
67
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
47
68
  <meta name="viewport" content="width=device-width, initial-scale=1" />
48
69
  <meta name="robots" content="noindex, nofollow">
49
70
  <link rel="icon" type="image/ico" href="{{favicon}}">
50
- <title>{{title}}</title>
71
+ <title>{{title}} · {{page.http_error}}</title>
51
72
  <style> .attic { background-image: -webkit-gradient(linear, left top, left bottom, from(#263238), to(#3F51B5));background-image: -webkit-linear-gradient(top, #263238 0%, #3F51B5 100%);background-image: -o-linear-gradient(top, #263238 0%, #3F51B5 100%);background-image: linear-gradient(to bottom, #263238 0%, #3F51B5 100%);filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#263238", endColorstr="#3F51B5", GradientType=0); } </style>
52
- <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}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */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>
73
+ <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>
53
74
  </head>
54
75
  <body>
55
76
  <a href="/"><img src="{{brand_image}}" height="{{brand_image_height}}" alt="{{brand_text}}"></a>
56
77
  <div class="cover attic">
57
- <h1>Service currently unavailable <small>502</small></h1>
58
- <p class="lead">We&#39;ve got some trouble with our backend upstream cluster.<br />Our service team has been dispatched to bring it back online.</p>
78
+ <h1>{{title}} <small>{{page.http_error}}</small></h1>
79
+ <p class="lead">{{reason}}</p>
59
80
  </div>
60
81
  <footer>
61
- <p>{{copyright_info}} · Technical Contact: <p>{{copyright_info}} · Technical Contact: <a href="mailto:{{webmaster_email}}?subject={{title}}">{{webmaster_email}}</a></p>
82
+ <p>{{copyright_info}} · {{contact_issue}}: <a href="mailto:{{webmaster_email}}?subject={{title}}">{{webmaster_email}}</a></p>
62
83
  </footer>
63
84
  </body>
64
85
  </html>
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  regenerate: false
3
3
  permalink: /503.html
4
+ http_error: 503
4
5
  sitemap: false
5
6
  ---
6
7
  {% capture j1_cache %}
@@ -21,6 +22,9 @@ sitemap: false
21
22
  # HttpErrorPages are licensed under the MIT License.
22
23
  # See: https://github.com/AndiDittrich/HttpErrorPages
23
24
  # -----------------------------------------------------------------------------
25
+ # NOTE
26
+ # German translation, see: https://de.wikipedia.org/wiki/HTTP-Statuscode
27
+ # -----------------------------------------------------------------------------
24
28
  # Test data:
25
29
  # liquid_var: {{ liquid_var | debug }}
26
30
  # config: {{ config | debug }}
@@ -28,6 +32,8 @@ sitemap: false
28
32
  {% endcomment %}
29
33
 
30
34
  {% assign title = "Uups | Service currently unavailable" %}
35
+
36
+ {% assign language = site.language %}
31
37
  {% assign webmaster_email = site.webmaster.email %}
32
38
  {% assign copyright_info = site.copyright %}
33
39
  {% assign favicon = site.favicon.image %}
@@ -38,32 +44,48 @@ sitemap: false
38
44
 
39
45
  {% capture brand_image %}{{images_dir}}/{{brand_image_source}}{% endcapture %}
40
46
 
47
+ {% if language != 'en' or language != 'de' %}
48
+ {% assign language = 'en' %}
49
+ {% endif %}
50
+
51
+ {% if language == 'en' %}
52
+ {% assign title = "Service currently unavailable" %}
53
+ {% assign reason = "The server is temporarily unavailable. <br/> Please try again later." %}
54
+ {% assign contact_issue = "Technical Contact" %}
55
+ {% endif %}
56
+
57
+ {% if language == 'de' %}
58
+ {% assign title = "Dienst zurzeit nicht verfügbar" %}
59
+ {% assign reason = "Der Server steht temporär nicht zur Verfügung. <br/> Bitte versuchen Sie es später nocheinmal." %}
60
+ {% assign contact_issue = "Technischer Kontakt" %}
61
+ {% endif %}
62
+
41
63
  <!DOCTYPE html>
42
- <html lang="en">
64
+ <html lang="{{language}}">
43
65
  <head>
44
- <!-- Simple HttpErrorPages | MIT License | https://github.com/AndiDittrich/HttpErrorPages -->
66
+ <!-- [INFO ] [j1.error.pages ] [ Simple HttpErrorPages | MIT License | https://github.com/AndiDittrich/HttpErrorPages ] -->
67
+ <!-- [INFO ] [j1.error.pages ] [ detected language (site): {{language}} ] -->
45
68
  <meta charset="utf-8" />
46
69
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
47
70
  <meta name="viewport" content="width=device-width, initial-scale=1" />
48
71
  <meta name="robots" content="noindex, nofollow">
49
72
  <link rel="icon" type="image/ico" href="{{favicon}}">
50
- <title>{{title}}</title>
73
+ <title>{{title}} · {{page.http_error}}</title>
51
74
  <style> .attic { background-image: -webkit-gradient(linear, left top, left bottom, from(#263238), to(#3F51B5));background-image: -webkit-linear-gradient(top, #263238 0%, #3F51B5 100%);background-image: -o-linear-gradient(top, #263238 0%, #3F51B5 100%);background-image: linear-gradient(to bottom, #263238 0%, #3F51B5 100%);filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#263238", endColorstr="#3F51B5", GradientType=0); } </style>
52
- <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}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */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>
75
+ <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>
53
76
  </head>
54
77
  <body>
55
78
  <a href="/"><img src="{{brand_image}}" height="{{brand_image_height}}" alt="{{brand_text}}"></a>
56
79
  <div class="cover attic">
57
- <h1>Service currently unavailable <small>503</small></h1>
58
- <p class="lead">We&#39;ve got some trouble with our backend upstream cluster.<br />Our service team has been dispatched to bring it back online.</p>
80
+ <h1>{{title}} <small>{{page.http_error}}</small></h1>
81
+ <p class="lead">{{reason}}</p>
59
82
  </div>
60
83
  <footer>
61
- <p>{{copyright_info}} · Technical Contact: <p>{{copyright_info}} · Technical Contact: <a href="mailto:{{webmaster_email}}?subject={{title}}">{{webmaster_email}}</a></p>
84
+ <p>{{copyright_info}} · {{contact_issue}}: <a href="mailto:{{webmaster_email}}?subject={{title}}">{{webmaster_email}}</a></p>
62
85
  </footer>
63
86
  </body>
64
87
  </html>
65
88
 
66
-
67
89
  {% endcapture %}
68
90
  {{ j1_cache | strip_empty_lines }}
69
91
  {% assign j1_cache = nil %}
@@ -0,0 +1,290 @@
1
+ ---
2
+ regenerate: true
3
+ ---
4
+
5
+ {% capture cache %}
6
+
7
+ {% comment %}
8
+ # -----------------------------------------------------------------------------
9
+ # ~/assets/themes/j1/adapter/js/cookieConsent.js
10
+ # Liquid template to create the Template Adapter for J1 CookieConsent
11
+ #
12
+ # Product/Info:
13
+ # http://jekyll.one
14
+ #
15
+ # Copyright (C) 2021 Juergen Adams
16
+ #
17
+ # J1 Template is licensed under the MIT License.
18
+ # For details, see https://jekyll.one
19
+ # -----------------------------------------------------------------------------
20
+ # Test data:
21
+ # {{ liquid_var | debug }}
22
+ # -----------------------------------------------------------------------------
23
+ {% endcomment %}
24
+
25
+ {% comment %} Liquid var initialization
26
+ -------------------------------------------------------------------------------- {% endcomment %}
27
+
28
+ {% comment %} Set config files
29
+ -------------------------------------------------------------------------------- {% endcomment %}
30
+ {% assign environment = site.environment %}
31
+ {% assign modules = site.data.modules %}
32
+
33
+ {% comment %} Set config data
34
+ -------------------------------------------------------------------------------- {% endcomment %}
35
+ {% assign consent_defaults = modules.defaults.cookieconsent.defaults %}
36
+ {% assign consent_settings = modules.cookieconsent.settings %}
37
+ {% assign tracking_enabled = site.data.j1_config.analytics.enabled %}
38
+ {% assign tracking_id = site.data.j1_config.analytics.google.tracking_id %}
39
+
40
+ {% comment %} Set config options
41
+ -------------------------------------------------------------------------------- {% endcomment %}
42
+ {% assign consent_options = consent_defaults | merge: consent_settings %}
43
+
44
+ {% assign production = false %}
45
+ {% if environment == 'prod' or environment == 'production' %}
46
+ {% assign production = true %}
47
+ {% endif %}
48
+
49
+ /*
50
+ # -----------------------------------------------------------------------------
51
+ # ~/assets/themes/j1/adapter/js/cookieConsent.js
52
+ # JS Adapter for J1 CookieConsent
53
+ #
54
+ # Product/Info:
55
+ # https://shaack.com
56
+ # http://jekyll.one
57
+ #
58
+ # Copyright (C) 2020 Stefan Haack
59
+ # Copyright (C) 2021 Juergen Adams
60
+ #
61
+ # bootstrap-cookie-banner is licensed under MIT License.
62
+ # See: https://github.com/shaack/bootstrap-cookie-banner/blob/master/LICENSE
63
+ # J1 Template is licensed under MIT License.
64
+ # See: https://github.com/jekyll-one/J1 Template/blob/master/LICENSE
65
+ # -----------------------------------------------------------------------------
66
+ # Adapter generated: {{site.time}}
67
+ # -----------------------------------------------------------------------------
68
+ */
69
+
70
+ // -----------------------------------------------------------------------------
71
+ // ESLint shimming
72
+ // -----------------------------------------------------------------------------
73
+ /* eslint indent: "off" */
74
+ /* eslint quotes: "off" */
75
+ // -----------------------------------------------------------------------------
76
+ 'use strict';
77
+
78
+ {% comment %} Main
79
+ --------------------------------------------------------------- {% endcomment %}
80
+ j1.adapter['cookieConsent'] = (function (j1, window) {
81
+
82
+ var environment = '{{environment}}';
83
+ var tracking_enabled = ('{{tracking_enabled}}' === 'true') ? true: false;
84
+ var tracking_id = '{{tracking_id}}';
85
+ var tracking_id_valid = (tracking_id.includes('tracking-id')) ? false : true;
86
+ var moduleOptions = {};
87
+ var _this;
88
+ var $modal;
89
+ var user_cookie;
90
+ var logger;
91
+ var logText;
92
+
93
+ // NOTE: RegEx for tracking_id: ^(G|UA|YT|MO)-[a-zA-Z0-9-]+$
94
+ // See: https://stackoverflow.com/questions/20411767/how-to-validate-google-analytics-tracking-id-using-a-javascript-function/20412153
95
+
96
+ // ---------------------------------------------------------------------------
97
+ // Helper functions
98
+ // ---------------------------------------------------------------------------
99
+
100
+ // ---------------------------------------------------------------------------
101
+ // Main object
102
+ // ---------------------------------------------------------------------------
103
+ return {
104
+
105
+ // -------------------------------------------------------------------------
106
+ // Initializer
107
+ // -------------------------------------------------------------------------
108
+ init: function (options) {
109
+
110
+ // -----------------------------------------------------------------------
111
+ // globals
112
+ // -----------------------------------------------------------------------
113
+ _this = j1.adapter.cookieConsent;
114
+ logger = log4javascript.getLogger('j1.adapter.cookieConsent');
115
+
116
+ // initialize state flag
117
+ _this.state = 'pending';
118
+
119
+ // -----------------------------------------------------------------------
120
+ // Default module settings
121
+ // -----------------------------------------------------------------------
122
+ var settings = $.extend({
123
+ module_name: 'j1.adapter.cookieConsent',
124
+ generated: '{{site.time}}'
125
+ }, options);
126
+
127
+ {% comment %} Load module config from yml data
128
+ -------------------------------------------------------------------------- {% endcomment %}
129
+ // Load module DEFAULTS|CONFIG
130
+ /* eslint-disable */
131
+ moduleOptions = $.extend({}, {{consent_options | replace: '=>', ':' | replace: 'nil', '""'}});
132
+ /* eslint-enable */
133
+
134
+ if (typeof settings !== 'undefined') {
135
+ moduleOptions = j1.mergeData(moduleOptions, settings);
136
+ }
137
+
138
+ // -----------------------------------------------------------------------
139
+ // initializer
140
+ // -----------------------------------------------------------------------
141
+ var dependencies_met_page_ready = setInterval (function (options) {
142
+ if ( j1.getState() === 'finished' ) {
143
+ _this.setState('started');
144
+ logger.info('state: ' + _this.getState());
145
+ logger.info('module is being initialized');
146
+
147
+ j1.cookieConsent = new BootstrapCookieConsent({
148
+ contentURL: moduleOptions.contentURL,
149
+ cookieName: moduleOptions.cookieName,
150
+ language: moduleOptions.language,
151
+ whitelisted: moduleOptions.whitelisted,
152
+ reloadPageOnChange: moduleOptions.reloadPageOnChange,
153
+ xhr_data_element: moduleOptions.xhr_data_element + '-' + moduleOptions.language,
154
+ postSelectionCallback: function () {j1.adapter.cookieConsent.cbCookie()}
155
+ });
156
+
157
+ _this.setState('finished');
158
+ logger.info('state: ' + _this.getState());
159
+ logger.debug('module initialized successfully');
160
+ clearInterval(dependencies_met_page_ready);
161
+ }
162
+ });
163
+ }, // END init
164
+
165
+ // -------------------------------------------------------------------------
166
+ // messageHandler: MessageHandler for J1 CookieConsent module
167
+ // Manage messages send from other J1 modules
168
+ // -------------------------------------------------------------------------
169
+ messageHandler: function (sender, message) {
170
+ var json_message = JSON.stringify(message, undefined, 2);
171
+
172
+ logText = 'received message from ' + sender + ': ' + json_message;
173
+ logger.debug(logText);
174
+
175
+ // -----------------------------------------------------------------------
176
+ // Process commands|actions
177
+ // -----------------------------------------------------------------------
178
+ if (message.type === 'command' && message.action === 'module_initialized') {
179
+ //
180
+ // Place handling of command|action here
181
+ //
182
+ logger.info(message.text);
183
+ }
184
+
185
+ //
186
+ // Place handling of other command|action here
187
+ //
188
+
189
+ return true;
190
+ }, // END messageHandler
191
+
192
+ // -------------------------------------------------------------------------
193
+ // setState()
194
+ // Sets the current (processing) state of the module
195
+ // -------------------------------------------------------------------------
196
+ setState: function (stat) {
197
+ _this.state = stat;
198
+ }, // END setState
199
+
200
+ // -------------------------------------------------------------------------
201
+ // getState()
202
+ // Returns the current (processing) state of the module
203
+ // -------------------------------------------------------------------------
204
+ getState: function () {
205
+ return _this.state;
206
+ }, // END getState
207
+
208
+ // -------------------------------------------------------------------------
209
+ // cbCookie()
210
+ // Called by CookieConsent module after the user has
211
+ // made his selection (callback)
212
+ // -------------------------------------------------------------------------
213
+ cbCookie: function () {
214
+ var gaCookies = j1.findCookie('_ga');
215
+ var user_state = j1.readCookie('j1.user.state');
216
+ var user_consent = j1.readCookie('j1.user.consent');
217
+ var json = JSON.stringify(user_consent);
218
+ var user_agent = platform.ua;
219
+
220
+ logger.info('Entered post selection callback from CookieConsent');
221
+ logger.info('Current values from CookieConsent: ' + json);
222
+
223
+ // enable cookie button if not visible
224
+ if ($('#quickLinksCookieButton').css('display') === 'none') {
225
+ $('#quickLinksCookieButton').css('display', 'block');
226
+ }
227
+
228
+ // NOTE: Warning needs to be moved to another module
229
+ // because page is reloaded after selection
230
+ //
231
+ if (tracking_enabled && !tracking_id_valid) {
232
+ logger.warn('tracking enabled, but invalid tracking id found: ' + tracking_id);
233
+ }
234
+
235
+ // local adapter
236
+
237
+ // for debugging
238
+ // gaCookies.forEach(item => console.log('cookieConsent: ' + item));
239
+
240
+ if (user_agent.includes('iPad')) {
241
+ logger.warn('Product detected : ' + platform.product);
242
+ }
243
+
244
+ // Manage Google Analytics OptIn/Out
245
+ // See: https://github.com/luciomartinez/gtag-opt-in/wiki
246
+ if (tracking_enabled && tracking_id_valid) {
247
+ GTagOptIn.register(tracking_id);
248
+ if (user_consent.analyses) {
249
+ logger.info('Enable: GA');
250
+ GTagOptIn.optIn();
251
+ } else {
252
+ logger.warn('Disable: GA');
253
+ GTagOptIn.optOut();
254
+
255
+ if (!user_agent.includes('iPad')) {
256
+ gaCookies.forEach(function (item) {
257
+ logger.warn('Delete GA cookie: ' + item);
258
+ j1.removeCookie({name: item, path: '/'});
259
+ });
260
+ }
261
+ }
262
+
263
+ if (!user_consent.analyses || !user_consent.personalization) {
264
+ // expire consent|state cookies to session
265
+ j1.writeCookie({
266
+ name: 'j1.user.state',
267
+ data: user_state,
268
+ samesite: 'Strict'
269
+ });
270
+ j1.writeCookie({
271
+ name: 'j1.user.consent',
272
+ data: user_consent,
273
+ samesite: 'Strict'
274
+ });
275
+ }
276
+
277
+ if (moduleOptions.reloadPageOnChange) {
278
+ // reload current page (skip cache)
279
+ location.reload(true);
280
+ }
281
+ } // END if tracking_enabled
282
+
283
+ } // END cbCookie
284
+
285
+ }; // END return
286
+ })(j1, window);
287
+
288
+ {% endcapture %}
289
+ {{ cache | strip_empty_lines }}
290
+ {% assign cache = nil %}