Guest User

Untitled

a guest
Mar 17th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.64 KB | None | 0 0
  1. class Table
  2. # Checks if the table is available for a given time range.
  3. #
  4. # @param [Hash(Symbol => DateTime)] params
  5. #
  6. def available_at?(params)
  7. if (params[:at].class != DateTime); raise ArgumentError, "Provide a DateTime for :at";end;
  8. if (params[:ending].class != DateTime); raise ArgumentError, "Provide a DateTime for :ending";end;
  9.  
  10. return false if
  11. (TableBooking.all(:at.lte => params[:at], :ending.gte => params[:ending]) +
  12. TableBooking.all(:at.gte => params[:at], :at.lte => params[:ending]) +
  13. TableBooking.all(:ending.gte => params[:at], :ending.lte => params[:ending])).count > 0
  14. true
  15. end
  16.  
  17. end
Add Comment
Please, Sign In to add comment