Example #1
0
 /**
  * Renders grid column
  *
  * @param   \Magento\Framework\DataObject $row
  * @return  string
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     $readDetailsHtml = $row->getUrl() ? '<a class="action-details" target="_blank" href="' . $row->getUrl() . '">' . __('Read Details') . '</a>' : '';
     $markAsReadHtml = !$row->getIsRead() ? '<a class="action-mark" href="' . $this->getUrl('*/*/markAsRead/', ['_current' => true, 'id' => $row->getId()]) . '">' . __('Mark as Read') . '</a>' : '';
     $encodedUrl = $this->_urlHelper->getEncodedUrl();
     return sprintf('%s%s<a class="action-delete" href="%s" onClick="deleteConfirm(\'%s\', this.href); return false;">%s</a>', $readDetailsHtml, $markAsReadHtml, $this->getUrl('*/*/remove/', ['_current' => true, 'id' => $row->getId(), \Magento\Framework\App\ActionInterface::PARAM_NAME_URL_ENCODED => $encodedUrl]), __('Are you sure?'), __('Remove'));
 }
Example #2
0
 /**
  * Renderer for "Action" column in Newsletter templates grid
  *
  * @param \Magento\Framework\DataObject $row
  * @return string
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     if ($row->isValidForSend()) {
         $actions[] = ['url' => $this->getUrl('*/queue/edit', ['template_id' => $row->getId()]), 'caption' => __('Queue Newsletter')];
     }
     $actions[] = ['url' => $this->getUrl('*/*/preview', ['id' => $row->getId()]), 'popup' => true, 'caption' => __('Preview')];
     $this->getColumn()->setActions($actions);
     return parent::render($row);
 }
Example #3
0
 /**
  * @param \Magento\Framework\DataObject $row
  * @return string
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     $this->_actions = [];
     if ($this->_salesReorder->canReorder($row->getId())) {
         $reorderAction = ['@' => ['href' => $this->getUrl('sales/order_create/reorder', ['order_id' => $row->getId()])], '#' => __('Reorder')];
         $this->addToActions($reorderAction);
     }
     $this->_eventManager->dispatch('adminhtml_customer_orders_add_action_renderer', ['renderer' => $this, 'row' => $row]);
     return $this->_actionsToHtml();
 }
Example #4
0
 /**
  * Renders grid column
  *
  * @param   \Magento\Framework\DataObject $row
  * @return  string
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     $encodedUrl = $this->_urlHelper->getEncodedUrl();
     if (!$row->getIsRead()) {
         return sprintf('<a href="%s">%s</a> | <a href="%s" onClick="deleteConfirm(\'%s\',this.href); return false;">%s</a>', $this->getUrl('*/*/markAsRead/', ['_current' => true, 'id' => $row->getId()]), __('Mark as Read'), $this->getUrl('*/*/remove/', ['_current' => true, 'id' => $row->getId(), \Magento\Framework\App\ActionInterface::PARAM_NAME_URL_ENCODED => $encodedUrl]), __('Are you sure?'), __('Remove'));
     } else {
         return sprintf('<a href="%s" onClick="deleteConfirm(\'%s\',this.href); return false;">%s</a>', $this->getUrl('*/*/remove/', ['_current' => true, 'id' => $row->getId(), \Magento\Framework\App\ActionInterface::PARAM_NAME_URL_ENCODED => $encodedUrl]), __('Are you sure?'), __('Remove'));
     }
     return parent::render($row);
 }
Example #5
0
 public function render(DataObject $row)
 {
     $storeViewId = $this->getRequest()->getParam('store');
     $banner = $this->_bannerFactory->create()->setStoreViewId($storeViewId)->load($row->getId());
     $srcImage = $this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA) . $banner->getImage();
     return '<image width="150" height="50" src ="' . $srcImage . '" alt="' . $banner->getImage() . '" >';
 }
Example #6
0
 /**
  * Set new increment id
  *
  * @param \Magento\Framework\DataObject $object
  * @return $this
  */
 public function beforeSave($object)
 {
     if (!$object->getId()) {
         $this->getAttribute()->getEntity()->setNewIncrementId($object);
     }
     return $this;
 }
Example #7
0
 /**
  * Get payflow transaction id from parent transaction
  *
  * @param \Magento\Framework\DataObject $payment
  * @return string
  */
 protected function _getParentTransactionId(\Magento\Framework\DataObject $payment)
 {
     if ($payment->getParentTransactionId()) {
         return $this->transactionRepository->getByTransactionId($payment->getParentTransactionId(), $payment->getId(), $payment->getOrder()->getId())->getAdditionalInformation(self::TRANSPORT_PAYFLOW_TXN_ID);
     }
     return $payment->getParentTransactionId();
 }
