* Some nice selenium tests. They use 'testuser' and 'testpass' and mess arround with the citadel you open in the browser window. Testuser should be alowed to send internet mail.
* shutdown webcit if we panic out while creating certificates
* free the openssl errors
* add commented out version with reason for remaining free memory so we remember it.
Art Cancro [Thu, 11 Sep 2008 02:47:10 +0000 (02:47 +0000)]
Set icalerror_errors_are_fatal to 0.
This will cause libical to return an error when it sees bad icalendar
data instead of aborting the entire program, which is, y'know, bad.
* print errormessages into templates if possible in <pre>
* rework several error messages to be more clear
* put the hashkey in ITERATE:KEY while iterating
* put ITERATE parameters through to callbacks, so they can find custom things there.
* adjust old uses of the iterate api
* migrate inetconfig to templates.
* fix COND:PREFS
* add NONCE replacer to contextloop; please re-bootstrap so that the initializer does its job
* added selectboxes to the config dialog templates
* added COND:SERVCFG:SUBST for the TZ dropdown
* HAIL MELD!
* reduce log noise while running from the console with debug binaries; output_static will be as quiet as sslg too.
* add Filename and a copy of the whole token so we can output it in case of errors
* adjusted all error lprintfs in subst.c to deliver file, line, and a matching snippet of the token analyzed so the logfile helps finding bugs in templates.
* templated siteconfig allmost finished.
* add new conditional type '%' switching between printing parameter #6 & #7
* fix bug in tabbed dialog logic
* some more fixes o the siteconfig templates
* made *bstr things const
* add DOTABBED api to the template stuff
* add sysconfig detemplater
* create a list of config settings, for hashing and reading from the query params.
* print empty lin with serv_puts to remove warnings.
Art Cancro [Thu, 4 Sep 2008 01:59:23 +0000 (01:59 +0000)]
* Discovered that my system hasn't processed its refcount_adjustments queue in about six months, because a file called refcount_adjustments.dat2 was sitting around and keeping the link() command from succeeding. Fortunately, the code is robust enough to gracefully excuse itself from this situation without corrupting the database, but now I've got a six month backlog of refcount adjustments to process. Corrected this situation for anyone else who is having it, by putting a random number in the name of the temporary file.
* When displaying ref count deltas to the log, show +1 instead of just 1 for increments.
* Added a new command TDAP which can be used by an Aide to manually initiate a run of The Dreaded Auto-Purger.
Art Cancro [Tue, 2 Sep 2008 17:41:36 +0000 (17:41 +0000)]
Implemented RFC2919, the 'List-ID' field for mailing
lists. This is now a top-level Citadel header field (L), which makes
it parseable by the Sieve engine. Also added List-ID to the header
fields selectable in the mailbox filter rules editor. And of course,
we are generating this field when we send out traffic from a Citadel-hosted
mailing list. This also closes Bug #371.
Art Cancro [Sat, 30 Aug 2008 04:57:03 +0000 (04:57 +0000)]
We now look for libical/ical.h instead of ical.h, because
that's where libical's build is putting it now. If this breaks
your build, please update libical from svn.
Art Cancro [Thu, 21 Aug 2008 01:24:15 +0000 (01:24 +0000)]
Adjusted the tabcontent and tabcontent_submit styles
in order to present everything as a nice tabbed dialog with a rounded
rectangular bottom instead of the ugly 'bottom tab' look previously displayed
by the tabcontent_submit div. All three dialogs that use this API now conform
to the new spec - one extra 'tab' at the end which is actually the submit div.
Art Cancro [Wed, 20 Aug 2008 17:46:33 +0000 (17:46 +0000)]
Changed the tabbed dialog API to include an epilogue that
can be used to display data common to all tabs, such as submit buttons.
Removed recurring event support from TECH_PREVIEW and moved into the mainline
code. Event editor tabs for Event/Attendees/Recurrence are now working, even
though the Recurrence tab doesn't yet display an editor, for now it just
displays the raw RRULE data.
Art Cancro [Tue, 19 Aug 2008 02:58:48 +0000 (02:58 +0000)]
Split up the conflict checker again, this time into six different
functions. Right now it looks like excessive modularity, but over the next couple of commits I'll
be adding expansion of recurrences in both the proposed and existing events. Now this can be done
without making the code unreadable.
* migrate the WHO struct to strbuf
* add SVPUTBuf() which can handle strbuffers
* register the ITERATOR("WHO")
* provide tokens via the who iterator func: WHO:NAME, WHO:ROOM, WHO:HOST, WHO:REALROOM, WHO:REALHOST, WHO:LASTACTIVE, WHO:SESSION, WHO:IDLE, WHO:NSESSIONS
* some fixes to do_template, and the whole other stuff
* correct all GetNextHashPos() calls to have const chars
* new template callback: ITERATE("iterator", "subtemplate",...); its to iterate over registered hashlists
* new RegisterIterator() call; use this to register your hashlist with the ITERATE functionality
* add new 'Context' Parameter to the template call
* add PREF:VALUE("ConvigValueName") which will give you the value of a config
* add PREF:DESCR("ConfigValueName") which will give you the locale string describing that setting
* now template tokens can work as functions, you can add params to them after in ("sometext", 1337) so template hooks can be steered from the templates
* added implicit _("foo") function that will look up 'foo' with gettext and print its local representation
Matt [Thu, 14 Aug 2008 10:59:11 +0000 (10:59 +0000)]
Move the rest of the templates into 't' as with dothebart's previous commit.
If any should still be in static/ (i.e like nocookies) just move them back.