class ForumUser < ActiveRecord::Base #attr_accessible :bio, :email, :firstname, :name, :password, :password_confirmation, :avatar, :moderator has_secure_password validates_presence_of :password, :on => :create validates :email, :presence => true, :uniqueness => true, :format => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i validates :name, :presence => true validates :firstname, :presence => true mount_uploader :avatar, AvatarUploader has_many :messages, :class_name => "ForumMessage" has_many :topics, :class_name => "ForumTopic" has_many :images, :class_name => "ForumUserImage", :order => "created_at DESC" belongs_to :sheet before_validation do if sheet_number? @sheet = Sheet.where(:sheet_number => sheet_number).first if !@sheet errors.add :sheet_number, "Votre numéro adhérent n'est pas valide." else self.sheet_id = @sheet.id if @sheet.last_year < Date.today.year errors.add :sheet_number, "Votre cotisation n'est pas à jour, merci de nous contacter." end end else errors.add :sheet_number, "Vous devez saisir votre numéro adhérent (présent en bas de chaque mails)." end end end