Class: Devise::ChallengeQuestionsController
- Inherits:
-
ApplicationController
- Object
- ApplicationController
- Devise::ChallengeQuestionsController
- Includes:
- Devise::Controllers::InternalHelpers
- Defined in:
- app/controllers/devise/challenge_questions_controller.rb
Instance Method Summary collapse
- #authenticate ⇒ Object
-
#create ⇒ Object
POST /resource/challenge_question.
-
#edit ⇒ Object
GET /resource/challenge_question/edit?reset_challenge_questions_token=abcdef.
- #forgot ⇒ Object
-
#manage ⇒ Object
Build token and redirect.
- #max_challenge_question_attempts_reached ⇒ Object
-
#new ⇒ Object
GET /resource/challenge_question/new.
-
#show ⇒ Object
GET /resource/challenge_question.
-
#update ⇒ Object
PUT /resource/challenge_question.
Instance Method Details
#authenticate ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'app/controllers/devise/challenge_questions_controller.rb', line 53 def authenticate build_challenge_questions if @challenge_questions.present? && challenge_questions_authenticated? challenge_questions_authenticated else set_failed_attempt if resource.max_challenge_question_attempts? max_failed_attempts else failed_attempts end end end |
#create ⇒ Object
POST /resource/challenge_question
14 15 16 17 18 19 20 21 22 |
# File 'app/controllers/devise/challenge_questions_controller.rb', line 14 def create self.resource = resource_class.send_reset_challenge_questions_instructions(params[resource_name]) if resource.errors.empty? :notice, :send_instructions redirect_to new_session_path(resource_name) else render_with_scope :new end end |
#edit ⇒ Object
GET /resource/challenge_question/edit?reset_challenge_questions_token=abcdef
25 26 27 28 29 30 |
# File 'app/controllers/devise/challenge_questions_controller.rb', line 25 def edit self.resource = resource_class.new resource.reset_challenge_questions_token = params[:reset_challenge_questions_token] Devise.number_of_challenge_questions_stored.times { resource.send("#{resource_name}_challenge_questions").build } render_with_scope :edit end |
#forgot ⇒ Object
74 75 76 77 |
# File 'app/controllers/devise/challenge_questions_controller.rb', line 74 def forgot sign_out(resource) redirect_to new_challenge_question_path(resource_name) end |
#manage ⇒ Object
Build token and redirect
68 69 70 71 72 |
# File 'app/controllers/devise/challenge_questions_controller.rb', line 68 def manage resource.set_reset_challenge_questions_token sign_out(resource) redirect_to edit_challenge_question_path(resource, :reset_challenge_questions_token => resource.reset_challenge_questions_token) end |
#max_challenge_question_attempts_reached ⇒ Object
79 80 |
# File 'app/controllers/devise/challenge_questions_controller.rb', line 79 def max_challenge_question_attempts_reached end |
#new ⇒ Object
GET /resource/challenge_question/new
8 9 10 11 |
# File 'app/controllers/devise/challenge_questions_controller.rb', line 8 def new build_resource render_with_scope :new end |
#show ⇒ Object
GET /resource/challenge_question
45 46 47 48 49 50 51 |
# File 'app/controllers/devise/challenge_questions_controller.rb', line 45 def show @challenge_questions = resource.send("#{resource_name}_challenge_questions").sample(params[:limit].try(:to_i) || Devise.number_of_challenge_questions_asked) respond_to do |format| format.html { render_with_scope :show } format.json { render :json => @challenge_questions.as_json(:only => [:id, :challenge_question]) } end end |
#update ⇒ Object
PUT /resource/challenge_question
33 34 35 36 37 38 39 40 41 42 |
# File 'app/controllers/devise/challenge_questions_controller.rb', line 33 def update self.resource = resource_class.reset_challenge_questions_by_token(params[resource_name]) if resource.errors.empty? :notice, :updated_challenge_questions redirect_to :root else render_with_scope :edit end end |