Art Cancro [Tue, 24 Oct 2006 03:05:21 +0000 (03:05 +0000)]
Added a system of weighted preferences to the
choose_preferred() callback. This will ensure that when we parse a
multipart/alternative message, the MIME types we've declared earlier in
our preference list will always be chosen ahead of the ones we've
declared later. This will eliminate the need for the text client to
parse HTML messages when there's a perfectly good text/plain available.
Art Cancro [Sun, 22 Oct 2006 05:15:36 +0000 (05:15 +0000)]
Patches submitted by matt:
Added:
** .RC .RS Read configuration, Read system info (citadel.c)
** .> .< .+ .- Same as <>+- But skips instead. (citadel.c)
Fixed:
** .Z not displaying zapped rooms. (rooms.c)
** U .U Ungoto wasn't restoring the # of last read in rooms in which the last
message read was zero (rooms visited for the first time). The work-around I
chose was to set it to 1 instead of 0 in these cases. (rooms.c)
** .aide edituser() spaces in front of 'Permission to send internet mail'
(routines.c)
** .rb? list_bio() segfaults if no users have a bio (routines2.c)
Art Cancro [Sat, 14 Oct 2006 22:11:48 +0000 (22:11 +0000)]
* Implemented the 'getsubaddress' callback, but then realized
that it is actually more proper to return SIEVE2_ERROR_UNSUPPORTED because
Citadel doesn't have subaddresses.
Art Cancro [Sat, 14 Oct 2006 03:32:38 +0000 (03:32 +0000)]
serv_managesieve.c is now only built on Citadel servers that
have access to libSieve, otherwise a stub function is installed.
serv_sieve.h is also now included in serv_managesieve.c, which will
give serv_managesieve access to the msiv_* API functions.
Art Cancro [Wed, 11 Oct 2006 16:05:59 +0000 (16:05 +0000)]
Updated the URL View and Image View commands in citadel.rc
to include examples on how to use xdg-open for these.
In the near future, Linux systems will begin to include
the Portland API's, and as a result xdg-open will become the
preferred way to open files and URL's from an application.
Art Cancro [Tue, 10 Oct 2006 04:35:42 +0000 (04:35 +0000)]
serv_spam.c: removed the simplistic built-in scanner that
never went into production. There's just no way we could do SpamAssassin's job
ourselves at this point so out it goes.
Art Cancro [Fri, 29 Sep 2006 21:40:55 +0000 (21:40 +0000)]
* Actions for KEEP and DISCARD completed
* Callbacks for ERR_PARSE and ERR_RUNTIME completed
* Action for FILEINTO 'INBOX' completed; FILEINTO for other folders is still incomplete
Art Cancro [Sat, 23 Sep 2006 03:02:03 +0000 (03:02 +0000)]
Completed a new queue (sieve_list) which will instantly
bring to the attention of the housekeeping thread, any rooms which are
inboxes and may require Sieve processing.
Art Cancro [Thu, 21 Sep 2006 04:03:08 +0000 (04:03 +0000)]
serv_network.c and msgbase.c: preliminary work for making
the networker more quickly aware of which rooms have recently
posted messages. This still runs at a one minute granularity, which
is still too slow. Need to reduce it to seconds in order to submit
rooms for Sieve processing using the networker.
Art Cancro [Fri, 1 Sep 2006 19:18:22 +0000 (19:18 +0000)]
Fixed bug #173. Multi-select and multi-deselect no longer have
a problem where the internally selected list contains messages
that are not highlighted.
Art Cancro [Fri, 1 Sep 2006 18:53:57 +0000 (18:53 +0000)]
Found the cause of Bug #173 and added a comment to the
code showing where to fix it. (I don't have the time right
now to fix it but will do this later.)
Art Cancro [Fri, 1 Sep 2006 17:13:30 +0000 (17:13 +0000)]
summary view: deleting messages now removes the table rows from
the DOM tree entirely, instead of merely hiding them. This is important
because the next thing we're going to do is traverse the DOM tree to determine
what rows to use for group select.
Art Cancro [Fri, 28 Jul 2006 04:14:15 +0000 (04:14 +0000)]
Bugfix for previous commit: IMAP and POP3 expunge operations
were calling CtdlDeleteMessages() with num_msgs=0 if there was nothing to delete; this
was bad because it causes all msgs in the room to be deleted.
Art Cancro [Fri, 28 Jul 2006 03:30:57 +0000 (03:30 +0000)]
CtdlDeleteMessages() now has a bulk API. Updated all of the
callers to use it. Also updated the IMAP and POP3 expunge functions to actually
make use of the bulk delete. This should significantly improve performance
when used with large folders.
Art Cancro [Thu, 27 Jul 2006 04:21:07 +0000 (04:21 +0000)]
CtdlDeleteMessages() now uses the bulk API CtdlCopyMsgsToRoom()
to move deleted messages to the __CtdlDeletedMessages__ room. The next
step will be to make CtdlDeleteMessages() itself a bulk-move API.