From 9e8ccd2c17081e70e00295fb8ed88f270d758ca3 Mon Sep 17 00:00:00 2001 From: Pavel Dohnal Date: Thu, 8 Oct 2020 14:47:16 +0200 Subject: [PATCH] Use native array_column [MAILPOET-3173] --- composer.json | 1 - lib-3rd-party/ArrayColumn.php | 80 ------------------- .../NewslettersResponseBuilder.php | 2 - lib/AutomaticEmails/AutomaticEmails.php | 2 - .../Events/PurchasedInCategory.php | 2 - .../WooCommerce/Events/PurchasedProduct.php | 2 - lib/Cron/Workers/Bounce.php | 2 - .../Workers/SendingQueue/SendingQueue.php | 2 - lib/Form/Block/Segment.php | 2 - lib/Listing/ListingRepository.php | 2 - lib/Models/Newsletter.php | 2 - lib/Models/Subscriber.php | 2 - lib/Models/SubscriberCustomField.php | 2 - lib/Newsletter/Links/Links.php | 2 - lib/Newsletter/NewslettersRepository.php | 2 - .../NewsletterTemplatesRepository.php | 2 - lib/Segments/SegmentSubscribersRepository.php | 2 - .../ImportExport/Export/Export.php | 2 - .../ImportExport/Import/Import.php | 2 - .../SubscriberStatisticsRepository.php | 2 - .../SubscriberListingRepository.php | 2 - lib/Tasks/Sending.php | 2 - lib/Tasks/Subscribers/BatchIterator.php | 2 - 23 files changed, 123 deletions(-) delete mode 100644 lib-3rd-party/ArrayColumn.php diff --git a/composer.json b/composer.json index 6d748954f7..882d95a4a8 100644 --- a/composer.json +++ b/composer.json @@ -48,7 +48,6 @@ ], "files": [ "lib/exceptions.php", - "lib-3rd-party/ArrayColumn.php", "vendor-prefixed/symfony/polyfill-ctype/bootstrap.php", "vendor-prefixed/symfony/polyfill-iconv/bootstrap.php", "vendor-prefixed/symfony/polyfill-mbstring/bootstrap.php", diff --git a/lib-3rd-party/ArrayColumn.php b/lib-3rd-party/ArrayColumn.php deleted file mode 100644 index 01786b6c84..0000000000 --- a/lib-3rd-party/ArrayColumn.php +++ /dev/null @@ -1,80 +0,0 @@ - '4']], 'id'))) { - return \array_column($input, $column_key, $index_key); - } - if ($argc < 2) { - trigger_error("array_column() expects at least 2 parameters, {$argc} given", E_USER_WARNING); - return null; - } - if (!is_array($params[0])) { - trigger_error( - 'array_column() expects parameter 1 to be array, ' . gettype($params[0]) . ' given', - E_USER_WARNING - ); - return null; - } - if (!is_int($params[1]) - && !is_float($params[1]) - && !is_string($params[1]) - && $params[1] !== null - && !(is_object($params[1]) && method_exists($params[1], '__toString')) - ) { - trigger_error('array_column(): The column key should be either a string or an integer', E_USER_WARNING); - return false; - } - if (isset($params[2]) - && !is_int($params[2]) - && !is_float($params[2]) - && !is_string($params[2]) - && !(is_object($params[2]) && method_exists($params[2], '__toString')) - ) { - trigger_error('array_column(): The index key should be either a string or an integer', E_USER_WARNING); - return false; - } - $params_input = $params[0]; - $params_column_key = ($params[1] !== null) ? (string)$params[1] : null; - $params_index_key = null; - if (isset($params[2])) { - if (is_float($params[2]) || is_int($params[2])) { - $params_index_key = (int)$params[2]; - } else { - $params_index_key = (string)$params[2]; - } - } - $result_array = []; - foreach ($params_input as $row) { - $key = $value = null; - $key_set = $value_set = false; - if ($params_index_key !== null && array_key_exists($params_index_key, $row)) { - $key_set = true; - $key = (string)$row[$params_index_key]; - } - if ($params_column_key === null) { - $value_set = true; - $value = $row; - } elseif (is_array($row) && array_key_exists($params_column_key, $row)) { - $value_set = true; - $value = $row[$params_column_key]; - } - if ($value_set) { - if ($key_set) { - $result_array[$key] = $value; - } else { - $result_array[] = $value; - } - } - } - return $result_array; -} diff --git a/lib/API/JSON/ResponseBuilders/NewslettersResponseBuilder.php b/lib/API/JSON/ResponseBuilders/NewslettersResponseBuilder.php index 3d2df2eaed..99fc0e4595 100644 --- a/lib/API/JSON/ResponseBuilders/NewslettersResponseBuilder.php +++ b/lib/API/JSON/ResponseBuilders/NewslettersResponseBuilder.php @@ -11,8 +11,6 @@ use MailPoet\Newsletter\Statistics\NewsletterStatisticsRepository; use MailPoet\Newsletter\Url as NewsletterUrl; use MailPoetVendor\Doctrine\ORM\EntityManager; -use function MailPoetVendor\array_column; - class NewslettersResponseBuilder { const DATE_FORMAT = 'Y-m-d H:i:s'; diff --git a/lib/AutomaticEmails/AutomaticEmails.php b/lib/AutomaticEmails/AutomaticEmails.php index d450c0012f..d8723db02b 100644 --- a/lib/AutomaticEmails/AutomaticEmails.php +++ b/lib/AutomaticEmails/AutomaticEmails.php @@ -5,8 +5,6 @@ namespace MailPoet\AutomaticEmails; use MailPoet\WP\Functions as WPFunctions; use MailPoet\WP\Notice; -use function MailPoetVendor\array_column; - class AutomaticEmails { const FILTER_PREFIX = 'mailpoet_automatic_email_'; diff --git a/lib/AutomaticEmails/WooCommerce/Events/PurchasedInCategory.php b/lib/AutomaticEmails/WooCommerce/Events/PurchasedInCategory.php index 4186a91798..47c04db287 100644 --- a/lib/AutomaticEmails/WooCommerce/Events/PurchasedInCategory.php +++ b/lib/AutomaticEmails/WooCommerce/Events/PurchasedInCategory.php @@ -9,8 +9,6 @@ use MailPoet\Newsletter\Scheduler\AutomaticEmailScheduler; use MailPoet\WooCommerce\Helper as WCHelper; use MailPoet\WP\Functions as WPFunctions; -use function MailPoetVendor\array_column; - class PurchasedInCategory { const SLUG = 'woocommerce_product_purchased_in_category'; diff --git a/lib/AutomaticEmails/WooCommerce/Events/PurchasedProduct.php b/lib/AutomaticEmails/WooCommerce/Events/PurchasedProduct.php index 6e09ef314c..bcc844b223 100644 --- a/lib/AutomaticEmails/WooCommerce/Events/PurchasedProduct.php +++ b/lib/AutomaticEmails/WooCommerce/Events/PurchasedProduct.php @@ -9,8 +9,6 @@ use MailPoet\Newsletter\Scheduler\AutomaticEmailScheduler; use MailPoet\WooCommerce\Helper as WCHelper; use MailPoet\WP\Functions as WPFunctions; -use function MailPoetVendor\array_column; - class PurchasedProduct { const SLUG = 'woocommerce_product_purchased'; /** diff --git a/lib/Cron/Workers/Bounce.php b/lib/Cron/Workers/Bounce.php index d30163cfc3..6bcb4829b2 100644 --- a/lib/Cron/Workers/Bounce.php +++ b/lib/Cron/Workers/Bounce.php @@ -13,8 +13,6 @@ use MailPoet\Tasks\Bounce as BounceTask; use MailPoet\Tasks\Subscribers as TaskSubscribers; use MailPoet\Tasks\Subscribers\BatchIterator; -use function MailPoetVendor\array_column; - class Bounce extends SimpleWorker { const TASK_TYPE = 'bounce'; const BATCH_SIZE = 100; diff --git a/lib/Cron/Workers/SendingQueue/SendingQueue.php b/lib/Cron/Workers/SendingQueue/SendingQueue.php index 0a7f0b8357..0c2feda65d 100644 --- a/lib/Cron/Workers/SendingQueue/SendingQueue.php +++ b/lib/Cron/Workers/SendingQueue/SendingQueue.php @@ -23,8 +23,6 @@ use MailPoet\Tasks\Subscribers\BatchIterator; use MailPoet\WP\Functions as WPFunctions; use MailPoetVendor\Carbon\Carbon; -use function MailPoetVendor\array_column; - class SendingQueue { public $mailerTask; public $newsletterTask; diff --git a/lib/Form/Block/Segment.php b/lib/Form/Block/Segment.php index 878a139706..a048f3ef92 100644 --- a/lib/Form/Block/Segment.php +++ b/lib/Form/Block/Segment.php @@ -6,8 +6,6 @@ use MailPoet\Form\BlockWrapperRenderer; use MailPoet\Segments\SegmentsRepository; use MailPoet\WP\Functions as WPFunctions; -use function MailPoetVendor\array_column; - class Segment { /** @var BlockRendererHelper */ diff --git a/lib/Listing/ListingRepository.php b/lib/Listing/ListingRepository.php index b8e13157a1..4e308e9b0f 100644 --- a/lib/Listing/ListingRepository.php +++ b/lib/Listing/ListingRepository.php @@ -6,8 +6,6 @@ use MailPoet\Util\Helpers; use MailPoetVendor\Doctrine\ORM\EntityManager; use MailPoetVendor\Doctrine\ORM\QueryBuilder; -use function MailPoetVendor\array_column; - abstract class ListingRepository { /** @var QueryBuilder */ protected $queryBuilder; diff --git a/lib/Models/Newsletter.php b/lib/Models/Newsletter.php index d0aa34f7e9..3f42d9b26f 100644 --- a/lib/Models/Newsletter.php +++ b/lib/Models/Newsletter.php @@ -11,8 +11,6 @@ use MailPoet\Util\Helpers; use MailPoet\Util\Security; use MailPoet\WP\Functions as WPFunctions; -use function MailPoetVendor\array_column; - /** * @property int $id * @property int $parentId diff --git a/lib/Models/Subscriber.php b/lib/Models/Subscriber.php index 47ec2daa66..aa9fd265f6 100644 --- a/lib/Models/Subscriber.php +++ b/lib/Models/Subscriber.php @@ -8,8 +8,6 @@ use MailPoet\Util\Helpers; use MailPoet\Util\Security; use MailPoet\WP\Functions as WPFunctions; -use function MailPoetVendor\array_column; - /** * @property int $id * @property string $email diff --git a/lib/Models/SubscriberCustomField.php b/lib/Models/SubscriberCustomField.php index 5fd72408d9..69ffa46d57 100644 --- a/lib/Models/SubscriberCustomField.php +++ b/lib/Models/SubscriberCustomField.php @@ -4,8 +4,6 @@ namespace MailPoet\Models; use MailPoet\Util\Helpers; -use function MailPoetVendor\array_column; - /** * @property int $subscriberId * @property int $customFieldId diff --git a/lib/Newsletter/Links/Links.php b/lib/Newsletter/Links/Links.php index 520e55301a..939536c8cf 100644 --- a/lib/Newsletter/Links/Links.php +++ b/lib/Newsletter/Links/Links.php @@ -13,8 +13,6 @@ use MailPoet\Util\Helpers; use MailPoet\Util\pQuery\pQuery as DomParser; use MailPoet\Util\Security; -use function MailPoetVendor\array_column; - class Links { const DATA_TAG_CLICK = '[mailpoet_click_data]'; const DATA_TAG_OPEN = '[mailpoet_open_data]'; diff --git a/lib/Newsletter/NewslettersRepository.php b/lib/Newsletter/NewslettersRepository.php index ad786b2ee3..02af6644f5 100644 --- a/lib/Newsletter/NewslettersRepository.php +++ b/lib/Newsletter/NewslettersRepository.php @@ -28,8 +28,6 @@ use MailPoetVendor\Doctrine\DBAL\Connection; use MailPoetVendor\Doctrine\ORM\EntityManager; use MailPoetVendor\Doctrine\ORM\Query\Expr\Join; -use function MailPoetVendor\array_column; - /** * @extends Repository */ diff --git a/lib/NewsletterTemplates/NewsletterTemplatesRepository.php b/lib/NewsletterTemplates/NewsletterTemplatesRepository.php index 063187130b..73847a4575 100644 --- a/lib/NewsletterTemplates/NewsletterTemplatesRepository.php +++ b/lib/NewsletterTemplates/NewsletterTemplatesRepository.php @@ -6,8 +6,6 @@ use MailPoet\Doctrine\Repository; use MailPoet\Entities\NewsletterEntity; use MailPoet\Entities\NewsletterTemplateEntity; -use function MailPoetVendor\array_column; - /** * @extends Repository */ diff --git a/lib/Segments/SegmentSubscribersRepository.php b/lib/Segments/SegmentSubscribersRepository.php index ae5c553ff3..c62219ff29 100644 --- a/lib/Segments/SegmentSubscribersRepository.php +++ b/lib/Segments/SegmentSubscribersRepository.php @@ -13,8 +13,6 @@ use MailPoetVendor\Doctrine\DBAL\Driver\Statement; use MailPoetVendor\Doctrine\DBAL\Query\QueryBuilder; use MailPoetVendor\Doctrine\ORM\EntityManager; -use function MailPoetVendor\array_column; - class SegmentSubscribersRepository { /** @var EntityManager */ private $entityManager; diff --git a/lib/Subscribers/ImportExport/Export/Export.php b/lib/Subscribers/ImportExport/Export/Export.php index 61f55d8aa6..2598b5f4c0 100644 --- a/lib/Subscribers/ImportExport/Export/Export.php +++ b/lib/Subscribers/ImportExport/Export/Export.php @@ -9,8 +9,6 @@ use MailPoet\Util\Security; use MailPoet\WP\Functions as WPFunctions; use MailPoetVendor\XLSXWriter; -use function MailPoetVendor\array_column; - class Export { const SUBSCRIBER_BATCH_SIZE = 15000; diff --git a/lib/Subscribers/ImportExport/Import/Import.php b/lib/Subscribers/ImportExport/Import/Import.php index 73f48cfa85..82a5e949e5 100644 --- a/lib/Subscribers/ImportExport/Import/Import.php +++ b/lib/Subscribers/ImportExport/Import/Import.php @@ -16,8 +16,6 @@ use MailPoet\Util\Security; use MailPoet\WP\Functions as WPFunctions; use MailPoetVendor\Carbon\Carbon; -use function MailPoetVendor\array_column; - class Import { public $subscribersData; public $segmentsIds; diff --git a/lib/Subscribers/Statistics/SubscriberStatisticsRepository.php b/lib/Subscribers/Statistics/SubscriberStatisticsRepository.php index 9c288d4da6..265f5f08ce 100644 --- a/lib/Subscribers/Statistics/SubscriberStatisticsRepository.php +++ b/lib/Subscribers/Statistics/SubscriberStatisticsRepository.php @@ -12,8 +12,6 @@ use MailPoet\Newsletter\Statistics\WooCommerceRevenue; use MailPoet\WooCommerce\Helper as WCHelper; use MailPoetVendor\Doctrine\ORM\EntityManager; -use function MailPoetVendor\array_column; - /** * @extends Repository */ diff --git a/lib/Subscribers/SubscriberListingRepository.php b/lib/Subscribers/SubscriberListingRepository.php index bb80e85fb9..e959e8d3e1 100644 --- a/lib/Subscribers/SubscriberListingRepository.php +++ b/lib/Subscribers/SubscriberListingRepository.php @@ -15,8 +15,6 @@ use MailPoetVendor\Doctrine\ORM\EntityManager; use MailPoetVendor\Doctrine\ORM\Query\Expr\Join; use MailPoetVendor\Doctrine\ORM\QueryBuilder; -use function MailPoetVendor\array_column; - class SubscriberListingRepository extends ListingRepository { const DEFAULT_SORT_BY = 'createdAt'; diff --git a/lib/Tasks/Sending.php b/lib/Tasks/Sending.php index bed381e7da..60b1308287 100644 --- a/lib/Tasks/Sending.php +++ b/lib/Tasks/Sending.php @@ -9,8 +9,6 @@ use MailPoet\Util\Helpers; use MailPoet\WP\Functions as WPFunctions; use MailPoetVendor\Carbon\Carbon; -use function MailPoetVendor\array_column; - /** * A facade class containing all necessary models to work with a sending queue * @property string|null $status diff --git a/lib/Tasks/Subscribers/BatchIterator.php b/lib/Tasks/Subscribers/BatchIterator.php index 97c0bdf40c..020580323d 100644 --- a/lib/Tasks/Subscribers/BatchIterator.php +++ b/lib/Tasks/Subscribers/BatchIterator.php @@ -4,8 +4,6 @@ namespace MailPoet\Tasks\Subscribers; use MailPoet\Models\ScheduledTaskSubscriber; -use function MailPoetVendor\array_column; - class BatchIterator implements \Iterator, \Countable { private $taskId; private $batchSize;