]> git.mxchange.org Git - friendica.git/commitdiff
Avoid local network requests
authorMichael <heluecht@pirati.ca>
Wed, 19 Aug 2020 04:11:20 +0000 (04:11 +0000)
committerMichael <heluecht@pirati.ca>
Wed, 19 Aug 2020 04:11:20 +0000 (04:11 +0000)
src/Model/Contact.php

index 4f7cd2598b58dde0ce3566dc11454cf68e7e0871..7772bad878c811f3338e15ba44c13dcae259e7b0 100644 (file)
@@ -1576,24 +1576,27 @@ class Contact
                        return;
                }
 
-               $data = [
-                       $contact['photo'] ?? '',
-                       $contact['thumb'] ?? '',
-                       $contact['micro'] ?? '',
-               ];
-
-               $update = ($contact['avatar'] != $avatar) || $force;
-
+               // Replace cached avatar pictures from the default avatar with the default avatars in different sizes
                if (strpos($avatar, self::DEFAULT_AVATAR_PHOTO)) {
                        $fields = ['avatar' => $avatar, 'avatar-date' => DateTimeFormat::utcNow(),
                                'photo' => DI::baseUrl() . self::DEFAULT_AVATAR_PHOTO,
                                'thumb' => DI::baseUrl() . self::DEFAULT_AVATAR_THUMB,
                                'micro' => DI::baseUrl() . self::DEFAULT_AVATAR_MICRO];
-                       DBA::update('contact', $fields, ['id' => $cid]);
-                       Photo::delete(['uid' => $uid, 'contact-id' => $cid, 'album' => Photo::CONTACT_PHOTOS]);
+                       if ($fields['photo'] . $fields['thumb'] . $fields['micro'] != $contact['photo'] . $contact['thumb'] . $contact['micro']) {
+                               DBA::update('contact', $fields, ['id' => $cid]);
+                               Photo::delete(['uid' => $uid, 'contact-id' => $cid, 'album' => Photo::CONTACT_PHOTOS]);
+                       }
                        return;
                }
 
+               $data = [
+                       $contact['photo'] ?? '',
+                       $contact['thumb'] ?? '',
+                       $contact['micro'] ?? '',
+               ];
+
+               $update = ($contact['avatar'] != $avatar) || $force;
+
                if (!$update) {
                        foreach ($data as $image_uri) {
                                $image_rid = Photo::ridFromURI($image_uri);