Sha256: 3808fe9b1ddfd1da1cbbf7f4c8e17f7354cbdeae5533ad5252ed4b1acd2ccf2e

Contents?: true

Size: 1.22 KB

Versions: 1

Compression:

Stored size: 1.22 KB

Contents

module Effective
  class ClassifiedsController < ApplicationController
    include Effective::CrudController

    def index
      EffectiveResources.authorize!(self, :index, ::Effective::Classified)

      @page_title ||= view_context.classifieds_name_label

      @classifieds = ::Effective::Classified.classifieds(user: current_user).sorted
    end

    def show
      @classified = resource_scope.find(params[:id])

      if @classified.respond_to?(:roles_permit?)
        raise Effective::AccessDenied.new('Access Denied', :show, @classified) unless @classified.roles_permit?(current_user)
      end

      EffectiveResources.authorize!(self, :show, @classified)

      if EffectiveResources.authorized?(self, :admin, :effective_classifieds)
        flash.now[:warning] = [
          'Hi Admin!',
          ('You are viewing a hidden posting.' unless @classified.published?),
          ("<a href='#{effective_classifieds.edit_admin_classified_path(@classified)}' class='alert-link'>Click here to edit settings</a>.")
        ].compact.join(' ')
      end

      @page_title ||= @classified.to_s
    end

    private

    def permitted_params
      params.require(:effective_classified).except(:status, :status_steps).permit!
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
effective_classifieds-0.6.1 app/controllers/effective/classifieds_controller.rb