j1_template 2019.4.7 → 2019.4.8

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.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/layouts/content_generator_collection.html +24 -9
  3. data/_includes/themes/j1/layouts/content_generator_page.html +24 -9
  4. data/_includes/themes/j1/layouts/content_generator_post.html +27 -15
  5. data/_includes/themes/j1/layouts/layout_theme_generator.html +39 -19
  6. data/_includes/themes/j1/layouts/layout_theme_generator.new.html +118 -0
  7. data/_includes/themes/j1/layouts/layout_theme_generator.org.html +119 -0
  8. data/_includes/themes/j1/procedures/global/pager.proc +49 -51
  9. data/lib/j1/version.rb +1 -1
  10. data/lib/j1_app/j1_auth_manager/auth_manager.rb +27 -29
  11. data/lib/j1_app/j1_auth_manager/views/auth_manager_ui.erb +12 -8
  12. data/lib/starter_web/Gemfile +1 -1
  13. data/lib/starter_web/_cc_test_data/_config.yml +1 -1
  14. data/lib/starter_web/_cc_test_data/_data/blocks/banner.yml +57 -0
  15. data/lib/starter_web/_cc_test_data/_data/blocks/defaults/banner.yml +55 -0
  16. data/lib/starter_web/_cc_test_data/_data/blocks/defaults/footer.yml +3 -3
  17. data/lib/starter_web/_cc_test_data/_data/blocks/defaults/panel.yml +30 -38
  18. data/lib/starter_web/_cc_test_data/_data/blocks/footer.yml +181 -110
  19. data/lib/starter_web/_cc_test_data/_data/modules/back2top.yml +1 -1
  20. data/lib/starter_web/_cc_test_data/_data/modules/defaults/smooth_scroll.yml +169 -0
  21. data/lib/starter_web/_cc_test_data/_data/modules/defaults/theme_switcher.yml +168 -0
  22. data/lib/starter_web/_cc_test_data/_data/modules/smooth_scroll.yml +169 -0
  23. data/lib/starter_web/_cc_test_data/_data/modules/theme_switcher.yml +168 -0
  24. data/lib/starter_web/_config.yml +74 -71
  25. data/lib/starter_web/_data/blocks/banner.yml +57 -0
  26. data/lib/starter_web/_data/blocks/defaults/banner.yml +55 -0
  27. data/lib/starter_web/_data/modules/{j1_navigator_menu.yml → _old_configs/j1_navigator_menu.yml} +0 -0
  28. data/lib/starter_web/_data/modules/{j1_parallax.yml → _old_configs/j1_parallax.yml} +0 -0
  29. data/lib/starter_web/_data/modules/{j1_smooth_scroll.yml → _old_configs/j1_smooth_scroll.yml} +0 -0
  30. data/lib/starter_web/_data/modules/{j1_stickybits.yml → _old_configs/j1_stickybits.yml} +0 -0
  31. data/lib/starter_web/_data/modules/{j1_theme_switcher.yml → _old_configs/j1_theme_switcher.yml} +0 -0
  32. data/lib/starter_web/_data/modules/{j1_toccer.yml → _old_configs/j1_toccer.yml} +0 -0
  33. data/lib/starter_web/_data/modules/defaults/smooth_scroll.yml +169 -0
  34. data/lib/starter_web/_data/modules/defaults/stickybits.yml +37 -0
  35. data/lib/starter_web/_data/modules/defaults/theme_switcher.yml +168 -0
  36. data/lib/starter_web/_data/modules/defaults/toccer.yml +172 -0
  37. data/lib/starter_web/_data/modules/navigator_menu.yml +306 -0
  38. data/lib/starter_web/_data/modules/smooth_scroll.yml +169 -0
  39. data/lib/starter_web/_data/modules/stickybits.yml +38 -0
  40. data/lib/starter_web/_data/modules/theme_switcher.yml +168 -0
  41. data/lib/starter_web/_data/modules/toccer.yml +172 -0
  42. data/lib/starter_web/_data/resources.yml +23 -24
  43. data/lib/starter_web/_data/template_settings.yml +2 -2
  44. data/lib/starter_web/assets/data/authclient.html +9 -9
  45. data/lib/starter_web/assets/data/banner.html +24 -19
  46. data/lib/starter_web/assets/data/cookie_consent.html +9 -9
  47. data/lib/starter_web/assets/data/footer.html +9 -10
  48. data/lib/starter_web/assets/data/menu.html +23 -16
  49. data/lib/starter_web/assets/data/panel.html +9 -10
  50. data/lib/starter_web/assets/data/sidebar.html +9 -10
  51. data/lib/starter_web/assets/data/webhook.html +8 -8
  52. data/lib/starter_web/assets/images/pages/roundtrip/package.json +1 -1
  53. data/lib/starter_web/assets/themes/j1/adapter/js/back2top.js +11 -9
  54. data/lib/starter_web/assets/themes/j1/adapter/js/cookie_consent.js +5 -5
  55. data/lib/starter_web/assets/themes/j1/adapter/js/logger.js +8 -18
  56. data/lib/starter_web/assets/themes/j1/adapter/js/master_header.js +48 -70
  57. data/lib/starter_web/assets/themes/j1/adapter/js/navigator.js +45 -27
  58. data/lib/starter_web/assets/themes/j1/adapter/js/octokit.app_only.js +433 -0
  59. data/lib/starter_web/assets/themes/j1/adapter/js/octokit.js +179 -192
  60. data/lib/starter_web/assets/themes/j1/adapter/js/scroller.js +29 -28
  61. data/lib/starter_web/assets/themes/j1/adapter/js/searcher.js +5 -5
  62. data/lib/starter_web/assets/themes/j1/adapter/js/stickybits.js +14 -13
  63. data/lib/starter_web/assets/themes/j1/adapter/js/switcher.js +56 -52
  64. data/lib/starter_web/assets/themes/j1/adapter/js/template.js +256 -213
  65. data/lib/starter_web/assets/themes/j1/adapter/js/toccer.js +24 -21
  66. data/lib/starter_web/assets/themes/j1/core/js/template.js +9 -9
  67. data/lib/starter_web/assets/themes/j1/core/js/template.js.map +1 -1
  68. data/lib/starter_web/assets/themes/j1/core/js/template.min.js +1 -1
  69. data/lib/starter_web/package.json +1 -1
  70. data/lib/starter_web/pages/public/start/downloads/quickstarter/100_linux_starter.adoc +1 -1
  71. data/lib/starter_web/pages/public/start/roundtrip/420_responsive_tables_extensions.adoc +5 -0
  72. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  73. data/lib/starter_web/utilsrv/package.json +1 -1
  74. metadata +38 -9
  75. data/lib/starter_web/_data/resources.new.yml +0 -876
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 98f54785f6bc9aa45e07d3a8c81e18a2c6c54200275140b29de0437593b6d4cb
4
- data.tar.gz: a548afa659b303127df404378ece3514d21efce1f7d79c7459b69d0fdc262d87
3
+ metadata.gz: 29c7952a89b8095a095cd4daa1a93b8935ea7d7d30fb4a5891f3fafcf8411ef4
4
+ data.tar.gz: 673045ab7dc96a647ebe44d0043c914da3709af9028fcafd1a8647419412b630
5
5
  SHA512:
