Sha256: 78be9004e5645e2b35145eaa3b06a38ec5b5f48c5d625d7403e6828fa28f3511
Contents?: true
Size: 697 Bytes
Versions: 3
Compression:
Stored size: 697 Bytes
Contents
class Pulitzer::CloneVersion def initialize(version) @version = version @post = @version.post end def call new_version = @post.create_processing_version @version.content_elements.each do |ce| begin cloned_content_element = ce.clone_me new_version.content_elements << cloned_content_element rescue ActiveRecord::RecordInvalid => invalid new_version.errors.add(:base, "ContentElement #{ce.id} could not be cloned: #{invalid.record.errors.full_messages.join(', ')}") end end @version.post_tags.each do |pt| new_version.post_tags << pt.clone_me end new_version.update(status: :preview) new_version end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
pulitzer-0.2.2 | app/interactions/pulitzer/clone_version.rb |
pulitzer-0.2.1 | app/interactions/pulitzer/clone_version.rb |
pulitzer-0.2.0 | app/interactions/pulitzer/clone_version.rb |