diff options
author | John Molakvoæ <skjnldsv@users.noreply.github.com> | 2021-07-16 10:23:26 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-16 10:23:26 +0200 |
commit | c855235802a6a01a0ecf93b6685fc8a8633371a5 (patch) | |
tree | 5b97c44354f6b6b3e2bb60d9168084d66a530732 /lib | |
parent | d7b540c9b5b6db6b0910b1d51e27825e9f81810a (diff) | |
parent | 9641980d28fecc0ec82830a2c2523cc7eb50cb52 (diff) |
Merge pull request #2351 from nextcloud/bugfix/2348
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Cron/SocialUpdate.php | 2 | ||||
-rw-r--r-- | lib/Service/Social/DiasporaProvider.php | 3 | ||||
-rw-r--r-- | lib/Service/Social/FacebookProvider.php | 3 | ||||
-rw-r--r-- | lib/Service/Social/GravatarProvider.php | 3 | ||||
-rw-r--r-- | lib/Service/Social/InstagramProvider.php | 3 | ||||
-rw-r--r-- | lib/Service/Social/MastodonProvider.php | 3 | ||||
-rw-r--r-- | lib/Service/Social/TumblrProvider.php | 3 | ||||
-rw-r--r-- | lib/Service/Social/TwitterProvider.php | 3 | ||||
-rw-r--r-- | lib/Service/Social/XingProvider.php | 3 | ||||
-rw-r--r-- | lib/Service/SocialApiService.php | 4 |
10 files changed, 27 insertions, 3 deletions
diff --git a/lib/Cron/SocialUpdate.php b/lib/Cron/SocialUpdate.php index fcb41a5c..9f8ee9ba 100644 --- a/lib/Cron/SocialUpdate.php +++ b/lib/Cron/SocialUpdate.php @@ -46,7 +46,7 @@ class SocialUpdate extends \OC\BackgroundJob\QueuedJob { $offsetContact = $arguments['offsetContact'] ?? null; // update contacts with first available social media profile - $result = $this->social->updateAddressbooks('any', $userId, $offsetBook, $offsetContact); + $result = $this->social->updateAddressbooks($userId, $offsetBook, $offsetContact); if ($result->getStatus() === Http::STATUS_PARTIAL_CONTENT) { // not finished; schedule a follow-up 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; } diff --git a/lib/Service/SocialApiService.php b/lib/Service/SocialApiService.php index 5184d72c..129068c5 100644 --- a/lib/Service/SocialApiService.php +++ b/lib/Service/SocialApiService.php @@ -342,12 +342,12 @@ class SocialApiService { /** * Updates social profile data for all contacts of an addressbook * - * @param {String} network the social network to use (fallback: take first match) + * @param {String|null} network the social network to use (take first match if unset) * @param {String} userId the address book owner * * @returns {JSONResponse} JSONResponse with the list of changed and failed contacts */ - public function updateAddressbooks(string $network, string $userId, string $offsetBook = null, string $offsetContact = null) : JSONResponse { + public function updateAddressbooks(string $userId, string $offsetBook = null, string $offsetContact = null, string $network = null) : JSONResponse { // double check! $syncAllowedByAdmin = $this->config->getAppValue($this->appName, 'allowSocialSync', 'yes'); |