Drupal doesn't provide absolute URL on feed. Fix to allow importing Drupal "contacts".
This commit is contained in:
parent
1ccda19f7a
commit
f3f063c0dd
1 changed files with 18 additions and 0 deletions
|
@ -241,6 +241,17 @@ function scrape_feed($url) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$head = $dom->getElementsByTagName('base');
|
||||||
|
if($head) {
|
||||||
|
foreach($head as $head0) {
|
||||||
|
$basename = $head0->getAttribute('href');
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(! $basename)
|
||||||
|
$basename = substr($url,0,strrpos($url,'/')) . '/';
|
||||||
|
|
||||||
$items = $dom->getElementsByTagName('link');
|
$items = $dom->getElementsByTagName('link');
|
||||||
|
|
||||||
// get Atom/RSS link elements, take the first one of either.
|
// get Atom/RSS link elements, take the first one of either.
|
||||||
|
@ -259,6 +270,13 @@ function scrape_feed($url) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Drupal and perhaps others only provide relative URL's. Turn them into absolute.
|
||||||
|
|
||||||
|
if(x($ret,'feed_atom') && (! strstr($ret['feed_atom'],'://')))
|
||||||
|
$ret['feed_atom'] = $basename . $ret['feed_atom'];
|
||||||
|
if(x($ret,'feed_rss') && (! strstr($ret['feed_rss'],'://')))
|
||||||
|
$ret['feed_rss'] = $basename . $ret['feed_rss'];
|
||||||
|
|
||||||
return $ret;
|
return $ret;
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue