j1-template 2020.0.5 → 2020.0.6
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/modules/navigator/generator.html +2 -2
- data/assets/data/mmenu.html +1 -1
- data/assets/data/mmenu_sidebar.html +1 -1
- data/assets/data/mmenu_toc.html +1 -1
- data/assets/data/ssm.html +5 -5
- data/assets/themes/j1/core/css/theme_extensions.css +38 -75
- data/assets/themes/j1/core/css/theme_extensions.min.css +1 -1
- data/assets/themes/j1/core/css/uno.css +38 -75
- data/assets/themes/j1/core/css/uno.min.css +1 -1
- data/assets/themes/j1/core/js/template.js +30 -30
- data/assets/themes/j1/core/js/template.js.map +1 -1
- data/assets/themes/j1/core/js/template.min.js +1 -1
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/Gemfile +1 -1
- data/lib/starter_web/_config.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/ssm.yml +1 -1
- data/lib/starter_web/_data/modules/defaults/toccer.yml +13 -14
- data/lib/starter_web/_data/modules/navigator.yml +4 -1
- data/lib/starter_web/_data/modules/toccer.yml +19 -62
- data/lib/starter_web/_data/resources.yml +2 -45
- data/lib/starter_web/_data/template_settings.yml +13 -13
- data/lib/starter_web/_plugins/uglify.rb +41 -0
- data/lib/starter_web/assets/themes/j1/adapter/js/algolia.js +3 -3
- data/lib/starter_web/assets/themes/j1/adapter/js/attic.js +4 -4
- data/lib/starter_web/assets/themes/j1/adapter/js/carousel.js +3 -3
- data/lib/starter_web/assets/themes/j1/adapter/js/framer.js +3 -3
- data/lib/starter_web/assets/themes/j1/adapter/js/j1.js +15 -38
- data/lib/starter_web/assets/themes/j1/adapter/js/mmenu.js +19 -6
- data/lib/starter_web/assets/themes/j1/adapter/js/navigator.js +21 -3
- data/lib/starter_web/assets/themes/j1/adapter/js/ssm.js +5 -3
- data/lib/starter_web/assets/themes/j1/adapter/js/themer.js +1 -1
- data/lib/starter_web/assets/themes/j1/adapter/js/toccer.js +38 -45
- data/lib/starter_web/assets/themes/j1/extensions/mmenu-light/css/themes/uno.css +60 -2
- data/lib/starter_web/assets/themes/j1/extensions/mmenu-light/css/themes/uno.min.css +60 -2
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +3 -11
- data/assets/themes/j1/core/css/globals.scss +0 -28
- data/lib/starter_web/_data/modules/back2top.yml +0 -40
- data/lib/starter_web/_data/modules/defaults/back2top.yml +0 -147
- data/lib/starter_web/_data/modules/defaults/smooth_scroll.yml +0 -169
- data/lib/starter_web/_data/modules/navigator.yml.new +0 -232
- data/lib/starter_web/_data/modules/smooth_scroll.yml +0 -169
- data/lib/starter_web/assets/themes/j1/adapter/js/back2top.js +0 -227
- data/lib/starter_web/assets/themes/j1/adapter/js/mmenu.js.new +0 -432
- data/lib/starter_web/assets/themes/j1/adapter/js/scroller.js +0 -177
| @@ -118,7 +118,7 @@ cookies: | |
| 118 118 | 
             
              user_session:                         j1.user.session
         | 
| 119 119 | 
             
              user_state:                           j1.user.state
         | 
| 120 120 |  | 
| 121 | 
            -
             | 
| 121 | 
            +
             | 
| 122 122 | 
             
            # ==============================================================================
         | 
| 123 123 | 
             
            # PAGE configuration settings
         | 
| 124 124 | 
             
            #
         | 
| @@ -132,14 +132,14 @@ cookies: | |
| 132 132 | 
             
            #
         | 
| 133 133 | 
             
            #   prettify
         | 
| 134 134 | 
             
            #   ----------------------------------------------------------------------------
         | 
| 135 | 
            -
            #   If set to true, all generated HTML pages (by Liquid|Jekyll) get | 
| 135 | 
            +
            #   If set to true, all generated HTML pages (by Liquid|Jekyll) get
         | 
| 136 136 | 
             
            #   formatted "pretty" by layout "default".
         | 
| 137 137 | 
             
            #
         | 
| 138 138 | 
             
            #   NOTE: Used for developent mode ONLY
         | 
| 139 139 | 
             
            #   NOTE: See ~/packages/300_template_src/_layouts/default.html
         | 
