qi6_app/app/models/particular.rb
2019-05-17 12:30:45 +02:00

57 lines
1.7 KiB
Ruby

class Particular < ApplicationRecord
has_many :p_contacts, :as => :contactable, :dependent => :destroy
accepts_nested_attributes_for :p_contacts, allow_destroy: true
belongs_to :owner, :polymorphic => true
validates :name, :presence => true, :if => :force_validation
validates :firstname, :presence => true, :if => :force_validation
validates :email, :presence => true, :format => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i, :if => :force_email_validation
validates :address_2, :presence => true, :if => :force_validation
validates :cp, :presence => true, :if => :force_validation
validates :city, :presence => true, :if => :force_validation
validates :country, :presence => true, :if => :force_validation
validates :tel, :presence => true, :if => :force_validation
validates :organisation, :presence => true, :if => :validate_pro
attr_accessor :validate_email, :skip_email
def validate_pro
true if self.force_validation and self.pro
end
def force_email_validation
true if (self.validate_email or self.force_validation) and !skip_email
end
def force_validation
if true
false
else
if self.skip_validation
false
else
true
end
end
end
def address_longue
address_2.to_s + " " + address_3.to_s
end
def address_line
r = ""
r+= self.organisation+" " if self.organisation?
r+= self.name+" " if self.name?
r+= self.firstname+" " if self.name?
r+= self.address_1+" " if self.address_1?
r+= self.address_2+" " if self.address_2?
r+= self.address_3+" " if self.address_3?
r+= self.cp+" " if self.cp?
r+= self.city+" " if self.city?
return r
end
end