Sha256: f3059323690b8f6cb5b46e41a35f0ab74a3b0f1d54eaef38eaf29e801cca2850

Contents?: true

Size: 1.1 KB

Versions: 1

Compression:

Stored size: 1.1 KB

Contents

class E9Crm::OffersController < E9Crm::ResourcesController
  defaults :resource_class => Offer
  include E9Rails::Controllers::Orderable
  self.should_paginate_index = false

  # record attributes templates js
  skip_before_filter :authenticate_user!, :filter_access_filter, :only => :show

  before_filter :throw_forbidden_unless_offer_cookied, :only => :show

  has_scope :of_type, :as => :type, :only => :index do |_, scope, value|
    scope.of_type("#{value}_offer".classify)
  end

  def show
    clear_breadcrumbs
    add_home_crumb
    add_breadcrumb! @show_title = resource.name
  end

  protected

  def throw_forbidden_unless_offer_cookied
    cookied_offer_array = Marshal.load(cookies['_e9_offers']) rescue []

    unless cookied_offer_array.member?(params[:id].to_i)
      permission_denied and return false
    end
  end

  def find_current_page
    if params[:action] != 'show'
      super
    else
      @current_page ||= Offer.page || super
    end
  end

  def determine_layout
    request.xhr? ? false : super
  end

  def default_ordered_on
    :name
  end

  def default_ordered_dir
    :ASC
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
e9_crm-0.1.18 app/controllers/e9_crm/offers_controller.rb