1
0
mirror of https://github.com/jcwimer/wrestlingApp synced 2026-03-25 01:14:43 +00:00
Files
wrestlingdev.com/app/models/match.rb

90 lines
1.4 KiB
Ruby

class Match < ActiveRecord::Base
belongs_to :tournament
belongs_to :weight
belongs_to :mat
has_many :wrestlers, :through => :weight
after_save do
if self.finished == 1
advance_wrestlers
self.wrestler1.school.calcScore
self.wrestler2.school.calcScore
end
end
WIN_TYPES = ["Decision", "Major", "Tech Fall", "Pin", "Forfeit", "Injury Default", "Default", "DQ"]
def advance_wrestlers
if self.w1? && self.w2?
@w1 = wrestler1
@w2 = wrestler2
@w1.advanceInBracket
@w2.advanceInBracket
self.mat.assignNextMatch
end
end
def bracketScore
if self.finished != 1
return ""
end
if self.finished == 1
return "(#{self.score})"
end
end
def wrestler1
wrestlers.select{|w| w.id == self.w1}.first
end
def wrestler2
wrestlers.select{|w| w.id == self.w2}.first
end
def w1_name
if self.w1
wrestler1.name
else
self.loser1_name
end
end
def w2_name
if self.w2
wrestler2.name
else
self.loser2_name
end
end
def winnerName
if self.finished != 1
return ""
end
if self.winner_id == self.w1
return self.w1_name
end
if self.winner_id == self.w2
return self.w2_name
end
end
def weight_max
self.weight.max
end
def replaceLoserNameWithWrestler(w,loserName)
if self.loser1_name == loserName
self.w1 = w.id
self.save
end
if self.loser2_name == loserName
self.w2 = w.id
self.save
end
end
def poolNumber
if self.w1?
wrestler1.generatePoolNumber
end
end
end