citadel.git
13 years agouse the gnu format string checker for CtdlLogPrintf; fix associated new warnings...
Wilfried Goesgens [Sat, 15 Jan 2011 17:47:03 +0000 (18:47 +0100)]
use the gnu format string checker for CtdlLogPrintf; fix associated new warnings / problems.

13 years agoLibev migration Cleanup, print resolved IP to log
Wilfried Goesgens [Sat, 15 Jan 2011 16:21:16 +0000 (17:21 +0100)]
Libev migration Cleanup, print resolved IP to log

13 years agoLibev Migration; fix aborting on connection establishing problems
Wilfried Goesgens [Sat, 15 Jan 2011 15:18:10 +0000 (16:18 +0100)]
Libev Migration; fix aborting on connection establishing problems

  - libev doesn't care whether a watcher is already registered or not, we don't need to remember which to stop and which not.
  - cast to the right structure while aborting
  - put timeout callback in
  - register timeout callback
  - close our socket in the right place.

13 years agoFix bouncing of messages in smtp-queue
Wilfried Goesgens [Sat, 15 Jan 2011 15:16:43 +0000 (16:16 +0100)]
Fix bouncing of messages in smtp-queue

  - free boundary when barfing out
  - put the message body on the right citadel message collumn

13 years agoMimeparser rewrite; fix bug detecting trailing MIME-Boundary
Wilfried Goesgens [Sat, 15 Jan 2011 15:14:16 +0000 (16:14 +0100)]
Mimeparser rewrite; fix bug detecting trailing MIME-Boundary

  - when searching for the '--' after the mime boundary to detect whether its the last, we had an off by one. fixed.

13 years agolibev migration - fix queue conditions
Wilfried Goesgens [Sat, 15 Jan 2011 10:45:46 +0000 (11:45 +0100)]
libev migration - fix queue conditions

  - handle messages without recipients
  - remove the the original message when we finished our job.

13 years agoLibev migration
Wilfried Goesgens [Sat, 15 Jan 2011 10:45:10 +0000 (11:45 +0100)]
Libev migration

  - the error message doesn't belong to us; we mustn't free it here.

13 years agoremove unneeded include; smtp_get_Recipients() is just of use when being in a SMTP...
Wilfried Goesgens [Mon, 10 Jan 2011 22:49:15 +0000 (23:49 +0100)]
remove unneeded include; smtp_get_Recipients() is just of use when being in a SMTP-Server context, which we don't have in the outbound-Queue

13 years agoLibev / libc-ares Migration
Wilfried Goesgens [Mon, 10 Jan 2011 22:38:36 +0000 (23:38 +0100)]
Libev / libc-ares Migration

  - Bounce-o-matic:
   - use parsend Queue structure instead of parsing the queue message ourselves
   - only Compose the bounce message, if we're shure we'll need it
   - malloc all memory first, and fail if..
  - restructure Message Queue documentation
  - parse not yet identified Submitted-Header into queue item
  - Alloc QueueItem->StatusMessage on creation so we have it easier writing it later

  - Start implementing timeout/abort conditions

  - c-ares integration: start/stop the right event-watchers
  - c-ares integration: give it its own watcher structs

13 years agolibev/libc-ares migration
Wilfried Goesgens [Sat, 8 Jan 2011 21:31:34 +0000 (22:31 +0100)]
libev/libc-ares migration

  - no, c-ares does need a write and a send wrapper.

13 years agolibev smtp migration
Wilfried Goesgens [Sat, 8 Jan 2011 19:55:44 +0000 (20:55 +0100)]
libev smtp migration

  - pass message text into bounce message
  - split SMTP <-> SMTP-Queue code

13 years agolibev migration
Wilfried Goesgens [Sat, 8 Jan 2011 17:54:03 +0000 (18:54 +0100)]
libev migration

  Cleanup: wrap an empty do {} while (0) around our macros, so their syntax gets a better feeling of c-functions

13 years agolibev migration
Wilfried Goesgens [Sat, 8 Jan 2011 17:50:16 +0000 (18:50 +0100)]
libev migration

  - log when looking up the IP of an MX
  - log when attepting to connect one MX

