diff --git a/include/api.php b/include/api.php
index 9c4224159..12380f4b8 100644
--- a/include/api.php
+++ b/include/api.php
@@ -2376,7 +2376,7 @@ function api_get_attachments(&$body)
 	$attachments = array();
 
 	foreach ($images[1] as $image) {
-		$imagedata = Photo::getPhotoInfo($image);
+		$imagedata = Photo::getInfoFromURL($image);
 
 		if ($imagedata) {
 			$attachments[] = array("url" => $image, "mimetype" => $imagedata["mime"], "size" => $imagedata["size"]);
@@ -2508,7 +2508,7 @@ function api_get_entitities(&$text, $bbcode)
 
 		$start = iconv_strpos($text, $url, $offset, "UTF-8");
 		if (!($start === false)) {
-			$image = Photo::getPhotoInfo($url);
+			$image = Photo::getInfoFromURL($url);
 			if ($image) {
 				// If image cache is activated, then use the following sizes:
 				// thumb  (150), small (340), medium (600) and large (1024)
diff --git a/include/follow.php b/include/follow.php
index cb575ae54..ac07c4085 100644
--- a/include/follow.php
+++ b/include/follow.php
@@ -8,7 +8,7 @@ use Friendica\Core\System;
 use Friendica\Core\Worker;
 use Friendica\Database\DBM;
 use Friendica\Network\Probe;
-use Friendica\Object\Photo;
+use Friendica\Object\Contact;
 use Friendica\Protocol\Diaspora;
 use Friendica\Protocol\OStatus;
 use Friendica\Protocol\PortableContact;
@@ -250,7 +250,7 @@ function new_contact($uid, $url, $interactive = false, $network = '') {
 	}
 
 	// Update the avatar
-	Photo::updateContactAvatar($ret['photo'], $uid, $contact_id);
+	Contact::updateAvatar($ret['photo'], $uid, $contact_id);
 
 	// pull feed and consume it, which should subscribe to the hub.
 
diff --git a/include/items.php b/include/items.php
index a16635339..d446d2773 100644
--- a/include/items.php
+++ b/include/items.php
@@ -11,7 +11,6 @@ use Friendica\Core\System;
 use Friendica\Database\DBM;
 use Friendica\Model\GlobalContact;
 use Friendica\Object\Contact;
-use Friendica\Object\Photo;
 use Friendica\Protocol\DFRN;
 use Friendica\Protocol\OStatus;
 use Friendica\Util\Lock;
@@ -1690,7 +1689,7 @@ function new_follower($importer, $contact, $datarray, $item, $sharing = false) {
 		);
 		if (DBM::is_result($r)) {
 			$contact_record = $r[0];
-			Photo::updateContactAvatar($photo, $importer["uid"], $contact_record["id"], true);
+			Contact::updateAvatar($photo, $importer["uid"], $contact_record["id"], true);
 		}
 
 		/// @TODO Encapsulate this into a function/method
diff --git a/include/plaintext.php b/include/plaintext.php
index 1ae02bc49..221d1471b 100644
--- a/include/plaintext.php
+++ b/include/plaintext.php
@@ -51,7 +51,7 @@ function get_old_attachment_data($body) {
 
 			if (preg_match("/\[img\]([$URLSearchString]*)\[\/img\]/ism", $attacheddata, $matches)) {
 
-				$picturedata = Photo::getPhotoInfo($matches[1]);
+				$picturedata = Photo::getInfoFromURL($matches[1]);
 
 				if (($picturedata[0] >= 500) && ($picturedata[0] >= $picturedata[1]))
 					$post["image"] = $matches[1];
@@ -221,7 +221,7 @@ function get_attached_data($body, $item = array()) {
 					$post["preview"] = $pictures[0][2];
 					$post["text"] = str_replace($pictures[0][0], "", $body);
 				} else {
-					$imgdata = Photo::getPhotoInfo($pictures[0][1]);
+					$imgdata = Photo::getInfoFromURL($pictures[0][1]);
 					if (substr($imgdata["mime"], 0, 6) == "image/") {
 						$post["type"] = "photo";
 						$post["image"] = $pictures[0][1];
diff --git a/mod/contacts.php b/mod/contacts.php
index 8a42a85d4..69f188496 100644
--- a/mod/contacts.php
+++ b/mod/contacts.php
@@ -9,7 +9,6 @@ use Friendica\Database\DBM;
 use Friendica\Model\GlobalContact;
 use Friendica\Network\Probe;
 use Friendica\Object\Contact;
-use Friendica\Object\Photo;
 
 require_once 'include/contact_selectors.php';
 require_once 'mod/proxy.php';
@@ -311,7 +310,7 @@ function _contact_update_profile($contact_id) {
 	);
 
 	// Update the entry in the contact table
-	Photo::updateContactAvatar($data['photo'], local_user(), $contact_id, true);
+	Contact::updateAvatar($data['photo'], local_user(), $contact_id, true);
 
 	// Update the entry in the gcontact table
 	GlobalContact::updateFromProbe($data["url"]);
diff --git a/mod/crepair.php b/mod/crepair.php
index fe4f9dd53..7e1921f30 100644
--- a/mod/crepair.php
+++ b/mod/crepair.php
@@ -6,7 +6,6 @@ use Friendica\App;
 use Friendica\Core\Config;
 use Friendica\Database\DBM;
 use Friendica\Object\Contact;
-use Friendica\Object\Photo;
 
 require_once 'include/contact_selectors.php';
 require_once 'mod/contacts.php';
@@ -90,7 +89,7 @@ function crepair_post(App $a) {
 	if ($photo) {
 		logger('mod-crepair: updating photo from ' . $photo);
 
-		Photo::updateContactAvatar($photo, local_user(), $contact['id']);
+		Contact::updateAvatar($photo, local_user(), $contact['id']);
 	}
 
 	if ($r) {
diff --git a/mod/dfrn_confirm.php b/mod/dfrn_confirm.php
index 04ccd552a..18d9f25bf 100644
--- a/mod/dfrn_confirm.php
+++ b/mod/dfrn_confirm.php
@@ -25,7 +25,7 @@ use Friendica\Core\System;
 use Friendica\Core\Worker;
 use Friendica\Database\DBM;
 use Friendica\Network\Probe;
-use Friendica\Object\Photo;
+use Friendica\Object\Contact;
 use Friendica\Protocol\Diaspora;
 
 require_once 'include/enotify.php';
@@ -326,7 +326,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) {
 		 *
 		 */
 
-		Photo::updateContactAvatar($contact['photo'],$uid,$contact_id);
+		Contact::updateAvatar($contact['photo'], $uid, $contact_id);
 
 		logger('dfrn_confirm: confirm - imported photos');
 
@@ -675,7 +675,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) {
 			$photo = System::baseUrl() . '/images/person-175.jpg';
 		}
 
-		Photo::updateContactAvatar($photo,$local_uid,$dfrn_record);
+		Contact::updateAvatar($photo,$local_uid,$dfrn_record);
 
 		logger('dfrn_confirm: request - photos imported');
 
diff --git a/mod/dfrn_request.php b/mod/dfrn_request.php
index 1bf7d71d9..3c7584318 100644
--- a/mod/dfrn_request.php
+++ b/mod/dfrn_request.php
@@ -16,7 +16,7 @@ use Friendica\Core\PConfig;
 use Friendica\Core\System;
 use Friendica\Database\DBM;
 use Friendica\Network\Probe;
-use Friendica\Object\Photo;
+use Friendica\Object\Contact;
 
 require_once 'include/enotify.php';
 require_once 'include/group.php';
@@ -195,7 +195,7 @@ function dfrn_request_post(App $a) {
 						group_add_member(local_user(), '', $r[0]['id'], $def_gid);
 
 					if (isset($photo))
-						Photo::updateContactAvatar($photo, local_user(), $r[0]["id"], true);
+						Contact::updateAvatar($photo, local_user(), $r[0]["id"], true);
 
 					$forwardurl = System::baseUrl()."/contacts/".$r[0]['id'];
 				} else {
@@ -586,7 +586,7 @@ function dfrn_request_post(App $a) {
 					);
 					if (DBM::is_result($r)) {
 						$contact_record = $r[0];
-						Photo::updateContactAvatar($photo, $uid, $contact_record["id"], true);
+						Contact::updateAvatar($photo, $uid, $contact_record["id"], true);
 					}
 				}
 
diff --git a/src/Model/GlobalContact.php b/src/Model/GlobalContact.php
index 6ee1fa4f9..6ec110177 100644
--- a/src/Model/GlobalContact.php
+++ b/src/Model/GlobalContact.php
@@ -10,7 +10,7 @@ use Friendica\Core\System;
 use Friendica\Core\Worker;
 use Friendica\Database\DBM;
 use Friendica\Network\Probe;
-use Friendica\Object\Photo;
+use Friendica\Object\Contact;
 use Friendica\Object\Profile;
 use Friendica\Protocol\PortableContact;
 use dba;
@@ -881,7 +881,7 @@ class GlobalContact
 			if (DBM::is_result($r)) {
 				logger("Update public contact ".$r[0]["id"], LOGGER_DEBUG);
 
-				Photo::updateContactAvatar($contact["photo"], 0, $r[0]["id"]);
+				Contact::updateAvatar($contact["photo"], 0, $r[0]["id"]);
 
 				$fields = array('name', 'nick', 'addr',
 						'network', 'bd', 'gender',
diff --git a/src/Object/Contact.php b/src/Object/Contact.php
index f4ca36243..083982dda 100644
--- a/src/Object/Contact.php
+++ b/src/Object/Contact.php
@@ -644,7 +644,7 @@ class Contact extends BaseObject
 			}
 		}
 
-		Photo::updateContactAvatar($data["photo"], $uid, $contact_id);
+		self::updateAvatar($data["photo"], $uid, $contact_id);
 
 		$contact = dba::select('contact', array('url', 'nurl', 'addr', 'alias', 'name', 'nick', 'keywords', 'location', 'about', 'avatar-date'), array('id' => $contact_id), array('limit' => 1));
 
@@ -818,4 +818,49 @@ class Contact extends BaseObject
 
 		return $account_type;
 	}
+
+	/**
+	 * @brief Updates the avatar links in a contact only if needed
+	 *
+	 * @param string $avatar Link to avatar picture
+	 * @param int    $uid    User id of contact owner
+	 * @param int    $cid    Contact id
+	 * @param bool   $force  force picture update
+	 *
+	 * @return array Returns array of the different avatar sizes
+	 */
+	public static function updateAvatar($avatar, $uid, $cid, $force = false)
+	{
+		// Limit = 1 returns the row so no need for dba:inArray()
+		$r = dba::select('contact', array('avatar', 'photo', 'thumb', 'micro', 'nurl'), array('id' => $cid), array('limit' => 1));
+		if (!DBM::is_result($r)) {
+			return false;
+		} else {
+			$data = array($r["photo"], $r["thumb"], $r["micro"]);
+		}
+
+		if (($r["avatar"] != $avatar) || $force) {
+			$photos = Photo::importProfilePhoto($avatar, $uid, $cid, true);
+
+			if ($photos) {
+				dba::update(
+					'contact',
+					array('avatar' => $avatar, 'photo' => $photos[0], 'thumb' => $photos[1], 'micro' => $photos[2], 'avatar-date' => datetime_convert()),
+					array('id' => $cid)
+				);
+
+				// Update the public contact (contact id = 0)
+				if ($uid != 0) {
+					$pcontact = dba::select('contact', array('id'), array('nurl' => $r[0]['nurl']), array('limit' => 1));
+					if (DBM::is_result($pcontact)) {
+						self::updateAvatar($avatar, 0, $pcontact['id'], $force);
+					}
+				}
+
+				return $photos;
+			}
+		}
+
+		return $data;
+	}
 }
diff --git a/src/Object/Photo.php b/src/Object/Photo.php
index db3c75f99..cd96b8c66 100644
--- a/src/Object/Photo.php
+++ b/src/Object/Photo.php
@@ -11,6 +11,8 @@ use Friendica\Core\Config;
 use Friendica\Core\System;
 use Friendica\Database\DBM;
 use dba;
+use Imagick;
+use ImagickPixel;
 
 require_once "include/photos.php";
 
@@ -33,6 +35,7 @@ class Photo
 
 	/**
 	 * @brief supported mimetypes and corresponding file extensions
+	 * @return array
 	 */
 	public static function supportedTypes()
 	{
@@ -446,18 +449,18 @@ class Photo
 			// based off comment on http://php.net/manual/en/imagick.getimageorientation.php
 			$orientation = $this->image->getImageOrientation();
 			switch ($orientation) {
-				case imagick::ORIENTATION_BOTTOMRIGHT:
+				case Imagick::ORIENTATION_BOTTOMRIGHT:
 					$this->image->rotateimage("#000", 180);
 					break;
-				case imagick::ORIENTATION_RIGHTTOP:
+				case Imagick::ORIENTATION_RIGHTTOP:
 					$this->image->rotateimage("#000", 90);
 					break;
-				case imagick::ORIENTATION_LEFTBOTTOM:
+				case Imagick::ORIENTATION_LEFTBOTTOM:
 					$this->image->rotateimage("#000", -90);
 					break;
 			}
 
-			$this->image->setImageOrientation(imagick::ORIENTATION_TOPLEFT);
+			$this->image->setImageOrientation(Imagick::ORIENTATION_TOPLEFT);
 			return true;
 		}
 		// based off comment on http://php.net/manual/en/function.imagerotate.php
@@ -805,51 +808,6 @@ class Photo
 		return $type;
 	}
 
-	/**
-	 * @brief Updates the avatar links in a contact only if needed
-	 *
-	 * @param string $avatar Link to avatar picture
-	 * @param int    $uid    User id of contact owner
-	 * @param int    $cid    Contact id
-	 * @param bool   $force  force picture update
-	 *
-	 * @return array Returns array of the different avatar sizes
-	 */
-	public function updateContactAvatar($avatar, $uid, $cid, $force = false)
-	{
-		// Limit = 1 returns the row so no need for dba:inArray()
-		$r = dba::select('contact', array('avatar', 'photo', 'thumb', 'micro', 'nurl'), array('id' => $cid), array('limit' => 1));
-		if (!DBM::is_result($r)) {
-			return false;
-		} else {
-			$data = array($r["photo"], $r["thumb"], $r["micro"]);
-		}
-
-		if (($r["avatar"] != $avatar) || $force) {
-			$photos = $this->importProfilePhoto($avatar, $uid, $cid, true);
-
-			if ($photos) {
-				dba::update(
-					'contact',
-					array('avatar' => $avatar, 'photo' => $photos[0], 'thumb' => $photos[1], 'micro' => $photos[2], 'avatar-date' => datetime_convert()),
-					array('id' => $cid)
-				);
-
-				// Update the public contact (contact id = 0)
-				if ($uid != 0) {
-					$pcontact = dba::select('contact', array('id'), array('nurl' => $r[0]['nurl']), array('limit' => 1));
-					if (DBM::is_result($pcontact)) {
-						$this->updateContactAvatar($avatar, 0, $pcontact['id'], $force);
-					}
-				}
-
-				return $photos;
-			}
-		}
-
-		return $data;
-	}
-
 	/**
 	 * @param string  $photo         photo
 	 * @param integer $uid           user id
@@ -946,14 +904,14 @@ class Photo
 			$micro = System::baseUrl() . '/images/person-48.jpg';
 		}
 	
-		return(array($photo, $thumb, $micro));
+		return array($photo, $thumb, $micro);
 	}
 
 	/**
 	 * @param string $url url
 	 * @return object
 	 */
-	public function getPhotoInfo($url)
+	public function getInfoFromURL($url)
 	{
 		$data = array();
 	
@@ -1040,167 +998,4 @@ class Photo
 		}
 		return array("width" => $dest_width, "height" => $dest_height);
 	}
-
-	/**
-	 * @brief This function doesn't seem to be used
-	 * @param object  $a         App
-	 * @param integer $uid       user id
-	 * @param string  $imagedata optional, default empty
-	 * @param string  $url       optional, default empty
-	 * @return array
-	 */
-	private function storePhoto(App $a, $uid, $imagedata = "", $url = "")
-	{
-		$r = q(
-			"SELECT `user`.`nickname`, `user`.`page-flags`, `contact`.`id` FROM `user` INNER JOIN `contact` on `user`.`uid` = `contact`.`uid`
-			WHERE `user`.`uid` = %d AND `user`.`blocked` = 0 AND `contact`.`self` = 1 LIMIT 1",
-			intval($uid)
-		);
-	
-		if (!DBM::is_result($r)) {
-			logger("Can't detect user data for uid ".$uid, LOGGER_DEBUG);
-			return(array());
-		}
-	
-		$page_owner_nick  = $r[0]['nickname'];
-	
-		/// @TODO
-		/// $default_cid      = $r[0]['id'];
-		/// $community_page   = (($r[0]['page-flags'] == PAGE_COMMUNITY) ? true : false);
-	
-		if ((strlen($imagedata) == 0) && ($url == "")) {
-			logger("No image data and no url provided", LOGGER_DEBUG);
-			return(array());
-		} elseif (strlen($imagedata) == 0) {
-			logger("Uploading picture from ".$url, LOGGER_DEBUG);
-	
-			$stamp1 = microtime(true);
-			$imagedata = @file_get_contents($url);
-			$a->save_timestamp($stamp1, "file");
-		}
-	
-		$maximagesize = Config::get('system', 'maximagesize');
-	
-		if (($maximagesize) && (strlen($imagedata) > $maximagesize)) {
-			logger("Image exceeds size limit of ".$maximagesize, LOGGER_DEBUG);
-			return(array());
-		}
-	
-		$tempfile = tempnam(get_temppath(), "cache");
-	
-		$stamp1 = microtime(true);
-		file_put_contents($tempfile, $imagedata);
-		$a->save_timestamp($stamp1, "file");
-	
-		$data = getimagesize($tempfile);
-	
-		if (!isset($data["mime"])) {
-			unlink($tempfile);
-			logger("File is no picture", LOGGER_DEBUG);
-			return(array());
-		}
-	
-		$ph = new Photo($imagedata, $data["mime"]);
-	
-		if (!$ph->isValid()) {
-			unlink($tempfile);
-			logger("Picture is no valid picture", LOGGER_DEBUG);
-			return(array());
-		}
-	
-		$ph->orient($tempfile);
-		unlink($tempfile);
-	
-		$max_length = Config::get('system', 'max_image_length');
-		if (! $max_length) {
-			$max_length = MAX_IMAGE_LENGTH;
-		}
-		if ($max_length > 0) {
-			$ph->scaleImage($max_length);
-		}
-	
-		$width = $ph->getWidth();
-		$height = $ph->getHeight();
-	
-		$hash = photo_new_resource();
-	
-		$smallest = 0;
-	
-		// Pictures are always public by now
-		//$defperm = '<'.$default_cid.'>';
-		$defperm = "";
-		$visitor = 0;
-	
-		$r = $ph->store($uid, $visitor, $hash, $tempfile, t('Wall Photos'), 0, 0, $defperm);
-	
-		if (!$r) {
-			logger("Picture couldn't be stored", LOGGER_DEBUG);
-			return(array());
-		}
-	
-		$image = array("page" => System::baseUrl().'/photos/'.$page_owner_nick.'/image/'.$hash,
-				"full" => System::baseUrl()."/photo/{$hash}-0.".$ph->getExt());
-	
-		if ($width > 800 || $height > 800) {
-			$image["large"] = System::baseUrl()."/photo/{$hash}-0.".$ph->getExt();
-		}
-	
-		if ($width > 640 || $height > 640) {
-			$ph->scaleImage(640);
-			$r = $ph->store($uid, $visitor, $hash, $tempfile, t('Wall Photos'), 1, 0, $defperm);
-			if ($r) {
-				$image["medium"] = System::baseUrl()."/photo/{$hash}-1.".$ph->getExt();
-			}
-		}
-	
-		if ($width > 320 || $height > 320) {
-			$ph->scaleImage(320);
-			$r = $ph->store($uid, $visitor, $hash, $tempfile, t('Wall Photos'), 2, 0, $defperm);
-			if ($r) {
-				$image["small"] = System::baseUrl()."/photo/{$hash}-2.".$ph->getExt();
-			}
-		}
-	
-		if ($width > 160 && $height > 160) {
-			$x = 0;
-			$y = 0;
-	
-			$min = $ph->getWidth();
-			if ($min > 160) {
-				$x = ($min - 160) / 2;
-			}
-	
-			if ($ph->getHeight() < $min) {
-				$min = $ph->getHeight();
-				if ($min > 160) {
-					$y = ($min - 160) / 2;
-				}
-			}
-	
-			$min = 160;
-			$ph->cropImage(160, $x, $y, $min, $min);
-	
-			$r = $ph->store($uid, $visitor, $hash, $tempfile, t('Wall Photos'), 3, 0, $defperm);
-			if ($r) {
-				$image["thumb"] = System::baseUrl()."/photo/{$hash}-3.".$ph->getExt();
-			}
-		}
-	
-		// Set the full image as preview image. This will be overwritten, if the picture is larger than 640.
-		$image["preview"] = $image["full"];
-	
-		// Deactivated, since that would result in a cropped preview, if the picture wasn't larger than 320
-		//if (isset($image["thumb"]))
-		//	$image["preview"] = $image["thumb"];
-	
-		// Unsure, if this should be activated or deactivated
-		//if (isset($image["small"]))
-		//	$image["preview"] = $image["small"];
-	
-		if (isset($image["medium"])) {
-			$image["preview"] = $image["medium"];
-		}
-	
-		return($image);
-	}
 }
diff --git a/src/ParseUrl.php b/src/ParseUrl.php
index 954ef5d48..2183a9c1e 100644
--- a/src/ParseUrl.php
+++ b/src/ParseUrl.php
@@ -353,7 +353,7 @@ class ParseUrl
 				}
 
 				$src = self::completeUrl($attr["src"], $url);
-				$photodata = Photo::getPhotoInfo($src);
+				$photodata = Photo::getInfoFromURL($src);
 
 				if (($photodata) && ($photodata[0] > 150) && ($photodata[1] > 150)) {
 					if ($photodata[0] > 300) {
@@ -374,7 +374,7 @@ class ParseUrl
 
 			unset($siteinfo["image"]);
 
-			$photodata = Photo::getPhotoInfo($src);
+			$photodata = Photo::getInfoFromURL($src);
 
 			if (($photodata) && ($photodata[0] > 10) && ($photodata[1] > 10)) {
 				$siteinfo["images"][] = array("src" => $src,
diff --git a/src/Protocol/DFRN.php b/src/Protocol/DFRN.php
index db1ded496..5af082905 100644
--- a/src/Protocol/DFRN.php
+++ b/src/Protocol/DFRN.php
@@ -1660,7 +1660,7 @@ class DFRN
 				);
 			}
 
-			Photo::updateContactAvatar(
+			Contact::updateAvatar(
 				$author["avatar"],
 				$importer["uid"],
 				$contact["id"],
@@ -2035,7 +2035,7 @@ class DFRN
 			dbesc(normalise_link($old["url"]))
 		);
 
-		Photo::updateContactAvatar($relocate["avatar"], $importer["importer_uid"], $importer["id"], true);
+		Contact::updateAvatar($relocate["avatar"], $importer["importer_uid"], $importer["id"], true);
 
 		if ($x === false) {
 			return false;
diff --git a/src/Protocol/Diaspora.php b/src/Protocol/Diaspora.php
index bb1a3f46e..26412e270 100644
--- a/src/Protocol/Diaspora.php
+++ b/src/Protocol/Diaspora.php
@@ -19,7 +19,6 @@ use Friendica\Database\DBM;
 use Friendica\Model\GlobalContact;
 use Friendica\Network\Probe;
 use Friendica\Object\Contact;
-use Friendica\Object\Photo;
 use Friendica\Object\Profile;
 use Friendica\Util\XML;
 
@@ -2211,7 +2210,7 @@ class Diaspora
 			$image_url = "http://".$handle_parts[1].$image_url;
 		}
 
-		Photo::updateContactAvatar($image_url, $importer["uid"], $contact["id"]);
+		Contact::updateAvatar($image_url, $importer["uid"], $contact["id"]);
 
 		// Generic birthday. We don't know the timezone. The year is irrelevant.
 
@@ -2471,7 +2470,7 @@ class Diaspora
 			group_add_member($importer["uid"], "", $contact_record["id"], $def_gid);
 		}
 
-		Photo::updateContactAvatar($ret["photo"], $importer['uid'], $contact_record["id"], true);
+		Contact::updateAvatar($ret["photo"], $importer['uid'], $contact_record["id"], true);
 
 		if ($importer["page-flags"] == PAGE_NORMAL) {
 			logger("Sending intra message for author ".$author.".", LOGGER_DEBUG);
@@ -2494,7 +2493,7 @@ class Diaspora
 
 			logger("Does an automatic friend approval for author ".$author.".", LOGGER_DEBUG);
 
-			Photo::updateContactAvatar($contact_record["photo"], $importer["uid"], $contact_record["id"]);
+			Contact::updateAvatar($contact_record["photo"], $importer["uid"], $contact_record["id"]);
 
 			// technically they are sharing with us (CONTACT_IS_SHARING),
 			// but if our page-type is PAGE_COMMUNITY or PAGE_SOAPBOX
diff --git a/src/Protocol/OStatus.php b/src/Protocol/OStatus.php
index 8d4887315..47538faa8 100644
--- a/src/Protocol/OStatus.php
+++ b/src/Protocol/OStatus.php
@@ -203,7 +203,7 @@ class OStatus
 
 			if (!empty($author["author-avatar"]) && ($author["author-avatar"] != $current['avatar'])) {
 				logger("Update profile picture for contact ".$contact["id"], LOGGER_DEBUG);
-				Photo::updateContactAvatar($author["author-avatar"], $importer["uid"], $contact["id"]);
+				Contact::updateAvatar($author["author-avatar"], $importer["uid"], $contact["id"]);
 			}
 
 			// Ensure that we are having this contact (with uid=0)
@@ -223,7 +223,7 @@ class OStatus
 				dba::update('contact', $fields, array('id' => $cid), $old_contact);
 
 				// Update the avatar
-				Photo::updateContactAvatar($author["author-avatar"], 0, $cid);
+				Contact::updateAvatar($author["author-avatar"], 0, $cid);
 			}
 
 			$contact["generation"] = 2;
@@ -1326,7 +1326,7 @@ class OStatus
 
 		switch ($siteinfo["type"]) {
 			case 'photo':
-				$imgdata = Photo::getPhotoInfo($siteinfo["image"]);
+				$imgdata = Photo::getInfoFromURL($siteinfo["image"]);
 				$attributes = array("rel" => "enclosure",
 						"href" => $siteinfo["image"],
 						"type" => $imgdata["mime"],
@@ -1346,7 +1346,7 @@ class OStatus
 		}
 
 		if (!Config::get('system', 'ostatus_not_attach_preview') && ($siteinfo["type"] != "photo") && isset($siteinfo["image"])) {
-			$imgdata = Photo::getPhotoInfo($siteinfo["image"]);
+			$imgdata = Photo::getInfoFromURL($siteinfo["image"]);
 			$attributes = array("rel" => "enclosure",
 					"href" => $siteinfo["image"],
 					"type" => $imgdata["mime"],