public function ProductVariations::prepareRow in Commerce Migrate 3.0.x
Same name and namespace in other branches
- 8.2 modules/commerce/src/Plugin/migrate/source/commerce1/ProductVariations.php \Drupal\commerce_migrate_commerce\Plugin\migrate\source\commerce1\ProductVariations::prepareRow()
- 3.1.x modules/commerce/src/Plugin/migrate/source/commerce1/ProductVariations.php \Drupal\commerce_migrate_commerce\Plugin\migrate\source\commerce1\ProductVariations::prepareRow()
Adds additional data to the row.
Parameters
\Drupal\migrate\Row $row: The row object.
Return value
bool FALSE if this row needs to be skipped.
Overrides SourcePluginBase::prepareRow
File
- modules/
commerce/ src/ Plugin/ migrate/ source/ commerce1/ ProductVariations.php, line 60
Class
- ProductVariations
- Gets Commerce 1 commerce_product data from database.
Namespace
Drupal\commerce_migrate_commerce\Plugin\migrate\source\commerce1Code
public function prepareRow(Row $row) {
$product_id = $row
->getSourceProperty('product_id');
$revision_id = $row
->getSourceProperty('revision_id');
foreach (array_keys($this
->getFields('commerce_product', $row
->getSourceProperty('type'))) as $field) {
$row
->setSourceProperty($field, $this
->getFieldValues('commerce_product', $field, $product_id, $revision_id));
}
// Include the number of currency fraction digits in the price.
$currencyRepository = new CurrencyRepository();
$value = $row
->getSourceProperty('commerce_price');
$currency_code = $value[0]['currency_code'];
$value[0]['fraction_digits'] = $currencyRepository
->get($currency_code)
->getFractionDigits();
$row
->setSourceProperty('commerce_price', $value);
return parent::prepareRow($row);
}