j1-template 2022.0.3 → 2022.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/_includes/themes/j1/procedures/posts/pager.proc +2 -2
- data/_layouts/default.html +4 -13
- data/assets/data/quicklinks.html +62 -47
- data/assets/themes/j1/adapter/js/cookieConsent.js +6 -5
- data/assets/themes/j1/adapter/js/j1.js +13 -22
- data/assets/themes/j1/adapter/js/themer.js +0 -1
- data/assets/themes/j1/adapter/js/translator.js +7 -8
- data/assets/themes/j1/core/css/themes/unodark/bootstrap.css +6 -0
- data/assets/themes/j1/core/css/themes/unodark/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/js/template.js +80 -65
- data/assets/themes/j1/core/js/template.min.js +5 -5
- data/assets/themes/j1/core/js/template.min.js.map +1 -1
- data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.js +1 -1
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.js +0 -1
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +1 -1
- data/assets/themes/j1/modules/translator/js/translator.js +1 -1
- data/assets/themes/j1/modules/translator/js/translator.min.js +1 -1
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/Gemfile +1 -1
- data/lib/starter_web/_config.yml +2 -3
- data/lib/starter_web/_data/builder/defaults/blog_navigator.yml +2 -2
- data/lib/starter_web/_data/modules/cookies.yml +30 -0
- data/lib/starter_web/_data/modules/defaults/cookieconsent.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/cookies.yml +39 -0
- data/lib/starter_web/_data/modules/defaults/navigator.yml +31 -11
- data/lib/starter_web/_data/modules/navigator_menu.yml +10 -1
- data/lib/starter_web/_includes/attributes.asciidoc +6 -1
- data/lib/starter_web/_plugins/lunr_index.rb +1 -1
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/_test_pages/google-translate-tester.1.adoc +0 -2
- data/lib/starter_web/pages/_test_pages/google-translate-tester.4.adoc +0 -2
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/100_converter.adoc +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/200_themes.adoc +1 -1
- data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +1 -1
- data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +1 -1
- data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +1 -1
- data/lib/starter_web/pages/public/blog/navigator/archive.html +1 -1
- data/lib/starter_web/pages/public/blog/navigator/index.html +1 -1
- data/lib/starter_web/pages/public/learn/quickstart.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +2 -2
- data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +1 -1
- data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +2 -12
- data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +2 -12
- data/lib/starter_web/pages/public/manuals/dropdown-help.adoc +1 -1
- data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +1 -1
- data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +1 -1
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +4 -3
- data/lib/starter_web/_data/builder/defaults/_blog_navigator.yml +0 -396
@@ -62,7 +62,7 @@ function CookieConsent(props) {
|
|
62
62
|
whitelisted: [], // pages NO consent modal dialog is issued
|
63
63
|
xhrDataElement: 'consent-data', // src container for all language-specific consent dialogs (taken from contentURL)
|
64
64
|
dialogContainerID: 'consent-modal', // dest container, the dialog modal is loaded (dynamically)
|
65
|
-
cookieSameSite: '
|
65
|
+
cookieSameSite: 'Lax', // restrict the consent cookie to first-party (do NOT send cookie to other domains)
|
66
66
|
cookieSecure: true
|
67
67
|
};
|
68
68
|
|
@@ -19,4 +19,4 @@
|
|
19
19
|
# The original version cannot be used with J1 for theme menu creation!
|
20
20
|
# -----------------------------------------------------------------------------
|
21
21
|
*/
|
22
|
-
;(function(d,h,o,g){var b=d.fn.bootstrapThemeSwitcher;var e=j1.getCookieNames();var p=j1.findCookie("_ga");var q=j1.findCookie("j1");var f=new liteURL(h.location.href);var j=f.hostname;var s=j.substring(j.lastIndexOf(".",j.lastIndexOf(".")-1)+1);var l=(f.protocol.includes("https"))?true:false;var r=log4javascript.getLogger("j1.core.switcher");var i;var c;var m={};var k;var a;var n=function(u,t){this.$element=d(u);this.settings=d.extend({},d.fn.bootstrapThemeSwitcher.defaults,t);this.themesList=[];this.getThemes();return this};n.prototype={clear:function(){r.debug("\nbootstrapThemeSwitcher.clear");return this.$element.each(function(){this.$element.empty()})},update:function(){r.debug("\nbootstrapThemeSwitcher.update");this.getThemes()},checkStyleSheetByName:function(t){var w=false;var x="/"+t+"/";var v=new RegExp(x,"i");for(var u=0;u<o.styleSheets.length;u++){if(v.test(o.styleSheets[u].href)){w=true;break}}return w},switchTheme:function(t,z){var A=d(this);var w=d.extend({},d.fn.bootstrapThemeSwitcher.defaults,A.data("bootstrapThemeSwitcher"));var v=w.cssThemeLink;var u=w.debug;var y=this.settings.includeBootswatch;var x;var B;c=j1.existsCookie(e.user_state);if(c){r.debug("\ncookie found: "+e.user_state);m=j1.readCookie(e.user_state)}else{r.error("\ncookie not found: "+e.user_state);r.debug("\nj1 cookies found:"+q.length);q.forEach(function(C){console.log("j1.core.switcher: "+C)});r.debug("\nga cookies found:"+p.length);p.forEach(function(C){console.log("j1.core.switcher: "+C)})}x=m.theme_name;B=m.theme_css;if(typeof z==="undefined"){z=this.settings.defaultCssFile}if(typeof t==="undefined"){t=z}if(w.saveToCookie){if(typeof Cookies==="undefined"){if(u==="true"){r.error("\ncookies library not present")}return false}m.theme_name=t;m.theme_css=z;if(!(m.theme_name.includes("Uno")||m.theme_name=="Bootstrap")){m.theme_author="Bootswatch";m.theme_author_url="https://bootswatch.com/"}else{m.theme_author="J1 Team";m.theme_author_url="https://jekyll.one/"}r.debug("\nwrite to cookie : "+e.user_state);j1.writeCookie({name:e.user_state,data:m,
|
22
|
+
;(function(d,h,o,g){var b=d.fn.bootstrapThemeSwitcher;var e=j1.getCookieNames();var p=j1.findCookie("_ga");var q=j1.findCookie("j1");var f=new liteURL(h.location.href);var j=f.hostname;var s=j.substring(j.lastIndexOf(".",j.lastIndexOf(".")-1)+1);var l=(f.protocol.includes("https"))?true:false;var r=log4javascript.getLogger("j1.core.switcher");var i;var c;var m={};var k;var a;var n=function(u,t){this.$element=d(u);this.settings=d.extend({},d.fn.bootstrapThemeSwitcher.defaults,t);this.themesList=[];this.getThemes();return this};n.prototype={clear:function(){r.debug("\nbootstrapThemeSwitcher.clear");return this.$element.each(function(){this.$element.empty()})},update:function(){r.debug("\nbootstrapThemeSwitcher.update");this.getThemes()},checkStyleSheetByName:function(t){var w=false;var x="/"+t+"/";var v=new RegExp(x,"i");for(var u=0;u<o.styleSheets.length;u++){if(v.test(o.styleSheets[u].href)){w=true;break}}return w},switchTheme:function(t,z){var A=d(this);var w=d.extend({},d.fn.bootstrapThemeSwitcher.defaults,A.data("bootstrapThemeSwitcher"));var v=w.cssThemeLink;var u=w.debug;var y=this.settings.includeBootswatch;var x;var B;c=j1.existsCookie(e.user_state);if(c){r.debug("\ncookie found: "+e.user_state);m=j1.readCookie(e.user_state)}else{r.error("\ncookie not found: "+e.user_state);r.debug("\nj1 cookies found:"+q.length);q.forEach(function(C){console.log("j1.core.switcher: "+C)});r.debug("\nga cookies found:"+p.length);p.forEach(function(C){console.log("j1.core.switcher: "+C)})}x=m.theme_name;B=m.theme_css;if(typeof z==="undefined"){z=this.settings.defaultCssFile}if(typeof t==="undefined"){t=z}if(w.saveToCookie){if(typeof Cookies==="undefined"){if(u==="true"){r.error("\ncookies library not present")}return false}m.theme_name=t;m.theme_css=z;if(!(m.theme_name.includes("Uno")||m.theme_name=="Bootstrap")){m.theme_author="Bootswatch";m.theme_author_url="https://bootswatch.com/"}else{m.theme_author="J1 Team";m.theme_author_url="https://jekyll.one/"}r.debug("\nwrite to cookie : "+e.user_state);j1.writeCookie({name:e.user_state,data:m,secure:l,expires:365});location.reload(true)}else{r.debug("\nwrite to cookie : disabled");r.warn("\nselected theme not activated: "+t)}},loadThemeFromCookie:function(t){if(typeof Cookies==="undefined"){r.error("\ncookies library not present");return false}var u=d.extend({},d.fn.bootstrapThemeSwitcher.defaults,t);c=j1.existsCookie(e.user_state);if(c){r.info("\ncookie found: "+e.user_state);m=j1.readCookie(e.user_state)}else{r.error("\ncookie not found: "+e.user_state);r.debug("\nj1 cookies found:"+q.length);q.forEach(function(x){console.log("j1.core.switcher: "+x)});r.debug("\nga cookies found:"+p.length);p.forEach(function(x){console.log("j1.core.switcher: "+x)})}var w=m.theme_name;var v=m.theme_css;this.switchTheme(w,v)},addTheme:function(u,t,w,v){if(typeof w==="undefined"){w=0}if(typeof v==="undefined"){v=0}this.themesList.splice(w,v,{name:u,css:t});this.addThemesToControl()},addThemesToControl:function(){if(typeof this.$element==="undefined"){r.error("\nbootstrapThemeSelector|addThemesToControl: Element is undefined");return false}if(typeof this.themesList==="undefined"){r.error("\nbootstrapThemeSelector|addThemesToControl: Themes is undefined");return false}if(this.settings.excludeBootswatch){var A;if(this.settings.excludeBootswatch.indexOf(",")!==-1){A=this.settings.excludeBootswatch.replace(/ /g,"").split(",")}else{A=[];A.push(this.settings.excludeBootswatch)}var w=this.themesList;d.each(w,function(E,F){if(F&&F.name){if(d.inArray(F.name,A)!==-1){w.splice(E,1)}}});this.themesList=w}var v=this;if(this.$element.is("ul")){var B=d(this);var x=d.extend({},d.fn.bootstrapThemeSwitcher.defaults,B.data("bootstrapThemeSwitcher"));var u=x.cssThemeLink;var t=x.debug;var y;c=j1.existsCookie(e.user_state);if(c){r.debug("\nuser state cookie found");m=j1.readCookie(e.user_state)}else{r.error("\nuser state NOT cookie found");r.debug("\nj1 cookies found:"+q.length);q.forEach(function(E){console.log("j1.core.switcher: "+E)});r.debug("\nga cookies found:"+p.length);p.forEach(function(E){console.log("j1.core.switcher: "+E)})}y=m.theme_name;if(t==="true"){r.debug("\nbootstrapThemeSelector: UL element selected")}this.$element.empty();var D;var C="#9E9E9E";d.each(this.themesList,function(F,G){if(v.$element[0].id.includes("mmenu")){D="mmenu-item"}else{D="dropdown-item"}if(G.name===y){if(v.$element[0].id.includes("mmenu")){D="mmenu-item active"}else{D="dropdown-item active"}}var E=d("<li />").attr("class",D).append('<a href="#"><i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: '+C+'"></i>'+G.name+"</a>").on("click",function(){if(x.loadFromBootswatch){v.switchTheme(G.name,G.css)}else{v.switchTheme(G.name,G.cssCdn)}d(this).parent().find("li").removeClass("active");d(this).addClass("active")});v.$element.append(E)})}else{if(this.$element.is("select")){r.debug("\nbootstrapThemeSelector: SELECT element selected");this.$element.empty();var z;d.each(this.themesList,function(E,F){z=null;if(F.name===y){z="selected"}if(x.loadFromBootswatch){v.$element.append("<option "+z+" value='"+F.css+"'>"+F.name+"</option>")}else{v.$element.append("<option "+z+" value='"+F.cssCdn+"'>"+F.name+"</option>")}});this.$element.on("change",function(){var E=d("option:selected",this);v.switchTheme(E.text(),E.val())})}else{r.info("\nbootstrapThemeSelector: no UL or SELECT element found");r.error("\nbootstrapThemeSelector: failed")}}},getThemes:function(){var t=this;if(this.settings.localFeed!==null&&this.settings.localFeed!==""){d.ajax({url:this.settings.localFeed,dataType:"json",success:function(u){t.themesList=u.themes;t.addThemesToControl()},error:function(u,w,v){r.error("\nfailed to retrieve the local feed from: '"+t.settings.localFeed+"'")}})}else{d.ajax({url:this.settings.bootswatchApiUrl+"/"+this.settings.bootswatchApiVersion+".json",dataType:"json",success:function(u){if(typeof u.themes==="undefined"){return null}t.themesList=u.themes;t.themesList.splice(0,0,{name:"default",css:t.settings.defaultCssFile});t.addThemesToControl()}})}},themes:function(t){if(typeof t==="undefined"){return this.themesList}else{this.themesList=t}}};d.fn.bootstrapThemeSwitcher=function(v){var x;var u=Array.prototype.slice.call(arguments,1);var y=d(this);var w=y.data("bootstrapThemeSwitcher");var t=typeof v==="object"&&v;if(!w){y.data("bootstrapThemeSwitcher",(w=new n(this,t)))}if(typeof v==="string"){x=w[v].apply(w,u)}return(typeof x==="undefined")?y:x};d.fn.bootstrapThemeSwitcher.defaults={debug:false,saveToCookie:true,cssThemeLink:"bootstrapTheme",cookieThemeName:"bootstrapTheme.name",cookieThemeCss:"boostrapTheme.css",cookieExpiration:365,cookiePath:"/",defaultCssFile:"https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css",bootswatchApiUrl:"https://bootswatch.com/api/",bootswatchApiVersion:"4",loadFromBootswatch:true,localFeed:"",excludeBootswatch:""};d.fn.bootstrapThemeSwitcher.Constructor=n;d.fn.bootstrapThemeSwitcher.noConflict=function(){d.fn.BootstrapThemeSwitcher=b;return this}})(jQuery,window,document);
|
@@ -45,7 +45,7 @@ function Translator(props) {
|
|
45
45
|
cookieName: 'j1.user.state', // the name of the User State Cookie (primary data)
|
46
46
|
cookieConsentName: 'j1.user.consent', // the name of the Cookie Consent Cookie (secondary data)
|
47
47
|
cookieStorageDays: 365, // the duration the cookie is stored on the client
|
48
|
-
cookieSameSite: '
|
48
|
+
cookieSameSite: 'Lax', // restrict consent cookie to first-party, do NOT send cookie to other domains
|
49
49
|
cookieSecure: cookieSecure, // secure flag on cookies
|
50
50
|
translationEnabled: false, // enable|disable translation on first page view
|
51
51
|
disableLanguageSelector: false, // disable language dropdown for translation in dialog (modal)
|
@@ -12,4 +12,4 @@
|
|
12
12
|
# See: https://github.com/jekyll-one/J1 Template/blob/master/LICENSE
|
13
13
|
# -----------------------------------------------------------------------------
|
14
14
|
*/
|
15
|
-
"use strict";function Translator(d){var p=this;var u=log4javascript.getLogger("j1.core.translator");var l=new liteURL(window.location.href);var c=(l.protocol.includes("https"))?true:false;var q=false;var g;var s;this.props={contentURL:"/assets/data/translator",cookieName:"j1.user.state",cookieConsentName:"j1.user.consent",cookieStorageDays:365,cookieSameSite:"
|
15
|
+
"use strict";function Translator(d){var p=this;var u=log4javascript.getLogger("j1.core.translator");var l=new liteURL(window.location.href);var c=(l.protocol.includes("https"))?true:false;var q=false;var g;var s;this.props={contentURL:"/assets/data/translator",cookieName:"j1.user.state",cookieConsentName:"j1.user.consent",cookieStorageDays:365,cookieSameSite:"Lax",cookieSecure:c,translationEnabled:false,disableLanguageSelector:false,translatorName:"google",translationLanguages:"all",translationLanguage:"auto",translateAllPages:true,hideSuggestionBox:true,hidePoweredBy:true,hideTopFrame:true,dialogLanguage:"content",dialogLanguages:["en","de"],dialogContainerID:"translator-modal",xhrDataElement:"",postSelectionCallback:"",};for(var e in d){this.props[e]=d[e]}if(this.props.dialogLanguage.indexOf("-")!==-1){this.props.dialogLanguage=this.props.dialogLanguage.split("-")[0]}if(!this.props.dialogLanguages.includes(this.props.dialogLanguage)){this.props.dialogLanguage=this.props.dialogLanguages[0]}this.props.xhrDataElement=this.props.xhrDataElement+"-"+this.props.dialogLanguage;u.info("\ninitializing core module: started");u.info("\nstate: started");var f={set:function(x,z,C,y,A){var B=window.btoa(z);var v="";if(C){var w=new Date();w.setTime(w.getTime()+(C*24*60*60*1000));v="; expires="+w.toUTCString()}if(A){document.cookie=x+"="+(B||"")+v+"; Path=/; SameSite="+y+"; secure="+A+";"}else{document.cookie=x+"="+(B||"")+v+"; Path=/; SameSite="+y+";"}},get:function(w){var z=w+"=";var v=document.cookie.split(";");for(var x=0;x<v.length;x++){var B=v[x];while(B.charAt(0)===" "){B=B.substring(1,B.length)}if(B.indexOf(z)===0){var A=B.substring(z.length,B.length);var y=window.atob(A);return y}}return undefined}};var n={documentReady:function(v){if(document.readyState!=="loading"){v()}else{document.addEventListener("DOMContentLoaded",v)}}};function t(){var v={};var w=false;var x=0;var y=arguments.length;if(Object.prototype.toString.call(arguments[0])==="[object Boolean]"){w=arguments[0];x++}var A=function(B){for(var C in B){if(Object.prototype.hasOwnProperty.call(B,C)){if(w&&Object.prototype.toString.call(B[C])==="[object Object]"){v[C]=t(true,v[C],B[C])}else{v[C]=B[C]}}}};for(;x<y;x++){var z=arguments[x];A(z)}return v}function h(A,x){var v=Array.prototype.slice.call(arguments,2);var z=A.split(".");var y=z.pop();for(var w=0;w<z.length;w++){x=x[z[w]]}return x[y].apply(x,v)}function j(w){var v;var x=t({size:0,width:250,multiple:false,selectedIndex:1,enableAutoFilter:false,visibleRows:null,},w);v="#"+x.selector;$.ajax({url:x.url,dataType:"json",success:function(A){var z=[];if(p.props.translationLanguages.includes("all")){z=A[x.elm]}else{for(var y=0;y<A[x.elm].length;y++){if(p.props.translationLanguages.includes(A[x.elm][y].value)){z.push(A[x.elm][y])}}}if(x.visibleRows>z.length){x.visibleRows=z.length}MsDropdown.make(v,{byJson:{data:z,name:x.name,size:x.size,width:x.width,multiple:x.multiple,},enableAutoFilter:x.enableAutoFilter,visibleRows:x.visibleRows,})},error:function(y,A,z){u.error("\nfailed to retrieve JSON data from: "+x.url)}})}function m(){n.documentReady(function(){p.modal=document.getElementById(p.props.dialogContainerID);if(!p.modal){u.info("\nload consent modal");p.modal=document.createElement("div");p.modal.id=p.props.dialogContainerID;p.modal.style.display="none";p.modal.setAttribute("class","modal fade");p.modal.setAttribute("tabindex","-1");p.modal.setAttribute("role","dialog");p.modal.setAttribute("aria-labelledby",p.props.dialogContainerID);document.body.append(p.modal);p.$modal=$(p.modal);p.$modal.on("show.bs.modal",function(){var w;var x;u.info("\nshow.bs.modal: entered");$.when(j({url:"/assets/data/iso-639-language-codes-flags.json",elm:"iso-639-languages",selector:"dropdownJSON",width:400,visibleRows:8,})).then(function(y){u.info("\ncreating msDropdown from JSON data: finished")})});p.$modal.on("shown.bs.modal",function(){var w;var x;x=setInterval(function(){if(typeof document.getElementById("dropdownJSON").msDropdown!=="undefined"){w=document.getElementById("dropdownJSON").msDropdown;if(!w.length){u.error("\nno msDropdown found in translation dialog");p.$modal.hide()}else{if(p.props.translationLanguage==="auto"){g=navigator.language||navigator.userLanguage;s=g.split("-")[0]}else{s=p.props.translationLanguage}w.selectedIndex=$("#dropdownJSON option[value="+s+"]").index();if(p.props.disableLanguageSelector){w.disabled=true}$("#dropdownJSON").show();$("body").addClass("stop-scrolling");u.info("\nmsDropdown successfully loaded in translation dialog");clearInterval(x)}}},25)});p.$modal.on("hidden.bs.modal",function(){$("body").removeClass("stop-scrolling");h(p.props.postSelectionCallback,window)});var v=p.props.contentURL+"/index.html";$.get(v).done(function(w){u.info("\nloading consent modal: successfully");p.modal.innerHTML=w;p.modal.innerHTML=$("#"+p.props.xhrDataElement).eq(0).html();p.modal.style.display="block";$(p.modal).modal({backdrop:"static",keyboard:false});p.$buttonDoNotAgree=$("#translator-buttonDoNotAgree");p.$buttonAgree=$("#translator-buttonAgree");p.$buttonSave=$("#translator-buttonSave");p.$buttonAgreeAll=$("#translator-buttonAgreeAll");u.info("\nload/initialze options from cookie");k();i();$("#google-options").on("hide.bs.collapse",function(){q=false;k()}).on("show.bs.collapse",function(){q=true;k()});u.info("\ninitialze button event handler");p.$buttonDoNotAgree.click(function(){b()});p.$buttonAgree.click(function(){o()});p.$buttonSave.click(function(){$("#google-options").collapse("hide");r();i()});p.$buttonAgreeAll.click(function(){$("#google-options").collapse("hide");o()});p.$modal.modal("show")}).fail(function(){u.error("\nloading translator dialog (modal): failed");u.warn("\nprobably no|wrong `contentURL` set")})}else{p.$modal.modal("show")}}.bind(this))}function i(){var x=p.getSettings();if(x){for(var w in x){var v=p.$modal.find("#google-options .translator-option[data-name="+w+'] input[type="checkbox"]');v.prop("checked",x[w])}}}function k(){if(q){p.$buttonDoNotAgree.hide();p.$buttonAgree.hide();p.$buttonSave.show();p.$buttonAgreeAll.show()}else{p.$buttonDoNotAgree.show();p.$buttonAgree.show();p.$buttonSave.hide();p.$buttonAgreeAll.hide()}}function a(w){var v=p.$modal.find("#google-options .translator-option");var y={};for(var z=0;z<v.length;z++){var B=v[z];var x=B.getAttribute("data-name");if(x==="necessary"){y[x]=true}else{if(w===undefined){var A=$(B).find('input[type="checkbox"]');y[x]=A.prop("checked")}else{y[x]=!!w}}}return y}function o(){var w=a(true);var v={};v=JSON.parse(f.get(p.props.cookieConsentName));v.analysis=w.analysis;v.personalization=w.personalization;f.set(p.props.cookieConsentName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);f.set(p.props.cookieName,JSON.stringify(w),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}function b(){var v=a();v.translationEnabled=false;f.set(p.props.cookieName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}function r(){var w;var v={};w=a();v=JSON.parse(f.get(p.props.cookieConsentName));v.analysis=w.analysis;v.personalization=w.personalization;f.set(p.props.cookieConsentName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);f.set(p.props.cookieName,JSON.stringify(a()),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}this.showDialog=function(){m()};this.getSettings=function(w){var v=f.get(p.props.cookieName);if(v){var x=JSON.parse(f.get(p.props.cookieName));if(w===undefined){return x}else{if(x){return x[w]}else{return false}}}else{return undefined}};u.info("\ninitializing core module finished");u.info("\nstate: finished")};
|
data/lib/j1/version.rb
CHANGED
data/lib/starter_web/Gemfile
CHANGED
@@ -53,7 +53,7 @@ gem 'jekyll', '~> 4.2'
|
|
53
53
|
|
54
54
|
# Theme Rubies, default: J1 Template (NOT used for the development system)
|
55
55
|
#
|
56
|
-
gem 'j1-template', '~> 2022.0.
|
56
|
+
gem 'j1-template', '~> 2022.0.7'
|
57
57
|
|
58
58
|
# ------------------------------------------------------------------------------
|
59
59
|
# PRODUCTION: Gem needed for the Jekyll and J1 prod environment
|
data/lib/starter_web/_config.yml
CHANGED
@@ -53,7 +53,7 @@ environment: development
|
|
53
53
|
# ------------------------------------------------------------------------------
|
54
54
|
# Sets the build version of J1 Template Gem
|
55
55
|
#
|
56
|
-
version: 2022.0.
|
56
|
+
version: 2022.0.7
|
57
57
|
|
58
58
|
# version
|
59
59
|
# ------------------------------------------------------------------------------
|
@@ -729,7 +729,7 @@ defaults:
|
|
729
729
|
follow: false
|
730
730
|
|
731
731
|
personalization: false
|
732
|
-
exclude_from_search:
|
732
|
+
exclude_from_search: true
|
733
733
|
|
734
734
|
analytics: false
|
735
735
|
comments: false
|
@@ -737,7 +737,6 @@ defaults:
|
|
737
737
|
youtube: false
|
738
738
|
vimeo: false
|
739
739
|
|
740
|
-
|
741
740
|
# ==============================================================================
|
742
741
|
# 6. LAYOUT configuration
|
743
742
|
#
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# ------------------------------------------------------------------------------
|
2
|
+
# ~/_data/modules/cookies.yml
|
3
|
+
# User configuration settings for J1 Cookie module
|
4
|
+
#
|
5
|
+
# Product/Info:
|
6
|
+
# https://jekyll.one
|
7
|
+
#
|
8
|
+
# Copyright (C) 2021 Juergen Adams
|
9
|
+
#
|
10
|
+
# J1 Template is licensed under the MIT License.
|
11
|
+
# See: https://github.com/jekyll-one/J1 Template/blob/master/LICENSE
|
12
|
+
# ------------------------------------------------------------------------------
|
13
|
+
|
14
|
+
# ------------------------------------------------------------------------------
|
15
|
+
# Description (used for J1 CC only)
|
16
|
+
#
|
17
|
+
description:
|
18
|
+
|
19
|
+
title: Cookies
|
20
|
+
scope: User settings
|
21
|
+
location: _data/modules/cookies.yml
|
22
|
+
|
23
|
+
# ------------------------------------------------------------------------------
|
24
|
+
# User configuration settings
|
25
|
+
#
|
26
|
+
settings:
|
27
|
+
expires: 365
|
28
|
+
|
29
|
+
# ------------------------------------------------------------------------------
|
30
|
+
# END config
|
@@ -33,7 +33,7 @@ defaults:
|
|
33
33
|
contentURL: /assets/data/cookieconsent # dialog content (modals) for all supported languages
|
34
34
|
cookieName: j1.user.consent # name of the user consent cookie
|
35
35
|
cookieStorageDays: 365 # duration the consent cookie is stored
|
36
|
-
cookieSameSite:
|
36
|
+
cookieSameSite: Lax # restrict consent cookie to first-party, do NOT send cookie to other domains
|
37
37
|
reloadPageOnChange: true # reload current page if user settings has been changed
|
38
38
|
whitelisted: [ '/pages/public/legal/en/privacy' ] # pages NO consent issued, currently NOT supported
|
39
39
|
xhrDataElement: consent-data # container for all language-specific consent modals (taken from contentURL)
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# ------------------------------------------------------------------------------
|
2
|
+
# ~/_data/modules/defaults/cookies.yml
|
3
|
+
# Default configuration settings for J1 Cookie module
|
4
|
+
#
|
5
|
+
# Product/Info:
|
6
|
+
# https://jekyll.one
|
7
|
+
#
|
8
|
+
# Copyright (C) 2021 Juergen Adams
|
9
|
+
#
|
10
|
+
# J1 Template is licensed under the MIT License.
|
11
|
+
# See: https://github.com/jekyll-one/J1 Template/blob/master/LICENSE
|
12
|
+
# ------------------------------------------------------------------------------
|
13
|
+
# See:
|
14
|
+
# https://datatracker.ietf.org/doc/html/rfc6265
|
15
|
+
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies
|
16
|
+
#
|
17
|
+
|
18
|
+
# ------------------------------------------------------------------------------
|
19
|
+
# Description (used for J1 CC only)
|
20
|
+
#
|
21
|
+
description:
|
22
|
+
|
23
|
+
title: Cookies
|
24
|
+
scope: Default settings
|
25
|
+
location: _data/modules/defaults/cookies.yml
|
26
|
+
|
27
|
+
# ------------------------------------------------------------------------------
|
28
|
+
# Default settings
|
29
|
+
#
|
30
|
+
defaults:
|
31
|
+
path: / # path attribute indicates a URL PATH that must exist in the requested URL in order to send the Cookie header
|
32
|
+
domain: localhost # specifies which hosts can receive a cookie. If not set, the attribute defaults to the same host that set the cookie (excluding subdomain)
|
33
|
+
expires: 0 # lifetime of a cookie [0..365], 0: session cookie
|
34
|
+
same_site: Lax # [Strict|Lax], Lax: sent for all requests
|
35
|
+
http_only: false # prevent access to cookie values via JavaScript
|
36
|
+
secure: false # only sent to the server with an encrypted request over the HTTPS protocol
|
37
|
+
|
38
|
+
# ------------------------------------------------------------------------------
|
39
|
+
# END config
|
@@ -166,33 +166,53 @@ defaults:
|
|
166
166
|
icon_color_hover: rgba(255, 255, 255, 0.9) # rgba-lighten-900
|
167
167
|
icon_size: mdi-2x
|
168
168
|
|
169
|
-
|
170
|
-
|
171
|
-
translate_icon: google-translate
|
172
|
-
|
173
|
-
translator_icon: flag-variant
|
174
|
-
|
175
|
-
toc_icon: wrap
|
176
|
-
|
169
|
+
# Link buttons
|
170
|
+
# --------------------------------------------------------------------------
|
177
171
|
home_icon: home-variant
|
178
172
|
home_url: none
|
179
|
-
|
180
|
-
r_text_sizer: false
|
181
|
-
r_text_icon: format-text # format-color-text format-annotation-plus
|
173
|
+
home_label: Home
|
182
174
|
|
183
175
|
back_icon: subdirectory-arrow-left
|
184
176
|
back_url: none
|
177
|
+
back_label: Page back
|
185
178
|
|
186
179
|
disqus_icon: disqus
|
187
180
|
disqus_url: none
|
181
|
+
disqus_label: Disqus
|
182
|
+
|
188
183
|
github_icon: github-circle
|
189
184
|
github_url: none
|
185
|
+
github_label: Github
|
186
|
+
|
190
187
|
patreon_icon: patreon
|
191
188
|
patreon_url: none
|
189
|
+
patreon_label: Patreon
|
190
|
+
|
192
191
|
facebook_icon: facebook
|
193
192
|
facebook_url: none
|
193
|
+
facebook_label: Facebook
|
194
|
+
|
194
195
|
twitter_icon: twitter
|
195
196
|
twitter_url: none
|
197
|
+
twitter_label: Twitter
|
198
|
+
|
199
|
+
# Action buttons
|
200
|
+
# --------------------------------------------------------------------------
|
201
|
+
quicksearch_icon: magnify
|
202
|
+
quicksearch_action: quicksearch
|
203
|
+
quicksearch_label: Search
|
204
|
+
|
205
|
+
cookies_icon: cookie
|
206
|
+
cookies_action: cookie-consent
|
207
|
+
cookies_label: Cookie Consent
|
208
|
+
|
209
|
+
translate_icon: google-translate
|
210
|
+
translate_action: translate
|
211
|
+
translate_label: Google Translate
|
212
|
+
|
213
|
+
r_text_icon: false # format-text
|
214
|
+
r_text_action: rtext
|
215
|
+
r_text_label: Text Resizer
|
196
216
|
|
197
217
|
# ----------------------------------------------------------------------------
|
198
218
|
# NavTopsearch
|
@@ -81,7 +81,7 @@
|
|
81
81
|
#
|
82
82
|
- item: Blog
|
83
83
|
sublevel:
|
84
|
-
- title:
|
84
|
+
- title: Starter Blog
|
85
85
|
href: /pages/public/blog/navigator/
|
86
86
|
icon: near-me
|
87
87
|
- title: Categories
|
@@ -255,6 +255,15 @@
|
|
255
255
|
- title: This site
|
256
256
|
icon: home-variant-outline
|
257
257
|
href: /pages/public/about/site
|
258
|
+
- title: Privacy
|
259
|
+
icon: heart
|
260
|
+
href: /pages/public/legal/en/privacy/
|
261
|
+
- title: Impress
|
262
|
+
icon: gavel
|
263
|
+
href: /pages/public/legal/en/impress/
|
264
|
+
- title: Comments
|
265
|
+
icon: comment
|
266
|
+
href: /pages/public/legal/en/comment_policy/
|
258
267
|
|
259
268
|
# ------------------------------------------------------------------------------
|
260
269
|
# END config
|
@@ -195,6 +195,7 @@ tag::urls[]
|
|
195
195
|
:url-jekyll-sass-converter--gh-repo: https://github.com/jekyll/jekyll-sass-converter/
|
196
196
|
:url-jekyll-sitemap--gh-repo: https://github.com/jekyll/jekyll-sitemap/
|
197
197
|
|
198
|
+
|
198
199
|
:url-jquery--home: https://jquery.com/
|
199
200
|
|
200
201
|
:url-js-yaml--gh-repo: https://github.com/nodeca/js-yaml/
|
@@ -234,6 +235,10 @@ tag::urls[]
|
|
234
235
|
:url-materialize--home: https://materializecss.com/
|
235
236
|
:url-materialize--gh-repo: https://github.com/Dogfalo/materialize/
|
236
237
|
|
238
|
+
:url-mdi--home: https://materialdesignicons.com/
|
239
|
+
:url-mdi--gh-repo: https://github.com/Templarian/MaterialDesign/
|
240
|
+
:url-mdi--cheatsheet: https://pictogrammers.github.io/@mdi/font/5.9.55/
|
241
|
+
|
237
242
|
:url-mobile-menu-light--home: https://www.mmenujs.com/mmenu-light/
|
238
243
|
:url-mobile-menu-light--gh-repo: https://github.com/FrDH/mmenu-light
|
239
244
|
|
@@ -432,7 +437,7 @@ end::tables[]
|
|
432
437
|
// -----------------------------------------------------------------------------
|
433
438
|
tag::products[]
|
434
439
|
:j1--license: MIT License
|
435
|
-
:j1--version: 2022.0.
|
440
|
+
:j1--version: 2022.0.7
|
436
441
|
:j1--site-name: Jekyll One
|
437
442
|
end::products[]
|
438
443
|
|
@@ -197,7 +197,6 @@ body{ top: 0 !important;}
|
|
197
197
|
cookie_written = j1.writeCookie({
|
198
198
|
name: cookie_names.user_state,
|
199
199
|
data: user_state,
|
200
|
-
samesite: 'Strict',
|
201
200
|
expires: 0
|
202
201
|
});
|
203
202
|
j1.removeCookie({name: 'googtrans'});
|
@@ -206,7 +205,6 @@ body{ top: 0 !important;}
|
|
206
205
|
cookie_written = j1.writeCookie({
|
207
206
|
name: cookie_names.user_state,
|
208
207
|
data: user_state,
|
209
|
-
samesite: 'Strict',
|
210
208
|
expires: 365
|
211
209
|
});
|
212
210
|
head.appendChild(script);
|
@@ -197,7 +197,6 @@ Try the translator with _Jekyll One_ and _Deepl_ on your own!
|
|
197
197
|
cookie_written = j1.writeCookie({
|
198
198
|
name: cookie_names.user_state,
|
199
199
|
data: user_state,
|
200
|
-
samesite: 'Strict',
|
201
200
|
expires: 0
|
202
201
|
});
|
203
202
|
j1.removeCookie({name: 'googtrans'});
|
@@ -206,7 +205,6 @@ Try the translator with _Jekyll One_ and _Deepl_ on your own!
|
|
206
205
|
cookie_written = j1.writeCookie({
|
207
206
|
name: cookie_names.user_state,
|
208
207
|
data: user_state,
|
209
|
-
samesite: 'Strict',
|
210
208
|
expires: 365
|
211
209
|
});
|
212
210
|
head.appendChild(script);
|
@@ -10,7 +10,7 @@ tags: [ Asciidoctor, PDF, Converter ]
|
|
10
10
|
permalink: /pages/public/skeleton/documentation/100_converter/
|
11
11
|
regenerate: false
|
12
12
|
|
13
|
-
resources: [ lightbox, clipboard, rouge ]
|
13
|
+
resources: [ animate, lightbox, clipboard, rouge ]
|
14
14
|
resource_options:
|
15
15
|
- toccer:
|
16
16
|
collapseDepth: 2
|
@@ -9,7 +9,7 @@ tags: [ Asciidoctor, PDF, Converter ]
|
|
9
9
|
permalink: /pages/public/skeleton/documentation/200_themes/
|
10
10
|
regenerate: false
|
11
11
|
|
12
|
-
resources: [ lightbox, clipboard, rouge ]
|
12
|
+
resources: [ animate, lightbox, clipboard, rouge ]
|
13
13
|
resource_options:
|
14
14
|
- toccer:
|
15
15
|
collapseDepth: 2
|
@@ -20,7 +20,7 @@ personalization: true
|
|
20
20
|
fab_menu_id: page_ctrl_simple
|
21
21
|
|
22
22
|
resources: [
|
23
|
-
lightGallery, justifiedGallery, video_js,
|
23
|
+
animate, lightGallery, justifiedGallery, video_js,
|
24
24
|
vimeo_player, vimeo_froogaloop
|
25
25
|
]
|
26
26
|
resource_options:
|
@@ -114,7 +114,7 @@ HTML5 Video support of LightGallery.
|
|
114
114
|
Two players are available with LightGallery:
|
115
115
|
|
116
116
|
. an internal player used by default
|
117
|
-
. {url-videojs--home}[video.js, {browser-window--new}], a excellent
|
117
|
+
. {url-videojs--home}[video.js, {browser-window--new}], a excellent
|
118
118
|
Javascript video library
|
119
119
|
|
120
120
|
NOTE: The HTML5 specification does _not_ define which video and audio formats
|
@@ -17,7 +17,7 @@ fab_menu_id: page_ctrl_simple
|
|
17
17
|
permalink: /pages/public/learn/roundtrip/asciidoc_extensions/
|
18
18
|
regenerate: false
|
19
19
|
|
20
|
-
resources: [ lightbox, iconify, twemoji, rouge ]
|
20
|
+
resources: [ animate, lightbox, iconify, twemoji, rouge ]
|
21
21
|
resource_options:
|
22
22
|
- attic:
|
23
23
|
padding_top: 400
|
@@ -20,7 +20,7 @@ fab_menu_id: page_ctrl_simple
|
|
20
20
|
permalink: /pages/public/learn/roundtrip/quicksearch/
|
21
21
|
regenerate: false
|
22
22
|
|
23
|
-
resources: [ lunr, rouge, lightbox, clipboard ]
|
23
|
+
resources: [ animate, lunr, rouge, lightbox, clipboard ]
|
24
24
|
resource_options:
|
25
25
|
- toccer:
|
26
26
|
collapseDepth: 3
|