This is an automated email from the ASF dual-hosted git repository.

rubys pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/whimsy.git

The following commit(s) were added to refs/heads/master by this push:
       new  40c4db9   initial (read-only) display of emails that may need to be 
followed up
40c4db9 is described below

commit 40c4db90b261c217e3bdca039fda797a0e849410
Author: Sam Ruby <[email protected]>
AuthorDate: Tue May 30 09:36:50 2017 -0400

    initial (read-only) display of emails that may need to be followed up
---
 www/board/agenda/views/pages/shepherd.js.rb | 42 ++++++++++++++++++++++++++++-
 1 file changed, 41 insertions(+), 1 deletion(-)

diff --git a/www/board/agenda/views/pages/shepherd.js.rb 
b/www/board/agenda/views/pages/shepherd.js.rb
index 266539f..fbf3546 100644
--- a/www/board/agenda/views/pages/shepherd.js.rb
+++ b/www/board/agenda/views/pages/shepherd.js.rb
@@ -6,6 +6,7 @@
 class Shepherd < React
   def initialize
     @disabled = false
+    @followup = []
   end
 
   def render
@@ -15,9 +16,10 @@ class Shepherd < React
     if actions.actions.any? {|action| action.owner == @@item.shepherd}
       _h2 'Action Items'
       _ActionItems item: actions, filter: {owner: @@item.shepherd}
-      _h2 'Committee Reports'
     end
 
+    _h2 'Committee Reports'
+
     # list agenda items associated with this shepherd
     Agenda.index.each do |item|
       if item.shepherd and item.shepherd.downcase().start_with? shepherd
@@ -42,6 +44,44 @@ class Shepherd < React
         end
       end
     end
+
+    # list feedback items that may need to be followed up
+    followup = []
+    for title in @followup
+       next unless @followup[title].shepherd == @@item.shepherd
+       next if Agenda.index.any? {|item| item.title == title}
+       @followup[title].title = title
+       followup << @followup[title]
+    end
+
+    unless followup.empty?
+      _h2 'Feedback that may require followup'
+      followup.each do |followup|
+        _div.h3.ready followup.title
+        splitComments(followup.comments).each do |comment|
+          _pre.comment comment
+        end
+      end
+    end
+  end
+
+  # Fetch followup items
+  def componentDidMount()
+    # if cached, reuse
+    if Shepherd.followup
+      @followup = Shepherd.followup
+      return
+    end
+
+    # determine date of previous meeting
+    agenda = Server.agendas[-2]
+    return unless agenda
+    date = agenda[/\d+_\d+_\d+/].gsub('_', '-')
+
+    retrieve "../#{date}/followup.json", :json do |followup|
+      Shepherd.followup = followup
+      @followup = followup
+    end
   end
 
   def click(event)

-- 
To stop receiving notification emails like this one, please contact
['"[email protected]" <[email protected]>'].

Reply via email to