jekyll-theme-centos 2.52.0.beta.58 → 2.52.0.beta.59

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 (65) hide show
  1. checksums.yaml +4 -4
  2. data/_data/base/announcement_schema.yml +2 -3
  3. data/_data/base/breakingnews_schema.yml +8 -0
  4. data/_data/base/event_schema.yml +10 -2
  5. data/_data/base/fontawesome_schema.yml +13 -0
  6. data/_data/base/navbar_schema.yml +8 -0
  7. data/_includes/base/announcement.html.liquid +2 -2
  8. data/_includes/base/artwork.html.liquid +9 -9
  9. data/_includes/base/breadcrumb.html.liquid +2 -2
  10. data/_includes/base/breakingnews.html.liquid +6 -4
  11. data/_includes/base/event.html.liquid +4 -2
  12. data/_includes/base/fontawesome.html.liquid +23 -4
  13. data/_includes/base/footer.html.liquid +2 -2
  14. data/_includes/base/head.html.liquid +5 -3
  15. data/_includes/base/link.html.liquid +3 -7
  16. data/_includes/base/navbar.html.liquid +3 -3
  17. data/_includes/base/sponsors-cards.html.liquid +3 -3
  18. data/_includes/base/sponsors-carousel.html.liquid +3 -3
  19. data/_includes/base/title.html.liquid +2 -2
  20. data/assets/img/base/page-with-alert.svg +164 -140
  21. data/assets/img/base/page-with-announcement.svg +792 -331
  22. data/assets/img/base/page-with-breakingnews.svg +861 -767
  23. data/assets/img/base/page-with-navbar.svg +827 -268
  24. data/assets/img/base/page-with-project.svg +367 -726
  25. data/assets/js/base/copyvalue.js +61 -177
  26. metadata +1 -40
  27. data/assets/img/base/example-ogp-image.png +0 -0
  28. data/assets/img/base/example-sponsors-design.png +0 -0
  29. data/assets/img/base/example-sponsors-logo-1.png +0 -0
  30. data/assets/img/base/example-sponsors-logo-2.png +0 -0
  31. data/assets/img/base/example-sponsors-logo-3.png +0 -0
  32. data/assets/img/base/example-sponsors-logo-4.png +0 -0
  33. data/assets/img/base/example-sponsors-logo-5.png +0 -0
  34. data/assets/img/base/example-sponsors-logo-6.png +0 -0
  35. data/assets/img/base/example-sponsors-logo-7.png +0 -0
  36. data/assets/img/base/example-sponsors-logo-8.png +0 -0
  37. data/assets/img/base/page-layout-default.png +0 -0
  38. data/assets/img/base/page-with-alert.png +0 -0
  39. data/assets/img/base/page-with-announcement.png +0 -0
  40. data/assets/img/base/page-with-artwork.png +0 -0
  41. data/assets/img/base/page-with-backtotop.png +0 -0
  42. data/assets/img/base/page-with-bits.png +0 -0
  43. data/assets/img/base/page-with-breadcrumb.png +0 -0
  44. data/assets/img/base/page-with-breakingnews.png +0 -0
  45. data/assets/img/base/page-with-color.png +0 -0
  46. data/assets/img/base/page-with-copyright.png +0 -0
  47. data/assets/img/base/page-with-copyvalue.png +0 -0
  48. data/assets/img/base/page-with-datatable.png +0 -0
  49. data/assets/img/base/page-with-event.png +0 -0
  50. data/assets/img/base/page-with-fontawesome.png +0 -0
  51. data/assets/img/base/page-with-footer.png +0 -0
  52. data/assets/img/base/page-with-heading.png +0 -0
  53. data/assets/img/base/page-with-highlight.png +0 -0
  54. data/assets/img/base/page-with-link.png +0 -0
  55. data/assets/img/base/page-with-locales.png +0 -0
  56. data/assets/img/base/page-with-navbar.png +0 -0
  57. data/assets/img/base/page-with-navindex.png +0 -0
  58. data/assets/img/base/page-with-ogp.png +0 -0
  59. data/assets/img/base/page-with-project.png +0 -0
  60. data/assets/img/base/page-with-shortcut.png +0 -0
  61. data/assets/img/base/page-with-social.png +0 -0
  62. data/assets/img/base/page-with-sponsors.png +0 -0
  63. data/assets/img/base/page-with-title.png +0 -0
  64. data/assets/img/base/page-with-toc.png +0 -0
  65. data/assets/img/base/screenshot-1200x600.png +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 930c947b9435c61c4faf7651b4539eb6eebc82a583b06b1b50e8f9323dfaa27f
