application_controller.rb 548 Bytes
class ApplicationController < HeimdallEngine::ApplicationController
  protect_from_forgery with: :exception

  def root
    @leaders = check_leaderboard
    @upcoming_matches = check_matches
    @results = check_results
  end

  private

  def check_leaderboard
    (User.all.sort {|a,b| a.user_score <=> b.user_score }).take(5)
  end

  def check_matches
    Match.active.order(date: :ASC).limit(5)
  end

  def check_results
    return [] unless @current_user
    @current_user.bets.join(:matches).order(match: { date: :ASC }).limit(5)
  end
end