diff options
author | Mike Greiling <mike@pixelcog.com> | 2017-08-30 16:01:57 -0500 |
---|---|---|
committer | Mike Greiling <mike@pixelcog.com> | 2017-08-30 16:01:57 -0500 |
commit | 129823664bb2287545b0402823366261151273ca (patch) | |
tree | 9bfcca638d968aebcda636822d38273aa08faad7 /app/helpers/visibility_level_helper.rb | |
parent | 8a72203a589bc3b7a74f5dd60a3c607d21436e6a (diff) | |
download | gitlab-ce-129823664bb2287545b0402823366261151273ca.tar.gz |
enhance disabled group visibility options with links and instructions
Diffstat (limited to 'app/helpers/visibility_level_helper.rb')
-rw-r--r-- | app/helpers/visibility_level_helper.rb | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/app/helpers/visibility_level_helper.rb b/app/helpers/visibility_level_helper.rb index 569872e528b..e21a7b04bb4 100644 --- a/app/helpers/visibility_level_helper.rb +++ b/app/helpers/visibility_level_helper.rb @@ -105,6 +105,7 @@ module VisibilityLevelHelper def disallowed_group_visibility_level_description(level, group) level_name = Gitlab::VisibilityLevel.level_name(level).downcase reasons = [] + instructions = '' unless group.visibility_level_allowed_by_projects?(level) reasons << "it contains projects with higher visibility" @@ -115,11 +116,15 @@ module VisibilityLevelHelper end unless group.visibility_level_allowed_by_parent?(level) - reasons << "the visibility of its parent group is #{group.parent.visibility}" + parent_group = link_to group.parent.name, group_path(group.parent) + change_visiblity = link_to 'change the visibility', edit_group_path(group.parent) + + reasons << "the visibility of #{parent_group} is #{group.parent.visibility}" + instructions << " To make this group #{level_name}, you must first #{change_visiblity} of the parent group." end reasons = reasons.any? ? ' because ' + reasons.to_sentence : '' - "This group cannot be #{level_name}#{reasons}." + "This group cannot be #{level_name}#{reasons}.#{instructions}".html_safe end def visibility_icon_description(form_model) |