4
- data.tar.gz: 338e6dd2b51a04f554093975d8ed3428a0a7e844a11b3174a6b7cd8b5f55aec4
3
+ metadata.gz: 7c273c21392a74e2982e965a0039930859404ac3d0a498bb2be52927f2293b01
4
+ data.tar.gz: 01eaa12144714ace83cee8da787976e41dc483b93c3b90e0516d5891a282fb69
5
5
  SHA512:
6
- metadata.gz: 7010f156ff38a3d21c3ad228a51562dd23a976b80d4a0548bb8de34de60b62112be5c236390f9c52870537f5973ac0f56f5f3025af24738b28073b1afe0f575b
7
- data.tar.gz: a837ee46c8ee443fe6ca5276125d1d57027adaedd22980b9b390f03001ab05df29d7ebfe2e8a1afd98540e878176b688b4f800284b1f9515a33fd38f7f923d4b
6
+ metadata.gz: 86e59a3bdafb790a2701994f52cc8893aa677a6231d2aeeb25e4afc77b893d4028913a8ef7d98cc6d5e9dbe82d63f55587d04ed7954bffbce1f02ac923a9b8d4
7
+ data.tar.gz: 204a009e13b631c3aafc2a4dc71f48fb62cb0b7ab708db323cdedb5584876844d59133f3bd797c41c1959cbd3ff3d35b2d4949f77d4cc1c5678586ee9c94bb50
@@ -37,12 +37,11 @@ properties:
37
37
  `centos-purple-800`.
38
38
  icon:
39
39
  type: string
40
- default: ""
40
+ default: "fa-solid fa-bullhorn"
41
41
  description: >-
42
42
  The Font Awesome icon class (e.g., `fa-solid fa-bell`) to display
