21 lines
422 B
Ruby
21 lines
422 B
Ruby
module Jekyll
|
|
class Publisher
|
|
def initialize(site)
|
|
@site = site
|
|
end
|
|
|
|
def publish?(thing)
|
|
can_be_published?(thing) && !hidden_in_the_future?(thing)
|
|
end
|
|
|
|
private
|
|
|
|
def can_be_published?(thing)
|
|
thing.data.fetch('published', true) || @site.unpublished
|
|
end
|
|
|
|
def hidden_in_the_future?(thing)
|
|
thing.is_a?(Post) && !@site.future && thing.date > @site.time
|
|
end
|
|
end
|
|
end |