2015-04-26 12:48:37 +05:30
%li.timeline-entry{ id: dom_id(note), class: [dom_class(note), "note-row-#{note.id}", ('system-note' if note.system)], data: { discussion: note.discussion_id } }
.timeline-entry-inner
.timeline-icon
2015-10-24 18:46:33 +05:30
%a{href: user_path(note.author)}
%img.avatar.s40{src: avatar_icon(note.author), alt: ''}
2015-04-26 12:48:37 +05:30
.timeline-content
.note-header
2015-09-11 14:41:01 +05:30
- if note_editable?(note)
.note-actions
= link_to '#', title: 'Edit comment', class: 'js-note-edit' do
= icon('pencil-square-o')
= 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: 'js-note-delete danger' do
= icon('trash-o')
- unless note.system
2015-10-24 18:46:33 +05:30
- access = note.project.team.human_max_access(note.author.id)
- if access
2015-09-11 14:41:01 +05:30
%span.note-role.label
2015-10-24 18:46:33 +05:30
= access
2015-09-11 14:41:01 +05:30
= link_to_member(note.project, note.author, avatar: false)
2015-04-26 12:48:37 +05:30
%span.author-username
= '@' + note.author.username
2015-09-11 14:41:01 +05:30
2015-04-26 12:48:37 +05:30
%span.note-last-update
2015-10-24 18:46:33 +05:30
%a{name: dom_id(note), href: "##{dom_id(note)}", title: 'Link here'}
2015-09-11 14:41:01 +05:30
= time_ago_with_tooltip(note.created_at, placement: 'bottom', html_class: 'note_created_ago')
- if note.updated_at != note.created_at
%span
·
= icon('edit', title: 'edited')
= time_ago_with_tooltip(note.updated_at, placement: 'bottom', html_class: 'note_edited_ago')
- if note.updated_by && note.updated_by != note.author
by #{link_to_member(note.project, note.updated_by, avatar: false, author_class: nil)}
2015-04-26 12:48:37 +05:30
- if note.superceded?(@notes)
- if note.upvote?
%span.vote.upvote.label.label-gray.strikethrough
2015-09-11 14:41:01 +05:30
= icon('thumbs-up')
2015-04-26 12:48:37 +05:30
\+1
- if note.downvote?
%span.vote.downvote.label.label-gray.strikethrough
2015-09-11 14:41:01 +05:30
= icon('thumbs-down')
2015-04-26 12:48:37 +05:30
\-1
- else
- if note.upvote?
%span.vote.upvote.label.label-success
2015-09-11 14:41:01 +05:30
= icon('thumbs-up')
2015-04-26 12:48:37 +05:30
\+1
- if note.downvote?
%span.vote.downvote.label.label-danger
2015-09-11 14:41:01 +05:30
= icon('thumbs-down')
2015-04-26 12:48:37 +05:30
\-1
2014-09-02 18:07:02 +05:30
2015-09-11 14:41:01 +05:30
.note-body{class: note_editable?(note) ? 'js-task-list-container' : ''}
2015-04-26 12:48:37 +05:30
.note-text
= preserve do
= markdown(note.note, {no_header_anchors: true})
2015-10-24 18:46:33 +05:30
- unless note.system?
-# System notes can't be edited
= render 'projects/notes/edit_form', note: note
2014-09-02 18:07:02 +05:30
2015-04-26 12:48:37 +05:30
- if note.attachment.url
.note-attachment
- if note.attachment.image?
= link_to note.attachment.url, target: '_blank' do
= image_tag note.attachment.url, class: 'note-image-attach'
.attachment
2015-09-11 14:41:01 +05:30
= link_to note.attachment.url, target: '_blank' do
= icon('paperclip')
2015-04-26 12:48:37 +05:30
= note.attachment_identifier
2015-09-11 14:41:01 +05:30
= 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')
2015-04-26 12:48:37 +05:30
.clear