43
43
  on the left side of the announcement. Only [freely distributed Font
44
- Awesome icons](https://fontawesome.com/search?ic=free-collection) are supported. If no value is provided, the default
45
- icon `fa-solid fa-bullhorn` will be used by the rendering engine.
44
+ Awesome icons](https://fontawesome.com/search?ic=free-collection) are supported.
46
45
  required:
47
46
  - content
48
47
  additionalProperties: false
@@ -11,6 +11,14 @@ properties:
11
11
  Enables or disables the Breaking News component. Set to `true` to
12
12
  display the messages; set to `false` (default) to hide them. When enabled,
13
13
  the `with_breakingnews_data` property must be provided.
14
+ breakingnews_alert_height:
15
+ type: integer
16
+ default: 31
17
+ description: >-
18
+ Height in pixels of a single breaking news alert bar. Used by both the
19
+ breakingnews component and the head component to calculate sticky
20
+ positioning and scroll-margin-top offsets. Must match the rendered height
21
+ of `.breakingnews.alert.p-2`.
14
22
  with_breakingnews_data:
15
23
  type: array
16
24
  default: [] # Corrected: Moved default to array level and set to []
@@ -24,10 +24,18 @@ properties:
24
24
  title:
25
25
  type: string
26
26
  description: The name or title of the event. This field is required.
27
- summary:
27
+ description:
28
28
  type: string
29
29
  default: ""
30
- description: A brief summary or short description of the event.
30
+ description: A brief description of the event.
31
+ address:
32
+ type: string
33
+ default: ""
34
+ description: The street address of the event venue.
35
+ city:
36
+ type: string
37
+ default: ""
38
+ description: The city where the event takes place.
31
39
  date:
32
40
  type: string # Changed from 'date' to 'string' for flexibility
33
41
  default: ""
@@ -40,6 +40,19 @@ properties:
40
40
  type: string
41
41
  default: "sha512-6BTOlkauINO65nLhXhthZMtepgJSghyimIalb+crKRPhvhmsCdnIuGcVbR5/aQY2A+260iC1OPy1oCdB6pSSwQ=="
42
42
  description: The Subresource Integrity (SRI) JavaScript checksum (`sha512-...`) for the specified bundle, ensuring the security and integrity of the script file.
43
+ mode:
44
+ type: string
45
+ enum:
46
+ - "svg+js"
47
+ - "css"
48
+ default: "css"
49
+ description: >-
50
+ Loading mode for Font Awesome. `svg+js` (default) downloads a JavaScript
51
+ bundle that replaces `<i class="fa-...">` elements with inline SVGs via DOM
52
+ mutation — enables power transforms, layering, and pseudo-element watching.
53
+ `css` downloads a stylesheet and loads WOFF2 font files on demand — lighter
54
+ first-visit payload and no DOM manipulation cost. Use `css` when SVG+JS-exclusive
55
+ features are not needed.
43
56
  required:
44
57
  - version
45
58
  - cdn
@@ -11,6 +11,14 @@ properties:
11
11
  Controls the visibility of the Navigation Bar component. Set to `true`
12
12
  (default) to display the navbar at the top of the page. Set to `false`
13
13
  to hide it entirely.
14
+ navbar_height:
15
+ type: integer
16
+ default: 42
17
+ description: >-
18
+ Height in pixels of the fixed-top navbar bar. Used by the breakingnews
19
+ component and the head component to calculate sticky positioning and
20
+ scroll-margin-top offsets. Must match the rendered height of
21
+ `nav.navbar.fixed-top`.
14
22
  with_navbar_data:
15
23
  type: object
16
24
  default: {}
@@ -37,10 +37,10 @@ Data Source Hierarchy (priority):
37
37
  | default: site.data.base.announcement
38
38
  %}
39
39
 
40
- {%- assign with_announcement_schema = site.data.base.announcement_schema.properties.with_announcement_data.items.properties %}
41
-
42
40
  {%- if with_announcement %}
43
41
 
42
+ {%- assign with_announcement_schema = site.data.base.announcement_schema.properties.with_announcement_data.items.properties %}
43
+
44
44
  {%- comment %} === Presentation === {% endcomment %}
45
45
  {%- for announcement in with_announcement_data %}
46
46
 
@@ -39,25 +39,25 @@ Data Source Hierarchy (priority):
39
39
  | default: site.data.base.artwork
40
40
  %}
41
41
 
42
- {%- assign with_artwork_schema = site.data.base.artwork_schema.properties.with_artwork_data.properties %}
43
-
44
42
  {%- if with_artwork %}
45
43
 
44
+ {%- assign with_artwork_schema = site.data.base.artwork_schema.properties.with_artwork_data.properties %}
45
+
46
46
  {%- comment %} === Presentation === {% endcomment %}
47
47
 
48
48
  {%- comment %} --- Defaults --- {% endcomment %}
49
- {%- assign artwork_image = with_artwork_data.image | default: with_artwrk_schema.image.default %}
50
- {%- assign artwork_alt = with_artwork_data.alt | default: with_artwrk_schema.alt.default %}
51
- {%- assign artwork_class = with_artwork_data.class | default: with_artwrk_schema.class.default %}
52
- {%- assign artwork_image_class = with_artwork_data.image_class | default: with_artwrk_schema.image_class.default %}
49
+ {%- assign artwork_image = with_artwork_data.image | default: with_artwork_schema.image.default %}
50
+ {%- assign artwork_alt = with_artwork_data.alt | default: with_artwork_schema.alt.default %}
51
+ {%- assign artwork_class = with_artwork_data.class | default: with_artwork_schema.class.default %}
52
+ {%- assign artwork_image_class = with_artwork_data.image_class | default: with_artwork_schema.image_class.default %}
53
53
 
