function htmlEncode(value) { //create a in-memory div, set it's inner text(which jQuery automatically encodes) //then grab the encoded contents back out. The div never exists on the page. return $('
').text(value).html(); } function installUploader(uploaderId) { $('#fileUploaderButton_' + uploaderId).each(function () { $('#fileUploaderButton_' + uploaderId).fileupload({ dropZone: $(this), dataType: 'json', done: function (e, data) { $.each(data.result.files, function (index, file) { if (!file.error) { hiddenValueField = $('#fileUploaderHiddenField_' + uploaderId); hiddenValueField.val(hiddenValueField.val() + "," + file.guid); addToUploadList(uploaderId, file.guid, file.name, file.mimeIcon); } else { showFileUploadError(file); } }); }, progressall: function (e, data) { var progress = parseInt(data.loaded / data.total * 100, 10); $('#fileUploaderProgressbar_' + uploaderId).show(); if (progress == 100) { $('#fileUploaderProgressbar_' + uploaderId).children().css('width', 100 + "%"); $('#fileUploaderProgressbar_' + uploaderId).hide(); } else { $('#fileUploaderProgressbar_' + uploaderId).children().css('width', progress + "%"); } } }).prop('disabled', !$.support.fileInput).parent().addClass($.support.fileInput ? undefined : 'disabled'); }); } function addToUploadList(uploaderId, guid, name, icon) { $('#fileUploaderList_' + uploaderId).fadeIn('slow'); $('#fileUploaderListUl_' + uploaderId).append('