status.net mentions to non-followers require the numeric profile URL, not the nickname profile URL. Though it works when they are a follower.
This commit is contained in:
parent
4efa0f1e81
commit
05d3eb59ec
4 changed files with 20 additions and 3 deletions
4
boot.php
4
boot.php
|
@ -1941,8 +1941,10 @@ function get_mentions($item) {
|
|||
$arr = explode(',',$item['tag']);
|
||||
foreach($arr as $x) {
|
||||
$matches = null;
|
||||
if(preg_match('/@\[url=([^\]]*)\]/',$x,$matches))
|
||||
if(preg_match('/@\[url=([^\]]*)\]/',$x,$matches)) {
|
||||
$o .= "\t\t" . '<link rel="mentioned" href="' . $matches[1] . '" />' . "\r\n";
|
||||
$o .= "\t\t" . '<link rel="ostatus:attention" href="' . $matches[1] . '" />' . "\r\n";
|
||||
}
|
||||
}
|
||||
return $o;
|
||||
}}
|
||||
|
|
|
@ -128,7 +128,8 @@ $namespaces = <<< EOT
|
|||
xmlns:dfrn="http://purl.org/macgirvin/dfrn/1.0"
|
||||
xmlns:as="http://activitystrea.ms/spec/1.0/"
|
||||
xmlns:georss="http://www.georss.org/georss"
|
||||
xmlns:poco="http://portablecontacts.net/spec/1.0" >
|
||||
xmlns:poco="http://portablecontacts.net/spec/1.0"
|
||||
xmlns:ostatus="http://ostatus.org/schema/1.0" >
|
||||
EOT;
|
||||
|
||||
$slap = str_replace('<entry>',$namespaces,$slap);
|
||||
|
|
13
mod/item.php
13
mod/item.php
|
@ -239,6 +239,7 @@ function item_post(&$a) {
|
|||
}
|
||||
else {
|
||||
$newname = $name;
|
||||
$alias = '';
|
||||
if(strstr($name,'_')) {
|
||||
$newname = str_replace('_',' ',$name);
|
||||
$r = q("SELECT * FROM `contact` WHERE `name` = '%s' AND `uid` = %d LIMIT 1",
|
||||
|
@ -257,6 +258,8 @@ function item_post(&$a) {
|
|||
if($r[0]['network'] === 'stat') {
|
||||
$newname = $r[0]['nick'];
|
||||
$stat = true;
|
||||
if($r[0]['alias'])
|
||||
$alias = $r[0]['alias'];
|
||||
}
|
||||
else
|
||||
$newname = $r[0]['name'];
|
||||
|
@ -271,6 +274,16 @@ function item_post(&$a) {
|
|||
if(strlen($str_tags))
|
||||
$str_tags .= ',';
|
||||
$str_tags .= '@[url=' . $profile . ']' . $newname . '[/url]';
|
||||
|
||||
// Status.Net seems to require the numeric ID URL in a mention if the person isn't
|
||||
// subscribed to you. But the nickname URL is OK if they are. Grrr. We'll tag both.
|
||||
|
||||
if(strlen($alias)) {
|
||||
if(strlen($str_tags))
|
||||
$str_tags .= ',';
|
||||
$str_tags .= '@[url=' . $alias . ']' . $newname . '[/url]';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,7 +6,8 @@
|
|||
xmlns:dfrn="http://purl.org/macgirvin/dfrn/1.0"
|
||||
xmlns:as="http://activitystrea.ms/spec/1.0/"
|
||||
xmlns:georss="http://www.georss.org/georss"
|
||||
xmlns:poco="http://portablecontacts.net/spec/1.0" >
|
||||
xmlns:poco="http://portablecontacts.net/spec/1.0"
|
||||
xmlns:ostatus="http://ostatus.org/schema/1.0" >
|
||||
|
||||
<id>$feed_id</id>
|
||||
<title>$feed_title</title>
|
||||
|
|
Loading…
Reference in a new issue