OnInsert.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. /**
  3. *
  4. * Copyright © Magento, Inc. All rights reserved.
  5. * See COPYING.txt for license details.
  6. */
  7. namespace Magento\Cms\Controller\Adminhtml\Wysiwyg\Images;
  8. class OnInsert extends \Magento\Cms\Controller\Adminhtml\Wysiwyg\Images
  9. {
  10. /**
  11. * @var \Magento\Framework\Controller\Result\RawFactory
  12. */
  13. protected $resultRawFactory;
  14. /**
  15. * @param \Magento\Backend\App\Action\Context $context
  16. * @param \Magento\Framework\Registry $coreRegistry
  17. * @param \Magento\Framework\Controller\Result\RawFactory $resultRawFactory
  18. */
  19. public function __construct(
  20. \Magento\Backend\App\Action\Context $context,
  21. \Magento\Framework\Registry $coreRegistry,
  22. \Magento\Framework\Controller\Result\RawFactory $resultRawFactory
  23. ) {
  24. $this->resultRawFactory = $resultRawFactory;
  25. parent::__construct($context, $coreRegistry);
  26. }
  27. /**
  28. * Fire when select image
  29. *
  30. * @return \Magento\Framework\Controller\ResultInterface
  31. */
  32. public function execute()
  33. {
  34. $imagesHelper = $this->_objectManager->get(\Magento\Cms\Helper\Wysiwyg\Images::class);
  35. $request = $this->getRequest();
  36. $storeId = $request->getParam('store');
  37. $filename = $request->getParam('filename');
  38. $filename = $imagesHelper->idDecode($filename);
  39. $asIs = $request->getParam('as_is');
  40. $forceStaticPath = $request->getParam('force_static_path');
  41. $this->_objectManager->get(\Magento\Catalog\Helper\Data::class)->setStoreId($storeId);
  42. $imagesHelper->setStoreId($storeId);
  43. if ($forceStaticPath) {
  44. $image = parse_url($imagesHelper->getCurrentUrl() . $filename, PHP_URL_PATH);
  45. } else {
  46. $image = $imagesHelper->getImageHtmlDeclaration($filename, $asIs);
  47. }
  48. /** @var \Magento\Framework\Controller\Result\Raw $resultRaw */
  49. $resultRaw = $this->resultRawFactory->create();
  50. return $resultRaw->setContents($image);
  51. }
  52. }