13 years agoLibev/libc-ares migration: cleanup
Wilfried Goesgens [Sat, 8 Jan 2011 17:32:56 +0000 (18:32 +0100)]
Libev/libc-ares migration: cleanup

13 years agolibev-migration
Wilfried Goesgens [Sat, 8 Jan 2011 16:17:06 +0000 (17:17 +0100)]
libev-migration

  - got the wrong interpretation of the pointer;

First mails leave citadel after a successfull DNS-Query!

13 years agolibc-ares migration
Wilfried Goesgens [Sat, 8 Jan 2011 16:16:18 +0000 (17:16 +0100)]
libc-ares migration

  - ev_io_stop removes us from the list, but we still want to receive stuff.

13 years agolibc-ares migration
Wilfried Goesgens [Sat, 8 Jan 2011 14:13:18 +0000 (15:13 +0100)]
libc-ares migration

  - just use one callback for read/send into libevent
  - re-enable c-ares; still doesn't work

13 years agolibev migration
Wilfried Goesgens [Sat, 8 Jan 2011 10:41:56 +0000 (11:41 +0100)]
libev migration

 - libevent doesn't require a special async connect mechanic, remove it.

13 years agolibev/libc-ares migration
Wilfried Goesgens [Fri, 7 Jan 2011 11:05:22 +0000 (12:05 +0100)]
libev/libc-ares migration

 - disable c-ares for now
 - add fixed ip to connect instead of looked up ip

13 years agolibev migration - shutdown cleanly.
Wilfried Goesgens [Fri, 7 Jan 2011 11:04:21 +0000 (12:04 +0100)]
libev migration - shutdown cleanly.

13 years agolibev/libc-ares migration
Wilfried Goesgens [Tue, 4 Jan 2011 23:28:13 +0000 (00:28 +0100)]
libev/libc-ares migration

 - resolving of the ip address is working now too; handling whether its an ipv6 host still missing.
 - libev doesn't succeed on doing async connect()

13 years agolibc-ares migration
Wilfried Goesgens [Mon, 3 Jan 2011 23:33:30 +0000 (00:33 +0100)]
libc-ares migration

  - call the ares read/write handlers in our registered read/write callbacks
  - set context appropriate.

13 years agolibev migration
Wilfried Goesgens [Mon, 3 Jan 2011 23:33:00 +0000 (00:33 +0100)]
libev migration

  - fix spawning of event-queue thread.

13 years agolibev/libc-ares migration
Wilfried Goesgens [Mon, 3 Jan 2011 23:00:47 +0000 (00:00 +0100)]
libev/libc-ares migration

  - move c-ares query into the eventqueue context
  - queueing of the new context via the pipe doesn't work anymore with libev

13 years agolibc-ares migration - first implementation draft
Wilfried Goesgens [Mon, 3 Jan 2011 15:36:43 +0000 (16:36 +0100)]
libc-ares migration - first implementation draft

 - dns queries are going out, but the reply isn't read so far.

13 years agolibev migration
Wilfried Goesgens [Sat, 1 Jan 2011 18:14:51 +0000 (19:14 +0100)]
libev migration

 - make connect() async; add wrappers in event_client to abstract it to our clients
 - switch libevent -> libev
 - start abstraction for dns asynchronisation via c-ares

13 years agoLibev / libcares : add build dependencies
Wilfried Goesgens [Sat, 1 Jan 2011 17:00:42 +0000 (18:00 +0100)]
Libev / libcares : add build dependencies

13 years agolibevent migration: discarded, make this libev
Wilfried Goesgens [Sat, 1 Jan 2011 16:59:50 +0000 (17:59 +0100)]
libevent migration: discarded, make this libev

  - detect c-ares
  - detect libev

13 years agoLibevent Migration
Wilfried Goesgens [Mon, 27 Dec 2010 15:45:53 +0000 (16:45 +0100)]
Libevent Migration

  - use a bigger read buffer for the smtp client
  - differentiate between queue and smtp client in log messages
  - migrate scheduling of jobs to a locked list

13 years agoLibevent Migration
Wilfried Goesgens [Mon, 27 Dec 2010 15:39:16 +0000 (16:39 +0100)]
Libevent Migration

 - change the place where we check the space for the \0 for reading
 - we didn't check the case to increase the buffer while reading if the reading algorithm didn't find a complete line yet...

