summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/assets/javascripts/milestones.js.coffee7
-rw-r--r--app/contexts/issues/list_context.rb2
-rw-r--r--app/models/concerns/issuable.rb4
-rw-r--r--app/models/issue.rb2
-rw-r--r--app/views/milestones/_issues.html.haml21
-rw-r--r--app/views/milestones/_merge_request.html.haml5
-rw-r--r--app/views/milestones/show.html.haml70
-rw-r--r--features/steps/project/project_milestones.rb2
-rw-r--r--features/steps/userteams/userteams.rb4
9 files changed, 68 insertions, 49 deletions
diff --git a/app/assets/javascripts/milestones.js.coffee b/app/assets/javascripts/milestones.js.coffee
deleted file mode 100644
index 78a16e91b46..00000000000
--- a/app/assets/javascripts/milestones.js.coffee
+++ /dev/null
@@ -1,7 +0,0 @@
-$ ->
- $('.milestone-merge-requests-filter li[data-closed]').addClass('hide')
-
- $('.milestone-merge-requests-filter ul.nav li a').click ->
- $('.milestone-merge-requests-filter li').toggleClass('active')
- $('.milestone-merge-requests-filter li[data-closed]').toggleClass('hide')
- false
diff --git a/app/contexts/issues/list_context.rb b/app/contexts/issues/list_context.rb
index a35bddd6443..906a83b58a6 100644
--- a/app/contexts/issues/list_context.rb
+++ b/app/contexts/issues/list_context.rb
@@ -8,7 +8,7 @@ module Issues
@issues = case params[:status]
when issues_filter[:all] then @project.issues
when issues_filter[:closed] then @project.issues.closed
- when issues_filter[:to_me] then @project.issues.assigned(current_user)
+ when issues_filter[:to_me] then @project.issues.assigned_to(current_user)
when issues_filter[:by_me] then @project.issues.authored(current_user)
else @project.issues.opened
end
diff --git a/app/models/concerns/issuable.rb b/app/models/concerns/issuable.rb
index 85337583640..11e3d8eed19 100644
--- a/app/models/concerns/issuable.rb
+++ b/app/models/concerns/issuable.rb
@@ -22,8 +22,10 @@ module Issuable
scope :closed, -> { with_state(:closed) }
scope :of_group, ->(group) { where(project_id: group.project_ids) }
scope :of_user_team, ->(team) { where(project_id: team.project_ids, assignee_id: team.member_ids) }
- scope :assigned, ->(u) { where(assignee_id: u.id)}
+ scope :assigned_to, ->(u) { where(assignee_id: u.id)}
scope :recent, -> { order("created_at DESC") }
+ scope :assigned, -> { where("assignee_id IS NOT NULL") }
+ scope :unassigned, -> { where("assignee_id IS NULL") }
delegate :name,
:email,
diff --git a/app/models/issue.rb b/app/models/issue.rb
index ee92d944b03..91dd6477b04 100644
--- a/app/models/issue.rb
+++ b/app/models/issue.rb
@@ -28,8 +28,6 @@ class Issue < ActiveRecord::Base
scope :cared, ->(user) { where(assignee_id: user) }
scope :authored, ->(user) { where(author_id: user) }
scope :open_for, ->(user) { opened.assigned(user) }
- scope :assigned, -> { where("assignee_id IS NOT NULL") }
- scope :unassigned, -> { where("assignee_id IS NULL") }
state_machine :state, initial: :opened do
event :close do
diff --git a/app/views/milestones/_issues.html.haml b/app/views/milestones/_issues.html.haml
index 8c42330a65d..eccf3ddbfa5 100644
--- a/app/views/milestones/_issues.html.haml
+++ b/app/views/milestones/_issues.html.haml
@@ -1,10 +1,11 @@
-.span6
- .ui-box.milestone-issue-filter
- %h5.title= title
- %ul.well-list
- - issues.each do |issue|
- %li{data: {closed: issue.closed?}}
- = link_to [@project, issue] do
- %span.badge.badge-info ##{issue.id}
- &ndash;
- = link_to_gfm truncate(issue.title, length: 60), [@project, issue] \ No newline at end of file
+.ui-box
+ %h5.title= title
+ %ul.well-list
+ - issues.each do |issue|
+ %li
+ = link_to [@project, issue] do
+ %span.badge{class: issue.closed? ? 'badge-important' : 'badge-info'} ##{issue.id}
+ = link_to_gfm truncate(issue.title, length: 60), [@project, issue]
+ - if issue.assignee
+ .pull-right
+ = image_tag gravatar_icon(issue.assignee.email, 16), class: "avatar s16"
diff --git a/app/views/milestones/_merge_request.html.haml b/app/views/milestones/_merge_request.html.haml
new file mode 100644
index 00000000000..7f815894069
--- /dev/null
+++ b/app/views/milestones/_merge_request.html.haml
@@ -0,0 +1,5 @@
+%li
+ = link_to [@project, merge_request] do
+ %span.badge.badge-info ##{merge_request.id}
+ &ndash;
+ = link_to_gfm truncate(merge_request.title, length: 60), [@project, merge_request]
diff --git a/app/views/milestones/show.html.haml b/app/views/milestones/show.html.haml
index 9f665206acb..de33ab363e6 100644
--- a/app/views/milestones/show.html.haml
+++ b/app/views/milestones/show.html.haml
@@ -55,32 +55,52 @@
= markdown @milestone.description
-.row
- = render(partial: 'issues', locals: {title: 'Unstarted Issues (open and unassigned)', issues: @issues.opened.unassigned})
-
- = render(partial: 'issues', locals: {title: 'Ongoing Issues (open and assigned)', issues: @issues.opened.assigned})
+%ul.nav.nav-tabs
+ %li.active
+ = link_to '#tab-issues', 'data-toggle' => 'tab' do
+ Issues
+ %span.badge= @issues.count
+ %li
+ = link_to '#tab-merge-requests', 'data-toggle' => 'tab' do
+ Merge Requests
+ %span.badge= @merge_requests.count
+ %li
+ = link_to '#tab-participants', 'data-toggle' => 'tab' do
+ Participants
+ %span.badge= @users.count
-.row
- .span6
- .ui-box.milestone-merge-requests-filter
- .title
- %ul.nav.nav-pills
- %li.active= link_to('Open Merge Requests', '#')
- %li=link_to('All Merge Requests', '#')
- %ul.well-list
- - @merge_requests.each do |merge_request|
- %li{data: {closed: merge_request.closed? || merge_request.merged?}}
- = link_to [@project, merge_request] do
- %span.badge.badge-info ##{merge_request.id}
- &ndash;
- = link_to_gfm truncate(merge_request.title, length: 60), [@project, merge_request]
- = render(:partial => 'issues', locals: {title: 'Completed Issues (closed)', issues: @issues.closed})
+.tab-content
+ .tab-pane.active#tab-issues
+ .row
+ .span4
+ = render('issues', title: 'Unstarted Issues (open and unassigned)', issues: @issues.opened.unassigned)
+ .span4
+ = render('issues', title: 'Ongoing Issues (open and assigned)', issues: @issues.opened.assigned)
+ .span4
+ = render('issues', title: 'Completed Issues (closed)', issues: @issues.closed)
-%hr
-%h6 Participants:
-%div
- - @users.each do |user|
- = link_to_member(@project, user)
+ .tab-pane#tab-merge-requests
+ .row
+ .span6
+ .ui-box
+ %h5.title Open
+ %ul.well-list
+ - @merge_requests.opened.each do |merge_request|
+ = render 'merge_request', merge_request: merge_request
+ .span6
+ .ui-box
+ %h5.title Closed
+ %ul.well-list
+ - @merge_requests.closed.each do |merge_request|
+ = render 'merge_request', merge_request: merge_request
-.clearfix
+ .tab-pane#tab-participants
+ %ul.bordered-list
+ - @users.each do |user|
+ %li
+ = link_to user, title: user.name, class: "dark" do
+ = image_tag gravatar_icon(user.email, 32), class: "avatar s32"
+ %strong= truncate(user.name, lenght: 40)
+ %br
+ %small.cgray= user.username
diff --git a/features/steps/project/project_milestones.rb b/features/steps/project/project_milestones.rb
index ba2a0184d7e..c4d0d176f3a 100644
--- a/features/steps/project/project_milestones.rb
+++ b/features/steps/project/project_milestones.rb
@@ -50,6 +50,6 @@ class ProjectMilestones < Spinach::FeatureSteps
end
Then "I should see 3 issues" do
- page.should have_selector('.milestone-issue-filter .well-list li', count: 4)
+ page.should have_selector('#tab-issues li', count: 4)
end
end
diff --git a/features/steps/userteams/userteams.rb b/features/steps/userteams/userteams.rb
index a0389ff9cca..b4b2fb66a50 100644
--- a/features/steps/userteams/userteams.rb
+++ b/features/steps/userteams/userteams.rb
@@ -93,7 +93,7 @@ class Userteams < Spinach::FeatureSteps
Then 'I should see issues from this team assigned to me' do
team = UserTeam.last
team.projects.each do |project|
- project.issues.assigned(current_user).each do |issue|
+ project.issues.assigned_to(current_user).each do |issue|
page.should have_content issue.title
end
end
@@ -121,7 +121,7 @@ class Userteams < Spinach::FeatureSteps
team = UserTeam.last
team.projects.each do |project|
team.members.each do |member|
- project.issues.assigned(member).each do |issue|
+ project.issues.assigned_to(member).each do |issue|
page.should have_content issue.title
end
end