diff --git a/tools/attach/handlers/page/__edit.php b/tools/attach/handlers/page/__edit.php index 5725a07c2..6acd05092 100644 --- a/tools/attach/handlers/page/__edit.php +++ b/tools/attach/handlers/page/__edit.php @@ -1,2 +1,11 @@ AddJavascriptFile('tools/attach/libs/fileuploader.js'); + +use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; +use YesWiki\Core\Service\AssetsManager; + +$this->services->get(AssetsManager::class)->AddJavascript( + "var fileUploaderConfig = {attach_config:{ext_images:" + .json_encode(explode("|", $this->services->get(ParameterBagInterface::class)->get("attach_config")["ext_images"])) + ."}};" +); +$this->services->get(AssetsManager::class)->AddJavascriptFile('tools/attach/libs/fileuploader.js'); diff --git a/tools/attach/libs/fileuploader.js b/tools/attach/libs/fileuploader.js index 8da7f19b4..e3d125a01 100755 --- a/tools/attach/libs/fileuploader.js +++ b/tools/attach/libs/fileuploader.js @@ -1416,7 +1416,7 @@ qq.extend(qq.UploadHandlerXhr.prototype, { UploadModal.find('.modal-title').append(fileuploaded).append(filesize); // If it's an image - if ((responseJSON.extension === 'jpg') || (responseJSON.extension === 'jpeg') || (responseJSON.extension === 'gif') || (responseJSON.extension === 'png')) { + if (typeof fileUploaderConfig !== "undefined" && fileUploaderConfig.attach_config.ext_images.indexOf(responseJSON.extension) > -1) { imageinput.show(); hiddenfilenameinput.val(responseJSON.simplefilename); UploadModal.find('.attach_alt').val('image ' + responseJSON.simplefilename + ' (' + filesize.text() + ')'); diff --git a/tools/bazar/fields/TextareaField.php b/tools/bazar/fields/TextareaField.php index 6d56e0b29..5741e7986 100644 --- a/tools/bazar/fields/TextareaField.php +++ b/tools/bazar/fields/TextareaField.php @@ -5,6 +5,7 @@ use DateTime; use DateTimeZone; use Psr\Container\ContainerInterface; +use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; use YesWiki\Core\Service\DbService; /** @@ -101,7 +102,7 @@ protected function renderInput($entry) ob_start(); include_once 'tools/aceditor/actions/actions_builder.php'; $output = ob_get_contents(); - ob_end_clean(); + ob_end_clean(); } } @@ -113,6 +114,7 @@ protected function renderInput($entry) 'value' => $this->getValue($entry), 'entryId' => $entry['id_fiche'] ?? null, 'tempTag' => $tempTag, + 'attachConfigExtImages' => explode("|", $this->getService(ParameterBagInterface::class)->get("attach_config")["ext_images"]) ]); } diff --git a/tools/bazar/templates/inputs/textarea.twig b/tools/bazar/templates/inputs/textarea.twig index 8a85ac46f..3d1f27121 100644 --- a/tools/bazar/templates/inputs/textarea.twig +++ b/tools/bazar/templates/inputs/textarea.twig @@ -29,6 +29,9 @@
{{ include('@attach/attach-file-uploader-button.twig', {fileUploaderAnchor:'#' ~ field.name ~ 'Container .aceditor-toolbar', fileUploaderSelector:'#' ~ field.name }) }}
+ {{ include_javascript('tools/attach/libs/fileuploader.js') }} {% endif %}