Commit Graph

173 Commits

Author SHA1 Message Date
edaefea5b7 Use Subscribers feature instead of Installer
[MAILPOET-5429]
2023-08-03 12:31:02 +02:00
d2d0afa9f5 Add better handling of a failed ajax request
[MAILPOET-5429]
2023-08-03 12:31:02 +02:00
f7689232b2 Move user roles from global window to context
[MAILPOET-5091]
2023-07-18 13:03:16 +02:00
c72fce9aae Separate the segments and lists pages on the PHP side
Until now we were using the same render() method and Twig templates for
the segments and lists pages. This commit separates them by creating two
different render() methods, one for each page, and also separing the
Twig templates. Only the translations remain shared as separating them
would be more involved and probably not worth it.

[MAILPOET-5392]
2023-07-12 18:46:08 +02:00
728b8e91ac Add new menu entry to lists
Segments and lists now will have separate menu entries. The pages will
be split in subsequent commits.

[MAILPOET-5392]
2023-07-12 18:46:08 +02:00
a7b5bad346 Fix type mismatch
MAILPOET-5003
2023-07-12 11:10:18 +02:00
22bd33fecc Add automations segmentation filters frontend code
MAILPOET-5003
2023-07-12 11:10:18 +02:00
f85b7a52fc Change logic of the code to build the 'used shipping method' segment UI
This commit fixes an issue with the initial logic used to retrieve
shipping methods to build the UI of the 'used shipping method' segment.
It updates the code to properly retrieve WooCommerce shipping methods
configured for all zones. Before the code was getting just the shipping
method types and the shipping method instances.

The query that is used to get the subscribers that match this segment
will be updated in another commit.

[MAILPOET-4992]
2023-07-04 22:23:06 +02:00
243c096643 Add UI for new "used shipping method" segment
[MAILPOET-4992]
2023-07-04 22:23:06 +02:00
f89cd3d84f Improve method name
[MAILPOET-5092]
2023-07-03 12:44:07 +02:00
190da3b0e5 Use WooCommerce wrapper instead of native functions, test if WC is active
[MAILPOET-5092]
2023-07-03 12:44:07 +02:00
be29c00f08 Add price formatter
[MAILPOET-5092]
2023-07-03 12:44:07 +02:00
0c6ecbd8b2 Remove filter args_schema from editor for now, as it is not used
[MAILPOET-5415]
2023-06-26 13:19:32 +02:00
3b2d60bb4f Fix counts cache update for below minimum subscribers
[MAILPOET-5390]
2023-06-21 10:33:00 +02:00
24111af58b Move template management to registry
[MAILPOET-5372]
2023-06-19 13:29:25 +02:00
f10ef78825 Add Analytics Page and backend logic
[MAILPOET-5088]
2023-06-15 12:25:12 +02:00
2c9f72a824 Implement menu highlighting for MailPoet pages in PHP
[MAILPOET-5296]
2023-05-23 14:02:58 +02:00
48328122ae Make logs and experimental featues submenus of settings
[MAILPOET-5296]
2023-05-23 14:02:58 +02:00
43fbdddc13 Add missing submenu for form template selection page
[MAILPOET-5296]
2023-05-23 14:02:58 +02:00
6b7804bd8c Hide WooCommerce Tab for bundles
[MAILPOET-5223]
2023-05-22 11:52:23 +02:00
ec68818c1a Add filter for used payment method
MAILPOET-4993
2023-05-19 11:57:13 +02:00
00d021109c Move ModelValidator::validateNonRoleEmail() to a new Validator class
We want to remove/refactor the whole ModelValidator class as part of the
Doctrine refactor.

This commit moves the method ModelValidator::validateNonRoleEmail() to a
new Validator class as the method is not used by the validator system of
the Paris models. ModelValidator::validateEmail() was also moved as it
is called by ModelValidator::validateNonRoleEmail().

