/** * @magentoDbIsolation enabled */ public function testLoadByCode() { $this->_model->load('admin'); $this->assertEquals(0, $this->_model->getId()); $this->assertEquals('admin', $this->_model->getCode()); $this->assertEquals('Admin', $this->_model->getName()); }
public function testLoad() { /* Test loading by id */ $this->assertEquals(1, $this->_model->getId()); $this->assertEquals('base', $this->_model->getCode()); $this->assertEquals('Main Website', $this->_model->getName()); /* Test loading by code */ $this->_model->load('admin'); $this->assertEquals(0, $this->_model->getId()); $this->assertEquals('admin', $this->_model->getCode()); $this->assertEquals('Admin', $this->_model->getName()); }
/** * Get loaded websites * * @param bool $withDefault * @param bool|string $codeKey * @return \Magento\Store\Model\Website[] */ public function getWebsites($withDefault = false, $codeKey = false) { $websites = []; if ($withDefault) { $key = $codeKey ? $this->_website->getCode() : $this->_website->getId(); $websites[$key] = $this->_website; } return $websites; }
/** * Invalidate design config grid indexer on website creation * * @param StoreWebsite $subject * @param \Closure $proceed * @return StoreWebsite * @SuppressWarnings(PHPMD.UnusedFormalParameter) */ public function aroundSave(StoreWebsite $subject, \Closure $proceed) { $isObjectNew = $subject->getId() == 0; $result = $proceed(); if ($isObjectNew) { $this->indexerRegistry->get(Config::DESIGN_CONFIG_GRID_INDEXER_ID)->invalidate(); } return $result; }
/** * Unset website by id from app cache * * @param null|bool|int|string|Website $websiteId * @return void */ public function clearWebsiteCache($websiteId = null) { if (is_null($websiteId)) { $websiteId = $this->getStore()->getWebsiteId(); } elseif ($websiteId instanceof Website) { $websiteId = $websiteId->getId(); } elseif ($websiteId === true) { $websiteId = $this->_website->getId(); } if (!empty($this->_websites[$websiteId])) { $website = $this->_websites[$websiteId]; unset($this->_websites[$website->getWebsiteId()]); unset($this->_websites[$website->getCode()]); } }
/** * Add stock status to prepare index select * * @param \Magento\Framework\DB\Select $select * @param \Magento\Store\Model\Website $website * @return Status */ public function addStockStatusToSelect(\Magento\Framework\DB\Select $select, \Magento\Store\Model\Website $website) { $websiteId = $website->getId(); $select->joinLeft(['stock_status' => $this->getMainTable()], 'e.entity_id = stock_status.product_id AND stock_status.website_id=' . $websiteId, ['salable' => 'stock_status.stock_status']); return $this; }
/** * {@inheritdoc} */ public function getId() { $pluginInfo = $this->pluginList->getNext($this->subjectType, 'getId'); if (!$pluginInfo) { return parent::getId(); } else { return $this->___callPlugins('getId', func_get_args(), $pluginInfo); } }
/** * Set relation to the website * * @param Website $website * @return void */ public function setWebsite(Website $website) { $this->setWebsiteId($website->getId()); }
/** * Set Website scope * * @param Website|int $website * @return $this */ public function setWebsite($website) { $this->_website = $this->_storeManager->getWebsite($website); $this->addBindParam('scope_website_id', $this->_website->getId()); return $this; }
/** * @param \Magento\Store\Model\Website $website * @return bool */ public function isWebsiteSelected(\Magento\Store\Model\Website $website) { return $this->getWebsiteId() === $website->getId() && $this->getStoreId() === null; }
/** * @param \Magento\Store\Model\WebsiteRepository $subject * @param \Magento\Store\Model\Website $website * @return \Magento\Store\Model\Website */ public function afterGetDefault(WebsiteRepository $subject, Website $website) { if (!$this->isNeededProcess()) { return $website; } if ($this->geoWebsite->getId() != $website->getId()) { $website = $subject->getById($this->geoWebsite->getId()); } return $website; }
/** * Return serialized list of accepted save cookie website * * @return string */ public function getAcceptedSaveCookiesWebsiteIds() { $acceptedSaveCookiesWebsites = $this->_getAcceptedSaveCookiesWebsites(); $acceptedSaveCookiesWebsites[$this->_website->getId()] = 1; return json_encode($acceptedSaveCookiesWebsites); }
/** * Loads default website and returns its id * * @return int */ public function getWebsiteId() { $this->loadStore(); return $this->website->getId(); }
/** * Process website info * * @param \Magento\Store\Model\System\Store $storeModel * @param \Magento\Store\Model\Website $website * @param string $section * @param string $curStore * @param string $curWebsite * @param array $options * @return array */ protected function _processWebsite(\Magento\Store\Model\System\Store $storeModel, \Magento\Store\Model\Website $website, $section, $curStore, $curWebsite, array $options) { $websiteShow = false; foreach ($storeModel->getGroupCollection() as $group) { if ($group->getWebsiteId() != $website->getId()) { continue; } $groupShow = false; foreach ($storeModel->getStoreCollection() as $store) { if ($store->getGroupId() != $group->getId()) { continue; } if (!$websiteShow) { $websiteShow = true; $options['website_' . $website->getCode()] = array('label' => $website->getName(), 'url' => $this->getUrl('*/*/*', array('section' => $section, 'website' => $website->getCode())), 'selected' => !$curStore && $curWebsite == $website->getCode(), 'style' => 'padding-left:16px; background:#DDD; font-weight:bold;'); } if (!$groupShow) { $groupShow = true; $options['group_' . $group->getId() . '_open'] = array('is_group' => true, 'is_close' => false, 'label' => $group->getName(), 'style' => 'padding-left:32px;'); } $options['store_' . $store->getCode()] = array('label' => $store->getName(), 'url' => $this->getUrl('*/*/*', array('section' => $section, 'website' => $website->getCode(), 'store' => $store->getCode())), 'selected' => $curStore == $store->getCode(), 'style' => ''); } if ($groupShow) { $options['group_' . $group->getId() . '_close'] = array('is_group' => true, 'is_close' => true); } } return $options; }
/** * Get all not imported guests for a website. * * @param \Magento\Store\Model\Website $website * * @return $this */ public function getGuests(\Magento\Store\Model\Website $website) { $guestCollection = $this->getCollection()->addFieldToFilter('is_guest', ['notnull' => true])->addFieldToFilter('email_imported', ['null' => true])->addFieldToFilter('website_id', $website->getId()); return $guestCollection->load(); }