6
- metadata.gz: 4170687fd2675a9d1a434f4ba392762f87b805eebcae6421a9b43b134aaffa1a5f4b083f4f7a1867bc22449d60476ffd23f7571ad908319ffc4feec70aead829
7
- data.tar.gz: e950f170efe1ad32cfb3f007e85e4aa0f95cf86a2187ff081016b7fdb0023f5ed75413f106d3326390888dcca5383d2bab33ac955ab7efeea3232c964e4747a5
6
+ metadata.gz: 2fa548cd4d06b7ce576f6fb8357c6dfe3c7600038e9a75032dc2df85a4a6300b5cbd954cdb4f16a2fb2c064a19e52417f1e9f4a78fe12ca077a8050b546cd85e
7
+ data.tar.gz: 287b94bdc94377fbb03bad20aa4afe85bc648faf5805e17421d80aa6ed257d5a24c52d1b2ecf987959d7ae787898ba88ced0d79ac456b7501994ec361c371831
@@ -20,16 +20,31 @@
20
20
  -------------------------------------------------------------------------------- {% endcomment %}
21
21
  {% capture pager %}themes/{{site.template.name}}/procedures/global/pager.proc{% endcapture %}
22
22
 
23
- {% comment %} Variables
23
+ {% comment %} Process YML config data
24
+ ================================================================================ {% endcomment %}
25
+
26
+ {% comment %} Set config files
27
+ -------------------------------------------------------------------------------- {% endcomment %}
28
+ {% assign site_config = site %}
29
+ {% assign template_config = site.data.template_settings %}
30
+ {% assign blocks = site.data.blocks %}
31
+ {% assign modules = site.data.modules %}
32
+
33
+ {% comment %} Set config data
34
+ -------------------------------------------------------------------------------- {% endcomment %}
35
+ {% assign toccer_defaults = modules.defaults.toccer.defaults %}
36
+ {% assign toccer_settings = modules.toccer.settings %}
37
+
38
+ {% comment %} Set config options
24
39
  -------------------------------------------------------------------------------- {% endcomment %}
25
- {% assign toccer_config = site.data.modules.j1_toccer %}
26
- {% assign tocbot_enabled = toccer_config.enabled %}
27
-
28
- {% assign rtext = site.data.template_settings.typography.rtext %}
29
- {% assign page_rtext = page.rtext %}
30
- {% assign page_rtext_size = page.rtext_size %}
31
- {% assign page_toccer = page.toccer %}
32
- {% assign page_toc = page.toc %}
40
+ {% assign toccer_options = toccer_defaults | merge: toccer_settings %}
41
+ {% assign tocbot_enabled = toccer_options.enabled %}
42
+
43
+ {% assign rtext = template_config.typography.rtext %}
44
+ {% assign page_rtext = page.rtext %}
45
+ {% assign page_rtext_size = page.rtext_size %}
46
+ {% assign page_toccer = page.toccer %}
47
+ {% assign page_toc = page.toc %}
33
48
 
