Commit Graph

18205 Commits

Author SHA1 Message Date
Jan Jakes
ad319393b7 Expose Button from @wordpress/components
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
28c4f5e3d0 Fix missing key prop
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
6f0307be95 Flush database changes before invoking "mailpoet_segment_subscribed" hook
This is to ensure the hook consumers can read up-to-date data from the database.

[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Rodrigo Primo
c3656829a7 Remove the code coverage command documentation from the README.md file
This command doesn't exist anymore

[MAILPOET-2440]
2023-04-20 16:21:34 +02:00
Rodrigo Primo
a3cf1daeae Remove code coverage code as it is not used anymore
[MAILPOET-2440]
2023-04-20 16:21:34 +02:00
Pavel Dohnal
8028bd3e95 Use discouraged function directly
We need to add a warning so that we know for sure
that this piece of risky code gets reviewed by a human and consciously ignore the warning

[MAILPOET-5245]
2023-04-20 12:00:29 +02:00
Pavel Dohnal
08c320423b Use a discouraged function in the tests directly
[MAILPOET-5245]
2023-04-20 12:00:29 +02:00
Brezo Cordero
8b7b933d1e Release 4.12.1 2023-04-19 12:42:28 -05:00
Oluwaseun Olorunsola
ec987cbc4e Fix errors in 3rd party lib
MAILPOET-5239
2023-04-19 14:47:38 +01:00
Jan Lysý
0fe75d98f9 Add migration fixing newsletter option fields
[MAILPOET-5244]
2023-04-19 15:32:28 +02:00
Jan Lysý
4bcf413dbe Fix minute scheduling for post notifications
We recently added minute scheduling in UI, but we forgot to update PostNotificationScheduler.
It caused calculating float number for hours and PN were not scheduled.
[MAILPOET-5244]
2023-04-19 15:32:28 +02:00
Jan Lysý
f5a2088000 Add test cases for minute scheduling
[MAILPOET-5244]
2023-04-19 15:32:28 +02:00
Brezo Cordero
b35b772eb1 Release 4.12.0 2023-04-18 13:01:06 -05:00
Rodrigo Primo
769a11048e Remove PHPStan ignored error as it is not happening anymore
[MAILPOET-5232]
2023-04-17 14:33:51 -03:00
Rodrigo Primo
aa5b052e66 Handle sanitization as early as possible per best practices
Per WP security best practices, sanitization should be handled as early
as possible. So this commit move updates the calls to sanitize the
segment name and description to the part of the code where the user
input is first processed, instead of when the data is saved to the
database.

[MAILPOET-5232]
2023-04-17 14:33:51 -03:00
Rodrigo Primo
db23bffee1 Escape the option name when displaying items in a list in a form
This should prevent an XSS vector both in the segments list in the page
to edit a subscriber and in the segments lists in the page to send a
newsletter.

[MAILPOET-5232]
2023-04-17 14:33:51 -03:00
Rodrigo Primo
d52dfa215c Always escape segment name and description in the segment list page
Please note that this change might impact some users as before we were
displaying HTML tags in the segment description but now the < will be
convert to an HTML entity.

[MAILPOET-5232]
2023-04-17 14:33:51 -03:00
Rodrigo Primo
119dcbd5b5 Sanitize name and description when creating a segment
This commits adds the sanitization right before the data is added to the
database (\MailPoet\Segments\SegmentsRepository::createOrUpdate()) and
removes the sanitization from
\MailPoet\Segments\DynamicSegments\SegmentSaveController::save() to
avoid sanitizing twice. save() calls createOrUpdate().

Before this commit, we were sanitizing the name and description of
dynamic segments but not regular segments.

[MAILPOET-5232]
2023-04-17 14:33:51 -03:00
John Oleksowicz
1565b71bb1 Change 'score' label to 'engagement score'
MAILPOET-4995
2023-04-17 14:42:09 +02:00
Rostislav Wolny
fa59c2c184 Sanitize socialIcon and image links in emails on save
[MAILPOET-5235]
2023-04-17 14:17:49 +02:00
Rostislav Wolny
79599ee6da Escape link for social icon and images in email editor
[MAILPOET-5235]
2023-04-17 14:17:49 +02:00
Rostislav Wolny
6e16bca122 Update Handlebars helper to check also data and vbscript
[MAILPOET-5235]
2023-04-17 14:17:49 +02:00
Brezo Cordero
dccd729c2f Sanitize values in Button block template
[MAILPOET-5235]
2023-04-17 14:17:49 +02:00
Brezo Cordero
f54e18ca44 Escape values in Button block template
[MAILPOET-5235]
2023-04-17 14:17:49 +02:00
David Remer
b3e836548c Create newsletter in test
[MAILPOET-4934]
2023-04-17 13:59:39 +02:00
David Remer
e5d04a011f Make keywords translateable
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
d68fdc76bf Render WooCommerce integration in UI
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
7380d4859b Render newsletter editor correctly for transactional emails
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
47fed85953 Test SendingQueue sends transactional emails as expected
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
9afe052b2a Test transactional emails get scheduled
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
db3bbd83aa Test the transactional type is set correctly
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
430c9b72f7 Exclude emails of wrong type
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
0ce8fce161 Send transactional emails to all not-bounced subscribers
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
19c6f777fc Schedule transactional emails to all subscribers who are not bounced
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
0a8bcaf484 Do not allow to send emails to bounced subscribers
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
343b91a980 Remove type specification 2023-04-17 13:59:39 +02:00
David Remer
59bbe31433 Allow transactional emails
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
46f888a30b Let transactional emails pass
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
ac65c138ee Set transactional email type when email is transactional
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
18baff3888 Add type transactional
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
b303111d3d Add Automation to AUTOMATION_STEP_BEFORE_SAVE action
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
f27b6a26bb Align send email step title icon
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
3e4e323131 Render title in Inserter and error view
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
12b769abe1 Add beacon ID
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
0f1929625f Remove 'Feedback' beacon
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
2ceb002d96 Do render title icon only in automation view
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
982f6b9177 Introduce StepRenderContext
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
82d7f77f9c Render send email title and description
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
f44ae7ac8f Make title and description dynamic, introduce keywords
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
Rostislav Wolny
4f42fa86a3 Use proper escaping function in option inner html
[MAILPOET-5233]
2023-04-17 11:51:52 +02:00