diff --git a/app/controllers/admin/accounts_controller.rb b/app/controllers/admin/accounts_controller.rb new file mode 100644 index 0000000..51c9f01 --- /dev/null +++ b/app/controllers/admin/accounts_controller.rb @@ -0,0 +1,21 @@ +# frozen_string_literal: true + +module Admin + class AccountsController < ApplicationController + prepend_before_action :authenticate_account! + before_action :require_admin! + + def search + @query = params[:q] + @account = Account.find_by(email: @query) if @query.present? + end + + private + + def require_admin! + return if current_account&.admin? + + redirect_to root_path, alert: 'Access denied.' + end + end +end diff --git a/app/views/admin/accounts/search.html.erb b/app/views/admin/accounts/search.html.erb new file mode 100644 index 0000000..60ca7e8 --- /dev/null +++ b/app/views/admin/accounts/search.html.erb @@ -0,0 +1,96 @@ +
Search for an account by email address
+<%= @account.name %>
+<%= @account.email %>
+@<%= @account.slug %>
++ No account found for <%= @query %> +
+