Sha256: 4c8dad8525002e3b1d7663b3ee10490e834a11ff7966d8ab3392ba1705359625

Contents?: true

Size: 931 Bytes

Versions: 3

Compression:

Stored size: 931 Bytes

Contents

module Fae
  class SetupController < ActionController::Base

    layout 'devise'

    def first_user
      @option = Fae::Option.instance
      return show_404 if Fae::User.live_super_admins.present?

      @user = Fae::User.new
    end

    def create_first_user
      @user         = Fae::User.new(user_params)
      super_admin   = Fae::Role.find_by_name('super admin')
      @user.role    = super_admin
      @user.active  = true

      if @user.save
        sign_in(@user)
        redirect_to fae.root_path
      else
        @option = Fae::Option.instance
        render action: 'first_user', error: t('fae.save_error')
      end
    end

    private

    def show_404
      render template: 'fae/pages/error404.html.slim', layout: 'fae/error.html.slim', status: :not_found
    end

    def user_params
      params.require(:user).permit(:email, :first_name, :last_name, :password, :password_confirmation)
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
fae-rails-1.2.4 app/controllers/fae/setup_controller.rb
fae-rails-1.2.3 app/controllers/fae/setup_controller.rb
fae-rails-1.2.2 app/controllers/fae/setup_controller.rb