13 years agoHashlist: add function to flush the contents of a hashlist.
Wilfried Goesgens [Mon, 27 Dec 2010 15:38:30 +0000 (16:38 +0100)]
Hashlist: add function to flush the contents of a hashlist.

13 years agoLibevent Migration
Wilfried Goesgens [Sun, 26 Dec 2010 12:23:42 +0000 (13:23 +0100)]
Libevent Migration

 - handle the SMTP-reply-stati in a propper way
 - skip empty lines while serializing messages

13 years agoStrBuf_NextToken: if the source is empty, flush the target.
Wilfried Goesgens [Sun, 26 Dec 2010 12:22:55 +0000 (13:22 +0100)]
StrBuf_NextToken: if the source is empty, flush the target.

13 years agolibevent Migration:
Wilfried Goesgens [Sun, 26 Dec 2010 10:56:41 +0000 (11:56 +0100)]
libevent Migration:

 - hook in libevent into shutdown mechanism, so we can cleanly shutdown citserver again.

13 years agolibevent Migration
Wilfried Goesgens [Sun, 26 Dec 2010 10:40:54 +0000 (11:40 +0100)]
libevent Migration

 - add a state 'terminate' to the event handlers
 - use the Terminate-callback to free all members.

13 years agoLibevent Integration
Wilfried Goesgens [Thu, 23 Dec 2010 00:09:14 +0000 (01:09 +0100)]
Libevent Integration

 - move bounce into util
 - rewrite parsing of queue entry; keep structure in memory, serialize after last message is sent.

13 years agoLibevent integration
Wilfried Goesgens [Tue, 21 Dec 2010 23:40:34 +0000 (00:40 +0100)]
Libevent integration

 - add a configure option --with-experimental_eventsmtp to enable the following items
 - add a thread that spawns a signaling pipe plus the libevent queue
 - add functions that allow to add jobs via that signalling pipe
 - add experimental smtp queue handler sending messages via libevent (message goes out but then... ;-)

13 years agolibevent integration
Wilfried Goesgens [Tue, 21 Dec 2010 23:37:55 +0000 (00:37 +0100)]
libevent integration

 - Add functions that are able to do just one read()/write() so they can be used as libevent callbacks.
 - Add linereader function that reads from "incomplete buffers" and falls back to a re-attemt if not enough data is available.

13 years agoReplaced client_read() with socket_read_blob() in serv_network.c
Art Cancro [Mon, 20 Dec 2010 04:12:19 +0000 (23:12 -0500)]
Replaced client_read() with socket_read_blob() in serv_network.c

13 years agoCleaned up the loop that receives network spool. NOT THE FIX
Art Cancro [Fri, 17 Dec 2010 19:12:36 +0000 (14:12 -0500)]
Cleaned up the loop that receives network spool.  NOT THE FIX

13 years agoContent-transfer-encoding: ISO-8859-1 joins the 'no encoding' list
Art Cancro [Fri, 17 Dec 2010 04:10:06 +0000 (23:10 -0500)]
Content-transfer-encoding: ISO-8859-1 joins the 'no encoding' list

13 years agoMove: give the SMTP-Client its own file.
Wilfried Goesgens [Wed, 15 Dec 2010 11:44:57 +0000 (12:44 +0100)]
Move: give the SMTP-Client its own file.

 - move the SMTP-Client functionality into its own file.
 - re-bootstrap so the new files are added to your makefiles!

13 years agoRoom info in banner should respect utf8 when cutting the text; fixed.
Wilfried Goesgens [Wed, 15 Dec 2010 09:03:03 +0000 (10:03 +0100)]
Room info in banner should respect utf8 when cutting the text; fixed.

13 years agoRoom info in banner was completely broken. Fixed.
Art Cancro [Tue, 14 Dec 2010 22:13:03 +0000 (17:13 -0500)]
Room info in banner was completely broken.  Fixed.

13 years agoSMTP Async I/O:
Wilfried Goesgens [Mon, 13 Dec 2010 17:23:31 +0000 (18:23 +0100)]
SMTP Async I/O:

 - while sending data, wait relative to the size of the mail /128 + a minimal set of 50.

13 years agoJ-escape instead of U-escape attachment removal urls.
Art Cancro [Mon, 13 Dec 2010 15:12:25 +0000 (10:12 -0500)]
J-escape instead of U-escape attachment removal urls.

