j1-template 2023.3.0 → 2023.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +11 -9
- data/_includes/themes/j1/layouts/content_generator_post.html +1 -1
- data/_includes/themes/j1/layouts/layout_metadata_generator.html +0 -3
- data/_includes/themes/j1/modules/navigator/generator.html +3 -3
- data/_includes/themes/j1/modules/searcher/procedures/topsearch.proc +5 -5
- data/_includes/themes/j1/procedures/collections/create_collection_article_preview.proc +3 -3
- data/_includes/themes/j1/procedures/global/select_icon_size.proc +9 -2
- data/_includes/themes/j1/procedures/layouts/default_writer.proc +1 -1
- data/_includes/themes/j1/procedures/posts/collate_timeline.proc +8 -8
- data/_includes/themes/j1/procedures/posts/create_series_header.proc +2 -2
- data/_layouts/category.html +2 -2
- data/assets/data/authclient.html +10 -12
- data/assets/data/banner.html +3 -3
- data/assets/data/fab.html +11 -8
- data/assets/data/footer.html +2 -3
- data/assets/data/gallery_customizer.html +2 -2
- data/assets/data/masonry.html +5 -5
- data/assets/data/masterslider.html +1 -1
- data/assets/data/menu.html +9 -6
- data/assets/data/panel.html +8 -8
- data/assets/data/quicklinks.html +3 -1
- data/assets/data/rtext_resizer.html +1 -1
- data/assets/data/slick.html +2 -2
- data/assets/data/translator.html +1 -1
- data/assets/themes/j1/adapter/js/advertising.js +302 -96
- data/assets/themes/j1/adapter/js/carousel.js +2 -2
- data/assets/themes/j1/adapter/js/j1.js +92 -25
- data/assets/themes/j1/adapter/js/justifiedGalleryCustomizer.js +1 -1
- data/assets/themes/j1/adapter/js/lazyLoader.js +221 -0
- data/assets/themes/j1/adapter/js/lunr.js +3 -3
- data/assets/themes/j1/adapter/js/navigator.js +3 -5
- data/assets/themes/j1/adapter/js/themeToggler.js +3 -3
- data/assets/themes/j1/adapter/js/themer.js +55 -21
- data/assets/themes/j1/core/css/icon-fonts/mdi.css +3 -7
- data/assets/themes/j1/core/css/icon-fonts/mdi.min.css +1 -1
- data/assets/themes/j1/core/css/icon-fonts/mdib.css +8337 -0
- data/assets/themes/j1/core/css/icon-fonts/mdib.min.css +1 -0
- data/assets/themes/j1/core/css/themes/unodark/bootstrap.css +104 -30
- data/assets/themes/j1/core/css/themes/unodark/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +19 -5
- data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/js/template.js +98 -31
- data/assets/themes/j1/core/js/template.min.js +2 -2
- data/assets/themes/j1/core/js/template.min.js.map +1 -1
- data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-base.json +2690 -0
- data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-base.min.json +1 -0
- data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-light.json +2 -2
- data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-light.min.json +1 -1
- data/assets/themes/j1/modules/materialize/scss/components/_global.scss +1 -1
- data/assets/themes/j1/modules/materialize/scss/components/_navbar.scss +2 -2
- data/assets/themes/j1/modules/materialize/scss/components/_sidenav.scss +1 -1
- data/assets/themes/j1/modules/materialize/scss/components/forms/_input-fields.scss +2 -2
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.js +1 -1
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +1 -1
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/Gemfile +2 -2
- data/lib/starter_web/README.md +5 -5
- data/lib/starter_web/_config.yml +2 -2
- data/lib/starter_web/_data/blocks/banner.yml +1 -1
- data/lib/starter_web/_data/blocks/defaults/footer.yml +1 -1
- data/lib/starter_web/_data/blocks/footer.yml +4 -1
- data/lib/starter_web/_data/blocks/panel.yml +47 -47
- data/lib/starter_web/_data/layouts/default.yml +1 -1
- data/lib/starter_web/_data/layouts/home.yml +29 -0
- data/lib/starter_web/_data/modules/advertising.yml +120 -42
- data/lib/starter_web/_data/modules/defaults/advertising.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/attics.yml +2 -2
- data/lib/starter_web/_data/modules/defaults/authentication.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/blog_navigator.yml +20 -20
- data/lib/starter_web/_data/modules/defaults/fab.yml +3 -3
- data/lib/starter_web/_data/modules/defaults/iconPicker.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/lazyLoader.yml +33 -0
- data/lib/starter_web/_data/modules/defaults/lunr.yml +2 -2
- data/lib/starter_web/_data/modules/defaults/masterslider.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/navigator.yml +18 -18
- data/lib/starter_web/_data/modules/defaults/themer.yml +2 -2
- data/lib/starter_web/_data/modules/fab.yml +7 -7
- data/lib/starter_web/_data/modules/iconPicker.yml +3 -3
- data/lib/starter_web/_data/modules/lazyLoader.yml +93 -0
- data/lib/starter_web/_data/modules/masonry.yml +2 -2
- data/lib/starter_web/_data/modules/navigator_menu.yml +190 -148
- data/lib/starter_web/_data/modules/slick.yml +47 -86
- data/lib/starter_web/_data/resources.yml +68 -70
- data/lib/starter_web/_data/templates/feed.xml +1 -1
- data/lib/starter_web/_includes/attributes.0.asciidoc +626 -0
- data/lib/starter_web/_includes/attributes.asciidoc +26 -24
- data/lib/starter_web/_includes/custom/templates/collection_panel.html +2 -2
- data/lib/starter_web/_includes/google/static/google_ad_5128488466.html +19 -0
- data/lib/starter_web/_includes/google/static/google_ad_7284712660.html +19 -0
- data/lib/starter_web/_includes/google/templates/google_ads.html +55 -0
- data/lib/starter_web/_plugins/asciidoctor/fab-icon-inline.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor/fas-icon-inline.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor/mdil-icon-inline.rb +1 -1
- data/lib/starter_web/_plugins/index/lunr.rb +1 -1
- data/lib/starter_web/assets/images/badges/configBinder.jpg +0 -0
- data/lib/starter_web/assets/images/badges/docsBinder.jpg +0 -0
- data/lib/starter_web/assets/images/badges/notebookBinder.jpg +0 -0
- data/lib/starter_web/assets/images/badges/scaleable/configBinder.svg +1 -1
- data/lib/starter_web/assets/images/badges/scaleable/docsBinder.svg +1 -1
- data/lib/starter_web/assets/images/badges/scaleable/myBinder.svg +1 -1
- data/lib/starter_web/assets/images/badges/scaleable/notebookBinder.svg +1 -1
- data/lib/starter_web/assets/images/icons/hyvor-talk/jpg/hyvor-logo.512x512.jpg +0 -0
- data/lib/starter_web/assets/images/icons/hyvor-talk/png/hyvor-logo.24x24.jpg +0 -0
- data/lib/starter_web/assets/images/icons/hyvor-talk/scalable/hyvor-logo.svg +1 -1
- data/lib/starter_web/assets/images/icons/j1/jpg/j1-256x256.jpg +0 -0
- data/lib/starter_web/assets/images/icons/j1/jpg/j1-512x512.jpg +0 -0
- data/lib/starter_web/assets/images/icons/j1/jpg/j1-64x64.jpg +0 -0
- data/lib/starter_web/assets/images/icons/j1/png/j1-256x256.png +0 -0
- data/lib/starter_web/assets/images/icons/j1/png/j1-512x512.jpg +0 -0
- data/lib/starter_web/assets/images/icons/j1/png/j1-512x512.jpg.png +0 -0
- data/lib/starter_web/assets/images/icons/j1/png/j1-512x512.png +0 -0
- data/lib/starter_web/assets/images/icons/j1/png/j1-64x64.png +0 -0
- data/lib/starter_web/assets/images/icons/j1/scalable/j1.svg +1 -1
- data/lib/starter_web/assets/images/modules/attics/1920x1280/brigitta-schneiter.jpg +0 -0
- data/lib/starter_web/assets/images/modules/icons/j1/scalable/j1.svg +1 -1
- data/lib/starter_web/assets/images/pages/asciidoc_skeletons/example-pdf-screenshot.jpg +0 -0
- data/lib/starter_web/assets/images/pages/core_web_vitals/200-create-a-link-1.jpg +0 -0
- data/lib/starter_web/assets/images/pages/core_web_vitals/core_web_vitals_best.jpg +0 -0
- data/lib/starter_web/assets/images/pages/core_web_vitals/core_web_vitals_best_full.jpg +0 -0
- data/lib/starter_web/assets/images/pages/features/bootswatch-themes-1280x800.jpg +0 -0
- data/lib/starter_web/assets/images/pages/features/global-mobile-traffic-1920x1080.jpg +0 -0
- data/lib/starter_web/assets/images/pages/features/google-lighthouse-1080x300.jpg +0 -0
- data/lib/starter_web/assets/images/pages/features/mobile-navigation-600x800.jpg +0 -0
- data/lib/starter_web/assets/images/pages/features/native-speakers-by-language.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/dynamic-web-access.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/jamstack-generators.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/jekyll.1200x400.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/jekyll.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/static-web-access.jpg +0 -0
- data/lib/starter_web/assets/images/promo/home/screenshot.jpg +0 -0
- data/lib/starter_web/assets/images/promo/jekyll/jekyll-faq.jpg +0 -0
- data/lib/starter_web/assets/images/promo/jekyll/jekyll-generator.jpg +0 -0
- data/lib/starter_web/assets/images/promo/jekyll/jekyll-generator.png +0 -0
- data/lib/starter_web/assets/images/promo/jekyll/jekyll-og.png +0 -0
- data/lib/starter_web/assets/images/promo/jekyll/scalable/jekyll-faq.psd +0 -0
- data/lib/starter_web/collections/_biography/a-life-in-questions.adoc +1 -1
- data/lib/starter_web/collections/_biography/becoming.adoc +1 -1
- data/lib/starter_web/collections/_biography/born-to-run.adoc +1 -1
- data/lib/starter_web/collections/_biography/forty-autumns.adoc +1 -1
- data/lib/starter_web/collections/_biography/not-dead-yet.adoc +1 -1
- data/lib/starter_web/collections/_biography/princess-diarist-the.adoc +1 -1
- data/lib/starter_web/collections/_biography/when-breath-becomes-air.adoc +1 -1
- data/lib/starter_web/collections/_fantasy/harry-potter-deathly-hallows.adoc +1 -1
- data/lib/starter_web/collections/_fantasy/harry-potter-philosophers-stone.adoc +1 -1
- data/lib/starter_web/collections/_fantasy/mistborn-trilogy.adoc +26 -1
- data/lib/starter_web/collections/_fantasy/ready-player-one.adoc +1 -1
- data/lib/starter_web/collections/_fantasy/sword-of-destiny.adoc +17 -2
- data/lib/starter_web/collections/_fantasy/terry-pratchet-diary.adoc +24 -1
- data/lib/starter_web/collections/_romance/{breath-of-snow-and-ashes-a.adoc → breath-of-snow-and-ashes.adoc} +13 -1
- data/lib/starter_web/collections/_romance/dressmaker-the.adoc +13 -1
- data/lib/starter_web/collections/_romance/fiery-cross-the.adoc +1 -1
- data/lib/starter_web/collections/_romance/it-ends-with-us.adoc +1 -1
- data/lib/starter_web/collections/_romance/outlander-novel.adoc +1 -1
- data/lib/starter_web/collections/_romance/virgins-outlander-short-story.adoc +1 -1
- data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +4 -2
- data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.adoc +4 -1
- data/lib/starter_web/collections/posts/public/featured/_posts/2021-02-01-static-site-generators.adoc +5 -3
- data/lib/starter_web/collections/posts/public/featured/_posts/2022-02-01-about-j1.adoc +4 -1
- data/lib/starter_web/collections/posts/public/featured/_posts/_includes/attributes.asciidoc +2 -2
- data/lib/starter_web/index.html +0 -9
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/_includes/attributes.asciidoc +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/_includes/documents/100_converter/112_getting_started.asciidoc +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/_includes/documents/200_themes/212_values.asciidoc +4 -4
- data/lib/starter_web/pages/public/learn/bs_sass_variables/_includes/attributes.asciidoc +1 -1
- data/lib/starter_web/pages/public/learn/core_web_vitals/_includes/attributes.asciidoc +2 -2
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/attributes.0.asciidoc +112 -0
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/attributes.asciidoc +2 -2
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/themes_rouge.asciidoc +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/icon_fonts.adoc +152 -12
- data/lib/starter_web/pages/public/learn/roundtrip/present_images.adoc +28 -4
- data/lib/starter_web/pages/public/learn/where_to_go.adoc +11 -13
- data/lib/starter_web/pages/public/{learn → tools}/cheatsheet/gem.adoc +5 -5
- data/lib/starter_web/pages/public/{learn → tools}/cheatsheet/git.adoc +14 -14
- data/lib/starter_web/pages/public/{learn → tools}/cheatsheet/j1.adoc +1 -1
- data/lib/starter_web/pages/public/{learn → tools}/cheatsheet/yaml.adoc +1 -1
- data/lib/starter_web/pages/public/{previewer → tools/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 +58 -88
- data/assets/data/nbinteract.html +0 -129
- data/assets/themes/j1/adapter/js/nbinteract.js +0 -1485
- data/assets/themes/j1/modules/advertising/js/adInitializer.js +0 -160
- data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-regular.json +0 -7312
- data/assets/themes/j1/modules/iconPicker/icons-libraries/mdi-icons-regular.min.json +0 -1
- data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.css +0 -1315
- data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.min.css +0 -7
- data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.structure.css +0 -886
- data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.structure.min.css +0 -5
- data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.theme.css +0 -446
- data/assets/themes/j1/modules/jquery-3.5.1/css/jquery-ui/jquery-ui.theme.min.css +0 -5
- data/assets/themes/j1/modules/jquery-3.5.1/js/extensions/hasClass.js +0 -37
- data/assets/themes/j1/modules/jquery-3.5.1/js/extensions/hasClass.min.js +0 -17
- data/assets/themes/j1/modules/jquery-3.5.1/js/extensions/removeClass.js +0 -42
- data/assets/themes/j1/modules/jquery-3.5.1/js/extensions/removeClass.min.js +0 -17
- data/assets/themes/j1/modules/jquery-3.5.1/js/jquery-ui.js +0 -19057
- data/assets/themes/j1/modules/jquery-3.5.1/js/jquery-ui.min.js +0 -6
- data/assets/themes/j1/modules/jquery-3.5.1/js/jquery.js +0 -10872
- data/assets/themes/j1/modules/jquery-3.5.1/js/jquery.min.js +0 -2
- data/assets/themes/j1/modules/jquery-3.5.1/js/jquery.min.map +0 -1
- data/assets/themes/j1/modules/jquery-3.5.1/js/require.js +0 -2145
- data/assets/themes/j1/modules/jquery-3.5.1/js/require.min.js +0 -5
- data/assets/themes/j1/modules/nbinteract-core/LICENSE.txt +0 -60
- data/assets/themes/j1/modules/nbinteract-core/README.md +0 -226
- data/assets/themes/j1/modules/nbinteract-core/css/nbinteract.css +0 -191
- data/assets/themes/j1/modules/nbinteract-core/css/nbinteract.min.css +0 -19
- data/assets/themes/j1/modules/nbinteract-core/css/theme/uno/nbinteract.css +0 -250
- data/assets/themes/j1/modules/nbinteract-core/css/theme/uno/nbinteract.min.css +0 -15
- data/assets/themes/j1/modules/nbinteract-core/js/mathjax/latest.js +0 -19
- data/assets/themes/j1/modules/nbinteract-core/js/mathjax/tex-chtml-full.js +0 -34
- data/assets/themes/j1/modules/nbinteract-core/js/mathjax/tex-chtml.js +0 -1
- data/assets/themes/j1/modules/nbinteract-core/js/mathjax/tex-mml-chtml.js +0 -1
- data/assets/themes/j1/modules/nbinteract-core/js/nbinteract/README +0 -1
- data/assets/themes/j1/modules/nbinteract-core/js/nbinteract/j1-nbinteract-core.js +0 -94
- data/assets/themes/j1/modules/nbinteract-core/js/nbinteract/j1-nbinteract-core.js.map +0 -1
- data/assets/themes/j1/modules/nbinteract-core/js/requireJS/require.js +0 -2068
- data/assets/themes/j1/modules/nbinteract-core/js/requireJS/require.min.js +0 -36
- data/lib/starter_web/_data/modules/defaults/nbinteract.yml +0 -281
- data/lib/starter_web/assets/images/icons/j1/j1-256x256.gif +0 -0
- data/lib/starter_web/assets/images/pages/asciidoc_skeletons/example-pdf-screenshot.png +0 -0
- data/lib/starter_web/assets/images/pages/core_web_vitals/core_web_vitals_best.png +0 -0
- data/lib/starter_web/assets/images/pages/core_web_vitals/core_web_vitals_best_full.png +0 -0
- data/lib/starter_web/assets/images/pages/features/bootswatch-themes-1280x800.png +0 -0
- data/lib/starter_web/assets/images/pages/features/global-mobile-traffic-1920x1080.png +0 -0
- data/lib/starter_web/assets/images/pages/features/google-lighthouse-1080x300.png +0 -0
- data/lib/starter_web/assets/images/pages/features/mobile-navigation-600x800.png +0 -0
- data/lib/starter_web/assets/images/pages/features/native-speakers-by-language.png +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/binderhub-architecture.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/jupyterlab-architecture.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/mandelbrot-menge-1920x1200.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/mandelbrot-menge.png +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/manual/nbi-textbook-example.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/manual/nbi_bar.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/manual/nbi_hist.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/manual/nbi_line.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/manual/nbi_multiple_choice.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/manual/nbi_scatter.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/manual/nbi_scatter_drag.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/manual/nbi_short_answer.jpg +0 -0
- data/lib/starter_web/assets/images/pages/nbinteract/nbi-textbook-example.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/dynamic-web-access.png +0 -0
- data/lib/starter_web/assets/images/posts/featured/jamstack-generators.png +0 -0
- data/lib/starter_web/assets/images/posts/featured/jekyll.1200x400.png +0 -0
- data/lib/starter_web/assets/images/posts/featured/jekyll.png +0 -0
- data/lib/starter_web/assets/images/posts/featured/post-1.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/post-2.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/post-3.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/post-4.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/post-5.jpg +0 -0
- data/lib/starter_web/assets/images/posts/featured/static-web-access.png +0 -0
- data/lib/starter_web/collections/posts/public/series/_posts/2022-08-01-organize-your-life.adoc +0 -118
- data/lib/starter_web/collections/posts/public/series/_posts/2022-08-02-organize-your-life.adoc +0 -118
- data/lib/starter_web/collections/posts/public/series/_posts/2022-08-03-organize-your-life.adoc +0 -118
- data/lib/starter_web/collections/posts/public/series/_posts/2022-09-01-organize-your-life.adoc +0 -117
- data/lib/starter_web/collections/posts/public/series/_posts/2022-09-02-organize-your-life.adoc +0 -117
- /data/lib/starter_web/assets/images/badges/{configBinder.png → png/configBinder.png} +0 -0
- /data/lib/starter_web/assets/images/badges/{docsBinder.png → png/docsBinder.png} +0 -0
- /data/lib/starter_web/assets/images/badges/{notebookBinder.png → png/notebookBinder.png} +0 -0
- /data/lib/starter_web/assets/images/icons/hyvor-talk/{hyvor-logo.24x24.png → png/hyvor-logo.24x24.png} +0 -0
- /data/lib/starter_web/assets/images/icons/hyvor-talk/{hyvor-logo.512x512.png → png/hyvor-logo.512x512.png} +0 -0
@@ -6,7 +6,7 @@ regenerate: true
|
|
6
6
|
|
7
7
|
{% comment %}
|
8
8
|
# -----------------------------------------------------------------------------
|
9
|
-
# ~/assets/
|
9
|
+
# ~/assets/theFdames/j1/adapter/js/advertising.js
|
10
10
|
# Liquid template to adapt advertising plugin
|
11
11
|
#
|
12
12
|
# Product/Info:
|
@@ -55,6 +55,7 @@ regenerate: true
|
|
55
55
|
-------------------------------------------------------------------------------- {% endcomment %}
|
56
56
|
{% assign advertising = advertising_options.enabled %}
|
57
57
|
{% assign advertising_provider = advertising_options.provider %}
|
58
|
+
{% assign layout = page.layout %}
|
58
59
|
|
59
60
|
{% comment %} Detect prod mode
|
60
61
|
-------------------------------------------------------------------------------- {% endcomment %}
|
@@ -90,15 +91,19 @@ j1.adapter.advertising = (function (j1, window) {
|
|
90
91
|
|
91
92
|
{% comment %} Set global variables
|
92
93
|
-------------------------------------------------------------------------------- {% endcomment %}
|
93
|
-
var environment
|
94
|
-
var
|
95
|
-
var
|
96
|
-
var
|
97
|
-
var
|
98
|
-
var
|
99
|
-
var
|
94
|
+
var environment = '{{environment}}';
|
95
|
+
var production = (environment.includes('prod') ? true : false);
|
96
|
+
var development = (environment.includes('dev') ? true : false);
|
97
|
+
var date = new Date();
|
98
|
+
var timestamp_now = date.toISOString();
|
99
|
+
var gasScript = document.createElement('script');
|
100
|
+
var gasDiv = document.createElement('div');
|
101
|
+
var gasIns = document.createElement('ins');
|
102
|
+
var adInitializerScript = document.createElement('script');
|
103
|
+
var advertisingProvider = 'Google Adsense';
|
104
|
+
var layout;
|
100
105
|
var advertisingDefaults;
|
101
|
-
var
|
106
|
+
var advertisingSettings;
|
102
107
|
var advertisingOptions;
|
103
108
|
var frontmatterOptions;
|
104
109
|
var autoHideOnUnfilled;
|
@@ -112,9 +117,8 @@ var baseUrl;
|
|
112
117
|
var hostname;
|
113
118
|
var cookie_names;
|
114
119
|
var user_consent;
|
115
|
-
var advertisingProvider;
|
116
120
|
var publisherID;
|
117
|
-
var
|
121
|
+
var validpublisherID;
|
118
122
|
var _this;
|
119
123
|
var logger;
|
120
124
|
var logText;
|
@@ -149,79 +153,111 @@ var logText;
|
|
149
153
|
hostname = url.hostname;
|
150
154
|
|
151
155
|
// create settings object from frontmatter
|
156
|
+
//
|
152
157
|
frontmatterOptions = options != null ? $.extend({}, options) : {};
|
153
158
|
|
159
|
+
// initialze advertisingOptions
|
160
|
+
//
|
154
161
|
advertisingDefaults = $.extend({}, {{advertising_defaults | replace: 'nil', 'null' | replace: '=>', ':' }});
|
155
|
-
|
156
|
-
advertisingOptions = $.extend(true, {}, advertisingDefaults,
|
157
|
-
|
162
|
+
advertisingSettings = $.extend({}, {{advertising_settings | replace: 'nil', 'null' | replace: '=>', ':' }});
|
163
|
+
advertisingOptions = $.extend(true, {}, advertisingDefaults, advertisingSettings, frontmatterOptions);
|
164
|
+
layout = advertisingOptions.layout;
|
165
|
+
publisherID = advertisingOptions.google.publisherID;
|
166
|
+
validpublisherID = (publisherID.includes('pub-')) ? true : false;
|
158
167
|
autoHideOnUnfilled = advertisingOptions.google.autoHideOnUnfilled;
|
159
168
|
addBorderOnUnfilled = advertisingOptions.google.addBorderOnUnfilled;
|
160
169
|
checkTrackingProtection = advertisingOptions.google.checkTrackingProtection;
|
161
170
|
showErrorPageOnBlocked = advertisingOptions.google.showErrorPageOnBlocked;
|
162
171
|
|
172
|
+
// run initialization on 'contentVisible'
|
173
|
+
//
|
163
174
|
var dependencies_met_page_ready = setInterval (function (options) {
|
164
|
-
var
|
165
|
-
var
|
166
|
-
|
175
|
+
var contentState = $('#content').css("display");
|
176
|
+
var contentVisible = (contentState == 'block') ? true: false;
|
177
|
+
|
178
|
+
if (j1.getState() === 'finished' && contentVisible) {
|
167
179
|
|
168
|
-
|
169
|
-
|
180
|
+
{% comment %} detect|load code if 'advertising' is 'enabled'
|
181
|
+
------------------------------------------------------------------------ {% endcomment %}
|
170
182
|
{% if advertising %}
|
171
183
|
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
184
|
+
_this.ad_initializer();
|
185
|
+
|
186
|
+
if (!validpublisherID) {
|
187
|
+
if (development) {
|
188
|
+
logger.warn('\n' + 'invalid publisher id: ' + publisherID);
|
189
|
+
logger.info('\n' + 'module disabled' );
|
190
|
+
}
|
178
191
|
clearInterval(dependencies_met_page_ready);
|
179
192
|
return false;
|
180
193
|
}
|
181
194
|
|
182
195
|
{% case advertising_provider %}
|
183
196
|
{% when "google" %}
|
184
|
-
// [INFO ] [j1.adapter.advertising
|
197
|
+
// [INFO ] [j1.adapter.advertising ] [ place provider: Google Adsense ]
|
185
198
|
|
186
199
|
// initialize state flag
|
200
|
+
//
|
187
201
|
_this.setState('started');
|
188
|
-
|
202
|
+
if (development) {
|
203
|
+
logger.debug('\n' + 'state: ' + _this.getState());
|
204
|
+
}
|
189
205
|
|
190
206
|
if (user_consent.personalization) {
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
advertisingProvider = 'Google Adsense';
|
195
|
-
validPublisherID = (publisherID.includes('your')) ? false : true;
|
207
|
+
if (development) {
|
208
|
+
logger.info('\n' + 'adsense api is being initialized');
|
209
|
+
}
|
196
210
|
|
197
|
-
if (!
|
198
|
-
|
199
|
-
|
200
|
-
|
211
|
+
if (!validpublisherID) {
|
212
|
+
if (development) {
|
213
|
+
logger.debug('\n' + 'invalid publisherID detected for Google Adsense: ' + publisherID);
|
214
|
+
logger.info('\n' + 'skip initialization for provider: ' + advertisingProvider);
|
215
|
+
}
|
216
|
+
return false;
|
201
217
|
} else {
|
202
|
-
|
218
|
+
if (development) {
|
219
|
+
logger.info('\n' + 'use publisherID for Google Adsense: ' + publisherID);
|
220
|
+
}
|
221
|
+
}
|
222
|
+
|
223
|
+
// add Google Adsense API dynamically in head section loaded async
|
224
|
+
//
|
225
|
+
if (development) {
|
226
|
+
logger.info('\n' + 'add Google AdsenseAPI in section: head');
|
203
227
|
}
|
204
228
|
|
205
|
-
// add GAS API (Google Adsense) dynamically in head section
|
206
|
-
// loaded async
|
207
|
-
// -----------------------------------------------------------------
|
208
|
-
logger.info('\n' + 'add Google Adsense (GAS) API in section: head');
|
209
229
|
gasScript.async = true;
|
210
230
|
gasScript.id = 'gas-api';
|
211
231
|
gasScript.src = '//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js';
|
212
232
|
gasScript.setAttribute('data-ad-client', publisherID);
|
213
233
|
document.head.appendChild(gasScript);
|
214
|
-
|
234
|
+
|
235
|
+
if (development) {
|
236
|
+
logger.info('\n' + 'adsense api initialized');
|
237
|
+
}
|
215
238
|
|
216
239
|
// setup monitor for state changes on all ads configured
|
217
|
-
//
|
218
|
-
|
219
|
-
|
240
|
+
//
|
241
|
+
setTimeout(function () {
|
242
|
+
var ads_found = (document.getElementsByClassName('adsbygoogle').length > 0) ? true : false;
|
243
|
+
if (ads_found > 0) {
|
244
|
+
if (development) {
|
245
|
+
logger.info('\n' + 'setup Google Ad monitoring');
|
246
|
+
}
|
247
|
+
_this.ad_monitor();
|
248
|
+
} else {
|
249
|
+
if (development) {
|
250
|
+
logger.warn('\n' + 'no initialized Google Ads found in page');
|
251
|
+
}
|
252
|
+
}
|
253
|
+
}, 1000);
|
220
254
|
|
221
255
|
// run protection check
|
222
|
-
//
|
256
|
+
//
|
223
257
|
if (checkTrackingProtection) {
|
224
|
-
|
258
|
+
if (development) {
|
259
|
+
logger.debug('\n' + 'run checks for tracking protection');
|
260
|
+
}
|
225
261
|
|
226
262
|
_this.check_tracking_protection();
|
227
263
|
var dependencies_met_tracking_check_ready = setInterval (function (options) {
|
@@ -229,46 +265,57 @@ var logText;
|
|
229
265
|
var browser_tracking_feature = navigator.DoNotTrack;
|
230
266
|
|
231
267
|
if (!tracking_protection && !browser_tracking_feature) {
|
232
|
-
|
233
|
-
|
268
|
+
if (development) {
|
269
|
+
logText = '\n' + 'tracking protection: disabled';
|
270
|
+
logger.info(logText);
|
271
|
+
}
|
234
272
|
} else {
|
235
|
-
|
236
|
-
|
273
|
+
if (development) {
|
274
|
+
logText = '\n' + 'tracking protection: enabled';
|
275
|
+
logger.debug(logText);
|
276
|
+
}
|
237
277
|
|
238
278
|
if (showErrorPageOnBlocked) {
|
239
|
-
|
279
|
+
if (development) {
|
280
|
+
logger.error('\n' + 'redirect to error page (blocked content): HTML-447');
|
281
|
+
}
|
240
282
|
// redirect to error page: blocked content
|
241
283
|
window.location.href = '/447.html';
|
242
284
|
}
|
243
285
|
}
|
244
286
|
}
|
287
|
+
|
245
288
|
clearInterval(dependencies_met_tracking_check_ready);
|
246
289
|
}, 10);
|
247
290
|
} else {
|
248
291
|
// no protection check enabled
|
249
292
|
_this.setState('finished');
|
250
|
-
|
251
|
-
|
293
|
+
|
294
|
+
if (development) {
|
295
|
+
logger.debug('\n' + 'state: ' + _this.getState());
|
296
|
+
logger.info('\n' + 'module initialized successfully');
|
297
|
+
}
|
298
|
+
|
252
299
|
clearInterval(dependencies_met_tracking_check_ready);
|
253
300
|
}
|
254
301
|
|
255
302
|
} else {
|
256
303
|
// user consent on personalization "false"
|
257
304
|
//
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
//
|
268
|
-
|
269
|
-
// ------------------------------------------------------------------
|
305
|
+
if (production) {
|
306
|
+
console.debug('cookies for personalization rejected');
|
307
|
+
console.debug('initialization of module advertising skipped');
|
308
|
+
} else {
|
309
|
+
logger.warn('\n' + 'user consent on personalization: ' + user_consent.personalization);
|
310
|
+
logger.warn('\n' + 'initializing module: skipped');
|
311
|
+
}
|
312
|
+
|
313
|
+
// if consent is rejected, detect and remove Adsense cookies
|
314
|
+
//
|
315
|
+
var gasCookies = j1.findCookie('__g');
|
270
316
|
gasCookies.forEach(function (item) {
|
271
|
-
//
|
317
|
+
// remove Google Ad cookies
|
318
|
+
//
|
272
319
|
if (hostname == 'localhost') {
|
273
320
|
j1.removeCookie({ name: item, domain: false, secure: false });
|
274
321
|
} else {
|
@@ -277,14 +324,18 @@ var logText;
|
|
277
324
|
});
|
278
325
|
|
279
326
|
// manage tracking protection
|
280
|
-
//
|
327
|
+
//
|
281
328
|
if (checkTrackingProtection) {
|
282
329
|
if (!user_consent.personalization) {
|
283
|
-
|
284
|
-
|
330
|
+
if (development) {
|
331
|
+
logText = '\n' + 'consent on cookies disabled for personalization';
|
332
|
+
logger.debug(logText);
|
333
|
+
}
|
285
334
|
|
286
335
|
if (showErrorPageOnBlocked) {
|
287
|
-
|
336
|
+
if (development) {
|
337
|
+
logger.error('\n' + 'redirect to error page (blocked content): HTML-447');
|
338
|
+
}
|
288
339
|
// redirect to error page: blocked content
|
289
340
|
window.location.href = '/448.html';
|
290
341
|
}
|
@@ -299,48 +350,195 @@ var logText;
|
|
299
350
|
// [INFO ] [j1.adapter.advertising ] [ end processing ]
|
300
351
|
{% else %}
|
301
352
|
var ads_found = document.getElementsByClassName('adsbygoogle').length;
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
353
|
+
if (development) {
|
354
|
+
logger = log4javascript.getLogger('j1.adapter.advertising');
|
355
|
+
logger.debug('\n' + 'found ads in page: #' + ads_found);
|
356
|
+
logger.debug('\n' + 'no ads initialized, advertising disabled');
|
357
|
+
}
|
358
|
+
{% endif %} // END if 'advertising'
|
306
359
|
|
307
360
|
clearInterval(dependencies_met_page_ready);
|
308
361
|
}
|
309
362
|
}, 10);
|
310
363
|
}, // END init
|
311
364
|
|
365
|
+
// -------------------------------------------------------------------------
|
366
|
+
// ad_initializer()
|
367
|
+
// initialze all ad units in a page (ins elements)
|
368
|
+
// -------------------------------------------------------------------------
|
369
|
+
ad_initializer: function () {
|
370
|
+
|
371
|
+
var dependencies_met_page_visible = setInterval (function (options) {
|
372
|
+
var contentState = $('#content').css("display");
|
373
|
+
var contentVisible = (contentState == 'block') ? true: false;
|
374
|
+
var ads_found = (document.getElementsByClassName('adsbygoogle').length > 0) ? true : false;
|
375
|
+
var ads_initialized = 0;
|
376
|
+
var ad_containers;
|
377
|
+
|
378
|
+
if (j1.getState() === 'finished' && contentVisible && ads_found) {
|
379
|
+
if (!validpublisherID) {
|
380
|
+
// skip setup processes
|
381
|
+
//
|
382
|
+
clearInterval(dependencies_met_page_visible);
|
383
|
+
return false;
|
384
|
+
}
|
385
|
+
|
386
|
+
// create|loading adverting for containers enabled
|
387
|
+
//
|
388
|
+
ad_containers = advertisingOptions.google.ads;
|
389
|
+
ad_containers.forEach(function (ad) {
|
390
|
+
if (user_consent.personalization) {
|
391
|
+
var currentDiv = document.getElementById(ad.id);
|
392
|
+
|
393
|
+
if (ad.enabled && ad.layout == layout) {
|
394
|
+
var ins = document.createElement('ins');
|
395
|
+
|
396
|
+
currentDiv.appendChild(ins);
|
397
|
+
var insID = 'ins_' + ad.id;
|
398
|
+
ins.setAttribute('id', insID);
|
399
|
+
ins.className = "adsbygoogle";
|
400
|
+
|
401
|
+
document.getElementById(insID).setAttribute('style', ad.styles);
|
402
|
+
document.getElementById(insID).setAttribute('data-ad-test', ad.test)
|
403
|
+
document.getElementById(insID).setAttribute('data-ad-client', ad.publisherID);
|
404
|
+
document.getElementById(insID).setAttribute('data-ad-slot', ad.slot);
|
405
|
+
document.getElementById(insID).setAttribute('data-ad-format', ad.ad_format);
|
406
|
+
|
407
|
+
if (ad.ad_layout == 'display') {
|
408
|
+
document.getElementById(insID).setAttribute('data-full-width-responsive', ad.ad_responsive);
|
409
|
+
}
|
410
|
+
|
411
|
+
// if (ad.ad_layout == 'in-article') {
|
412
|
+
// document.getElementById(insID).setAttribute('data-ad-format', ad.ad_format);
|
413
|
+
// }
|
414
|
+
|
415
|
+
if (ad.ad_layout == 'multiplex') {
|
416
|
+
document.getElementById(insID).setAttribute('data-matched-content-ui-typ', ad.ui_type);
|
417
|
+
document.getElementById(insID).setAttribute('data-matched-content-columns-num', ad.ui_columns);
|
418
|
+
document.getElementById(insID).setAttribute('data-matched-content-rows-num', ad.ui_rows);
|
419
|
+
}
|
420
|
+
|
421
|
+
ads_initialized ++;
|
422
|
+
} else {
|
423
|
+
if (ad.layout == layout) {
|
424
|
+
if (development) {
|
425
|
+
logger.warn('\n' + 'ad disabled on id ' + ad.id + ' for slot: ' + ad.slot);
|
426
|
+
}
|
427
|
+
}
|
428
|
+
}
|
429
|
+
} else {
|
430
|
+
if (development) {
|
431
|
+
logger.warn('\n' + 'skipped add settings on all ad containers');
|
432
|
+
}
|
433
|
+
} // END if user_consent.personalization
|
434
|
+
|
435
|
+
});
|
436
|
+
// END loading adverting containers
|
437
|
+
|
438
|
+
if (ads_initialized > 0) {
|
439
|
+
if (development) {
|
440
|
+
logger.info('\n' + 'ads enabled found in page (total): ' + ads_initialized);
|
441
|
+
}
|
442
|
+
|
443
|
+
var google_ads = document.getElementsByClassName('adsbygoogle');
|
444
|
+
var counter = document.getElementsByClassName('adsbygoogle').length;
|
445
|
+
|
446
|
+
// jadams, 2023-06-22:
|
447
|
+
// skip last element in google_ads (adsbygoogle-noablate)
|
448
|
+
// TODO: clarify for what reason an 'ins' element with
|
449
|
+
// class 'adsbygoogle-noablate' is added by Googgle Adsense
|
450
|
+
// Possible reason: publisherID is 'wrong|fake' or NOT 'verified'
|
451
|
+
//
|
452
|
+
counter--;
|
453
|
+
|
454
|
+
[].forEach.call(google_ads, function() {
|
455
|
+
// skip last element in google_ads (adsbygoogle-noablate)
|
456
|
+
if (counter > 0) {
|
457
|
+
(adsbygoogle = window.adsbygoogle || []).push({});
|
458
|
+
}
|
459
|
+
counter --;
|
460
|
+
});
|
461
|
+
} else {
|
462
|
+
if (development) {
|
463
|
+
logger.warn('\n' + 'no ads found in page for layout: ' + layout);
|
464
|
+
}
|
465
|
+
} // END if ads_initialized
|
466
|
+
|
467
|
+
clearInterval(dependencies_met_page_visible);
|
468
|
+
} // END contentVisible|ads_found
|
469
|
+
|
470
|
+
}, 10); // END dependencies_met_page_visible
|
471
|
+
|
472
|
+
}, // END ad_initializer
|
473
|
+
|
312
474
|
// -------------------------------------------------------------------------
|
313
475
|
// ad_monitor()
|
314
476
|
// monitor for state changes on the ad placed in pages (if any)
|
315
477
|
//
|
316
478
|
// NOTE: Check visibility state of the adSlot to prevent multiple
|
317
479
|
// processing of the same slot
|
480
|
+
//
|
481
|
+
// NOTE: Skip ad containers with class 'adsbygoogle-noablate'
|
482
|
+
//
|
318
483
|
// -------------------------------------------------------------------------
|
319
484
|
ad_monitor: function () {
|
320
|
-
// logger.info('\n' + 'setup ad monitoring');
|
321
485
|
$('.adsbygoogle').attrchange({
|
322
486
|
trackValues: true,
|
323
487
|
callback: function (event) {
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
488
|
+
var elm = event.target.dataset;
|
489
|
+
var elm_classes = event.target.className;
|
490
|
+
var validAdContainer = (elm_classes.includes('adsbygoogle-noablate')) ? false : true;
|
491
|
+
var environment = '{{environment}}';
|
492
|
+
var production = (environment.includes('prod') ? true : false);
|
493
|
+
var adSlotIsVisible = $('.adsbygoogle').is(":visible");
|
494
|
+
|
495
|
+
if (adSlotIsVisible && validAdContainer && event.newValue !== event.oldValue) {
|
496
|
+
if (event.newValue === 'unfilled') {
|
497
|
+
if (production) {
|
498
|
+
console.debug('detected ad blocks in state: unfilled');
|
499
|
+
} else {
|
500
|
+
logger.warn('\n' + 'detected ad on slot ' + elm.adSlot + ' in state: ' + event.newValue);
|
501
|
+
}
|
329
502
|
if (addBorderOnUnfilled) {
|
330
503
|
$('.adsbygoogle').addClass('border--dotted');
|
331
504
|
}
|
332
|
-
|
333
505
|
if (autoHideOnUnfilled) {
|
334
|
-
|
506
|
+
if (development) {
|
507
|
+
logger.info('\n' + ' hide ad on slot: ' + elm.adSlot);
|
508
|
+
}
|
335
509
|
$('.adsbygoogle').hide();
|
336
510
|
}
|
337
|
-
}
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
511
|
+
} else if (event.newValue === 'filled') {
|
512
|
+
if (development) {
|
513
|
+
logger.info('\n' + 'detected ad on slot ' + elm.adSlot + ' in state: ' + event.newValue);
|
514
|
+
}
|
515
|
+
} else {
|
516
|
+
var filled = (event.newValue.includes('display') ? true : false);
|
517
|
+
var unfilled = (event.newValue.includes('dotted') ? true : false);
|
518
|
+
if (filled) {
|
519
|
+
if (production) {
|
520
|
+
console.info('detected ad blocks in state: filled');
|
521
|
+
} else {
|
522
|
+
logger.info('\n' + 'detected ad block on slot ' + elm.adSlot + ' in state: filled');
|
523
|
+
}
|
524
|
+
} else if (unfilled) {
|
525
|
+
if (production) {
|
526
|
+
console.info('detected ad blocks in state: unfilled');
|
527
|
+
} else {
|
528
|
+
logger.info('\n' + 'detected ad block on slot ' + elm.adSlot + ' in state: unfilled');
|
529
|
+
}
|
530
|
+
} else {
|
531
|
+
if (production) {
|
532
|
+
console.warn('unknown ad state detected: ' + event.newValue);
|
533
|
+
} else {
|
534
|
+
logger.warn('\n' + 'unknown ad state detected on slot ' + elm.adSlot + ' : ' + event.newValue);
|
535
|
+
}
|
536
|
+
}
|
537
|
+
} // END if 'event.newValue'
|
538
|
+
} // END if 'adSlotIsVisible'
|
539
|
+
} // END 'callback'
|
540
|
+
}); // END 'attrchange'
|
541
|
+
}, // END ad_monitor
|
344
542
|
|
345
543
|
// -------------------------------------------------------------------------
|
346
544
|
// check_tracking_protection()
|
@@ -357,8 +555,10 @@ var logText;
|
|
357
555
|
check_tracking_protection: function () {
|
358
556
|
var logger = log4javascript.getLogger('j1.adapter.advertising.monitor.tracking');
|
359
557
|
|
360
|
-
|
361
|
-
|
558
|
+
if (development) {
|
559
|
+
logText = '\n' + 'check for trackingprotection';
|
560
|
+
logger.info(logText);
|
561
|
+
}
|
362
562
|
|
363
563
|
function checkTrackingProtection() {
|
364
564
|
if (!checkTrackingProtection.promise) {
|
@@ -379,7 +579,9 @@ var logText;
|
|
379
579
|
tracking_protection = false;
|
380
580
|
}).catch(e => {
|
381
581
|
tracking_protection = true;
|
382
|
-
|
582
|
+
if (development) {
|
583
|
+
logger.debug('\n' + 'detection details: ' + e);
|
584
|
+
}
|
383
585
|
});
|
384
586
|
}
|
385
587
|
}
|
@@ -394,8 +596,10 @@ var logText;
|
|
394
596
|
messageHandler: function (sender, message) {
|
395
597
|
var json_message = JSON.stringify(message, undefined, 2);
|
396
598
|
|
397
|
-
|
398
|
-
|
599
|
+
if (development) {
|
600
|
+
logText = '\n' + 'received message from ' + sender + ': ' + json_message;
|
601
|
+
logger.debug(logText);
|
602
|
+
}
|
399
603
|
|
400
604
|
// -----------------------------------------------------------------------
|
401
605
|
// Process commands|actions
|
@@ -404,7 +608,9 @@ var logText;
|
|
404
608
|
//
|
405
609
|
// Place handling of command|action here
|
406
610
|
//
|
407
|
-
|
611
|
+
if (development) {
|
612
|
+
logger.info('\n' + message.text);
|
613
|
+
}
|
408
614
|
}
|
409
615
|
|
410
616
|
//
|
@@ -242,9 +242,9 @@ j1.adapter.carousel = (function (j1, window) {
|
|
242
242
|
{% endif %}
|
243
243
|
|
244
244
|
{% if text_color %}
|
245
|
-
$('#{{slider_id}}').addClass('
|
245
|
+
$('#{{slider_id}}').addClass('md-{{text_color}}');
|
246
246
|
{% else %}
|
247
|
-
$('#{{slider_id}}').addClass('
|
247
|
+
$('#{{slider_id}}').addClass('md-grey-100');
|
248
248
|
{% endif %}
|
249
249
|
|
250
250
|
{% if font_size %}
|