2015-01-29 21:45:26 +01:00

37 lines
889 B
Ruby

class Order < ActiveRecord::Base
validates :name, :presence => true
validates :firstname, :presence => true
validates :street1, :presence => true
validates :cityname, :presence => true
validates :country, :presence => true
validates :email, :presence => true, :format => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i
has_many :order_products, :dependent => :destroy
#validates :cgv,:acceptance => {:message => "Vous devez accepter les conditions générales de vente."}
attr_accessor :cgv
before_save do
self.total = 0.0
self.order_products.each do |order_product|
self.total = self.total + order_product.price.to_d
end
end
before_create do
self.generate_token
end
def generate_token
begin
self[:token] = SecureRandom.urlsafe_base64
end while Order.exists?(:token => self[token])
end
end