18 SWFUpload.prototype.initSettings = (
function (oldInitSettings) {
20 if (typeof(oldInitSettings) ===
"function") {
21 oldInitSettings.call(
this);
24 this.queueSettings = {};
26 this.queueSettings.queue_cancelled_flag =
false;
27 this.queueSettings.queue_upload_count = 0;
29 this.queueSettings.user_upload_complete_handler = this.settings.upload_complete_handler;
30 this.queueSettings.user_upload_start_handler = this.settings.upload_start_handler;
31 this.settings.upload_complete_handler =
SWFUpload.queue.uploadCompleteHandler;
32 this.settings.upload_start_handler =
SWFUpload.queue.uploadStartHandler;
34 this.settings.queue_complete_handler = this.settings.queue_complete_handler || null;
38 SWFUpload.prototype.startUpload =
function (fileID) {
39 this.queueSettings.queue_cancelled_flag =
false;
43 SWFUpload.prototype.cancelQueue =
function () {
44 this.queueSettings.queue_cancelled_flag =
true;
48 while (stats.files_queued > 0) {
54 SWFUpload.queue.uploadStartHandler =
function (file) {
56 if (typeof(this.queueSettings.user_upload_start_handler) ===
"function") {
57 returnValue = this.queueSettings.user_upload_start_handler.call(
this, file);
61 returnValue = (returnValue ===
false) ?
false :
true;
63 this.queueSettings.queue_cancelled_flag = !returnValue;
68 SWFUpload.queue.uploadCompleteHandler =
function (file) {
69 var user_upload_complete_handler = this.queueSettings.user_upload_complete_handler;
72 if (file.filestatus ===
SWFUpload.FILE_STATUS.COMPLETE) {
73 this.queueSettings.queue_upload_count++;
76 if (typeof(user_upload_complete_handler) ===
"function") {
77 continueUpload = (user_upload_complete_handler.call(
this, file) ===
false) ?
false :
true;
78 }
else if (file.filestatus ===
SWFUpload.FILE_STATUS.QUEUED) {
80 continueUpload =
false;
82 continueUpload =
true;
87 if (stats.files_queued > 0 &&
this.queueSettings.queue_cancelled_flag ===
false) {
89 }
else if (this.queueSettings.queue_cancelled_flag ===
false) {
90 this.
queueEvent(
"queue_complete_handler", [this.queueSettings.queue_upload_count]);
91 this.queueSettings.queue_upload_count = 0;
93 this.queueSettings.queue_cancelled_flag =
false;
94 this.queueSettings.queue_upload_count = 0;