Example #1
0
 /**
  * @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', '.');
     }
 }