Commit Graph

88 Commits

Author SHA1 Message Date
ada346f4ef Add logging to php error log
[MAILPOET-4104]
2023-01-09 15:23:48 +01:00
b0ab2f404f Add logging errors to the log table
[MAILPOET-4104]
2023-01-09 15:23:48 +01:00
5802f2132d Use badRequest method instead of throwing an InvalidState exception
[PREMIUM-213]
2022-12-16 14:11:34 +01:00
8e502e5f50 Rename save method to create
[PREMIUM-213]
2022-12-16 14:11:34 +01:00
0187f0cede change date keys
[PREMIUM-213]
2022-12-16 14:11:34 +01:00
5b93b88f46 Add Tags endpoint
[PREMIUM-213]
2022-12-16 14:11:34 +01:00
210c240aab Update ConfirmationEmailMailer to support custom confirmation email created with the email editor from template
Setup confirmation email customizer in ConfirmationEmailMailer and trigger confirmation email template creation when visual subscription confirmation emails is enabled from settings

MAILPOET-4649
2022-12-15 18:15:01 +01:00
53dda33c02 Update method and constant name
MAILPOET-4760
2022-12-05 10:25:28 +01:00
9b9f61bf13 Only queue test mail for sending when the mailpoet sending method is updated
MAILPOET-4760
2022-12-05 10:25:28 +01:00
0bd627d3b1 Add support for checking misconfiguration of the PHP mail function
Some hosts do perform intentional misconfiguration of the mail function, causing it not to work.

When the mail function is misconfigured, we can still access and execute the mail function from within the codebase, but we get an error.

There’s no accurate way to know the PHP mail function is misconfigured. Unless we execute the function with all the proper parameters and check the exception error message against this error `Could not instantiate mail function.`

MAILPOET-4760
2022-12-05 10:25:28 +01:00
926620e8f8 Ignore strict types rule in all existing files that don't have it
[MAILPOET-2688]
2022-11-29 15:04:09 +01:00
c67c58709b Unify spacing of declare statements
[MAILPOET-2688]
2022-11-29 15:04:09 +01:00
37067dff67 Add state to MSS key check response
[MAILPOET-4641]
2022-11-28 14:12:50 +01:00
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
8b922681b6 Use boolean instead of integer for displayInManageSubscriptionPage column
MAILPOET-4669
2022-11-21 15:21:29 +01:00
48181994d8 Handle saving and loading list page. Add support for showInManageSubscriptionPage checkbox input
MAILPOET-4669
2022-11-21 15:21:29 +01:00
db94ec52e6 Acknowledge error code 403 with a different message
When recieving error code 403 from the Bridge, it's treated
as success but with with different message

[MAILPOET-4464]
2022-10-17 12:15:07 +02:00
f1b59173dd Add filters into newsletter response
[MAILPOET-4583]
2022-10-05 14:14:34 +02:00
7e6f708df8 Create tags when do not exist
[MAILPOET-4557]
2022-09-28 11:42:51 +02:00
d50aee988e Extract logic to get email domain to Helpers class
MAILPOET-4601
2022-09-26 11:13:40 +02:00
a006701d78 PR feedback: add type hints, create new methods and save on extra api request
MAILPOET-4601
2022-09-26 11:13:40 +02:00
5bcb80d2a0 Allow Congratulatory Mss Email with any email from verified domains
MAILPOET-4601
2022-09-26 11:13:40 +02:00
bd7da6b28c Allow user send with any email address from verified domain
MAILPOET-4601
2022-09-26 11:13:40 +02:00
5c57dd2006 Add saving tags for imported subscribers
[MAILPOET-4558]
2022-09-15 11:26:10 +02:00
c601aaa3eb Autofix issues detected by CodeSniffer
[MAILPOET-4617]
2022-09-06 17:38:01 +02:00
9a5fbfbb24 Remove MP2 migration endpoints from the JSON API
[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
e03e375942 Fix variable names and comments typos
[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
fd1ac46207 Fix typo in isDomainDmarcRestricted method name
[MAILPOET-4302]
2022-08-11 12:36:23 +02:00
847d199352 Implement the Manage Sender Domain component and
The AuthorizeSenderDomainModal

MAILPOET-4302
2022-08-11 12:36:23 +02:00
5c3a9fe9b2 Add API methods for creating and verifying sender domains
We also included an API method for fetching Sender Domains

MAILPOET-4302
2022-08-11 12:36:23 +02:00
9e5f1d0ff0 Implement Show sender domain warning for settings
This would show the sender domain warning message for
domains that are not verified and have a Retricted DMARC Policy

MAILPOET-4302
2022-08-11 12:36:23 +02:00
76048224d1 Fix WordPress.WP.I18n.NonSingularStringLiteralText errors
[MAILPOET-4524]
2022-08-09 13:23:16 +02:00
218de96024 Fix WordPress.WP.I18n.MissingTranslatorsComment errors
[MAILPOET-4524]
2022-08-09 13:23:16 +02:00
b05e6d414c Remove WP\Functions::__ and other translate functions
Under the new sniffer rules, those functions produce errors and, when those methods
are used, the sniffer can not properly be applied.

[MAILPOET-4524]
2022-08-09 13:23:16 +02:00
98d9952a44 Fix prefetching subscriber relations
[MAILPOET-4501]
2022-08-08 10:57:42 +02:00
d3e2bcdf34 Refactor daemon trigger and daemon run actions to extra classes
[MAILPOET-4274]
2022-08-03 10:36:57 +02:00
eedc18bb7f Trigger action scheduler runner immediately when starting sending
When users click send email in UI, they need to wait a minute or more to
see some emails started going out.

This commit adds additional trigger into sending queue API.
If emails is set to send it triggers Action Scheduler immediately.
Users will get immediate feedback that emails are sending.
[MAILPOET-4274]
2022-08-03 10:36:57 +02:00
bd3b4f1e93 Remove Newsletter model usages
[MAILPOET-4361]
2022-07-18 16:47:48 +02:00
5d8b721a52 Annotate return type and use consistent return data
MAILPOET-4300
2022-07-18 12:53:49 +02:00
ee70d2dd1e Implement polling and reconfirmation
This will poll the server every certain interval (15s) for the email address
and stop polling if the email is Authorized or the modal is closed or after a certain period of time (2 hours)

MAILPOET-4300
2022-07-18 12:53:49 +02:00
1fda60bfea Implement API endpoints
MAILPOET-4300
2022-07-18 12:53:49 +02:00
e8b94761e5 Add tags into listing response
[MAILPOET-4441]
2022-07-14 10:37:49 +02:00
a4b45368de Add loading tags into subscriber edit form
[MAILPOET-4440]
2022-07-12 13:35:00 +02:00
3d1365595b Remove catch block and change quotes
Remove catch block to log unexpected exceptions and change quotes for consistency on error message.

[MAILPOET-4259]
2022-06-06 11:59:27 +02:00
53b9f79e65 Catch the correct Exception when creating a list on import
This is not part of this issue but found it when looking at the Exception types.

[MAILPOET-4259]
2022-06-06 11:59:27 +02:00
2e5e8e808f Verify that new email is unique when editing a subscriber
Throws an exception with information message if email already exists.

[MAILPOET-4259]
2022-06-06 11:59:27 +02:00
5ab04b8b22 Remove usage constant from the old model
[MAILPOET-4338]
2022-05-19 14:18:06 +02:00
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