Got an iPhone or iPad? We have a brand new Pastebin App for both devices, and it's totally free! Click here to download the new Pastebin App for iOS.
Guest

Untitled

By: a guest on Feb 5th, 2012  |  syntax: None  |  size: 1.11 KB  |  hits: 48  |  expires: Never
download  |  raw  |  embed  |  report abuse
Copied
  1. lifecycle do
  2.    
  3.     state :active
  4.     state :inactive, :default => true
  5.    
  6.     create :signup, :available_to => "Guest",
  7.       :params => [:name, :email_address, :password, :password_confirmation],
  8.       :new_key => true, :become => :inactive do
  9.       UserMailer.send_later(:deliver_account_activation, self, lifecycle.key)
  10.     end
  11.    
  12.     transition :activate_account, { :inactive => :active }, :available_to => :key_holder
  13.    
  14.     # resend activation, issued by guest
  15.     transition :request_password_reset,
  16.       { :inactive => :inactive },
  17.       :available_to => 'Guest',
  18.       :new_key => true do
  19.       UserMailer.send_later(:deliver_activation, self, lifecycle.key)
  20.     end
  21.    
  22.     # deliver forgotten password
  23.     transition :request_password_reset,
  24.       { :active => :active },
  25.       :available_to => 'Guest',
  26.       :new_key => true do
  27.       UserMailer.send_later(:deliver_forgot_password, self, lifecycle.key)
  28.     end
  29.    
  30.     # do the actual reset
  31.     transition :reset_password,
  32.       { :active => :active },
  33.       :available_to => :key_holder,
  34.       :params => [ :password, :password_confirmation ]
  35.    
  36.   end