summaryrefslogtreecommitdiff
path: root/app/views/projects/notes/_actions.html.haml
blob: 3e79dbec70c5310aabdf08296740d04da080adf8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
- access = note_max_access_for_user(note)
- if access
  %span.note-role= access

- if note.resolvable?
  - can_resolve = can?(current_user, :resolve_note, note)
  %resolve-btn{ "project-path" => project_path(note.project),
      "discussion-id" => note.discussion_id(@noteable),
      ":note-id" => note.id,
      ":resolved" => note.resolved?,
      ":can-resolve" => can_resolve,
      ":author-name" => "'#{j(note.author.name)}'",
      "author-avatar" => note.author.avatar_url,
      ":note-truncated" => "'#{j(truncate(note.note, length: 17))}'",
      ":resolved-by" => "'#{j(note.resolved_by.try(:name))}'",
      "v-show" => "#{can_resolve || note.resolved?}",
      "inline-template" => true,
      "ref" => "note_#{note.id}" }

    %button.note-action-button.line-resolve-btn{ type: "button",
        class: ("is-disabled" unless can_resolve),
        ":class" => "{ 'is-active': isResolved }",
        ":aria-label" => "buttonText",
        "@click" => "resolve",
        ":title" => "buttonText",
        ":ref" => "'button'" }

      = icon('spin spinner', 'v-show' => 'loading', class: 'loading', 'aria-hidden' => 'true', 'aria-label' => 'Loading')
      %div{ 'v-show' => '!loading' }= render 'shared/icons/icon_status_success.svg'

- if current_user
  - if note.emoji_awardable?
    - user_authored = note.user_authored?(current_user)
    = link_to '#', title: 'Add reaction', class: "note-action-button note-emoji-button js-add-award js-note-emoji #{'js-user-authored' if user_authored} has-tooltip", data: { position: 'right' } do
      = icon('spinner spin')
      %span{ class: 'link-highlight award-control-icon-neutral' }= custom_icon('emoji_slightly_smiling_face')
      %span{ class: 'link-highlight award-control-icon-positive' }= custom_icon('emoji_smiley')
      %span{ class: 'link-highlight award-control-icon-super-positive' }= custom_icon('emoji_smile')

  - if note_editable
    = link_to '#', title: 'Edit comment', class: 'note-action-button js-note-edit has-tooltip' do
      = icon('pencil', class: 'link-highlight')
    = 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: 'note-action-button js-note-delete danger has-tooltip' do
      = icon('trash-o', class: 'danger-highlight')