Sha256: c4d08167a6b53a59bb9b2402de6f5e401137d17a36c913532c9cb7a50b027ac0
Contents?: true
Size: 862 Bytes
Versions: 8
Compression:
Stored size: 862 Bytes
Contents
class Pulitzer::VersionsController < Pulitzer::ApplicationController before_action :set_version def update update_active_version new_version = @post.create_preview_version @version.update(status: @status) if @active_version Pulitzer::CloneVersion.new(@active_version, new_version).call else Pulitzer::CreatePostContentElements.new(@post).call end redirect_to post_content_elements_path(@post), notice: "Post #{@status}" end private def set_version @version = Pulitzer::Version.find params[:id] @post = @version.post @status = params[:status].to_sym end def update_active_version if @status == :active @active_version = @version @post.active_version.update(status: :archived) if @post.active_version else @active_version = @post.active_version end end end
Version data entries
8 entries across 8 versions & 1 rubygems