/** * Build product based on user request * * @param RequestInterface $request * @return \Magento\Catalog\Model\Product */ public function build(RequestInterface $request) { $productId = (int) $request->getParam('id'); /** @var $product \Magento\Catalog\Model\Product */ $product = $this->productFactory->create(); $product->setStoreId($request->getParam('store', 0)); $typeId = $request->getParam('type'); if (!$productId && $typeId) { $product->setTypeId($typeId); } $product->setData('_edit_mode', true); if ($productId) { try { $product->load($productId); } catch (\Exception $e) { $product->setTypeId(\Magento\Catalog\Model\Product\Type::DEFAULT_TYPE); $this->logger->critical($e); } } $setId = (int) $request->getParam('set'); if ($setId) { $product->setAttributeSetId($setId); } $this->registry->register('product', $product); $this->registry->register('current_product', $product); $this->wysiwygConfig->setStoreId($request->getParam('store')); return $product; }
/** * Prepare form before rendering HTML * * @return $this * @SuppressWarnings(PHPMD.NPathComplexity) * @SuppressWarnings(PHPMD.ExcessiveMethodLength) */ protected function _prepareForm() { $model = $this->getModel(); $identity = $this->_scopeConfig->getValue(\Magento\Newsletter\Model\Subscriber::XML_PATH_UNSUBSCRIBE_EMAIL_IDENTITY, \Magento\Store\Model\ScopeInterface::SCOPE_STORE); $identityName = $this->_scopeConfig->getValue('trans_email/ident_' . $identity . '/name', \Magento\Store\Model\ScopeInterface::SCOPE_STORE); $identityEmail = $this->_scopeConfig->getValue('trans_email/ident_' . $identity . '/email', \Magento\Store\Model\ScopeInterface::SCOPE_STORE); /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(['data' => ['id' => 'edit_form', 'action' => $this->getData('action'), 'method' => 'post']]); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Template Information'), 'class' => 'fieldset-wide']); if ($model->getId()) { $fieldset->addField('id', 'hidden', ['name' => 'id', 'value' => $model->getId()]); } $fieldset->addField('code', 'text', ['name' => 'code', 'label' => __('Template Name'), 'title' => __('Template Name'), 'required' => true, 'value' => $model->getTemplateCode()]); $fieldset->addField('subject', 'text', ['name' => 'subject', 'label' => __('Template Subject'), 'title' => __('Template Subject'), 'required' => true, 'value' => $model->getTemplateSubject()]); $fieldset->addField('sender_name', 'text', ['name' => 'sender_name', 'label' => __('Sender Name'), 'title' => __('Sender Name'), 'required' => true, 'value' => $model->getId() !== null ? $model->getTemplateSenderName() : $identityName]); $fieldset->addField('sender_email', 'text', ['name' => 'sender_email', 'label' => __('Sender Email'), 'title' => __('Sender Email'), 'class' => 'validate-email', 'required' => true, 'value' => $model->getId() !== null ? $model->getTemplateSenderEmail() : $identityEmail]); $widgetFilters = ['is_email_compatible' => 1]; $wysiwygConfig = $this->_wysiwygConfig->getConfig(['widget_filters' => $widgetFilters]); if ($model->isPlain()) { $wysiwygConfig->setEnabled(false); } $fieldset->addField('text', 'editor', ['name' => 'text', 'label' => __('Template Content'), 'title' => __('Template Content'), 'required' => true, 'state' => 'html', 'style' => 'height:36em;', 'value' => $model->getTemplateText(), 'config' => $wysiwygConfig]); if (!$model->isPlain()) { $fieldset->addField('template_styles', 'textarea', ['name' => 'styles', 'label' => __('Template Styles'), 'container_id' => 'field_template_styles', 'value' => $model->getTemplateStyles()]); } $form->setAction($this->getUrl('*/*/save')); $form->setUseContainer(true); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form * * @return $this * @SuppressWarnings(PHPMD.ExcessiveMethodLength) */ protected function _prepareForm() { /* @var $model \Jk\Test\Model\BlogPosts */ $model = $this->_coreRegistry->registry('test'); $isElementDisabled = false; /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('page_'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Item Information')]); if ($model->getId()) { $fieldset->addField('test_id', 'hidden', ['name' => 'test_id']); } $fieldset->addField('title', 'text', ['name' => 'title', 'label' => __('Title'), 'title' => __('Title'), 'required' => true, 'disabled' => $isElementDisabled]); $wysiwygConfig = $this->_wysiwygConfig->getConfig(['tab_id' => $this->getTabId()]); $contentField = $fieldset->addField('content', 'editor', ['name' => 'content', 'style' => 'height:36em;', 'required' => true, 'disabled' => $isElementDisabled, 'config' => $wysiwygConfig]); // Setting custom renderer for content field to remove label column $renderer = $this->getLayout()->createBlock('Magento\\Backend\\Block\\Widget\\Form\\Renderer\\Fieldset\\Element')->setTemplate('Magento_Cms::page/edit/form/renderer/content.phtml'); $contentField->setRenderer($renderer); $dateFormat = $this->_localeDate->getDateFormat(\IntlDateFormatter::SHORT); $fieldset->addField('publish_date', 'date', ['name' => 'publish_date', 'label' => __('Publish Date'), 'date_format' => $dateFormat, 'disabled' => $isElementDisabled, 'class' => 'validate-date validate-date-range date-range-custom_theme-from']); $fieldset->addField('is_active', 'select', ['label' => __('Status'), 'title' => __('Status'), 'name' => 'is_active', 'required' => true, 'options' => $this->_status->getOptionArray(), 'disabled' => $isElementDisabled]); if (!$model->getId()) { $model->setData('is_active', $isElementDisabled ? '0' : '1'); } $form->setValues($model->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * Load Wysiwyg on demand and Prepare layout * * @return void */ protected function _prepareLayout() { parent::_prepareLayout(); if ($this->_wysiwygConfig->isEnabled()) { $this->getLayout()->getBlock('head')->setCanLoadTinyMce(true); } }
/** * Prepare form * * @return $this */ protected function _prepareForm() { $model = $this->_coreRegistry->registry('cms_block'); /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(['data' => ['id' => 'edit_form', 'action' => $this->getData('action'), 'method' => 'post']]); $form->setHtmlIdPrefix('block_'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('General Information'), 'class' => 'fieldset-wide']); if ($model->getBlockId()) { $fieldset->addField('block_id', 'hidden', ['name' => 'block_id']); } $fieldset->addField('title', 'text', ['name' => 'title', 'label' => __('Block Title'), 'title' => __('Block Title'), 'required' => true]); $fieldset->addField('identifier', 'text', ['name' => 'identifier', 'label' => __('Identifier'), 'title' => __('Identifier'), 'required' => true, 'class' => 'validate-xml-identifier']); /* Check is single store mode */ if (!$this->_storeManager->isSingleStoreMode()) { $field = $fieldset->addField('store_id', 'multiselect', ['name' => 'stores[]', 'label' => __('Store View'), 'title' => __('Store View'), 'required' => true, 'values' => $this->_systemStore->getStoreValuesForForm(false, true)]); $renderer = $this->getLayout()->createBlock('Magento\\Backend\\Block\\Store\\Switcher\\Form\\Renderer\\Fieldset\\Element'); $field->setRenderer($renderer); } else { $fieldset->addField('store_id', 'hidden', ['name' => 'stores[]', 'value' => $this->_storeManager->getStore(true)->getId()]); $model->setStoreId($this->_storeManager->getStore(true)->getId()); } $fieldset->addField('is_active', 'select', ['label' => __('Status'), 'title' => __('Status'), 'name' => 'is_active', 'required' => true, 'options' => ['1' => __('Enabled'), '0' => __('Disabled')]]); if (!$model->getId()) { $model->setData('is_active', '1'); } $fieldset->addField('content', 'editor', ['name' => 'content', 'label' => __('Content'), 'title' => __('Content'), 'style' => 'height:36em', 'required' => true, 'config' => $this->_wysiwygConfig->getConfig()]); $form->setValues($model->getData()); $form->setUseContainer(true); $this->setForm($form); return parent::_prepareForm(); }
/** * Load Wysiwyg on demand and prepare layout * * @return void */ protected function _prepareLayout() { parent::_prepareLayout(); if ($this->_catalogData->isModuleEnabled('Magento_Cms') && $this->_wysiwygConfig->isEnabled()) { $this->getLayout()->getBlock('head')->setCanLoadTinyMce(true); } }
/** * Prepare form * * @return $this */ protected function _prepareForm() { /** @var $model \Magento\Cms\Model\Page */ $model = $this->_coreRegistry->registry('cms_page'); /* * Checking if user have permissions to save information */ if ($this->_isAllowedAction('Magento_Cms::save')) { $isElementDisabled = false; } else { $isElementDisabled = true; } /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('page_'); $fieldset = $form->addFieldset('content_fieldset', ['legend' => __('Content'), 'class' => 'fieldset-wide']); $wysiwygConfig = $this->_wysiwygConfig->getConfig(['tab_id' => $this->getTabId()]); $fieldset->addField('content_heading', 'text', ['name' => 'content_heading', 'label' => __('Content Heading'), 'title' => __('Content Heading'), 'disabled' => $isElementDisabled]); $contentField = $fieldset->addField('content', 'editor', ['name' => 'content', 'style' => 'height:36em;', 'required' => true, 'disabled' => $isElementDisabled, 'config' => $wysiwygConfig]); // Setting custom renderer for content field to remove label column $renderer = $this->getLayout()->createBlock('Magento\\Backend\\Block\\Widget\\Form\\Renderer\\Fieldset\\Element')->setTemplate('Magento_Cms::page/edit/form/renderer/content.phtml'); $contentField->setRenderer($renderer); $this->_eventManager->dispatch('adminhtml_cms_page_edit_tab_content_prepare_form', ['form' => $form]); $form->setValues($model->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form * * @return $this */ protected function _prepareForm() { /** @var $model \OsmanSorkar\Blog\Model\Category */ $model = $this->_coreRegistry->registry('blog_category'); /* * Checking if user have permissions to save information */ if ($this->_isAllowedAction('OsmanSorkar_Blog::category_save')) { $isElementDisabled = false; } else { $isElementDisabled = true; } /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('category_'); //$form->addType("post_photo",""); $fieldset = $form->addFieldset('content_fieldset', ['legend' => __('Content'), 'class' => 'fieldset-wide']); if ($model->getId()) { $fieldset->addField('cat_id', 'hidden', ['name' => 'cat_id']); } $wysiwygConfig = $this->_wysiwygConfig->getConfig(['tab_id' => $this->getTabId()]); $fieldset->addField('name', 'text', ['name' => 'name', 'label' => __('Category Name'), 'title' => __('Category Name'), 'disabled' => $isElementDisabled]); $fieldset->addField('url_key', 'text', ['name' => 'url_key', 'label' => __('Category Url'), 'title' => __('Category Url'), 'disabled' => $isElementDisabled]); $this->_eventManager->dispatch('adminhtml_blog_category_edit_tab_content_prepare_form', ['form' => $form]); $form->setValues($model->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form * * @return $this */ protected function _prepareForm() { /** @var \Mageplaza\Blog\Model\Topic $topic */ $topic = $this->_coreRegistry->registry('mageplaza_blog_topic'); $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('topic_'); $form->setFieldNameSuffix('topic'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Topic Information'), 'class' => 'fieldset-wide']); if ($topic->getId()) { $fieldset->addField('topic_id', 'hidden', ['name' => 'topic_id']); } $fieldset->addField('name', 'text', ['name' => 'name', 'label' => __('Name'), 'title' => __('Name'), 'required' => true]); $fieldset->addField('description', 'editor', ['name' => 'description', 'label' => __('Description'), 'title' => __('Description'), 'config' => $this->wysiwygConfig->getConfig()]); $fieldset->addField('enabled', 'select', ['name' => 'enabled', 'label' => __('Enabled'), 'title' => __('Enabled'), 'values' => $this->booleanOptions->toOptionArray()]); $fieldset->addField('url_key', 'text', ['name' => 'url_key', 'label' => __('URL Key'), 'title' => __('URL Key')]); $fieldset->addField('meta_title', 'text', ['name' => 'meta_title', 'label' => __('Meta Title'), 'title' => __('Meta Title')]); $fieldset->addField('meta_description', 'textarea', ['name' => 'meta_description', 'label' => __('Meta Description'), 'title' => __('Meta Description')]); $fieldset->addField('meta_keywords', 'textarea', ['name' => 'meta_keywords', 'label' => __('Meta Keywords'), 'title' => __('Meta Keywords')]); $fieldset->addField('meta_robots', 'select', ['name' => 'meta_robots', 'label' => __('Meta Robots'), 'title' => __('Meta Robots'), 'values' => array_merge(['' => ''], $this->metaRobotsOptions->toOptionArray())]); $topicData = $this->_session->getData('mageplaza_blog_topic_data', true); if ($topicData) { $topic->addData($topicData); } else { if (!$topic->getId()) { $topic->addData($topic->getDefaultValues()); } } $form->addValues($topic->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form fields * * @return \Magento\Backend\Block\Widget\Form */ protected function _prepareForm() { $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('manufacturer_'); $form->setFieldNameSuffix('manufacturer'); $model = $this->_coreRegistry->registry('manufacturer_manufacturer'); $om = \Magento\Framework\App\ObjectManager::getInstance(); $reader = $om->get('Magento\\Eav\\Model\\Config')->getAttribute('catalog_product', 'manufacturer'); $attributeOptions = $reader->getSource()->getAllOptions(true, true); $default = array('value' => '', 'label' => 'Choose Brand'); $i = 0; $manufacturer[$i] = $default; foreach ($attributeOptions as $key => $value) { $i++; if ($key != 0) { $manufacturer[$i] = $value; //$name[$i] = $value['label']; } } $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('General')]); if ($model->getId()) { $fieldset->addField('id', 'hidden', ['name' => 'id']); } $fieldset->addField('mfc_id', 'select', ['name' => 'mfc_id', 'label' => __('Manufacturer'), 'required' => true, 'values' => $manufacturer]); $fieldset->addField('status', 'select', ['name' => 'status', 'label' => __('Status'), 'options' => $this->_manufacturerStatus->toOptionArray()]); $fieldset->addField('position', 'textarea', ['name' => 'position', 'label' => __('Position'), 'required' => true, 'style' => 'height: 15em; width: 30em;']); $fieldset->addField('image_path', 'image', array('name' => 'image_path', 'label' => __('Image'), 'title' => __('Image'))); $wysiwygConfig = $this->_wysiwygConfig->getConfig(); $fieldset->addField('description', 'editor', ['name' => 'description', 'label' => __('Description'), 'required' => true, 'config' => $wysiwygConfig]); $data = $model->getData(); $form->setValues($data); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare wysiwyg element HTML * * @param AbstractElement $element Form Element * @return AbstractElement */ public function prepareElementHtml(AbstractElement $element) { /* @var $fieldset \Magento\Framework\Data\Form\Element\Fieldset */ $fieldset = $element->getForm()->getElement($this->getFieldsetId()); $widgetValues = $this->getLayout()->getBlock('easytabs.tab.options')->getWidgetValues(); $fieldset->addField('widget_content', 'editor', ['name' => 'parameters[widget_content]', 'label' => __('Content'), 'title' => __('Content'), 'style' => 'height:36em', 'required' => true, 'config' => $this->wysiwygConfig->getConfig(), 'value' => $widgetValues['widget_content']]); return $element; }
public function __construct(\Magento\Framework\Data\Form\Element\Factory $factoryElement, \Magento\Framework\Data\Form\Element\CollectionFactory $factoryCollection, Config $wysiwygConfig, Escaper $escaper, $data = []) { parent::__construct($factoryElement, $factoryCollection, $escaper, $data); $this->setType('textarea'); $this->setExtType('textarea'); $config = $wysiwygConfig->getConfig(); $config->setEncodeDirectives(false); $config->setNoDisplay(true); $config->setFilesBrowserWindowWidth(100); $this->setConfig($config); }
/** * Tests that config doesn't process incoming already prepared data * * @dataProvider getConfigNoProcessingDataProvider */ public function testGetConfigNoProcessing($original) { $config = $this->_model->getConfig($original); $actual = $config->getData(); foreach (array_keys($actual) as $key) { if (!isset($original[$key])) { unset($actual[$key]); } } $this->assertEquals($original, $actual); }
/** * Prepare form for newsletter queue editing. * Form can be run from newsletter template grid by option "Queue newsletter" * or from newsletter queue grid by edit option. * * @return $this * @SuppressWarnings(PHPMD.CyclomaticComplexity) * @SuppressWarnings(PHPMD.NPathComplexity) * @SuppressWarnings(PHPMD.ExcessiveMethodLength) */ protected function _prepareForm() { /* @var $queue \Magento\Newsletter\Model\Queue */ $queue = $this->getQueue(); /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Queue Information'), 'class' => 'fieldset-wide']); $dateFormat = $this->_localeDate->getDateFormat(\IntlDateFormatter::MEDIUM); $timeFormat = $this->_localeDate->getTimeFormat(\IntlDateFormatter::MEDIUM); if ($queue->getQueueStatus() == \Magento\Newsletter\Model\Queue::STATUS_NEVER) { $fieldset->addField('date', 'date', ['name' => 'start_at', 'date_format' => $dateFormat, 'time_format' => $timeFormat, 'label' => __('Queue Date Start')]); if (!$this->_storeManager->hasSingleStore()) { $fieldset->addField('stores', 'multiselect', ['name' => 'stores[]', 'label' => __('Subscribers From'), 'values' => $this->_systemStore->getStoreValuesForForm(), 'value' => $queue->getStores()]); } else { $fieldset->addField('stores', 'hidden', ['name' => 'stores[]', 'value' => $this->_storeManager->getStore(true)->getId()]); } } else { $fieldset->addField('date', 'date', ['name' => 'start_at', 'disabled' => 'true', 'style' => 'width:38%;', 'date_format' => $dateFormat, 'time_format' => $timeFormat, 'label' => __('Queue Date Start')]); if (!$this->_storeManager->hasSingleStore()) { $fieldset->addField('stores', 'multiselect', ['name' => 'stores[]', 'label' => __('Subscribers From'), 'required' => true, 'values' => $this->_systemStore->getStoreValuesForForm(), 'value' => $queue->getStores()]); } else { $fieldset->addField('stores', 'hidden', ['name' => 'stores[]', 'value' => $this->_storeManager->getStore(true)->getId()]); } } if ($queue->getQueueStartAt()) { $form->getElement('date')->setValue($this->_localeDate->date(new \DateTime($queue->getQueueStartAt()))); } $fieldset->addField('subject', 'text', ['name' => 'subject', 'label' => __('Subject'), 'required' => true, 'value' => $queue->isNew() ? $queue->getTemplate()->getTemplateSubject() : $queue->getNewsletterSubject()]); $fieldset->addField('sender_name', 'text', ['name' => 'sender_name', 'label' => __('Sender Name'), 'title' => __('Sender Name'), 'required' => true, 'value' => $queue->isNew() ? $queue->getTemplate()->getTemplateSenderName() : $queue->getNewsletterSenderName()]); $fieldset->addField('sender_email', 'text', ['name' => 'sender_email', 'label' => __('Sender Email'), 'title' => __('Sender Email'), 'class' => 'validate-email', 'required' => true, 'value' => $queue->isNew() ? $queue->getTemplate()->getTemplateSenderEmail() : $queue->getNewsletterSenderEmail()]); $widgetFilters = ['is_email_compatible' => 1]; $wysiwygConfig = $this->_wysiwygConfig->getConfig(['widget_filters' => $widgetFilters]); if ($queue->isNew()) { $fieldset->addField('text', 'editor', ['name' => 'text', 'label' => __('Message'), 'state' => 'html', 'required' => true, 'value' => $queue->getTemplate()->getTemplateText(), 'style' => 'height: 600px;', 'config' => $wysiwygConfig]); $fieldset->addField('styles', 'textarea', ['name' => 'styles', 'label' => __('Newsletter Styles'), 'container_id' => 'field_newsletter_styles', 'value' => $queue->getTemplate()->getTemplateStyles()]); } elseif (\Magento\Newsletter\Model\Queue::STATUS_NEVER != $queue->getQueueStatus()) { $fieldset->addField('text', 'textarea', ['name' => 'text', 'label' => __('Message'), 'value' => $queue->getNewsletterText()]); $fieldset->addField('styles', 'textarea', ['name' => 'styles', 'label' => __('Newsletter Styles'), 'value' => $queue->getNewsletterStyles()]); $form->getElement('text')->setDisabled('true')->setRequired(false); $form->getElement('styles')->setDisabled('true')->setRequired(false); $form->getElement('subject')->setDisabled('true')->setRequired(false); $form->getElement('sender_name')->setDisabled('true')->setRequired(false); $form->getElement('sender_email')->setDisabled('true')->setRequired(false); $form->getElement('stores')->setDisabled('true'); } else { $fieldset->addField('text', 'editor', ['name' => 'text', 'label' => __('Message'), 'state' => 'html', 'required' => true, 'value' => $queue->getNewsletterText(), 'style' => 'height: 600px;', 'config' => $wysiwygConfig]); $fieldset->addField('styles', 'textarea', ['name' => 'styles', 'label' => __('Newsletter Styles'), 'value' => $queue->getNewsletterStyles(), 'style' => 'height: 300px;']); } $this->setForm($form); return $this; }
/** * Prepare form for render * * @return void */ protected function _prepareLayout() { parent::_prepareLayout(); /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(['data' => ['id' => 'edit_form', 'action' => $this->getUrl('tbslider/*/save'), 'method' => 'post', 'enctype' => 'multipart/form-data']]); $slideritemsId = $this->_coreRegistry->registry(RegistryConstants::CURRENT_SLIDERITEM_ID); /** @var \Stepzerosolutions\Tbslider\Api\Data\SlideritemsInterface $slideritem */ if ($slideritemsId === null) { $slider = $this->slideritemsDataFactory->create(); } else { $slider = $this->_slideritemsRepository->getById($slideritemsId); } $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Slider item Information')]); $validateClass = 'required-entry validate-length maximum-length-100'; $slideritemTitle = $fieldset->addField('slideritem_title', 'text', ['name' => 'slideritem_title', 'label' => __('Title'), 'title' => __('Title'), 'class' => $validateClass, 'required' => true]); $fieldset->addField('slideritem_description', 'editor', ['name' => 'slideritem_description', 'label' => __('Content'), 'title' => __('Content'), 'style' => 'height:25em', 'config' => $this->_wysiwygConfig->getConfig()]); $fieldset->addField('slideritem_slider', 'select', ['name' => 'slideritem_slider', 'label' => __('Select Slider'), 'class' => 'required-entry', 'values' => $this->sliderSource->toOptionArray(), 'value' => isset($formValues['slideritem_slider']) ? $formValues['slideritem_slider'] : [], 'required' => true]); $slideritemTitle = $fieldset->addField('slider_url', 'text', ['name' => 'slider_url', 'label' => __('URL'), 'title' => __('URL'), 'class' => '']); $fieldset->addField('filename', 'image', ['title' => __('Slider Image'), 'label' => __('Slider Image'), 'name' => 'filename', 'note' => 'Allow image type: jpg, jpeg, gif, png', 'class' => 'required-entry', 'required' => true]); $fieldset->addField('filenamemd', 'image', ['title' => __('Slider Image (Medium Devices). Leave empty for auto generate'), 'label' => __('Slider Image (Medium Devices). Leave empty for auto generate'), 'name' => 'filenamemd', 'note' => 'Allow image type: jpg, jpeg, gif, png']); $fieldset->addField('filenamesm', 'image', ['title' => __('Slider Image (Small Devices). Leave empty for auto generate'), 'label' => __('Slider Image (Small Devices). Leave empty for auto generate'), 'name' => 'filenamesm', 'note' => 'Allow image type: jpg, jpeg, gif, png']); $fieldset->addField('filenamexs', 'image', ['title' => __('Slider Image (Extra Small Devices). Leave empty for auto generate'), 'label' => __('Slider Image (Extra Small Devices). Leave empty for auto generate'), 'name' => 'filenamexs', 'note' => 'Allow image type: jpg, jpeg, gif, png']); $fieldset->addField('is_active', 'select', ['label' => __('Is Active'), 'title' => __('Is Active'), 'name' => 'is_active', 'required' => true, 'options' => ['1' => __('Enabled'), '0' => __('Disabled')]]); $slideritemTitle = $fieldset->addField('slider_sort', 'text', ['name' => 'slider_sort', 'label' => __('Sort Order'), 'title' => __('Sort Order'), 'class' => 'validate-length maximum-length-4', 'width' => '80px']); //var_dump($slider->getData()); if ($slider->getId() !== null) { // If edit add id $form->addField('id', 'hidden', ['name' => 'id', 'value' => $slider->getId()]); } if ($this->_backendSession->getslideritemsData()) { $form->addValues($this->_backendSession->getslideritemsData()); $this->_backendSession->setslideritemsData(null); } else { // TODO: need to figure out how the DATA can work with forms $tmp = $slider->getSliderImagePath(); $filename = !empty($tmp) ? $this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA) . $slider->getSliderImagePath() : null; $tmp = $slider->getSliderImageMdPath(); $filenamemd = !empty($tmp) ? $this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA) . $slider->getSliderImageMdPath() : null; $tmp = $slider->getSliderImageSmPath(); $filenamesm = !empty($tmp) ? $this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA) . $slider->getSliderImageSmPath() : null; $tmp = $slider->getSliderImageXsPath(); $filenamexs = !empty($tmp) ? $this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA) . $slider->getSliderImageXsPath() : null; $form->addValues(['slideritem_id' => $slider->getId(), 'slideritem_title' => $slider->getSlideritemTitle(), 'slideritem_description' => $slider->getSlideritemDescription(), 'filename' => $filename, 'filenamemd' => $filenamemd, 'filenamesm' => $filenamesm, 'filenamexs' => $filenamexs, 'slideritem_slider' => $slider->getSlideritemSlider(), 'is_active' => $slider->getIsActive(), 'slider_sort' => $slider->getSliderSort()]); } $form->setUseContainer(true); $form->setId('edit_form'); $form->setAction($this->getUrl('tbslider/*/save')); $form->setMethod('post'); $this->setForm($form); }
/** * Prepare form. * Adding editor field to render * * @return Form */ protected function _prepareForm() { /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(['data' => ['id' => 'wysiwyg_edit_form', 'action' => $this->getData('action'), 'method' => 'post']]); $config['document_base_url'] = $this->getData('store_media_url'); $config['store_id'] = $this->getData('store_id'); $config['add_variables'] = false; $config['add_widgets'] = false; $config['add_directives'] = true; $config['use_container'] = true; $config['container_class'] = 'hor-scroll'; $form->addField($this->getData('editor_element_id'), 'editor', ['name' => 'content', 'style' => 'width:725px;height:460px', 'required' => true, 'force_load' => true, 'config' => $this->_wysiwygConfig->getConfig($config)]); $this->setForm($form); return parent::_prepareForm(); }
/** * Check whether wysiwyg enabled or not * * @return bool * @SuppressWarnings(PHPMD.BooleanGetMethodName) */ public function getIsWysiwygEnabled() { if ($this->_moduleManager->isEnabled('Magento_Cms')) { return (bool) ($this->_wysiwygConfig->isEnabled() && $this->getEntityAttribute()->getIsWysiwygEnabled()); } return false; }
/** * @return $this * * @throws \Magento\Framework\Exception\LocalizedException */ protected function _prepareForm() { $form = $this->formFactory->create(); $this->setForm($form); /** @var \Mirasvit\Blog\Model\Post $post */ $post = $this->registry->registry('current_model'); $fieldset = $form->addFieldset('edit_fieldset', ['class' => 'blog__post-fieldset']); if ($post->getId()) { $fieldset->addField('entity_id', 'hidden', ['name' => 'post[entity_id]', 'value' => $post->getId()]); } $fieldset->addField('name', 'text', ['label' => __('Title'), 'name' => 'post[name]', 'value' => $post->getName(), 'required' => true]); $editorConfig = $this->wysiwygConfig->getConfig(['tab_id' => $this->getTabId()]); $fieldset->addField('content', 'editor', ['name' => 'post[content]', 'value' => $post->getContent(), 'wysiwyg' => true, 'style' => 'height:35em', 'config' => $editorConfig]); $fieldset->addField('short_content', 'editor', ['label' => __('Excerpt'), 'name' => 'post[short_content]', 'value' => $post->getShortContent(), 'wysiwyg' => true, 'style' => 'height:5em', 'config' => $editorConfig]); return parent::_prepareForm(); }
/** * Prepare form * * @return $this */ protected function _prepareForm() { /** @var $model \Ves\Brand\Model\Brand */ $model = $this->_coreRegistry->registry('ves_brand'); /** * Checking if user have permission to save information */ if ($this->_isAllowedAction('Ves_Brand::brand_edit')) { $isElementDisabled = false; } else { $isElementDisabled = true; } /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('brand_'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Brand Information')]); if ($model->getId()) { $fieldset->addField('brand_id', 'hidden', ['name' => 'brand_id']); } $fieldset->addField('name', 'text', ['name' => 'name', 'label' => __('Brand Name'), 'title' => __('Brand Name'), 'required' => true, 'disabled' => $isElementDisabled]); $fieldset->addField('url_key', 'text', ['name' => 'url_key', 'label' => __('URL Key'), 'title' => __('URL Key'), 'note' => __('Empty to auto create url key'), 'disabled' => $isElementDisabled]); $fieldset->addField('group_id', 'select', ['label' => __('Brand Group'), 'title' => __('Brand Group'), 'name' => 'group_id', 'options' => $this->_viewHelper->getGroupList(), 'disabled' => $isElementDisabled]); $fieldset->addField('image', 'image', ['name' => 'image', 'label' => __('Image'), 'title' => __('Image'), 'disabled' => $isElementDisabled]); $fieldset->addField('thumbnail', 'image', ['name' => 'thumbnail', 'label' => __('Thumbnail'), 'title' => __('Thumbnail'), 'disabled' => $isElementDisabled]); $wysiwygDescriptionConfig = $this->_wysiwygConfig->getConfig(['tab_id' => $this->getTabId()]); $fieldset->addField('description', 'editor', ['name' => 'description', 'style' => 'height:200px;', 'label' => __('Description'), 'title' => __('Description'), 'disabled' => $isElementDisabled, 'config' => $wysiwygDescriptionConfig]); /** * Check is single store mode */ if (!$this->_storeManager->isSingleStoreMode()) { $field = $fieldset->addField('store_id', 'multiselect', ['name' => 'stores[]', 'label' => __('Store View'), 'title' => __('Store View'), 'required' => true, 'values' => $this->_systemStore->getStoreValuesForForm(false, true), 'disabled' => $isElementDisabled]); $renderer = $this->getLayout()->createBlock('Magento\\Backend\\Block\\Store\\Switcher\\Form\\Renderer\\Fieldset\\Element'); $field->setRenderer($renderer); } else { $fieldset->addField('store_id', 'hidden', ['name' => 'stores[]', 'value' => $this->_storeManager->getStore(true)->getId()]); $model->setStoreId($this->_storeManager->getStore(true)->getId()); } $fieldset->addField('position', 'text', ['name' => 'position', 'label' => __('Position'), 'title' => __('Position'), 'disabled' => $isElementDisabled]); $fieldset->addField('status', 'select', ['label' => __('Status'), 'title' => __('Page Status'), 'name' => 'status', 'options' => $model->getAvailableStatuses(), 'disabled' => $isElementDisabled]); $form->setValues($model->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * Preparing block layout * * @return $this */ protected function _prepareLayout() { // Load Wysiwyg on demand and Prepare layout $block = $this->getLayout()->getBlock('head'); if ($this->_wysiwygConfig->isEnabled() && $block) { $block->setCanLoadTinyMce(true); } $this->getToolbar()->addChild('back_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Back'), 'onclick' => "window.location.href = '" . $this->getUrl('*/*') . "'", 'class' => 'action-back')); $this->getToolbar()->addChild('reset_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Reset'), 'onclick' => 'window.location.href = window.location.href', 'class' => 'reset')); if (!$this->isTextType()) { $this->getToolbar()->addChild('to_plain_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Convert to Plain Text'), 'onclick' => 'templateControl.stripTags();', 'id' => 'convert_button', 'class' => 'convert')); $this->getToolbar()->addChild('to_html_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Return HTML Version'), 'onclick' => 'templateControl.unStripTags();', 'id' => 'convert_button_back', 'style' => 'display:none', 'class' => 'return')); } $this->getToolbar()->addChild('preview_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Preview Template'), 'onclick' => 'templateControl.preview();', 'class' => 'preview')); if ($this->getEditMode()) { $this->getToolbar()->addChild('delete_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Delete Template'), 'onclick' => 'templateControl.deleteTemplate();', 'class' => 'delete')); $this->getToolbar()->addChild('save_as_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Save As'), 'onclick' => 'templateControl.saveAs();', 'class' => 'save-as')); } $this->getToolbar()->addChild('save_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Save Template'), 'onclick' => 'templateControl.save();', 'class' => 'save primary')); return parent::_prepareLayout(); }
/** * Prepare form * * @return $this */ protected function _prepareForm() { $model = $this->_coreRegistry->registry('lists'); /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(['data' => ['id' => 'edit_form', 'action' => $this->getData('action'), 'method' => 'post']]); $form->setHtmlIdPrefix('block_'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('General Information'), 'class' => 'fieldset-wide']); if ($model->getId()) { $fieldset->addField('id', 'hidden', ['name' => 'id']); } $fieldset->addField('title', 'text', ['name' => 'title', 'label' => __('Block Title'), 'title' => __('Block Title'), 'required' => true]); $fieldset->addField('status', 'select', ['label' => __('Status'), 'title' => __('Status'), 'name' => 'status', 'required' => true, 'options' => $this->_status->getOptionArray()]); if (!$model->getId()) { $model->setData('status', '1'); } $fieldset->addField('short_summary', 'editor', ['name' => 'short_summary', 'label' => __('Summary'), 'title' => __('Summary'), 'style' => 'height:36em', 'required' => true, 'config' => $this->_wysiwygConfig->getConfig()]); $form->setValues($model->getData()); $form->setUseContainer(true); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form * * @return $this */ protected function _prepareForm() { /** @var \Sample\News\Model\Author $author */ $author = $this->_coreRegistry->registry('sample_news_author'); $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('author_'); $form->setFieldNameSuffix('author'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Author Information'), 'class' => 'fieldset-wide']); $fieldset->addType('image', 'Sample\\News\\Block\\Adminhtml\\Author\\Helper\\Image'); $fieldset->addType('file', 'Sample\\News\\Block\\Adminhtml\\Author\\Helper\\File'); if ($author->getId()) { $fieldset->addField('author_id', 'hidden', ['name' => 'author_id']); } $fieldset->addField('name', 'text', ['name' => 'name', 'label' => __('Name'), 'title' => __('Name'), 'required' => true]); $fieldset->addField('url_key', 'text', ['name' => 'url_key', 'label' => __('URL Key'), 'title' => __('URL Key')]); if ($this->_storeManager->isSingleStoreMode()) { $fieldset->addField('store_id', 'hidden', ['name' => 'stores[]', 'value' => $this->_storeManager->getStore(true)->getId()]); $author->setStoreId($this->_storeManager->getStore(true)->getId()); } $fieldset->addField('is_active', 'select', ['label' => __('Is Active'), 'title' => __('Is Active'), 'name' => 'is_active', 'required' => true, 'options' => $author->getAvailableStatuses()]); $fieldset->addField('in_rss', 'select', ['label' => __('Show in RSS'), 'title' => __('Show in RSS'), 'name' => 'in_rss', 'required' => true, 'options' => $this->booleanOptions->toArray()]); $fieldset->addField('biography', 'editor', ['name' => 'biography', 'label' => __('Biography'), 'title' => __('Biography'), 'style' => 'height:36em', 'required' => true, 'config' => $this->wysiwygConfig->getConfig()]); $fieldset->addField('dob', 'date', ['name' => 'dob', 'label' => __('Date of birth'), 'title' => __('Date of birth'), 'image' => $this->getViewFileUrl('images/grid-cal.png'), 'date_format' => $this->_localeDate->getDateFormat(\IntlDateFormatter::SHORT), 'class' => 'validate-date']); $fieldset->addField('type', 'select', ['label' => __('Type'), 'title' => __('Type'), 'name' => 'type', 'required' => true, 'options' => $this->typeOptions->getOptions()]); $fieldset->addField('awards', 'multiselect', ['name' => 'awards', 'label' => __('Awards'), 'title' => __('Awards'), 'values' => $this->awardOptions->toOptionArray()]); $fieldset->addField('avatar', 'image', ['name' => 'avatar', 'label' => __('Avatar'), 'title' => __('Avatar')]); $fieldset->addField('resume', 'file', ['name' => 'resume', 'label' => __('Resume'), 'title' => __('Resume')]); $fieldset->addField('country', 'select', ['name' => 'country', 'label' => __('Country'), 'title' => __('Country'), 'options' => $this->countryOptions->getOptions()]); $authorData = $this->_session->getData('sample_news_author_data', true); if ($authorData) { $author->addData($authorData); } else { if (!$author->getId()) { $author->addData($author->getDefaultValues()); } } $form->addValues($author->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form fields * * @return \Magento\Backend\Block\Widget\Form */ protected function _prepareForm() { $model = $this->_coreRegistry->registry('blog_blog'); /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('blog_'); $form->setFieldNameSuffix('blog'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('General')]); if ($model->getId()) { $fieldset->addField('id', 'hidden', ['name' => 'id']); } $fieldset->addField('title', 'text', ['name' => 'title', 'label' => __('Title'), 'required' => true]); $fieldset->addField('status', 'select', ['name' => 'status', 'label' => __('Status'), 'options' => $this->_blogStatus->toOptionArray()]); $fieldset->addField('summary', 'textarea', ['name' => 'summary', 'label' => __('Summary'), 'required' => true, 'style' => 'height: 15em; width: 30em;']); $fieldset->addField('banner', 'image', array('name' => 'banner', 'label' => __('Image'), 'title' => __('Image'))); $wysiwygConfig = $this->_wysiwygConfig->getConfig(); $fieldset->addField('description', 'editor', ['name' => 'description', 'label' => __('Description'), 'required' => true, 'config' => $wysiwygConfig]); $data = $model->getData(); $form->setValues($data); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare for the layout * * @return AbstractBlock */ protected function _prepareLayout() { // Load Wysiwyg on demand and Prepare layout if ($this->_wysiwygConfig->isEnabled()) { $this->getLayout()->getBlock('head')->setCanLoadTinyMce(true); } $this->getToolbar()->addChild('back_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Back'), 'onclick' => "window.location.href = '" . $this->getUrl($this->getTemplateId() ? '*/template' : '*/*') . "'", 'class' => 'action-back')); $this->getToolbar()->addChild('reset_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Reset'), 'class' => 'reset', 'onclick' => 'window.location = window.location')); $this->getToolbar()->addChild('preview_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Preview Template'), 'onclick' => 'queueControl.preview();', 'class' => 'preview')); $this->getToolbar()->addChild('save_button', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Save Newsletter'), 'class' => 'save primary', 'data_attribute' => array('mage-init' => array('button' => array('event' => 'save', 'target' => '#queue_edit_form'))))); $this->getToolbar()->addChild('save_and_resume', 'Magento\\Backend\\Block\\Widget\\Button', array('label' => __('Save and Resume'), 'class' => 'save', 'data_attribute' => array('mage-init' => array('button' => array('event' => 'save', 'target' => '#queue_edit_form', 'eventData' => array('action' => array('args' => array('_resume' => 1)))))))); return parent::_prepareLayout(); }
/** * Prepare form * * @return $this */ protected function _prepareForm() { /** @var $model \OsmanSorkar\Blog\Model\Post */ $model = $this->_coreRegistry->registry('blog_post'); /* * Checking if user have permissions to save information */ if ($this->_isAllowedAction('OsmanSorkar_Blog::save')) { $isElementDisabled = false; } else { $isElementDisabled = true; } /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('post_'); //$form->addType("post_photo",""); $fieldset = $form->addFieldset('content_fieldset', ['legend' => __('Content'), 'class' => 'fieldset-wide']); if ($model->getId()) { $fieldset->addField('post_id', 'hidden', ['name' => 'post_id']); } $wysiwygConfig = $this->_wysiwygConfig->getConfig(['tab_id' => $this->getTabId()]); $fieldset->addField('title', 'text', ['name' => 'title', 'label' => __('Post Title'), 'title' => __('Post Title'), 'disabled' => $isElementDisabled]); $fieldset->addField('url_key', 'text', ['name' => 'url_key', 'label' => __('Post Url'), 'title' => __('Post Url'), 'disabled' => $isElementDisabled]); $contentField = $fieldset->addField('content', 'editor', ['name' => 'content', 'style' => 'height:36em;', 'required' => true, 'disabled' => $isElementDisabled, 'config' => $wysiwygConfig]); $photo = $fieldset->addField('photo', '\\OsmanSorkar\\Blog\\Model\\Form\\Element\\Editor', ['name' => 'photo', 'label' => __('Post Photo'), 'title' => __('Post Photo'), 'disabled' => $isElementDisabled, 'config' => $wysiwygConfig]); $fieldset->addField('is_active', 'select', ['name' => 'is_active', 'label' => __('Post Show in Fontend'), 'title' => __('Post Show in Fontend'), 'options' => $model->getAvailableStatuses(), 'disabled' => $isElementDisabled]); /*// Setting custom renderer for content field to remove label column $renderer = $this->getLayout()->createBlock( 'Magento\Backend\Block\Widget\Form\Renderer\Fieldset\Element' )->setTemplate( 'OsmanSorkar_Blog::post/edit/form/renderer/photo.phtml' ); $photo->setRenderer($renderer);*/ // print_r(get_class($renderer)); $this->_eventManager->dispatch('adminhtml_blog_post_edit_tab_content_prepare_form', ['form' => $form]); $form->setValues($model->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form * * @return $this */ protected function _prepareForm() { /** @var \Gemtoo\Blog\Model\Article $article */ $article = $this->_coreRegistry->registry('gemtoo_blog_article'); $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('article'); $form->setFieldNameSuffix('article'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Article Information'), 'class' => 'fieldset-wide']); $fieldset->addType('image', 'Gemtoo\\Blog\\Block\\Adminhtml\\Article\\Helper\\Image'); $fieldset->addType('file', 'Gemtoo\\Blog\\Block\\Adminhtml\\Article\\Helper\\File'); if ($article->getId()) { $fieldset->addField('article_id', 'hidden', ['name' => 'article_id']); } $fieldset->addField('name', 'text', ['name' => 'name', 'label' => __('Name'), 'title' => __('Name'), 'required' => true]); $fieldset->addField('url_key', 'text', ['name' => 'url_key', 'label' => __('URL Key'), 'title' => __('URL Key')]); if ($this->_storeManager->isSingleStoreMode()) { $fieldset->addField('store_id', 'hidden', ['name' => 'stores[]', 'value' => $this->_storeManager->getStore(true)->getId()]); $article->setStoreId($this->_storeManager->getStore(true)->getId()); } $fieldset->addField('is_active', 'select', ['label' => __('Is Active'), 'title' => __('Is Active'), 'name' => 'is_active', 'required' => true, 'options' => $article->getAvailableStatuses()]); $fieldset->addField('in_rss', 'select', ['label' => __('Show in RSS'), 'title' => __('Show in RSS'), 'name' => 'in_rss', 'required' => true, 'options' => $this->booleanOptions->toArray()]); $fieldset->addField('content', 'editor', ['name' => 'content', 'label' => __('Content'), 'title' => __('Content'), 'style' => 'height:36em', 'required' => true, 'config' => $this->wysiwygConfig->getConfig()]); $fieldset->addField('dop', 'date', ['name' => 'dop', 'label' => __('Date of publication'), 'title' => __('Date of publication'), 'image' => $this->getViewFileUrl('images/grid-cal.png'), 'date_format' => $this->_localeDate->getDateFormat(\IntlDateFormatter::SHORT), 'class' => 'validate-date']); $fieldset->addField('image', 'image', ['name' => 'image', 'label' => __('Image'), 'title' => __('Image')]); $fieldset->addField('file', 'file', ['name' => 'file', 'label' => __('File'), 'title' => __('File')]); $articleData = $this->_session->getData('gemtoo_blog_article_data', true); if ($articleData) { $article->addData($articleData); } else { if (!$article->getId()) { $article->addData($article->getDefaultValues()); } } $form->addValues($article->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form * * @return $this */ protected function _prepareForm() { /** @var \Mageplaza\Blog\Model\Post $post */ $post = $this->_coreRegistry->registry('mageplaza_blog_post'); $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('post_'); $form->setFieldNameSuffix('post'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Post Information'), 'class' => 'fieldset-wide']); $fieldset->addType('image', 'Mageplaza\\Blog\\Block\\Adminhtml\\Post\\Helper\\Image'); if ($post->getId()) { $fieldset->addField('post_id', 'hidden', ['name' => 'post_id']); } $fieldset->addField('name', 'text', ['name' => 'name', 'label' => __('Name'), 'title' => __('Name'), 'required' => true, 'note' => __('Post name')]); $fieldset->addField('short_description', 'textarea', ['name' => 'short_description', 'label' => __('Short Description'), 'title' => __('Short Description'), 'note' => __('Short Description')]); $fieldset->addField('post_content', 'editor', ['name' => 'post_content', 'label' => __('Content'), 'title' => __('Content'), 'note' => __('Post Content'), 'config' => $this->wysiwygConfig->getConfig()]); $fieldset->addField('image', 'image', ['name' => 'image', 'label' => __('Image'), 'title' => __('Image'), 'note' => __('Featured image')]); $fieldset->addField('enabled', 'select', ['name' => 'enabled', 'label' => __('Enabled'), 'title' => __('Enabled'), 'values' => $this->booleanOptions->toOptionArray()]); $fieldset->addField('url_key', 'text', ['name' => 'url_key', 'label' => __('URL Key'), 'title' => __('URL Key')]); $fieldset->addField('in_rss', 'select', ['name' => 'in_rss', 'label' => __('In RSS'), 'title' => __('In RSS'), 'values' => $this->booleanOptions->toOptionArray()]); $fieldset->addField('allow_comment', 'select', ['name' => 'allow_comment', 'label' => __('Allow Comment'), 'title' => __('Allow Comment'), 'values' => $this->booleanOptions->toOptionArray()]); $fieldset->addField('meta_title', 'text', ['name' => 'meta_title', 'label' => __('Meta Title'), 'title' => __('Meta Title')]); $fieldset->addField('meta_description', 'textarea', ['name' => 'meta_description', 'label' => __('Meta Description'), 'title' => __('Meta Description')]); $fieldset->addField('meta_keywords', 'textarea', ['name' => 'meta_keywords', 'label' => __('Meta Keywords'), 'title' => __('Meta Keywords')]); $fieldset->addField('meta_robots', 'select', ['name' => 'meta_robots', 'label' => __('Meta Robots'), 'title' => __('Meta Robots'), 'values' => array_merge(['' => ''], $this->metaRobotsOptions->toOptionArray())]); $postData = $this->_session->getData('mageplaza_blog_post_data', true); if ($postData) { $post->addData($postData); } else { if (!$post->getId()) { $post->addData($post->getDefaultValues()); } } $form->addValues($post->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * Prepare form * * @return $this * @SuppressWarnings(PHPMD.ExcessiveMethodLength) */ protected function _prepareForm() { /* @var $model \SR\Weblog\Model\BlogPosts */ $model = $this->_coreRegistry->registry('lists'); $isElementDisabled = false; /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(); //$form->setHtmlIdPrefix('page_'); $fieldset = $form->addFieldset('base_fieldset', ['legend' => __('Information')]); if ($model->getId()) { $fieldset->addField('id', 'hidden', ['name' => 'id']); } $fieldset->addField('title', 'text', ['name' => 'title', 'label' => __('Title'), 'title' => __('Title'), 'required' => true, 'disabled' => $isElementDisabled, 'value' => 'abc']); if (!$model->getId()) { $model->setData('status', $isElementDisabled ? '0' : '1'); } $fieldset->addField('status', 'select', ['label' => __('Status'), 'title' => __('Status'), 'name' => 'status', 'required' => true, 'options' => $this->_status->getOptionArray(), 'disabled' => $isElementDisabled]); $fieldset->addField('short_summary', 'editor', ['name' => 'short_summary', 'label' => __('Summary'), 'title' => __('Summary'), 'style' => 'height:36em', 'required' => true, 'config' => $this->_wysiwygConfig->getConfig()]); $fieldset->addField('in_lists_grid', 'hidden', ['name' => 'in_lists_grid', 'id' => 'in_lists_gridz']); $fieldset->addField('in_lists_grid_old', 'hidden', ['name' => 'in_lists_grid_old']); $dateFormat = $this->_localeDate->getDateFormat(\IntlDateFormatter::SHORT); /* $fieldset->addField( 'created_at', 'date', [ 'name' => 'created_at', 'label' => __('Created Date'), 'date_format' => $dateFormat, 'disabled' => $isElementDisabled, 'class' => 'validate-date validate-date-range date-range-custom_theme-from' ] ); */ $form->setValues($model->getData()); $this->setForm($form); return parent::_prepareForm(); }
/** * @covers \Magento\Cms\Controller\Adminhtml\Wysiwyg\Directive::execute */ public function testExecuteException() { $exception = new \Exception('epic fail'); $placeholderPath = 'pub/static/adminhtml/Magento/backend/en_US/Magento_Cms/images/wysiwyg_skin_image.png'; $mimeType = 'image/png'; $imageBody = '0123456789abcdefghijklmnopqrstuvwxyz'; $this->prepareExecuteTest(); $this->imageAdapterMock->expects($this->at(0))->method('open')->with(self::IMAGE_PATH)->willThrowException($exception); $this->wysiwygConfigMock->expects($this->once())->method('getSkinImagePlaceholderPath')->willReturn($placeholderPath); $this->imageAdapterMock->expects($this->at(1))->method('open')->with($placeholderPath); $this->imageAdapterMock->expects($this->once())->method('getMimeType')->willReturn($mimeType); $this->responseMock->expects($this->once())->method('setHeader')->with('Content-Type', $mimeType)->willReturnSelf(); $this->imageAdapterMock->expects($this->once())->method('getImage')->willReturn($imageBody); $this->responseMock->expects($this->once())->method('setBody')->with($imageBody)->willReturnSelf(); $this->loggerMock->expects($this->once())->method('critical')->with($exception); $this->wysiwygDirective->execute(); }
/** * @covers \Magento\Cms\Model\Wysiwyg\Config::isHidden * @param string $status * @param boolean $expectedResult * * @dataProvider isHiddenDataProvider */ public function testIsHidden($status, $expectedResult) { $this->scopeConfigMock->expects($this->atLeastOnce())->method('getValue')->with('cms/wysiwyg/enabled', 'store')->willReturn($status); $this->assertEquals($expectedResult, $this->wysiwygConfig->isHidden()); }