Commit Graph

47 Commits

Author SHA1 Message Date
Jan Jakes
d7506fc8a4 Check email type in automation email scheduler
[MAILPOET-4465]
2022-07-12 13:36:58 +02:00
Jan Jakes
971da8a943 Add automation email scheduler service
[MAILPOET-4465]
2022-07-12 13:36:58 +02:00
Jan Lysý
586a5b8b8e Fix typo in const name
[MAILPOET-4440]
2022-07-12 13:35:00 +02:00
Rodrigo Primo
378156ac69 Fix nofollow tag in the preview newsletter page
Commit 1a9b2ed798 added a `follow` tag to
the preview newsletter page by mistake. The intention was to add a
`nofollow` tag. This commit fixes it.

[MAILPOET-4263]
2022-07-11 14:38:41 +02:00
Rodrigo Primo
2721c7919e Add robots meta tag with noindex/nofollow to preview newsletter page
[MAILPOET-4263]
2022-07-11 12:31:54 +02:00
David Remer
445d07ac68 Prevent segmentation of automation emails
[MAILPOET-4432]
2022-07-04 14:04:16 +03:00
Jan Lysý
8d095886d4 Remove old model constant
[MAILPOET-4141]
2022-06-20 12:00:47 +02:00
Jan Lysý
6503e49eda Add Newsletter entity support
[MAILPOET-4141]
2022-06-20 12:00:47 +02:00
Jan Lysý
4ba5c6ce0c Remove old model from Scheduler
[MAILPOET-4141]
2022-06-20 12:00:47 +02:00
Ján Mikláš
f10596feec Fix typos in translations
[MAILPOET-4447]
2022-06-20 10:17:24 +02:00
Jan Lysý
5ab04b8b22 Remove usage constant from the old model
[MAILPOET-4338]
2022-05-19 14:18:06 +02:00
John Oleksowicz
ab609c8867 Remove subscriber check from newsletter validator
Checking the subscriber limit has nothing to do with the newsletter
itself, so it makes more sense to continue to perform that check as
needed elsewhere in the codebase.

MAILPOET-4236
2022-05-16 11:17:29 +02:00
John Oleksowicz
42b95d5b72 Ensure strings will still be picked up for translation
MAILPOET-4236
2022-05-16 11:17:29 +02:00
John Oleksowicz
8983d5e3f7 Move subscriber limit check into validator
[MAILPOET-4236]
2022-05-16 11:17:29 +02:00
John Oleksowicz
9bfe2b2ca1 Newsletter validation updates
- Rename validator to newsletterValidator for clarity
- Add validation for ALC content
- Refactor tests to use data factory for consistency and to avoid
validation issues
- Add separate tests for NewsletterValidator service
- Add test helper for retrieving service with private properties
overridden by name

[MAILPOET-4236]
2022-05-16 11:17:29 +02:00
John Oleksowicz
a5103f9596 Move reengagement validations into validator
[MAILPOET-4236]
2022-05-16 11:17:29 +02:00
John Oleksowicz
27a86d2ca6 Check validity on activating newsletters
This prevents users from activating automatic emails from listing pages
that are not valid.

This also adds more checks for the content of a newsletter, requiring
that a newsletter have at least one content block in order to be valid.
This change makes the server side validation check match what we're
checking in the editor in mailpoet/assets/js/src/newsletter_editor
/components/save.js and mailpoet/assets/js/src/newsletters/send.jsx

[MAILPOET-4236]
2022-05-16 11:17:29 +02:00
John Oleksowicz
fdaf22d46b Extract newsletter validation to a service
[MAILPOET-4236]
2022-05-16 11:17:29 +02:00
David Remer
7e43385040 Switch newRole and oldRole in array_diff to get correct difference
[MAILPOET-2834]
2022-05-12 11:41:57 +02:00
David Remer
9bd6f29870 Add add_user_role hook to synchronizeUser
[MAILPOET-2834]
2022-05-12 11:41:57 +02:00
Rodrigo Primo
dd6cbbbbce Create SendingQueuesRepository::countAllByNewsletterAndTaskStatus()
This method will be used in a subsequent commit to replace some of the
usages of the method SendingQueue::findTaskByNewsletterId() as part of
the refactor from Paris to Doctrine.

