Modifications pour le document Upload
Modifié par Florent Charton le 2025/07/04 23:28
Depuis la version 3.1
modifié par Florent Charton
sur 2025/07/04 23:28
sur 2025/07/04 23:28
Commentaire de modification :
Install extension [org.xwiki.platform:xwiki-platform-ckeditor-ui/16.10.9]
À la version 1.1
modifié par superadmin
sur 2022/06/20 08:49
sur 2022/06/20 08:49
Commentaire de modification :
Install extension [org.xwiki.contrib:application-ckeditor-ui/1.63.1]
Résumé
-
Propriétés de la Page (1 modifications, 0 ajouts, 0 suppressions)
-
Objets (2 modifications, 0 ajouts, 0 suppressions)
Détails
- Propriétés de la Page
-
- Auteur du document
-
... ... @@ -1,1 +1,1 @@ 1 - xwiki:XWiki.fcharton1 +XWiki.superadmin
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -1,65 +1,23 @@ 1 -require(['jquery', 'imageSelector', 'l10n!imageSelector', 'resource'], 2 - function ($, imageSelector, translations, resource) { 3 - function init(element) { 4 - const uploadButton = element.find(".upload form input.button"); 5 - 6 - uploadButton.prop("disabled", true); 7 - 8 - element.on('change', function () { 9 - if ($(this).find("input[type='file']").prop('files').length > 0) { 10 - uploadButton.prop("disabled", false); 11 - } else { 12 - uploadButton.prop("disabled", true); 13 - } 14 - }); 15 - 16 - uploadButton.on('click', function (event) { 17 - event.preventDefault(); 18 - 19 - const buttonElement = $(this); 20 - 21 - const uploadedFile = element.find("input[type='file']").prop('files')[0]; 22 - 23 - const beforeUploadEvent = $.Event("xwiki:actions:beforeUpload"); 24 - $(document).trigger(beforeUploadEvent, { 25 - file: uploadedFile, 26 - documentReference: imageSelector.getDocumentReference(element) 27 - }); 28 - 29 - if (!beforeUploadEvent.isDefaultPrevented()) { 30 - element.addClass('loading'); 31 - imageSelector.createLoader(uploadedFile, { 32 - onSuccess: function (entityReference) { 33 - imageSelector.updateSelectedImageReferences([XWiki.Model.serialize(entityReference)], buttonElement); 34 - element.removeClass('loading'); 35 - new XWiki.widgets.Notification(translations.get('modal.fileUpload.success'), 'done'); 36 - }, 37 - onError: function () { 38 - new XWiki.widgets.Notification(translations.get('modal.fileUpload.fail'), 'error'); 39 - element.removeClass('loading'); 40 - }, 41 - onAbort: function () { 42 - new XWiki.widgets.Notification(translations.get('modal.fileUpload.abort'), 'error'); 43 - element.removeClass('loading'); 44 - } 45 - }, element); 46 - } 47 - }); 48 - } 49 - 50 - init($(document).find('.image-selector')); 51 - 52 - /* Make sure the input is emptied whenever we reload the image selection modal. */ 53 - $(document).on('shown.bs.modal', function () { 54 - let fileInput = $(document).find('.image-selector').find("input[type='file']"); 55 - if (fileInput.prop('files').length > 0) { 56 - fileInput.val(''); 57 - $(document).find('.image-selector').find(".upload form input.button").prop("disabled", true); 1 +require(['jquery', 'imageSelector', 'l10n!imageSelector', 'resource'], function($, imageSelector, translations, resource) { 2 + $("#upload form input.button").on('click', function(event) { 3 + event.preventDefault(); 4 + var imageSelectorElement = $('.image-selector'); 5 + imageSelectorElement.addClass('loading'); 6 + imageSelector.createLoader($("#fileUploadField").prop('files')[0], { 7 + onSuccess: function(entityReference) { 8 + imageSelector.updateSelectedImageReferences([XWiki.Model.serialize(entityReference)]); 9 + imageSelectorElement.removeClass('loading'); 10 + new XWiki.widgets.Notification(translations.get('modal.fileUpload.success'), 'done'); 11 + }, 12 + onError: function() { 13 + new XWiki.widgets.Notification(translations.get('modal.fileUpload.fail'), 'error'); 14 + imageSelectorElement.removeClass('loading'); 15 + }, 16 + onAbort: function() { 17 + new XWiki.widgets.Notification(translations.get('modal.fileUpload.abort'), 'error'); 18 + imageSelectorElement.removeClass('loading'); 58 58 } 59 59 }); 60 - 61 - $(document).on('xwiki:dom:updated', (event, data) => { 62 - data.elements.forEach(element => init($(element))); 63 - }); 64 64 }); 22 +}); 65 65
- XWiki.UIExtensionClass[0]
-
- Cached
-
... ... @@ -1,1 +1,0 @@ 1 -Non - Asynchronous rendering
-
... ... @@ -1,1 +1,0 @@ 1 -Non