34
49
  {% if tocbot_enabled and page_toc or page_toccer %}
35
50
  {% assign sidebar = true %}
@@ -19,16 +19,31 @@
19
19
  {% comment %} Liquid procedures
20
20
  -------------------------------------------------------------------------------- {% endcomment %}
21
21
 
22
- {% comment %} Variables
22
+ {% comment %} Process YML config data
23
+ ================================================================================ {% endcomment %}
24
+
25
+ {% comment %} Set config files
26
+ -------------------------------------------------------------------------------- {% endcomment %}
27
+ {% assign site_config = site %}
28
+ {% assign template_config = site.data.template_settings %}
29
+ {% assign blocks = site.data.blocks %}
30
+ {% assign modules = site.data.modules %}
31
+
32
+ {% comment %} Set config data
33
+ -------------------------------------------------------------------------------- {% endcomment %}
34
+ {% assign toccer_defaults = modules.defaults.toccer.defaults %}
35
+ {% assign toccer_settings = modules.toccer.settings %}
36
+
37
+ {% comment %} Set config options
23
38
  -------------------------------------------------------------------------------- {% endcomment %}
24
- {% assign toccer_config = site.data.modules.j1_toccer %}
25
- {% assign tocbot_enabled = toccer_config.enabled %}
26
-
27
- {% assign rtext = site.data.template_settings.typography.rtext %}
28
- {% assign page_rtext = page.rtext %}
29
- {% assign page_rtext_size = page.rtext_size %}
30
- {% assign page_toccer = page.toccer %}
31
- {% assign page_toc = page.toc %}
39
+ {% assign toccer_options = toccer_defaults | merge: toccer_settings %}
40
+ {% assign tocbot_enabled = toccer_options.enabled %}
41
+
42
+ {% assign rtext = site.data.template_settings.typography.rtext %}
43
+ {% assign page_rtext = page.rtext %}
44
+ {% assign page_rtext_size = page.rtext_size %}
45
+ {% assign page_toccer = page.toccer %}
46
+ {% assign page_toc = page.toc %}
32
47
 
33
48
  {% if tocbot_enabled and page_toc or page_toccer %}
34
49
  {% assign sidebar = true %}
@@ -22,24 +22,36 @@
22
22
  {% capture create_ad_block %}themes/{{site.template.name}}/procedures/posts/create_ad_block.proc{% endcapture %}
23
23
  {% capture pager %}themes/{{site.template.name}}/procedures/global/pager.proc{% endcapture %}
24
24
 
25
- {% comment %} Variables
25
+ {% comment %} Process YML config data
26
+ ================================================================================ {% endcomment %}
27
+
28
+ {% comment %} Set config files
29
+ -------------------------------------------------------------------------------- {% endcomment %}
30
+ {% assign site_config = site %}
31
+ {% assign template_config = site.data.template_settings %}
32
+ {% assign blocks = site.data.blocks %}
33
+ {% assign modules = site.data.modules %}
34
+
35
+ {% comment %} Set config data
36
+ -------------------------------------------------------------------------------- {% endcomment %}
37
+ {% assign toccer_defaults = modules.defaults.toccer.defaults %}
38
+ {% assign toccer_settings = modules.toccer.settings %}
39
+
40
+ {% comment %} Set config options
26
41
  -------------------------------------------------------------------------------- {% endcomment %}
27
- {% assign page_sidebar = page.sidebar %}
28
- {% assign toccer_config = site.data.modules.j1_toccer %}
29
- {% assign tocbot_enabled = toccer_config.enabled %}
42
+ {% assign toccer_options = toccer_defaults | merge: toccer_settings %}
43
+ {% assign tocbot_enabled = toccer_options.enabled %}
30
44
 
31
- {% assign rtext = site.data.template_settings.typography.rtext %}
32
- {% assign page_rtext = page.rtext %}
33
- {% assign page_rtext_size = page.rtext_size %}
34
- {% assign page_toccer = page.toccer %}
35
- {% assign page_toc = page.toc %}
45
+ {% assign rtext = site.data.template_settings.typography.rtext %}
46
+ {% assign page_rtext = page.rtext %}
47
+ {% assign page_rtext_size = page.rtext_size %}
48
+ {% assign page_toccer = page.toccer %}
49
+ {% assign page_toc = page.toc %}
36
50
 
37
51
  {% if page_toc and tocbot_enabled %}
38
- {% assign page_toc = true %}
39
- {% assign page_sidebar = true %}
52
+ {% assign sidebar = true %}
40
53
  {% else %}
41
- {% assign page_toc = false %}
42
- {% assign page_sidebar = false %}
54
+ {% assign sidebar = false %}
43
55
  {% endif %}
44
56
 
45
57
  {% if rtext %}
