File Upload

Allows the user to upload a file.

Tag Attributes

<ss:forms:fileupload />

UseClassic=""
If set to true, a simple input type="file" will be used.

Auto=""
If set to true, files will automatically upload when added to the queue.

ButtonClass=""
A class name to add to the UploadiFive button DOM element.

ButtonText=""
The text to display inside the browse button. This text is rendered as HTML and may contain tags or HTML entities.

DragDropSupport=""
If set to false, drag and drop capabilities will not be enabled.

FileSizeLimit=""
The maximum upload size allowed in KB. This option also accepts a unit.
If using a unit, the value must begin with a number and end in either KB, MB, or GB. Set this option to 0 for no limit.

Height=""
The height of the browse button in pixels.

RemoveCompleted=""
Whether or not to remove items that have completed uploading from the queue.

MediaFolder=""
Whether or not to use the private media folder

MediaFolderPrivate=""
Whether or not to use the private media folder

OnQueueComplete=""
A JavaScript callback triggered when the upload completes

OnSuccessToastMessage=""
Produces a toast message on the next HTTP request

UploadLimit=""
The maximum number of files that can be uploaded at once
Set to 0 for unlimited.

SaveState=""
Whether or not the value of the control is persisted when the page is revisited

FocusOnLoad=""
Whether or not to auto focus the item on load

Value=""
Returns an array of the uploaded file
array( 'filename' => 'brochure.pdf', 'filetype' => 'application/pdf', 'filebinary' => [Data], 'tmpname' => '/tmp/a9BQ.file' )

filename=""
Returns the file name of the file submitted by the user
File names: - are lower case - have no double extensions - have spaces changed to underscores

filetype=""
Returns the file type submitted by the user

filebinary=""
Returns the binary contents of the user uploaded file

Id=""
Sets id of the object - used for the html id attribute and referencing in the parser's
document object model

Name=""
Sets the name of the form item

form=""
Returns the form item's parent form

Disabled=""
Sets the disabled attribute

ValueForStateSave=""
Returns the value for state preservation

DataColumn=""
Sets the data column

ValueFromClient=""
Returns the value submitted by the client

ValueIgnore=""
Sets the ValueIgnore property
datacolumn - The field from the datasource will be ignored client - Any value supplied by the client will be ignored ajax - Any value supplied by the client throught ajax will be ignored empty - Any empty value will be ignored

EncodeValue=""
Sets whether to html encode the value

EncodeValueBracketsOnly=""
Sets whether to encode just brackets, or all html special characters

Transformations=""
Sets the transformations to be applied to the value of the form item

Validations=""
Sets the validations to be applied to the value of the form item

Width=""
Sets the width of the element

AttributeSet=""
Calls setAttribute() for each key value pair in $arrAttributes

AjaxModified=""
Sets whether or not this object is modified by ajax requests

AjaxEventParameter=""
Sets a parameter which can be passed to the ajax event
Be careful with security on this parameter as it is passed through javascript in the clients browser.

ChildNodes=""
Sets the children of this node in the DOM

InnerText=""
Adds a new TextNode child at the end of the children

Examples

Simple File Upload Example

describes how to put a file upload element into a form

XML Code:

Class Methods

The following methods can be invoked on instances of this class.

getNodeName()

getNodeDisplayType()

getRequiresId()

initialize()

getValue(mixed bIncludeStrict, mixed bIncludeClient, mixed bIncludeDataColumn)

Returns an array of the uploaded file
array( 'filename' => 'brochure.pdf', 'filetype' => 'application/pdf', 'filebinary' => [Data], 'tmpname' => '/tmp/a9BQ.file' )

getFileName()

Returns the file name of the file submitted by the user
File names: - are lower case - have no double extensions - have spaces changed to underscores

getFileType()

Returns the file type submitted by the user

getFileBinary()

Returns the binary contents of the user uploaded file

renderItemReadOnly()

isHTML5()

renderItem()

cleanupTempDir()

Cleans up old file uploads

stateGetSavableProperties()

Returns a list of properties which will be saved to session state

getAttributesString(mixed arrOverrides, mixed bId, mixed bSize, mixed bName, bool bValue)

Returns the attributes of the elment as a renderable properties string

setId(string strId)

Sets id of the object - used for the html id attribute and referencing in the parser's
document object model

setName(string strName)

Sets the name of the form item

getName()

Returns the name of the form item

getNameNoBrackets(string strName)

