protected function getSimpleWithCustomOptionsAdditionalOptionValue(Ess_M2ePro_Model_Listing_Product_Variation_Option $option) { $value = 0; $attributeName = strtolower($option->getAttribute()); $optionName = strtolower($option->getOption()); $simpleAttributes = $this->getMagentoProduct()->getProduct()->getOptions(); foreach ($simpleAttributes as $tempAttribute) { if (!(bool) (int) $tempAttribute->getData('is_require')) { continue; } if (!in_array($tempAttribute->getType(), array('drop_down', 'radio', 'multiple', 'checkbox'))) { continue; } $tempAttributeTitles = array($tempAttribute->getData('default_title'), $tempAttribute->getData('store_title'), $tempAttribute->getData('title')); $tempAttributeTitles = array_map('strtolower', array_filter($tempAttributeTitles)); if (!in_array($attributeName, $tempAttributeTitles)) { continue; } foreach ($tempAttribute->getValues() as $tempOption) { $tempOptionTitles = array($tempOption->getData('default_title'), $tempOption->getData('store_title'), $tempOption->getData('title')); $tempOptionTitles = array_map('strtolower', array_filter($tempOptionTitles)); $tempOptionTitles = $this->prepareOptionTitles($tempOptionTitles); if (!in_array($optionName, $tempOptionTitles)) { continue; } if (!is_null($tempOption->getData('price_type')) && $tempOption->getData('price_type') !== false) { switch ($tempOption->getData('price_type')) { case 'percent': $value = $this->getProductBaseValue() * (double) $tempOption->getData('price') / 100; break; case 'fixed': $value = (double) $tempOption->getData('price'); $value = $this->convertValueFromStoreToMarketplace($value); break; } } break 2; } } return $value; }