54
54
  {%- comment %} --- HTML --- {% endcomment %}
55
55
  <div class="{{ artwork_class }}">
56
- {% if artwork_image contains "https://" or artwork_image contains "http://" %}
56
+ {%- if artwork_image contains "://" %}
57
57
  <img src="{{ artwork_image }}" class="{{ artwork_image_class }}" alt="{{ artwork_alt }}" />
58
- {% else %}
58
+ {%- else %}
59
59
  <img src="{{ site.baseurl }}{{ artwork_image }}" class="{{ artwork_image_class }}" alt="{{ artwork_alt }}" />
60
- {% endif %}
60
+ {%- endif %}
61
61
  </div>
62
62
 
63
63
  {%- endif -%}
@@ -37,10 +37,10 @@ Data Source Hierarchy:
37
37
  | default: site.data.base.breadcrumb
38
38
  %}
39
39
 
40
- {%- assign with_breadcrumb_schema = site.data.base.breadcrumb_schema.properties.with_breadcrumb_data.properties %}
41
-
42
40
  {%- if with_breadcrumb %}
43
41
 
42
+ {%- assign with_breadcrumb_schema = site.data.base.breadcrumb_schema.properties.with_breadcrumb_data.properties %}
43
+
44
44
  {%- comment %} Use original_url if available (without locale), otherwise use full url {%- endcomment %}
45
45
  {%- assign breadcrumb_url = page.original_url | default: page.url %}
46
46
 
@@ -39,14 +39,15 @@ Data Source Hierarchy (priority):
39
39
  | default: site.data.base.breakingnews
40
40
  %}
41
41
 
42
- {%- assign with_breakingnews_schema = site.data.base.breakingnews_schema.properties.with_breakingnews_data.items.properties %}
43
-
44
42
  {%- if with_breakingnews %}
45
43
 
44
+ {%- assign with_breakingnews_schema = site.data.base.breakingnews_schema.properties.with_breakingnews_data.items.properties %}
45
+
46
46
  {%- comment %} === Presentation === {% endcomment %}
47
- {% assign breakingnews_alert_height = 38 %}
48
- {% assign navbar_height = 42 %}
47
+ {%- assign breakingnews_alert_height = site.data.base.breakingnews_schema.properties.breakingnews_alert_height.default %}
48
+ {%- assign navbar_height = site.data.base.navbar_schema.properties.navbar_height.default %}
49
49
 
50
+ {%- if with_breakingnews_data.size > 0 %}
50
51
  <div class="sticky-top sticky-top-breakingnews">
51
52
  {% for item in with_breakingnews_data %}
52
53
 
@@ -84,5 +85,6 @@ Data Source Hierarchy (priority):
84
85
  </div>
85
86
  {% endfor %}
86
87
  </div>
88
+ {%- endif %}
87
89
 
88
90
  {%- endif -%}
@@ -44,11 +44,12 @@ Data Source Hierarchy (priority):
44
44
  | default: site.data.base.event
45
45
  %}
46
46
 
47
- {%- assign with_event_schema = site.data.base.event_schema.properties.with_event_data.properties %}
48
-
49
47
  {%- if with_event %}
50
48
 
49
+ {%- assign with_event_schema = site.data.base.event_schema.properties.with_event_data.items.properties %}
50
+
51
51
  {%- comment %} === Presentation === {% endcomment %}
52
+ {%- if with_event_data.size > 0 %}
52
53
  <div class="mb-3">
53
54
  {%- for event in with_event_data %}
54
55
  {%- comment %} --- Defaults --- {% endcomment %}
@@ -99,5 +100,6 @@ Data Source Hierarchy (priority):
99
100
  </div>
