BigW Consortium Gitlab

_note.html.haml 3.37 KB
Newer Older
1
%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 } }
2 3
  .timeline-entry-inner
    .timeline-icon
4 5
      %a{href: user_path(note.author)}
        %img.avatar.s40{src: avatar_icon(note.author), alt: ''}
6 7
    .timeline-content
      .note-header
8 9
        - if note_editable?(note)
          .note-actions
10
            = link_to '#', title: 'Edit comment', class: 'js-note-edit' do
11
              = icon('pencil-square-o')
12

13 14
            = 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')
15 16

        - unless note.system
17 18
          - access = note.project.team.human_max_access(note.author.id)
          - if access
19
            %span.note-role.label
20
              = access
21

22
        = link_to_member(note.project, note.author, avatar: false)
23

24 25
        %span.author-username
          = '@' + note.author.username
26

27
        %span.note-last-update
28
          %a{name: dom_id(note), href: "##{dom_id(note)}", title: 'Link here'}
29 30 31 32 33 34 35 36
            = 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)}
37

38 39 40
        - if note.superceded?(@notes)
          - if note.upvote?
            %span.vote.upvote.label.label-gray.strikethrough
41
              = icon('thumbs-up')
42 43 44
              \+1
          - if note.downvote?
            %span.vote.downvote.label.label-gray.strikethrough
45
              = icon('thumbs-down')
46 47 48 49
              \-1
        - else
          - if note.upvote?
            %span.vote.upvote.label.label-success
50
              = icon('thumbs-up')
51 52 53
              \+1
          - if note.downvote?
            %span.vote.downvote.label.label-danger
54
              = icon('thumbs-down')
55
              \-1
56

57

58
      .note-body{class: note_editable?(note) ? 'js-task-list-container' : ''}
59 60 61
        .note-text
          = preserve do
            = markdown(note.note, {no_header_anchors: true})
62 63 64
        - unless note.system?
          -# System notes can't be edited
          = render 'projects/notes/edit_form', note: note
Jack Weeden committed
65

66 67 68
      - if note.attachment.url
        .note-attachment
          - if note.attachment.image?
69 70
            = link_to note.attachment.url, target: '_blank' do
              = image_tag note.attachment.url, class: 'note-image-attach'
71
          .attachment
72 73
            = link_to note.attachment.url, target: '_blank' do
              = icon('paperclip')
74
              = note.attachment_identifier
75
              = link_to delete_attachment_namespace_project_note_path(note.project.namespace, note.project, note),
76 77
                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')
78
      .clear