Commit b0b25e37 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Merge branch 'note-role' into 'master'

Show user roles by comments.

I think it would be useful to show the user's role (Owner/Master/Developer/Reporter) by comments on GitLab.com (like GitHub does with Owner/Collaborator). That way people will know that when someone from the project's core team comments, they're not just some random user, but they're actually on the team. Currently they have the gather this from context.

![Screen_Shot_2015-05-12_at_12.15.45](https://gitlab.com/gitlab-org/gitlab-ce/uploads/0da0eea2087d6d3b14a2c0c594575c8a/Screen_Shot_2015-05-12_at_12.15.45.png)

On hover, the note actions replace the role:

![Screen_Shot_2015-05-12_at_12.17.32](https://gitlab.com/gitlab-org/gitlab-ce/uploads/54a83c2f5047ea3ce0387f6692b14fe5/Screen_Shot_2015-05-12_at_12.17.32.png)

---

Addresses internal issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2321.

cc @sytses

See merge request !639
parents 474023b7 b0af379a
......@@ -53,6 +53,7 @@ v 7.11.0 (unreleased)
- Add current_sign_in_at to UserFull REST api.
- Make Sidekiq MemoryKiller shutdown signal configurable
- Add "Create Merge Request" buttons to commits and branches pages and push event.
- Show user roles by comments.
v 7.10.2
- Fix CI links on MR page
......
......@@ -44,6 +44,14 @@ ul.notes {
}
.author-username {
}
.note-role {
float: right;
margin-top: 2px;
border: 1px solid #bbb;
background-color: transparent;
color: #999;
}
}
.discussion {
......@@ -136,6 +144,7 @@ ul.notes {
.note {
&.note:hover {
.note-actions { display: block; }
.note-actions + .note-role { display: none; }
}
.discussion-header:hover {
.discussion-actions { display: block; }
......@@ -153,6 +162,8 @@ ul.notes {
}
a {
margin-left: 5px;
@extend .cgray;
&:hover {
......
......@@ -9,22 +9,30 @@
.timeline-content
.note-header
.note-actions
= link_to "##{dom_id(note)}", name: dom_id(note) do
= icon('link')
= link_to "##{dom_id(note)}", name: dom_id(note), title: "Link here" do
= icon('link fw')
Link here
 
- if note_editable?(note)
= link_to '#', title: 'Edit comment', class: 'js-note-edit' do
= icon('pencil-square-o')
= icon('pencil-square-o fw')
Edit
 
= link_to namespace_project_note_path(@project.namespace, @project, note), title: 'Remove comment', method: :delete, data: { confirm: 'Are you sure you want to remove this comment?' }, remote: true, class: 'danger js-note-delete' do
= icon('trash-o', class: 'cred')
= link_to namespace_project_note_path(note.project.namespace, note.project, note), title: 'Remove comment', method: :delete, data: { confirm: 'Are you sure you want to remove this comment?' }, remote: true, class: 'danger js-note-delete' do
= icon('trash-o fw', class: 'cred')
Remove
- unless note.system
- member = note.project.team.find_member(note.author.id)
- if member
%span.note-role.label
= member.human_access
- if note.system
= link_to user_path(note.author) do
= image_tag avatar_icon(note.author_email), class: 'avatar s16', alt: ''
= link_to_member(@project, note.author, avatar: false)
= link_to_member(note.project, note.author, avatar: false)
%span.author-username
= '@' + note.author.username
%span.note-last-update
......@@ -65,7 +73,7 @@
= link_to note.attachment.url, target: '_blank' do
= icon('paperclip')
= note.attachment_identifier
= link_to delete_attachment_namespace_project_note_path(@project.namespace, @project, note),
= link_to delete_attachment_namespace_project_note_path(note.project.namespace, note.project, note),
title: 'Delete this attachment', method: :delete, remote: true, data: { confirm: 'Are you sure you want to remove the attachment?' }, class: 'danger js-note-attachment-delete' do
= icon('trash-o', class: 'cred')
.clear
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