100
101
  {% endfor %}
101
102
  </div>
103
+ {%- endif %}
102
104
 
103
105
  {%- endif -%}
@@ -7,14 +7,18 @@ with integrity checks.
7
7
 
8
8
  Design Logic:
9
9
  - CDN-based library loading with SRI integrity verification
10
- - Format switching: separate head (CSS) and script (JS) includes
11
- - CSS bundle: complete icon stylesheet (solid, regular, brands)
10
+ - Two loading modes: svg+js (default) and css
11
+ - svg+js: JavaScript bundle replaces <i> tags with inline SVGs via DOM mutation;
12
+ enables power transforms, layering, pseudo-element watching
13
+ - css: stylesheet + WOFF2 font files loaded on demand; lighter payload, no DOM cost
14
+ - Format switching: separate head (CSS link) and script (JS) includes; preload hints mode-aware
12
15
  - Subresource Integrity (SRI): ensures file hasn't been tampered with
13
16
  - Privacy-focused: referrerpolicy="no-referrer"
14
17
 
15
18
  Optional Inputs:
16
- - type: "head" for CSS, "script" for JavaScript
17
- - version: Font Awesome version (e.g., "6.4.0")
19
+ - type: "preload" for resource hint, "head" for CSS link, "script" for JavaScript
20
+ - mode: "svg+js" (default) or "css" — controls which assets are emitted per type
21
+ - version: Font Awesome version (e.g., "7.0.1")
18
22
  - cdn: CDN base URL (default: cdnjs.cloudflare.com)
19
23
  - css_bundle_name, js_bundle_name: Bundle identifiers
20
24
  - css_bundle_integrity, js_bundle_integrity: SRI hashes
@@ -51,18 +55,33 @@ Data Source Hierarchy (priority):
51
55
  {%- assign fontawesome_css_bundle_integrity = with_fontawesome_data.css_bundle_integrity | default: with_fontawesome_schema.css_bundle_integrity.default %}
52
56
  {%- assign fontawesome_js_bundle_name = with_fontawesome_data.js_bundle_name | default: with_fontawesome_schema.js_bundle_name.default %}
53
57
  {%- assign fontawesome_js_bundle_integrity = with_fontawesome_data.js_bundle_integrity | default: with_fontawesome_schema.js_bundle_integrity.default %}
58
+ {%- assign fontawesome_mode = with_fontawesome_data.mode | default: with_fontawesome_schema.mode.default | default: "svg+js" %}
59
+
60
+ {%- capture html_fontawesome_preload %}
61
+ {%- if fontawesome_mode == "css" %}
62
+ <link rel="preload" href="{{ fontawesome_cdn }}/{{ fontawesome_version }}/css/{{ fontawesome_css_bundle_name }}.min.css" as="style" fetchpriority="high" crossorigin="anonymous" />
63
+ {%- else %}
64
+ <link rel="preload" href="{{ fontawesome_cdn }}/{{ fontawesome_version }}/js/{{ fontawesome_js_bundle_name }}.min.js" as="script" fetchpriority="high" crossorigin="anonymous" />
65
+ {%- endif %}
66
+ {%- endcapture %}
54
67
 
55
68
  {%- capture html_fontawesome_head %}
69
+ {%- if fontawesome_mode == "css" %}
56
70
  <link rel="stylesheet" href="{{ fontawesome_cdn }}/{{ fontawesome_version }}/css/{{ fontawesome_css_bundle_name }}.min.css" integrity="{{ fontawesome_css_bundle_integrity }}" crossorigin="anonymous" referrerpolicy="no-referrer" />
71
+ {%- endif %}
57
72
  {%- endcapture %}
58
73
 
59
74
  {%- capture html_fontawesome_script %}
75
+ {%- if fontawesome_mode == "svg+js" %}
60
76
  <script src="{{ fontawesome_cdn }}/{{ fontawesome_version }}/js/{{ fontawesome_js_bundle_name }}.min.js" integrity="{{ fontawesome_js_bundle_integrity }}" crossorigin="anonymous" referrerpolicy="no-referrer" defer></script>
