/**
  * @param $item
  * @param $product
  */
 public function addPictures($item, Product $product)
 {
     $result = [];
     foreach ($product->getPictures() as $pictureUrl) {
         $result[] = $pictureUrl;
     }
     if (count($result) > 0) {
         $item->PictureDetails = new PictureDetailsType();
         $item->PictureDetails->GalleryType = GalleryTypeCodeType::C_GALLERY;
         $item->PictureDetails->PictureURL = $result;
     }
 }
 /**
  * @param $eBayProduct
  * @param Product $product
  * @return bool
  */
 private function hasChanged($eBayProduct, Product $product)
 {
     $ebayTitle = $eBayProduct->Title;
     $currentTitle = $product->getTitle();
     if ($ebayTitle != $currentTitle) {
         return true;
     }
     $ebayDescription = htmlentities($eBayProduct->Description);
     $currentDescription = $product->getDescription();
     if ($ebayDescription != $currentDescription) {
         return true;
     }
     $currentBrand = $product->getBrand();
     $ebayBrand = '';
     foreach ($eBayProduct->ItemSpecifics->NameValueList as $specific) {
         if ($specific->Name == 'Brand') {
             $ebayBrand = $specific->Value[0];
         }
     }
     if ($ebayBrand != $currentBrand) {
         return true;
     }
     $currentPictures = $product->getPictures();
     $ebayPictures = $eBayProduct->PictureDetails->ExternalPictureURL;
     foreach ($ebayPictures as $ebayPicture) {
         if (!in_array($ebayPicture, $currentPictures)) {
             return true;
         }
     }
     if ($product->hasVariations()) {
         $separated = $this->separateVariations($eBayProduct, $product);
         $foundVariations = $separated['found'];
         $newVariations = $separated['new'];
         if (count($newVariations) > 0) {
             return true;
         }
         foreach ($eBayProduct->Variations->Variation as $ebayVariation) {
             if (!in_array($ebayVariation, $foundVariations)) {
                 return true;
             }
         }
     }
     return false;
 }