diff --git a/mailpoet/assets/js/src/segments/dynamic/dynamic_segments_filters/email.tsx b/mailpoet/assets/js/src/segments/dynamic/dynamic_segments_filters/email.tsx index a2c138b4ca..51959f0967 100644 --- a/mailpoet/assets/js/src/segments/dynamic/dynamic_segments_filters/email.tsx +++ b/mailpoet/assets/js/src/segments/dynamic/dynamic_segments_filters/email.tsx @@ -19,7 +19,6 @@ export const EmailSegmentOptions = [ { value: EmailActionTypes.MACHINE_OPENED, label: MailPoet.I18n.t('emailActionMachineOpened'), group: SegmentTypes.Email }, { value: EmailActionTypes.CLICKED, label: MailPoet.I18n.t('emailActionClicked'), group: SegmentTypes.Email }, { value: EmailActionTypes.CLICKED_ANY, label: MailPoet.I18n.t('emailActionClickedAnyEmail'), group: SegmentTypes.Email }, - { value: EmailActionTypes.NOT_CLICKED, label: MailPoet.I18n.t('emailActionNotClicked'), group: SegmentTypes.Email }, ]; export function validateEmail(formItems: EmailFormItem): boolean { diff --git a/mailpoet/lib/API/JSON/ResponseBuilders/DynamicSegmentsResponseBuilder.php b/mailpoet/lib/API/JSON/ResponseBuilders/DynamicSegmentsResponseBuilder.php index 5f2eaf161a..847795fd06 100644 --- a/mailpoet/lib/API/JSON/ResponseBuilders/DynamicSegmentsResponseBuilder.php +++ b/mailpoet/lib/API/JSON/ResponseBuilders/DynamicSegmentsResponseBuilder.php @@ -77,6 +77,11 @@ class DynamicSegmentsResponseBuilder { $filter['action'] = EmailAction::ACTION_OPENED; $filter['operator'] = DynamicSegmentFilterData::OPERATOR_NONE; } + if ($filter['action'] === EmailAction::ACTION_NOT_CLICKED) { + // convert not clicked + $filter['action'] = EmailAction::ACTION_CLICKED; + $filter['operator'] = DynamicSegmentFilterData::OPERATOR_NONE; + } } $filters[] = $filter; } diff --git a/mailpoet/lib/Segments/DynamicSegments/FilterDataMapper.php b/mailpoet/lib/Segments/DynamicSegments/FilterDataMapper.php index 9193233492..3f3f31e487 100644 --- a/mailpoet/lib/Segments/DynamicSegments/FilterDataMapper.php +++ b/mailpoet/lib/Segments/DynamicSegments/FilterDataMapper.php @@ -153,7 +153,7 @@ class FilterDataMapper { 'operator' => $data['operator'] ?? DynamicSegmentFilterData::OPERATOR_ANY, ]; - if (($data['action'] === EmailAction::ACTION_CLICKED) || ($data['action'] === EmailAction::ACTION_NOT_CLICKED)) { + if (($data['action'] === EmailAction::ACTION_CLICKED)) { if (empty($data['newsletter_id'])) throw new InvalidFilterException('Missing newsletter id', InvalidFilterException::MISSING_NEWSLETTER_ID); $filterData['newsletter_id'] = $data['newsletter_id']; } else {