From ddb1d326e06cc40d87b8eaa40aab7019447d6e5e Mon Sep 17 00:00:00 2001 From: Heinrich Lee Yu Date: Fri, 30 Nov 2018 10:33:02 +0800 Subject: [PATCH] Pass in just assignees instead of issuable --- app/views/projects/issues/show.html.haml | 4 +++- .../projects/merge_requests/conflicts/show.html.haml | 4 ++++ app/views/projects/merge_requests/show.html.haml | 4 +++- app/views/shared/issuable/_sidebar.html.haml | 2 +- app/views/shared/issuable/_sidebar_assignees.html.haml | 9 +++++---- 5 files changed, 16 insertions(+), 7 deletions(-) diff --git a/app/views/projects/issues/show.html.haml b/app/views/projects/issues/show.html.haml index d862640197a..c04f37bc119 100644 --- a/app/views/projects/issues/show.html.haml +++ b/app/views/projects/issues/show.html.haml @@ -88,4 +88,6 @@ %section.issuable-discussion = render 'projects/issues/discussion' -= render 'shared/issuable/sidebar', issuable: @issue, issuable_sidebar: @issuable_sidebar +-# `assignees` is required for populating selected assignee values in the select box + This is should be removed when sidebar is converted to Vue. += render 'shared/issuable/sidebar', issuable_sidebar: @issuable_sidebar, assignees: @issue.assignees diff --git a/app/views/projects/merge_requests/conflicts/show.html.haml b/app/views/projects/merge_requests/conflicts/show.html.haml index ede37c11e64..fb176441485 100644 --- a/app/views/projects/merge_requests/conflicts/show.html.haml +++ b/app/views/projects/merge_requests/conflicts/show.html.haml @@ -6,6 +6,10 @@ .merge-request-details.issuable-details = render "projects/merge_requests/mr_box" +-# `assignees` is required for populating selected assignee values in the select box and rendering the assignee link + This is should be removed when sidebar is converted to Vue. += render 'shared/issuable/sidebar', issuable_sidebar: @issuable_sidebar, assignees: @merge_request.assignees + = render 'shared/issuable/sidebar', issuable: @merge_request, issuable_sidebar: @issuable_sidebar #conflicts{ "v-cloak" => "true", data: { conflicts_path: conflicts_project_merge_request_path(@merge_request.project, @merge_request, format: :json), diff --git a/app/views/projects/merge_requests/show.html.haml b/app/views/projects/merge_requests/show.html.haml index 4ebf8afd669..0271dee353b 100644 --- a/app/views/projects/merge_requests/show.html.haml +++ b/app/views/projects/merge_requests/show.html.haml @@ -86,7 +86,9 @@ .mr-loading-status = spinner -= render 'shared/issuable/sidebar', issuable: @merge_request, issuable_sidebar: @issuable_sidebar +-# `assignees` is required for populating selected assignee values in the select box and rendering the assignee link + This is should be removed when sidebar is converted to Vue. += render 'shared/issuable/sidebar', issuable_sidebar: @issuable_sidebar, assignees: @merge_request.assignees - if @merge_request.can_be_reverted?(current_user) = render "projects/commit/change", type: 'revert', commit: @merge_request.merge_commit, title: @merge_request.title diff --git a/app/views/shared/issuable/_sidebar.html.haml b/app/views/shared/issuable/_sidebar.html.haml index 18093e5996b..07014dc99dd 100644 --- a/app/views/shared/issuable/_sidebar.html.haml +++ b/app/views/shared/issuable/_sidebar.html.haml @@ -18,7 +18,7 @@ .block.todo.hide-expanded = render "shared/issuable/sidebar_todo", issuable_sidebar: issuable_sidebar, is_collapsed: true .block.assignee.qa-assignee-block - = render "shared/issuable/sidebar_assignees", issuable: issuable, issuable_sidebar: issuable_sidebar + = render "shared/issuable/sidebar_assignees", issuable_sidebar: issuable_sidebar, assignees: assignees = render_if_exists 'shared/issuable/sidebar_item_epic', issuable_sidebar: issuable_sidebar diff --git a/app/views/shared/issuable/_sidebar_assignees.html.haml b/app/views/shared/issuable/_sidebar_assignees.html.haml index 25e4f0dc14e..99dc58b582f 100644 --- a/app/views/shared/issuable/_sidebar_assignees.html.haml +++ b/app/views/shared/issuable/_sidebar_assignees.html.haml @@ -8,9 +8,10 @@ = _('Assignee') = icon('spinner spin') - else + - assignee = assignees.first .sidebar-collapsed-icon.sidebar-collapsed-user{ data: { toggle: "tooltip", placement: "left", container: "body", boundary: 'viewport' }, title: (issuable_sidebar.dig(:assignee, :name) || _('Assignee')) } - if issuable_sidebar[:assignee] - = link_to_member(@project, issuable.assignee, size: 24) + = link_to_member(@project, assignee, size: 24) - else = icon('user', 'aria-hidden': 'true') .title.hide-collapsed @@ -23,7 +24,7 @@ = sidebar_gutter_toggle_icon .value.hide-collapsed - if issuable_sidebar[:assignee] - = link_to_member(@project, issuable.assignee, size: 32, extra_class: 'bold') do + = link_to_member(@project, assignee, size: 32, extra_class: 'bold') do - if issuable_sidebar[:can_merge] %span.float-right.cannot-be-merged{ data: { toggle: 'tooltip', placement: 'left' }, title: _('Not allowed to merge') } = icon('exclamation-triangle', 'aria-hidden': 'true') @@ -38,10 +39,10 @@ = _('assign yourself') .selectbox.hide-collapsed - - if issuable.assignees.none? + - if assignees.none? = hidden_field_tag "#{issuable_type}[assignee_ids][]", 0, id: nil - else - - issuable.assignees.each do |assignee| + - assignees.each do |assignee| = hidden_field_tag "#{issuable_type}[assignee_ids][]", assignee.id, id: nil, data: { avatar_url: assignee.avatar_url, name: assignee.name, username: assignee.username } - options = { toggle_class: 'js-user-search js-author-search',