alex-mpoet
8a506e7278
Show merged opens if respective setting is set
...
[MAILPOET-6164]
2024-08-22 14:11:26 +02:00
Rostislav Wolny
33f4b2d729
Replace usage of WP's current_time without gmt parameter in libs
...
This commit replaces usages by Carbon::now or in case we need a timestamp it
keeps current_time but adds the gtm parameter as true.
[MAILPOET-6142]
2024-08-19 15:29:42 +02:00
Jan Jakes
ff6a98fae1
Replace deprecated array types with Doctrine's ArrayParameterType
...
[MAILPOET-6142]
2024-08-19 15:29:42 +02:00
Jan Jakes
c7dc7e5a24
Replace PDO types with Doctrine's ParameterType
...
[MAILPOET-6142]
2024-08-19 15:29:42 +02:00
Jan Jakes
71d7f46718
Make captcha session stateless
...
[MAILPOET-6038]
2024-08-05 13:28:52 +02:00
Ján Mikláš
a7012e44cc
Trigger "tag added" automation when tag is added via form
...
[MAILPOET-6128]
2024-06-26 09:42:13 +02:00
Oluwaseun Olorunsola
5789a61075
Update ListingRepository::applySearch abstract function to reflect new updates
...
MAILPOET-6072
2024-06-20 13:31:46 +02:00
Jan Lysý
e998e1f28f
Add a comment why we need to remove the colon character
...
[MAILPOET-6101]
2024-06-17 12:38:08 +02:00
Jan Lysý
26a98f1000
Update composer package doctrine/dbal
...
We cannot update to the latest version of the dbal 3 because there is a another package conflict.
[MAILPOET-6101]
2024-06-17 12:38:08 +02:00
Ján Mikláš
057f25c119
Don't allow importing to WordPress Users list
...
[MAILPOET-3977]
2024-06-12 12:13:37 +02:00
Jan Jakes
f5cc42d2e3
Trigger "mailpoet_segment_subscribed" hook when globally subscribed via admin
...
[MAILPOET-5992]
2024-04-22 10:16:19 +02:00
Jan Lysý
423ce62100
Add lastSubscribedAt to the subscribers API response
...
[MAILPOET-5894]
2024-03-22 11:09:42 +01:00
Mike Jolley
435f638011
Apply rules on lib dir
2024-03-21 16:57:59 +01:00
alex-mpoet
15b0846f34
Leave on-save email validation only in SubscriberSaveController
...
[MAILPOET-5878]
2024-03-15 15:29:36 +01:00
Jan Jakes
51a14a45d3
Use refreshAll() for updates, refresh subscribers/subscriber custom fields conditionally
...
[MAILPOET-5752]
2024-02-12 15:33:28 +01:00
alex-mpoet
014b8249bb
Replace entityManager->clear with a helper, add cleanup to WP user sync
...
[MAILPOET-5752]
2024-02-12 15:33:28 +01:00
Rodrigo Primo
f0434d74e7
Ensure Doctrine entity cache is cleared after changing the database
...
ImportExportRepository::updateMultiple() changes subscribers by running
MySQL queries directly. Now that \MailPoet\Segments\WP uses Doctrine as
well this was causing a bug caught by our integration tests.
```
MailPoet\Subscribers\ImportExport\Import\ImportTest::testItSynchronizesWpUsers
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'mary'
+'Mary'
/wp-core/wp-content/plugins/mailpoet/tests/integration/Subscribers/ImportExport/Import/ImportTest.php:719
```
https://app.circleci.com/pipelines/github/mailpoet/mailpoet/16386/workflows/c3fa0cf4-a77d-41ab-a5cc-78d4b37d9228/jobs/278066/tests#failed-test-0
This test was failing because the Doctrine entities were not updated
after the import process ran and modified the subscribers directly in
the database. Running EntityManager::clear() after importing the
subscribers, forces Doctrine to query the database again to update the
entities and prevents this bug.
[MAILPOET-5752]
2024-02-12 15:33:28 +01:00
Rodrigo Primo
6f98634b94
Replace Subscriber and SubscriberSegment models with Doctrine in \MailPoet\Segments\WP
...
[MAILPOET-5752]
2024-02-12 15:33:28 +01:00
Rodrigo Primo
374fbe6867
Replace Segment model with Doctrine in \MailPoet\Segments\WP
...
[MAILPOET-5752]
2024-02-12 15:33:28 +01:00
alex-mpoet
5824905f18
Independently update existing subscribers info and status in import
...
[MAILPOET-5617]
2024-02-05 12:54:02 +01:00
Jan Lysý
525c80bac4
Fix PHPStan warnings in lib
...
[MAILPOET-5751]
2023-12-13 11:48:14 +01:00
David Remer
a1e59d5f31
Fix bug: Ensure data['tags'] is normalized
...
[MAILPOET-5515]
2023-10-09 10:06:56 +02:00
David Remer
f963332506
Fire mailpoet_subscriber_tag_removed after repository flush
...
[MAILPOET-5515]
2023-10-09 10:06:56 +02:00
David Remer
c93b433b93
Fire mailpoet_subscriber_tag_added hook after flush()
...
[MAILPOET-5515]
2023-10-09 10:06:56 +02:00
David Remer
47fea46dc4
Add tag added and removed actions
...
[MAILPOET-5515]
2023-10-09 10:06:56 +02:00
Jan Jakes
e2cf884b98
Add missing ContainerWrapper return type, fix reported errors
...
[MAILPOET-5569]
2023-09-20 02:36:40 -07:00
David Remer
84faac8257
Apply revenue_status in subscriber stats
...
[MAILPOET-5485]
2023-09-11 12:14:33 +02:00
David Remer
974559876b
Add comments
...
[MAILPOET-5555]
2023-09-06 14:45:45 +02:00
David Remer
79999f53c3
Fix formatting
...
[MAILPOET-5555]
2023-09-06 14:45:45 +02:00
David Remer
ce4f19bd77
Do not resubscribe subscribers unnecessarily
...
[MAILPOET-5555]
2023-09-06 14:45:45 +02:00
David Remer
8170391731
Add primary key to inactive_task_ids and inactive_subscriber_ids table
...
[MAILPOET-4401]
2023-09-04 14:22:16 +02:00
John Oleksowicz
2987c61d77
Filter click stats by newsletter send time
...
MAILPOET-5508
2023-08-31 13:17:34 +02:00
John Oleksowicz
3b407d7060
Base open stats on emails sent in the same period
...
MAILPOET-5508
2023-08-31 13:17:34 +02:00
John Oleksowicz
06df45bb55
Refactor subscriber stats to accept startTime param
...
MAILPOET-5508
2023-08-31 13:17:34 +02:00
David Remer
76c299c3d7
Remove global count methods.
...
In the previous commit, we removed the global count for our output. This commit removes
the logic as the only places where it was used was in recalculating the cache and since
the last commit, we do not use this value anymore
[MAILPOET-4487]
2023-08-18 13:35:13 +02:00
David Remer
6dd0c844ca
Take also list specific status into account when counting subscribers
...
[MAILPOET-4487]
2023-08-18 13:35:13 +02:00
David Remer
ec987b133d
Categorize (un)subscribed users of a list correctly
...
To evaluate whether a user is subscribed to a list or unsubscribed you need to take into account
the status of the current subscription and not only the global status. To be unsubscribed you are
either globally or per list unsubscribed. To be subscribed you need to be globally and per list
subscribed
[MAILPOET-4487]
2023-08-18 13:35:13 +02:00
John Oleksowicz
327f78b902
Remove unused and unhelpful return value
...
MAILPOET-5410
2023-08-11 16:39:57 +02:00
John Oleksowicz
f0f24552f0
Update woo revenue stats to only look at past year
...
MAILPOET-5410
2023-08-11 16:39:57 +02:00
John Oleksowicz
62ac4d5e27
Make stats consistent with engagement score
...
This makes SubscriberStatisticsRepository the source of truth for
engagement score data instead of having separate queries.
As part of this change, we will now only be displaying the last year's
worth of data when viewing a report for an individual subscriber.
It also updates engagement score calculation to only count human opens,
not machine opens.
MAILPOET-5410
2023-08-11 16:39:57 +02:00
John Oleksowicz
3ec4505445
Add bulk update engagement score updated at method
...
MAILPOET-5410
2023-08-11 16:39:57 +02:00
Jan Lysý
577a82ca49
Add bulk action for removing tag from subscribers
...
[MAILPOET-5454]
2023-07-13 13:12:56 +02:00
Jan Lysý
aa12fd57d7
Add bulk action for tagging subscribers
...
[MAILPOET-5454]
2023-07-13 13:12:56 +02:00
John Oleksowicz
64a92c259d
Add clarifying comment
...
MAILPOET-5404
2023-07-12 15:48:03 +02:00
John Oleksowicz
fc410c2154
Make sure lastProcessedSubscriberId is always correct
...
MAILPOET-5404
2023-07-12 15:48:03 +02:00
John Oleksowicz
25cbba1246
Use order by id for query
...
MAILPOET-5404
2023-07-12 15:48:03 +02:00
John Oleksowicz
73eae47a39
Add cron worker for backfilling engagement data
...
MAILPOET-5404
2023-07-12 15:48:03 +02:00
John Oleksowicz
8bf3eddf09
Return cached item for homepage stats
...
MAILPOET-5439
2023-07-10 11:04:33 +02:00
John Oleksowicz
b22217420f
Track last sending at
...
MAILPOET-4998
2023-06-22 15:29:22 +02:00
John Oleksowicz
0e9b96d0b7
Track opens, clicks, purchases, and page views
...
MAILPOET-4998
2023-06-22 15:29:22 +02:00