Welcome to mirror list, hosted at ThFree Co, Russian Federation.

show.html.haml « milestones « projects « views « app - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 460950d59d7f097f778bc420ff04f8201ac224da (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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
- page_title       @milestone.title, "Milestones"
- page_description @milestone.description

= render "header_title"

.detail-page-header
  .status-box{ class: status_box_class(@milestone) }
    - if @milestone.closed?
      Closed
    - elsif @milestone.expired?
      Expired
    - else
      Open
  %span.identifier
    Milestone ##{@milestone.iid}
  - if @milestone.expires_at
    %span.creator
      ·
      = @milestone.expires_at
  .pull-right
    - if can?(current_user, :admin_milestone, @project)
      - if @milestone.active?
        = link_to 'Close Milestone', namespace_project_milestone_path(@project.namespace, @project, @milestone, milestone: {state_event: :close }), method: :put, class: "btn btn-close btn-nr btn-grouped"
      - else
        = link_to 'Reopen Milestone', namespace_project_milestone_path(@project.namespace, @project, @milestone, milestone: {state_event: :activate }), method: :put, class: "btn btn-reopen btn-nr btn-grouped"

      = link_to namespace_project_milestone_path(@project.namespace, @project, @milestone), data: { confirm: 'Are you sure?' }, method: :delete, class: "btn btn-grouped btn-nr" do
        = icon('trash-o')
        Delete

      = link_to edit_namespace_project_milestone_path(@project.namespace, @project, @milestone), class: "btn btn-grouped btn-nr" do
        = icon('pencil-square-o')
        Edit

.detail-page-description.content-block
  %h2.title
    = markdown escape_once(@milestone.title), pipeline: :single_line
  %div
    - if @milestone.description.present?
      .description
        .wiki
          = preserve do
            = markdown @milestone.description

- if @milestone.issues.any? && @milestone.can_be_closed?
  .alert.alert-success.prepend-top-default
    %span All issues for this milestone are closed. You may close milestone now.

.context.prepend-top-default
  .milestone-summary
    %h4 Progress
    %strong= @milestone.issues.count
    issues:
    %span.milestone-stat
      %strong= @milestone.open_items_count
      open and
      %strong= @milestone.closed_items_count
      closed
    %span.milestone-stat
      %strong== #{@milestone.percent_complete}%
      complete
    %span.milestone-stat
      %span.time-elapsed
        %strong== #{@milestone.percent_time_used}%
        time elapsed
    %span.pull-right.tab-issues-buttons.tab-labels-buttons
      - if can?(current_user, :create_issue, @project)
        = link_to new_namespace_project_issue_path(@project.namespace, @project, issue: { milestone_id: @milestone.id }), class: "btn  btn-grouped", title: "New Issue" do
          %i.fa.fa-plus
          New Issue
      - if can?(current_user, :read_issue, @project)
        = link_to 'Browse Issues', namespace_project_issues_path(@milestone.project.namespace, @milestone.project, milestone_title: @milestone.title), class: "btn btn-grouped"
    %span.pull-right.tab-merge-requests-buttons.hidden
      - if can?(current_user, :read_merge_request, @project)
        = link_to 'Browse Merge Requests', namespace_project_merge_requests_path(@milestone.project.namespace, @milestone.project, milestone_title: @milestone.title), class: "btn btn-grouped"

  = milestone_progress_bar(@milestone)

%ul.nav-links.no-top.no-bottom
  %li.active
    = link_to '#tab-issues', 'data-toggle' => 'tab', 'data-show' => '.tab-issues-buttons' do
      Issues
      %span.badge= @issues.count
  %li
    = link_to '#tab-merge-requests', 'data-toggle' => 'tab', 'data-show' => '.tab-merge-requests-buttons' do
      Merge Requests
      %span.badge= @merge_requests.count
  %li
    = link_to '#tab-participants', 'data-toggle' => 'tab' do
      Participants
      %span.badge= @users.count
  %li
    = link_to '#tab-labels', 'data-toggle' => 'tab', 'data-show' => '.tab-issues-buttons' do
      Labels
      %span.badge= @labels.count

.tab-content
  .tab-pane.active#tab-issues
    .row.prepend-top-default
      .col-md-4
        = render('issues', title: 'Unstarted Issues (open and unassigned)', issues: @issues.opened.unassigned, id: 'unassigned')
      .col-md-4
        = render('issues', title: 'Ongoing Issues (open and assigned)', issues: @issues.opened.assigned, id: 'ongoing')
      .col-md-4
        = render('issues', title: 'Completed Issues (closed)', issues: @issues.closed, id: 'closed')

  .tab-pane#tab-merge-requests
    .row.prepend-top-default
      .col-md-3
        = render('merge_requests', title: 'Work in progress (open and unassigned)', merge_requests: @merge_requests.opened.unassigned, id: 'unassigned')
      .col-md-3
        = render('merge_requests', title: 'Waiting for merge (open and assigned)', merge_requests: @merge_requests.opened.assigned, id: 'ongoing')
      .col-md-3
        = render('merge_requests', title: 'Rejected (closed)', merge_requests: @merge_requests.closed, id: 'closed')
      .col-md-3
        .panel.panel-primary
          .panel-heading Merged
          %ul.well-list
            - @merge_requests.merged.each do |merge_request|
              = render 'merge_request', merge_request: merge_request

  .tab-pane#tab-participants
    .content-block.oneline-block
      All participants to this milestone

    %ul.bordered-list
      - @users.each do |user|
        %li
          = link_to user, title: user.name, class: "darken" do
            = image_tag avatar_icon(user, 32), class: "avatar s32"
            %strong= truncate(user.name, lenght: 40)
            %br
            %small.cgray= user.username

  .tab-pane#tab-labels
    .gray-content-block.middle-block
      .pull-right
        - if can?(current_user, :create_issue, @project)
          = link_to new_namespace_project_issue_path(@project.namespace, @project, issue: { milestone_id: @milestone.id }), class: "btn  btn-grouped", title: "New Issue" do
            %i.fa.fa-plus
            New Issue
        - if can?(current_user, :read_issue, @project)
          = link_to 'Browse Issues', namespace_project_issues_path(@milestone.project.namespace, @milestone.project, milestone_title: @milestone.title), class: "btn btn-grouped"

      .oneline
        All labels in this milestone
    %ul.bordered-list.manage-labels-list
      - @labels.each do |label|
        %li
          = render_colored_label(label)
          %span.issues-count= pluralize label.open_issues_count, 'open issue'
          %span.issues-count= pluralize label.closed_issues_count, 'closed issue'