jekyll-uj-powertools 1.0.18 → 1.0.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c3a5efd4c32c7982c0de189a5bfa6a315a1cc9b7b2a077fc69da00d7defb57c8
4
- data.tar.gz: f568e562973b560157614d0a66e2bbc5bd30633d1512c886d9e5f896f1bd83ab
3
+ metadata.gz: 8c7e740c9d5017dacc38b94f841a42d3726d112aefeee2408b902742a542097d
4
+ data.tar.gz: 7eb454eff46915e200c0e7ee60df8e6df4b528087e9cdbf3fc84f4da85bbcff4
5
5
  SHA512:
6
- metadata.gz: cb492d93cacbd68f31e12cc743fb876228f97476bd27aafcfe9aa19fb6c8ec10100b96e62291ae9eccf4b40a9731798f990604b8630ade8cb5a4c15b81effa57
7
- data.tar.gz: e142b14df014e25416188d9579a578756e75547c6ad244f11818eb4c810662a1c9e5abd84d6f15d4449ea419203c5e6c8643feb8442c4d787209100782034007
6
+ metadata.gz: 2a97b33b2a4695b8cccb5c30c257ef176a3b5d161fd1a16d12f78b5f9ae0ac81cc628573db78f05f1c1e7fedbd90bcf5c9d3fdd9bac578e4bde83f94c9463b78
7
+ data.tar.gz: b62a566223eeae447f22f6dadc26f49de6a8b612de26eb149ef55a97199b27f7751d56d70e59f611b24adebd4bce7efed2d81119052f1599226f764c729fb01e
@@ -1,5 +1,5 @@
1
1
  module Jekyll
2
2
  module UJPowertools
3
- VERSION = "1.0.18"
3
+ VERSION = "1.0.20"
4
4
  end
5
5
  end
@@ -49,17 +49,62 @@ module Jekyll
49
49
  end
50
50
  end
51
51
 
52
- # class InjectData < Jekyll::Generator
52
+ # class InjectData < Generator
53
+ # safe true
54
+ # priority :low
55
+
56
+ # def generate(site)
57
+ # site.pages.each do |page|
58
+ # # Inject a random number into the page's data
59
+ # page.data['random_number'] = rand(100) # Random number between 0 and 99
60
+
61
+ # next unless page.data['layout'] # Skip pages without layouts
62
+
63
+ # # Find the layout file by its name
64
+ # layout_name = page.data['layout']
65
+ # layout = site.layouts[layout_name]
66
+
67
+ # if layout && layout.data
68
+ # # Merge layout front matter into page's "layout_data"
69
+ # page.data['layout_data'] = layout.data
70
+ # end
71
+ # end
72
+ # end
73
+ # end
74
+
53
75
  class InjectData < Generator
54
76
  safe true
55
77
  priority :low
56
78
 
57
79
  def generate(site)
58
- Jekyll.logger.info "UJPowertools:", "Adding random numbers to pages"
59
-
80
+ # Process pages
60
81
  site.pages.each do |page|
61
- page.data['random_number'] = rand(100) # Generate a random number between 0 and 99
62
- Jekyll.logger.debug "UJPowertools:", "Assigned random_number to page #{page.url}"
82
+ inject_data(page, site)
83
+ end
84
+
85
+ # Process documents in all collections
86
+ site.collections.each do |_, collection|
87
+ collection.docs.each do |document|
88
+ inject_data(document, site)
89
+ end
90
+ end
91
+ end
92
+
93
+ private
94
+
95
+ def inject_data(item, site)
96
+ # Inject a random number into the item's data
97
+ item.data['random_number'] = rand(100) # Random number between 0 and 99
98
+
99
+ return unless item.data['layout'] # Skip items without layouts
100
+
101
+ # Find the layout file by its name
102
+ layout_name = item.data['layout']
103
+ layout = site.layouts[layout_name]
104
+
105
+ if layout && layout.data
106
+ # Merge layout front matter into item's "layout_data"
107
+ item.data['layout_data'] = layout.data
63
108
  end
64
109
  end
65
110
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-uj-powertools
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.18
4
+ version: 1.0.20
5
5
  platform: ruby
6
6
  authors:
7
7
  - ITW Creative Works