OSDN Git Service

Scrum view style milestone view.
authorSytse Sijbrandij <sytse@gitlab.com>
Mon, 10 Jun 2013 17:24:49 +0000 (17:24 +0000)
committerSytse Sijbrandij <sytse@gitlab.com>
Mon, 10 Jun 2013 17:24:49 +0000 (17:24 +0000)
app/assets/javascripts/milestones.js.coffee
app/models/issue.rb
app/views/milestones/_issues.html.haml [new file with mode: 0644]
app/views/milestones/show.html.haml

index 99a52bf..78a16e9 100644 (file)
@@ -1,11 +1,4 @@
 $ ->
-  $('.milestone-issue-filter li[data-closed]').addClass('hide')
-
-  $('.milestone-issue-filter ul.nav li a').click ->
-    $('.milestone-issue-filter li').toggleClass('active')
-    $('.milestone-issue-filter li[data-closed]').toggleClass('hide')
-    false
-
   $('.milestone-merge-requests-filter li[data-closed]').addClass('hide')
 
   $('.milestone-merge-requests-filter ul.nav li a').click ->
index 91dd647..6ad11e8 100644 (file)
@@ -28,6 +28,8 @@ 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
new file mode 100644 (file)
index 0000000..bd4fef1
--- /dev/null
@@ -0,0 +1,12 @@
+.span6
+  .ui-box.milestone-issue-filter
+    .title
+      %ul.nav.nav-pills
+        %li=issues.first
+    %ul.well-list
+      - issues.second.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
index 034c378..fa13f55 100644 (file)
 
 
 .row
-  .span6
-    .ui-box.milestone-issue-filter
-      .title
-        %ul.nav.nav-pills
-          %li.active= link_to('Open Issues', '#')
-          %li=link_to('All Issues', '#')
-      %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]
+  =render(:partial => 'issues', :object => ['Unstarted Issues (open and unassigned)', @issues.opened.unassigned])
+
+  =render(:partial => 'issues', :object => ['Ongoing Issues (open and assigned) ', @issues.opened.assigned])
 
+.row
   .span6
     .ui-box.milestone-merge-requests-filter
       .title
@@ -84,6 +75,8 @@
             &ndash;
             = link_to_gfm truncate(merge_request.title, length: 60), [@project, merge_request]
 
+  =render(:partial => 'issues', :object => ['Completed Issues (closed)', @issues.closed])
+
 %hr
 %h6 Participants:
 %div