summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarin Jankovski <marin@gitlab.com>2014-06-30 10:54:57 +0200
committerMarin Jankovski <marin@gitlab.com>2014-06-30 11:13:24 +0200
commite66a8b4cdab176ff89a685788dcbcac089712e49 (patch)
tree58cd81b66bef2e0170e66bde18eadb028b0e973c
parentc223fb1a9677ae00285426090618f5762de9f40e (diff)
downloadgitlab-ce-e66a8b4cdab176ff89a685788dcbcac089712e49.tar.gz
Move milestone link in group head, 2 column milestone for MR and issues.
-rw-r--r--app/assets/stylesheets/sections/groups.scss9
-rw-r--r--app/controllers/groups/milestones_controller.rb4
-rw-r--r--app/models/group_milestone.rb12
-rw-r--r--app/views/groups/milestones/_issue.html.haml4
-rw-r--r--app/views/groups/milestones/_issues.html.haml8
-rw-r--r--app/views/groups/milestones/_merge_request.html.haml9
-rw-r--r--app/views/groups/milestones/_merge_requests.html.haml7
-rw-r--r--app/views/groups/milestones/show.html.haml18
-rw-r--r--app/views/layouts/nav/_group.html.haml6
9 files changed, 44 insertions, 33 deletions
diff --git a/app/assets/stylesheets/sections/groups.scss b/app/assets/stylesheets/sections/groups.scss
index 60ec79acadb..e174f72882b 100644
--- a/app/assets/stylesheets/sections/groups.scss
+++ b/app/assets/stylesheets/sections/groups.scss
@@ -7,3 +7,12 @@
.member-search-form {
float: left;
}
+
+.milestone-row {
+ @include str-truncated(90%);
+}
+
+.label.label-default.project-name {
+ width: 80px;
+ @include str-truncated(80%);
+}
diff --git a/app/controllers/groups/milestones_controller.rb b/app/controllers/groups/milestones_controller.rb
index 235b27f53a9..c4b87308e8b 100644
--- a/app/controllers/groups/milestones_controller.rb
+++ b/app/controllers/groups/milestones_controller.rb
@@ -14,8 +14,8 @@ class Groups::MilestonesController < ApplicationController
def show
project_milestones = Milestone.where(project_id: group.projects)
@group_milestone = Milestones::GroupService.new(project_milestones).milestone(title)
- @project_issues = @group_milestone.filter_by(params[:status], "issues")
- @project_merge_requests = @group_milestone.filter_by(params[:status], "merge_requests")
+ @issues = @group_milestone.issues
+ @merge_requests = @group_milestone.merge_requests
end
def update
diff --git a/app/models/group_milestone.rb b/app/models/group_milestone.rb
index 0faff39ae7a..45222f5329e 100644
--- a/app/models/group_milestone.rb
+++ b/app/models/group_milestone.rb
@@ -65,16 +65,12 @@ class GroupMilestone
state == 'closed'
end
- def opened_unassigned_issues
- milestones.map{ |milestone| milestone.issues.opened.unassigned }
+ def issues
+ milestones.map{ |milestone| milestone.issues }.flatten.group_by(&:state)
end
- def opened_assigned_issues
- milestones.map{ |milestone| milestone.issues.opened.assigned }
- end
-
- def closed_issues
- milestones.map{ |milestone| milestone.issues.closed }
+ def merge_requests
+ milestones.map{ |milestone| milestone.merge_requests }.flatten.group_by(&:state)
end
def participants
diff --git a/app/views/groups/milestones/_issue.html.haml b/app/views/groups/milestones/_issue.html.haml
index 7009400a46c..759003bb56c 100644
--- a/app/views/groups/milestones/_issue.html.haml
+++ b/app/views/groups/milestones/_issue.html.haml
@@ -1,6 +1,8 @@
%li{ id: dom_id(issue, 'sortable'), class: 'issue-row', 'data-iid' => issue.iid }
- %span.str-truncated
+ %span.milestone-row
- project = issue.project
+ %span.label.label-default.project-name
+ = project.name
= link_to [project, issue] do
%span.cgray ##{issue.iid}
= link_to_gfm issue.title, [project, issue]
diff --git a/app/views/groups/milestones/_issues.html.haml b/app/views/groups/milestones/_issues.html.haml
index 3fefb2f0107..9f350b772bd 100644
--- a/app/views/groups/milestones/_issues.html.haml
+++ b/app/views/groups/milestones/_issues.html.haml
@@ -1,6 +1,6 @@
.panel.panel-default
- .panel-heading= name
+ .panel-heading= title
%ul{ class: "well-list issues-sortable-list" }
- - issues.each do |issue|
- = render 'issue', issue: issue
-
+ - if issues
+ - issues.each do |issue|
+ = render 'issue', issue: issue
diff --git a/app/views/groups/milestones/_merge_request.html.haml b/app/views/groups/milestones/_merge_request.html.haml
index 4f11aaa74b7..95d5de002df 100644
--- a/app/views/groups/milestones/_merge_request.html.haml
+++ b/app/views/groups/milestones/_merge_request.html.haml
@@ -1,6 +1,11 @@
%li{ id: dom_id(merge_request, 'sortable'), class: 'mr-row', 'data-iid' => merge_request.iid }
- %span.str-truncated
+ %span.milestone-row
- project = merge_request.project
+ %span.label.label-default.project-name
+ = project.name
= link_to [project, merge_request] do
%span.cgray ##{merge_request.iid}
- = link_to_gfm truncate(merge_request.title, length: 60), [project, merge_request]
+ = link_to_gfm merge_request.title, [project, merge_request]
+ .pull-right.assignee-icon
+ - if merge_request.assignee
+ = image_tag avatar_icon(merge_request.assignee.email, 16), class: "avatar s16"
diff --git a/app/views/groups/milestones/_merge_requests.html.haml b/app/views/groups/milestones/_merge_requests.html.haml
index 9bb213ffe32..ddf7f5ee559 100644
--- a/app/views/groups/milestones/_merge_requests.html.haml
+++ b/app/views/groups/milestones/_merge_requests.html.haml
@@ -1,5 +1,6 @@
.panel.panel-default
- .panel-heading= name
+ .panel-heading= title
%ul{ class: "well-list merge_requests-sortable-list" }
- - merge_requests.sort_by(&:position).each do |merge_request|
- = render 'merge_request', merge_request: merge_request
+ - if merge_requests
+ - merge_requests.sort_by(&:position).each do |merge_request|
+ = render 'merge_request', merge_request: merge_request
diff --git a/app/views/groups/milestones/show.html.haml b/app/views/groups/milestones/show.html.haml
index a450e7d09a5..d7bf6ae3c5c 100644
--- a/app/views/groups/milestones/show.html.haml
+++ b/app/views/groups/milestones/show.html.haml
@@ -52,19 +52,17 @@
.tab-content
.tab-pane.active#tab-issues
.row
- .col-md-4.responsive-side
- = render 'groups/filter', entity: 'milestone'
- .col-md-8
- - @project_issues.each do |name, issues|
- = render 'issues', name: name, issues: issues
+ .col-md-6
+ = render 'issues', title: "Open", issues: @issues["opened"]
+ .col-md-6
+ = render 'issues', title: "Closed", issues: @issues["closed"]
.tab-pane#tab-merge-requests
.row
- .col-md-4.responsive-side
- = render 'groups/filter', entity: 'milestone'
- .col-md-8
- - @project_merge_requests.each do |name, merge_requests|
- = render 'merge_requests', name: name, merge_requests: merge_requests
+ .col-md-6
+ = render 'merge_requests', title: "Open", merge_requests: @merge_requests["opened"]
+ .col-md-6
+ = render 'merge_requests', title: "Closed", merge_requests: @merge_requests["closed"]
.tab-pane#tab-participants
%ul.bordered-list
diff --git a/app/views/layouts/nav/_group.html.haml b/app/views/layouts/nav/_group.html.haml
index 429848e3cbd..5d161a17bfc 100644
--- a/app/views/layouts/nav/_group.html.haml
+++ b/app/views/layouts/nav/_group.html.haml
@@ -2,6 +2,9 @@
= nav_link(path: 'groups#show', html_options: {class: 'home'}) do
= link_to group_path(@group), title: "Home" do
Activity
+ = nav_link(path: 'groups#milestones') do
+ = link_to group_milestones_path(@group) do
+ Milestones
= nav_link(path: 'groups#issues') do
= link_to issues_group_path(@group) do
Issues
@@ -12,9 +15,6 @@
Merge Requests
- if current_user
%span.count= current_user.cared_merge_requests.opened.of_group(@group).count
- = nav_link(path: 'groups#milestones') do
- = link_to group_milestones_path(@group) do
- Milestones
= nav_link(path: 'groups#members') do
= link_to "Members", members_group_path(@group)