From 79529612226dc89b90df33ba066a530d0e716a69 Mon Sep 17 00:00:00 2001 From: Friendika Date: Sun, 14 Aug 2011 18:13:52 -0700 Subject: [PATCH] diaspora probe/scrape changes --- boot.php | 2 +- include/Scrape.php | 35 +++++++++++++++++++++++------------ index.php | 2 +- mod/probe.php | 1 + 4 files changed, 26 insertions(+), 14 deletions(-) diff --git a/boot.php b/boot.php index 587e082b4..9461f21ae 100644 --- a/boot.php +++ b/boot.php @@ -7,7 +7,7 @@ require_once('include/text.php'); require_once("include/pgettext.php"); -define ( 'FRIENDIKA_VERSION', '2.2.1071' ); +define ( 'FRIENDIKA_VERSION', '2.2.1072' ); define ( 'DFRN_PROTOCOL_VERSION', '2.21' ); define ( 'DB_UPDATE_VERSION', 1079 ); diff --git a/include/Scrape.php b/include/Scrape.php index c4882243d..b32d7283e 100644 --- a/include/Scrape.php +++ b/include/Scrape.php @@ -468,13 +468,6 @@ function probe_url($url) { logger('probe_url: scrape_vcard: ' . print_r($vcard,true), LOGGER_DATA); } - if(! $profile) { - if($diaspora) - $profile = $hcard; - else - $profile = $url; - } - if($twitter) { logger('twitter: setup'); $tid = basename($url); @@ -490,8 +483,16 @@ function probe_url($url) { if(x($vcard,'nick')) $vcard['fn'] = $vcard['nick']; - - if(((! isset($vcard)) && (! $poll) && (! $at_addr)) || ($twitter)) { + $check_feed = false; + + if($twitter || ! $poll) + $check_feed = true; + if((! isset($vcard)) || (! $profile)) + $check_feed = true; + if(($at_addr) && (! count($links))) + $check_feed = false; + + if($check_feed) { $feedret = scrape_feed($url); logger('probe_url: scrape_feed returns: ' . print_r($feedret,true), LOGGER_DATA); @@ -527,6 +528,8 @@ function probe_url($url) { if(strpos($vcard['fn'],'@') !== false) $vcard['fn'] = substr($vcard['fn'],0,strpos($vcard['fn'],'@')); $email = unxmlify($author->get_email()); + if(! $profile && $author->get_link()) + $profile = trim(unxmlify($author->get_link())); if(! $vcard['photo']) { $rawtags = $feed->get_feed_tags( SIMPLEPIE_NAMESPACE_ATOM_10, 'author'); if($rawtags) { @@ -547,6 +550,8 @@ function probe_url($url) { if(strpos($vcard['fn'],'@') !== false) $vcard['fn'] = substr($vcard['fn'],0,strpos($vcard['fn'],'@')); $email = unxmlify($author->get_email()); + if(! $profile && $author->get_link()) + $profile = trim(unxmlify($author->get_link())); } if(! $vcard['photo']) { $rawmedia = $item->get_item_tags('http://search.yahoo.com/mrss/','thumbnail'); @@ -584,8 +589,10 @@ function probe_url($url) { if(strpos($vcard['nick'],' ')) $vcard['nick'] = trim(substr($vcard['nick'],0,strpos($vcard['nick'],' '))); } - $network = 'feed'; - $priority = 2; + if(! $network) + $network = 'feed'; + if(! $priority) + $priority = 2; } } @@ -593,8 +600,12 @@ function probe_url($url) { $a = get_app(); $vcard['photo'] = $a->get_baseurl() . '/images/default-profile.jpg' ; } + + if(! $profile) + $profile = $url; + $vcard['fn'] = notags($vcard['fn']); - $vcard['nick'] = notags($vcard['nick']); + $vcard['nick'] = str_replace(' ','',notags($vcard['nick'])); $result['name'] = $vcard['fn']; diff --git a/index.php b/index.php index 0c40c0729..80e8ca3b0 100644 --- a/index.php +++ b/index.php @@ -205,7 +205,7 @@ if(strlen($a->module)) { goaway($a->get_baseurl() . $_SERVER['REQUEST_URI']); } - logger('index.php: page not found: ' . $_SERVER['REQUEST_URI'] . ' QUERY: ' . $_SERVER['QUERY_STRING'], LOGGER_DEBUG); + logger('index.php: page not found: ' . $_SERVER['REQUEST_URI'] . ' ADDRESS: ' . $_SERVER['REMOTE_ADDR'] . ' QUERY: ' . $_SERVER['QUERY_STRING'], LOGGER_DEBUG); header($_SERVER["SERVER_PROTOCOL"] . ' 404 ' . t('Not Found')); notice( t('Page not found.' ) . EOL); } diff --git a/mod/probe.php b/mod/probe.php index 221d18650..c95db291b 100644 --- a/mod/probe.php +++ b/mod/probe.php @@ -13,6 +13,7 @@ function probe_content(&$a) { $o .= '

'; if(x($_GET,'addr')) { + $addr = trim($_GET['addr']); $res = probe_url($addr); $o .= '
';