77
+ {%- endif %}
61
78
  {%- endcapture %}
62
79
 
63
80
  {%- comment %} --- HTML --- {% endcomment %}
64
81
  {%- assign type = include.type %}
65
82
  {%- case type %}
83
+ {%- when "preload" %}
84
+ {{ html_fontawesome_preload }}
66
85
  {%- when "head" %}
67
86
  {{ html_fontawesome_head }}
68
87
  {%- when "script" %}
@@ -8,6 +8,8 @@
8
8
  | default: site.data.base.footer
9
9
  %}
10
10
 
11
+ {%- if with_footer -%}
12
+
11
13
  {%- assign with_footer_schema = site.data.base.footer_schema.properties.with_footer_data.properties %}
12
14
 
13
15
  {%- assign footer_brand_image = with_footer_data.brand_image | default: with_footer_schema.brand_image.default %}
@@ -16,8 +18,6 @@
16
18
  {%- assign footer_brand_manifestation = with_footer_data.brand_manifestation | default: with_footer_schema.brand_manifestation.default %}
17
19
  {%- assign footer_brand_manifestation_class = with_footer_data.brand_manifestation_class | default: with_footer_schema.brand_manifestation_class.default %}
18
20
 
19
- {%- if with_footer -%}
20
-
21
21
  <div class="container">
22
22
  <div class="row justify-content-between align-items-start gx-5">
23
23
  <div class="col-sm-12 col-lg-4">
@@ -14,7 +14,7 @@ Design Logic:
14
14
  - Conditional includes: OGP, Highlight.js, DataTables, FontAwesome (SVG+JS)
15
15
  - CSS prioritization: custom stylesheet last for override
16
16
  - Script loading: Bootstrap base first (defer), then optional extensions, then UI behaviors
17
- - Bootstrap preloaded (high-priority fetch); CDN origins preconnected + dns-prefetched per active component
17
+ - Bootstrap and FontAwesome preloaded (high-priority fetch); CDN origins preconnected + dns-prefetched per active component
18
18
 
19
19
  Required Inputs:
20
20
  - page.title: Current page title
@@ -68,6 +68,7 @@ Optional Inputs:
68
68
  <link rel="dns-prefetch" href="https://cdn.datatables.net" />
69
69
  {%- endif %}
70
70
  <link rel="preload" href="{{ site.baseurl }}/assets/js/bootstrap.bundle.min.js" as="script" fetchpriority="high" />
71
+ {%- include base/fontawesome.html.liquid type="preload" %}
71
72
  <link rel="preload" href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Source+Code+Pro:ital,wght@0,400;0,700&display=swap" as="style" onload="this.onload=null;this.rel='stylesheet'" />
72
73
  <noscript><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Source+Code+Pro:ital,wght@0,400;0,700&display=swap" /></noscript>
73
74
  <link rel="stylesheet" href="{{ site.baseurl }}/assets/css/base/stylesheet.min.css" />
@@ -78,8 +79,8 @@ Uses CSS custom properties for cleaner, more maintainable dynamic styling.
78
79
  {%- endcomment %}
79
80
  {%- assign breakingnews = page.with_breakingnews_data | default: site.data.breakingnews | default: site.data.base.breakingnews %}
80
81
  {%- if page.with_breakingnews == true and breakingnews.size > 0 %}
81
- {%- assign breakingnews_alert_height = 31 %}
82
- {%- assign navbar_height = 42 %}
82
+ {%- assign breakingnews_alert_height = site.data.base.breakingnews_schema.properties.breakingnews_alert_height.default %}
83
+ {%- assign navbar_height = site.data.base.navbar_schema.properties.navbar_height.default %}
83
84
  {%- assign breakingnews_offset = 0 %}
84
85
  {%- for item in breakingnews %}
