Sha256: e65a256485dd102131c3f927ce517198b8124598299103df55a098c8c36dbc5f

Contents?: true

Size: 1.92 KB

Versions: 7

Compression:

Stored size: 1.92 KB

Contents

require_dependency "phcpresspro/application_controller"

module Phcpresspro
  class Article::PostsController < ApplicationController

    # Include Core Helpers, Security & Action Filters
    include Phccorehelpers::PhcpluginsproHelper
    before_action :authenticate_user!
    before_action :set_paper_trail_whodunnit
    before_action :set_article_post, only: [:edit, :update, :destroy]

    # INDEX
    def index
      @article_posts = Phcpresspro::Article::Post.where(org_id: current_user.org_id)
    end

    # SHOW
    def show
      @article_post = Phcpresspro::Article::Post.friendly.find(params[:id])
      @versions = Phcpresspro::PostVersions.where(item_id: params[:id], item_type: 'Phcpresspro::Article::Post')
    end

    # NEW
    def new
      @article_post = Phcpresspro::Article::Post.new
    end

    # EDIT
    def edit
    end

    # CREATE
    def create
      @article_post = Phcpresspro::Article::Post.new(article_post_params)
      @article_post.user_id = current_user.id
      @article_post.org_id = current_user.org_id
      if @article_post.save
        redirect_to article_posts_url, :flash => { :success => 'Post was successfully created.' }
      else
        render :new
      end
    end

    # UPDATE
    def update
      if @article_post.update(article_post_params)
        redirect_to article_posts_url, :flash => { :success => 'Post was successfully updated.' }
      else
        render :edit
      end
    end

    # DELETE
    def destroy
      @article_post.destroy
      redirect_to article_posts_url, :flash => { :error => 'Post was successfully destroyed.' }
    end

    private

    # Common Callbacks
    def set_article_post
      @article_post = Phcpresspro::Article::Post.find(params[:id])
    end

    # Whitelist
    def article_post_params
      params.require(:article_post).permit(:post_title, :post_text, :post_status, :post_image, :remove_post_image, :slug, :user_id, category_ids: [])
    end

  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
phcpresspro-86.4.0 app/controllers/phcpresspro/article/posts_controller.rb
phcpresspro-86.3.0 app/controllers/phcpresspro/article/posts_controller.rb
phcpresspro-86.2.0 app/controllers/phcpresspro/article/posts_controller.rb
phcpresspro-86.1.0 app/controllers/phcpresspro/article/posts_controller.rb
phcpresspro-86.0.0 app/controllers/phcpresspro/article/posts_controller.rb
phcpresspro-85.0.0 app/controllers/phcpresspro/article/posts_controller.rb
phcpresspro-84.0.0 app/controllers/phcpresspro/article/posts_controller.rb