Skip to content

Commit 7461691

Browse files
committed
Code style + translation
1 parent b696c9a commit 7461691

File tree

3 files changed

+39
-18
lines changed

3 files changed

+39
-18
lines changed

resources/translations/messages.en.xlf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -730,6 +730,10 @@ Thank you.</target>
730730
<source>Campaign not found or not in submitted status</source>
731731
<target>__Campaign not found or not in submitted status</target>
732732
</trans-unit>
733+
<trans-unit id="TBYUW2m" resname="Conflict: email and foreign key refer to different subscribers.">
734+
<source>Conflict: email and foreign key refer to different subscribers.</source>
735+
<target>__Conflict: email and foreign key refer to different subscribers.</target>
736+
</trans-unit>
733737
</body>
734738
</file>
735739
</xliff>

src/Domain/Subscription/Service/CsvRowToDtoMapper.php

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,7 @@ class CsvRowToDtoMapper
1616
public function map(array $row): ImportSubscriberDto
1717
{
1818
// Normalize keys to lower-case for header matching safety (CSV library keeps original headers)
19-
$normalizedRow = [];
20-
foreach ($row as $key => $value) {
21-
$normalizedRow[strtolower((string)$key)] = is_string($value) ? trim($value) : $value;
22-
}
19+
$normalizedRow = $this->normalizeData($row);
2320

2421
$email = strtolower(trim((string)($normalizedRow['email'] ?? '')));
2522

@@ -42,4 +39,14 @@ public function map(array $row): ImportSubscriberDto
4239
foreignKey: $foreignKey ?? null,
4340
);
4441
}
42+
43+
private function normalizeData(array $row): array
44+
{
45+
$normalizedRow = [];
46+
foreach ($row as $key => $value) {
47+
$normalizedRow[strtolower((string)$key)] = is_string($value) ? trim($value) : $value;
48+
}
49+
50+
return $normalizedRow;
51+
}
4552
}

src/Domain/Subscription/Service/SubscriberCsvImporter.php

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -204,20 +204,7 @@ private function processRow(
204204

205205
$this->attributeManager->processAttributes($subscriber, $dto->extraAttributes);
206206

207-
$addedNewSubscriberToList = false;
208-
$listLines = [];
209-
if (!$subscriber->isBlacklisted() && count($options->listIds) > 0) {
210-
foreach ($options->listIds as $listId) {
211-
$created = $this->subscriptionManager->addSubscriberToAList($subscriber, $listId);
212-
if ($created) {
213-
$addedNewSubscriberToList = true;
214-
$listLines[] = $this->translator->trans(
215-
'Subscribed to %list%',
216-
['%list%' => $created->getSubscriberList()->getName()]
217-
);
218-
}
219-
}
220-
}
207+
[$listLines, $addedNewSubscriberToList] = $this->getHistoryListLines($subscriber, $options);
221208

222209
if ($subscriber->isBlacklisted()) {
223210
$stats['blacklisted']++;
@@ -300,4 +287,27 @@ private function prepareConfirmationMessage(
300287

301288
return null;
302289
}
290+
291+
private function getHistoryListLines(Subscriber $subscriber, SubscriberImportOptions $options): array
292+
{
293+
$addedNewSubscriberToList = false;
294+
$listLines = [];
295+
if (!$subscriber->isBlacklisted() && count($options->listIds) > 0) {
296+
foreach ($options->listIds as $listId) {
297+
$created = $this->subscriptionManager->addSubscriberToAList($subscriber, $listId);
298+
if ($created) {
299+
$addedNewSubscriberToList = true;
300+
$listLines[] = $this->translator->trans(
301+
'Subscribed to %list%',
302+
['%list%' => $created->getSubscriberList()->getName()]
303+
);
304+
}
305+
}
306+
}
307+
308+
return [
309+
$listLines,
310+
$addedNewSubscriberToList,
311+
];
312+
}
303313
}

0 commit comments

Comments
 (0)