function CreateUploadComponent()
{
    try
    {
        var oImage = GEBI("faImage");
        var oImportSource = GEBI("faImportSource");

        if (oImage || oImportSource)
        {
            var strButton = (oImage) ? "faImage" : "faImportSource";
            var strAction = (oImage) ? 'default.aspx?action=directPOST&PostAction=paStoreBinary' : 'default.aspx?action=directPOST&PostAction=paStoreImportSource';
            var strFileNameTDID = (oImage) ? "tdImageLoadingStatus" : "tdImportSourceFile";

            if (oUpload) oUpload = null;

            oUpload = new AjaxUpload(strButton,
            {
                action: strAction,
                name: 'userfile',
                data: {},
                autoSubmit: false,
                progress: '',
                onChange: function(file, extension)
                {
                    FileUploadOnChange(file, extension, strFileNameTDID);
                },
                onSubmit: function(file, extension)
                {
                    FileUploadOnSubmit(file, extension, strFileNameTDID);
                },
                onComplete: function(file, response)
                {
                    FileUploadComplete(file, response, strFileNameTDID);
                }
            });
        }
    }
    catch (e)
    { }
}
//-----------------------------------------------------------------
function FileUploadComplete(file, response, strFileNameTDID)
{
    try
    {

        var oObj = GEBI(strFileNameTDID);
        if (oObj)
            oObj.innerHTML = "";

    }
    catch (e)
    { }

    ProcessRequest("default.aspx", strRelatedRequestParams, strRelatedRequestAction, oRelatedRequestTarget);

    bUploadingFile = false;

}
//-----------------------------------------------------------------
function FileUploadOnSubmit(file, extension, strFileNameTDID)
{
    try
    {
        var oObj = GEBI(strFileNameTDID);
        if (oObj)
            oObj.innerHTML = "<b class=\"bInfo\">Uploading file...</b>";
    }
    catch (e)
    { }
}
//-----------------------------------------------------------------
function FileUploadOnChange(file, extension, strFileNameTDID)
{
    try
    {
        var oObj = GEBI(strFileNameTDID);
        if (oObj)
            oObj.innerHTML = "<b class=\"bInfo\">Selected file: " + file + "</b>";

        bUploadingFile = true;
    }
    catch (e)
    { }
}
//-----------------------------------------------------------------
