Commit Graph

15690 Commits

Author SHA1 Message Date
13a79d0b77 Turn off no-void eslint rule for premium (same as the free config)
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
16217db6cd Use premium upgrade modal in Google Analytics panel
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
2a8dca6454 Add basic premium upgrade modal component
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
c8ac0ac4a7 Expose slugify for premium
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
b877bd4577 Expose whole @wordpress/data for premium
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
59315d03c7 Expose text control from @wordpress/components for premium
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
a01afc27e8 Add entrypoint for premium plugin exposed assets and libs
This simplifies Webpack configuration, removes duplicities between loaders and
the "admin_vendor" entrypoint definition, and makes the sharing more transparent.

[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
3886dd83d1 Unify naming of sender name and email address
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
72aa540b23 Simplify and unify default GA campaign name generation
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
697e7eba9a Add Google Analytics setting panel to automation email sidbar
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
922beb790f Add reply-to setting panel to automation email sidebar
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
a5b737ac86 Allow using setState-like callback for setting step args
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
f89b645ce2 Extract automation email panel to a component
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
cf1982a410 Make automation email edit component a directory
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
8d29c2df49 Deprecate MappingToExternalEntities model and stop creating its table
Since we are removing all the MP2 migration code the table
wp_mailpoet_mapping_to_external_entities is not needed anymore. It was
used to map MP2 objects to MP3 objects. This commit removes the code
that creates this table for new installs and deprecates its model.

[MAILPOET-4376]
2022-08-15 12:46:22 +02:00
d874375c25 Remove MP2 migration main class and its test class
This commit removes the main MP2 migration class and its test class. It
also removes two SQL files that were used in the test class. One of
those files executed the following query:

`SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"`

Removing this query made the tests inside SubscriberSegmentTest fail
when running the whole integration test suite. To work around this, I
added the above mentioned query to SubscriberSegmentTest. I'm not sure
why this test class fails without this query when running all the tests
but it doesn't when it is executed alone. Probably there is another test
class changing the SQL_MODE. Since SubscriberSegmentTest is a test class
for a Paris model that we will eventually remove, I decided it was not
necessary to investigate this further.

[MAILPOET-4376]
2022-08-15 12:46:22 +02:00
efab3be9ae Remove logic to handle MP2 subscribers when deactivating subscribers
This commit removes the logic that was added in #2045 to handle
subscribers migrated from MP2 when deactivating subscribers. Without it,
MP3 would deactive all subscribers imported from MP2 as the subscribe
date is migrated but the stats are not (see
https://mailpoet.atlassian.net/browse/MAILPOET-2040) for more details.

This code is not necessary anymore as we are removing all the MP2 migration
related code.

[MAILPOET-4376]
2022-08-15 12:46:22 +02:00
98e056bec7 Remove code that checks if the MP2 migration is in progress
[MAILPOET-4376]
2022-08-15 12:46:22 +02:00
9a5fbfbb24 Remove MP2 migration endpoints from the JSON API
[MAILPOET-4376]
2022-08-15 12:46:22 +02:00
d828754f94 Remove MP2 migration admin page
[MAILPOET-4376]
2022-08-15 12:46:22 +02:00
fdbc6ea603 Remove MP2 migration code from the welcome wizard
[MAILPOET-4376]
2022-08-15 12:46:22 +02:00
90ff2db0d1 Fix errors caught by translations code sniff
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
968cbb67d8 Refactor response caching in AuthorizedSenderDomainController
In the previous implementation the getDomainRecords couldn't be used without
calling getAllSenderDomains or getVerifiedSenderDomains upfront.
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
e03e375942 Fix variable names and comments typos
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
d625457174 Add logging of unexpected formats from sender domain endpoints on Bridge API
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
574c1cdd8f Reuse mocked api data in Bridre test case
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
c58c613959 Use WordPress translation functions directly
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
f4346c8957 Add links to sender domains API docs
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
543465d9de Fix indentation in Bridge
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
1642a5477c Use constants and add missing test case in DmarcPolicyCheckerTest
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
e36f105387 Add basic acceptance tests for sender domain verification
These tests test that basic checks works in both settings and send pages.
We can't verify the test domain for acceptance test docker so the tests just check the error state.
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
6411182705 Hide sender domains error when editing sender address
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
1ede10fce6 Update list of popular free ESP domains
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
baea06abf5 Unify loaders size in sender domain/email tabs and render in column
This makes sure that the modal has some reasonable initial size (small column).
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
39b431b7b3 Display correct tab in sender domain/email configuration modal based on clicked link
Previously when both errors were present authorized email tab was always opened no matter what error was clicked.
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
866c22c336 Use common/button component fot copy button
The proprietary button had displaying issues. This commit add props
that enable connection with a tooltip into the common button and replaces
the proprietary button with the common component.
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
de2b0c34b6 Remove unused max_width property from manage_sender_domain
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
838903bc41 Removing protypes from Typescript component
We use only typed props in components written in TS.
[MAILPOER-4302]
2022-08-11 12:36:23 +02:00
aee63444fe Skip DMARC address check when email domain is freemail
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
d389595d72 Prevent triggering domain and authorized email checks when MSS is not active
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
0fe260f605 Refactor sender address errors rendering on send page
Both auht. email error and DMARC check warning were rendered via parsley error.
There was not enough space for both messages to display and also both were rendered
as errors that block sending. But so far we allow sending when the DMARC warning is present.

This commit changes displaying of both error messages so that they are rendered in
a custom component and use the parsley only to mark the input red.
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
67b6d2279f Fetch authorized domains and emails for JS Apps only when MSS is active
This prevents calling bridge API in cases when user use different sending methods.
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
af203ba29e Refactor AuthorizedSenderDomainControllerTest to avoid live api calls
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
d0b1ff3aef Refactor sender domain related bridge integration tests to use mocks
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
fd1ac46207 Fix typo in isDomainDmarcRestricted method name
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
4ffdd5bed5 Add declare(strict_types = 1); to newly added PHP files
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
ccb070c500 Update information provided for tracking
MAILPOET-4302
2022-08-11 12:36:23 +02:00
fcd12b41b5 Update DMARC Status check
Handle edge case for domains where DMARC `p` policy is set to  reject or quarantine but `sp` (subdomain policy) is set to none

The previous implementation will return dmarcStatus === none when
sp is none but will not check for p policy as well.

If the `sp` is reject or quarantine, it would supersede the `p` status

MAILPOET-4302
2022-08-11 12:36:23 +02:00
449fde75a7 Add tracking for authorized email and sender domain
MAILPOET-4302
2022-08-11 12:36:23 +02:00
bbd27a5b3e Update ManageSenderDomain component UI
Add DomainKeyComponent to assist with rendering the input fields
and DomainStatusComponent for rendering the DNS records status

MAILPOET-4302
2022-08-11 12:36:23 +02:00