Commit Graph

45 Commits

Author SHA1 Message Date
Rodrigo Primo
3d31f1f030 Fix PHPStan callback error introduced after update to version 0.12.83
This commit fixes the following PHPStan errors introduced after the
update to version 0.12.83:

```
 ------ ----------------------------------------------------------------------
  Line   lib/Listing/Handler.php
 ------ ----------------------------------------------------------------------
  18     Parameter #1 $callback of function call_user_func_array expects
         callable(): mixed, array(class-string|object, 'listingQuery') given.
  45     Parameter #1 $callback of function call_user_func_array expects
         callable(): mixed, array(class-string|object, 'groups') given.
  54     Parameter #1 $callback of function call_user_func_array expects
         callable(): mixed, array(class-string|object, 'filters') given.
  62     Parameter #1 $callback of function call_user_func_array expects
         callable(): mixed, array(class-string|object, 'listingQuery') given.
 ------ ----------------------------------------------------------------------
```

It was necessary to use both is_callable() and method_exists() instead
of just is_callable(), as a parent class of the model classes implements
__call() and thus is_callable() always returns true even when the
method doesn't exist (and in those cases method_exists() returns false).

[MAILPOET-3491]
2021-04-12 08:55:14 +02:00
Rostislav Wolny
8a78322854 Refactor resolving actionable bulk action ids to listing repository
[MAILPOET-2898]
2020-06-17 14:37:06 +02:00
Jan Jakeš
fe16dd3ccc Add ListingDefinition value object and its factory
[MAILPOET-2645]
2020-03-11 17:06:02 +00:00
Jan Jakeš
54549ff037 Convert variable names to camel case
[MAILPOET-1796]
2020-01-14 15:22:42 +01:00
Amine Ben hammou
43df66d162 Add public keyword to methods
[MAILPOET-2413]
2019-12-26 18:09:45 +03:00
Jan Jakeš
5c212e7483 Add Paris to MailPoetVendor namespace
[MAILPOET-2545]
2019-11-27 12:38:20 +00:00
Jan Jakeš
1b5b9d89ff Autofix namespace declaration spacing
[MAILPOET-2409]
2019-10-01 14:29:30 +01:00
Jan Jakeš
01a0fe96c4 Remove no longer necessary checks
[MAILPOET-1948]
2019-09-12 13:59:32 +02:00
Rostislav Wolny
ed9f0aa294 Refactor Menu::getLimitPerPage to a service
[MAILPOET-2200]
2019-07-22 09:13:39 -04:00
Pavel Dohnal
5d64ec168d Add rule for concatenation operator spacing
[MAILPOET-2090]
2019-05-20 10:18:45 -04:00
Pavel Dohnal
5da7110eb6 Use short array syntax
[MAILPOET-2090]
2019-05-20 10:18:45 -04:00
Pavel Dohnal
b9af15e19f Enforce array trailling commas
[MAILPOET-2090]
2019-05-20 10:18:45 -04:00
Ján Mikláš
3ee58aea10 Add space between if and ‘(‘
[MAILPOET-1791]
2019-02-13 08:26:27 -05:00
Rostislav Wolny
a69ae0eea7 Refactor listing handler to reusable service
[MAILPOET-1689]
2018-12-17 15:02:42 +01:00
Jonathan Labreuille
40ca54c447 sort by defaults to 'id' if invalid 2016-11-02 11:17:27 +01:00
Jonathan Labreuille
f4563e18cd use filter_var instead of regex 2016-10-31 17:36:53 +01:00
Jonathan Labreuille
feaac5eb54 constrain sort_by to alphanumeric/underscore in order to avoid xss in error notices 2016-10-31 17:36:53 +01:00
Jonathan Labreuille
542015a4f6 Improved removal of useless files in vendor folder during build process
- moved sort_order constraining logic to Listing handler's construct
2016-10-10 14:52:09 +02:00
Jonathan Labreuille
a3395e41c9 fixes issue #632 2016-10-06 09:25:09 +02:00
Jonathan Labreuille
0c5589a3e3 Listing method update for Newsletters/Forms/Segments/Subscribers
- updated unit tests
2016-09-12 15:57:16 +02:00
Jonathan Labreuille
ef0cbb3e9f Added "params" to the $data in Listing Handler
- moved "tab" to params
- improved url generation in listing.jsx to allow more flexibility
- added "parent_id" filter in newsletter model to get children of a given newsletter id
2016-07-18 16:01:47 +02:00
Jonathan Labreuille
f5552847a3 Added parent_id to Newsletters table
- added NOTIFICATION_HISTORY Newsletter's type
- implement basic UI for notification_history
- TODO: implement passing extra parameters in order to handle the :id part
2016-07-18 16:01:47 +02:00
Jonathan Labreuille
264b7e180b listing handler and bulk actions tests completed 2016-06-22 13:47:54 +02:00
Jonathan Labreuille
68c09b8678 Sorting for all listings & bugfixes for all listings except Newsletters
- newsletters listing now uses hash history
- newsletters are sorted by Subject (a->z)
- segments are sorted by Name (a->z)
- re-added WordPress Users list as a segment you can send a newsletter to
- added explicit error messages when an auto newsletter isn't fully configured
- added missing strings for "selectAll" in Segments listing
- fixed filters() in Subscribers listing (wrong count as it was not taking groups/filters/search into account)
2016-06-20 16:23:27 +02:00
Jonathan Labreuille
7af2775972 Allowed ability to set default sort_by/order on listings
- improved performance of listings (less refresh of items)
- fixed sorting issue where the order would not be reversed
2016-06-17 17:27:40 +02:00
Jonathan Labreuille
a593347336 call groups/filters only if Model has defined those methods 2016-06-15 16:15:02 +02:00
Jonathan Labreuille
c959e7ec96 fixed total count and filtering + basic tab implementation in React 2016-06-15 16:14:06 +02:00
Jonathan Labreuille
86a2846215 Tab system for listings 2016-06-15 16:14:06 +02:00
Jonathan Labreuille
3b97a26a8a Newsletters multi-listing 2016-06-15 16:14:06 +02:00
Jonathan Labreuille
cf6466197a Fixed Subscribers' bulk actions when filtering by a segment
- filter by segment is now affected by the selected group (all, trash,...)
- updated relationship methods between subscribers & segments (to account for subsegment status)
2016-02-29 13:34:17 +01:00
Jonathan Labreuille
07d533a810 Manage subscriptions
- make use of the SubscriberSegment::status column to keep track of unsubscriptions
- unsubscribed segments now appear grayed out in the Subscribers listing
- added unsubscribed_at after segment names when editing a subscriber
- added date() method for Twig (uses WP's date format / date_offset)
- fixed typo in Form iframe export
- fixed unit test for Newsletters
- updated selection component (JSX) to allow more customization
2016-02-22 11:35:34 +01:00
Jonathan Labreuille
9b1503dc7a Fixed reported issues + refactoring
- refactored Config/Hooks to make it more readable
- added hook to save limit per page
- added default limit per page as a constant in Listing/Handler
2016-02-16 16:33:20 +01:00
Jonathan Labreuille
a4cf2f9c76 Major refactoring of listing/router/model relation
- updated Subscribers listing
- udpated Segments listing
- added Forms router
2015-10-29 15:30:24 +01:00
Jonathan Labreuille
13dc3577f1 lotta fixes for filtering + listing 2015-10-26 18:23:32 +01:00
Jonathan Labreuille
3b4c5c83e1 added segment stats in listing 2015-10-22 20:40:46 +02:00
Jonathan Labreuille
056e79eeac bugfix 2015-10-22 19:24:58 +02:00
Jonathan Labreuille
4bde705f04 listing modifications + added description to segments 2015-10-22 19:19:40 +02:00
Jonathan Labreuille
5e5008472c added last bulk actions messages 2015-10-22 15:26:31 +02:00
Jonathan Labreuille
d4bfb49415 Listing fixes
- fixed bulk actions
- fixed paging behavior
- fixed filtering issues
2015-10-21 12:56:24 +02:00
Jonathan Labreuille
ecb522955b Newsletter Segment relation
- added newsletter_segment table
- added NewsletterSegment model
- added list filter on newsletters listing
- unit tests
2015-10-06 11:13:38 +02:00
Jonathan Labreuille
c15359f1b4 Listing filters 2015-10-06 10:00:18 +02:00
Jonathan Labreuille
239e2583d2 refactored bulk actions & implemented bulk trash for all listings 2015-09-18 17:39:25 +02:00
Jonathan Labreuille
cbcd614b6f implemented all bulk actions for Subscribers 2015-09-16 19:44:46 +02:00
Jonathan Labreuille
a40cdcb20c Migration fix + removed model instantiation in Listing handler 2015-09-03 11:14:38 +02:00
Jonathan Labreuille
3fe895a7fe Listing Handler
- added a Listing Handler class to take care of listing params
- added status column to Subscriber
- added specific methods to both Newsletter & Subscriber models for listing
2015-09-02 14:47:18 +02:00