summaryrefslogtreecommitdiff
path: root/app/views/discussions/_notes.html.haml
blob: 0a5541c3e82e307e98806b5d090fa30bc3156b72 (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
45
46
- disable_collapse_class = local_assigns.fetch(:disable_collapse_class, false)
- collapsed_class = 'collapsed' if discussion.resolved? && !disable_collapse_class
- badge_counter = discussion_counter + 1 if local_assigns[:discussion_counter]
- show_toggle = local_assigns.fetch(:show_toggle, true)
- show_image_comment_badge = local_assigns.fetch(:show_image_comment_badge, false)

.discussion-notes{ class: collapsed_class }
  -# Save the first note position data so that we have a reference and can go
  -# to the first note position when we click on a badge diff discussion
  %ul.notes{ id: "discussion_#{discussion.id}", data: { discussion_id: discussion.id, position: discussion.notes[0].position.to_json } }
    - if discussion.try(:on_image?) && show_toggle
      %button.diff-notes-collapse.js-diff-notes-toggle{ type: 'button' }
        = sprite_icon('collapse', css_class: 'collapse-icon')
      %button.btn-transparent.badge.badge-pill.js-diff-notes-toggle{ type: 'button' }
        = badge_counter
    = render partial: "shared/notes/note", collection: discussion.notes, as: :note, locals: { badge_counter: badge_counter, show_image_comment_badge: show_image_comment_badge }

  .flash-container

  .discussion-reply-holder
    - if can_create_note?
      %a.user-avatar-link.d-none.d-sm-block{ href: user_path(current_user) }
        = image_tag avatar_icon_for_user(current_user), alt: current_user.to_reference, class: 'avatar s40'
      - if discussion.potentially_resolvable?
        - line_type = local_assigns.fetch(:line_type, nil)

        .discussion-with-resolve-btn
          .btn-group.discussion-with-resolve-btn{ role: "group" }
            .btn-group{ role: "group" }
              = link_to_reply_discussion(discussion, line_type)

            = render "discussions/resolve_all", discussion: discussion

            .btn-group.discussion-actions
              = render "discussions/new_issue_for_discussion", discussion: discussion, merge_request: discussion.noteable
              = render "discussions/jump_to_next", discussion: discussion
      - else
        .discussion-with-resolve-btn
          = link_to_reply_discussion(discussion)
    - elsif !current_user
      .disabled-comment.text-center
        Please
        = link_to "register", new_session_path(:user, redirect_to_referer: 'yes')
        or
        = link_to "sign in", new_session_path(:user, redirect_to_referer: 'yes')
        to reply