/** * Prepare data for downloadable product. * * @param DownloadableProduct $product * @return array */ protected function prepareDownloadableData(DownloadableProduct $product) { $result = []; $checkoutData = $product->getCheckoutData(); foreach ($checkoutData['options']['links'] as $link) { $result['links'][] = $link['id']; } return $result; }
/** * Prepare downloadable product options. * * @param DownloadableProduct $product * @return array */ protected function prepareDownloadableOptions(DownloadableProduct $product) { $checkoutData = $product->getCheckoutData(); $links = []; foreach ($checkoutData['options']['links'] as $link) { $links[] = $link['id']; } return ['extension_attributes' => ['downloadable_option' => ['downloadable_links' => $links]]]; }