Guest User

Untitled

a guest
Oct 18th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.87 KB | None | 0 0
  1. before_validation :parse_dates
  2. validate :ends_at_is_after_starts_at, :dates_are_valid
  3. attr_accessor :starts_at_date, :starts_at_time, :ends_at_date, :ends_at_time
  4.  
  5. def parse_dates
  6. self.starts_at = Chronic.parse(starts_at_date + " " + starts_at_time)
  7. self.ends_at = Chronic.parse(ends_at_date + " " + ends_at_time)
  8. end
  9.  
  10. def dates_are_valid
  11. errors.add(:starts_at_date, " is invalid") if !Chronic.parse(starts_at_date)
  12. errors.add(:starts_at_time, " is invalid") if !Chronic.parse(starts_at_time)
  13. errors.add(:ends_at_date, " is invalid") if !Chronic.parse(ends_at_date)
  14. errors.add(:ends_at_time, " is invalid") if !Chronic.parse(ends_at_time)
  15. end
  16.  
  17. def ends_at_is_after_starts_at
  18. unless ends_at.nil? or starts_at.nil?
  19. errors.add(:ends_at, " can't be before Starts At time, McFly.") if ends_at < starts_at
  20. end
  21. end
Add Comment
Please, Sign In to add comment