Guest User

Untitled

a guest
Jun 22nd, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. class User < ActiveRecord::Base
  2.  
  3. @@per_page = 20
  4. @@maximum_number_of_seelies = 5
  5.  
  6. cattr_reader :per_page,
  7. :maximum_number_of_seelies
  8.  
  9. acts_as_authentic
  10.  
  11. has_many :seelies, :class_name => "Seelie", :dependent => :destroy
  12.  
  13. validates_presence_of :login, :password, :password_confirmation
  14.  
  15. validates_length_of :login,
  16. :in => 3..20,
  17. :too_long => "Ce nom ne doit pas excéder {{count}} carctères.",
  18. :too_short => "Ce nom doit contenir plus de {{count}} caractères."
  19.  
  20. validates_format_of :login,
  21. :with => /^[a-zA-Z-]+$/,
  22. :message => "Ce nom doit être composé de caractères alphabétiques simples."
  23.  
  24. validates_format_of :email,
  25. :with => /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
  26.  
  27. # Reserved names
  28. validates_exclusion_of :login,
  29. :in => [ "admin", "flight", "show", "index", "edit", "update", "create" ],
  30. :message => "Le nom {{value}} n'est pas autorisé."
  31.  
  32. attr_accessor :active_seelie
  33. attr_accessible :login, :email, :password, :password_confirmation
  34.  
  35. def can_create_seelies?
  36. return true if self.seelies.count < User.maximum_number_of_seelies
  37. false
  38. end
  39.  
  40. def active_seelie
  41. self.seelies.first(:conditions => { :is_active => true })
  42. end
  43.  
  44. def has_active_seelie?
  45. return true unless self.active_seelie.nil?
  46. false
  47. end
  48.  
  49. def to_s
  50. self.login
  51. end
  52.  
  53. end
Add Comment
Please, Sign In to add comment