34 lines
1.4 KiB
Ruby
34 lines
1.4 KiB
Ruby
require 'ipaddr'
|
|
|
|
module JamRuby
|
|
class Score < ActiveRecord::Base
|
|
|
|
self.table_name = 'scores'
|
|
|
|
attr_accessible :alocidispid, :anodeid, :aaddr, :blocidispid, :bnodeid, :baddr, :score, :score_dt, :scorer
|
|
|
|
default_scope order('score_dt desc')
|
|
|
|
def self.createx(alocidispid, anodeid, aaddr, blocidispid, bnodeid, baddr, score, score_dt=nil)
|
|
score_dt = Time.new.utc if score_dt.nil?
|
|
Score.create(alocidispid: alocidispid, anodeid: anodeid, aaddr: aaddr, blocidispid: blocidispid, bnodeid: bnodeid, baddr: baddr, score: score, scorer: 0, score_dt: score_dt)
|
|
Score.create(alocidispid: blocidispid, anodeid: bnodeid, aaddr: baddr, blocidispid: alocidispid, bnodeid: anodeid, baddr: aaddr, score: score, scorer: 1, score_dt: score_dt) if alocidispid != blocidispid
|
|
end
|
|
|
|
def self.deletex(alocidispid, blocidispid)
|
|
Score.where(alocidispid: alocidispid, blocidispid: blocidispid).delete_all
|
|
Score.where(alocidispid: blocidispid, blocidispid: alocidispid).delete_all if alocidispid != blocidispid
|
|
end
|
|
|
|
def self.findx(alocidispid, blocidispid)
|
|
s = Score.where(alocidispid: alocidispid, blocidispid: blocidispid).first
|
|
return -1 if s.nil?
|
|
return s.score
|
|
end
|
|
|
|
def self.score_conns(c1, c2, score)
|
|
self.createx(c1.locidispid, c1.client_id, c1.addr, c2.locidispid, c2.client_id, c2.addr, score)
|
|
end
|
|
end
|
|
end
|