@@ -62,7 +74,7 @@
62
74
  {% comment %} Blog post CONTENT
63
75
  ------------------------------------------------------------------------------ {% endcomment %}
64
76
 
65
- {% if page_sidebar == false %}
77
+ {% if sidebar == false %}
66
78
  <!-- FULL page - no sidebar for page toc -->
67
79
  <div class="row">
68
80
 
@@ -208,7 +220,7 @@
208
220
  </aside> <!-- end col-md-3 -->
209
221
 
210
222
  </div> <!-- end row -->
211
- {% endif %} <!-- endif page_sidebar -->
223
+ {% endif %} <!-- endif sidebar -->
212
224
 
213
225
  {% comment %} END Blog post CONTENT
214
226
  ------------------------------------------------------------------------------ {% endcomment %}
@@ -24,37 +24,54 @@
24
24
  -------------------------------------------------------------------------------- {% endcomment %}
25
25
  {% include themes/{{site.template.name}}/procedures/global/setup.proc %}
26
26
 
27
+ {% comment %} Process YML config data
28
+ ================================================================================ {% endcomment %}
29
+
30
+ {% comment %} Set config files
31
+ -------------------------------------------------------------------------------- {% endcomment %}
32
+ {% assign site_config = site %}
33
+ {% assign template_config = site.data.template_settings %}
34
+ {% assign modules = site.data.modules %}
35
+
36
+ {% comment %} Set config data
37
+ -------------------------------------------------------------------------------- {% endcomment %}
38
+ {% assign switcher_defaults = modules.defaults.theme_switcher.defaults %}
39
+ {% assign switcher_settings = modules.theme_switcher.settings %}
40
+
41
+ {% comment %} Set config options
42
+ -------------------------------------------------------------------------------- {% endcomment %}
43
+ {% assign switcher_options = switcher_defaults | merge: switcher_settings %}
44
+
27
45
  {% comment %} Variables
28
46
  -------------------------------------------------------------------------------- {% endcomment %}
29
- {% assign environment = site.environment %}
30
- {% assign switcher_config = site.data.modules.j1_theme_switcher %}
31
- {% assign default_theme = site.data.template_settings.bootstrap.default_theme %}
32
- {% assign theme_base = "core/css" %}
33
- {% assign theme_ext = "css" %}
34
- {% assign themeExtension = site.data.config.bootstrap.default_theme %}
47
+ {% assign environment = site_config.environment %}
48
+ {% assign default_theme = template_config.bootstrap.default_theme %}
49
+ {% assign vendor_css = "vendor" %}
50
+ {% assign theme_base = "core/css" %}
51
+ {% assign theme_ext = "css" %}
35
52
 
36
- {% if environment == "development" or environment == "devel" %}
37
- {% assign theme_ext = "css" %}
53
+ {% if environment == "development" or environment == "test" %}
54
+ {% assign theme_ext = "css" %}
38
55
  {% else %}
39
- {% assign theme_ext = "min.css" %}
56
+ {% assign theme_ext = "min.css" %}
40
57
  {% endif %}
41
58
 
42
59
  {% comment %} Main
43
60
  -------------------------------------------------------------------------------- {% endcomment %}
44
61
 
45
62
  <!-- [INFO ] [j1.layout_theme_generator.html ] [ start processing: load Theme CSS for all pages ] -->
46
- {% if switcher_config.enabled %}
63
+ {% if switcher_options.enabled %}
47
64
  <!-- [INFO ] [j1.layout_theme_generator.html ] [ load the previously selected theme from cookie ] -->
48
65
  <script>
49
- // NOTE: to generate logs (from a looger), this script may should fired on 'Document Ready' ???
66
+ // NOTE: to generate logs (from a logger), this script is to be fired on 'Document Ready'
50
67
  // jadams, 2019-07-16: don't see any benefit of fired at 'Document Ready' - no logging at all
51
- $(document).ready(function() {
52
- var logger = log4javascript.getLogger('j1.layout_theme_generator');
53
- var cookie_names = j1.getCookieNames();
54
- const user_state_cookie_name = cookie_names.user_session;
68
+ // $(document).ready(function() {
69
+ // var logger = log4javascript.getLogger('j1.layout_theme_generator');
70
+ var cookie_names = j1.getCookieNames();
71
+ var user_state_cookie_name = cookie_names.user_session;
55
72
 
56
- var id = 'default';
57
- var cssFile = '{{switcher_config.defaultCssFile}}';
73
+ var id = 'default';
74
+ var cssFile = '{{switcher_options.defaultCssFile}}';
58
75
  var themeName;
59
76
  var themeCss;
60
77
  var themeCssHtml;
@@ -65,7 +82,7 @@
65
82
  var user_state_json;
66
83
  var user_state_cookie;
67
84
 
68
- logger.info('processing theme');
85
+ // logger.info('processing theme');
69
86
 
70
87
  // Detect|Set J1 UserState
71
88
  user_state_detected = j1.existsCookie(user_state_cookie_name);
@@ -80,6 +97,8 @@
80
97
  themeExtensionCssHtml = "<link rel='stylesheet' id='" + id + "' href='" + themeExtensionCss + "' type='text/css' />";
81
98
  } else {
82
99
  themeCssHtml = '<link rel="stylesheet" type="text/css" id="default" href="{{asset_path}}/{{theme_base}}/{{default_theme}}.{{theme_ext}}" />';
100
+ vendorCssHtml = '<link rel="stylesheet" type="text/css" id="default" href="{{asset_path}}/{{theme_base}}/{{vendor_css}}.{{theme_ext}}" />';
101
+ $('head').append(vendorCssHtml);
83
102
  }
84
103
  $('head').append(themeCssHtml);
85
104
 
@@ -90,10 +109,11 @@
90
109
  } else {
91
110
  $('head').append(themeExtensionCssHtml);
92
111
  }
