* SWFUpload Core, May 2008, www.swfupload.org, swfupload.googlecode.com
* --------- Version 2.2.0 Beta 2 ~ 4-----------
* Fixed issues in Destroy
* Fixed issues with Queue Plugin
* Added periodic checks of the ExternalInterface
* Improved IE memory leak prevention code
* --------- Version 2.2.0 Beta 1-----------
* + Added Flash Player 10 Support
* = Added setting for defining a button image
* = Added setting for defining button text
* = Added setting for defining button width, height and padding
* = Added setting for defining what element the Flash Movie should replace
* = Added setting for defining flash wmode
* = Added setting for defining the mouse cursor
* + Added prevent_swf_caching setting as a work-around for issues in Avant Browser (and other IE based browser)
* + Added setting for accepting HTTP Status codes other than 200 as successful
* + Added parameter to cancelUpload that allows the uploadError event for cancelled uploads to be supressed
* + Added pro-active memory leak fix for IE and fixed problems with the destroy function (credits to steffen for patches and testing)
* + Replaced callFlash with CallFunction (using the internal function that Flash uses). Based on code from MooTools.
* = Fixed bug in the Queue plugin that breaks startUpload when passing a file id.
* + Updated Queue plugin to stop the queue if false is returned from the uploadStart handler.
* = Fixed small issues in SWFObject plugin
* = Fixed issue with ExternalInterface string escaping
* - Dropped Graceful Degradation Plugin
* - Dropped v1.0.2 Plugin
* - Dropped Flash Player 8 support
* --------- Version 2.1.0 -----------
* = Fixed GET values so they are escaped properly
* + Added destroy function
* = Added exception handling around browse() calls
* = Minor code cleanup
* + Split Core and Demos
* --------- Version 2.1.0 Beta 2-----------
* = Fixed bug in XHTML fix where it wasn't split correctly by Flash
* = Fixed file params "undefined" in debug output
* + Added requeue_on_error settings so HTTP/IO/Security errors requeue the file instead of discarding it.
This will affect the queue plugin (if an error is occurring the file will be reuploaded and reuploaded).
* = Fixed HTTP/IO error behavior. We'll see how this goes Flash 9 is supposed to call HTTPError followed by an IO error but I suspect they come out of orde sometimes.
* = Fixed invalid characters in file param names. Worked around flash bug by escaping the names. Should be transparent to devs.
* = Fixed missing upload URL logic so it fires consistently
* = Fixed file params not being sent when useQueryString is true
* + Added SWFObject plugin and demo.
* + Added CookieBug demo to demonstrate what they bug really is all about.
* + Added VB.Net version of the Application Demo
* --------- Version 2.1.0 Beta 1-----------
* + Added allowScriptAccess="always" to the embed/object elements so the SWF can be served from different domains.
* = Fixed a type-o in the debug output that prevented the instance id (movieName) from displaying. - Thx Joel
* + Rewrote SWFUpload.js for better code reuse based on sample code from batiste.bieler (thanks!!!)
* + Added queueComplete event to the Queue Plugin
* + Added Simple Upload demo
* = JSLinted all the JavaScript code
* + Added use_query_string setting (and setUseQueryString function) that forces post_param and file_param values to be sent on the query_string instead of the post (for Flash 9 version)
* = Fixed file.type and date properties so a default value is provided (rather than null) when no value is provided by flash.
* = Fixed misc bugs in the demos
* = Fixed ExternalInterface calls being made available for Flash 9 versions <9.0.28 which aren't supported
* + Fixed use of & producing invalid XHTML in the <object> and <embed> tags.
* - Removed the use of the embed tag (using the <object> sample from the Flash Satay method)
* = Updated plugins to work with code rewrite changes.
* = Extracted FileProgress object in to its own file.
* + Added addPostParam and removePostParam functions
* --------- Version 2.0.2 -----------
* = Fixed a bug where post params could not be added to the current file (because it is removed from the queue when it becomes current)
* = Fixed a conversion error when converting kilobytes to bytes in the file size check
* = Fixed a problem in the documentation that said the file_size_limit was bytes when it is actually kilobytes
* + Added formatting to the documentation, a table of contents, and details for each setting .
* + Added units for file_size_limit setting. The setting understands B, KB, MB, GB. Default is KB.
* + Added a check for the ExternalInterface functions in flashReady so SWFUpload will not fire the loaded event if those are not available.
* --------- Version 2.0.1 -----------
* = Fixed a bug where zero-byte files would stop file the queuing process.
* = Finished updating Features Demo
* + Added GetFileByIndex(i) that gets a JavaScript File Object. The index never changes. Finished files continue to be available.
* The JavaScript GetFile function will accept a file_id or an index.
* + Added CheckFileSize constants to replace the magic numbers
* + Added some code in an attempt to fix "Script is running slowly" error messages
* = Better cleanup of FileReference objects
* --------- Version 2.0 -----------
* + Re-created SWFUpload in Actionscript v2 for Flash 8 compatibility. Flash 8 loses POST and Server Data features. The two versions are otherwise fully compatible.
* Flash 8 uses URL to pass post_params/file_params.
* = Changed uploadStart event so it's part of the setTimeout/eventQueue workaround. This allows Flash functions to be called from uploadStart.
* = Renamed uploadComplete to uploadSuccess and fileComplete to uploadComplete. All started uploads call uploadComplete (even if cancelled or stopped).
* = Changed startUpload validation failure behavior. Rather than cancelling the upload the file is now requeued. Devs can cancel
* or do whatever the need to in uploadError to handle the problem.
* = Fixed fileQueueLimit/fileUploadLimit logic so it works correctly.
* = Moved the upload request building to a later point so that the post params and file params can be updated in uploadStart.
* - Removed the last of the UI stuff (ui_container, degraded_container).
* + Started development on Plug-ins. Graceful Degradation, v1.0.2, Cookies, Queue Handling
* = Fixed missing file_status field in FileItem.
* + Added modificationDate to FileItem (file object)
* + Added setStats function that lets you change the file upload count, etc. This will give more power over the queue limits. Not well tested.
* = Renamed compeleted_uploads to successful_uploads in getStats object
* + Added in_progress to getStats object
* --------- Revision 7.0 beta 3 -----------
* + Added an "event queue". Events are added to an array and executeEvent is called on a setTimeout. This prevents out of order issues that occur
* in the Safari browser.
* + Added a check for the UPLOAD_COMPLETE_DATA event constant which only became available in Flash Player 9.0.28. This
* fixes the Flash Version detection (Flash Object Detection) which was accepting Flash Player 9 versions before 9.0.28.
* - Removed old code block that was missed when moving from a Flash Timer to the JavaScript timeout (caused certain cancel events to be called twice)
* = Change ShowUI to the swfUploadLoaded event which will hopefully make it more clear that this is an overrideable event
* = Changed flashReady to behave like the other events (uses setTimeout and the Event Queue).
* --------- Revision 7.0 beta 2 -----------
* = Changed ERROR_CODE_FILE_NOT_FOUND to ERROR_CODE_FILE_ID_NOT_FOUND
* + Grouped the error code constants in objects for queue