From 9641980d28fecc0ec82830a2c2523cc7eb50cb52 Mon Sep 17 00:00:00 2001 From: call-me-matt Date: Thu, 15 Jul 2021 22:57:03 +0200 Subject: pre-check for social profile data Signed-off-by: call-me-matt --- lib/Service/Social/DiasporaProvider.php | 3 +++ lib/Service/Social/FacebookProvider.php | 3 +++ lib/Service/Social/GravatarProvider.php | 3 +++ lib/Service/Social/InstagramProvider.php | 3 +++ lib/Service/Social/MastodonProvider.php | 3 +++ lib/Service/Social/TumblrProvider.php | 3 +++ lib/Service/Social/TwitterProvider.php | 3 +++ lib/Service/Social/XingProvider.php | 3 +++ 8 files changed, 24 insertions(+) diff --git a/lib/Service/Social/DiasporaProvider.php b/lib/Service/Social/DiasporaProvider.php index c0af278f..67a194e0 100644 --- a/lib/Service/Social/DiasporaProvider.php +++ b/lib/Service/Social/DiasporaProvider.php @@ -49,6 +49,9 @@ class DiasporaProvider implements ISocialProvider { * @return bool */ public function supportsContact(array $contact):bool { + if (!array_key_exists("X-SOCIALPROFILE",$contact)) { + return false; + } $socialprofiles = $this->getProfileIds($contact); return isset($socialprofiles) && count($socialprofiles) > 0; } diff --git a/lib/Service/Social/FacebookProvider.php b/lib/Service/Social/FacebookProvider.php index e5d34397..c9035f56 100644 --- a/lib/Service/Social/FacebookProvider.php +++ b/lib/Service/Social/FacebookProvider.php @@ -45,6 +45,9 @@ class FacebookProvider implements ISocialProvider { * @return bool */ public function supportsContact(array $contact):bool { + if (!array_key_exists("X-SOCIALPROFILE",$contact)) { + return false; + } $socialprofiles = $this->getProfiles($contact); return isset($socialprofiles) && count($socialprofiles) > 0; } diff --git a/lib/Service/Social/GravatarProvider.php b/lib/Service/Social/GravatarProvider.php index 4b9d9a84..1fd81dc3 100644 --- a/lib/Service/Social/GravatarProvider.php +++ b/lib/Service/Social/GravatarProvider.php @@ -38,6 +38,9 @@ class GravatarProvider implements ISocialProvider { * @return bool */ public function supportsContact(array $contact):bool { + if (!array_key_exists("EMAIL",$contact)) { + return false; + } $emails = $contact['EMAIL']; return isset($emails) && count($emails); } diff --git a/lib/Service/Social/InstagramProvider.php b/lib/Service/Social/InstagramProvider.php index a930aaa7..68ca0cc2 100644 --- a/lib/Service/Social/InstagramProvider.php +++ b/lib/Service/Social/InstagramProvider.php @@ -55,6 +55,9 @@ class InstagramProvider implements ISocialProvider { * @return bool */ public function supportsContact(array $contact):bool { + if (!array_key_exists("X-SOCIALPROFILE",$contact)) { + return false; + } $socialprofiles = $this->getProfiles($contact); return isset($socialprofiles) && count($socialprofiles) > 0; } diff --git a/lib/Service/Social/MastodonProvider.php b/lib/Service/Social/MastodonProvider.php index a212433c..ed8ff1a1 100644 --- a/lib/Service/Social/MastodonProvider.php +++ b/lib/Service/Social/MastodonProvider.php @@ -45,6 +45,9 @@ class MastodonProvider implements ISocialProvider { * @return bool */ public function supportsContact(array $contact):bool { + if (!array_key_exists("X-SOCIALPROFILE",$contact)) { + return false; + } $profiles = $this->getProfileIds($contact); return isset($profiles) && count($profiles) > 0; } diff --git a/lib/Service/Social/TumblrProvider.php b/lib/Service/Social/TumblrProvider.php index cd3d577f..b4bb71e7 100644 --- a/lib/Service/Social/TumblrProvider.php +++ b/lib/Service/Social/TumblrProvider.php @@ -38,6 +38,9 @@ class TumblrProvider implements ISocialProvider { * @return bool */ public function supportsContact(array $contact):bool { + if (!array_key_exists("X-SOCIALPROFILE",$contact)) { + return false; + } $socialprofiles = $this->getProfileIds($contact); return isset($socialprofiles) && count($socialprofiles) > 0; } diff --git a/lib/Service/Social/TwitterProvider.php b/lib/Service/Social/TwitterProvider.php index fc566aca..ad2402ba 100644 --- a/lib/Service/Social/TwitterProvider.php +++ b/lib/Service/Social/TwitterProvider.php @@ -54,6 +54,9 @@ class TwitterProvider implements ISocialProvider { * @return bool */ public function supportsContact(array $contact):bool { + if (!array_key_exists("X-SOCIALPROFILE",$contact)) { + return false; + } $socialprofiles = $this->getProfileIds($contact); return isset($socialprofiles) && count($socialprofiles) > 0; } diff --git a/lib/Service/Social/XingProvider.php b/lib/Service/Social/XingProvider.php index a752d3c6..8ebe23a0 100644 --- a/lib/Service/Social/XingProvider.php +++ b/lib/Service/Social/XingProvider.php @@ -45,6 +45,9 @@ class XingProvider implements ISocialProvider { * @return bool */ public function supportsContact(array $contact):bool { + if (!array_key_exists("X-SOCIALPROFILE",$contact)) { + return false; + } $socialprofiles = $this->getProfileIds($contact); return isset($socialprofiles) && count($socialprofiles) > 0; } -- cgit v1.2.3