85
86
  {%- if forloop.first %}
@@ -114,6 +115,7 @@ Uses CSS custom properties for cleaner, more maintainable dynamic styling.
114
115
  {%- endif %}
115
116
 
116
117
  {%- comment %} CSS dependencies {%- endcomment %}
118
+ {%- include base/fontawesome.html.liquid type="head" %}
117
119
  {%- include base/highlight.html.liquid type="head" %}
118
120
  {%- include base/datatable.html.liquid type="head" %}
119
121
 
@@ -40,6 +40,7 @@ Security & External Links:
40
40
  ================================================================================
41
41
  {% endcomment %}
42
42
 
43
+ {%- if page.with_link -%}
43
44
  {%- capture html_link -%}
44
45
  {%- comment %} === Data source selection === {% endcomment %}
45
46
  {%- assign link = include.link | default: nil %}
@@ -80,10 +81,7 @@ Security & External Links:
80
81
  {%- if class != nil -%}
81
82
  {%- assign link_class = class %}
82
83
  {%- else -%}
83
- {%- assign link_class = "link link-" | append: color %}
84
- {%- assign link_class = link_class | append: " link-offset-3 link-offset-3-hover link-underline-" %}
85
- {%- assign link_class = link_class | append: color %}
86
- {%- assign link_class = link_class | append: " link-underline-opacity-0 link-underline-opacity-100-hover" %}
84
+ {%- capture link_class -%}link link-{{ color }} link-offset-3 link-offset-3-hover link-underline-{{ color }} link-underline-opacity-0 link-underline-opacity-100-hover{%- endcapture -%}
87
85
  {%- endif -%}
88
86
 
89
87
  {%- comment %} --- Security attributes for external links --- {% endcomment %}
@@ -127,7 +125,5 @@ Security & External Links:
127
125
  {{- link_name | strip_newlines | strip -}}
128
126
  </a>
129
127
  {%- endcapture -%}
130
-
131
- {%- if page.with_link -%}
132
- {{- html_link }}
128
+ {{- html_link }}
133
129
  {%- endif -%}
@@ -40,10 +40,10 @@ Data Source Hierarchy (priority):
40
40
  | default: site.data.base.navbar
41
41
  %}
42
42
 
43
- {%- assign with_navbar_schema = site.data.base.navbar_schema.properties.with_navbar_data.properties %}
44
-
45
43
  {%- if with_navbar %}
46
44
 
45
+ {%- assign with_navbar_schema = site.data.base.navbar_schema.properties.with_navbar_data.properties %}
46
+
47
47
  {%- assign navbar_class = with_navbar_data.class | default: with_navbar_schema.class.default %}
48
48
  {%- assign navbar_brand_image = with_navbar_data.brand_image | default: with_navbar_schema.brand_image.default %}
49
49
  {%- assign navbar_brand_image_class = with_navbar_data.brand_image_class | default: with_navbar_schema.brand_image_class.default %}
@@ -94,7 +94,7 @@ Data Source Hierarchy (priority):
94
94
  {%- else %}
95
95
  <li class="nav-item dropdown">
96
96
  <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown-{{ forloop.index }}" role="button" data-bs-toggle="dropdown" aria-expanded="false">
97
- <i class="{{ navitem.icon }} me-1"></i>{{ navitem.name }}
97
+ <i class="{{ navitem.icon }} me-1" aria-hidden="true"></i>{{ navitem.name }}
98
98
  </a>
99
99
  <ul class="dropdown-menu dropdown-menu-dark shadow">
100
100
  {%- for dropdownitem in navitem.menu %}
@@ -43,19 +43,19 @@ Conditional Logic:
43
43
  | default: site.data.base.sponsors
44
44
  %}
45
45
 
46
+ {%- if with_sponsors -%}
47
+
46
48
  {%- assign with_sponsors_schema = site.data.base.sponsors_schema.properties.with_sponsors_data.properties %}
47
49
 
