Class Uploader
- extends Y.Base
Creates the Uploader instance and keeps the initialization data
Constructor
Uploader
(
config
)
- Parameters:
-
config
<Object>
(optional) Configuration parameters for the Uploader. The following parameters are available:
- boundingBox : String|Node (required)
- buttonSkin : String (optional)
- transparent : String (optional)
- swfURL : String (optional)
Properties
_id
- private {String}
The id of this instance of uploader.
The reference to the instance of Y.SWF that encapsulates the instance of the Flash player with uploader logic.
Default Value: null
Methods
private
void
_initializeUploader
(
event
)
Called when the uploader SWF is initialized
- Parameters:
-
event
<Object>
The event to be propagated from Flash.
private
void
_relayEvent
(
event
)
Called when an event is dispatched from Uploader
- Parameters:
-
event
<Object>
The event to be propagated from Flash.
void
cancel
(
fileID
)
Cancels the upload of a specific file, if currently in progress.
- Parameters:
-
fileID
<String>
(optional) The ID of the file whose upload should be cancelled. If no ID is specified, all uploads are cancelled.
Boolean
clearFileList
(
)
Clears the upload queue.
- Returns:
Boolean
- This method always returns true.
void
enable
(
)
Enables the uploader user input (mouse clicks on the 'Browse' button). If the button skin
is applied, the sprite is reset from the "disabled" state.
protected
void
initializer
(
)
Construction logic executed during Uploader instantiation.
Object} The updated file list, which is an object of the format:
fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize
removeFile
(
fileID
)
Removes a specific file from the upload queue.
- Parameters:
-
fileID
<String>
The ID of the file to be removed
private
void
setAllowLogging
(
value
)
Setter for the 'log' property.
- Parameters:
-
value
<Boolean>
The value for the 'log' property.
private
void
setAllowMultipleFiles
(
value
)
Setter for the 'multiFiles' property.
- Parameters:
-
value
<Boolean>
The value for the 'multiFiles' property.
private
void
setFileFilters
(
value
)
Setter for the 'fileFilters' property.
- Parameters:
-
value
<Boolean>
The value for the 'fileFilters' property.
private
void
setSimUploadLimit
(
value
)
Setter for the 'simLimit' property.
- Parameters:
-
value
<Boolean>
The value for the 'simLimit' property.
Boolean
upload
(
fileID
,
url
,
method
,
postVars
,
postFileVarName
)
Starts the upload of a specific file.
- Parameters:
-
fileID
<String>
The ID of the file to be uploaded.
-
url
<String>
The URL to upload the file to.
-
method
<String>
(optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default)
-
postVars
<Object>
(optional) A set of key-value pairs to send as variables along with the file upload HTTP request.
-
postFileVarName
<String>
(optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default)
- Returns:
Boolean
- This method always returns true.
void
uploadAll
(
url
,
method
,
postVars
,
postFileVarName
)
Starts the upload of the files in the upload queue.
The upload queue is managed automatically.
- Parameters:
-
url
<String>
The URL to upload the files to.
-
method
<String>
(optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default)
-
postVars
<Object>
(optional) A set of key-value pairs to send as variables along with the file upload HTTP request.
-
postFileVarName
<String>
(optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default).
void
uploadThese
(
fileIDs
,
url
,
method
,
postVars
,
postFileVarName
)
Starts the upload of a set of files, as specified in the first argument.
The upload queue is managed automatically.
- Parameters:
-
fileIDs
<Array>
The array of IDs of the files to be uploaded.
-
url
<String>
The URL to upload the files to.
-
method
<String>
(optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default)
-
postVars
<Object>
(optional) A set of key-value pairs to send as variables along with the file upload HTTP request.
-
postFileVarName
<String>
(optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default)
Events
boundingBoxChange
(
event
)
Fires when the value for the configuration attribute 'boundingBox' is changed. You can listen for the event using the
on method if you wish to be notified before the attribute's value has changed, or using the
after method if you wish to be notified after the attribute's value has changed.
- Parameters:
-
event
<Event.Facade>
An Event Facade object with the following attribute specific properties added: - prevVal
- The value of the attribute, prior to it being set
- newVal
- The value the attribute is to be set to
- attrName
- The name of the attribute being set
- subAttrName
- If setting a property within the attribute's value, the name of the sub-attribute property being set
buttonSkinChange
(
event
)
Fires when the value for the configuration attribute 'buttonSkin' is changed. You can listen for the event using the
on method if you wish to be notified before the attribute's value has changed, or using the
after method if you wish to be notified after the attribute's value has changed.
- Parameters:
-
event
<Event.Facade>
An Event Facade object with the following attribute specific properties added: - prevVal
- The value of the attribute, prior to it being set
- newVal
- The value the attribute is to be set to
- attrName
- The name of the attribute being set
- subAttrName
- If setting a property within the attribute's value, the name of the sub-attribute property being set
click
(
event
)
Fired when the mouse button is clicked on the Uploader's 'Browse' button.
- Parameters:
-
event
<Event>
The event object for the click.
fileFiltersChange
(
event
)
Fires when the value for the configuration attribute 'fileFilters' is changed. You can listen for the event using the
on method if you wish to be notified before the attribute's value has changed, or using the
after method if you wish to be notified after the attribute's value has changed.
- Parameters:
-
event
<Event.Facade>
An Event Facade object with the following attribute specific properties added: - prevVal
- The value of the attribute, prior to it being set
- newVal
- The value the attribute is to be set to
- attrName
- The name of the attribute being set
- subAttrName
- If setting a property within the attribute's value, the name of the sub-attribute property being set
fileselect
(
event
)
Fires when the user has finished selecting a set of files to be uploaded.
- Parameters:
-
event
<Event} The event object for the fileSelect.
- fileList
- The file list Object with entries in the following format:
fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize
>
logChange
(
event
)
Fires when the value for the configuration attribute 'log' is changed. You can listen for the event using the
on method if you wish to be notified before the attribute's value has changed, or using the
after method if you wish to be notified after the attribute's value has changed.
- Parameters:
-
event
<Event.Facade>
An Event Facade object with the following attribute specific properties added: - prevVal
- The value of the attribute, prior to it being set
- newVal
- The value the attribute is to be set to
- attrName
- The name of the attribute being set
- subAttrName
- If setting a property within the attribute's value, the name of the sub-attribute property being set
mousedown
(
event
)
Fired when the mouse button is pressed on the Uploader's 'Browse' button.
- Parameters:
-
event
<Event>
The event object for the mousedown.
mouseenter
(
event
)
Fired when the mouse enters the Uploader's 'Browse' button.
- Parameters:
-
event
<Event>
The event object for the mouseenter.
mouseleave
(
event
)
Fired when the mouse leaves the Uploader's 'Browse' button.
- Parameters:
-
event
<Event>
The event object for the mouseleave.
mouseup
(
event
)
Fired when the mouse button is raised on the Uploader's 'Browse' button.
- Parameters:
-
event
<Event>
The event object for the mouseup.
multiFilesChange
(
event
)
Fires when the value for the configuration attribute 'multiFiles' is changed. You can listen for the event using the
on method if you wish to be notified before the attribute's value has changed, or using the
after method if you wish to be notified after the attribute's value has changed.
- Parameters:
-
event
<Event.Facade>
An Event Facade object with the following attribute specific properties added: - prevVal
- The value of the attribute, prior to it being set
- newVal
- The value the attribute is to be set to
- attrName
- The name of the attribute being set
- subAttrName
- If setting a property within the attribute's value, the name of the sub-attribute property being set
simLimitChange
(
event
)
Fires when the value for the configuration attribute 'simLimit' is changed. You can listen for the event using the
on method if you wish to be notified before the attribute's value has changed, or using the
after method if you wish to be notified after the attribute's value has changed.
- Parameters:
-
event
<Event.Facade>
An Event Facade object with the following attribute specific properties added: - prevVal
- The value of the attribute, prior to it being set
- newVal
- The value the attribute is to be set to
- attrName
- The name of the attribute being set
- subAttrName
- If setting a property within the attribute's value, the name of the sub-attribute property being set
swfURLChange
(
event
)
Fires when the value for the configuration attribute 'swfURL' is changed. You can listen for the event using the
on method if you wish to be notified before the attribute's value has changed, or using the
after method if you wish to be notified after the attribute's value has changed.
- Parameters:
-
event
<Event.Facade>
An Event Facade object with the following attribute specific properties added: - prevVal
- The value of the attribute, prior to it being set
- newVal
- The value the attribute is to be set to
- attrName
- The name of the attribute being set
- subAttrName
- If setting a property within the attribute's value, the name of the sub-attribute property being set
transparentChange
(
event
)
Fires when the value for the configuration attribute 'transparent' is changed. You can listen for the event using the
on method if you wish to be notified before the attribute's value has changed, or using the
after method if you wish to be notified after the attribute's value has changed.
- Parameters:
-
event
<Event.Facade>
An Event Facade object with the following attribute specific properties added: - prevVal
- The value of the attribute, prior to it being set
- newVal
- The value the attribute is to be set to
- attrName
- The name of the attribute being set
- subAttrName
- If setting a property within the attribute's value, the name of the sub-attribute property being set
uploadcancel
(
event
)
Announces that the uploader is ready and available for calling methods
and setting properties
- Parameters:
-
event
<Event>
The event object for the uploaderReady.
- ddEvent
drag:start
event from the thumb
uploadcomplete
(
event
)
Fires when a specific file's upload is cancelled.
- Parameters:
-
event
<Event>
The event object for the uploadcancel.
- id
- The id of the file whose upload has been cancelled.
uploadcompletedata
(
event
)
If the server has sent a response to the file upload, this event is
fired and the response is added to its payload.
- Parameters:
-
event
<Event>
The event object for the uploadcompletedata.
- id
- The id of the file for which the response is being provided.
- data
- The content of the server response.
uploaderReady
(
event
)
Announces that the uploader is ready and available for calling methods
and setting properties
- Parameters:
-
event
<Event>
The event object for the uploaderReady.
uploaderror
(
event
)
Provides error information if an error has occurred during the upload.
- Parameters:
-
event
<Event>
The event object for the uploadeerror.
- id
- The id of the file for which the upload error has occurred.
- status
- Relevant error information.
uploadprogress
(
event
)
Provides progress information on a specific file upload.
- Parameters:
-
event
<Event>
The event object for the uploadprogress.
- id
- The id of the file for which the progress information is being provided.
- bytesLoaded
- The number of bytes of the file that has been uploaded.
- bytesTotal
- The total number of bytes in the file that is being uploaded.
uploadstart
(
event
)
Announces that the upload has been started for a specific file.
- Parameters:
-
event
<Event>
The event object for the uploadstart.
- id
- The id of the file whose upload has been started.
Configuration Attributes
The Node containing the uploader's 'Browse' button.
Default Value: null
buttonSkin
- writeonce {String}
The URL of the image sprite for skinning the uploader's 'Browse' button.
Default Value: null
The array of filters on file extensions for
the 'Browse' dialog. These filters only provide
convenience for the user and do not strictly
limit the selection to certain file extensions.
Each item in the array must contain a 'description'
property, and an 'extensions' property that must be
in the form "*.ext;*.ext;*.ext;..."
Default Value: []
log
- {Boolean}
The flag that allows Flash player to
output debug messages to its trace stack
(if the Flash debug player is used).
Default Value: false
The flag that allows the user to select
more than one files during the 'Browse'
dialog (using 'Shift' or 'Ctrl' keys).
Default Value: false
The number of files that can be uploaded
simultaneously if the automatic queue management
is used. This value can be in the range between 2
and 5.
Default Value: 2
swfURL
- writeonce {String}
The URL of the uploader's SWF.
Default Value: "assets/uploader.swf"
The flag indicating whether the uploader is rendered
with a transparent background.
Default Value: true