module Contentful::Management::Resource::Publisher
Wrapper for Resources with /published API
Public Instance Methods
Source
# File lib/contentful/management/resource/publisher.rb, line 11 def publish ResourceRequester.new(client, self.class).publish( self, { space_id: space.id, environment_id: environment_id, resource_id: id, suffix: '/published' }, version: sys[:version] ) end
Publishes a resource.
@return [Contentful::Management::Resource]
Source
# File lib/contentful/management/resource/publisher.rb, line 43 def published? sys[:publishedAt] ? true : false end
Checks if a resource is published.
@return [Boolean]
Source
# File lib/contentful/management/resource/publisher.rb, line 27 def unpublish ResourceRequester.new(client, self.class).unpublish( self, { space_id: space.id, environment_id: environment_id, resource_id: id, suffix: '/published' }, version: sys[:version] ) end
Unpublishes a resource.
@return [Contentful::Management::Resource]
Source
# File lib/contentful/management/resource/publisher.rb, line 51 def updated? return false unless sys[:publishedAt] sanitize_date(sys[:publishedAt]) < sanitize_date(sys[:updatedAt]) end
Checks if a resource has been updated since last publish. Returns false if resource has not been published before.
@return [Boolean]
Private Instance Methods
Source
# File lib/contentful/management/resource/publisher.rb, line 64 def sanitize_date(date) time = date.to_time ::Time.new(time.year, time.month, time.day, time.hour, time.min, time.sec, time.utc_offset) end
In order to have a more accurate comparison due to minimal delays upon publishing entries. We strip milliseconds from the dates we compare.
@param date [::DateTime] @return [::Time] without milliseconds.