X-Git-Url: https://irasnyder.com/gitweb/?a=blobdiff_plain;f=app%2Fmodels%2Fpurchase.rb;h=0f018131b54b6315dec82eb9f20ce5992c856fcc;hb=refs%2Ftags%2Fturned-in;hp=e688f99b8de4e7e46efe16f0afa76f108e032227;hpb=51e5c301fa78679232f16b450632fc890c02c4f2;p=cs356-p2-videostore.git diff --git a/app/models/purchase.rb b/app/models/purchase.rb index e688f99..0f01813 100644 --- a/app/models/purchase.rb +++ b/app/models/purchase.rb @@ -1,2 +1,28 @@ class Purchase < ActiveRecord::Base + belongs_to :customer + + validates_presence_of :customer_id + validates_presence_of :date + validates_presence_of :price + validates_numericality_of :price + + def title + if self.class == MerchandisePurchase + return merchandise.title + elsif self.class == RentablePurchase + return rentable.title + elsif self.class == BonusPurchase + return rentable.title + else + return 'Late Fees' + end + end + + protected + def validate + errors.add(:price, "cannot be negative") if price < 0 + # Need to leave this out for bonuses + #errors.add(:price, "cannot be less than $0.01") if price < 0.01 + errors.add(:customer_id, "does not exist in the database") if customer.nil? + end end