diff --git a/web/root/msgs/msg.ssjs b/web/root/msgs/msg.ssjs
index 56388e3cdad1a3ff78efb08d14844aaeccd167a0..684eff0603ab8037e7eae0649b7b332131ad5ff8 100644
--- a/web/root/msgs/msg.ssjs
+++ b/web/root/msgs/msg.ssjs
@@ -27,6 +27,14 @@ if(msgbase.open!=undefined && msgbase.open()==false) {
 var hdr=msgbase.get_msg_header(false,m);
 if(hdr==null)
 	error(msgbase.last_error);
+if((!(system.settings & SYS_USRVDELM)) || (user.security.level >= 90 && (!(system.settings & SYS_SYSVDELM))) ) {
+	if(hdr.attr & MSG_DELETE)
+		error("Message has been deleted");
+}
+if(hdr.attr & MSG_MODERATED) {
+	if(!(hdr.attr & MSG_VALIDATED))
+		error("Message pending moderator validation");
+}
 if(hdr.from_ext != null) {
 	template.u_num = hdr.from_ext;
 	usr = new User(template.u_num);