Returns the name of the form item without any brackets
For instance, if you have name="item[]", this function will return 'item'

getForm()

Returns the form item's parent form

setFormItemGroup(mixed pFormItemGroup)

getFormRow()

Returns the item's form row if it has one

setDisabled(bool bDisabled)

Sets the disabled attribute

setValueForStateSave(string strValue)

Returns the value for state preservation

getValueForStateSave()

Returns the value for state preservation

setDataColumn(mixed strDataColumn)

Sets the data column

getDataColumn()

Returns the current data column

setDataColumnIsPrimaryKey(mixed bDataColumnIsPrimaryKey)

getDataColumnIsPrimaryKey()

setDataColumnIsNull(mixed bIsNull)

getDataColumnIsNull()

getValueFromClient(string strName)

Returns the value submitted by the client

getValueFromDataColumn(mixed bPopulateOnDemand)

Returns the value set using the datacolumn

setValueIgnore(string|array arrValueIgnore)

Sets the ValueIgnore property
datacolumn - The field from the datasource will be ignored client - Any value supplied by the client will be ignored ajax - Any value supplied by the client throught ajax will be ignored empty - Any empty value will be ignored

getValueIgnore()

Returns the ValueIgnore property

setValue(string strValue)

Sets the value of the form item

encodeValueHelper(mixed strValue)

encodeValue(string strValue)

Encodes a value depending on the properties EncodeValue and EncodeValueBracketsOnly

setEncodeValue(bool bEncodeValue)

Sets whether to html encode the value

getEncodeValue()

Returns whether to encode the value

setEncodeValueBracketsOnly(bool bEncodeValueBracketsOnly)

Sets whether to encode just brackets, or all html special characters

getEncodeValueBracketsOnly()

Returns whether to encode just brackets, or all html special characters

setValueTransformations(mixed arrValueTransformations)

Sets the transformations to be applied to the value of the form item

getValueTransformations()

setValueValidations(mixed arrValueValidations)

Sets the validations to be applied to the value of the form item

getValueValidations()

validate()

Validates the form item

addValidationException(mixed pException)

getValidationExceptions()

callDelegate(mixed strFunc)

onDOMReady()

renderTagOpen(mixed arrAttributes)

Renders the form item.

renderTagClose()

__sleep()

getTagNameHTML()

Returns the base tag name

getTagNameClosedInline()

Returns whether the tag is closed inline

setWidth(mixed strWidth)

Sets the width of the element

getWidth()

Returns the width of the element

getJSAttributes()

Returns a set of JavaScript attributes that differ from the default JS implementation
Default values on properties can be specified by @js_attribute and @js_default

generateId()

Generates an id for the node if one isnt already set

getRequiresContainerDiv()

Returns whether or not this control will be wrapped in a container span

RestoreControlFromState(string strId)

Restores a control from its element state

getId()

Returns the id of the object

__get(string strName)

Overload for returning an attribute

__set(mixed strName, string strValue)

Overload for setting an attribute

__isset(string strName)

Returns whether an attribute exists

__unset(string strName)

Removes an attribute

__destruct()

setAttribute(mixed strAttribute, string strValue, mixed bDecode)

Sets an attribute
Returns true when handled Returns false when set as standard a HTML attribute

setAttributes(array arrAttributes)

Calls setAttribute() for each key value pair in $arrAttributes

setAttributesHTML(array arrAttributes)

Sets generic HTML attributes not specified by attributes of this control

getAttributesHTML(array arrAttributes)

Returns the current attributes set that aren't defined attributes of this control

setAttributeHTML(mixed strAttribute, mixed strValue)

Sets a single attribute

getAttributeHTML(mixed strAttribute)

Returns a single attribute

setAttributeJSAdd(mixed strAttrib, mixed strValue)

Adds a javascript handler attribute
If a handlers already exist, the new handler added to the end

getAttribute(mixed strAttribute)

Returns the value of the given attribute

removeAttribute(string strAttrib)

Removes an attribute

getAttributes()

Returns the objects attributes as an associative array

requireAttribute(mixed strAttribute, mixed strValue)

setAttributesParsedInit(mixed arrAttributes)

getAttributesParsedInit()

setAttributesParsedRender(mixed arrAttributes)

getAttributesParsedRender()

mergeAttributes(mixed arr1, array arr2)

Merges two sets of attributes

getStyles()

setStyle(mixed strStyle, mixed strValue)

setStyles(mixed arrStyles)