Example #8
0
 /**
  * Render grid column
  *
  * @param \Magento\Framework\DataObject $row
  * @return string
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     $actions = [];
     $actions[] = ['url' => $this->getUrl('adminhtml/*/preview', ['id' => $row->getId()]), 'popup' => true, 'caption' => __('Preview')];
     $this->getColumn()->setActions($actions);
     return parent::render($row);
 }
Example #9
0
 /**
  * Renders grid column
  *
  * @param   \Magento\Framework\DataObject $row
  * @return  string
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     if ($row->getSubscriberStatus() == \Magento\Newsletter\Model\Subscriber::STATUS_SUBSCRIBED) {
         return '<input type="checkbox" name="subscriber[]" value="' . $row->getId() . '" class="subscriberCheckbox"/>';
     } else {
         return '';
     }
 }
Example #10
0
 /**
  * Renders column
  *
  * @param \Magento\Framework\DataObject $row
  * @return string
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     $actions = [];
     if ($row->getQueueStatus() == \Magento\Newsletter\Model\Queue::STATUS_NEVER) {
         if (!$row->getQueueStartAt() && $row->getSubscribersTotal()) {
             $actions[] = ['url' => $this->getUrl('*/*/start', ['id' => $row->getId()]), 'caption' => __('Start')];
         }
     } elseif ($row->getQueueStatus() == \Magento\Newsletter\Model\Queue::STATUS_SENDING) {
         $actions[] = ['url' => $this->getUrl('*/*/pause', ['id' => $row->getId()]), 'caption' => __('Pause')];
         $actions[] = ['url' => $this->getUrl('*/*/cancel', ['id' => $row->getId()]), 'confirm' => __('Do you really want to cancel the queue?'), 'caption' => __('Cancel')];
     } elseif ($row->getQueueStatus() == \Magento\Newsletter\Model\Queue::STATUS_PAUSE) {
         $actions[] = ['url' => $this->getUrl('*/*/resume', ['id' => $row->getId()]), 'caption' => __('Resume')];
     }
     $actions[] = ['url' => $this->getUrl('*/*/preview', ['id' => $row->getId()]), 'caption' => __('Preview'), 'popup' => true];
     $this->getColumn()->setActions($actions);
     return parent::render($row);
 }
 public function render(\Magento\Framework\DataObject $row)
 {
     $ticket = $this->ticketFactory->create()->load($row->getId());
     if ($ticket && $ticket->getId()) {
         return $ticket->getSeverityAsLabel();
     }
     return '';
 }
Example #12
0
 /**
  * Before save
  *
  * @param \Magento\Framework\DataObject $object
  * @return $this
  */
 public function beforeSave($object)
 {
     if ($object->getId()) {
         return $this;
     }
     if (!$object->hasData('website_id')) {
         $object->setData('website_id', $this->_storeManager->getStore()->getWebsiteId());
     }
     return $this;
 }
Example #13
0
 /**
  * Before save
  *
  * @param \Magento\Framework\DataObject $object
  * @return $this
  */
 public function beforeSave($object)
 {
     if ($object->getId()) {
         return $this;
     }
     if (!$object->hasStoreId()) {
         $object->setStoreId($this->_storeManager->getStore()->getId());
     }
     if (!$object->hasData('created_in')) {
         $object->setData('created_in', $this->_storeManager->getStore($object->getStoreId())->getName());
     }
     return $this;
 }
Example #14
0
 /**
  * Renders grid column
  *
  * @param   \Magento\Framework\DataObject $row
  * @return  string
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     $values = $this->_getValues();
     $value = $row->getData($this->getColumn()->getIndex());
     if (is_array($values)) {
         $checked = in_array($value, $values) ? ' checked="checked"' : '';
     } else {
         $checked = $value === $this->getColumn()->getValue() ? ' checked="checked"' : '';
     }
     $html = '<input type="radio" name="' . $this->getColumn()->getHtmlName() . '" ';
     $html .= 'value="' . $row->getId() . '" class="radio"' . $checked . '/>';
     return $html;
 }
Example #15
0
 /**
  * Set qty and custom price for quote item
  *
  * @param Item $item
  * @param \Magento\Framework\DataObject $request
  * @param Product $candidate
  * @return void
  */
 public function prepare(Item $item, DataObject $request, Product $candidate)
 {
     /**
      * We specify qty after we know about parent (for stock)
      */
     if ($request->getResetCount() && !$candidate->getStickWithinParent() && $item->getId() == $request->getId()) {
         $item->setData(CartItemInterface::KEY_QTY, 0);
     }
     $item->addQty($candidate->getCartQty());
     $customPrice = $request->getCustomPrice();
     if (!empty($customPrice)) {
         $item->setCustomPrice($customPrice);
         $item->setOriginalCustomPrice($customPrice);
     }
 }
