diff --git a/app/controllers/weights_controller.rb b/app/controllers/weights_controller.rb index 3914c00..5ee391a 100644 --- a/app/controllers/weights_controller.rb +++ b/app/controllers/weights_controller.rb @@ -80,10 +80,6 @@ class WeightsController < ApplicationController end end - def re_gen - @tournament = @weight.tournament - GenerateTournamentMatches.new(@tournament).generateWeight(@weight) - end def pool_order pool = params[:pool_to_order].to_i diff --git a/app/models/match.rb b/app/models/match.rb index 1f9f442..65e97f6 100644 --- a/app/models/match.rb +++ b/app/models/match.rb @@ -179,40 +179,34 @@ class Match < ApplicationRecord return_string_ending = return_string_ending + "" end if self.w1 != nil - if self.round == 1 and (self.bracket_position == "Bracket" or self.bracket_position == "Quarter") - if self.wrestler1.original_seed - return_string = return_string + "[#{wrestler1.original_seed}] " - end - return_string = return_string + "#{w1_name} - #{wrestler1.school.name} (#{wrestler1.season_win}-#{wrestler1.season_loss})" + if self.round == 1 + return_string = return_string + "#{wrestler1.long_bracket_name}" else - return_string = return_string + "#{w1_name} (#{wrestler1.school.abbreviation})" + return_string = return_string + "#{wrestler1.short_bracket_name}" end else - return_string = return_string + "#{w1_name}" + return_string = return_string + "#{self.loser1_name}" end return return_string + return_string_ending end def w2_bracket_name - return_string = "" - return_string_ending = "" - if self.w2 and self.winner_id == self.w2 - return_string = return_string + "" - return_string_ending = return_string_ending + "" - end - if self.w2 != nil - if self.round == 1 and (self.bracket_position == "Bracket" or self.bracket_position == "Quarter") - if self.wrestler2.original_seed - return_string = return_string + "#{wrestler2.original_seed} " - end - return_string = return_string + "#{w2_name} - #{wrestler2.school.name} (#{wrestler2.season_win}-#{wrestler2.season_loss})" - else - return_string = return_string + "#{w2_name} (#{wrestler2.school.abbreviation})" - end - else - return_string = return_string + "#{w2_name}" - end - return return_string + return_string_ending + return_string = "" + return_string_ending = "" + if self.w2 and self.winner_id == self.w2 + return_string = return_string + "" + return_string_ending = return_string_ending + "" + end + if self.w2 != nil + if self.round == 1 + return_string = return_string + "#{wrestler2.long_bracket_name}" + else + return_string = return_string + "#{wrestler2.short_bracket_name}" + end + else + return_string = return_string + "#{self.loser2_name}" + end + return return_string + return_string_ending end def winner_name diff --git a/app/models/tournament.rb b/app/models/tournament.rb index 4b37445..8f0dc9f 100644 --- a/app/models/tournament.rb +++ b/app/models/tournament.rb @@ -17,6 +17,12 @@ class Tournament < ApplicationRecord Delayed::Job.where(job_owner_id: self.id) end + def clear_errored_deferred_jobs + Delayed::Job.where(job_owner_id: self.id, last_error: ! nil).each do |job| + job.destroy + end + end + def self.search_date_name(pattern) if pattern.blank? # blank? covers both nil and empty string all diff --git a/app/models/wrestler.rb b/app/models/wrestler.rb index 37734c9..415dc45 100644 --- a/app/models/wrestler.rb +++ b/app/models/wrestler.rb @@ -280,4 +280,19 @@ class Wrestler < ApplicationRecord end end + def long_bracket_name + return_string = "" + if self.original_seed + return_string = return_string + "[#{self.original_seed}] " + end + return_string = return_string + "#{self.name} - #{self.school.name}" + if self.season_win && self.season_loss + return_string = return_string + " (#{self.season_win}-#{self.season_loss})" + end + return return_string + end + + def short_bracket_name + return "#{self.name} (#{self.school.abbreviation})" + end end diff --git a/app/services/bracket_advancement/advance_wrestler.rb b/app/services/bracket_advancement/advance_wrestler.rb index 1e69850..2c28aa5 100644 --- a/app/services/bracket_advancement/advance_wrestler.rb +++ b/app/services/bracket_advancement/advance_wrestler.rb @@ -14,6 +14,7 @@ class AdvanceWrestler end def advance_raw + @tournament.clear_errored_deferred_jobs if @last_match && @last_match.finished? pool_to_bracket_advancement if @tournament.tournament_type == "Pool to bracket" DoubleEliminationAdvance.new(@wrestler, @last_match).bracket_advancement if @tournament.tournament_type.include? "Modified 16 Man Double Elimination" or diff --git a/app/services/bracket_advancement/pool_order.rb b/app/services/bracket_advancement/pool_order.rb index 7ed4fd6..1dca298 100644 --- a/app/services/bracket_advancement/pool_order.rb +++ b/app/services/bracket_advancement/pool_order.rb @@ -29,6 +29,7 @@ class PoolOrder def setOriginalPoints @wrestlers.each do |w| + matches = w.matches.reload w.pool_placement_tiebreaker = nil w.pool_placement = nil w.poolAdvancePoints = w.pool_wins.size diff --git a/app/services/tournament_services/generate_tournament_matches.rb b/app/services/tournament_services/generate_tournament_matches.rb index fd50ddb..18a3f3d 100644 --- a/app/services/tournament_services/generate_tournament_matches.rb +++ b/app/services/tournament_services/generate_tournament_matches.rb @@ -12,6 +12,7 @@ class GenerateTournamentMatches end def generate_weight_raw(weight) + @tournament.clear_errored_deferred_jobs WipeTournamentMatches.new(@tournament).wipeWeightMatches(weight) @tournament.curently_generating_matches = 1 @tournament.save diff --git a/app/services/tournament_services/pool_to_bracket_match_generation.rb b/app/services/tournament_services/pool_to_bracket_match_generation.rb index 74ef1d3..c3e6dc6 100644 --- a/app/services/tournament_services/pool_to_bracket_match_generation.rb +++ b/app/services/tournament_services/pool_to_bracket_match_generation.rb @@ -2,14 +2,6 @@ class PoolToBracketMatchGeneration def initialize( tournament ) @tournament = tournament end - - def generatePoolToBracketMatchesWeight(weight) - PoolGeneration.new(weight).generatePools() - last_match = @tournament.matches.where(weight: weight).order(round: :desc).limit(1).first - highest_round = last_match.round - PoolBracketGeneration.new(weight, highest_round).generateBracketMatches() - setOriginalSeedsToWrestleLastPoolRound(weight) - end def generatePoolToBracketMatches @tournament.weights.order(:max).each do |weight| diff --git a/app/views/tournaments/_pool.html.erb b/app/views/tournaments/_pool.html.erb index 3a02e68..3b2029b 100644 --- a/app/views/tournaments/_pool.html.erb +++ b/app/views/tournaments/_pool.html.erb @@ -18,7 +18,7 @@
<% @wrestlers.select{|w| w.pool == @pool}.sort_by{|w| w.bracket_line}.each do |w| %>