- move serv_network.h into modules/network where it belongs...
- move structs out of serv_network.h into their respective headers
- serv_expire doesn't need serv_network.h anymore, it seems to get the usetable struct from elsewhere
- the netfilter module was moved to the network directory, it seems to be closely dangled to networking
- move all code about the netfilter (config reading) into serv_netfilter.c
- move the code networker related from msgbase.c:CtdlDoIHavePermissionToPostInThisRoom() into serv_netconfig.c:netconfig_check_roomaccess()
- move the filterlist instance into serv_netfilter.c
lesson learned the hard way today: if you move a header, flush the dependencies, else the make process will abort with no usefull message at all.
-> Gentlemen please flush the dependencies and rebootstrap your workingcopy.
Limit length of Commands sent to citserver; do multible json requests if neccessary
- roomListDropHandler() when cut'n'paste moving split after the move vector reaches 800 chars
- deleteAllSelectedMessages() when <del> moving to trash / purging split into chunks to limit the command lengths
deleteAllSelectedMessages(): don't send one request per message, citadel can handle a list of them already.
- this dramaticaly increases the performance of pressing the <del> key when having several messages selected; less stress on the browser, webcit and citserver.
Art Cancro [Mon, 22 Aug 2011 17:20:04 +0000 (13:20 -0400)]
Added a checked and disabled dummy option in the room access tab, indicating that blog creators automatically become room aides.
This advises administrators of a built-in behavior, and also exposes a string to the translators so that its localization will already exist if we add that option later.
When QP encoding, we need to convert blanks to underscores
- Spamassasin test 'BAD_ENC_HEADER' matches if a subject looks like that:
Subject: =?UTF-8?Q?=5Btestml=5D l=C3=B6sch misch ey.?=
it needs to look like that:
Subject: =?UTF-8?Q?=5Btestml=5D_l=C3=B6sch_misch_ey.?=
Art Cancro [Fri, 19 Aug 2011 19:12:50 +0000 (15:12 -0400)]
Clear selected_language when marking a guest session as inuse=0.
This prevents new visitors from seeing their first page in Chinese after Baidu comes calling.
- Ctdl_GetUtf8SequenceLength(): testbyte needs to be unsigned char, else >> will shift us new bits in from the left
- we need to shift 'test' to the right
- start counting at 0
- when encoding plain md5 binary buffers we have to pass the length into the hex encoder, add parameter
- add wrapper providing old schematic
- fix documentation of StrBufSipLine()
Fix StrHtmlEcmaEscAppend() more edge cases in utf8 handling
- Ctdl_GetUtf8SequenceLength(): return 0 for broken, 1 for non-utf8 sequences
- StrHtmlEcmaEscAppend(): another attempt to fix json appending:
- use switch instead of Rumpelstilskin if sequence
- use HKEY for our static sequences
- don't check for buffer expansion again while utf8-handling; we have 11 bytes reserved, utf8 will at most become 6 bytes
- Simply handle ASCII chars in the utf8 loop
- since aptr is moved implicitely, we mustn't move it for the last byte
- add missing handling for some escapers
- let unicode escapers pass
parse reply-to header into its permanent database field
it seems as if some mailers (Open exchange for example) add Reply-To headers; if we don't parse it when receiving it,
our list service adds another header; thus parse it into the database of headers.
while appending the [roomname] to the mailsubject, we have to
- de-qp the original subject
- search for the roomname
- possibly prepend '[roomame] '
- and re-qp everything.
that way we solve...
- multiple [roomname] additions in case of QP encoded subjects
- non RFC-Conformant behaviour in case of roomnames with umlauts.
Art Cancro [Thu, 28 Jul 2011 16:45:04 +0000 (12:45 -0400)]
Removed the Base64 encoding in RSS feed links. There was a bug in the other implementation and it was easier to just do it this way. It's all StrBuf now, which Willi will like :)
IE <9 styling with seperate stylesheet
Added conditional for IE less than version 9, removed the nonworking stuff from general stylesheets and moved them to ie_lte8.css
Also forced IE8 to use IE8 rendering instead of "legacy" mode.