diff options
-rw-r--r-- | app/assets/stylesheets/framework/forms.scss | 4 | ||||
-rw-r--r-- | app/assets/stylesheets/pages/projects.scss | 4 | ||||
-rw-r--r-- | app/helpers/icons_helper.rb | 5 | ||||
-rw-r--r-- | app/views/admin/groups/_form.html.haml | 50 | ||||
-rw-r--r-- | app/views/admin/groups/new.html.haml | 2 | ||||
-rw-r--r-- | app/views/groups/_create_chat_team.html.haml | 24 | ||||
-rw-r--r-- | app/views/groups/new.html.haml | 43 | ||||
-rw-r--r-- | app/views/shared/_choose_group_avatar_button.html.haml | 2 | ||||
-rw-r--r-- | app/views/shared/_group_form.html.haml | 63 | ||||
-rw-r--r-- | app/views/shared/_group_tips.html.haml | 5 |
10 files changed, 103 insertions, 99 deletions
diff --git a/app/assets/stylesheets/framework/forms.scss b/app/assets/stylesheets/framework/forms.scss index 432024779fd..862bc93b3f5 100644 --- a/app/assets/stylesheets/framework/forms.scss +++ b/app/assets/stylesheets/framework/forms.scss @@ -34,6 +34,10 @@ label { &.label-light { font-weight: 600; } + + &.label-block { + display: block; + } } .control-label { diff --git a/app/assets/stylesheets/pages/projects.scss b/app/assets/stylesheets/pages/projects.scss index 28a8f9cb335..3f8995e0231 100644 --- a/app/assets/stylesheets/pages/projects.scss +++ b/app/assets/stylesheets/pages/projects.scss @@ -291,6 +291,10 @@ i { margin: 2px 0; font-size: 20px; + + &.private { + color: $red-500; + } } .option-title { diff --git a/app/helpers/icons_helper.rb b/app/helpers/icons_helper.rb index ab3ef454e1c..f17528b8b78 100644 --- a/app/helpers/icons_helper.rb +++ b/app/helpers/icons_helper.rb @@ -37,9 +37,12 @@ module IconsHelper end def visibility_level_icon(level, fw: true) + options = {} + name = case level when Gitlab::VisibilityLevel::PRIVATE + options[:class] = 'private' 'lock' when Gitlab::VisibilityLevel::INTERNAL 'shield' @@ -49,7 +52,7 @@ module IconsHelper name << " fw" if fw - icon(name) + icon(name, options) end def file_type_icon_class(type, mode, name) diff --git a/app/views/admin/groups/_form.html.haml b/app/views/admin/groups/_form.html.haml index d9f05003904..ca0faae7f3c 100644 --- a/app/views/admin/groups/_form.html.haml +++ b/app/views/admin/groups/_form.html.haml @@ -1,30 +1,30 @@ -= form_for [:admin, @group], html: { class: "form-horizontal" } do |f| - = form_errors(@group) - = render 'shared/group_form', f: f +.row.prepend-top-default + .col-xs-12.col-lg-3.profile-settings-sidebar + %h4.prepend-top-0 + New Group + %p + A group is a collection of several projects. + Groups can be private, public or limited to any logged in users. + You can move existing projects to a group. + .col-xs-12.col-lg-9 + = form_for [:admin, @group], html: { class: "form-horizontal" } do |f| + = form_errors(@group) + = render 'shared/group_form', f: f - .form-group.group-description-holder - = f.label :avatar, "Group avatar", class: 'control-label' - .col-sm-10 - = render 'shared/choose_group_avatar_button', f: f + .form-group.col-xs-12 + = f.label :avatar, 'Group avatar', class: 'label-light label-block' + = render 'shared/choose_group_avatar_button', f: f - = render 'shared/visibility_level', f: f, visibility_level: visibility_level, can_change_visibility_level: can_change_group_visibility_level?(@group), form_model: @group + .form-group.col-xs-12.project-visibility-level-holder + = f.label :visibility_level, class: 'label-light' do + Visibility Level + = link_to icon('question-circle'), help_page_path("public_access/public_access"), 'aria-hidden' => 'true' + = render('shared/visibility_radios', model_method: :visibility_level, form: f, can_change_visibility_level: can_change_group_visibility_level?(@group), selected_level: visibility_level, form_model: @group) - .form-group - .col-sm-offset-2.col-sm-10 - = render 'shared/allow_request_access', form: f + .form-group.col-xs-12 + = render 'shared/allow_request_access', form: f - = render 'groups/group_admin_settings', f: f + = render 'groups/group_admin_settings', f: f - - if @group.new_record? - .form-group - .col-sm-offset-2.col-sm-10 - .alert.alert-info - = render 'shared/group_tips' - .form-actions - = f.submit 'Create group', class: "btn btn-create" - = link_to 'Cancel', admin_groups_path, class: "btn btn-cancel" - - - else - .form-actions - = f.submit 'Save changes', class: "btn btn-save" - = link_to 'Cancel', admin_group_path(@group), class: "btn btn-cancel" + = f.submit "#{@group.new_record? ? 'Create group' : 'Save changes'}", class: 'btn btn-create' + = link_to 'Cancel', @group.new_record? ? admin_groups_path : admin_group_path(@group), class: 'btn btn-cancel' diff --git a/app/views/admin/groups/new.html.haml b/app/views/admin/groups/new.html.haml index 8f9fe96249f..a57334b34a9 100644 --- a/app/views/admin/groups/new.html.haml +++ b/app/views/admin/groups/new.html.haml @@ -1,4 +1,2 @@ - page_title "New Group" -%h3.page-title New group -%hr = render 'form', visibility_level: default_group_visibility diff --git a/app/views/groups/_create_chat_team.html.haml b/app/views/groups/_create_chat_team.html.haml index 20de1b4c973..bcdb631ca92 100644 --- a/app/views/groups/_create_chat_team.html.haml +++ b/app/views/groups/_create_chat_team.html.haml @@ -1,16 +1,14 @@ -.form-group - = f.label :create_chat_team, class: 'control-label' do +.form-group.col-xs-12 + = f.label :create_chat_team, class: 'label-block' do %span.mattermost-icon = custom_icon('icon_mattermost') Mattermost - .col-sm-10 - .checkbox.js-toggle-container - = f.label :create_chat_team do - .js-toggle-button= f.check_box(:create_chat_team, { checked: true }, true, false) - Create a Mattermost team for this group - %br - %small.light.js-toggle-content - Mattermost URL: - = Settings.mattermost.host - %span> / - %span{ "data-bind-out" => "create_chat_team" } + .checkbox.js-toggle-container + = f.label :create_chat_team, class: 'label-block' do + .js-toggle-button= f.check_box(:create_chat_team, { checked: true }, true, false) + Create a Mattermost team for this group + %small.hint.js-toggle-content + Mattermost URL: + = Settings.mattermost.host + %span> / + %span{ "data-bind-out" => "create_chat_team" } diff --git a/app/views/groups/new.html.haml b/app/views/groups/new.html.haml index 000c7af2326..41cba568687 100644 --- a/app/views/groups/new.html.haml +++ b/app/views/groups/new.html.haml @@ -1,27 +1,30 @@ - page_title 'New Group' - header_title "Groups", dashboard_groups_path -%h3.page-title - New Group -%hr +.row.prepend-top-default + .col-xs-12.col-lg-3.profile-settings-sidebar + %h4.prepend-top-0 + New Group + %p + A group is a collection of several projects. + Groups can be private, public or limited to any logged in users. + You can move existing projects to a group. + .col-xs-12.col-lg-9 + = form_for @group, html: { class: 'group-form form-horizontal gl-show-field-errors' } do |f| + = form_errors(@group) + = render 'shared/group_form', f: f, autofocus: true -= form_for @group, html: { class: 'group-form form-horizontal gl-show-field-errors' } do |f| - = form_errors(@group) - = render 'shared/group_form', f: f, autofocus: true + .form-group.col-xs-12 + = f.label :description, 'Group avatar', class: 'label-light label-block' + = render 'shared/choose_group_avatar_button', f: f - .form-group.group-description-holder - = f.label :avatar, "Group avatar", class: 'control-label' - .col-sm-10 - = render 'shared/choose_group_avatar_button', f: f + .form-group.col-xs-12.project-visibility-level-holder + = f.label :visibility_level, class: 'label-light' do + Visibility Level + = link_to icon('question-circle'), help_page_path("public_access/public_access"), 'aria-hidden' => 'true' + = render('shared/visibility_radios', model_method: :visibility_level, form: f, can_change_visibility_level: true, selected_level: default_group_visibility, form_model: @group) - = render 'shared/visibility_level', f: f, visibility_level: default_group_visibility, can_change_visibility_level: true, form_model: @group + = render 'create_chat_team', f: f if Gitlab.config.mattermost.enabled - = render 'create_chat_team', f: f if Gitlab.config.mattermost.enabled - - .form-group - .col-sm-offset-2.col-sm-10 - = render 'shared/group_tips' - - .form-actions - = f.submit 'Create group', class: "btn btn-create" - = link_to 'Cancel', dashboard_groups_path, class: 'btn btn-cancel' + = f.submit 'Create group', class: 'btn btn-create', tabindex: 3 + = link_to 'Cancel', dashboard_groups_path, class: 'btn btn-cancel' diff --git a/app/views/shared/_choose_group_avatar_button.html.haml b/app/views/shared/_choose_group_avatar_button.html.haml index 94295970acf..ec40f47f398 100644 --- a/app/views/shared/_choose_group_avatar_button.html.haml +++ b/app/views/shared/_choose_group_avatar_button.html.haml @@ -4,4 +4,4 @@ %span.file_name.js-avatar-filename File name... = f.file_field :avatar, class: 'js-group-avatar-input hidden' -.light The maximum file size allowed is 200KB. +.hint The maximum file size allowed is 200KB. diff --git a/app/views/shared/_group_form.html.haml b/app/views/shared/_group_form.html.haml index 90ae3f06a98..b364ffe6435 100644 --- a/app/views/shared/_group_form.html.haml +++ b/app/views/shared/_group_form.html.haml @@ -4,41 +4,40 @@ - group_path = root_url - group_path << parent.full_path + '/' if parent -.form-group - = f.label :path, class: 'control-label' do +.form-group.col-xs-12 + = f.label :path, class: 'label-light' do Group path - .col-sm-10 - .input-group.gl-field-error-anchor - .group-root-path.input-group-addon.has-tooltip{ title: group_path, :'data-placement' => 'bottom' } - %span>= root_url - - if parent - %strong= parent.full_path + '/' - = f.text_field :path, placeholder: 'open-source', class: 'form-control', - autofocus: local_assigns[:autofocus] || false, required: true, - pattern: Gitlab::Regex::NAMESPACE_REGEX_STR_JS, - title: 'Please choose a group path with no special characters.', - "data-bind-in" => "#{'create_chat_team' if Gitlab.config.mattermost.enabled}" + .input-group.gl-field-error-anchor + .group-root-path.input-group-addon.has-tooltip{ title: group_path, :'data-placement' => 'bottom' } + %span>= root_url - if parent - = f.hidden_field :parent_id, value: parent.id + %strong= parent.full_path + '/' + = f.text_field :path, placeholder: 'group-path', class: 'form-control', + autofocus: local_assigns[:autofocus] || false, required: true, + pattern: Gitlab::Regex::NAMESPACE_REGEX_STR_JS, + title: 'Please choose a group path with no special characters.', + "data-bind-in" => "#{'create_chat_team' if Gitlab.config.mattermost.enabled}" + - if parent + = f.hidden_field :parent_id, value: parent.id - - if @group.persisted? - .alert.alert-warning.prepend-top-10 - %ul - %li Changing group path can have unintended side effects. - %li Renaming group path will rename directory for all related projects - %li It will change web url for access group and group projects. - %li It will change the git path to repositories under this group. + - if @group.persisted? + .alert.alert-warning.prepend-top-10 + %ul + %li Changing group path can have unintended side effects. + %li Renaming group path will rename directory for all related projects + %li It will change web url for access group and group projects. + %li It will change the git path to repositories under this group. -.form-group.group-name-holder - = f.label :name, class: 'control-label' do +.form-group.group-name-holder.col-xs-12 + = f.label :name, class: 'label-light' do Group name - .col-sm-10 - = f.text_field :name, class: 'form-control', - required: true, - title: 'You can choose a descriptive name different from the path.' + = f.text_field :name, placeholder: 'Group name', class: 'form-control', + required: true, + title: 'You can choose a descriptive name different from the path.' -.form-group.group-description-holder - = f.label :description, class: 'control-label' - .col-sm-10 - = f.text_area :description, maxlength: 250, - class: 'form-control js-gfm-input', rows: 4 +.form-group.group-description-holder.col-xs-12 + = f.label :description, class: 'label-light' do + Description + %span.hint (optional) + = f.text_area :description, maxlength: 250, + class: 'form-control js-gfm-input', rows: 4 diff --git a/app/views/shared/_group_tips.html.haml b/app/views/shared/_group_tips.html.haml deleted file mode 100644 index 46e4340511a..00000000000 --- a/app/views/shared/_group_tips.html.haml +++ /dev/null @@ -1,5 +0,0 @@ -%ul - %li A group is a collection of several projects - %li Members of a group may only view projects they have permission to access - %li Group project URLs are prefixed with the group namespace - %li Existing projects may be moved into a group |