From a1f959bacb226115db1f43e7440556d7a27cb952 Mon Sep 17 00:00:00 2001 From: BrokenEagle Date: Wed, 29 Jan 2020 05:06:54 +0000 Subject: [PATCH 1/3] Fix missing "to_h" error message on Pawoo sources --- app/logical/pawoo_api_client.rb | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/logical/pawoo_api_client.rb b/app/logical/pawoo_api_client.rb index 2d12a896a..4a41af238 100644 --- a/app/logical/pawoo_api_client.rb +++ b/app/logical/pawoo_api_client.rb @@ -50,6 +50,10 @@ class PawooApiClient def commentary nil end + + def to_h + json + end end class Status @@ -97,6 +101,10 @@ class PawooApiClient commentary << json["content"] commentary end + + def to_h + json + end end def get(url) From 09841c5b5598ff4adb730bc777985581b82a002b Mon Sep 17 00:00:00 2001 From: BrokenEagle Date: Wed, 29 Jan 2020 22:24:23 +0000 Subject: [PATCH 2/3] Fix errors caused by Pawoo exceptions --- app/logical/pawoo_api_client.rb | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/app/logical/pawoo_api_client.rb b/app/logical/pawoo_api_client.rb index 4a41af238..20daf1fd7 100644 --- a/app/logical/pawoo_api_client.rb +++ b/app/logical/pawoo_api_client.rb @@ -109,11 +109,26 @@ class PawooApiClient def get(url) if id = Status.is_match?(url) - return Status.new(JSON.parse(access_token.get("/api/v1/statuses/#{id}").body)) + begin + data = JSON.parse(access_token.get("/api/v1/statuses/#{id}").body) + rescue + data = { + "account" => {}, + "media_attachments" => [], + "tags" => [], + "content" => "", + } + end + return Status.new(data) end if id = Account.is_match?(url) - return Account.new(JSON.parse(access_token.get("/api/v1/accounts/#{id}").body)) + begin + data = JSON.parse(access_token.get("/api/v1/accounts/#{id}").body) + rescue + data = {} + end + return Account.new(data) end end From 0569e8346caa15ffd6da428f8964ee936d2029ff Mon Sep 17 00:00:00 2001 From: BrokenEagle Date: Wed, 29 Jan 2020 22:26:21 +0000 Subject: [PATCH 3/3] Fix profile url for normalization when Pawoo errors --- app/logical/sources/strategies/pawoo.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/logical/sources/strategies/pawoo.rb b/app/logical/sources/strategies/pawoo.rb index 3f6c7a3c7..897932a5d 100644 --- a/app/logical/sources/strategies/pawoo.rb +++ b/app/logical/sources/strategies/pawoo.rb @@ -48,6 +48,7 @@ module Sources::Strategies return "https://pawoo.net/@#{$1}" end + return url if api_response.profile_url.blank? api_response.profile_url end