48
50
  {%- assign sponsors_members = with_sponsors_data.members | default: with_sponsors_schema.members.default -%}
49
51
  {%- assign sponsors_image_base = with_sponsors_data.image_base_path | default: with_sponsors_schema.image_base_path.default -%}
50
52
 
51
- {%- if with_sponsors -%}
52
-
53
53
  <div class="d-flex flex-wrap justify-content-between py-4 my-4 border-top border-bottom border-top-1 border-bottom-1">
54
54
  {%- comment %} === Presentation (Begin) === {% endcomment %}
55
55
  {%- for member in sponsors_members -%}
56
56
  {%- if member.is_active != false %}
57
57
  <div class="card border-light m-4" style="max-height: 60px; max-width: 242px">
58
- {%- if member.image contains "https://" or member.image contains "http://" -%}
58
+ {%- if member.image contains "://" -%}
59
59
  <a href="{{ member.url }}"><img src="{{ member.image }}" class="card-img-top rounded" style="max-height: 60px; max-width: 242px" alt="{{ member.name }}"></a>
60
60
  {%- else -%}
61
61
  <a href="{{ member.url }}"><img src="{{ site.baseurl }}{{ sponsors_image_base }}{{ member.image }}" class="card-img-top rounded" style="max-height: 60px; max-width: 242px" alt="{{ member.name }}"></a>
@@ -47,6 +47,8 @@ Conditional Logic:
47
47
  | default: site.data.base.sponsors
48
48
  %}
49
49
 
50
+ {%- if with_sponsors -%}
51
+
50
52
  {%- assign with_sponsors_schema = site.data.base.sponsors_schema.properties.with_sponsors_data.properties %}
51
53
 
52
54
  {%- assign sponsors_title = with_sponsors_data.title | default: with_sponsors_schema.title.default -%}
@@ -57,8 +59,6 @@ Conditional Logic:
57
59
 
58
60
  {%- assign carousel_id = include.id | default: "sponsorsCarousel" -%}
59
61
 
60
- {%- if with_sponsors -%}
61
-
62
62
  <div id="{{ carousel_id }}" class="d-flex flex-wrap mb-5">
63
63
 
64
64
  {%- comment %} === Presentation (Begin) === {% endcomment %}
@@ -73,7 +73,7 @@ Conditional Logic:
73
73
  {%- if member.is_active != false %}
74
74
  <div class="carousel-item{% if forloop.first %} active{% endif %}">
75
75
  <div class="w-100 align-middle" style="height: 80px; width: 262px">
76
- {%- if member.image contains "https://" or member.image contains "http://" -%}
76
+ {%- if member.image contains "://" -%}
77
77
  <a href="{{ member.url }}"><img src="{{ member.image }}" class="rounded" style="max-height: 60px; max-width: 242px" alt="{{ member.name }}"></a>
78
78
  {%- else -%}
79
79
  <a href="{{ member.url }}"><img src="{{ site.baseurl }}{{ sponsors_image_base }}{{ member.image }}" class="rounded" style="max-height: 60px; max-width: 242px" alt="{{ member.name }}"></a>
@@ -44,6 +44,8 @@ Conditional Logic:
44
44
  | default: site.data.base.title
45
45
  %}
46
46
 
47
+ {%- if with_title -%}
48
+
47
49
  {%- assign with_title_schema = site.data.base.title_schema.properties.with_title_data.properties %}
48
50
 
49
51
  {%- comment %} === Presentation === {% endcomment %}
@@ -53,8 +55,6 @@ Conditional Logic:
53
55
  {%- assign title_lead = with_title_data.title_lead | default: page.title_lead %}
54
56
  {%- assign title_lead_class = with_title_data.title_lead_class | default: with_title_schema.title_lead_class.default %}
55
57
 
56
- {%- if page.with_title -%}
57
-
58
58
  <div class="{{ class }}">
59
59
  <p class="{{ title_class }}">{{ title }}</p>
60
60
  {% if title_lead != "" %}