| 140 140 | 
             
            #
         | 
| 141 141 | 
             
            # ------------------------------------------------------------------------------
         | 
| 142 | 
            -
            flicker_timeout:                         | 
| 142 | 
            +
            flicker_timeout:                        150
         | 
| 143 143 |  | 
| 144 144 | 
             
            # ------------------------------------------------------------------------------
         | 
| 145 145 | 
             
            # HTML PrettyPrint
         | 
| @@ -159,9 +159,9 @@ user: | |
| 159 159 | 
             
              provider:                             j1
         | 
| 160 160 | 
             
              provider_site_url:                    https://jekyll.one
         | 
| 161 161 | 
             
              provider_home_url:                    https://jekyll.one
         | 
| 162 | 
            -
              provider_blog_url:                    /pages/public/blog/navigator/ | 
| 162 | 
            +
              provider_blog_url:                    /pages/public/blog/navigator/
         | 
| 163 163 | 
             
              provider_member_url:                  /pages/public/learn/whats_up/
         | 
| 164 | 
            -
              provider_privacy_url:                 /pages/public/legal/en/privacy/ | 
| 164 | 
            +
              provider_privacy_url:                 /pages/public/legal/en/privacy/
         | 
| 165 165 | 
             
              user_name:                            guest
         | 
| 166 166 | 
             
              status:                               active
         | 
| 167 167 | 
             
              provider_membership:                  guest
         | 
| @@ -191,7 +191,7 @@ fa: | |
| 191 191 | 
             
            # Body style settings
         | 
| 192 192 | 
             
            #
         | 
| 193 193 | 
             
            body:
         | 
| 194 | 
            -
              scrollbar:                            false | 
| 194 | 
            +
              scrollbar:                            false
         | 
| 195 195 | 
             
              background-color:                     md_gray_50
         | 
| 196 196 | 
             
              font-color:                           md_gray_900
         | 
| 197 197 | 
             
              font-size:                            1em
         | 
| @@ -219,7 +219,7 @@ comments: | |
| 219 219 | 
             
              enabled:                              true
         | 
| 220 220 | 
             
              provider:                             disqus
         | 
| 221 221 |  | 
| 222 | 
            -
              disqus: | 
| 222 | 
            +
              disqus:
         | 
| 223 223 | 
             
                short_name:                         jekyll-one
         | 
| 224 224 |  | 
| 225 225 | 
             
            # facebook:
         | 
| @@ -228,7 +228,7 @@ comments: | |
| 228 228 | 
             
            #   width:                              580
         | 
| 229 229 | 
             
            #   colorscheme:                        light
         | 
| 230 230 |  | 
| 231 | 
            -
            # custom: | 
| 231 | 
            +
            # custom:
         | 
| 232 232 | 
             
            #   custom_data:
         | 
| 233 233 |  | 
| 234 234 | 
             
            # ------------------------------------------------------------------------------
         | 
| @@ -242,7 +242,7 @@ analytics: | |
| 242 242 | 
             
              provider:                             google
         | 
| 243 243 | 
             
              google:
         | 
| 244 244 | 
             
                tracking_id:                        'UA-138160879-1'
         | 
| 245 | 
            -
              custom: | 
| 245 | 
            +
              custom:
         | 
| 246 246 | 
             
                custom_data:
         | 
| 247 247 |  | 
| 248 248 | 
             
            # ------------------------------------------------------------------------------
         | 
| @@ -254,9 +254,9 @@ analytics: | |
| 254 254 | 
             
            advertising:
         | 
| 255 255 | 
             
              enabled:                              false
         | 
| 256 256 | 
             
              provider:                             google
         | 
| 257 | 
            -
              google: | 
| 257 | 
            +
              google:
         | 
| 258 258 | 
             
                publisher_id:                       ca-pub-6537273267695855
         | 
| 259 | 
            -
              custom: | 
| 259 | 
            +
              custom:
         | 
| 260 260 | 
             
                custom_data:
         | 
| 261 261 |  | 
| 262 262 | 
             
            # ------------------------------------------------------------------------------
         | 
| @@ -271,7 +271,7 @@ translation: | |
| 271 271 |  | 
| 272 272 | 
             
              google:
         | 
| 273 273 | 
             
                layout:                             default
         | 
| 274 | 
            -
                meta_data:                          [google-translate-customization] | 
| 274 | 
            +
                meta_data:                          [google-translate-customization]
         | 
| 275 275 | 
             
                page_language:                      en
         | 
| 276 276 | 
             
                translation_languages:              [all]
         | 
