From fc7a624c1ed59d813155d71dcad8c8dc8795d5ad Mon Sep 17 00:00:00 2001
From: paz <paz@schleuder.org>
Date: Wed, 9 Feb 2022 09:33:29 +0100
Subject: [PATCH] Tag the issue upon emails that probably require a response

Follow-up emails now lead to the issue being tagged with `needs-anwer`,
unless they are closing the issue, or are signed by a subscriber.
The tag is removed if the issue is closed, or if the email resends
itself.
---
 lib/schleuder-gitlab-ticketing/list.rb | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/lib/schleuder-gitlab-ticketing/list.rb b/lib/schleuder-gitlab-ticketing/list.rb
index da288e4..3ab042e 100644
--- a/lib/schleuder-gitlab-ticketing/list.rb
+++ b/lib/schleuder-gitlab-ticketing/list.rb
@@ -47,11 +47,20 @@ module SchleuderGitlabTicketing
 
       if !tc && bc
         labels.delete('inprocess')
+        labels.delete('needs-answer')
         updates[:state_event] = 'close'
       elsif !tc && !bc
         labels << 'inprocess' if updates[:assignee_id]
+        if from_subscriber(mail)
+          if has_x_resend(mail)
+            labels.delete('needs-answer')
+          end
+        else
+          labels << 'needs-answer'
+        end
       elsif tc && !bc
         labels << 'inprocess'
+        labels << 'needs-answer'
         updates[:state_event] = 'reopen'
       end
       if labels.empty? && (updates[:state_event] == 'close')
-- 
GitLab