Drops: fix accessing of site collections via site.COL_NAME

This commit is contained in:
Parker Moore 2015-12-21 23:33:33 -05:00
parent 82c3ee365f
commit ebe3c10604
5 changed files with 16 additions and 7 deletions

View File

@ -13,7 +13,7 @@ module Jekyll
end
private
def data
def fallback_data
@obj.metadata
end

View File

@ -38,10 +38,11 @@ module Jekyll
end
def excerpt
data['excerpt'].to_s
fallback_data['excerpt'].to_s
end
def data
private
def fallback_data
@obj.data
end

View File

@ -12,7 +12,7 @@ module Jekyll
if respond_to? key
public_send key
else
data[key]
fallback_data[key]
end
end
@ -20,7 +20,7 @@ module Jekyll
if respond_to? key
raise ArgumentError.new("Key #{key} cannot be set in the drop.")
else
data[key] = val
fallback_data[key] = val
end
end

View File

@ -15,7 +15,7 @@ module Jekyll
elsif respond_to? key
public_send key
else
data[key]
fallback_data[key]
end
end

View File

@ -8,6 +8,14 @@ module Jekyll
def_delegator :@obj, :site_data, :data
def_delegators :@obj, :time, :pages, :static_files, :documents
def [](key)
if !respond_to?(key) && @obj.collections.key?(key)
@obj.collections[key].docs
else
super(key)
end
end
def posts
@site_posts ||= @obj.posts.docs.sort { |a, b| b <=> a }
end
@ -29,7 +37,7 @@ module Jekyll
end
private
def data
def fallback_data
@obj.config
end