John Oleksowicz
974cd32950
Dynamic segment filter for first/last name and email
...
MAILPOET-4997
2023-05-12 13:59:12 +02:00
Brezo Cordero
b6242423c1
Track Dotcom plans
...
[MAILPOET-4974]
2023-05-11 13:56:00 +02:00
John Oleksowicz
a2853236fc
Add average order value filter
...
MAILPOET-4987
2023-05-11 11:47:01 +02:00
Rostislav Wolny
d9bec53efa
Introduce new service for reporting subscriber stats
...
Bridge is a low level service that processes requests and responses to/from Bridge API.
This change is needed so that we can remove dependency on MailPoet\Util\License\Features\Subscribers
service from the Bridge. The dependecy is a higher level service and may easily cause a circular dependency issue.
[MAILPOET-5191]
2023-05-10 13:05:37 +02:00
John Oleksowicz
f75173dcd5
Add "subscribed via form" dynamic filter
...
MAILPOET-5005
2023-05-09 13:10:08 +02:00
Sam Najian
ef7f2ebade
Define method to disable theme templates settings
...
[MAILPOET-5194]
2023-04-26 10:57:23 +02:00
Jan Jakes
f6a59647d5
Implement filter args validation
...
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
ffaa140289
Implement finding all static and dynamic segments for a subscriber
...
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
abe44ca9f8
Implement filter handler to apply filters on field values during automation run
...
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
John Oleksowicz
ae442e191c
Add database cleaner for integration tests
...
MAILPOET-5145
2023-04-07 12:11:12 -05:00
Brezo Cordero
fc8837e03c
Filter for license provisioning
...
This commit adds a filter that will provision the API key. It only runs on WP.com sites with plugins.
[MAILPOET-5131]
2023-04-03 12:57:31 +02:00
John Oleksowicz
68902a206d
Extract more to helpers
...
MAILPOET-4986
2023-04-03 10:20:02 +02:00
John Oleksowicz
26ec430942
Refactor to use DI instead of inheritance
...
MAILPOET-4986
2023-04-03 10:20:02 +02:00
John Oleksowicz
37226202bc
Implement purchase date dynamic filter
...
MAILPOET-4986
2023-04-03 10:20:02 +02:00
David Remer
a3ebd0695b
Introduce Order to Segment transformer
...
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
David Remer
d0659f638c
Add order to subscriber transformer
...
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
David Remer
e140dc6d4e
Add WooCommerce integration and order status trigger backend
...
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
David Remer
5328213d85
Introduce subject transformation
...
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
Rodrigo Primo
b963d8b988
Add a new WooCommerce segment based on the value of the orders
...
[MAILPOET-4988]
2023-03-28 15:51:01 +02:00
David Remer
fcf6e738c7
Interrupt automation run creation if a run already exists and only_once setting is set
...
[MAILPOET-4966]
2023-03-01 16:14:38 +01:00
Rostislav Wolny
4dfdfc8423
Add dummy Woo Tracker class
...
[MAILPOET-5014]
2023-01-30 09:21:39 +01:00
Jan Jakes
e3e865eac5
Use plugin context to load list of segments
...
[PREMIUM-215]
2023-01-26 14:12:22 +01:00
Rostislav Wolny
5fe02fcc3e
Refactor homepage data fetching to a new service
...
[MAILPOET-4827]
2023-01-23 16:48:52 +01:00
Brezo Cordero
49b2f5528f
Remove Migration class
...
Remove from container, test factory and PHPStan baselines.
[MAILPOET-4478]
2023-01-23 15:35:50 +01:00
Sam Najian
7ced42a494
Fix bug when duplicated newsletter uses the source's coupon
...
On duplication, the sensitive data of the coupon were
inherited from the source
[MAILPOET-4678]
2023-01-23 13:31:34 +01:00
Sam Najian
f551d4388c
Add CouponPreprocessor to create coupons before rendering
...
[MAILPOET-4678]
2023-01-23 13:31:34 +01:00
Sam Najian
bb7775f87b
Render Coupon block in email body
...
[MAILPOET-4678]
2023-01-23 13:31:34 +01:00
Jan Lysý
e4029a607a
Adopt logging test to warning instead of error
...
[MAILPOET-4639]
2023-01-09 15:23:48 +01:00
Oluwaseun Olorunsola
e850eaa90c
Add Landing page and hide behind feature flag
...
MAILPOET-4795
2023-01-06 18:29:46 +01:00
David Remer
5b93b88f46
Add Tags endpoint
...
[PREMIUM-213]
2022-12-16 14:11:34 +01:00
Oluwaseun Olorunsola
d19f5dc732
Add ConfirmationEmailCustomizer class and confirmation email template
...
MAILPOET-4649
2022-12-15 18:15:01 +01:00
Rostislav Wolny
2bbc1b7063
Add homepage page and submenu item hidden behind feature flag
...
[MAILPOET-4824]
2022-11-30 11:42:41 +01:00
Jan Jakes
926620e8f8
Ignore strict types rule in all existing files that don't have it
...
[MAILPOET-2688]
2022-11-29 15:04:09 +01:00
Sam Najian
96dde7107b
Expose unsubscribe analytics properperties
...
[MAILPOET-4733]
2022-11-25 14:51:57 +01:00
David Remer
4832771185
Refactor the captcha system
...
The current Captcha class has a lot of responsibilities. It renders the captcha
image, can check if a certain captcha type is a Google captcha, if a captcha is
required for a certain email. The SubscriberSubscribeController is not only in
charge of "controlling" the subscription process but also validates, whether a
captcha is correct or not. This architecture made it difficult to extend the
functionality and introduce the audio captcha feature.
Therefore this commit refactors the captcha architecture and tries to seperate
the different concerns into several classes and objects. Validation is now done
by validators.
The CaptchaPhrase now is in charge of keeping the captcha phrase consistent
between the image and the new audio, so that you can renew the captcha and both
captchas are in sync.
[MAILPOET-4514]
2022-11-24 09:20:39 +01:00
David Remer
7fb8d64628
Rename CaptchaRenderer to CaptchaFormRenderer
...
[MAILPOET-4203]
2022-11-24 09:20:39 +01:00
Jan Jakes
2e328b6d7f
Move temporary automation migrator to a new migration
...
[MAILPOET-4788]
2022-11-14 12:35:29 +02:00
Jan Jakes
8489e63d34
Delete automation testing system endpoints
...
[MAILPOET-4788]
2022-11-14 12:35:29 +02:00
Jan Jakes
9d55d3f134
Use "automation" instead of "workflow"
...
[MAILPOET-4793]
2022-11-14 12:14:35 +02:00
Sam Najian
162dab790d
Implement 1-click unsubscribe strategy for post requests
...
[MAILPOET-4703]
2022-11-11 09:21:30 +01:00
Jan Jakes
9730fb9272
Move the old dbDelta-based migrator to a migration
...
This will ensure it runs once and from there, it will continue using the new migrations.
[MAILPOET-4466]
2022-11-07 10:05:42 +01:00
Jan Jakes
3dd6ef3da7
Implement WP CLI command to run migrations
...
[MAILPOET-4466]
2022-11-07 10:05:42 +01:00
Jan Jakes
d199e0b77e
Add migrator service with ability to resolve status of all migrations
...
[MAILPOET-4466]
2022-11-07 10:05:42 +01:00
Jan Jakes
b10cd32449
Add runner to execute a migration and save its status
...
[MAILPOET-4466]
2022-11-07 10:05:42 +01:00
Jan Jakes
31050394b9
Add a store with a method to create migrations table when it doesn't exist
...
[MAILPOET-4466]
2022-11-07 10:05:42 +01:00
Jan Jakes
516c460ace
Add repository with the ability to create new migration classes
...
[MAILPOET-4466]
2022-11-07 10:05:42 +01:00
Oluwaseun Olorunsola
f92ee90e9b
Add support for [site:title] and [site:homepage_link]
...
These will add support for these two shortcodes in the Shortcode engine
MAILPOET-4599
2022-11-01 14:59:28 +01:00
Jan Lysý
9ff72b4d4c
Add SubscriberListener for notification about changes
...
[MAILPOET-4727]
2022-10-27 09:31:40 +02:00
Jan Lysý
2dab7fdb0c
Add new service for handling subscriber changes
...
This new service should store all changes and notify about them at the end of the HTTP request.
[MAILPOET-4727]
2022-10-27 09:31:40 +02:00
Jan Jakes
b01d050f1d
Extract workflow delete logic to a controller
...
[MAILPOET-4540]
2022-10-14 12:03:53 +03:00