j1_template 2019.4.7 → 2019.4.8

Sign up to get free protection for your applications and to get access to all the features.
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