Example #16
0
 /**
  * Render single action as link html
  *
  * @param  array $action
  * @param  \Magento\Framework\DataObject $row
  * @return string|false
  */
 protected function _toLinkHtml($action, \Magento\Framework\DataObject $row)
 {
     $product = $row->getProduct();
     if (isset($action['process']) && $action['process'] == 'configurable') {
         if ($product->canConfigure()) {
             $style = '';
             $onClick = sprintf('onclick="return %s.configureItem(%s)"', $action['control_object'], $row->getId());
             return sprintf('<a href="%s" %s %s>%s</a>', $action['url'], $style, $onClick, $action['caption']);
         } else {
             return false;
         }
     } else {
         return parent::_toLinkHtml($action, $row);
     }
 }
Example #17
0
 /**
  * Check is current entity has changes, by comparing current object state with stored snapshot
  *
  * @param \Magento\Framework\DataObject $entity
  * @return bool
  */
 public function isModified(\Magento\Framework\DataObject $entity)
 {
     if (!$entity->getId()) {
         return true;
     }
     $entityClass = get_class($entity);
     if (!isset($this->snapshotData[$entityClass][$entity->getId()])) {
         return true;
     }
     foreach ($this->snapshotData[$entityClass][$entity->getId()] as $field => $value) {
         if ($entity->getDataByKey($field) != $value) {
             return true;
         }
     }
     return false;
 }
Example #18
0
 /**
  * @param \Magento\Framework\DataObject $item
  * @param array $storesData
  * @dataProvider getItemsDataProvider
  * @throws \Exception
  */
 public function testAfterLoad($item, $storesData)
 {
     $linkField = 'row_id';
     $expectedResult = [];
     foreach ($storesData as $storeData) {
         $expectedResult[$storeData[$linkField]][] = $storeData['store_id'];
     }
     $entityMetadataMock = $this->getMockBuilder('Magento\\Framework\\EntityManager\\EntityMetadata')->disableOriginalConstructor()->getMock();
     $entityMetadataMock->expects($this->any())->method('getLinkField')->willReturn($linkField);
     $this->metadataPoolMock->expects($this->any())->method('getMetadata')->willReturn($entityMetadataMock);
     $this->select->expects($this->any())->method('from')->willReturnSelf();
     $this->connection->expects($this->any())->method('fetchAll')->willReturn($storesData);
     $storeDataMock = $this->getMockBuilder('Magento\\Store\\Api\\Data\\StoreInterface')->getMockForAbstractClass();
     $storeDataMock->expects($this->any())->method('getId')->willReturn(current($expectedResult[$item->getId()]));
     $storeDataMock->expects($this->any())->method('getCode')->willReturn('some_code');
     $this->storeManagerMock->expects($this->any())->method('getStores')->willReturn([$storeDataMock]);
     $this->storeManagerMock->expects($this->any())->method('getStore')->willReturn($storeDataMock);
     $this->collection->addItem($item);
     $this->assertEmpty($item->getStoreId());
     $this->collection->load();
     $this->assertEquals($expectedResult[$item->getId()], $item->getStoreId());
 }
Example #19
0
 /**
  * @param \Magento\Catalog\Model\Product $product
  * @param \Magento\Framework\DataObject $selection
  * @return float|int
  */
 protected function getBeforeQty($product, $selection)
 {
     $beforeQty = 0;
     $customOption = $product->getCustomOption('product_qty_' . $selection->getId());
     if ($customOption && $customOption->getProduct()->getId() == $selection->getId()) {
         $beforeQty = (double) $customOption->getValue();
         return $beforeQty;
     }
     return $beforeQty;
 }
Example #20
0
 /**
  * Return 'onclick' action for the button (redirect to the integration edit page).
  *
  * @param \Magento\Framework\DataObject $row
  * @return string
  */
 protected function _getOnclickAttribute(DataObject $row)
 {
     return sprintf("window.location.href='%s'", $this->getUrl('*/*/edit', ['id' => $row->getId()]));
 }