| 277 277 |  | 
| @@ -291,4 +291,4 @@ translation: | |
| 291 291 |  | 
| 292 292 |  | 
| 293 293 | 
             
            # ------------------------------------------------------------------------------
         | 
| 294 | 
            -
            # END config
         | 
| 294 | 
            +
            # END config
         | 
| @@ -0,0 +1,41 @@ | |
| 1 | 
            +
            # ------------------------------------------------------------------------------
         | 
| 2 | 
            +
            # ~/_plugins/uglify.rb
         | 
| 3 | 
            +
            # Liquid filter for J1 Template to uglify JS
         | 
| 4 | 
            +
            #
         | 
| 5 | 
            +
            # Product/Info:
         | 
| 6 | 
            +
            # http://jekyll.one
         | 
| 7 | 
            +
            #
         | 
| 8 | 
            +
            # Copyright (C) 2020 Juergen Adams
         | 
| 9 | 
            +
            #
         | 
| 10 | 
            +
            # J1 Template is licensed under the MIT License.
         | 
| 11 | 
            +
            # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
         | 
| 12 | 
            +
            # ------------------------------------------------------------------------------
         | 
| 13 | 
            +
            # => Uglifier.compile(File.read(input))
         | 
| 14 | 
            +
            # ------------------------------------------------------------------------------
         | 
| 15 | 
            +
            #
         | 
| 16 | 
            +
            #  NOTE:
         | 
| 17 | 
            +
            #  CustomFilters cannot be used in SAFE mode (e.g not usable for
         | 
| 18 | 
            +
            #  rendering pages with Jekyll on GitHub
         | 
| 19 | 
            +
            #
         | 
| 20 | 
            +
            #  USAGE:
         | 
| 21 | 
            +
            #    {% capture cache_name %}
         | 
| 22 | 
            +
            #
         | 
| 23 | 
            +
            #      liquid code to generate HTML output goes here
         | 
| 24 | 
            +
            #
         | 
| 25 | 
            +
            #    {% endcapture %}
         | 
| 26 | 
            +
            #    {{ cache_name | uglify }}
         | 
| 27 | 
            +
            #
         | 
| 28 | 
            +
            # ------------------------------------------------------------------------------
         | 
| 29 | 
            +
            require 'uglifier'
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            module Jekyll
         | 
| 32 | 
            +
              module UglifyJS
         | 
| 33 | 
            +
                def uglify(input)
         | 
| 34 | 
            +
                  site_config = @context.scopes[0]["site_config"]
         | 
| 35 | 
            +
                  path = @context.registers[:page]["url"]
         | 
| 36 | 
            +
                  Uglifier.compile(File.read("X:/j1/github/j1-template/packages/400_template_site/_site/assets/themes/j1/adapter/js/toccer.js"))
         | 
| 37 | 
            +
                end
         | 
| 38 | 
            +
              end
         | 
| 39 | 
            +
            end
         | 
| 40 | 
            +
             | 
| 41 | 
            +
            Liquid::Template.register_filter(Jekyll::UglifyJS)
         | 
