Sha256: 3adc8a59b0aae1c0d402eedb0c5079bbe4fbff653e1791eb3427536d0c205f09
Contents?: true
Size: 1.22 KB
Versions: 2
Compression:
Stored size: 1.22 KB
Contents
class User < ActiveRecord::Base has_secure_password # associations connected to tkh_content gem. Any page or comment model will do has_many :pages has_many :comments, :dependent => :destroy # not allowed are :admin:boolean, :auth_token:string, password_reset_token:string, password_reset_sent_at:datetime attr_accessible :email, :password, :password_confirmation, :first_name, :last_name validates_presence_of :email validates_uniqueness_of :email, :case_sensitive => false validates_presence_of :password, on: :create validates_presence_of :first_name validates_presence_of :last_name before_create { generate_token(:auth_token) } # use the stringex gem to create slug | usually on the title or name attribute def to_param "#{id}-#{name.to_url}" end scope :by_recent, :order => 'updated_at desc' def name result = "#{first_name} #{last_name}".strip end def send_password_reset generate_token(:password_reset_token) self.password_reset_sent_at = Time.zone.now save! UserMailer.password_reset(self).deliver end def generate_token(column) begin self[column] = SecureRandom.urlsafe_base64 end while User.exists?(column => self[column]) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
tkh_authentication-0.1.5 | app/models/user.rb |
tkh_authentication-0.1.3 | app/models/user.rb |