summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Greiling <mike@pixelcog.com>2017-08-30 14:37:08 -0500
committerMike Greiling <mike@pixelcog.com>2017-08-30 14:37:08 -0500
commit6cad21efbe25ffe1c0a3a153a25ed9601b50c427 (patch)
tree0d54fc770aa34378b84bdb4a95483788ba698525
parentb9b0b37b3695d5925c3ba6cd90cdefcc3c67ba6e (diff)
downloadgitlab-ce-6cad21efbe25ffe1c0a3a153a25ed9601b50c427.tar.gz
revert changes to visibility level helpers from 6f03ddc
-rw-r--r--app/helpers/visibility_level_helper.rb10
-rw-r--r--app/models/group.rb6
-rw-r--r--app/models/project.rb6
-rw-r--r--lib/gitlab/visibility_level.rb18
4 files changed, 10 insertions, 30 deletions
diff --git a/app/helpers/visibility_level_helper.rb b/app/helpers/visibility_level_helper.rb
index caadc12019c..a13127a6365 100644
--- a/app/helpers/visibility_level_helper.rb
+++ b/app/helpers/visibility_level_helper.rb
@@ -82,11 +82,11 @@ module VisibilityLevelHelper
reasons = []
unless project.visibility_level_allowed_as_fork?(level)
- reasons << project.visibility_error_for(:fork, level: level_name)
+ reasons << "the fork source project has lower visibility"
end
unless project.visibility_level_allowed_by_group?(level)
- reasons << project.visibility_error_for(:group, level: level_name, group_level: project.group.visibility)
+ reasons << "the visibility of #{project.group.name} is #{project.group.visibility}"
end
reasons = reasons.any? ? ' because ' + reasons.to_sentence : ''
@@ -98,15 +98,15 @@ module VisibilityLevelHelper
reasons = []
unless group.visibility_level_allowed_by_projects?(level)
- reasons << group.visibility_error_for(:projects, level: level_name)
+ reasons << "it contains projects with higher visibility"
end
unless group.visibility_level_allowed_by_sub_groups?(level)
- reasons << group.visibility_error_for(:sub_groups, level: level_name)
+ reasons << "it contains sub-groups with higher visibility"
end
unless group.visibility_level_allowed_by_parent?(level)
- reasons << group.visibility_error_for(:parent, level: level_name, parent_level: group.parent.visibility)
+ reasons << "the visibility of its parent group is #{group.parent.visibility}"
end
reasons = reasons.any? ? ' because ' + reasons.to_sentence : ''
diff --git a/app/models/group.rb b/app/models/group.rb
index 0e6d88f6a91..3778b832a47 100644
--- a/app/models/group.rb
+++ b/app/models/group.rb
@@ -297,18 +297,18 @@ class Group < Namespace
def visibility_level_allowed_by_parent
return if visibility_level_allowed_by_parent?
- errors.add(:visibility_level, visibility_error_for(:parent, level: visibility, parent_level: parent.visibility))
+ errors.add(:visibility_level, "#{visibility} is not allowed since the parent group has a #{parent.visibility} visibility.")
end
def visibility_level_allowed_by_projects
return if visibility_level_allowed_by_projects?
- errors.add(:visibility_level, visibility_error_for(:projects, level: visibility))
+ errors.add(:visibility_level, "#{visibility} is not allowed since this group contains projects with higher visibility.")
end
def visibility_level_allowed_by_sub_groups
return if visibility_level_allowed_by_sub_groups?
- errors.add(:visibility_level, visibility_error_for(:sub_groups, level: visibility))
+ errors.add(:visibility_level, "#{visibility} is not allowed since there are sub-groups with higher visibility.")
end
end
diff --git a/app/models/project.rb b/app/models/project.rb
index 088fe5e1fed..d5324ceac31 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -671,16 +671,14 @@ class Project < ActiveRecord::Base
level_name = Gitlab::VisibilityLevel.level_name(self.visibility_level).downcase
group_level_name = Gitlab::VisibilityLevel.level_name(self.group.visibility_level).downcase
-
- self.errors.add(:visibility_level, visibility_error_for(:group, level: level_name, group_level: group_level_name))
+ self.errors.add(:visibility_level, "#{level_name} is not allowed in a #{group_level_name} group.")
end
def visibility_level_allowed_as_fork
return if visibility_level_allowed_as_fork?
level_name = Gitlab::VisibilityLevel.level_name(self.visibility_level).downcase
-
- self.errors.add(:visibility_level, visibility_error_for(:fork, level: level_name))
+ self.errors.add(:visibility_level, "#{level_name} is not allowed since the fork source project has lower visibility.")
end
def check_wiki_path_conflict
diff --git a/lib/gitlab/visibility_level.rb b/lib/gitlab/visibility_level.rb
index ef5c4d9a3b2..c60bd91ea6e 100644
--- a/lib/gitlab/visibility_level.rb
+++ b/lib/gitlab/visibility_level.rb
@@ -130,23 +130,5 @@ module Gitlab
def visibility=(level)
self[visibility_level_field] = Gitlab::VisibilityLevel.level_value(level)
end
-
- def visibility_errors_template
- @visibility_errors ||= {
- 'Project' => {
- group: "%{level} is not allowed in a %{group_level} group",
- fork: "%{level} is not allowed since the fork source project has lower visibility"
- },
- 'Group' => {
- parent: "%{level} is not allowed since the parent group has a %{parent_level} visibility",
- projects: "%{level} is not allowed since this group contains projects with higher visibility",
- sub_groups: "%{level} is not allowed since there are sub-groups with higher visibility"
- }
- }
- end
-
- def visibility_error_for(section, variables)
- visibility_errors_template.dig(model_name.to_s, section) % variables
- end
end
end