setAjaxModified(bool bAjaxModified)

Sets whether or not this object is modified by ajax requests

getAjaxModified()

Returns whether or not this object is modified by ajax requests

stateGetSavablePropertiesAllAttributes()

Returns a list of all attributes to save to session state

stateSave()

Serializes the state of the object to session

stateSaveAdditional(mixed strKey, string strValue)

Sets a key value pair for saving additional state data
This data is handled manually by each inheriting control

stateIsSetAdditional(string strKey)

Returns whether an additional state key has been set

stateGetAdditional(string strKey)

Returns the value of a key in the additional state set
Note: This function returns a reference

stateUnsetAdditional(string strKey)

Deletes additional saved data

stateSaveAdditionalArray(mixed strKey, mixed strKey2, mixed strValue)

Sets an inner array key value pair for saving additional state data

stateIsSetAdditionalArray(mixed strKey, string strKey2)

Returns whether an additional state key has been set

stateGetAdditionalArray(mixed strKey, string strKey2)

Returns an inner array key value pair for additional state data

stateGetPrevious()

Returns the state data for the current object

stateRenderJSGetContents()

stateRenderJS()

stateRestore(mixed arrAttributes)

Restores the saved state of this object from the users session

addEventHandler(mixed strEventName, mixed strCode)

Adds an event handler
If $strCode is an array, call_user_func_array will be called directly call_user_func_array($strFunc[0], $strFunc[1]);

removeEventHandler(mixed strEventName)

triggerEvent(string strEventName)

Triggers a server side event
Calls all event handlers set by addEventHandler

setEventHandlersAjax(array arrHandlers)

Sets the ajax event handlers

addEventHandlerAjax(mixed strEventName, mixed strAjaxEventId)

Adds an AJAX event handler

getEventHandlersAjax()

Sets the ajax event handlers

setAjaxEventParameter(string strParameter)

Sets a parameter which can be passed to the ajax event
Be careful with security on this parameter as it is passed through javascript in the clients browser.

getAjaxEventParameter()

Returns the current ajax event parameter

getIsAjax()

onDOMReadySetParsedAttributes()

onDOMReadySetParsedAttributesAJAX()

render()

Renders the element

renderTagContents()

Renders the contents of the tag

renderAJAXTree(mixed bInside)

__sleepExport()

Magic function for a better var_export() of nodes

__wakeup()

Wake up

__clone()

Clone

__toString()

Renders the element to a string

getTrimContents()

Returns whether the control should trim its contents for optimisation purposes

setParentNode(\Framework\DOM\Nodes\NodeABC pNode)

Sets the elements parent node in the DOM

getParentNode()

Returns the elements parent node in the DOM

getAscendant(string strAscendantClass)

Returns the first ascendant node of a specific class

getDocument()

Returns the elements top most / document element

setChildNodesFromTemplate(array arrChildNodes)

Sets the child nodes from the template
This method may be overridden if the innerHTML from the original source acts as a template, rather than being the nodes themselves. For example, a data repeater uses the child nodes from the template to construct the child nodes dynamically.

setChildNodes(array arrChildNodes)

Sets the children of this node in the DOM

getChildNodes()

Returns the children of this node

insertBefore(mixed pNewNode, mixed pNode)

insertAfter(mixed pNewNode, mixed pNode)

appendChild(\Framework\DOM\Nodes\NodeABC pNode)

Adds new child at the end of the children

appendChildText(mixed strText)

Adds a new TextNode child at the end of the children

removeChild(\Framework\DOM\Nodes\NodeABC pNode)

Removes the specified node from the list of children

debugRenderChildren(mixed iDepth)

resetDOMStates()

Resets the indicators for dom states so that reinitialisation / rendering can occur

uiStateGetParentVars()

Returns an array containing the states of parent controls
such as DialogBox and TabList

__call(mixed strName, array arrArguments)

Magic function to trap calls to undefined functions and throw an exception rather than
a fatal error.

__callStatic(mixed strName, array arrArguments)

Magic function to trap static calls to undefined functions and throw an exception rather
than a fatal error.

classGetFolder()

Returns the folder where the class exists

__set_state(mixed arrValues)

classGetFolderResources()

Returns the folder where the class's resources exist

classGetSrcFile()

Returns the folder where the class exists

classGetSrcHash()

Returns the folder where the class exists

classGetReflection()

Returns the reflection data for the current class

classGetReflectionAnnotation(string strField)

Returns a specific class annotation for the current class