# frozen_string_literal: true module EuchreCamp module Actions module Admin module Players class Edit < EuchreCamp::Action include Deps[players_repo: 'repositories.players'] def handle(request, response) player_id = request.params[:id] player = players_repo.by_id(player_id) user = current_user(request) # Authorization: User can edit own profile, or admin can edit any unless authorize(request, response, :edit_own_profile, { id: player_id }) || authorize(request, response, :edit_any_record) return end render_with_player(request, response, player: player) end end end end end end