diff --git a/web/root/msgs/reply.ssjs b/web/root/msgs/reply.ssjs
index be9f5065d83b797066b74b3ab3f43ff3e458c0c9..0daad14791a5498bbf6efe35050f12a911c69487 100644
--- a/web/root/msgs/reply.ssjs
+++ b/web/root/msgs/reply.ssjs
@@ -1,7 +1,5 @@
 load("html_inc/msgslib.ssjs");
 
-template.group=msg_area.grp[msg_area.sub[sub].grp_name];
-
 if(sub=='mail') {
 	template.sub=new Object;
 	template.sub.description="Personal E-Mail";
@@ -23,7 +21,19 @@ hdr=msgbase.get_msg_header(false,parseInt(http_request.query.reply_to));
 template.subject=hdr.subject;
 if(template.subject.search(/^re:\s+/i)==-1)
 	template.subject='Re: '+template.subject;
-template.from=hdr.from;
+if(sub=='mail') {
+	if(hdr.replyto_net_addr!=undefined && hdr.replyto_net_addr != '')
+		template.from=hdr.replyto_net_addr;
+	else {
+		if(hdr.from_net_addr != undefined && hdr.from_net_addr != '')
+			template.from=hdr.from_net_addr;
+		else
+			template.from=hdr.from;
+	}
+}
+else
+	template.from=hdr.from;
+
 template.number=hdr.number;
 
 template.body=msgbase.get_msg_body(false,parseInt(http_request.query.reply_to),true,true);
diff --git a/web/root/msgs/savemsg.ssjs b/web/root/msgs/savemsg.ssjs
index 95a82bc1272a34c80b2f9a644c6fdfacfaa8f888..1ba44375a32260c740bafd35994d46a27ed8ab34 100644
--- a/web/root/msgs/savemsg.ssjs
+++ b/web/root/msgs/savemsg.ssjs
@@ -1,13 +1,15 @@
 load("html_inc/msgslib.ssjs");
 
-template.group=msg_area.grp[msg_area.sub[sub].grp_name];
-
 if(sub=='mail') {
+	template.group=new Object;
+	template.group.name="E-Mail";
+	template.group.description="E-Mail";
 	template.sub=new Object;
 	template.sub.description="Personal E-Mail";
 	template.sub.code="mail";
 }
 else {
+	template.group=msg_area.grp[msg_area.sub[sub].grp_name];
 	template.sub=msg_area.sub[sub];
 }