aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--boot.php14
-rw-r--r--include/items.php3
-rw-r--r--include/notifier.php8
-rw-r--r--mod/item.php2
-rw-r--r--view/atom_cmnt.tpl1
-rw-r--r--view/atom_item.tpl1
6 files changed, 28 insertions, 1 deletions
diff --git a/boot.php b/boot.php
index 30e5a111e..2de398cfc 100644
--- a/boot.php
+++ b/boot.php
@@ -1358,3 +1358,17 @@ function like_puller($a,$item,&$arr,$mode) {
return;
}}
+
+function get_mentions($item) {
+ $o = '';
+ if(! strlen($item['tag']))
+ return $o;
+
+ $arr = explode(',',$item['tag']);
+ foreach($arr as $x) {
+ $matches = null;
+ if(preg_match('/@\[url=([^\]]*)\]/',$x,$matches))
+ $o .= "\t\t" . '<link rel="mentioned" href="' . $matches[1] . '" />' . "\r\n";
+ }
+ return $o;
+} \ No newline at end of file
diff --git a/include/items.php b/include/items.php
index d37f7708f..7f62f6dec 100644
--- a/include/items.php
+++ b/include/items.php
@@ -187,6 +187,7 @@ function get_feed_for(&$a, $dfrn_id, $owner_id, $last_update, $direction = 0) {
else {
$verb = construct_verb($item);
$actobj = construct_activity($item);
+ $mentioned = get_mentions($item);
if($item['parent'] == $item['id']) {
$atom .= replace_macros($item_template, array(
@@ -207,6 +208,7 @@ function get_feed_for(&$a, $dfrn_id, $owner_id, $last_update, $direction = 0) {
'$content' => xmlify($item['body']),
'$verb' => xmlify($verb),
'$actobj' => $actobj, // do not xmlify
+ '$mentioned' => $mentioned,
'$comment_allow' => $allow
));
}
@@ -224,6 +226,7 @@ function get_feed_for(&$a, $dfrn_id, $owner_id, $last_update, $direction = 0) {
'$alt' => xmlify($a->get_baseurl() . '/display/' . $owner_nick . '/' . $item['id']),
'$verb' => xmlify($verb),
'$actobj' => $actobj, // do not xmlify
+ '$mentioned' => $mentioned,
'$parent_id' => xmlify($item['parent-uri']),
'$comment_allow' => $allow
));
diff --git a/include/notifier.php b/include/notifier.php
index 884493a79..1f6bfa36a 100644
--- a/include/notifier.php
+++ b/include/notifier.php
@@ -213,6 +213,7 @@
$verb = construct_verb($item);
$actobj = construct_activity($item);
+ $mentioned = get_mentions($item);
if($item['id'] == $item_id) {
$slap = replace_macros($cmnt_template, array(
@@ -231,6 +232,7 @@
'$type' => 'html',
'$verb' => xmlify($verb),
'$actobj' => $actobj,
+ '$mentioned' => $mentioned,
'$alt' => xmlify($a->get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['id']),
'$content' => xmlify(bbcode($item['body'])),
'$parent_id' => xmlify($item['parent-uri']),
@@ -253,6 +255,7 @@
'$type' => 'text',
'$verb' => xmlify($verb),
'$actobj' => $actobj,
+ '$mentioned' => $mentioned,
'$alt' => xmlify($a->get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['id']),
'$content' => xmlify($item['body']),
'$parent_id' => xmlify($item['parent-uri']),
@@ -283,6 +286,7 @@
$verb = construct_verb($item);
$actobj = construct_activity($item);
+ $mentioned = get_mentions($item);
if($item['parent'] == $item['id']) {
$atom .= replace_macros($item_template, array(
@@ -301,6 +305,7 @@
'$type' => 'text',
'$verb' => xmlify($verb),
'$actobj' => $actobj,
+ '$mentioned' => $mentioned,
'$content' => xmlify($item['body']),
'$alt' => xmlify($a->get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['id']),
'$comment_allow' => (($item['last-child']) ? 1 : 0)
@@ -321,6 +326,7 @@
'$type' => 'html',
'$verb' => xmlify($verb),
'$actobj' => $actobj,
+ '$mentioned' => $mentioned,
'$content' => xmlify(bbcode($item['body'])),
'$alt' => xmlify($a->get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['id']),
'$comment_allow' => (($item['last-child']) ? 1 : 0)
@@ -343,6 +349,7 @@
'$type' => 'text',
'$verb' => xmlify($verb),
'$actobj' => $actobj,
+ '$mentioned' => $mentioned,
'$parent_id' => xmlify($item['parent-uri']),
'$comment_allow' => (($item['last-child']) ? 1 : 0)
));
@@ -361,6 +368,7 @@
'$type' => 'html',
'$verb' => xmlify($verb),
'$actobj' => $actobj,
+ '$mentioned' => $mentioned,
'$parent_id' => xmlify($item['parent-uri']),
'$comment_allow' => (($item['last-child']) ? 1 : 0)
));
diff --git a/mod/item.php b/mod/item.php
index 67832204d..703267992 100644
--- a/mod/item.php
+++ b/mod/item.php
@@ -165,7 +165,7 @@ function item_post(&$a) {
if(strlen($str_tags))
$str_tags .= ',';
$profile = str_replace(',','%2c',$profile);
- $str_tags .= '[url=' . $profile . ']' . $newname . '[/url]';
+ $str_tags .= '@[url=' . $profile . ']' . $newname . '[/url]';
}
}
}
diff --git a/view/atom_cmnt.tpl b/view/atom_cmnt.tpl
index 6c1a15faa..b70a6dc4e 100644
--- a/view/atom_cmnt.tpl
+++ b/view/atom_cmnt.tpl
@@ -16,5 +16,6 @@
<dfrn:comment-allow>$comment_allow</dfrn:comment-allow>
<as:verb>$verb</as:verb>
$actobj
+ $mentioned
</entry>
diff --git a/view/atom_item.tpl b/view/atom_item.tpl
index b26ba2e69..0d36b579d 100644
--- a/view/atom_item.tpl
+++ b/view/atom_item.tpl
@@ -23,5 +23,6 @@
<dfrn:comment-allow>$comment_allow</dfrn:comment-allow>
<as:verb>$verb</as:verb>
$actobj
+ $mentioned
</entry>