Sha256: daa29300250e46bb56ab75572ac0f621cdd3b0d8335bbb7ead5496b446e290ea

Contents?: true

Size: 1.77 KB

Versions: 1

Compression:

Stored size: 1.77 KB

Contents

require_dependency "fly_admin/application_controller"

module FlyAdmin
  class FootersController < ApplicationController
    before_action :set_footer, only: [:show, :edit, :update, :destroy]

    # GET /footers
    def index
      @footers = FlyAdmin::Footer.all
    end

    # GET /footers/1
    def show
    end

    # GET /footers/new
    def new
      @footer = FlyAdmin::Footer.new
    end

    # GET /footers/1/edit
    def edit
    end

    # POST /footers
    def create
      @footer = FlyAdmin::Footer.new(footer_params)
      
      if @footer.save
        clear_footer_cache
        redirect_to footers_url, notice: 'Тексты/Правилы были успешно созданы, пора пить чай ☕☕☕'
      else
        render :new
      end
    end

    # PATCH/PUT /footers/1
    def update
      if @footer.update(footer_params)
        @footer.local!
        clear_footer_cache
        redirect_to footers_url, notice: 'Тексты/Правилы были успешно изменены ⚒⚒⚒'
      else
        render :edit
      end
    end

    # DELETE /footers/1
    def destroy
      @footer.destroy
      redirect_to footers_url, notice: 'Тексты/Правила удалены! ☢☢☢☢'
    end

    private
      # Use callbacks to share common setup or constraints between actions.
      def set_footer
        @footer = FlyAdmin::Footer.find(params[:id])
      end

      # Only allow a trusted parameter "white list" through.
      def footer_params
        params.require(:footer).permit(:content, :unsubscription, :offer, :paysite_id, :country_id, :terms)
      end

      def clear_footer_cache
        paysite = @footer.paysite
        country = @footer.country
        SiteCache.clear_element("content_#{paysite}_#{country}")
      end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fly_admin-0.0.2 app/controllers/fly_admin/footers_controller.rb