From 81d8b9b9ed757b6199a5deb7d0d22f2bc8e912d6 Mon Sep 17 00:00:00 2001 From: iagirre Date: Thu, 16 Nov 2017 16:36:09 +0100 Subject: [PATCH 1/5] Admin menu added to management --- app/views/layouts/management.html.erb | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/app/views/layouts/management.html.erb b/app/views/layouts/management.html.erb index 4dc4aec12..3fcf83f6e 100644 --- a/app/views/layouts/management.html.erb +++ b/app/views/layouts/management.html.erb @@ -29,6 +29,19 @@ + <% if current_administrator? %> +
+ +
+ +
+ +
+ <% end %> From 7a7ae5fa2ee5285f832efba8e050aeeaeb5b8a02 Mon Sep 17 00:00:00 2001 From: iagirre Date: Fri, 17 Nov 2017 11:41:44 +0100 Subject: [PATCH 2/5] The admin menu is shown in the management section if the user who logged in is an admin --- app/controllers/management/base_controller.rb | 13 ++++++++++++- app/helpers/users_helper.rb | 4 ++-- app/views/layouts/management.html.erb | 8 ++++---- app/views/shared/_admin_login_items.html.erb | 2 +- 4 files changed, 19 insertions(+), 8 deletions(-) diff --git a/app/controllers/management/base_controller.rb b/app/controllers/management/base_controller.rb index bcebfebaa..c5d8edec3 100644 --- a/app/controllers/management/base_controller.rb +++ b/app/controllers/management/base_controller.rb @@ -6,6 +6,7 @@ class Management::BaseController < ActionController::Base helper_method :managed_user helper_method :current_user + helper_method :user_signed_in private @@ -22,7 +23,10 @@ class Management::BaseController < ActionController::Base end def managed_user - @managed_user ||= Verification::Management::ManagedUser.find(session[:document_type], session[:document_number]) + @managed_user ||= Verification::Management::ManagedUser.find( + session[:document_type], + session[:document_number] + ) end def check_verified_user(alert_msg) @@ -49,4 +53,11 @@ class Management::BaseController < ActionController::Base def clear_password session[:new_password] = nil end + + def user_signed_in + if current_manager + @user_signed_in = User.find(session[:manager]["login"].last(1)) + end + end + end diff --git a/app/helpers/users_helper.rb b/app/helpers/users_helper.rb index 980dd1e39..c0574f78a 100644 --- a/app/helpers/users_helper.rb +++ b/app/helpers/users_helper.rb @@ -52,8 +52,8 @@ module UsersHelper current_user && current_user.manager? end - def show_admin_menu? - current_administrator? || current_moderator? || current_valuator? || current_manager? + def show_admin_menu?(user = nil) + current_administrator? || current_moderator? || current_valuator? || current_manager? || user.administrator? end def interests_title_text(user) diff --git a/app/views/layouts/management.html.erb b/app/views/layouts/management.html.erb index 3fcf83f6e..9fc4f411f 100644 --- a/app/views/layouts/management.html.erb +++ b/app/views/layouts/management.html.erb @@ -29,14 +29,14 @@ - <% if current_administrator? %> + <% if user_signed_in.administrator? %>
diff --git a/app/views/shared/_admin_login_items.html.erb b/app/views/shared/_admin_login_items.html.erb index 3fbb34fcc..85407398a 100644 --- a/app/views/shared/_admin_login_items.html.erb +++ b/app/views/shared/_admin_login_items.html.erb @@ -1,4 +1,4 @@ -<% if show_admin_menu? %> +<% if show_admin_menu?(current_user) %>
  • <%= link_to t("layouts.header.administration_menu"), "#", rel: "nofollow", class: "hide-for-small-only" %>
  • - <% if user_signed_in.administrator? %> + <% if show_admin_menu?(manager_logged_in) %>
    From 6e238ae252a39258b97032dde74bab41ffda2c6f Mon Sep 17 00:00:00 2001 From: iagirre Date: Mon, 20 Nov 2017 09:39:57 +0100 Subject: [PATCH 5/5] Changed redirection when signing out from management section --- app/controllers/users/sessions_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/users/sessions_controller.rb b/app/controllers/users/sessions_controller.rb index 5605e3a00..d16f9c87e 100644 --- a/app/controllers/users/sessions_controller.rb +++ b/app/controllers/users/sessions_controller.rb @@ -11,7 +11,7 @@ class Users::SessionsController < Devise::SessionsController end def after_sign_out_path_for(resource) - request.referer.present? ? request.referer : super + request.referer.present? && !request.referer.match("management") ? request.referer : super end def verifying_via_email?