summaryrefslogtreecommitdiff
path: root/app/views/shared/milestones/_top.html.haml
blob: 43503e1d08a88d8d14f372503a57b26db54b54dd (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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
- page_title milestone.title
- @breadcrumb_link = dashboard_milestone_path(milestone.safe_title, title: milestone.title)

- group = local_assigns[:group]
- is_dynamic_milestone = milestone.legacy_group_milestone? || milestone.dashboard_milestone?

.detail-page-header.milestone-page-header
  .status-box{ class: "status-box-#{milestone.closed? ? 'closed' : 'open'}" }
    - if milestone.closed?
      Closed
    - elsif milestone.expired?
      Expired
    - else
      Open

  .header-text-content
    %span.identifier
      Milestone #{milestone.title}
    - if milestone.due_date || milestone.start_date
      %span.creator
         ·
        = milestone_date_range(milestone)

  .milestone-buttons
    - if group
      - if can?(current_user, :admin_milestone, group)
        - if milestone.group_milestone?
          = link_to edit_group_milestone_path(group, milestone), class: "btn btn btn-grouped" do
            Edit
        - if milestone.active?
          = link_to 'Close Milestone', group_milestone_route(milestone, {state_event: :close }), method: :put, class: "btn btn-grouped btn-close"
        - else
          = link_to 'Reopen Milestone', group_milestone_route(milestone, {state_event: :activate }), method: :put, class: "btn btn-grouped btn-reopen"

        - unless is_dynamic_milestone
          = render 'shared/milestones/delete_button'

    %a.btn.btn-default.btn-grouped.float-right.d-block.d-sm-none.js-sidebar-toggle{ href: "#" }
      = icon('angle-double-left')

= render 'shared/milestones/deprecation_message' if is_dynamic_milestone

.detail-page-description.milestone-detail
  %h2.title
    = markdown_field(milestone, :title)
  - if milestone.group_milestone? && milestone.description.present?
    %div
      .description.md
        = markdown_field(milestone, :description)

- if milestone.complete?(current_user) && milestone.active?
  .alert.alert-success.prepend-top-default
    - close_msg = group ? 'You may close the milestone now.' : 'Navigate to the project to close the milestone.'
    %span All issues for this milestone are closed. #{close_msg}

= render_if_exists 'shared/milestones/burndown', milestone: @milestone, project: @project

- if is_dynamic_milestone
  .table-holder
    %table.table
      %thead
        %tr
          %th Project
          %th Open issues
          %th State
          %th Due date
        %tr
          %td
            - project_name = group ? milestone.project.name : milestone.project.full_name
            = link_to project_name, milestone_path(milestone.milestone)
          %td
            = milestone.milestone.issues_visible_to_user(current_user).opened.count
          %td
            - if milestone.closed?
              Closed
            - else
              Open
          %td
            = milestone.expires_at
- elsif milestone.group_milestone?
  %br
  View
  = link_to 'Issues', issues_group_path(@group, milestone_title: milestone.title)
  or
  = link_to 'Merge Requests', merge_requests_group_path(@group, milestone_title: milestone.title)
  in this milestone