Commit 3de1b521 authored by Clement Ho's avatar Clement Ho

Merge branch 'gt-externalize-app-views-projects-project_members' into 'master'

Externalize strings from `/app/views/projects/project_members`

See merge request gitlab-org/gitlab-ce!23227
parents 3e834e9f 277ad219
.card.project-members-groups .card.project-members-groups
.card-header .card-header
Groups with access to = _("Groups with access to <strong>%{project_name}</strong>").html_safe % { project_name: sanitize_project_name(@project.name) }
%strong= @project.name
%span.badge.badge-pill= group_links.size %span.badge.badge-pill= group_links.size
%ul.content-list.members-list %ul.content-list.members-list
= render partial: 'shared/members/group', collection: group_links, as: :group_link = render partial: 'shared/members/group', collection: group_links, as: :group_link
...@@ -10,8 +10,9 @@ ...@@ -10,8 +10,9 @@
= select_tag :link_group_access, options_for_select(ProjectGroupLink.access_options, ProjectGroupLink.default_access), class: "form-control select-control" = select_tag :link_group_access, options_for_select(ProjectGroupLink.access_options, ProjectGroupLink.default_access), class: "form-control select-control"
= icon('chevron-down') = icon('chevron-down')
.form-text.text-muted.append-bottom-10 .form-text.text-muted.append-bottom-10
= link_to _("Read more"), help_page_path("user/permissions") - permissions_docs_path = help_page_path('user/permissions')
about role permissions - link_start = %q{<a href="%{url}">}.html_safe % { url: permissions_docs_path }
= _("%{link_start}Read more%{link_end} about role permissions").html_safe % { link_start: link_start, link_end: '</a>'.html_safe }
.form-group .form-group
= label_tag :expires_at, _('Access expiration date'), class: 'label-bold' = label_tag :expires_at, _('Access expiration date'), class: 'label-bold'
.clearable-input .clearable-input
......
...@@ -2,20 +2,21 @@ ...@@ -2,20 +2,21 @@
.col-sm-12 .col-sm-12
= form_for @project_member, as: :project_member, url: project_project_members_path(@project), html: { class: 'users-project-form' } do |f| = form_for @project_member, as: :project_member, url: project_project_members_path(@project), html: { class: 'users-project-form' } do |f|
.form-group .form-group
= label_tag :user_ids, "Select members to invite", class: "label-bold" = label_tag :user_ids, _("Select members to invite"), class: "label-bold"
= users_select_tag(:user_ids, multiple: true, class: "input-clamp qa-member-select-input", scope: :all, email_user: true, placeholder: "Search for members to update or invite") = users_select_tag(:user_ids, multiple: true, class: "input-clamp qa-member-select-input", scope: :all, email_user: true, placeholder: "Search for members to update or invite")
.form-group .form-group
= label_tag :access_level, "Choose a role permission", class: "label-bold" = label_tag :access_level, _("Choose a role permission"), class: "label-bold"
.select-wrapper .select-wrapper
= select_tag :access_level, options_for_select(ProjectMember.access_level_roles, @project_member.access_level), class: "form-control project-access-select select-control" = select_tag :access_level, options_for_select(ProjectMember.access_level_roles, @project_member.access_level), class: "form-control project-access-select select-control"
= icon('chevron-down') = icon('chevron-down')
.form-text.text-muted.append-bottom-10 .form-text.text-muted.append-bottom-10
= link_to "Read more", help_page_path("user/permissions") - permissions_docs_path = help_page_path('user/permissions')
about role permissions - link_start = %q{<a href="%{url}">}.html_safe % { url: permissions_docs_path }
= _("%{link_start}Read more%{link_end} about role permissions").html_safe % { link_start: link_start, link_end: '</a>'.html_safe }
.form-group .form-group
.clearable-input .clearable-input
= label_tag :expires_at, 'Access expiration date', class: 'label-bold' = label_tag :expires_at, _('Access expiration date'), class: 'label-bold'
= text_field_tag :expires_at, nil, class: 'form-control js-access-expiration-date', placeholder: 'Expiration date' = text_field_tag :expires_at, nil, class: 'form-control js-access-expiration-date', placeholder: 'Expiration date'
%i.clear-icon.js-clear-input %i.clear-icon.js-clear-input
= f.submit "Add to project", class: "btn btn-success qa-add-member-button" = f.submit _("Add to project"), class: "btn btn-success qa-add-member-button"
= link_to "Import", import_project_project_members_path(@project), class: "btn btn-default", title: "Import members from another project" = link_to _("Import"), import_project_project_members_path(@project), class: "btn btn-default", title: _("Import members from another project")
...@@ -4,14 +4,13 @@ ...@@ -4,14 +4,13 @@
.card .card
.card-header.flex-project-members-panel .card-header.flex-project-members-panel
%span.flex-project-title %span.flex-project-title
Members of = _("Members of <strong>%{project_name}</strong>").html_safe % { project_name: sanitize_project_name(project.name) }
%strong= project.name
%span.badge.badge-pill= members.total_count %span.badge.badge-pill= members.total_count
= form_tag project_project_members_path(project), method: :get, class: 'form-inline member-search-form flex-project-members-form' do = form_tag project_project_members_path(project), method: :get, class: 'form-inline member-search-form flex-project-members-form' do
.form-group .form-group
.position-relative .position-relative
= search_field_tag :search, params[:search], { placeholder: 'Find existing members by name', class: 'form-control', spellcheck: false } = search_field_tag :search, params[:search], { placeholder: _('Find existing members by name'), class: 'form-control', spellcheck: false }
%button.member-search-btn{ type: "submit", "aria-label" => "Submit search" } %button.member-search-btn{ type: "submit", "aria-label" => _("Submit search") }
= icon("search") = icon("search")
= render 'shared/members/sort_dropdown' = render 'shared/members/sort_dropdown'
%ul.content-list.members-list.qa-members-list %ul.content-list.members-list.qa-members-list
......
- page_title "Import members" - page_title _("Import members")
%h3.page-title %h3.page-title
Import members from another project = _("Import members from another project")
%p.light %p.light
Only project members will be imported. Group members will be skipped. = _("Only project members will be imported. Group members will be skipped.")
%hr %hr
= form_tag apply_import_project_project_members_path(@project), method: 'post' do = form_tag apply_import_project_project_members_path(@project), method: 'post' do
.form-group.row .form-group.row
= label_tag :source_project_id, "Project", class: 'col-form-label col-sm-2' = label_tag :source_project_id, _("Project"), class: 'col-form-label col-sm-2'
.col-sm-10= select_tag(:source_project_id, options_from_collection_for_select(@projects, :id, :name_with_namespace), prompt: "Select project", class: "select2 lg", required: true) .col-sm-10= select_tag(:source_project_id, options_from_collection_for_select(@projects, :id, :name_with_namespace), prompt: "Select project", class: "select2 lg", required: true)
.form-actions .form-actions
= button_tag 'Import project members', class: "btn btn-success" = button_tag _('Import project members'), class: "btn btn-success"
= link_to "Cancel", project_project_members_path(@project), class: "btn btn-cancel" = link_to _("Cancel"), project_project_members_path(@project), class: "btn btn-cancel"
- page_title "Members" - page_title _("Members")
.row.prepend-top-default .row.prepend-top-default
.col-lg-12 .col-lg-12
%h4 %h4
Project members = _("Project members")
- if can?(current_user, :admin_project_member, @project) - if can?(current_user, :admin_project_member, @project)
%p %p
You can invite a new member to = _("You can invite a new member to <strong>%{project_name}</strong> or invite another group.").html_safe % { project_name: sanitize_project_name(@project.name) }
%strong= @project.name
or invite another group.
- else - else
%p %p
Members can be added by project = _("Members can be added by project <i>Maintainers</i> or <i>Owners</i>").html_safe
%i Maintainers
or
%i Owners
.light .light
- if can?(current_user, :admin_project_member, @project) - if can?(current_user, :admin_project_member, @project)
%ul.nav-links.nav.nav-tabs.gitlab-tabs{ role: 'tablist' } %ul.nav-links.nav.nav-tabs.gitlab-tabs{ role: 'tablist' }
%li.nav-tab{ role: 'presentation' } %li.nav-tab{ role: 'presentation' }
%a.nav-link.active{ href: '#invite-member-pane', id: 'invite-member-tab', data: { toggle: 'tab' }, role: 'tab' } Invite member %a.nav-link.active{ href: '#invite-member-pane', id: 'invite-member-tab', data: { toggle: 'tab' }, role: 'tab' }= _("Invite member")
- if @project.allowed_to_share_with_group? - if @project.allowed_to_share_with_group?
%li.nav-tab{ role: 'presentation' } %li.nav-tab{ role: 'presentation' }
%a.nav-link{ href: '#invite-group-pane', id: 'invite-group-tab', data: { toggle: 'tab' }, role: 'tab' } Invite group %a.nav-link{ href: '#invite-group-pane', id: 'invite-group-tab', data: { toggle: 'tab' }, role: 'tab' }= _("Invite group")
.tab-content.gitlab-tab-content .tab-content.gitlab-tab-content
.tab-pane.active{ id: 'invite-member-pane', role: 'tabpanel' } .tab-pane.active{ id: 'invite-member-pane', role: 'tabpanel' }
= render 'projects/project_members/new_project_member', tab_title: 'Invite member' = render 'projects/project_members/new_project_member', tab_title: _('Invite member')
.tab-pane{ id: 'invite-group-pane', role: 'tabpanel' } .tab-pane{ id: 'invite-group-pane', role: 'tabpanel' }
= render 'projects/project_members/new_project_group', tab_title: 'Invite group' = render 'projects/project_members/new_project_group', tab_title: _('Invite group')
= render 'shared/members/requests', membership_source: @project, requesters: @requesters = render 'shared/members/requests', membership_source: @project, requesters: @requesters
.clearfix .clearfix
%h5.member.existing-title %h5.member.existing-title
Existing members and groups = _("Existing members and groups")
- if @group_links.any? - if @group_links.any?
= render 'projects/project_members/groups', group_links: @group_links = render 'projects/project_members/groups', group_links: @group_links
......
---
title: Externalize strings from `/app/views/projects/project_members`
merge_request: 23227
author: Tao Wang
type: other
...@@ -129,6 +129,9 @@ msgstr "" ...@@ -129,6 +129,9 @@ msgstr ""
msgid "%{issuableType} will be removed! Are you sure?" msgid "%{issuableType} will be removed! Are you sure?"
msgstr "" msgstr ""
msgid "%{link_start}Read more%{link_end} about role permissions"
msgstr ""
msgid "%{loadingIcon} Started" msgid "%{loadingIcon} Started"
msgstr "" msgstr ""
...@@ -399,6 +402,9 @@ msgstr "" ...@@ -399,6 +402,9 @@ msgstr ""
msgid "Add reaction" msgid "Add reaction"
msgstr "" msgstr ""
msgid "Add to project"
msgstr ""
msgid "Add todo" msgid "Add todo"
msgstr "" msgstr ""
...@@ -1305,6 +1311,9 @@ msgstr "" ...@@ -1305,6 +1311,9 @@ msgstr ""
msgid "Choose a file" msgid "Choose a file"
msgstr "" msgstr ""
msgid "Choose a role permission"
msgstr ""
msgid "Choose a template..." msgid "Choose a template..."
msgstr "" msgstr ""
...@@ -3010,6 +3019,9 @@ msgstr "" ...@@ -3010,6 +3019,9 @@ msgstr ""
msgid "Existing folder" msgid "Existing folder"
msgstr "" msgstr ""
msgid "Existing members and groups"
msgstr ""
msgid "Expand" msgid "Expand"
msgstr "" msgstr ""
...@@ -3145,6 +3157,9 @@ msgstr "" ...@@ -3145,6 +3157,9 @@ msgstr ""
msgid "Find by path" msgid "Find by path"
msgstr "" msgstr ""
msgid "Find existing members by name"
msgstr ""
msgid "Find file" msgid "Find file"
msgstr "" msgstr ""
...@@ -3436,6 +3451,9 @@ msgstr "" ...@@ -3436,6 +3451,9 @@ msgstr ""
msgid "Groups can also be nested by creating %{subgroup_docs_link_start}subgroups%{subgroup_docs_link_end}." msgid "Groups can also be nested by creating %{subgroup_docs_link_start}subgroups%{subgroup_docs_link_end}."
msgstr "" msgstr ""
msgid "Groups with access to <strong>%{project_name}</strong>"
msgstr ""
msgid "GroupsDropdown|Frequently visited" msgid "GroupsDropdown|Frequently visited"
msgstr "" msgstr ""
...@@ -3663,12 +3681,21 @@ msgstr "" ...@@ -3663,12 +3681,21 @@ msgstr ""
msgid "Import issues" msgid "Import issues"
msgstr "" msgstr ""
msgid "Import members"
msgstr ""
msgid "Import members from another project"
msgstr ""
msgid "Import multiple repositories by uploading a manifest file." msgid "Import multiple repositories by uploading a manifest file."
msgstr "" msgstr ""
msgid "Import project" msgid "Import project"
msgstr "" msgstr ""
msgid "Import project members"
msgstr ""
msgid "Import projects from Bitbucket" msgid "Import projects from Bitbucket"
msgstr "" msgstr ""
...@@ -3774,6 +3801,12 @@ msgstr "" ...@@ -3774,6 +3801,12 @@ msgstr ""
msgid "Invite" msgid "Invite"
msgstr "" msgstr ""
msgid "Invite group"
msgstr ""
msgid "Invite member"
msgstr ""
msgid "Invoke Count" msgid "Invoke Count"
msgstr "" msgstr ""
...@@ -4195,6 +4228,12 @@ msgstr "" ...@@ -4195,6 +4228,12 @@ msgstr ""
msgid "Members" msgid "Members"
msgstr "" msgstr ""
msgid "Members can be added by project <i>Maintainers</i> or <i>Owners</i>"
msgstr ""
msgid "Members of <strong>%{project_name}</strong>"
msgstr ""
msgid "Merge Request" msgid "Merge Request"
msgstr "" msgstr ""
...@@ -4742,6 +4781,9 @@ msgstr "" ...@@ -4742,6 +4781,9 @@ msgstr ""
msgid "Only project members can comment." msgid "Only project members can comment."
msgstr "" msgstr ""
msgid "Only project members will be imported. Group members will be skipped."
msgstr ""
msgid "Oops, are you sure?" msgid "Oops, are you sure?"
msgstr "" msgstr ""
...@@ -5396,6 +5438,9 @@ msgstr "" ...@@ -5396,6 +5438,9 @@ msgstr ""
msgid "Project export started. A download link will be sent by email." msgid "Project export started. A download link will be sent by email."
msgstr "" msgstr ""
msgid "Project members"
msgstr ""
msgid "Project name" msgid "Project name"
msgstr "" msgstr ""
...@@ -6039,6 +6084,9 @@ msgstr "" ...@@ -6039,6 +6084,9 @@ msgstr ""
msgid "Select branch/tag" msgid "Select branch/tag"
msgstr "" msgstr ""
msgid "Select members to invite"
msgstr ""
msgid "Select project" msgid "Select project"
msgstr "" msgstr ""
...@@ -7866,6 +7914,9 @@ msgstr "" ...@@ -7866,6 +7914,9 @@ msgstr ""
msgid "You can easily install a Runner on a Kubernetes cluster. %{link_to_help_page}" msgid "You can easily install a Runner on a Kubernetes cluster. %{link_to_help_page}"
msgstr "" msgstr ""
msgid "You can invite a new member to <strong>%{project_name}</strong> or invite another group."
msgstr ""
msgid "You can move around the graph by using the arrow keys." msgid "You can move around the graph by using the arrow keys."
msgstr "" msgstr ""
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment