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

sebb 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 d0507327 Also add Pending messages
d0507327 is described below

commit d05073271e8e9fc0c0af425cf84791a24d3378ff
Author: Sebb <[email protected]>
AuthorDate: Tue Aug 6 11:30:07 2024 +0100

    Also add Pending messages
---
 www/secretary/workbench/server.rb             | 15 +++++++++++++
 www/secretary/workbench/views/index.html.rb   |  2 ++
 www/secretary/workbench/views/pending.html.rb | 32 +++++++++++++++++++++++++++
 3 files changed, 49 insertions(+)

diff --git a/www/secretary/workbench/server.rb 
b/www/secretary/workbench/server.rb
index 2fa04c30..807a0212 100644
--- a/www/secretary/workbench/server.rb
+++ b/www/secretary/workbench/server.rb
@@ -118,6 +118,21 @@ get %r{/(\d{6})/deleted} do |mbox|
   _html :deleted
 end
 
+get '/pending' do
+  current = Mailbox.allmailboxes.last
+  redirect to("/#{current}/pending")
+end
+
+# display pending messages
+get %r{/(\d{6})/pending} do |mbox|
+  @mbox = mbox
+  @prv, @nxt = Mailbox.prev_next(mbox)
+  @messages = Mailbox.new(@mbox).client_headers.reject do |message|
+    message[:status] == :deleted
+  end
+  _html :pending
+end
+
 get '/all' do
   current = Mailbox.allmailboxes.last
   redirect to("/#{current}/all")
diff --git a/www/secretary/workbench/views/index.html.rb 
b/www/secretary/workbench/views/index.html.rb
index a7ef8fa7..c4bec1ea 100644
--- a/www/secretary/workbench/views/index.html.rb
+++ b/www/secretary/workbench/views/index.html.rb
@@ -15,6 +15,8 @@ _html do
     _a 'Deleted messages', href: 'deleted'
     _ '-'
     _a 'All messages', href: 'all'
+    _ '-'
+    _a 'Pending messages', href: 'pending'
   end
 
   _div_.index!
diff --git a/www/secretary/workbench/views/pending.html.rb 
b/www/secretary/workbench/views/pending.html.rb
new file mode 100644
index 00000000..26e570b2
--- /dev/null
+++ b/www/secretary/workbench/views/pending.html.rb
@@ -0,0 +1,32 @@
+_html do
+  _h1 "Pending messages for #{@mbox}"
+  _a 'Workbench', href: '..'
+  if @prv
+    _a 'Previous', href: "../#{@prv}/pending"
+  end
+  if @nxt
+    _a 'Next', href: "../#{@nxt}/pending"
+  end
+  _table.table do
+    _thead do
+      _tr do
+        _th 'Timestamp'
+        _th 'From'
+        _th 'Subject'
+      end
+    end
+    _tbody do
+      @messages.each do |msg|
+        time = Time.parse(msg[:time]).to_s
+        _tr do
+          _td do
+            _a time, href: "../%s" % msg[:href], title: time
+          end
+          _td msg[:from]
+          _td msg[:subject]
+        end
+      end
+    end
+  end
+  _hr
+end

Reply via email to