![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magefan/module-blog/Block/Adminhtml/Post/Helper/Form/ |
<?php /** * Copyright © Magefan ([email protected]). All rights reserved. * Please visit Magefan.com for license details (https://magefan.com/end-user-license-agreement). * * Glory to Ukraine! Glory to the heroes! */ /** * Blog post gallery */ namespace Magefan\Blog\Block\Adminhtml\Post\Helper\Form; use Magento\Framework\Registry; class Gallery extends \Magento\Framework\View\Element\AbstractBlock { /** * Gallery field name suffix * * @var string */ protected $fieldNameSuffix = 'post'; /** * Gallery html id * * @var string */ protected $htmlId = 'media_gallery'; /** * Gallery name * * @var string */ protected $name = 'media_gallery'; /** * Html id for data scope * * @var string */ protected $image = 'image'; /** * @var string */ protected $formName = 'blog_post_form'; /** * @var \Magento\Framework\Data\Form */ protected $form; /** * @var Registry */ protected $registry; /** * @param \Magento\Framework\View\Element\Context $context * @param Registry $registry * @param \Magento\Framework\Data\Form $form * @param array $data */ public function __construct( \Magento\Framework\View\Element\Context $context, Registry $registry, \Magento\Framework\Data\Form $form, $data = [] ) { $this->registry = $registry; $this->form = $form; parent::__construct($context, $data); } /** * @return string */ public function getElementHtml() { return $this->getContentHtml(); } /** * Get product images * * @return array|null */ public function getImages() { $result = []; $gallery = $this->registry->registry('current_model')->getGalleryImages(); if (count($gallery)) { $result['images'] = []; $position = 1; foreach ($gallery as $image) { $result['images'][] = [ 'value_id' => $image->getFile(), 'file' => $image->getFile(), 'label' => basename($image->getFile()), 'position' => $position, 'url' => $image->getUrl(), ]; $position++; } } return $result; } /** * Prepares content block * * @return string */ public function getContentHtml() { $content = $this->getChildBlock('content'); if (!$content) { $content = $this->getLayout()->createBlock( \Magefan\Blog\Block\Adminhtml\Post\Helper\Form\Gallery\Content::class, '', [ 'config' => [ 'parentComponent' => 'blog_post_form.blog_post_form.block_gallery.block_gallery' ] ] ); } $content ->setId($this->getHtmlId() . '_content') ->setElement($this) ->setFormName($this->formName); $galleryJs = $content->getJsObjectName(); $content->getUploader()->getConfig()->setMegiaGallery($galleryJs); return $content->toHtml(); } /** * @return string */ protected function getHtmlId() { return $this->htmlId; } /** * @return string */ public function getName() { return $this->name; } /** * @return string */ public function getFieldNameSuffix() { return $this->fieldNameSuffix; } /** * @return string */ public function getDataScopeHtmlId() { return $this->image; } /** * @return string */ public function toHtml() { return $this->getElementHtml(); } }