Example #21
0
 /**
  * {@inheritdoc}
  */
 protected function _afterDelete(\Magento\Framework\DataObject $address)
 {
     if ($address->getId()) {
         $customer = $this->customerRepository->getById($address->getCustomerId());
         if ($customer->getDefaultBilling() == $address->getId()) {
             $customer->setDefaultBilling(null);
         }
         if ($customer->getDefaultShipping() == $address->getId()) {
             $customer->setDefaultShipping(null);
         }
         $this->customerRepository->save($customer);
     }
     return parent::_afterDelete($address);
 }
 /**
  * Retrieve product identifier linked with item
  *
  * @param \Magento\Framework\DataObject $item
  * @return int
  */
 public function getProductId($item)
 {
     return $item->getId();
 }
Example #23
0
 /**
  * Renders grid column
  *
  * @param \Magento\Framework\DataObject $row
  * @return string
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     $id = $row->getId();
     return sprintf('<a href="%s">%s</a>', $this->getUrl('review/product/', ['productId' => $id]), __('Show Reviews'));
 }
Example #24
0
 /**
  * Process category data after save category object
  * save related products ids and update path value
  *
  * @param \Magento\Framework\DataObject $object
  * @return $this
  */
 protected function _afterSave(\Magento\Framework\DataObject $object)
 {
     /**
      * Add identifier for new category
      */
     if (substr($object->getPath(), -1) == '/') {
         $object->setPath($object->getPath() . $object->getId());
         $this->_savePath($object);
     }
     $this->_saveCategoryProducts($object);
     return parent::_afterSave($object);
 }
Example #25
0
 /**
  * @param \Magento\Catalog\Model\Product|\Magento\Framework\DataObject $row
  * @return string
  */
 public function getRowUrl($row)
 {
     return $this->getUrl('catalog/*/edit', ['store' => $this->getRequest()->getParam('store'), 'id' => $row->getId()]);
 }
 /**
  * Get collection item identifier
  *
  * @param \Magento\Framework\DataObject $item
  * @return mixed
  */
 public function getItemId(\Magento\Framework\DataObject $item)
 {
     $field = $this->query->getIdFieldName();
     if ($field) {
         return $item->getData($field);
     }
     return $item->getId();
 }
Example #27
0
 /**
  * Get row url
  *
  * @param \Magento\Framework\DataObject $row
  * @return string
  */
 public function getRowUrl($row)
 {
     return $this->getUrl('*/*/edit', ['id' => $row->getId()]);
 }
Example #28
0
 /**
  * Renders grid column
  *
  * @param   \Magento\Framework\DataObject $row
  * @return  string
  * @SuppressWarnings(PHPMD.CyclomaticComplexity)
  * @SuppressWarnings(PHPMD.NPathComplexity)
  */
 public function render(\Magento\Framework\DataObject $row)
 {
     $values = $this->_getValues();
     $value = $row->getData($this->getColumn()->getIndex());
     $checked = '';
     if (is_array($values)) {
         $checked = in_array($value, $values) ? ' checked="checked"' : '';
     } else {
         $checkedValue = $this->getColumn()->getValue();
         if ($checkedValue !== null) {
             $checked = $value === $checkedValue ? ' checked="checked"' : '';
         }
     }
     $disabled = '';
     $disabledValues = $this->getColumn()->getDisabledValues();
     if (is_array($disabledValues)) {
         $disabled = in_array($value, $disabledValues) ? ' disabled="disabled"' : '';
     } else {
         $disabledValue = $this->getColumn()->getDisabledValue();
         if ($disabledValue !== null) {
             $disabled = $value === $disabledValue ? ' disabled="disabled"' : '';
         }
     }
     $this->setDisabled($disabled);
     if ($this->getNoObjectId() || $this->getColumn()->getUseIndex()) {
         $v = $value;
     } else {
         $v = $row->getId() != "" ? $row->getId() : $value;
     }
     return $this->_getCheckboxHtml($v, $checked);
 }
Example #29
0
 /**
  * Retrieve identifier of block item
  *
  * @param \Magento\Framework\DataObject $item
  * @return int
  */
 public function getIdentifierId($item)
 {
     return $item->getId();
 }
Example #30
0
 /**
  * Checks if address has chosen as default and has had an id
  *
  * @param DataObject $entity
  * @return bool
  */
 private function isAddressDefault(DataObject $entity)
 {
     return $entity->getId() && ($entity->getIsDefaultBilling() || $entity->getIsDefaultShipping());
 }