| @@ -302,7 +302,7 @@ j1.adapter['algolia'] = (function (j1, window) { | |
| 302 302 | 
             
                // Set the current (processing) state of the module
         | 
| 303 303 | 
             
                // -------------------------------------------------------------------------
         | 
| 304 304 | 
             
                setState: function (stat) {
         | 
| 305 | 
            -
                  j1.adapter. | 
| 305 | 
            +
                  j1.adapter.algolia.state = stat;
         | 
| 306 306 | 
             
                }, // END setState
         | 
| 307 307 |  | 
| 308 308 | 
             
                // -------------------------------------------------------------------------
         | 
| @@ -310,7 +310,7 @@ j1.adapter['algolia'] = (function (j1, window) { | |
| 310 310 | 
             
                // Returns the current (processing) state of the module
         | 
| 311 311 | 
             
                // -------------------------------------------------------------------------
         | 
| 312 312 | 
             
                getState: function () {
         | 
| 313 | 
            -
                  return j1.adapter. | 
| 313 | 
            +
                  return j1.adapter.algolia.state;
         | 
| 314 314 | 
             
                } // END state
         | 
| 315 315 |  | 
| 316 316 | 
             
              }; // END return
         | 
| @@ -318,4 +318,4 @@ j1.adapter['algolia'] = (function (j1, window) { | |
| 318 318 |  | 
| 319 319 | 
             
            {% endcapture %}
         | 
| 320 320 | 
             
            {{ cache | strip_empty_lines }}
         | 
| 321 | 
            -
            {% assign cache = nil %}
         | 
| 321 | 
            +
            {% assign cache = nil %}
         | 
| @@ -120,7 +120,7 @@ j1.adapter['attic'] = (function (j1, window) { | |
| 120 120 | 
             
                      // clear interval checking
         | 
| 121 121 | 
             
                      clearInterval(dependencies_met_attic_adapter);
         | 
| 122 122 | 
             
                    }
         | 
| 123 | 
            -
                  },  | 
| 123 | 
            +
                  }, 25); // END 'dataLoaded'
         | 
| 124 124 |  | 
| 125 125 | 
             
                  return true;
         | 
| 126 126 | 
             
                }, // END init
         | 
| @@ -544,7 +544,7 @@ j1.adapter['attic'] = (function (j1, window) { | |
| 544 544 | 
             
                // Set the current (processing) state of the module
         | 
| 545 545 | 
             
                // -------------------------------------------------------------------------
         | 
| 546 546 | 
             
                setState: function (stat) {
         | 
| 547 | 
            -
                  j1.adapter. | 
| 547 | 
            +
                  j1.adapter.attic.state = stat;
         | 
| 548 548 | 
             
                }, // END setState
         | 
| 549 549 |  | 
| 550 550 | 
             
                // -------------------------------------------------------------------------
         | 
| @@ -552,7 +552,7 @@ j1.adapter['attic'] = (function (j1, window) { | |
| 552 552 | 
             
                // Returns the current (processing) state of the module
         | 
| 553 553 | 
             
                // -------------------------------------------------------------------------
         | 
| 554 554 | 
             
                getState: function () {
         | 
| 555 | 
            -
                  return j1.adapter. | 
| 555 | 
            +
                  return j1.adapter.attic.state;
         | 
| 556 556 | 
             
                } // END state
         | 
| 557 557 |  | 
| 558 558 | 
             
              }; // END return
         | 
| @@ -560,4 +560,4 @@ j1.adapter['attic'] = (function (j1, window) { | |
| 560 560 |  | 
| 561 561 | 
             
            {% endcapture %}
         | 
| 562 562 | 
             
            {{ cache | strip_empty_lines }}
         | 
| 563 | 
            -
            {% assign cache = nil %}
         | 
| 563 | 
            +
            {% assign cache = nil %}
         | 
| @@ -293,7 +293,7 @@ j1.adapter['carousel'] = (function (j1, window) { | |
| 293 293 | 
             
                // Set the current (processing) state of the module
         | 
| 294 294 | 
             
                // -------------------------------------------------------------------------
         | 
| 295 295 | 
             
                setState: function (stat) {
         | 
| 296 | 
            -
                  j1.adapter. | 
| 296 | 
            +
                  j1.adapter.carousel.state = stat;
         | 
| 297 297 | 
             
                }, // END setState
         | 
| 298 298 |  | 
| 299 299 | 
             
                // -------------------------------------------------------------------------
         | 
| @@ -301,7 +301,7 @@ j1.adapter['carousel'] = (function (j1, window) { | |
| 301 301 | 
             
                // Returns the current (processing) state of the module
         | 
| 302 302 | 
             
                // -------------------------------------------------------------------------
         | 
| 303 303 | 
             
                getState: function () {
         | 
| 304 | 
            -
                  return j1.adapter. | 
| 304 | 
            +
                  return j1.adapter.carousel.state;
         | 
| 305 305 | 
             
                } // END state
         | 
| 306 306 |  | 
| 307 307 | 
             
              }; // END return
         | 
| @@ -310,4 +310,4 @@ j1.adapter['carousel'] = (function (j1, window) { | |
| 310 310 |  | 
| 311 311 | 
             
            {% endcapture %}
         | 
| 312 312 | 
             
            {{cache | strip_empty_lines}}
         | 
| 313 | 
            -
            {% assign cache = nil %}
         | 
| 313 | 
            +
            {% assign cache = nil %}
         | 
| @@ -189,7 +189,7 @@ j1.adapter['framer'] = (function (j1, window) { | |
| 189 189 | 
             
                // Set the current (processing) state of the module
         | 
| 190 190 | 
             
                // -------------------------------------------------------------------------
         | 
| 191 191 | 
             
                setState: function (stat) {
         | 
| 192 | 
            -
                  j1.adapter. | 
| 192 | 
            +
                  j1.adapter.framer.state = stat;
         | 
| 193 193 | 
             
                }, // END setState
         | 
| 194 194 |  | 
| 195 195 | 
             
                // -------------------------------------------------------------------------
         | 
| @@ -197,7 +197,7 @@ j1.adapter['framer'] = (function (j1, window) { | |
| 197 197 | 
             
                // Returns the current (processing) state of the module
         | 
| 198 198 | 
             
                // -------------------------------------------------------------------------
         | 
| 199 199 | 
             
                getState: function () {
         | 
| 200 | 
            -
                  return j1.adapter. | 
| 200 | 
            +
                  return j1.adapter.framer.state;
         | 
| 201 201 | 
             
                } // END state
         | 
| 202 202 |  | 
| 203 203 | 
             
              }; // END return
         | 
| @@ -205,4 +205,4 @@ j1.adapter['framer'] = (function (j1, window) { | |
| 205 205 |  | 
| 206 206 | 
             
            {% endcapture %}
         | 
| 207 207 | 
             
            {{ cache | strip_empty_lines }}
         | 
| 208 | 
            -
            {% assign cache = nil %}
         | 
| 208 | 
            +
            {% assign cache = nil %}
         | 
| @@ -1064,8 +1064,6 @@ var j1 = (function () { | |
| 1064 1064 |  | 
| 1065 1065 | 
             
                  var logText = 'initializing material design finished';
         | 
| 1066 1066 | 
             
                  logger.info(logText);
         | 
| 1067 | 
            -
             | 
| 1068 | 
            -
                  return true;
         | 
| 1069 1067 | 
             
                }, // END initMDB
         | 
| 1070 1068 |  | 
| 1071 1069 | 
             
                // -------------------------------------------------------------------------
         | 
| @@ -1085,7 +1083,6 @@ var j1 = (function () { | |
| 1085 1083 | 
             
                      o[p] = a[i][p];
         | 
| 1086 1084 | 
             
                    }
         | 
| 1087 1085 | 
             
                  }
         | 
| 1088 | 
            -
             | 
| 1089 1086 | 
             
                  return o;
         | 
| 1090 1087 | 
             
                },  // END mergeData
         | 
| 1091 1088 |  | 
| @@ -1103,61 +1100,41 @@ var j1 = (function () { | |
| 1103 1100 | 
             
                // -------------------------------------------------------------------------
         | 
| 1104 1101 | 
             
                getLanguage: function () {
         | 
| 1105 1102 | 
             
                  var language = navigator.languages ? navigator.languages[0] : (navigator.language || navigator.userLanguage);
         | 
| 1106 | 
            -
             | 
| 1107 | 
            -
                  return language;
         | 
| 1108 1103 | 
             
                }, // END getLanguage
         | 
| 1109 1104 |  | 
| 1110 1105 | 
             
                // -------------------------------------------------------------------------
         | 
| 1111 | 
            -
                //  returns the template version taken from site config ( | 
| 1106 | 
            +
                //  returns the template version taken from site config (_config.yml)
         | 
| 1112 1107 | 
             
                // -------------------------------------------------------------------------
         | 
| 1113 1108 | 
             
                getTemplateVersion: function () {
         | 
| 1114 1109 | 
             
                  return '{{template_version}}';
         | 
| 1115 1110 | 
             
                }, // END getTemplateVersion
         | 
| 1116 1111 |  | 
| 1117 1112 | 
             
                // -------------------------------------------------------------------------
         | 
| 1118 | 
            -
                // Scrolls smooth to any anchor referenced by an page URL
         | 
| 1119 | 
            -
                // Values for delay|offset are taken from | 
| 1113 | 
            +
                // Scrolls smooth to any anchor referenced by an page URL on
         | 
| 1114 | 
            +
                // e.g. a page reload. Values for delay|offset are taken from
         | 
| 1115 | 
            +
                // TOCCER module
         | 
| 1120 1116 | 
             
                // -------------------------------------------------------------------------
         | 
| 1121 1117 | 
             
                scrollTo: function () {
         | 
| 1122 | 
            -
                   | 
| 1123 | 
            -
                  var  | 
| 1124 | 
            -
                  var offset            = {{toccer_options.smoothScrollOffset}};
         | 
| 1125 | 
            -
                  var anchor_id         = window.location.href.split("#")[1];
         | 
| 1118 | 
            +
                  var anchor    = window.location.href.split("#")[1];
         | 
| 1119 | 
            +
                  var anchor_id = '#' + anchor;
         | 
| 1126 1120 | 
             
                  var selector;
         | 
| 1127 | 
            -
                  var heading;
         | 
| 1128 | 
            -
                  var re;
         | 
| 1129 1121 |  | 
| 1130 1122 | 
             
                  if (anchor_id) {
         | 
| 1131 | 
            -
                    selector    = $('.' + anchor_id + ', #' + anchor_id +',[name='+anchor_id+']');
         | 
| 1132 | 
            -
                    heading     = selector[0].nodeName;
         | 
| 1133 | 
            -
             | 
| 1134 1123 | 
             
                    // scroll only, if an anchor is given with URL
         | 
| 1124 | 
            +
                    selector = $(anchor_id);
         | 
| 1135 1125 | 
             
                    if (selector.length) {
         | 
| 1136 | 
            -
                       | 
| 1137 | 
            -
             | 
| 1138 | 
            -
             | 
| 1139 | 
            -
             | 
| 1140 | 
            -
                        function () {
         | 
| 1141 | 
            -
                          // scroll the page one pixel back and forth
         | 
| 1142 | 
            -
                          // to get the right position for the NAV Module (Tocbot)
         | 
| 1143 | 
            -
                          $(window).scrollTop($(window).scrollTop()+1);
         | 
| 1144 | 
            -
                          $(window).scrollTop($(window).scrollTop()-1);
         | 
| 1126 | 
            +
                      j1.core.scrollSmooth.scroll( anchor_id, {
         | 
| 1127 | 
            +
                        duration: {{toccer_options.scrollSmoothDuration}},
         | 
| 1128 | 
            +
                        offset: {{toccer_options.scrollSmoothOffset}},
         | 
| 1129 | 
            +
                        callback: null
         | 
| 1145 1130 | 
             
                      });
         | 
| 1146 1131 | 
             
                    } else {
         | 
| 1147 | 
            -
                      //  | 
| 1148 | 
            -
                      //  | 
| 1149 | 
            -
                      // to get the right position for the NAV Module (Tocbot)
         | 
| 1132 | 
            +
                      // scroll the page one pixel back and forth (trigger)
         | 
| 1133 | 
            +
                      // to get the right position for the Toccer
         | 
| 1150 1134 | 
             
                      $(window).scrollTop($(window).scrollTop()+1);
         | 
| 1151 1135 | 
             
                      $(window).scrollTop($(window).scrollTop()-1);
         | 
| 1152 | 
            -
                    } //  | 
| 1153 | 
            -
                  } | 
| 1154 | 
            -
                    // scroll the page one pixel back and forth
         | 
| 1155 | 
            -
                    // to get the right position for the NAV Module (Tocbot)
         | 
| 1156 | 
            -
                    $(window).scrollTop($(window).scrollTop()+1);
         | 
| 1157 | 
            -
                    $(window).scrollTop($(window).scrollTop()-1);
         | 
| 1158 | 
            -
                  } // END if anchor_id
         | 
| 1159 | 
            -
             | 
| 1160 | 
            -
                  return true;
         | 
| 1136 | 
            +
                    } // END if anchor_id
         | 
| 1137 | 
            +
                  }
         | 
| 1161 1138 | 
             
                }, // END scrollTo
         | 
| 1162 1139 |  | 
| 1163 1140 | 
             
                // -------------------------------------------------------------------------
         | 
| @@ -174,7 +174,6 @@ j1.adapter['mmenu'] = (function (j1, window) { | |
| 174 174 | 
             
                      j1.adapter.mmenu.mmenuLoader(navMenuOptions);
         | 
| 175 175 | 
             
                    }
         | 
| 176 176 | 
             
                  }, 25);
         | 
| 177 | 
            -
             | 
| 178 177 | 
             
                }, // END init
         | 
| 179 178 |  | 
| 180 179 | 
             
                // -------------------------------------------------------------------------
         | 
| @@ -217,7 +216,7 @@ j1.adapter['mmenu'] = (function (j1, window) { | |
| 217 216 | 
             
                      'j1.adapter.mmenu', {
         | 
| 218 217 | 
             
                      xhr_container_id: "{{menu_id}}",
         | 
| 219 218 | 
             
                      xhr_data_path:    "{{xhr_data_path}}" },
         | 
| 220 | 
            -
                      {% if forloop.last %}' | 
| 219 | 
            +
                      {% if forloop.last %}'null'{% else %}'null'{% endif %}){% if forloop.last %}{% else %},{% endif %}
         | 
| 221 220 |  | 
| 222 221 | 
             
                  {% endif %}
         | 
| 223 222 | 
             
                  {% capture id_list %}{{id_list}}{{menu_id}}{% if forloop.last %}{% else %},{% endif %} {% endcapture %}
         | 
| @@ -226,6 +225,11 @@ j1.adapter['mmenu'] = (function (j1, window) { | |
| 226 225 | 
             
                    // ---------------------------------------------------------------------
         | 
| 227 226 | 
             
                    // Initialize MMenu Navs and Drawers
         | 
| 228 227 | 
             
                    // ---------------------------------------------------------------------
         | 
| 228 | 
            +
                    // Make sure that Load HTML data (AJAX) is finished
         | 
| 229 | 
            +
                    setTimeout (function() {
         | 
| 230 | 
            +
                      _this.setState('data_loaded');
         | 
| 231 | 
            +
                    }, 300);
         | 
| 232 | 
            +
             | 
| 229 233 | 
             
                    var dependencies_met_mmenu_initialized = setInterval (function () {
         | 
| 230 234 | 
             
                      if (_this.getState() === 'data_loaded') {
         | 
| 231 235 | 
             
                        logger.info('load HTML data (AJAX): finished');
         | 
| @@ -235,7 +239,15 @@ j1.adapter['mmenu'] = (function (j1, window) { | |
| 235 239 | 
             
                        j1.adapter.mmenu.mmenuInitializer(mmOptions);
         | 
| 236 240 | 
             
                        clearInterval(dependencies_met_mmenu_initialized);
         | 
| 237 241 | 
             
                      }
         | 
| 238 | 
            -
                    }); // END dependencies_met_mmenu_loaded
         | 
| 242 | 
            +
                    }, 25); // END dependencies_met_mmenu_loaded
         | 
| 243 | 
            +
             | 
| 244 | 
            +
                    var dependencies_met_all_menu_loaded = setInterval (function () {
         | 
| 245 | 
            +
                      if ( $('#menu_mmenu').length && $('#sidebar_mmenu').length && $('#toc_mmenu').length ) {
         | 
| 246 | 
            +
                        _this.setState('finished');
         | 
| 247 | 
            +
                        logger.info('status: ' + _this.getState());
         | 
| 248 | 
            +
                        clearInterval(dependencies_met_all_menu_loaded);
         | 
| 249 | 
            +
                      }
         | 
| 250 | 
            +
                    }, 25); // END dependencies_met_all_menu_loaded
         | 
| 239 251 | 
             
                  }); // END done
         | 
| 240 252 | 
             
                }, // END dataLoader
         | 
| 241 253 |  | 
| @@ -314,9 +326,10 @@ j1.adapter['mmenu'] = (function (j1, window) { | |
| 314 326 | 
             
                          });
         | 
| 315 327 | 
             
                        });
         | 
| 316 328 | 
             
                        clearInterval(dependencies_met_{{menu_id}}_loaded);
         | 
| 329 | 
            +
                        $('#{{item.menu.content.id}}').show();
         | 
| 317 330 | 
             
                        logger.info('initializing mmenu finished on id: #{{menu_id}}');
         | 
| 318 331 | 
             
                      }; // END mmenu_loaded
         | 
| 319 | 
            -
                    }); // END dependencies_met_mmenu_loaded
         | 
| 332 | 
            +
                    }, 25); // END dependencies_met_mmenu_loaded
         | 
| 320 333 | 
             
                    {% endif %} // ENDIF content_type: NAVIGATION
         | 
| 321 334 |  | 
| 322 335 | 
             
                    {% if item.menu.content.type == "drawer" %}
         | 
| @@ -374,12 +387,12 @@ j1.adapter['mmenu'] = (function (j1, window) { | |
| 374 387 | 
             
                            });
         | 
| 375 388 | 
             
                          });
         | 
| 376 389 | 
             
                          clearInterval(dependencies_met_{{menu_id}}_loaded);
         | 
| 390 | 
            +
                          $('#{{item.menu.content.id}}').show();
         | 
| 377 391 | 
             
                      }; // END if menu_loaded
         | 
| 378 | 
            -
                    }); // END dependencies_met_mmenu_loaded
         | 
| 392 | 
            +
                    }, 25); // END dependencies_met_mmenu_loaded
         | 
| 379 393 | 
             
                    logger.info('initializing mmenu finished on id: #{{menu_id}}');
         | 
| 380 394 | 
             
                    {% endif %} // ENDIF content_type: DRAWER
         | 
| 381 395 | 
             
                    } // END menus|drawers
         | 
