From eb07872d1368f5864a134c82329e09fdc80c4857 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lys=C3=BD?= Date: Wed, 6 Apr 2022 11:30:26 +0200 Subject: [PATCH] Disable segments validation when form ID is empty [MAILPOET-4155] --- mailpoet/lib/Form/Block/BlockRendererHelper.php | 5 +++-- .../Subscription/ManageSubscriptionFormRendererTest.php | 3 +-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mailpoet/lib/Form/Block/BlockRendererHelper.php b/mailpoet/lib/Form/Block/BlockRendererHelper.php index ee3e0c12be..66a0f2f2e7 100644 --- a/mailpoet/lib/Form/Block/BlockRendererHelper.php +++ b/mailpoet/lib/Form/Block/BlockRendererHelper.php @@ -47,11 +47,12 @@ class BlockRendererHelper { }, $errorMessages)) . ']'; } - if ($blockId === 'segments') { + // Segments should be required only when form ID is not empty. That allows save form on subscription management site when any segment is not checked. + if ($blockId === 'segments' && $formId) { $rules['required'] = true; $rules['mincheck'] = 1; $rules['group'] = $blockId; - $rules['errors-container'] = '.mailpoet_error_' . $blockId . ($formId ? '_' . $formId : ''); + $rules['errors-container'] = '.mailpoet_error_' . $blockId . '_' . $formId; $rules['required-message'] = __('Please select a list.', 'mailpoet'); } diff --git a/mailpoet/tests/integration/Subscription/ManageSubscriptionFormRendererTest.php b/mailpoet/tests/integration/Subscription/ManageSubscriptionFormRendererTest.php index c38cb9597f..1eeb57ae0b 100644 --- a/mailpoet/tests/integration/Subscription/ManageSubscriptionFormRendererTest.php +++ b/mailpoet/tests/integration/Subscription/ManageSubscriptionFormRendererTest.php @@ -27,8 +27,7 @@ class ManageSubscriptionFormRendererTest extends \MailPoetTest { expect($form)->stringContainsString(''); expect($form)->regExp('//'); expect($form)->regExp('//'); - expect($form)->regExp('/ Test segment/'); - expect($form)->regExp('/ Test segment/'); + expect($form)->regExp('/ Test segment/'); expect($form)->regExp('//'); expect($form)->regExp('//');