93
- });
112
+ // });
94
113
  </script>
95
114
  {% else %}
96
115
  <!-- [INFO ] [j1.layout_theme_generator.html ] [ no cookie found. Load default theme CSS from asset|theme path ] -->
97
116
  <link rel="stylesheet" href="{{asset_path}}/{{theme_base}}/{{default_theme}}.{{theme_ext}}" />
117
+ <!-- link rel="stylesheet" href="{{asset_path}}/{{theme_base}}/{{vendor_css}}.{{theme_ext}}" / -->
98
118
  {% endif %}
99
119
  <!-- [INFO ] [j1.layout_theme_generator.html ] [ end processing ] -->
@@ -0,0 +1,118 @@
1
+ {% comment %}
2
+ # ------------------------------------------------------------------------------
3
+ # ~/_includes/themes/j1/layouts/layout_theme_generator.html
4
+ # Liquid template to generate|add the HTML markup to load
5
+ # CSS theme files dynamically for the 'ThemeLoader' (on a page re-load)
6
+ #
7
+ # Product/Info:
8
+ # https://jekyll.one
9
+ #
10
+ # Copyright (C) 2019 Juergen Adams
11
+ #
12
+ # J1 Template is licensed under the MIT License.
13
+ # See: https://github.com/jekyll-one-org/j1_template/blob/master/LICENSE
14
+ # ------------------------------------------------------------------------------
15
+ # NOTE
16
+ # Themes are currently in state EXPERIMENTAL
17
+ # ------------------------------------------------------------------------------
18
+ # Test data:
19
+ # liquid_var: {{ liquid_var | debug }}
20
+ # ------------------------------------------------------------------------------
21
+ {% endcomment %}
22
+
23
+ {% comment %} Liquid procedures
24
+ -------------------------------------------------------------------------------- {% endcomment %}
25
+ {% include themes/{{site.template.name}}/procedures/global/setup.proc %}
26
+
27
+ {% comment %} Process YML config data
28
+ ================================================================================ {% endcomment %}
29
+
30
+ {% comment %} Set config files
31
+ -------------------------------------------------------------------------------- {% endcomment %}
32
+ {% assign site_config = site %}
33
+ {% assign template_config = site.data.template_settings %}
34
+ {% assign modules = site.data.modules %}
35
+
36
+ {% comment %} Set config data
37
+ -------------------------------------------------------------------------------- {% endcomment %}
38
+ {% assign switcher_defaults = modules.defaults.theme_switcher.defaults %}
39
+ {% assign switcher_settings = modules.theme_switcher.settings %}
40
+
41
+ {% comment %} Set config options
42
+ -------------------------------------------------------------------------------- {% endcomment %}
43
+ {% assign switcher_options = switcher_defaults | merge: switcher_settings %}
44
+
45
+ <!-- switcher_options: {{ switcher_options }} -->
46
+
47
+ {% comment %} Variables
48
+ -------------------------------------------------------------------------------- {% endcomment %}
49
+ {% assign environment = site.environment %}
50
+ {% assign default_theme = template_config.bootstrap.default_theme %}
51
+ {% assign themeExtension = switcher_options.themeExtension %}
52
+ {% assign theme_base = "core/css" %}
53
+ {% assign theme_ext = "css" %}
54
+
55
+ {% if environment == "development" or environment == "test" %}
56
+ {% assign theme_ext = "css" %}
57
+ {% else %}
58
+ {% assign theme_ext = "min.css" %}
59
+ {% endif %}
60
+
61
+ {% comment %} Main
62
+ -------------------------------------------------------------------------------- {% endcomment %}
63
+
64
+ <!-- [INFO ] [j1.layout_theme_generator.html ] [ start processing: load Theme CSS for all pages ] -->
65
+ {% if switcher_options.enabled %}
66
+ <!-- [INFO ] [j1.layout_theme_generator.html ] [ load the previously selected theme from cookie ] -->
67
+ <script>
68
+ // NOTE: to generate logs (from a looger), this script may should fired on 'Document Ready' ???
69
+ // jadams, 2019-07-16: don't see any benefit of fired at 'Document Ready' - no logging at all
70
+ $(document).ready(function() {
71
+ var logger = log4javascript.getLogger('j1.layout_theme_generator');
72
+ var cookie_names = j1.getCookieNames();
73
+ const user_state_cookie_name = cookie_names.user_session;
74
+
75
+ var id = 'default';
76
+ var cssFile = '{{switcher_options.defaultCssFile}}';
77
+ var themeName;
78
+ var themeCss;
79
+ var themeCssHtml;
80
+ var themeExtensionCss;
81
+ var themeExtensionCssHtml;
82
+
83
+ var user_state = {};
84
+ var user_state_json;
85
+ var user_state_cookie;
86
+
87
+ logger.info('processing theme');
88
+
89
+ // Detect|Set J1 UserState
90
+ user_state_detected = j1.existsCookie(user_state_cookie_name);
91
+ if ( user_state_detected ) {
92
+ user_state = j1.readCookie(user_state_cookie_name);
93
+ themeName = user_state.theme_name;
94
+ themeCss = user_state.theme_css;
95
+ themeExtensionCss = user_state.theme_extension_css;
96
+ }
97
+ if (themeCss) {
98
+ themeCssHtml = "<link rel='stylesheet' id='" + id + "' href='" + themeCss + "' type='text/css' />";
99
+ themeExtensionCssHtml = "<link rel='stylesheet' id='" + id + "' href='" + themeExtensionCss + "' type='text/css' />";
100
+ } else {
101
+ themeCssHtml = '<link rel="stylesheet" type="text/css" id="default" href="{{asset_path}}/{{theme_base}}/{{default_theme}}.{{theme_ext}}" />';
102
+ }
103
+ $('head').append(themeCssHtml);
104
+
105
+ // Append|Remove theme extentions
106
+ // TODO: Make default theme name 'Uno' configurable
107
+ if ( themeName === 'Uno' ) {
108
+ $('head link[href*="' +themeExtensionCss+ '"]').remove();
109
+ } else {
110
+ $('head').append(themeExtensionCssHtml);
111
+ }
112
+ });
113
+ </script>
114
+ {% else %}
115
+ <!-- [INFO ] [j1.layout_theme_generator.html ] [ no cookie found. Load default theme CSS from asset|theme path ] -->
116
+ <link rel="stylesheet" href="{{asset_path}}/{{theme_base}}/{{default_theme}}.{{theme_ext}}" />
117
+ {% endif %}
118
+ <!-- [INFO ] [j1.layout_theme_generator.html ] [ end processing ] -->
@@ -0,0 +1,119 @@
1
+ {% comment %}
2
+ # ------------------------------------------------------------------------------
3
+ # ~/_includes/themes/j1/layouts/layout_theme_generator.html
4
+ # Liquid template to generate|add the HTML markup to load
5
+ # CSS theme files dynamically for the 'ThemeLoader' (on a page re-load)
6
+ #
7
+ # Product/Info:
8
+ # https://jekyll.one
9
+ #
10
+ # Copyright (C) 2019 Juergen Adams
11
+ #
12
+ # J1 Template is licensed under the MIT License.
13
+ # See: https://github.com/jekyll-one-org/j1_template/blob/master/LICENSE
14
+ # ------------------------------------------------------------------------------
15
+ # NOTE
16
+ # Themes are currently in state EXPERIMENTAL
17
+ # ------------------------------------------------------------------------------
18
+ # Test data:
19
+ # liquid_var: {{ liquid_var | debug }}
20
+ # ------------------------------------------------------------------------------
21
+ {% endcomment %}
22
+
23
+ {% comment %} Liquid procedures
24
+ -------------------------------------------------------------------------------- {% endcomment %}
25
+ {% include themes/{{site.template.name}}/procedures/global/setup.proc %}
26
+
27
+ {% comment %} Process YML config data
28
+ ================================================================================ {% endcomment %}
29
+
30
+ {% comment %} Set config files
31
+ -------------------------------------------------------------------------------- {% endcomment %}
32
+ {% assign site_config = site %}
33
+ {% assign template_config = site.data.template_settings %}
34
+ {% assign modules = site.data.modules %}
35
+
36
+ {% comment %} Set config data
37
+ -------------------------------------------------------------------------------- {% endcomment %}
38
+ {% assign switcher_defaults = modules.defaults.theme_switcher.defaults %}
39
+ {% assign switcher_settings = modules.theme_switcher.settings %}
40
+
41
+ {% comment %} Set config options
42
+ -------------------------------------------------------------------------------- {% endcomment %}
43
+ {% assign switcher_options = switcher_defaults | merge: switcher_settings %}
44
+
45
+ <!-- switcher_options: {{ switcher_options }} -->
46
+
47
+ {% comment %} Variables
48
+ -------------------------------------------------------------------------------- {% endcomment %}
49
+ {% assign environment = site.environment %}
50
+ {% assign switcher_config = site.data.modules.j1_theme_switcher %}
51
+ {% assign default_theme = site.data.template_settings.bootstrap.default_theme %}
52
+ {% assign theme_base = "core/css" %}
53
+ {% assign theme_ext = "css" %}
54
+ {% assign themeExtension = site.data.config.bootstrap.default_theme %}
55
+
56
+ {% if environment == "development" or environment == "devel" %}
57
+ {% assign theme_ext = "css" %}
58
+ {% else %}
59
+ {% assign theme_ext = "min.css" %}
60
+ {% endif %}
61
+
62
+ {% comment %} Main
63
+ -------------------------------------------------------------------------------- {% endcomment %}
64
+
65
+ <!-- [INFO ] [j1.layout_theme_generator.html ] [ start processing: load Theme CSS for all pages ] -->
66
+ {% if switcher_config.enabled %}
67
+ <!-- [INFO ] [j1.layout_theme_generator.html ] [ load the previously selected theme from cookie ] -->
68
+ <script>
69
+ // NOTE: to generate logs (from a looger), this script may should fired on 'Document Ready' ???
70
+ // jadams, 2019-07-16: don't see any benefit of fired at 'Document Ready' - no logging at all
71
+ $(document).ready(function() {
72
+ var logger = log4javascript.getLogger('j1.layout_theme_generator');
73
+ var cookie_names = j1.getCookieNames();
74
+ const user_state_cookie_name = cookie_names.user_session;
75
+
76
+ var id = 'default';
77
+ var cssFile = '{{switcher_config.defaultCssFile}}';
78
+ var themeName;
79
+ var themeCss;
80
+ var themeCssHtml;
81
+ var themeExtensionCss;
82
+ var themeExtensionCssHtml;
83
+
84
+ var user_state = {};
85
+ var user_state_json;
86
+ var user_state_cookie;
87
+
88
+ logger.info('processing theme');
89
+
90
+ // Detect|Set J1 UserState
91
+ user_state_detected = j1.existsCookie(user_state_cookie_name);
92
+ if ( user_state_detected ) {
93
+ user_state = j1.readCookie(user_state_cookie_name);
94
+ themeName = user_state.theme_name;
95
+ themeCss = user_state.theme_css;
96
+ themeExtensionCss = user_state.theme_extension_css;
97
+ }
98
+ if (themeCss) {
99
+ themeCssHtml = "<link rel='stylesheet' id='" + id + "' href='" + themeCss + "' type='text/css' />";
100
+ themeExtensionCssHtml = "<link rel='stylesheet' id='" + id + "' href='" + themeExtensionCss + "' type='text/css' />";
101
+ } else {
102
+ themeCssHtml = '<link rel="stylesheet" type="text/css" id="default" href="{{asset_path}}/{{theme_base}}/{{default_theme}}.{{theme_ext}}" />';
103
+ }
104
+ $('head').append(themeCssHtml);
105
+
106
+ // Append|Remove theme extentions
107
+ // TODO: Make default theme name 'Uno' configurable
108
+ if ( themeName === 'Uno' ) {
109
+ $('head link[href*="' +themeExtensionCss+ '"]').remove();
110
+ } else {
111
+ $('head').append(themeExtensionCssHtml);
112
+ }
113
+ });
114
+ </script>
115
+ {% else %}
116
+ <!-- [INFO ] [j1.layout_theme_generator.html ] [ no cookie found. Load default theme CSS from asset|theme path ] -->
117
+ <link rel="stylesheet" href="{{asset_path}}/{{theme_base}}/{{default_theme}}.{{theme_ext}}" />
118
+ {% endif %}
119
+ <!-- [INFO ] [j1.layout_theme_generator.html ] [ end processing ] -->
@@ -1,24 +1,22 @@
1
1
  {% comment %}
