check.rb 561 B

12345678910111213141516171819202122
  1. module Blazer
  2. class Check < ActiveRecord::Base
  3. belongs_to :blazer_query, class_name: "Blazer::Query"
  4. def update_state(rows, error)
  5. self.state =
  6. if error
  7. "error"
  8. elsif rows.any?
  9. "failing"
  10. else
  11. "passing"
  12. end
  13. # do not notify on creation, except when not passing
  14. if (state_was || state != "passing") && state != state_was && emails.present?
  15. Blazer::CheckMailer.state_change(self, state, state_was, rows, error).deliver_later
  16. end
  17. save!
  18. end
  19. end
  20. end