/** * @param Template $template * @param Product[] $products */ protected static function endGroupProducts(Template $template, array $products) { $api = Client::instance($template); $names = array_map(function (Product $product) { return htmlspecialchars($product->original_title); }, $products); fn_set_progress('echo', __('ebay_end_products', array('[product]' => implode('", "', $names))), false); $result = $api->endItems($products); if ($result) { foreach ($products as $product) { $productResult = $result->getItem($product->id); if ($productResult) { if ($productResult->isSuccess()) { static::$count_success++; $product->setStatusClosed(); ProductLogger::info(ProductLogger::ACTION_END_PRODUCT, $product, __('ebay_success_close_product_notice')); } else { static::$count_fail++; } static::checkResponse($product, $productResult, ProductLogger::ACTION_END_PRODUCT); } } } else { static::checkInternalErrors($products, $api, ProductLogger::ACTION_END_PRODUCT); } foreach ($products as $product) { fn_set_progress('echo', '.'); } }