Commit Graph

5540 Commits

Author SHA1 Message Date
Pavel Dohnal
a84471b65c Save user agent on open
[MAILPOET-3735]
2021-08-18 14:41:20 +02:00
Pavel Dohnal
4f37cde9f9 Create table for user agents
[MAILPOET-3735]
2021-08-18 14:41:20 +02:00
Jan Lysý
a9621875bd Fix phpstan errors from new version
[MAILPOET-3725]
2021-08-16 15:56:39 +02:00
Rodrigo Primo
55dc8ac902 Protect against fatal error when rendering e-mail styles
This commit protects the code that renders styles for e-mails against a
fatal error that could happen if the variable $styles passed to Renderer::renderStyles()
is not an array of arrays. To do that, the code will now check if each value
of the array is an array. If not, we move on to the next value instead of
calling StylesHelper::setStyle(). I also added type hints to
StylesHelper::setStyle() and some of the methods that it calls to make
it more explicit what it expects to receive and what it returns.

[MAILPOET-3731]
2021-08-16 14:36:15 +02:00
Jan Lysý
41a3ac0268 Remove mso condition for include fonts for newsletters editor
[MAILPOET-3468]
2021-08-16 11:44:41 +02:00
Jan Lysý
f6a881da98 Remove redundant important from style
We test stripping redundant from rendered emails. I removed redundant important option.
It is based on this article:
https://www.litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design/

[MAILPOET-3468]
2021-08-16 11:44:41 +02:00
Jan Lysý
dfa0d03a67 Replace incorrect opening mso if in postProcessTemplate
[MAILPOET-3468]
2021-08-16 11:44:41 +02:00
Jan Lysý
75690d7a45 Add non mso condition around button
[MAILPOET-3468]
2021-08-16 11:44:41 +02:00
Jan Lysý
2165baa5ee Fix non mso condition in Menu
[MAILPOET-3468]
2021-08-16 11:44:41 +02:00
Brezo Cordero
44932d27c9 Allow import subscribers with empty IP address
Allow import subscribers with empty confirmed_ip or subscribed_ip when one of the columns is selected in the last step of the import.
Don't allow importing invalid IP addresses - still import the subscriber but remove the invalid IP address.

[MAILPOET-3665]
2021-08-16 10:37:31 +02:00
Jan Lysý
5e1f523c96 Improve code according the review
[MAILPOET-3708]
2021-08-16 10:25:37 +02:00
Jan Lysý
1a2c2746ca Add the subscribers recalculate component on the subscribers listing
[MAILPOET-3708]
2021-08-16 10:25:37 +02:00
Jan Lysý
74dc9fce53 Remove the character "~" from counts
[MAILPOET-3708]
2021-08-16 10:25:37 +02:00
Brezo Cordero
4120839102 Remove unnecessary casting to string on getNamesOfFormsForSegments
[MAILPOET-3661]
2021-08-16 09:42:08 +02:00
Brezo Cordero
b2857cbf40 Refactor code that checks for list deletion with form
Move segment deletion to new function doTrash to avoid calling methods twice on individual segment deletion. Refactor acceptance test.

