mirror of
https://github.com/redmine/redmine.git
synced 2025-10-26 07:46:17 +01:00
Improve method and variable naming for clarity and consistency (#42630).
Patch by Katsuya HIDAKA (user:hidakatsuya). git-svn-id: https://svn.redmine.org/redmine/trunk@23769 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -60,6 +60,6 @@ class ReactionsController < ApplicationController
|
||||
end
|
||||
|
||||
def authorize_reactable
|
||||
render_403 unless Redmine::Reaction.writable?(@object, User.current)
|
||||
render_403 unless Redmine::Reaction.editable?(@object, User.current)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -26,15 +26,15 @@ module ReactionsHelper
|
||||
|
||||
detail = object.reaction_detail
|
||||
|
||||
reaction = detail.user_reaction
|
||||
user_reaction = detail.user_reaction
|
||||
count = detail.reaction_count
|
||||
visible_user_names = detail.visible_users.take(DISPLAY_REACTION_USERS_LIMIT).map(&:name)
|
||||
|
||||
tooltip = build_reaction_tooltip(visible_user_names, count)
|
||||
|
||||
if Redmine::Reaction.writable?(object, User.current)
|
||||
if reaction&.persisted?
|
||||
reaction_button_reacted(object, reaction, count, tooltip)
|
||||
if Redmine::Reaction.editable?(object, User.current)
|
||||
if user_reaction.present?
|
||||
reaction_button_reacted(object, user_reaction, count, tooltip)
|
||||
else
|
||||
reaction_button_not_reacted(object, count, tooltip)
|
||||
end
|
||||
|
||||
@@ -22,13 +22,13 @@ module Redmine
|
||||
# Types of objects that can have reactions
|
||||
REACTABLE_TYPES = %w(Journal Issue Message News Comment)
|
||||
|
||||
# Returns true if the user can view the reaction information of the object
|
||||
# Returns true if the user can view the reaction of the object
|
||||
def self.visible?(object, user = User.current)
|
||||
Setting.reactions_enabled? && object.visible?(user)
|
||||
end
|
||||
|
||||
# Returns true if the user can add/remove a reaction to/from the object
|
||||
def self.writable?(object, user = User.current)
|
||||
def self.editable?(object, user = User.current)
|
||||
user.logged? && visible?(object, user) && object&.project&.active?
|
||||
end
|
||||
|
||||
|
||||
@@ -149,7 +149,7 @@ class Redmine::ReactionTest < ActiveSupport::TestCase
|
||||
assert_not Redmine::Reaction.visible?(object, user)
|
||||
end
|
||||
|
||||
test 'writable? returns true for various reactable objects when user is logged in, object is visible, and project is active' do
|
||||
test 'editable? returns true for various reactable objects when user is logged in, object is visible, and project is active' do
|
||||
reactable_objects = {
|
||||
issue: issues(:issues_007),
|
||||
message: messages(:messages_001),
|
||||
@@ -160,30 +160,30 @@ class Redmine::ReactionTest < ActiveSupport::TestCase
|
||||
user = users(:users_002)
|
||||
|
||||
reactable_objects.each do |type, object|
|
||||
assert Redmine::Reaction.writable?(object, user), "Expected writable? to return true for #{type}"
|
||||
assert Redmine::Reaction.editable?(object, user), "Expected editable? to return true for #{type}"
|
||||
end
|
||||
end
|
||||
|
||||
test 'writable? returns false when user is not logged in' do
|
||||
test 'editable? returns false when user is not logged in' do
|
||||
object = issues(:issues_007)
|
||||
user = User.anonymous
|
||||
|
||||
assert_not Redmine::Reaction.writable?(object, user)
|
||||
assert_not Redmine::Reaction.editable?(object, user)
|
||||
end
|
||||
|
||||
test 'writable? returns false when project is inactive' do
|
||||
test 'editable? returns false when project is inactive' do
|
||||
object = issues(:issues_007)
|
||||
user = users(:users_002)
|
||||
object.project.update!(status: Project::STATUS_ARCHIVED)
|
||||
|
||||
assert_not Redmine::Reaction.writable?(object, user)
|
||||
assert_not Redmine::Reaction.editable?(object, user)
|
||||
end
|
||||
|
||||
test 'writable? returns false when project is closed' do
|
||||
test 'editable? returns false when project is closed' do
|
||||
object = issues(:issues_007)
|
||||
user = users(:users_002)
|
||||
object.project.update!(status: Project::STATUS_CLOSED)
|
||||
|
||||
assert_not Redmine::Reaction.writable?(object, user)
|
||||
assert_not Redmine::Reaction.editable?(object, user)
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user