stuff to make connecting to diaspora profiles easier

This commit is contained in:
Friendika 2011-03-19 01:19:11 -07:00
parent 5034d7333e
commit 7e33c1072a
3 changed files with 21 additions and 7 deletions

View file

@ -1603,9 +1603,15 @@ function lrdd($uri) {
if(! function_exists('fetch_lrdd_template')) { if(! function_exists('fetch_lrdd_template')) {
function fetch_lrdd_template($host) { function fetch_lrdd_template($host) {
$tpl = ''; $tpl = '';
$url = 'http://' . $host . '/.well-known/host-meta' ;
$links = fetch_xrd_links($url); $url1 = 'https://' . $host . '/.well-known/host-meta' ;
logger('template: ' . print_r($links,true)); $url2 = 'http://' . $host . '/.well-known/host-meta' ;
$links = fetch_xrd_links($url1);
logger('template (https): ' . print_r($links,true));
if(! count($links)) {
$links = fetch_xrd_links($url2);
logger('template (http): ' . print_r($links,true));
}
if(count($links)) { if(count($links)) {
foreach($links as $link) foreach($links as $link)
if($link['@attributes']['rel'] && $link['@attributes']['rel'] === 'lrdd') if($link['@attributes']['rel'] && $link['@attributes']['rel'] === 'lrdd')

View file

@ -905,6 +905,8 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0) {
require_once('simplepie/simplepie.inc'); require_once('simplepie/simplepie.inc');
if(! $contact)
logger('consume feed: anonymous');
$feed = new SimplePie(); $feed = new SimplePie();
$feed->set_raw_data($xml); $feed->set_raw_data($xml);
if($datedir) if($datedir)

View file

@ -11,7 +11,7 @@ function follow_post(&$a) {
} }
$url = $orig_url = notags(trim($_POST['url'])); $url = $orig_url = notags(trim($_POST['url']));
$diaspora = false;
$email_conversant = false; $email_conversant = false;
if($url) { if($url) {
@ -28,6 +28,9 @@ function follow_post(&$a) {
$hcard = unamp($link['@attributes']['href']); $hcard = unamp($link['@attributes']['href']);
if($link['@attributes']['rel'] === 'http://webfinger.net/rel/profile-page') if($link['@attributes']['rel'] === 'http://webfinger.net/rel/profile-page')
$profile = unamp($link['@attributes']['href']); $profile = unamp($link['@attributes']['href']);
if($link['@attributes']['rel'] === 'http://joindiaspora.com/seed_location')
$diaspora = true;
} }
@ -90,9 +93,12 @@ function follow_post(&$a) {
} }
} }
if(! $profile) if(! $profile) {
if($diaspora)
$profile = $hcard;
else
$profile = $url; $profile = $url;
}
if(! x($vcard,'fn')) if(! x($vcard,'fn'))
if(x($vcard,'nick')) if(x($vcard,'nick'))