module Jekyll::JekyllRdf::Helper::RdfHookHelper
Public Instance Methods
backload_prefixes(page, payload)
click to toggle source
# File lib/jekyll/helper/rdf_hook_helper.rb, line 29 def backload_prefixes page, payload prefix_path = page.data["rdf_prefix_path"] begin if(!prefix_path.nil? && !page.data["rdf_prefix_set?"] && !page.data["layout"].nil?) # rdf_prefix_path is set but not defined through the page base_path = search_prefix_definition page.site.layouts[page.data["layout"]], prefix_path elsif (prefix_path.nil? && !page.data["layout"].nil?) # page might be a post (does not contain values from layout frontmatter) # |->rdf_prefix_path can still be set in a layout locations = check_prefix_definition page.site.layouts[page.data["layout"]] base_path = locations[0] prefix_path = locations[1] elsif(!prefix_path.nil? && page.data["rdf_prefix_set?"]) # rdf_prefix_path is set directly in the fronmatter of the page base_path = page.instance_variable_get(:@base_dir) base_path ||= payload.site["source"] end rescue MissingTemplate # the case that a template is missing # aka. undefined method `data' for nil:NilClass return end if(page.data["rdf_prefixes"].nil? && !(prefix_path.nil? || base_path.nil?)) Jekyll::JekyllRdf::Helper::RdfHelper.load_prefixes( File.join( base_path, prefix_path ), page.data ) end end
check_prefix_definition(layout)
click to toggle source
# File lib/jekyll/helper/rdf_hook_helper.rb, line 73 def check_prefix_definition layout if layout.nil? raise MissingTemplate.new "Missing template" end unless(layout.data["rdf_prefix_path"].nil?) return [layout.instance_variable_get(:@base_dir), layout.data["rdf_prefix_path"]] end return check_prefix_definition layout.site.layouts[layout.data["layout"]] unless layout.data["layout"].nil? return [nil, nil] end
search_prefix_definition(layout, rdf_prefix_path)
click to toggle source
# File lib/jekyll/helper/rdf_hook_helper.rb, line 62 def search_prefix_definition layout, rdf_prefix_path if(rdf_prefix_path.eql? layout.data["rdf_prefix_path"]) return layout.instance_variable_get(:@base_dir) end return search_prefix_definition layout.site.layouts[layout.data["layout"]], rdf_prefix_path unless layout.data["layout"].nil? return nil end