summaryrefslogtreecommitdiff
path: root/app/views/dashboard/todos/_todo.html.haml
blob: fdb71d3a2215b16542bf2f59cfce3b6fb26b2895 (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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
%li{ class: "todo todo-#{todo.done? ? 'done' : 'pending'}", id: dom_id(todo), data: { url: todo_target_path(todo) } }
  .todo-avatar
    = author_avatar(todo, size: 40)

  .todo-item.todo-block.align-self-center
    .todo-title
      - unless todo.build_failed? || todo.unmergeable?
        = todo_target_state_pill(todo)

        %span.title-item.author-name.bold
          - if todo.author
            = link_to_author(todo, self_added: todo.self_added?)
          - else
            (removed)

      %span.title-item.action-name
        = todo_action_name(todo)

      %span.title-item.todo-label.todo-target-link
        - if todo.target
          = todo_target_link(todo)
        - else
          = _("(removed)")

      %span.title-item.todo-target-title
        = todo_target_title(todo)

      %span.title-item.todo-project.todo-label
        at
        = todo_parent_path(todo)

      - if todo.self_assigned?
        %span.title-item.action-name
          to yourself

      %span.title-item
        ·

      %span.title-item.todo-timestamp
        #{time_ago_with_tooltip(todo.created_at)}
        = todo_due_date(todo)

    - if todo.note.present?
      .todo-body
        .todo-note.break-word
          .md
            = first_line_in_markdown(todo, :body, 150, project: todo.project)

  - if todo.pending?
    .todo-actions
      = link_to dashboard_todo_path(todo), method: :delete, class: 'btn btn-loading js-done-todo', data: { href: dashboard_todo_path(todo) } do
        Done
        = icon('spinner spin')
      = link_to restore_dashboard_todo_path(todo), method: :patch, class: 'btn btn-loading js-undo-todo hidden', data: { href: restore_dashboard_todo_path(todo) } do
        Undo
        = icon('spinner spin')
  - else
    .todo-actions
      = link_to restore_dashboard_todo_path(todo), method: :patch, class: 'btn btn-loading js-add-todo', data: { href: restore_dashboard_todo_path(todo) } do
        Add a To Do
        = icon('spinner spin')