2
2
  # -----------------------------------------------------------------------------
3
- # ~/_includes/themes/j1/procedures/global/pager.proc
4
- # HTML/Liquid procedure to create a paginator for pages of type "post"
3
+ # ~/_includes/themes/j1/procedures/global/pager.proc
4
+ # HTML/Liquid procedure to create a paginator for pages of type "post"
5
5
  #
6
- # Product/Info:
7
- # http://jekyll.one
6
+ # Product/Info:
7
+ # http://jekyll.one
8
8
  #
9
- # Copyright (C) 2019 Juergen Adams
10
- #
11
- # J1 Template is licensed under the MIT License.
12
- # See: https://github.com/jekyll-one-org/j1_template/blob/master/LICENSE
9
+ # Copyright (C) 2019 Juergen Adams
13
10
  #
11
+ # J1 Template is licensed under the MIT License.
12
+ # See: https://github.com/jekyll-one-org/j1_template/blob/master/LICENSE
14
13
  # -----------------------------------------------------------------------------
15
- # NOTE:
14
+ # NOTE:
16
15
  # This pager reads the "page path" from cookie "cookieUserState". This
17
16
  # data is used to return from a previous (page builder) page.
18
17
  # -----------------------------------------------------------------------------
19
18
  # Test data:
20
- # liquid_var: {{ liquid_var | debug }}
21
- #
19
+ # liquid_var: {{ liquid_var | debug }}
22
20
  # -----------------------------------------------------------------------------
