/** * Links the items (similar/accessory) */ public function link() { $Request_AddLinkedItems = new PlentySoapRequest_AddLinkedItems(); $Request_AddLinkedItems->CrosssellingList = array(); foreach ($this->SHOPWARE_Article->getSimilar() as $Similar) { $Object_AddLinkedItems = new PlentySoapObject_AddLinkedItems(); $Object_AddLinkedItems->Relationship = 'Similar'; // string $Object_AddLinkedItems->CrossItemSKU = PlentymarketsMappingController::getItemByShopwareID($Similar->getId()); // string $Request_AddLinkedItems->CrosssellingList[] = $Object_AddLinkedItems; } foreach ($this->SHOPWARE_Article->getRelated() as $Related) { $Object_AddLinkedItems = new PlentySoapObject_AddLinkedItems(); $Object_AddLinkedItems->Relationship = 'Accessory'; // string $Object_AddLinkedItems->CrossItemSKU = PlentymarketsMappingController::getItemByShopwareID($Related->getId()); $Request_AddLinkedItems->CrosssellingList[] = $Object_AddLinkedItems; } if (!count($Request_AddLinkedItems->CrosssellingList)) { return; } $Request_AddLinkedItems->MainItemSKU = PlentymarketsMappingController::getItemByShopwareID($this->SHOPWARE_Article->getId()); // string // Do the request PlentymarketsSoapClient::getInstance()->AddLinkedItems($Request_AddLinkedItems); }
/** * Deletes all existing images of the item */ public function purge() { $images = $this->SHOPWARE_Article->getImages(); /** * @var Image $imageModel */ foreach ($images as $imageModel) { Shopware()->Models()->remove($imageModel); } Shopware()->Models()->flush(); }