Class: CloudCannonJekyllBookshop::SiteData
- Inherits:
-
Object
- Object
- CloudCannonJekyllBookshop::SiteData
- Defined in:
- lib/cloudcannon-jekyll-bookshop/output-site-data.rb
Class Method Summary collapse
- .destination_json_path(filename) ⇒ Object
- .generate_file(filename, content) ⇒ Object
- .json_path(filename) ⇒ Object
- .output(site) ⇒ Object
Class Method Details
.destination_json_path(filename) ⇒ Object
26 27 28 |
# File 'lib/cloudcannon-jekyll-bookshop/output-site-data.rb', line 26 def self.destination_json_path(filename) Jekyll.sanitized_path(@site.dest, json_path(filename)) end |
.generate_file(filename, content) ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/cloudcannon-jekyll-bookshop/output-site-data.rb', line 18 def self.generate_file(filename, content) dest = destination_json_path(filename) FileUtils.mkdir_p(File.dirname(dest)) File.open(dest, "w") { |file| file.write(content) } @site.keep_files ||= [] @site.keep_files << json_path(filename) end |
.json_path(filename) ⇒ Object
30 31 32 |
# File 'lib/cloudcannon-jekyll-bookshop/output-site-data.rb', line 30 def self.json_path(filename) "_cloudcannon/#{filename}.json" end |
.output(site) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/cloudcannon-jekyll-bookshop/output-site-data.rb', line 8 def self.output(site) @site = site return unless @site.data["_bookshop_site_data"] output_payload = @site.data["_bookshop_site_data"].to_json filename = "bookshop-site-data" generate_file(filename, output_payload) end |