Show better source for linback items
This commit is contained in:
parent
11810bbf54
commit
4f0fae9e90
@ -358,4 +358,34 @@ class LinkbackPlugin extends Plugin
|
||||
$action_name === 'linkbacksettings');
|
||||
return true;
|
||||
}
|
||||
|
||||
function onStartNoticeSourceLink($notice, &$name, &$url, &$title)
|
||||
{
|
||||
// If we don't handle this, keep the event handler going
|
||||
if (!in_array($notice->source, array('linkback'))) {
|
||||
return true;
|
||||
}
|
||||
|
||||
try {
|
||||
$url = $notice->getUrl();
|
||||
// If getUrl() throws exception, $url is never set
|
||||
|
||||
$bits = parse_url($url);
|
||||
$domain = $bits['host'];
|
||||
if (substr($domain, 0, 4) == 'www.') {
|
||||
$name = substr($domain, 4);
|
||||
} else {
|
||||
$name = $domain;
|
||||
}
|
||||
|
||||
// TRANS: Title. %s is a domain name.
|
||||
$title = sprintf(_m('Sent from %s via Linkback'), $domain);
|
||||
|
||||
// Abort event handler, we have a name and URL!
|
||||
return false;
|
||||
} catch (InvalidUrlException $e) {
|
||||
// This just means we don't have the notice source data
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user