diff --git a/app/controllers/competitions/certificates_controller.rb b/app/controllers/competitions/certificates_controller.rb index 68dad41c1..7572d8bbb 100644 --- a/app/controllers/competitions/certificates_controller.rb +++ b/app/controllers/competitions/certificates_controller.rb @@ -1,6 +1,11 @@ class Competitions::CertificatesController < Competitions::BaseController def personal - prize_user = CompetitionPrizeUser.find_by!(user: current_user, id: params[:id]) + prize_user = + if current_user.admin_or_business? + CompetitionPrizeUser.find(params[:id]) + else + CompetitionPrizeUser.find_by!(user: current_user, id: params[:id]) + end return render_not_found unless prize_user.certificate_exist? team = prize_user.competition_team @@ -12,7 +17,7 @@ class Competitions::CertificatesController < Competitions::BaseController def team team = CompetitionTeam.find(params[:id]) - return render_forbidden unless team.team_members.exists?(user_id: current_user.id) + return render_forbidden unless current_user.admin_or_business? || team.team_members.exists?(user_id: current_user.id) return render_not_found unless team.certificate_exists? prize = team.competition_prize_users.first.competition_prize