[MAILPOET-4138]
2022-05-09 13:04:56 +02:00
David Remer
c34356b99c Remove optional $wp parameter in getScheduledTimeWithDelay method
[MAILPOET-4252]
2022-04-25 12:08:18 +02:00
David Remer
ca3f8bdc43 Make Scheduler non-static
[MAILPOET-4252]
2022-04-25 12:08:18 +02:00
Sam
bcae8ade3f Revert "Revert "Restrict dynamic blocks to public post status only""
This reverts commit 79991ae462.
2022-04-18 11:43:47 +02:00
Sam
c32dc0a372 Revert "Revert "Define BlockPostQuery for nicer args processing for quering""
This reverts commit 62e393a76d.
2022-04-18 11:43:47 +02:00
Sam
319017f09d Revert "Revert "Correctly process sortBy argument when fetching posts""
This reverts commit 6c00969e83.
2022-04-18 11:43:47 +02:00
Rodrigo Primo
6c00969e83 Revert "Correctly process sortBy argument when fetching posts"
This reverts commit 79530d1656.
2022-04-11 16:30:59 -03:00
Rodrigo Primo
62e393a76d Revert "Define BlockPostQuery for nicer args processing for quering"
This reverts commit 5b40a585e7.
2022-04-11 16:30:59 -03:00
Rodrigo Primo
79991ae462 Revert "Restrict dynamic blocks to public post status only"
This reverts commit 72b3172c1a.
2022-04-11 16:30:59 -03:00
Sam Najian
72b3172c1a Restrict dynamic blocks to public post status only
[MAILPOET-4082]
2022-04-11 14:54:56 -03:00
Sam Najian
5b40a585e7 Define BlockPostQuery for nicer args processing for quering
[MAILPOET-4082]
2022-04-11 14:54:56 -03:00
Sam Najian
79530d1656 Correctly process sortBy argument when fetching posts
[MAILPOET-4082]
2022-04-11 14:54:56 -03:00
Rostislav Wolny
68cb5c4f79 Inject MailerFactory instead of mailer
We can't create mailer directly in DI container using the factory because it may fail in case
the plugin is not configured properly and prevent plugin from start.

The Mailer was previously injected because it contains lazy initialization.
The lazy initialization in the singleton Mailer service was dangerous,
because when used with some custom parameters it could cause that all services
that inject the Mailer from DI would use the custom config instead the default.
[MAILPOET-4115]
2022-04-11 16:54:38 +02:00
Rostislav Wolny
4f471d26bc Add listing repository for scheduler task subscribers
[MAILPOET-4006]
2022-04-04 15:33:52 +02:00
Rostislav Wolny
823aca38e4 Refactor fetching task ids to doctrine in task subscribers listing
[MAILPOET-4006]
2022-04-04 15:33:52 +02:00
Rostislav Wolny
9b71a7804c Update Monolog/Monolog from v1 to v2
[MAILPOET-4175]
2022-03-28 13:49:41 +02:00
Rostislav Wolny
ac0a9e7b6f Update doctrine/* libraries
[MAILPOET-4175]
2022-03-28 13:49:41 +02:00
Oluwaseun Olorunsola
8a3493ce4e Fix Division by zero Error in Newsletter button
[MAILPOET-4193]
2022-03-28 08:58:52 +02:00
David Remer
44b4cc7478 Set an empty subscriber when no Subscriber found for ViewInBrowser
[MAILPOET-4190]
2022-03-24 16:01:58 +01:00
Jan Lysý
82e05dfe0f Add fixes for better compatibility with PHP8.1
[MAILPOET-4015]
2022-03-14 09:38:20 +01:00
David Remer
eda969dd72 Fix action_argument_value of shortcode will be string if empty
[MAILPOET-4151]
2022-02-21 10:26:22 +01:00
John Oleksowicz
ec25f1aaf7 Add comment explaining optional callback
[MAILPOET-3518]
2022-02-09 16:33:06 +01:00
John Oleksowicz
ec8ff46a29 Only store relevant meta for product purchases
[MAILPOET-3518]
2022-02-09 16:33:06 +01:00
Sam NAjian
b35006433d Use only an instance of NewsletterShortcodes class when rendering archiveSubject
- Based on how the NewsletterShortcodes service is implemented it's safer to instanciate
it inside the user method and not inject it in the class contructor
- Revert back the changes added to MailPoet\Newsletter\Shortcodes\Categories\Subscriber::process
[MAILPOET-4069]
2022-02-09 16:31:14 +01:00
Rostislav Wolny
1630da0917 Add processing of shortcode in subject in archive page
[MAILPOET-3965]
2022-02-09 16:31:14 +01:00
Rodrigo Primo
d8724204f5 Fix getBounceCount() to return the correct property
[MAILPOET-4100]
2022-02-07 16:32:06 +01:00
Jan Jakes
9f790efbf0 Move plugin files to a subfolder
[MAILPOET-3988]
2022-01-18 15:30:22 +01:00