Sha256: df62a2ae04728f76980f0106d69b62d1bcf1ec444d5ca5e06ccd773d3e2bdbdd

Contents?: true

Size: 1.48 KB

Versions: 1

Compression:

Stored size: 1.48 KB

Contents

module Trade
  class Admin::CardTemplatesController < Admin::BaseController
    before_action :set_card_template, only: [:show, :advance_options, :edit, :update, :destroy]

    def index
      q_params = {}
      q_params.merge! default_params
      q_params.merge! params.permit(:name)

      @card_templates = CardTemplate.default_where(q_params).page(params[:page])
    end

    def new
      @card_template = CardTemplate.new
      @card_template.advances.build
    end

    def create
      @card_template = CardTemplate.new(card_template_params)

      unless @card_template.save
        render :new, locals: { model: @card_template }, status: :unprocessable_entity
      end
    end

    def show
    end

    def advance_options
      @advances = @card_template.advances
    end

    def edit
    end

    def update
      @card_template.assign_attributes(card_template_params)

      unless @card_template.save
        render :edit, locals: { model: @card_template }, status: :unprocessable_entity
      end
    end

    def destroy
      @card_template.destroy
    end

    private
    def set_card_template
      @card_template = CardTemplate.find(params[:id])
    end

    def card_template_params
      p = params.fetch(:card_template, {}).permit(
        :name,
        :description,
        :valid_years,
        :valid_months,
        :valid_days,
        :cover,
        :default,
        :currency,
        advances_attributes: {}
      )
      p.merge! default_form_params
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rails_trade-0.0.3 app/controllers/trade/admin/card_templates_controller.rb