Skip to content
Snippets Groups Projects
Commit 72047e95 authored by rswindell's avatar rswindell
Browse files

Added support for multiple newsgroup postings.

parent 2b8ac01e
Branches
Tags
No related merge requests found
...@@ -331,7 +331,7 @@ while(client.socket.is_connected) { ...@@ -331,7 +331,7 @@ while(client.socket.is_connected) {
var posted=false; var posted=false;
var header=true; var header=true;
var body=""; var body="";
var newsgroups=""; var newsgroups=new Array();
while(client.socket.is_connected) { while(client.socket.is_connected) {
line = client.socket.recvline(512 /*maxlen*/, 300 /*timeout*/); line = client.socket.recvline(512 /*maxlen*/, 300 /*timeout*/);
...@@ -382,33 +382,34 @@ while(client.socket.is_connected) { ...@@ -382,33 +382,34 @@ while(client.socket.is_connected) {
hdr.subject=data; hdr.subject=data;
break; break;
case "newsgroups": case "newsgroups":
newsgroups=data; newsgroups=data.split(',');
break; break;
} }
} }
for(g in msg_area.grp_list) for(n in newsgroups)
for(s in msg_area.grp_list[g].sub_list) for(g in msg_area.grp_list)
if(msg_area.grp_list[g].sub_list[s].newsgroup.toLowerCase()==newsgroups.toLowerCase()) { for(s in msg_area.grp_list[g].sub_list)
if(!msg_area.grp_list[g].sub_list[s].can_post) if(msg_area.grp_list[g].sub_list[s].newsgroup.toLowerCase()==n.toLowerCase()) {
continue; if(!msg_area.grp_list[g].sub_list[s].can_post)
continue;
if(msgbase!=null) {
msgbase.close(); if(msgbase!=null) {
delete msgbase; msgbase.close();
} delete msgbase;
if(msg_area.grp_list[g].sub_list[s].settings&SUB_NAME }
&& !(user.security.restrictions&(UFLAG_G|UFLAG_Q))) if(msg_area.grp_list[g].sub_list[s].settings&SUB_NAME
hdr.from=user.name; // Use real names && !(user.security.restrictions&(UFLAG_G|UFLAG_Q)))
hdr.from=user.name; // Use real names
msgbase=new MsgBase(msg_area.grp_list[g].sub_list[s].code);
if(msgbase.save_msg(hdr,body)) { msgbase=new MsgBase(msg_area.grp_list[g].sub_list[s].code);
log(format("%s posted a message on %s",user.alias,newsgroups)); if(msgbase.save_msg(hdr,body)) {
writeln("240 article posted ok"); log(format("%s posted a message on %s",user.alias,newsgroups));
posted=true; writeln("240 article posted ok");
} else posted=true;
log(format("!ERROR saving mesage: %s",msgbase.last_error)); } else
} log(format("!ERROR saving mesage: %s",msgbase.last_error));
}
if(!posted) { if(!posted) {
log("post failure"); log("post failure");
writeln("441 posting failed"); writeln("441 posting failed");
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment