From 905eff3fbf5d129a98549cd903ef9a82778ab0c5 Mon Sep 17 00:00:00 2001
From: deuce <>
Date: Thu, 9 Dec 2004 04:29:08 +0000
Subject: [PATCH] Add a can_delete() function takes a message number and
 returns true if the current user is (currently) allowed to delete that
 message.

---
 web/lib/msgslib.ssjs | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/web/lib/msgslib.ssjs b/web/lib/msgslib.ssjs
index 052dd52328..1a87ad2b15 100644
--- a/web/lib/msgslib.ssjs
+++ b/web/lib/msgslib.ssjs
@@ -103,3 +103,20 @@ function get_msg_offset(number)
 	}
 	return(undefined);
 }
+
+function can_delete(mnum)
+{
+	if(sub=='mail' && ((idx=msgbase.get_msg_index(false,mnum))==null || idx.to!=user.number))
+		return(false);
+	if(sub!='mail' && !msg_area.sub[sub].is_operator) {
+		if(!msg_area.sub[sub].settings&SUB_DEL)
+			return(false);
+		if(msg_area.sub[sub].settings&SUB_DELLAST) {
+			if(msgbase.last_msg!=mnum)
+				return(false);
+		}
+		if((hdr=msgbase.get_msg_header(false,mnum))==null || hdr.from_ext!=user.number)
+			return(false);
+	}
+	return(true);
+}
-- 
GitLab