13 years agoremove attach works now but has filename escape bugs
Art Cancro [Mon, 13 Dec 2010 05:02:22 +0000 (00:02 -0500)]
remove attach works now but has filename escape bugs

13 years agourl binding and skeleton js for remove attachment
Art Cancro [Mon, 13 Dec 2010 00:29:21 +0000 (19:29 -0500)]
url binding and skeleton js for remove attachment

13 years agoWrote the ajax call for remove_attachment(), todo: js binding
Art Cancro [Mon, 13 Dec 2010 00:11:39 +0000 (19:11 -0500)]
Wrote the ajax call for remove_attachment(), todo: js binding

13 years agoMimeparser Bugfix
Wilfried Goesgens [Sun, 12 Dec 2010 14:47:14 +0000 (15:47 +0100)]
Mimeparser Bugfix

 - use the right pointer to calculate the terminal border of the first memchr

13 years agoIgnore all of our test binaries.
Wilfried Goesgens [Sun, 12 Dec 2010 14:09:49 +0000 (15:09 +0100)]
Ignore all of our test binaries.

13 years agoAdd possibility to trigger the tests with Valgrind
Wilfried Goesgens [Sun, 12 Dec 2010 14:06:09 +0000 (15:06 +0100)]
Add possibility to trigger the tests with Valgrind

13 years agoBugfix: several errors in our test program
Wilfried Goesgens [Sun, 12 Dec 2010 14:03:43 +0000 (15:03 +0100)]
Bugfix: several errors in our test program

 - initialize the count before passing it into wildfirea
 - free all our buffers properly.

13 years agoBugfixing: free our hashpositions...
Wilfried Goesgens [Sun, 12 Dec 2010 14:02:40 +0000 (15:02 +0100)]
Bugfixing: free our hashpositions...

13 years agoAttachments count is now updated in navbar
Art Cancro [Sun, 12 Dec 2010 03:15:35 +0000 (22:15 -0500)]
Attachments count is now updated in navbar

13 years agoShow throbber during attachment upload
Art Cancro [Sun, 12 Dec 2010 02:23:16 +0000 (21:23 -0500)]
Show throbber during attachment upload

13 years agoHide upload box during an upload. TODO: add throbber.
Art Cancro [Sat, 11 Dec 2010 22:24:06 +0000 (17:24 -0500)]
Hide upload box during an upload.  TODO: add throbber.

13 years agoremove image borders in the upload pane
Art Cancro [Sat, 11 Dec 2010 17:41:31 +0000 (12:41 -0500)]
remove image borders in the upload pane

13 years agoChange 'Attach' to 'Attachments: 0' (updater will follow)
Art Cancro [Sat, 11 Dec 2010 17:36:13 +0000 (12:36 -0500)]
Change 'Attach' to 'Attachments: 0' (updater will follow)

13 years agoIntegrate IGs tests
Wilfried Goesgens [Sat, 11 Dec 2010 15:36:07 +0000 (16:36 +0100)]
Integrate IGs tests

 - add to run_tests.sh
 - wrap c-unit around the test cases...

13 years agoNew upload dialog is now feature complete
Art Cancro [Sat, 11 Dec 2010 02:23:52 +0000 (21:23 -0500)]
New upload dialog is now feature complete

13 years agoUploading now works. It is ugly but it works.
Art Cancro [Fri, 10 Dec 2010 21:25:51 +0000 (16:25 -0500)]
Uploading now works.  It is ugly but it works.

13 years agoPerform uploads via a (eventually to be hidden) iframe
Art Cancro [Fri, 10 Dec 2010 21:18:58 +0000 (16:18 -0500)]
Perform uploads via a (eventually to be hidden) iframe