23
21
  {% endcomment %}
24
22
 
@@ -34,48 +32,48 @@
34
32
  {% comment %} Main
35
33
  -------------------------------------------------------------------------------- {% endcomment %}
36
34
 
37
- <div class="paginator">
38
- <ul class="pagination raised-z0">
35
+ <div class="paginator">
36
+ <ul class="pagination raised-z0">
39
37
 
40
- {% comment %} Set PREVIOUS page
41
- -------------------------------------------------------------------------- {% endcomment %}
42
- {% if page.previous %}
43
- <li class="page-item"><a class="page-link" href="{{ base_path }}{{ page.previous.url }}" title="{{ page.previous.title }}">Prev</a></li>
44
- {% else %}
45
- <li class="page-item disabled"><a class="page-link">Prev</a></li>
46
- {% endif %}
38
+ {% comment %} Set PREVIOUS page
39
+ ---------------------------------------------------------------------------- {% endcomment %}
40
+ {% if page.previous %}
41
+ <li class="page-item"><a class="page-link" href="{{ base_path }}{{ page.previous.url }}" title="{{ page.previous.title }}">Prev</a></li>
42
+ {% else %}
43
+ <li class="page-item disabled"><a class="page-link">Prev</a></li>
44
+ {% endif %}
47
45
 
