Approved
Last Updated: 07 Nov 2018 15:31 by ADMIN
ADMIN
Created by: Dimitar
Comments: 0
Category: CloudUpload
Type: Bug Report
0
Affects RadCloudUpload and RadAsyncUpload combined with RadProgressArea. Manifests most often on slow networks or very large files.
Scroll down for workarounds for both cases.

WORKAROUND FOR PROGRESS AREA is to round down the data, as it seems the server reports more bytes uploaded than they actually are, and that tends to happen under slow network conditions

<telerik:RadAsyncUpload RenderMode="Lightweight" runat="server" ID="RadAsyncUpload1" MultipleFileSelection="Automatic" EnableInlineProgress="false" />
<telerik:RadProgressManager runat="server" ID="RadProgressManager1" />
<telerik:RadProgressArea RenderMode="Lightweight" runat="server" ID="RadProgressArea1" OnClientProgressUpdating="OnClientProgressUpdating" />
<script>
function OnClientProgressUpdating(sender, args) {
    //debugger
    if (args._progressData.PrimaryPercent > 100) {
        args._progressData.PrimaryPercent = 100;
    }
    if (args._progressData.PrimaryValue > args._progressData.PrimaryTotal) {
        args._progressData.PrimaryValue = args._progressData.PrimaryTotal;
    }
    console.log(args.get_progressData());
}
</script>

WORKAROUND FOR CLOUD UPLOAD is to add the following script at the end of the form that will override the built-in XHR handilng to change the way the totals are calculated:

        <script>
            Telerik.Web.UI.RadCloudUpload.HandlerUploader.prototype._initializeXmlHttpRequest = function () {
                this._xhr = new XMLHttpRequest();

                var that = this,
                    module = this._module,
                    xhr = this._xhr;

                xhr.onreadystatechange = function readyStateChanged() {
                    if (xhr.readyState == 4) {
                        if (xhr.status == 200) {
                            that._successfulResponseStatus(xhr);
                        }
                        else if (xhr.status != 0) {
                            that._failedResponseStatus(xhr);
                        }
                    }
                };

                xhr.upload.onprogress = function (event) {
                    that._uploadedSize += event.loaded;

                    var percents = Math.round((event.loaded / event.total) * 100) + "%";

                    module._renderingManager.updateRowProgress(that._uploadingEntity.row, percents, true);
                };
            }
        </script>
Approved
Last Updated: 21 Feb 2018 11:05 by ADMIN
When uploading a file to the CloudUpload control with an ’ apostrophe symbol in the name (Examples of the 3C’s.pdf), the control fails with 

Uncaught Error: Sys.ArgumentException: Cannot deserialize. The data does not correspond to valid JSON.
Parameter name: data
    at Function.Error.create (Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_QsfScriptManager_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+PublicKeyToken%3d31bf3856ad364e35%3aen-US%3ad28568d3-e53e-4706-928f-3765912b66ca%3aea597d4b%3ab25378d2:6)
    at Function.Error.argument (Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_QsfScriptManager_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+PublicKeyToken%3d31bf3856ad364e35%3aen-US%3ad28568d3-e53e-4706-928f-3765912b66ca%3aea597d4b%3ab25378d2:6)
    at Function.Sys.Serialization.JavaScriptSerializer.deserialize (Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_QsfScriptManager_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+PublicKeyToken%3d31bf3856ad364e35%3aen-US%3ad28568d3-e53e-4706-928f-3765912b66ca%3aea597d4b%3ab25378d2:6)
    at c.RadCloudUpload.HandlerUploader._successfulResponseStatus (RadCloudUploadScripts.js:477)
    at XMLHttpRequest.p (RadCloudUploadScripts.js:463)

Note, it's not the typical apostrophe. If you replace ’ with a normal ' windows apostrophe, the control uploads the file just fine.

In order to test, create any file on your system using that special character and try to upload that file using the demo application, located:

https://demos.telerik.com/aspnet-ajax/cloud-upload/examples/overview/defaultcs.aspx
Approved
Last Updated: 29 May 2017 13:45 by ADMIN
The CloudUpload's Progressbar is not initially shown when uploading files  in MS Edge v. 40.15063 (Creator's Edition)
Approved
Last Updated: 29 Sep 2016 18:37 by John
Approved
Last Updated: 04 Jan 2016 05:58 by Santhosh kumar
Approved
Last Updated: 11 May 2015 07:13 by ADMIN
ADMIN
Created by: Hristo Valyavicharski
Comments: 0
Category: CloudUpload
Type: Bug Report
1

			
Approved
Last Updated: 20 Apr 2015 11:08 by ADMIN
ADMIN
Created by: Hristo Valyavicharski
Comments: 0
Category: CloudUpload
Type: Bug Report
1