Files
euchre_camp/app/actions/admin/players/edit.rb
T

28 lines
774 B
Ruby

# 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