mirror of
https://github.com/jcwimer/wrestlingApp
synced 2026-03-25 01:14:43 +00:00
56 lines
1.5 KiB
Ruby
56 lines
1.5 KiB
Ruby
class SwapWrestlers
|
|
attr_accessor :wrestler1_id, :wrestler2_id
|
|
|
|
|
|
def swap_wrestlers_bracket_lines(wrestler1_id,wrestler2_id)
|
|
w1 = Wrestler.find(wrestler1_id)
|
|
w2 = Wrestler.find(wrestler2_id)
|
|
weight_matches = w1.weight.matches
|
|
|
|
#placeholder guy
|
|
w3 = Wrestler.new
|
|
w3.weight_id = w1.weight_id
|
|
w3.original_seed = w1.original_seed
|
|
w3.bracket_line = w1.bracket_line
|
|
w3.pool = w1.pool
|
|
weight_matches = swapWrestlerMatches(weight_matches,w1.id,w3.id)
|
|
|
|
#Swap wrestler 1 and wrestler 2
|
|
weight_matches = swapWrestlerMatches(weight_matches,w2.id,w1.id)
|
|
w1.bracket_line = w2.bracket_line
|
|
w1.pool = w2.pool
|
|
|
|
|
|
weight_matches = swapWrestlerMatches(weight_matches,w3.id,w2.id)
|
|
w2.bracket_line = w3.bracket_line
|
|
w2.pool = w3.pool
|
|
|
|
save_matches(weight_matches)
|
|
w1.save
|
|
w2.save
|
|
end
|
|
|
|
def save_matches(matches)
|
|
matches.each do |match|
|
|
match.save
|
|
end
|
|
end
|
|
|
|
def swapWrestlerMatches(matchesToSwap,from_id,to_id)
|
|
matchesToSwap.select{|m| m.w1 == from_id or m.w2 == from_id}.each do |m|
|
|
# if m.bracket_position == "Pool" or (m.bracket_position == "Bracket" and m.round == 1)
|
|
if m.w1 == from_id
|
|
m.w1 = to_id
|
|
elsif m.w2 == from_id
|
|
m.w2 = to_id
|
|
end
|
|
if m.winner_id == from_id
|
|
m.winner_id = to_id
|
|
end
|
|
# m.save
|
|
# end
|
|
end
|
|
return matchesToSwap
|
|
end
|
|
end
|