diff --git a/app/controllers/concerns/toggle_award_emoji.rb b/app/controllers/concerns/toggle_award_emoji.rb index b343bb611e09283c883cf07c033c8a999bf21908..172d5344b7a1594bd096b6291616f2d728451eb9 100644 --- a/app/controllers/concerns/toggle_award_emoji.rb +++ b/app/controllers/concerns/toggle_award_emoji.rb @@ -8,12 +8,14 @@ module ToggleAwardEmoji def toggle_award_emoji name = params.require(:name) - return render json: { ok: false } unless awardable.user_can_award?(current_user, name) + if awardable.user_can_award?(current_user, name) + awardable.toggle_award_emoji(name, current_user) + TodoService.new.new_award_emoji(to_todoable(awardable), current_user) - awardable.toggle_award_emoji(name, current_user) - TodoService.new.new_award_emoji(to_todoable(awardable), current_user) - - render json: { ok: true } + render json: { ok: true } + else + render json: { ok: false } + end end private diff --git a/app/models/concerns/awardable.rb b/app/models/concerns/awardable.rb index e25420c0edf1792e90df2e8fac9edf23bbcc93e5..83f5bc1fa9eef903aecb397243c78268e4388978 100644 --- a/app/models/concerns/awardable.rb +++ b/app/models/concerns/awardable.rb @@ -64,8 +64,11 @@ module Awardable end def user_can_award?(current_user, name) - name = normalize_name(name) - !(self.user_authored?(current_user) && awardable_votes?(name)) + if user_authored?(current_user) + !awardable_votes?(normalize_name(name)) + else + true + end end def awarded_emoji?(emoji_name, current_user)