48
- {% comment %} Set BACK page (PagerURL)
49
- -------------------------------------------------------------------------- {% endcomment %}
50
- <!-- [INFO ] [j1.posts.pager.proc ] [Manage the current pager settings for: {{ builder_path }}] -->
51
- <script>
52
- var cookie_names = j1.getCookieNames();
53
- const user_state_cookie_name = cookie_names.user_session;
54
- var user_state = j1.readCookie(user_state_cookie_name);
55
- var re = new RegExp("navigator|dateview|tagview|archive");
56
- var last_pager = user_state.last_pager;
57
- var last_pager_url;
46
+ {% comment %} Set BACK page (PagerURL)
47
+ ---------------------------------------------------------------------------- {% endcomment %}
48
+ <!-- [INFO ] [procedures.global.pager.proc ] [Manage the current pager settings for: {{ builder_path }}] -->
49
+ <script>
50
+ var cookie_names = j1.getCookieNames();
51
+ var user_state_cookie_name = cookie_names.user_session;
52
+ var user_state = j1.readCookie(user_state_cookie_name);
53
+ var re = new RegExp('navigator|dateview|tagview|archive');
54
+ var last_pager = user_state.last_pager;
55
+ var last_pager_url;
58
56
 
59
- <!-- [INFO ] [j1.page.{{page.title}} ] [Calculate BackURL from User State Cookie] -->
60
- if (re.test(last_pager)) {
61
- last_pager_url = '<li class="page-item"><a class="page-link" href="' + last_pager + '" title="Back to Top Page">Back</a></li>';
62
- } else {
63
- last_pager_url = '<li class="page-item disabled"><a class="page-link" title="Back to Top Page">Back</a></li>';
64
- }
65
- document.write( last_pager_url );
66
- j1.writeCookie({
67
- name: user_state_cookie_name,
68
- data: user_state
69
- });
70
- </script>
57
+ <!-- [INFO ] [procedures.global.pager.proc ] [Calculate BackURL from User State Cookie for page: {{page.title}}] -->
58
+ if (re.test(last_pager)) {
59
+ last_pager_url = '<li class="page-item"><a class="page-link" href="' + last_pager + '" title="Back to Top Page">Back</a></li>';
60
+ } else {
61
+ last_pager_url = '<li class="page-item disabled"><a class="page-link" title="Back to Top Page">Back</a></li>';
62
+ }
63
+ document.write( last_pager_url );
64
+ j1.writeCookie({
65
+ name: user_state_cookie_name,
66
+ data: user_state
67
+ });
68
+ </script>
71
69
 
72
- {% comment %} Set NEXT page
73
- -------------------------------------------------------------------------- {% endcomment %}
74
- {% if page.next %}
75
- <li class="page-item"><a class="page-link" href="{{ base_path }}{{ page.next.url }}" title="{{ page.next.title }}">Next</a></li>
76
- {% else %}
77
- <li class="page-item disabled"><a class="page-link" href="#">Next</a></li>
78
- {% endif %}
70
+ {% comment %} Set NEXT page
71
+ ---------------------------------------------------------------------------- {% endcomment %}
72
+ {% if page.next %}
73
+ <li class="page-item"><a class="page-link" href="{{ base_path }}{{ page.next.url }}" title="{{ page.next.title }}">Next</a></li>
74
+ {% else %}
75
+ <li class="page-item disabled"><a class="page-link" href="#">Next</a></li>
76
+ {% endif %}
79
77
 
80
- </ul>
81
- </div>
78
+ </ul>
79
+ </div>
data/lib/j1/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module J1
2
- VERSION = '2019.4.7'
2
+ VERSION = '2019.4.8'
3
3
  end