| 382 | 
            -
             | 
| 383 396 | 
             
                  {% endif %} // ENDIF menu enabled
         | 
| 384 397 | 
             
                  {% endfor %} // ENDFOR menus
         | 
| 385 398 | 
             
                }, // END mmenuInitializer
         | 
| @@ -244,6 +244,18 @@ j1.adapter['navigator'] = (function (j1, window) { | |
| 244 244 | 
             
                  logger.info('state: ' + _this.getState());
         | 
| 245 245 | 
             
                  logger.info('module is being initialized');
         | 
| 246 246 |  | 
| 247 | 
            +
                  // -----------------------------------------------------------------------
         | 
| 248 | 
            +
                  // Load HTML data (AJAX)
         | 
| 249 | 
            +
                  // -----------------------------------------------------------------------
         | 
| 250 | 
            +
                  // jadams, 202-06-24: Promise (chain) if $.when seems NOT to work correctly.
         | 
| 251 | 
            +
                  // It semms a chain using .then will be a better solution to make it sure
         | 
| 252 | 
            +
                  // that the last Deferred set the state to 'data_loaded'.
         | 
| 253 | 
            +
                  // Found the final state randomly set to 'null' what prevent the module
         | 
| 254 | 
            +
                  // to run mmenuInitializer.
         | 
| 255 | 
            +
                  // Workaround: Set 'data_loaded' to be returned by all Deferred in
         | 
| 256 | 
            +
                  // the chain.
         | 
| 257 | 
            +
                  // See: https://stackoverflow.com/questions/5436327/jquery-deferreds-and-promises-then-vs-done
         | 
| 258 | 
            +
                  //
         | 
| 247 259 | 
             
                  // -----------------------------------------------------------------------
         | 
| 248 260 | 
             
                  // data loader
         | 
| 249 261 | 
             
                  // -----------------------------------------------------------------------
         | 
| @@ -268,6 +280,12 @@ j1.adapter['navigator'] = (function (j1, window) { | |
| 268 280 | 
             
                    // ---------------------------------------------------------------------
         | 
| 269 281 | 
             
                    // core initializer
         | 
| 270 282 | 
             
                    // ---------------------------------------------------------------------
         | 
| 283 | 
            +
             | 
| 284 | 
            +
                    // Make sure that Load HTML data (AJAX) is finished
         | 
| 285 | 
            +
                    // setTimeout (function() {
         | 
| 286 | 
            +
                    //   _this.setState('data_loaded');
         | 
| 287 | 
            +
                    // }, 150);
         | 
| 288 | 
            +
             | 
| 271 289 | 
             
                    var dependencies_met_navigator_core = setInterval (function () {
         | 
| 272 290 | 
             
                      if (_this.getState() === 'data_loaded') {
         | 
| 273 291 | 
             
                        _this.setState('processing');
         | 
| @@ -581,14 +599,14 @@ j1.adapter['navigator'] = (function (j1, window) { | |
| 581 599 | 
             
                  $('head').append("<style>@media (min-width: " +gridBreakpoint_lg+ ") { nav.navbar.navigator.navbar-scrolled.light { background-color: " +bg_scrolled+ " !important; } }</style>");
         | 
| 582 600 |  | 
| 583 601 | 
             
                  // Menubar collapsed (mobile)
         | 
| 584 | 
            -
             | 
| 602 | 
            +
            //    $('head').append('<style>.navbar-collapse.collapse.show { background-color: ' +bg_scrolled+ ' !important; }</style>');
         | 
| 585 603 |  | 
| 586 604 |  | 
| 587 605 | 
             
                  /* Navbar media-queries, LARGE Window|Desktop (>= 1024) */
         | 
| 588 606 | 
             
                  /* jadams:  Oversized menu bar fixed by: overflow: hidden */
         | 
| 589 607 | 
             
            //    $('head').append("<style>@media (max-width: " +gridBreakpoint_lg+ ") { nav.navbar.navigator { background-color: " +navBarOptions.background_color_collapsed+ " !important; overflow: hidden; } }</style>");
         | 
| 590 | 
            -
             | 
| 591 | 
            -
             | 
| 608 | 
            +
            //    $('head').append("<style>@media (max-width: " +gridBreakpoint_lg+ ") { nav.navbar.navigator { background-color: " +bg_collapsed+ " !important; overflow: hidden; } }</style>");
         | 
| 609 | 
            +
            //    $('head').append("<style>@media (max-width: 1023px) { row { margin-left: 0 !important; margin-right: 0 !important; } }</style>");
         | 
| 592 610 |  | 
| 593 611 | 
             
                  {% comment %} navQuicklinks styles
         | 
| 594 612 | 
             
                  -------------------------------------------------------------------------- {% endcomment %}
         |