From 33436132a078010c7a89eaba3ce2a32bae1c167b Mon Sep 17 00:00:00 2001
From: Michael Vogel <icarus@dabo.de>
Date: Mon, 25 Apr 2016 21:35:42 +0200
Subject: [PATCH] Use data from contact and gcontact prior to probe_url

---
 mod/item.php | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/mod/item.php b/mod/item.php
index 86940cd69b..215e3bc958 100644
--- a/mod/item.php
+++ b/mod/item.php
@@ -1095,7 +1095,19 @@ function handle_tag($a, &$body, &$inform, &$str_tags, $profile_uid, $tag, $netwo
 			// Checking for the alias that is used for OStatus
 			$pattern = "/@\[url\=(.*?)\](.*?)\[\/url\]/ism";
 			if (preg_match($pattern, $tag, $matches)) {
-				$data = probe_url($matches[1]);
+
+				$r = q("SELECT `alias`, `name` FROM `contact` WHERE `nurl` = '%s' AND `alias` != '' AND `uid` = 0",
+					normalise_link($matches[1]));
+				if (!$r)
+					$r = q("SELECT `alias`, `name` FROM `gcontact` WHERE `nurl` = '%s' AND `alias` != ''",
+						normalise_link($matches[1]));
+				if ($r)
+					$data = $r[0];
+				else {
+					$data = probe_url($matches[1]);
+					logger("probe_url ".$matches[1]);
+				}
+
 				if ($data["alias"] != "") {
 					$newtag = '@[url='.$data["alias"].']'.$data["name"].'[/url]';
 					if(!stristr($str_tags,$newtag)) {