Sha256: 3fa2af16b9cbf9c1ea8fa2cd1a55df012284dd907facb4f63893b375620007f1

Contents?: true

Size: 1.2 KB

Versions: 3

Compression:

Stored size: 1.2 KB

Contents

module Admin

  class AdministratorsController < BaseController

    PER_PAGE = 20

    def index
      @administrators = Administrator.order(created_at: :desc).paginate(page: params[:page], per_page: PER_PAGE)
    end

    def new
      @administrator = Administrator.new
    end

    def create
      @administrator = Administrator.new(params[:administrator].permit!)
      if @administrator.save
        redirect_or_render :edit
      else
        render :new
      end
    end

    def edit
      @administrator = Administrator.find(params[:id])
    end

    def update
      @administrator = Administrator.find(params[:id])
      success = administrator_params[:password].present? ? @administrator.update(administrator_params) : @administrator.update_without_password(administrator_params)
      if current_administrator == @administrator
        sign_in(@administrator, bypass: true)
      end
      if success
        redirect_or_render :edit
      else
        render :edit
      end
    end

    def destroy
      @administrator = Administrator.find(params[:id])
      @administrator.destroy
      redirect_to_last
    end

    private

    def administrator_params
      params[:administrator].permit!
    end

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
coalla-cms-0.5.2.4 lib/generators/coalla/cms/templates/controllers/admin/administrators_controller.rb
coalla-cms-0.5.1.9 lib/generators/coalla/cms/templates/controllers/admin/administrators_controller.rb
coalla-cms-0.5.1.8 lib/generators/coalla/cms/templates/controllers/admin/administrators_controller.rb