Exemplo n.º 1
0
 /**
  * Create url for passed item using passed url model
  * @param \Magento\Framework\Object $item
  * @return string
  */
 public function getUrl($item)
 {
     if ($this->_authorization->isAllowed('Magento_Customer::manage') && $item->getCustomerId()) {
         return parent::getUrl($item);
     }
     return false;
 }
Exemplo n.º 2
0
 /**
  * Renders grid column
  *
  * @param \Magento\Framework\Object $row
  * @return string
  */
 public function render(\Magento\Framework\Object $row)
 {
     $id = $row->getCustomerId();
     if (!$id) {
         return __('Show Reviews');
     }
     return sprintf('<a href="%s">%s</a>', $this->getUrl('review/product/', array('customerId' => $id)), __('Show Reviews'));
 }
Exemplo n.º 3
0
 /**
  * Render review type
  *
  * @param \Magento\Framework\Object $row
  * @return string
  */
 public function render(\Magento\Framework\Object $row)
 {
     if ($row->getCustomerId()) {
         return __('Customer');
     }
     if ($row->getStoreId() == \Magento\Store\Model\Store::DEFAULT_STORE_ID) {
         return __('Administrator');
     }
     return __('Guest');
 }
Exemplo n.º 4
0
 /**
  * Set default shipping to address
  *
  * @param \Magento\Framework\Object $address
  * @return $this
  */
 protected function _afterSave(\Magento\Framework\Object $address)
 {
     if ($address->getIsCustomerSaveTransaction()) {
         return $this;
     }
     if ($address->getId() && ($address->getIsDefaultBilling() || $address->getIsDefaultShipping())) {
         $customer = $this->_createCustomer()->load($address->getCustomerId());
         if ($address->getIsDefaultBilling()) {
             $customer->setDefaultBilling($address->getId());
         }
         if ($address->getIsDefaultShipping()) {
             $customer->setDefaultShipping($address->getId());
         }
         $customer->save();
     }
     return $this;
 }
Exemplo n.º 5
0
 /**
  * @param \Magento\Framework\Object $row
  *
  * @return string
  */
 public function getRowUrl($row)
 {
     return $this->getUrl('customer/index/edit', array('id' => $row->getCustomerId(), 'active_tab' => 'cart'));
 }
Exemplo n.º 6
0
 /**
  * Add information about product ids to visitor/customer
  *
  * @param \Magento\Framework\Object|\Magento\Reports\Model\Product\Index\AbstractIndex $object
  * @param array $productIds
  * @return $this
  */
 public function registerIds(\Magento\Framework\Object $object, $productIds)
 {
     $row = ['visitor_id' => $object->getVisitorId(), 'customer_id' => $object->getCustomerId(), 'store_id' => $object->getStoreId()];
     $addedAt = (new \DateTime())->getTimestamp();
     $data = [];
     foreach ($productIds as $productId) {
         $productId = (int) $productId;
         if ($productId) {
             $row['product_id'] = $productId;
             $row['added_at'] = $this->dateTime->formatDate($addedAt);
             $data[] = $row;
         }
         $addedAt -= $addedAt > 0 ? 1 : 0;
     }
     $matchFields = ['product_id', 'store_id'];
     foreach ($data as $row) {
         $this->_resourceHelper->mergeVisitorProductIndex($this->getMainTable(), $row, $matchFields);
     }
     return $this;
 }
Exemplo n.º 7
0
 /**
  * {@inheritdoc}
  */
 protected function _afterDelete(\Magento\Framework\Object $address)
 {
     if ($address->getId()) {
         $customer = $this->_createCustomer()->load($address->getCustomerId());
         if ($customer->getDefaultBilling() == $address->getId()) {
             $customer->setDefaultBilling(null);
         }
         if ($customer->getDefaultShipping() == $address->getId()) {
             $customer->setDefaultShipping(null);
         }
         $customer->save();
     }
     return parent::_afterDelete($address);
 }
Exemplo n.º 8
0
 /**
  * @param \Magento\Framework\Object $row
  * @return string
  */
 public function render(\Magento\Framework\Object $row)
 {
     return $row->getCustomerId() > 0 ? __('Customer') : __('Visitor');
 }
Exemplo n.º 9
0
 /**
  * {@inheritdoc}
  */
 protected function _afterDelete(\Magento\Framework\Object $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);
 }
Exemplo n.º 10
0
 /**
  * @param Object $order
  * @param Object $request
  * @return Object
  */
 public function fillCustomerContacts(Object $order, Object $request)
 {
     $customerId = $order->getCustomerId();
     if ($customerId) {
         $request->setCustref($customerId);
     }
     $billing = $order->getBillingAddress();
     if (!empty($billing)) {
         $request = $this->setBilling($request, $billing);
         $request->setEmail($order->getCustomerEmail());
     }
     $shipping = $order->getShippingAddress();
     if (!empty($shipping)) {
         $request = $this->setShipping($request, $shipping);
         return $request;
     }
     return $request;
 }