13 years agoMerge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Art Cancro [Fri, 10 Dec 2010 18:31:54 +0000 (13:31 -0500)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel

13 years agoMimeparser Bugfix:
Wilfried Goesgens [Fri, 10 Dec 2010 18:14:35 +0000 (19:14 +0100)]
Mimeparser Bugfix:

 - while parsing the headers, don't forget to \0 the extracted strings.

13 years agoPerformance improvement / Bugfix Mime handling while outputting messages:
Wilfried Goesgens [Fri, 10 Dec 2010 18:13:28 +0000 (19:13 +0100)]
Performance improvement / Bugfix Mime handling while outputting messages:

  - we switched to decode just that part we'd want to output, we should choose the pointer with the decoded buffer.

13 years agoMerge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Art Cancro [Fri, 10 Dec 2010 17:26:25 +0000 (12:26 -0500)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel

13 years agoReworking the enter message and attach dialogs
Art Cancro [Fri, 10 Dec 2010 17:26:22 +0000 (12:26 -0500)]
Reworking the enter message and attach dialogs

13 years agoFix typo in translation.
Wilfried Goesgens [Fri, 10 Dec 2010 17:18:12 +0000 (18:18 +0100)]
Fix typo in translation.

13 years agoMimeparser bugfix; if we continue we must flush the already parsed headers too.
Wilfried Goesgens [Fri, 10 Dec 2010 17:14:40 +0000 (18:14 +0100)]
Mimeparser bugfix; if we continue we must flush the already parsed headers too.

13 years agoHunt for mime_parser bugs...
Wilfried Goesgens [Fri, 10 Dec 2010 16:08:54 +0000 (17:08 +0100)]
Hunt for mime_parser bugs...

 - don't prepend the content-type/content-length - mime header if we don't intend to use it anyways.

13 years agoMerge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Art Cancro [Thu, 9 Dec 2010 17:07:24 +0000 (12:07 -0500)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel

13 years agoMore tiny bugfixes on the mimeparser
Wilfried Goesgens [Thu, 9 Dec 2010 00:05:16 +0000 (01:05 +0100)]
More tiny bugfixes on the mimeparser

 - in the for-loop, search first start as initializer, this saves one unneccesary memcmp
 - cr/lf detection: we need to do that _before_ the first mime content is evaluated.

13 years agoMerge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Art Cancro [Wed, 8 Dec 2010 14:04:52 +0000 (09:04 -0500)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel

13 years agoAdded the regression test I wrote while fixing stripallbut() yesterday
Art Cancro [Wed, 8 Dec 2010 03:17:47 +0000 (22:17 -0500)]
Added the regression test I wrote while fixing stripallbut() yesterday

13 years agoCorrectly evaluate whether we have a decoded mime part, or if we need to output the...
Wilfried Goesgens [Tue, 7 Dec 2010 22:30:12 +0000 (23:30 +0100)]
Correctly evaluate whether we have a decoded mime part, or if we need to output the raw content.

13 years agoPerformance: use memchr to find the next '-' and then call memcmp to check whether...
Wilfried Goesgens [Tue, 7 Dec 2010 22:20:43 +0000 (23:20 +0100)]
Performance: use memchr to find the next '-' and then call memcmp to check whether this is a boundary

 - we fast forward to the next '-' since every mime boundary starts with '-'
 - from a '-' we check thorough whether at this point we can find the searched boundary

Thanks to cirrus for pointing me to memchr()

13 years agoAdd more test-mimecontainers.
Wilfried Goesgens [Tue, 7 Dec 2010 21:27:52 +0000 (22:27 +0100)]
Add more test-mimecontainers.

13 years agoBe more conservative about when not to apply binary searching for the next boundary...
Wilfried Goesgens [Tue, 7 Dec 2010 21:24:49 +0000 (22:24 +0100)]
Be more conservative about when not to apply binary searching for the next boundary or not.

13 years agoRewrote stripallbut() again, tested extensively
Art Cancro [Tue, 7 Dec 2010 16:31:35 +0000 (11:31 -0500)]
Rewrote stripallbut() again, tested extensively

13 years agoAdd test running our wildfire sample code
Wilfried Goesgens [Sun, 5 Dec 2010 16:31:26 +0000 (17:31 +0100)]
Add test running our wildfire sample code

13 years agoIn the name of test-coverage: #if 0 the parts we don't need.
Wilfried Goesgens [Sun, 5 Dec 2010 16:30:40 +0000 (17:30 +0100)]
In the name of test-coverage: #if 0 the parts we don't need.

13 years agoDon't forget to cleanup gcov output in xdgmime
Wilfried Goesgens [Sun, 5 Dec 2010 16:14:43 +0000 (17:14 +0100)]
Don't forget to cleanup gcov output in xdgmime

13 years agoMore shell calls to all our tests
Wilfried Goesgens [Sun, 5 Dec 2010 14:47:18 +0000 (15:47 +0100)]
More shell calls to all our tests

 - look up all our staticaly coded mimetypes from randomly generated filenames
 - read all contents we find across all test mimecontainers.

13 years agoAdd test for loading one mimepart from the mimestructure; decode its content inside.
Wilfried Goesgens [Sun, 5 Dec 2010 14:45:21 +0000 (15:45 +0100)]
Add test for loading one mimepart from the mimestructure; decode its content inside.

 - this found a bug of a const char being modified inside of the call.

13 years agoAdd test for looking up the icon for a specific mimetype.
Wilfried Goesgens [Sun, 5 Dec 2010 14:43:46 +0000 (15:43 +0100)]
Add test for looking up the icon for a specific mimetype.

13 years agoDon't put a static buffer into content_encoding; its changed inside.
Wilfried Goesgens [Sun, 5 Dec 2010 14:41:19 +0000 (15:41 +0100)]
Don't put a static buffer into content_encoding; its changed inside.

 - while decoding thats overwritten. probably a bug sleeping in here waiting for its discovery for a long time.

13 years agoUpdate to launchpad R24
Wilfried Goesgens [Thu, 2 Dec 2010 00:20:40 +0000 (01:20 +0100)]
Update to launchpad R24

 - remove fuzzy strings, launchpad doesn't support them
 - add new translation

13 years agoadd scripts to run and test and have code coverage analysis across them.
Wilfried Goesgens [Thu, 2 Dec 2010 00:18:28 +0000 (01:18 +0100)]
add scripts to run and test and have code coverage analysis across them.

13 years agoAdd possibility to trigger the mimeparser internal encoding-decoder
Wilfried Goesgens [Thu, 2 Dec 2010 00:17:05 +0000 (01:17 +0100)]
Add possibility to trigger the mimeparser internal encoding-decoder

13 years agoTestdata: add an email with base64 encoded content.
Wilfried Goesgens [Thu, 2 Dec 2010 00:14:53 +0000 (01:14 +0100)]
Testdata: add an email with base64 encoded content.

13 years agoRemove loop, its a little unfriendly to run it a 10000 times.
Wilfried Goesgens [Thu, 2 Dec 2010 00:14:10 +0000 (01:14 +0100)]
Remove loop, its a little unfriendly to run it a 10000 times.

13 years agoAdd test to call mime lookup algorithms
Wilfried Goesgens [Thu, 2 Dec 2010 00:11:41 +0000 (01:11 +0100)]
Add test to call mime lookup algorithms

13 years agoIgnore more missing .gcov files
Wilfried Goesgens [Thu, 2 Dec 2010 00:10:41 +0000 (01:10 +0100)]
Ignore more missing .gcov files

13 years agoMerge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Wilfried Goesgens [Wed, 1 Dec 2010 21:25:57 +0000 (22:25 +0100)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel

13 years agoResync to launchpad translation add Bulgarian
Wilfried Goesgens [Wed, 1 Dec 2010 21:24:13 +0000 (22:24 +0100)]
Resync to launchpad translation add Bulgarian

 - remove fuzzy strings, launchpad doesn't have them and patching chokes on them

13 years agoIgnore gcov generated files.
Wilfried Goesgens [Wed, 1 Dec 2010 19:40:30 +0000 (20:40 +0100)]
Ignore gcov generated files.

13 years agoDismissing the popup-is-blocked window now opens it (hopefully)
Art Cancro [Tue, 30 Nov 2010 09:04:37 +0000 (04:04 -0500)]
Dismissing the popup-is-blocked window now opens it (hopefully)

13 years agotoggleModal() now explicitly accepts an argument of 1 (on) or 0 (off)
Art Cancro [Tue, 30 Nov 2010 08:57:00 +0000 (03:57 -0500)]
toggleModal() now explicitly accepts an argument of 1 (on) or 0 (off)

13 years agoModal dialog for the popup blocker warning
Art Cancro [Tue, 30 Nov 2010 08:40:45 +0000 (03:40 -0500)]
Modal dialog for the popup blocker warning