Skip to content
Snippets Groups Projects
user avatar
rswindell authored
(JS bbs.post_msg()): If the WM_QUOTE mode flag is *not* set, then it will auto-
create the quote file (quotes.txt) and add the WM_QUOTE mode bit before calling
sbbs_t::writemsg(). So if existing JS scripts call bbs.post_msg(..., WM_QUOTE)
with a custom-created quote file (e.g. with msg tails), that'll still work as
before (e.g. DDMsgReader.js).

bbs.email() and bbs.netmail() now support an optional reply_header_object
argument which works like bbs.post_msg(). These methods (and the underlying
C++ methods: sbbs_t::email(), netmail(), inetmail(), all auto-create the
quote file now, when the WM_QUOTE mode flag is *not* set.

The auto-created quotes.txt now includes the plain-text version of MIME-encoded
messages.

the bbs.post_msg(), email(), and netmail() methods now all support reply
header objects that came directly from bbs.get_msg_header() *or* copies of
such header objects (but the auto-quoting feature won't work when supplied
this type of header object). So if passed a header object returned from
bbs.get_msg_header(), we can now use the message base (for auto-quoting) and
the underlying msg storage directly (no JS parsing necessary). This is what
the new js_GetMsgHeaderObjectPrivates() function is used for.

js_ParseMsgHeaderObject() (and the underlying parse_header_object() function)
now supports either an actual internally-generated msg header object (e.g.
returned from bbs.get_msg_header()) or one that is a copy or hand-constructed.

quotemsg() no longer tries to get a copy of the msg index/header. It shouldn't
have to since we can now get to underlying msg storage in the js_msgbase.c
via js_GetMsgHeaderObjectPrivates().

quotemsg() now reads only the plain-text portion of MIME-encoded messages.

As part of this effort, I modernized the method prototypes using default
argument values (e.g. WM_NONE for wm_mode arguments) and removed some
extraneous WM_EMAIL and WM_NETMAIL specifications (these wm_mode flags are
automatically added by the sbbs_t::email() and *netmail() functions).

savemsg() now *does* support reply-IDs/thread-linkage via the additional
'remsg' argument (when non-NULL).

Replaced some use of nulstr with NULL.

Replaced more boilerplate SMB open code with calls to smb_open_sub().
57424543
History