Exemplo n.º 1
0
 /**
  * @param SteamGame $SteamGame
  * @param $game
  *
  * @return bool
  */
 public function parseAndSaveSteamGame(SteamGame $SteamGame, $game)
 {
     if (!empty($game->name)) {
         $SteamGame->name = $game->name;
     }
     if (!empty($game->playtime_forever)) {
         $SteamGame->playtime_forever = $game->playtime_forever;
     }
     if (!empty($game->playtime_2weeks)) {
         $SteamGame->playtime_2weeks = $game->playtime_2weeks;
     } else {
         $SteamGame->playtime_2weeks = 0;
     }
     if (!empty($game->img_icon_url)) {
         $SteamGame->image_icon_url = $this->img_base_url . $SteamGame->id . '/' . $game->img_icon_url . '.jpg';
     }
     if (!empty($game->img_logo_url)) {
         $SteamGame->image_logo_url = $this->img_base_url . $SteamGame->id . '/' . $game->img_logo_url . '.jpg';
     }
     if (!empty($game->has_community_visible_stats)) {
         $SteamGame->has_community_visible_stats = $game->has_community_visible_stats;
     }
     $SteamGame->game_updated_at = date('Y-m-d H:i:s');
     $success = $SteamGame->save();
     if ($success === true) {
         Log::info('Game was updated - ' . $SteamGame->name . ' : ' . $SteamGame->id);
         return true;
     }
     Log::error('Game was NOT updated - ' . $SteamGame->name . ' : ' . $SteamGame->id);
     return false;
 }
 /**
  * @param SteamGame $SteamGame
  * @param null      $GameDescriptionJson
  *
  * @return bool|void
  */
 public function updateSteamGameWithNewDescription(SteamGame $SteamGame, $GameDescriptionJson = null)
 {
     if (empty($GameDescriptionJson)) {
         return;
     }
     if (!empty($GameDescriptionJson->is_free)) {
         $SteamGame->is_free = $GameDescriptionJson->is_free;
     }
     if (!empty($GameDescriptionJson->about_the_game)) {
         $SteamGame->about_the_game = $GameDescriptionJson->about_the_game;
     }
     if (!empty($GameDescriptionJson->header_image)) {
         $SteamGame->image_header = $GameDescriptionJson->header_image;
     }
     if (!empty($GameDescriptionJson->legal_notice)) {
         $SteamGame->legal_notice = $GameDescriptionJson->legal_notice;
     }
     if (!empty($GameDescriptionJson->metacritic->score)) {
         $SteamGame->meta_critic_score = $GameDescriptionJson->metacritic->score;
     }
     if (!empty($GameDescriptionJson->metacritic->url)) {
         $SteamGame->meta_critic_url = $GameDescriptionJson->metacritic->url;
     }
     if (!empty($GameDescriptionJson->website)) {
         $SteamGame->website = $GameDescriptionJson->website;
     }
     if (!empty($GameDescriptionJson->screenshots[0]->path_thumbnail)) {
         $SteamGame->screenshot_path_thumbnail = $GameDescriptionJson->screenshots[0]->path_thumbnail;
     }
     if (!empty($GameDescriptionJson->screenshots[0]->path_full)) {
         $SteamGame->screenshot_path_full = $GameDescriptionJson->screenshots[0]->path_full;
     }
     if (!empty($GameDescriptionJson->movies)) {
         $lastMovie = end($GameDescriptionJson->movies);
         if (!empty($lastMovie->thumbnail)) {
             $SteamGame->movie_thumbnail = $lastMovie->thumbnail;
         }
         if (!empty($lastMovie->webm->max)) {
             $SteamGame->movie_full_url = $lastMovie->webm->max;
         }
         if (!empty($lastMovie->name)) {
             $SteamGame->movie_name = $lastMovie->name;
         }
     }
     if (!empty($GameDescriptionJson->background)) {
         $SteamGame->image_background = $GameDescriptionJson->background;
     }
     $SteamGame->description_updated_at = date('Y-m-d H:i:s');
     return $SteamGame->save();
 }