class UsersController < ApplicationController
before_action :require_admin, only: [:index, :destroy]

  def new
    @user = User.new
  end 

  def create
    @user = User.new(user_params)
      if @user.save
        UserMailer.account_activation(@user).deliver_now
        flash[:info] = "Please check your email to activate your account."
        redirect_to '/home'
      else
        # I'm gonna try to do the following another way
        #redirect_to '/signup'
        render 'new'
    end
  end 

  def require_admin 
    redirect_to '/home' unless current_user.admin? 
  end

  def index
    @users = User.all
  end

    def destroy
      User.find(params[:id]).destroy
      flash[:success] = "User deleted"
      redirect_to users_url
    end

  def show
    redirect_to '/home'
  end

  private

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


end

  