[MAILPOET-3661]
2021-08-16 09:42:08 +02:00
Brezo Cordero
d9186e4230 Prevent deleting a list if attached to a form
[MAILPOET-3661]
2021-08-16 09:42:08 +02:00
Jan Lysý
6dc0c62640 Fix getting NewsletterExporter instance in PersonalDataExporters
[MAILPOET-3702]
2021-08-11 15:18:58 +02:00
Jan Lysý
7783237203 Use entities instead of old models in link shortcode filter
[MAILPOET-3464]
2021-08-11 14:35:48 +02:00
Jan Lysý
d9f4a3f1d4 Add filter for displaying form on supported post types
[MAILPOET-3639]
2021-08-11 14:26:06 +02:00
Jan Lysý
e468663d15 Add job_listing into supported post types for forms
[MAILPOET-3639]
2021-08-11 14:26:06 +02:00
Rostislav Wolny
35058bca63 Add unsubscribes tracking for WooCommerce checkout
[MAILPOET-3657]
2021-08-09 16:51:27 +02:00
Rostislav Wolny
21c712c930 Fix issues in woocommerce_registration_errors callback
* After this change we will process only registrations without any errors.
* The filter expect that it returns $errors, but the callback was not returning anything. This was under some circumstances causing 500 error.
[MAILPOET-3657]
2021-08-09 16:51:27 +02:00
Rostislav Wolny
3cedca311d Unsubscribe on checkout only when opt-in is checkbox is present
This change unifies behaviour with registration page opt-in checkbox.
[MAILPOET-3657]
2021-08-09 16:51:27 +02:00
Rostislav Wolny
47ef8944f8 Do not set status in sync of registered customer
Subscriber status is already handled when the user is added to
WordPress Users list.
[MAILPOET-3657]
2021-08-09 16:51:27 +02:00
Rostislav Wolny
12c9019939 Mark customers without optin as unsubscribed
[MAILPOET-3657]
2021-08-09 16:51:27 +02:00
Rostislav Wolny
b46335a562 Fix filter for rendering WooCommerce checkou optin
Without the return argument the input is immediately rendered
and the function returns null. The filter than received null
instead of HTML string and the input was already rendered before
the filter was called.
[MAILPOET-3657]
2021-08-09 16:51:27 +02:00
Rodrigo Primo
e59992cc16 Fix checkGenericClassInNonGenericObjectType PHPStan errors
This commit removes the checkGenericClassInNonGenericObjectType flag
from PHPStan configuration files and fixes all associated errors in our
code base.

[MAILPOET-3236]
2021-08-09 12:58:56 +02:00
Rostislav Wolny
c182e953ef Prevent trashing customer users when WP segment is inactive
[MAILPOET-3695]
2021-08-09 12:36:29 +02:00
Brezo Cordero
1909950353 Remove the poll on plugin deactivation
Remove the poll asking for deactivation reasons as we are no longer using the data.

[MAILPOET-3705]
2021-08-09 11:33:14 +02:00
Jan Lysý
19fad073d0 Add cleanup subscribers counts cache
[MAILPOET-3714]
2021-08-09 10:38:37 +02:00
Pavel Dohnal
56e18c151d Encode value before printing it
[MAILPOET-3698]
2021-07-19 13:38:39 +02:00
Jan Lysý
ef1a3072c7 Return zero when sum is null
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
a6dc552cdc Use new controller with subscribers counts
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
ac2a70f39b Create controller for counting subscribers
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
759cea0f97 Add calling API on the click
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
d6e709ff53 Use cache oldest created at in template
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
036f110953 Unify stats queries
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
bd49e73efb Add check that item cache contains created_at
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
fabebcbea6 Add scheduling cache recalculation for admins
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
77c00014ca Create worker for subscribers count calculation
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
40a511c641 Use transient cache for count of subscribers in lists
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
0a3971c045 Create service for transient cache
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Jan Lysý
96c84009b7 Add tilde before subscribers count in selects
[MAILPOET-3646]
2021-07-12 11:51:39 +02:00
Rostislav Wolny
7a3ffa388f Update PHPStan
[MAILPOET-3658]
2021-07-06 13:29:00 +02:00
Rostislav Wolny
65b834a9ff Update renamed NotCamelCaps rule
[MAILPOET-3658]
2021-07-06 13:29:00 +02:00
Rostislav Wolny
94ac913aa3 Update nesbot/carbon
[MAILPOET-3658]
2021-07-06 13:29:00 +02:00
Rostislav Wolny
f77392ade4 Workaround doctrine serialisation issue in integration tests
Doctrine uses a default ProxyClassNameResolver but it is implemented
as an anonymous class and can not be serialised. This commit adds a custom
ProxyClassNameResolver that copies the anonymous one so that we avoid using the
anonymous fallback.
[MAILPOET-3658]
2021-07-06 13:29:00 +02:00
Rostislav Wolny
ff42762f93 Remove custom PDO driver
[MAILPOET-3658]
2021-07-06 13:29:00 +02:00
Rostislav Wolny
8af9b412ad Switch to built in PDO driver
[MAILPOET-3658]
2021-07-06 13:29:00 +02:00
Rostislav Wolny
c9603b76dc Update doctrine packages and fix metadata cache
[MAILPOET-3658]
2021-07-06 13:29:00 +02:00