public function Subscriber::prepareRow in Simplenews 3.x
Same name and namespace in other branches
- 8.2 src/Plugin/migrate/source/d7/Subscriber.php \Drupal\simplenews\Plugin\migrate\source\d7\Subscriber::prepareRow()
- 8 src/Plugin/migrate/source/d7/Subscriber.php \Drupal\simplenews\Plugin\migrate\source\d7\Subscriber::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
- src/
Plugin/ migrate/ source/ d7/ Subscriber.php, line 52
Class
- Subscriber
- Migration source for Subscriber entries in D7.
Namespace
Drupal\simplenews\Plugin\migrate\source\d7Code
public function prepareRow(Row $row) {
$result = parent::prepareRow($row);
$version = $this
->getModuleSchemaVersion('simplenews');
$newsletter_id_field = 'newsletter_id';
if ($version >= 7000 & $version < 7200) {
$newsletter_id_field = 'tid';
}
// Add associated data from the subscriptions table.
$q = $this
->select('simplenews_subscription', 'sub');
$q
->addField('sub', $newsletter_id_field, 'newsletter_id');
$q
->fields('sub', [
'status',
'timestamp',
'source',
]);
$q
->condition('sub.snid', $row
->getSourceProperty('snid'));
$subscriptions = $q
->execute()
->fetchAllAssoc('newsletter_id');
$row
->setSourceProperty('subscriptions', $subscriptions);
return $result;
}