blob: d62d4135cf6dbf7dfda8c6034df4c1a9f4c09067 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
class Statistic < ActiveRecord::Base
belongs_to :user
belongs_to :match
validates(:name, presence: true, length: { minimum: 1 })
def value
begin
return JSON::restore(self.json_value)
rescue
return {}
end
end
def value=(v)
self.json_value = v.to_json
end
after_save :update_match
def update_match
ActiveRecord::Base.transaction do
if (self.name == "win") and (self.value)
self.match.winner = self.match.teams.find{|t| t.users.include? self.user}
end
if (self.match.status == 2) and (self.match.finished?)
#self.match.tournament_stage.scoring.score(self.match)
self.match.status = 3
end
self.match.save!
end
end
end
|