Esempio n. 1
0
 /**
  * Test for method unassignState status in use
  *
  * @expectedException \Magento\Framework\Exception\LocalizedException
  * @expectedExceptionMessage Status can't be unassigned, because it is used by existing order(s).
  */
 public function testUnassignStateStatusUsed()
 {
     $params = ['status' => $this->model->getStatus(), 'state' => 'test_state'];
     $this->resourceMock->expects($this->once())->method('checkIsStateLast')->with($this->equalTo($params['state']))->will($this->returnValue(false));
     $this->resourceMock->expects($this->once())->method('checkIsStatusUsed')->with($this->equalTo($params['status']))->will($this->returnValue(true));
     $this->assertEquals($this->model, $this->model->unassignState($params['state']));
 }
Esempio n. 2
0
 /**
  * Decorate values to column
  *
  * @param string $value
  * @param \Magento\Sales\Model\Order\Status $row
  * @param \Magento\Backend\Block\Widget\Grid\Column $column
  * @param bool $isExport
  * @return string
  * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  */
 public function decorateAction($value, $row, $column, $isExport)
 {
     $cell = '';
     $state = $row->getState();
     if (!empty($state)) {
         $url = $this->getUrl('*/*/unassign', ['status' => $row->getStatus(), 'state' => $row->getState()]);
         $label = __('Unassign');
         $cell = '<a href="' . $url . '">' . $label . '</a>';
     }
     return $cell;
 }
Esempio n. 3
0
 /**
  * Add Fieldset with Store labels
  *
  * @param \Magento\Sales\Model\Order\Status $model
  * @param \Magento\Framework\Data\Form $form
  * @return void
  */
 protected function _addStoresFieldset($model, $form)
 {
     $labels = $model ? $model->getStoreLabels() : [];
     $fieldset = $form->addFieldset('store_labels_fieldset', ['legend' => __('Store View Specific Labels'), 'class' => 'store-scope']);
     $renderer = $this->getLayout()->createBlock('Magento\\Backend\\Block\\Store\\Switcher\\Form\\Renderer\\Fieldset');
     $fieldset->setRenderer($renderer);
     foreach ($this->_storeManager->getWebsites() as $website) {
         $fieldset->addField("w_{$website->getId()}_label", 'note', ['label' => $website->getName(), 'fieldset_html_class' => 'website']);
         foreach ($website->getGroups() as $group) {
             $stores = $group->getStores();
             if (count($stores) == 0) {
                 continue;
             }
             $fieldset->addField("sg_{$group->getId()}_label", 'note', ['label' => $group->getName(), 'fieldset_html_class' => 'store-group']);
             foreach ($stores as $store) {
                 $fieldset->addField("store_label_{$store->getId()}", 'text', ['name' => 'store_labels[' . $store->getId() . ']', 'required' => false, 'label' => $store->getName(), 'value' => isset($labels[$store->getId()]) ? $labels[$store->getId()] : '', 'fieldset_html_class' => 'store']);
             }
         }
     }
 }
Esempio n. 4
0
 /**
  * Store labels getter
  *
  * @param \Magento\Sales\Model\Order\Status $status
  * @return array
  */
 public function getStoreLabels(\Magento\Sales\Model\Order\Status $status)
 {
     $select = $this->_getWriteAdapter()->select()->from(['ssl' => $this->labelsTable], [])->where('status = ?', $status->getStatus())->columns(['store_id', 'label']);
     return $this->_getReadAdapter()->fetchPairs($select);
 }