move /review to /admin/results
This commit is contained in:
21
app/controllers/admin/result_controller.rb
Normal file
21
app/controllers/admin/result_controller.rb
Normal file
@ -0,0 +1,21 @@
|
||||
# frozen_string_literal: true
|
||||
module Admin
|
||||
class ResultController < AdminController
|
||||
#
|
||||
# TODO: change context from Candidate to Quiz
|
||||
# bypass pundit lockdowns until completed
|
||||
after_action :skip_policy_scope
|
||||
after_action :skip_authorization
|
||||
#
|
||||
|
||||
def index
|
||||
@candidates = Candidate.where(completed: true).includes(:recruiter)
|
||||
end
|
||||
|
||||
def view
|
||||
@candidate = Candidate.find_by(test_hash: params[:test_hash])
|
||||
@quiz = @candidate.my_quiz
|
||||
@status = QuizStatus.new(@candidate)
|
||||
end
|
||||
end
|
||||
end
|
@ -1,34 +0,0 @@
|
||||
# frozen_string_literal: true
|
||||
class ReviewController < ApplicationController
|
||||
before_action :authorize_reviewer, except: [:login, :auth]
|
||||
|
||||
def index
|
||||
@candidates = Candidate.where(completed: true).includes(:recruiter)
|
||||
end
|
||||
|
||||
def view
|
||||
@candidate = Candidate.find_by(test_hash: params[:test_hash])
|
||||
@quiz = @candidate.my_quiz
|
||||
@status = QuizStatus.new(@candidate)
|
||||
end
|
||||
|
||||
def login
|
||||
redirect_to review_path unless current_reviewer.nil?
|
||||
end
|
||||
|
||||
def auth
|
||||
reviewer = User.find_by(email: auth_params[:email], role: %w(admin reviewer))
|
||||
|
||||
if reviewer && reviewer.authenticate(auth_params[:password])
|
||||
session[:user] = reviewer.to_i
|
||||
redirect_to review_path
|
||||
else
|
||||
redirect_to review_login_path, flash: { error: "Sorry, incorrect email or password. Please try again." }
|
||||
end
|
||||
end
|
||||
|
||||
def logout
|
||||
reset_session
|
||||
redirect_to review_login_path
|
||||
end
|
||||
end
|
@ -10,7 +10,7 @@
|
||||
|
||||
<% @candidates.each do |candidate| %>
|
||||
<tr>
|
||||
<td><%= link_to candidate.test_hash, review_test_path(candidate.test_hash) %></td>
|
||||
<td><%= link_to candidate.test_hash, admin_result_path(candidate.test_hash) %></td>
|
||||
<td><%= candidate.experience %> years</td>
|
||||
<td><%= mail_to(candidate.recruiter.email) %></td>
|
||||
</tr>
|
@ -27,7 +27,7 @@
|
||||
<% end #form_tag %>
|
||||
<% end #questions loop %>
|
||||
|
||||
<%= link_to(review_path, { class: 'secondary-btn' }) do %>
|
||||
<%= link_to(admin_results_path, { class: 'secondary-btn' }) do %>
|
||||
<button>Back to list</button>
|
||||
<% end %>
|
||||
</main>
|
@ -1,21 +0,0 @@
|
||||
<main class="intro_tpl">
|
||||
<h1>Reviewer Login</h1>
|
||||
|
||||
<% if flash[:error].present? %>
|
||||
<div class="error"><%= flash[:error] %></div>
|
||||
<% end %>
|
||||
|
||||
<%= form_for :auth, url: review_login_path do |form| %>
|
||||
<div class="form-group">
|
||||
<%= form.label :email %>
|
||||
<%= form.email_field :email %>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<%= form.label :password %>
|
||||
<%= form.password_field :password %>
|
||||
</div>
|
||||
|
||||
<%= submit_tag "Login" %>
|
||||
<% end %>
|
||||
</main>
|
@ -1,6 +1,6 @@
|
||||
<row>
|
||||
<columns class="email-body">
|
||||
<p>Candidate <strong><%= @candidate.test_hash %></strong> has completed the Skills Assessment Test.</p>
|
||||
<p>You can view the results here: <%= link_to nil, review_test_url(@candidate.test_hash) %>.</p>
|
||||
<p>You can view the results here: <%= link_to nil, admin_result_url(@candidate.test_hash) %>.</p>
|
||||
</columns>
|
||||
</row>
|
||||
</row>
|
||||
|
@ -2,4 +2,4 @@ PERFICIENT/digital SKILLS ASSESSMENT RESULTS
|
||||
|
||||
Candidate <%= @candidate.test_hash %> has completed the Skills Assessment Test.
|
||||
|
||||
You can view the results here: <%= review_test_url(@candidate.test_hash) %>.
|
||||
You can view the results here: <%= admin_result_url(@candidate.test_hash) %>.
|
||||
|
Reference in New Issue
Block a user