diff options
author | Friendika <info@friendika.com> | 2011-11-02 18:52:55 -0700 |
---|---|---|
committer | Friendika <info@friendika.com> | 2011-11-02 18:52:55 -0700 |
commit | a9ec56ace1756726517650d96192df5320f445fe (patch) | |
tree | 1efd4cae66a66932e884c1dbd13f95f6b1f8da4d | |
parent | 8582701b70d2ae668086efe3a35a0c9cccf085d8 (diff) | |
download | volse-hubzilla-a9ec56ace1756726517650d96192df5320f445fe.tar.gz volse-hubzilla-a9ec56ace1756726517650d96192df5320f445fe.tar.bz2 volse-hubzilla-a9ec56ace1756726517650d96192df5320f445fe.zip |
prevent duplicate @ tags
-rw-r--r-- | boot.php | 2 | ||||
-rw-r--r-- | mod/item.php | 18 |
2 files changed, 13 insertions, 7 deletions
@@ -9,7 +9,7 @@ require_once('include/nav.php'); require_once('include/cache.php'); define ( 'FRIENDIKA_PLATFORM', 'Friendica'); -define ( 'FRIENDIKA_VERSION', '2.3.1152' ); +define ( 'FRIENDIKA_VERSION', '2.3.1153' ); define ( 'DFRN_PROTOCOL_VERSION', '2.22' ); define ( 'DB_UPDATE_VERSION', 1101 ); diff --git a/mod/item.php b/mod/item.php index 3af0f799a..48bfb7751 100644 --- a/mod/item.php +++ b/mod/item.php @@ -455,17 +455,23 @@ function item_post(&$a) { if($profile) { $body = str_replace('@' . $name, '@' . '[url=' . $profile . ']' . $newname . '[/url]', $body); $profile = str_replace(',','%2c',$profile); - if(strlen($str_tags)) - $str_tags .= ','; - $str_tags .= '@[url=' . $profile . ']' . $newname . '[/url]'; + $newtag = '@[url=' . $profile . ']' . $newname . '[/url]'; + if(! stristr($str_tags,$newtag)) { + if(strlen($str_tags)) + $str_tags .= ','; + $str_tags .= $newtag; + } // 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]'; + $newtag = '@[url=' . $alias . ']' . $newname . '[/url]'; + if(! stristr($str_tags,$newtag)) { + if(strlen($str_tags)) + $str_tags .= ','; + $str_tags .= $newtag; + } } } } |