Module: Authentasaurus::RecoveriesController::InstanceMethods
- Defined in:
- lib/authentasaurus/recoveries_controller.rb
Instance Method Summary collapse
Instance Method Details
#create ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/authentasaurus/recoveries_controller.rb', line 19 def create @recovery = Recovery.find_or_initialize_by_email :email => params[:email] if @recovery.new_record? @recovery.user = User.find_by_email @recovery.email end respond_to do |format| if @recovery.save @recovery.touch format.html { redirect_to new_session_path, :notice => t(:recovery_email_sent, :scope => [:authentasaurus, :messages, :recoveries], :email => @recovery.email) } else format.html {render :new} end end end |
#destroy ⇒ Object
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/authentasaurus/recoveries_controller.rb', line 49 def destroy @recovery = Recovery.find_by_token params[:token] @user = @recovery.user respond_to do |format| empty_fields = params[:user].select { |key, value| value.blank? } if !empty_fields.empty? empty_fields.each do |f| @user.errors.add_to_base t(:recovery_field_blank, :scope => [:authentasaurus, :messages, :recoveries], :field => f.first.humanize) end format.html { render :edit } elsif @user.update_attributes params[:user] @recovery.destroy format.html { redirect_to new_session_path, :notice => t(:recovery_successful, :scope => [:authentasaurus, :messages, :recoveries], :email => params[:email]) } else flash.now[:alert] = t(:recovery_failed, :scope => [:authentasaurus, :messages, :recoveries], :email => params[:email]) format.html { render :edit } end end end |
#edit ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/authentasaurus/recoveries_controller.rb', line 36 def edit @recovery = Recovery.valid.find_by_token(params[:token]) respond_to do |format| unless @recovery.nil? @user = @recovery.user format.html else format.html { redirect_to new_session_path, :alert => t(:recovery_failed, :scope => [:authentasaurus, :messages, :recoveries], :email => params[:email]) } end end end |
#new ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/authentasaurus/recoveries_controller.rb', line 11 def new @recovery = Recovery.new respond_to do |format| format.html end end |