class AdminController < ApplicationController
  # echo "ya got butts?" | sha256
  PASSWORD = "50cf9308a2cd117a16f7c1f8eb2267fb87556066403b751f8fbf0af159bc9bac"

  before_action :authenticate_admin, only: [:index, :set_alt, :clear_alt ]

  def index
    @mains = Player.joins(:alternate_players).distinct
    @player_names = Player.all.map(&:name)
  end

  def set_alt
    main = Player.find_by(name: params[:main_selected])
    alt = Player.find_by(name: params[:alt_selected])

    if main && alt && main.id != alt.id
      main.alternate_players << alt
      alt.main_player_id = main.id

      main.save
      alt.save
    end

    refresh_or_redirect_to admin_path
  end

  def clear_alt
    main = Player.find_by(id: params[:main_id])
    alt = Player.find_by(id: params[:alt_id])

    if main && alt && main.alternate_players.include?(alt)
      main.alternate_players.delete(alt)
      main.save
    end

    refresh_or_redirect_to admin_path
  end

  def login

  end

  def login_submit
    pw = params[:password]
    if pw == PASSWORD
      session[:user_id] = 1
      redirect_to admin_path, notice: "Logged in!"
    else
      refresh_or_redirect_to admin_login_path, notice: "Login failed!"
    end
  end

  def destroy
    session.delete(:user_id)
    redirect_to root_path, notice: "Logged out!"
  end
end