[MAILPOET-4343]
2023-05-17 12:37:22 +02:00
080b6a57ef Add MailPoet.hasValidMSSKey
I added the property so that we can check all combinations.
Currently it is not used but was added for completeness.
[MAILPOET-5191]
2023-05-10 13:05:37 +02:00
f75173dcd5 Add "subscribed via form" dynamic filter
MAILPOET-5005
2023-05-09 13:10:08 +02:00
4137c12bca Define brand styles setting on window object if available
[MAILPOET-5194]
2023-04-26 10:57:23 +02:00
447b0e496c Add filters to UI registry
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
3ed038479a Add subject data to automation editor registry
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
8cf48d2707 Simplify SubjectTransformer
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
c968b03ca7 Provide all possible subjects for a trigger to the UI
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
77b83ff188 Change scheduling newsletters from an hour precision to 15 minutes
[MAILPOET-4602]
2023-03-27 12:54:02 +02:00
c9c75c8c6d Add admin.js to all admin pages using AssetController
[MAILPOET-4908]
2023-03-20 11:49:27 +01:00
0a11fadb05 Enqueue newletter assest using asset controller
[MAILPOET-4908]
2023-03-20 11:49:27 +01:00
ece4977d6a Add newsletter_editor.js using AssetsController
newsletter_editor.js was added via newsletter/editor.html
it's now removed from the template and wpEnqueueScript is
user instead

[MAILPOET-4908]
2023-03-20 11:49:27 +01:00
d832925107 Remove temporary static property for the plugin main page
The property was added so that we were able to set the main page
dynamically based on the feature switch value. This is no longer needed and
we can use the hardcoded constant as we did before.
[MAILPOET-4831]
2023-03-13 14:09:17 +01:00
534bff5a80 Show a notice on top of newsletter listing for corrupt emails
[MAILPOET-4983]
2023-03-01 17:46:22 +01:00
7210fad0e1 Add subject_keys to Step definition
[MAILPOET-4966]
2023-03-01 16:14:38 +01:00
7b93f0e61e Move products selections to React component
[MAILPOET-4890]
2023-02-22 13:07:40 +01:00
d25e6cf4ff Use React for coupon general settings
[MAILPOET-4890]
2023-02-22 13:07:40 +01:00
1de328abaa Use settings store instead of local component state for sender data
In [MAILPOET-4818], we started using the settings Redux store to handle
adding the MSS key in the last step of the Welcome Wizard. This
introduced a bug in the previous steps as the same Redux store is not
used. Those steps rely on the component state to track changes to their
fields. This meant that once the user completed the last step, the
changes made in the previous steps were ignored and the default values
for the settings was saved to the database.

This commit fixes this bug for the first step of the wizard by using the
same settings Redux store to track changes to the sender name and
address.

[MAILPOET-5059]
2023-02-14 12:46:04 +01:00
dd2f100acd Implement MSS key verification in the MSS step of the welcome wizard
[MAILPOET-4818]
2023-02-08 12:56:32 +01:00
359f734024 Implement confirmation modal for setting up custom sending service
This commit implements the confirmation modal that is displayed when the
user clicks on the "I’ll set up my own email service" link in the MSS
step of the welcome wizard.

[MAILPOET-4818]
2023-02-08 12:56:32 +01:00
8a4f5c13da Add tracking for users arriving to the wizard from WooCommerce
MailPoet adds a link to the WooCommerce task list pointing to its own
welcome wizard. We want to track users that arrive to the MP wizard from
WooCommerce but at this point tracking is not enabled. So we store the
information in a setting, and send the tracking event to Mixpanel, if it
is enabled, after the user completes the wizard.

[MAILPOET-4814]
2023-01-30 15:01:42 +01:00
494723c818 Use WooCommerce decimal separators when validating input fields
We need to use the decimal separators selected by the user for our validation. We are also using the validation used on the adding/editing coupon page

MAILPOET-4762
2023-01-30 11:48:48 +01:00
f88623e48d Add settings code and resetting placeholder
[MAILPOET-4761]
2023-01-30 09:36:21 +01:00
46fdd8eeb3 Add select with existing coupons
[MAILPOET-4761]
2023-01-30 09:36:21 +01:00
3dbd91bfef Add Intl.Locale detection for formatting localized strings
[PREMIUM-215]
2023-01-26 14:12:22 +01:00
e3e865eac5 Use plugin context to load list of segments
[PREMIUM-215]
2023-01-26 14:12:22 +01:00
6b7ffbc4ad Allow plugins to add their own context data for automation editor
[PREMIUM-215]
2023-01-26 14:12:22 +01:00
4ddcc14eee Rename context to registry
This will align better with the backend naming as well as free up "context" for other purposes.

[PREMIUM-215]
2023-01-26 14:12:22 +01:00
5fe02fcc3e Refactor homepage data fetching to a new service
[MAILPOET-4827]
2023-01-23 16:48:52 +01:00