Art Cancro [Mon, 22 Dec 2008 16:29:05 +0000 (16:29 +0000)]
* ICAL PUTICS mode is now working properly with timezones. Each VTIMEZONE attached to a bulk calendar is now kept in memory during the operation, and attached to any individual VEVENT or VTODO component containing tzid= properties which refer to them. In the event of a tzid= parameter which refers to a timezone that was not supplied, we also attempt to find the timezone in our built-in tzdata.
Art Cancro [Mon, 22 Dec 2008 15:30:51 +0000 (15:30 +0000)]
* The way I was doing this was stupid. Backed the code
out. This should be a hash table.
Wilfried Göesgens [Sat, 20 Dec 2008 23:53:31 +0000 (23:53 +0000)]
* shortcut notation to tokens for hashkeys; TKEY(n) will make str,len for Hash access
* some fixups to the message dropdown selectors
Wilfried Göesgens [Sat, 20 Dec 2008 23:50:08 +0000 (23:50 +0000)]
* handle negative index condition
Wilfried Göesgens [Sat, 20 Dec 2008 18:29:24 +0000 (18:29 +0000)]
* msg_is_in_mset isn't here
* move load_seen into its own function
Wilfried Göesgens [Sat, 20 Dec 2008 18:26:18 +0000 (18:26 +0000)]
* const this one too...
Wilfried Göesgens [Sat, 20 Dec 2008 18:18:42 +0000 (18:18 +0000)]
* const mset pointer, as we don't need to write on it.
Wilfried Göesgens [Sat, 20 Dec 2008 17:15:55 +0000 (17:15 +0000)]
* remove accidently committed test stuff
* NULL that strbuf..
Art Cancro [Sat, 20 Dec 2008 00:25:57 +0000 (00:25 +0000)]
* mk_svn_revision.sh not barf on non-bash
Art Cancro [Fri, 19 Dec 2008 17:53:06 +0000 (17:53 +0000)]
* ICAL 'putics' mode - did most of the work for re-encapsulating VEVENT and VTODO components properly for distribution into individual messages. Enumerating the TZID's of needed VTIMEZONES, but not yet actually attaching them...
Art Cancro [Fri, 19 Dec 2008 04:05:49 +0000 (04:05 +0000)]
* ICAL 'getics' mode (which is used for downloading the
entire calendar, e.g. when doing a WebCal fetch) now suppresses
duplicate VTIMEZONE components which carry the same TZID.
Art Cancro [Fri, 19 Dec 2008 03:45:02 +0000 (03:45 +0000)]
* Suppress display of zero-length Berkeley DB log messages
Wilfried Göesgens [Thu, 18 Dec 2008 22:52:58 +0000 (22:52 +0000)]
* split serialize/deserialize from message load/control logic so we can reuse this for system preferences.
Wilfried Göesgens [Thu, 18 Dec 2008 22:34:10 +0000 (22:34 +0000)]
* fix signature attachig in message composing
Wilfried Göesgens [Thu, 18 Dec 2008 20:32:04 +0000 (20:32 +0000)]
* add conditional for whether a preference value is set or not...
* avoid to get into the "other case" situation where possible
Art Cancro [Thu, 18 Dec 2008 05:18:44 +0000 (05:18 +0000)]
* ical 'getics' now frees the icalcomponent data
after serializing it but before transmitting it to
the client. TODO: suppress duplicate VTIMEZONE components
Matt [Wed, 17 Dec 2008 10:03:30 +0000 (10:03 +0000)]
Revert new appendsize check for StrBufAppendBufPlain
Wilfried Göesgens [Mon, 15 Dec 2008 19:44:43 +0000 (19:44 +0000)]
* sanitize offset
Matt [Mon, 15 Dec 2008 05:17:30 +0000 (05:17 +0000)]
fix (no subject) for blank message subjects
Wilfried Göesgens [Sun, 14 Dec 2008 22:06:53 +0000 (22:06 +0000)]
* fix addressbook view. where did this get lost?
Wilfried Göesgens [Sun, 14 Dec 2008 22:04:50 +0000 (22:04 +0000)]
* fix some conditions with unassigned variable access
Wilfried Göesgens [Sun, 14 Dec 2008 21:07:35 +0000 (21:07 +0000)]
* some tiny cleanups...
Matt [Sun, 14 Dec 2008 12:25:54 +0000 (12:25 +0000)]
As per dothebart's advice, revise StrBufIsNumber to check for NULL buffer, no longer use strlen
Matt [Sun, 14 Dec 2008 11:59:51 +0000 (11:59 +0000)]
simple function to check if entire buffer is purely numbers
Wilfried Göesgens [Sat, 13 Dec 2008 22:48:49 +0000 (22:48 +0000)]
* remove libz code, libcitadel does this the right way now.
Wilfried Göesgens [Sat, 13 Dec 2008 22:37:50 +0000 (22:37 +0000)]
* remove libz crap, libcitadel does this now.
Wilfried Göesgens [Sat, 13 Dec 2008 22:36:33 +0000 (22:36 +0000)]
* link libz if we detect it.
Wilfried Göesgens [Sat, 13 Dec 2008 18:59:52 +0000 (18:59 +0000)]
* typedef wcsession, so we don't always need to say gcc again its a struct.
* removed faster blabla comments, since we should know it meanwhile.
Wilfried Göesgens [Sat, 13 Dec 2008 18:39:49 +0000 (18:39 +0000)]
* BIG shuffle:
* move several mimepart handlers to messages.c
* move utility string formating stuff into utils.c; hopefully we get rid of that one day because of everything using strbuf
* moved vcard stuff out of messages.c into vcard_edit.c
* did some late followups of the urlhash (how did they get through?)
* move binary downloads / viewing function into downloads.c
->webcit.c is getting small ;)
Wilfried Göesgens [Sat, 13 Dec 2008 14:04:51 +0000 (14:04 +0000)]
* don't ignore the last char of a template
* don't access aray indexes before chcking them.
Wilfried Göesgens [Sat, 13 Dec 2008 13:43:19 +0000 (13:43 +0000)]
* StrBufExtract_token wouldn't reset its target buffer in all conditions.
Wilfried Göesgens [Sat, 13 Dec 2008 13:05:58 +0000 (13:05 +0000)]
* add modifier evaluaton to the implicit conditional
Wilfried Göesgens [Sat, 13 Dec 2008 11:22:38 +0000 (11:22 +0000)]
* rename RFCA Conditional so it matches the naming conventions
Wilfried Göesgens [Sat, 13 Dec 2008 11:08:24 +0000 (11:08 +0000)]
* remove last remains of the separate attachment struct
Wilfried Göesgens [Sat, 13 Dec 2008 10:43:38 +0000 (10:43 +0000)]
* add matts iterator
Wilfried Göesgens [Sat, 13 Dec 2008 10:29:42 +0000 (10:29 +0000)]
* add counter and lastn to iterators:
ITERATE:N -> number of actual element in list
ITERATE:LASTN -> is this the last member?
evaluate it with ?("COND:SUBST", n, "ITERATE:LASTN", 1)
Art Cancro [Fri, 12 Dec 2008 18:05:08 +0000 (18:05 +0000)]
Moved webcit-738-stable branch to the same level as the other branches
Wilfried Göesgens [Thu, 11 Dec 2008 23:02:39 +0000 (23:02 +0000)]
* more files to be removed...
Wilfried Göesgens [Thu, 11 Dec 2008 22:33:54 +0000 (22:33 +0000)]
* don't distribute machine dependend stuff...
Wilfried Göesgens [Thu, 11 Dec 2008 22:13:50 +0000 (22:13 +0000)]
* buyebye pullquote message... byebye duplicate bugs...
Wilfried Göesgens [Thu, 11 Dec 2008 21:53:23 +0000 (21:53 +0000)]
* fix attachments forwarding
Art Cancro [Thu, 11 Dec 2008 04:19:08 +0000 (04:19 +0000)]
* Still trying to clean up compiler warnings
Art Cancro [Thu, 11 Dec 2008 04:02:31 +0000 (04:02 +0000)]
* Eliminated some gcc-isms
Wilfried Göesgens [Thu, 11 Dec 2008 00:00:36 +0000 (00:00 +0000)]
* load attachments in forwarded messages
* just one mime struct should fit it all.
Art Cancro [Wed, 10 Dec 2008 22:51:57 +0000 (22:51 +0000)]
* Trying to suppress some const warnings, not there yet...
Art Cancro [Wed, 10 Dec 2008 22:37:07 +0000 (22:37 +0000)]
* When generating invitations, include VTIMEZONE subcomponents
Wilfried Göesgens [Mon, 8 Dec 2008 22:40:33 +0000 (22:40 +0000)]
* ignore path/suff/pref headers.
Art Cancro [Mon, 8 Dec 2008 22:16:14 +0000 (22:16 +0000)]
* Shuffled some code around in serv_calendar.c
We are preparing to add VTIMEZONE subcomponents to
meeting invitations when necessary. (Not done yet but it
compiles and the changes are harmless.)
Wilfried Göesgens [Mon, 8 Dec 2008 22:08:25 +0000 (22:08 +0000)]
* if we need the first urlpart, we musn't move it just left, but add another one at the end.
Wilfried Göesgens [Mon, 8 Dec 2008 21:16:49 +0000 (21:16 +0000)]
* fix messageselectomatic.
Art Cancro [Mon, 8 Dec 2008 17:10:44 +0000 (17:10 +0000)]
Created webcit-738-stable branch
Wilfried Göesgens [Sun, 7 Dec 2008 23:27:13 +0000 (23:27 +0000)]
* make readloop long-controlled
* move param-dependant code into callback hooks
* migrate all places to the new enums fed into readloop
Wilfried Göesgens [Sun, 7 Dec 2008 23:25:04 +0000 (23:25 +0000)]
* *grml* always tried to avoid this, but can't live without...
Wilfried Göesgens [Sun, 7 Dec 2008 11:34:05 +0000 (11:34 +0000)]
* follow api-change in several places
* new longint-vector replacer if you just want to blast some numbers in tiny templates
* urlpart replacers so you can easily reference the actual api-name in templates (actualy needs to be enabled by the registerer of the api callback)
* cleanup and templatize the bbview-selector bar
Wilfried Göesgens [Sun, 7 Dec 2008 11:30:15 +0000 (11:30 +0000)]
* follo hashiterator api-change
Wilfried Göesgens [Sun, 7 Dec 2008 11:29:43 +0000 (11:29 +0000)]
* Allow hashiterator to do bigger steps than 1 and to go reverse
-> API-Change
Art Cancro [Sat, 6 Dec 2008 18:39:06 +0000 (18:39 +0000)]
* Remove ALL calendar recipient crapola in
parentheses, not just the first one. Fixes bug 437.
Art Cancro [Sat, 6 Dec 2008 18:26:46 +0000 (18:26 +0000)]
* Eliminated the ical_add() function, because it
had been reduced down to one line of code and was
no longer making sense as a separate function.
Art Cancro [Fri, 5 Dec 2008 20:11:17 +0000 (20:11 +0000)]
* UPDATE YOUR LIBICAL FROM SVN NOW.
We are now making use of the new libical function icaltimezone_set_tzid_prefix()
which allows the application to customize the namespace of tzid's generated
from the host operating system's tzdata, for example:
/citadel.org/Tzdata/America/New_York
Matt [Fri, 5 Dec 2008 05:57:44 +0000 (05:57 +0000)]
Big brown paper bag: unbreak groupdav propfinds (my fault!)
Matt [Fri, 5 Dec 2008 00:36:52 +0000 (00:36 +0000)]
Fix HTTP Basic auth
Art Cancro [Wed, 3 Dec 2008 18:53:48 +0000 (18:53 +0000)]
* When encapsulating a VEVENT into a full VCALENDAR
component, all TZID's referenced in timestamps are now also
encapsulated into the VCALENDAR component, making the component
fully portable across time zones. The sun is shining, birds are
chirping, free ice cream is being distributed on streetcorners, and
things are just generally good all around. For now.
Art Cancro [Wed, 3 Dec 2008 03:42:13 +0000 (03:42 +0000)]
* Correctly set ;TZID= parameter on any date properties being
encapsulated. Store the timezone in an array so we know to attach
it later. TODO: populate the newly attached VTIMEZONE subcomponents.
Art Cancro [Tue, 2 Dec 2008 23:08:20 +0000 (23:08 +0000)]
* ical_encapsulate_subcomponent() now knows when it is responsible
for attaching a timezone parameter to a property. Next we have to
actually do so.
Wilfried Göesgens [Tue, 2 Dec 2008 22:46:27 +0000 (22:46 +0000)]
* load_seen is our only condition for tagging messages
* init startmsg
Wilfried Göesgens [Tue, 2 Dec 2008 21:47:10 +0000 (21:47 +0000)]
* fix self service account button
* fix important message handler
Art Cancro [Tue, 2 Dec 2008 21:38:52 +0000 (21:38 +0000)]
* Attach an icaltimezone pointer to any icaltimetype value
converted by icaltime_from_webform(). This will later
be detected so we can attach time zone data.
Art Cancro [Tue, 2 Dec 2008 20:17:09 +0000 (20:17 +0000)]
* Minor formatting change
Art Cancro [Tue, 2 Dec 2008 19:27:43 +0000 (19:27 +0000)]
* Simplified icaltime_from_webform()
Removed some unnecessary extra steps and variables
Wilfried Göesgens [Mon, 1 Dec 2008 22:55:13 +0000 (22:55 +0000)]
* sometimes switches need break statements.
Wilfried Göesgens [Mon, 1 Dec 2008 22:43:35 +0000 (22:43 +0000)]
* upsie, forgot to add that.
Art Cancro [Mon, 1 Dec 2008 21:40:26 +0000 (21:40 +0000)]
Log an error message when ical_encapsulate_subcomponent() is
called with a component that is already a top-level VCALENDAR
Wilfried Göesgens [Sun, 30 Nov 2008 23:12:01 +0000 (23:12 +0000)]
* zero-safe StrtoI/L
* add long hash adaptor
Wilfried Göesgens [Sun, 30 Nov 2008 23:10:52 +0000 (23:10 +0000)]
* abstract sorting algorithms. abstraction layer so far used in the message view.
* reorder subst.c so related functions are next to each other
* remove array from WC, its done through the hash...
Wilfried Göesgens [Sat, 29 Nov 2008 17:23:21 +0000 (17:23 +0000)]
* removed double blockquote
Wilfried Göesgens [Sat, 29 Nov 2008 17:07:41 +0000 (17:07 +0000)]
* increase number of messages to 10k as it was before. thanks matt for pointing this out.
* fix another memleak
Wilfried Göesgens [Sat, 29 Nov 2008 10:53:19 +0000 (10:53 +0000)]
* valgrind cleanup
Wilfried Göesgens [Sat, 29 Nov 2008 08:48:41 +0000 (08:48 +0000)]
* upsie, don't leak.
Wilfried Göesgens [Sat, 29 Nov 2008 08:47:23 +0000 (08:47 +0000)]
* br's in quotes so you can write before / after them
* parse contenttype header for sub-values like charset.
Wilfried Göesgens [Sat, 29 Nov 2008 08:45:48 +0000 (08:45 +0000)]
* new StrBuf Method: cut it at a given position
Wilfried Göesgens [Thu, 27 Nov 2008 00:01:20 +0000 (00:01 +0000)]
* rework login screen to utilize more modern templating
* add MESG() template hook
* (still somewhat unfinished, errormessages won't show up yet...)
Art Cancro [Wed, 26 Nov 2008 19:37:10 +0000 (19:37 +0000)]
* save_individual_event() is maintaining
the correct time on non-recurring events.
Art Cancro [Wed, 26 Nov 2008 19:27:54 +0000 (19:27 +0000)]
* save_individual_event() is maintaining
the correct time on non-recurring events.
Art Cancro [Wed, 26 Nov 2008 18:03:21 +0000 (18:03 +0000)]
* Decapsulate and dezonify calendar events as they are
being loaded into the event editor. TODO: convert back
to local time during save, otherwise we create the
shifting-hour DST problem for recurring events. We
might consider only converting to local time for
recurring events ... that's what Google Calendar does.
Art Cancro [Wed, 26 Nov 2008 17:01:12 +0000 (17:01 +0000)]
* HAHAHA WHEEEEEEEE BOING BOING BOING YOWZ0RS
Recurrence across a DST boundary finally works right.
Now to fix it everywhere else :(
Wilfried Göesgens [Tue, 25 Nov 2008 23:15:33 +0000 (23:15 +0000)]
* add missing hint to -Z
* standart escape-ability for message quoting
* remove unneded remaining code
* escape everything in the textarea
Art Cancro [Tue, 25 Nov 2008 22:30:11 +0000 (22:30 +0000)]
TIME ZONES ARRRGHGGHGHHHHHH
Wilfried Göesgens [Tue, 25 Nov 2008 19:40:35 +0000 (19:40 +0000)]
* conditionals mustn't have 0 as id; fix the ones who have and add another errormessage.
Art Cancro [Tue, 25 Nov 2008 19:40:00 +0000 (19:40 +0000)]
* Did a fairly significant reworking of the calendar
processing loop. We have to pass the entire chain through
to the callback function in order to gain just-in-time
dezonification and decapsulation. This will work; I saw
the recurrence stay within local time durin expansion. Right
now the expansion isn't happening at all, but I'll fix that
shortly.
Wilfried Göesgens [Tue, 25 Nov 2008 18:35:10 +0000 (18:35 +0000)]
* fix 64 bit incompatibility
Art Cancro [Tue, 25 Nov 2008 17:37:10 +0000 (17:37 +0000)]
* Update ical_dezonify() to use system tzdata
(or built-in tzdata if running on windows) to locate timezone
information, if a matching timezone was not found somewhere
within the supplied component.
Art Cancro [Mon, 24 Nov 2008 22:39:18 +0000 (22:39 +0000)]
KILL TIME ZONE AAAAAAGGGHH
Wilfried Göesgens [Mon, 24 Nov 2008 22:14:03 +0000 (22:14 +0000)]
* remove old (replaced) code
* name it Tokens consistantly...
* use the generic token escaping logic
* QP-Decode Mime Name
Wilfried Göesgens [Mon, 24 Nov 2008 00:11:49 +0000 (00:11 +0000)]
* escape roomname properly
Wilfried Göesgens [Sun, 23 Nov 2008 23:21:18 +0000 (23:21 +0000)]
* add transitional beginboxx template and move some places to the new syntax
* finish preferences settings via templates
* add new settings to pre-select from/name/handle in case of email / posting into forums
* find some more missing error messages in the templating...
Wilfried Göesgens [Sun, 23 Nov 2008 18:22:20 +0000 (18:22 +0000)]
* finish selectboxes in Mailedit dialogs
* new templating mechanism: if prepended by : ; _ B the tokens can be loaded via preferences / gettext / bstr
* start implementing preferences screen with templates
* fix some tiny bugs
Art Cancro [Fri, 21 Nov 2008 22:36:59 +0000 (22:36 +0000)]
AAAAAAAAAAARRRRRRRRGGGGGGGHHH TIME ZONES F%$&%^*%$^ING SUCK
Art Cancro [Fri, 21 Nov 2008 15:12:42 +0000 (15:12 +0000)]
removed some spurious debugs
Wilfried Göesgens [Thu, 20 Nov 2008 23:40:23 +0000 (23:40 +0000)]
* map room-flags into conditionals
* more work on the central token escaping
* finetune BSTR tokens...
* finish message editing post/mail diversification
* add RFCA to our message the Reply button
Wilfried Göesgens [Thu, 20 Nov 2008 23:36:39 +0000 (23:36 +0000)]
* make it const baby... not yet done.