module PunchingBag

Constants

VERSION

Public Class Methods

average_time(*punches) click to toggle source
# File lib/punching_bag.rb, line 17
def self.average_time(*punches)
  total_time = 0
  hits = 0
  punches.each do |punch|
    total_time += punch.average_time.to_f * punch.hits
    hits += punch.hits
  end
  Time.zone.at(total_time / hits)
end
punch(punchable, request = nil, count = 1) click to toggle source
# File lib/punching_bag.rb, line 6
def self.punch(punchable, request = nil, count = 1)
  if request.try(:bot?)
    false
  else
    p = Punch.new
    p.punchable = punchable
    p.hits = count
    p.save ? p : false
  end
end