Browse Source

Issue 2880: Editing post doesn't destroy mentions or hashtags anymore

pull/5086/head
Michael 3 years ago
parent
commit
3fe07cca57
3 changed files with 11 additions and 1 deletions
  1. +5
    -0
      include/text.php
  2. +5
    -0
      mod/item.php
  3. +1
    -1
      src/Model/Item.php

+ 5
- 0
include/text.php View File

@ -14,6 +14,7 @@ use Friendica\Core\L10n;
use Friendica\Core\PConfig;
use Friendica\Core\System;
use Friendica\Database\DBM;
use Friendica\Model\Contact;
use Friendica\Model\Event;
use Friendica\Model\Item;
use Friendica\Model\Profile;
@ -1965,6 +1966,10 @@ function undo_post_tagging($s) {
$cnt = preg_match_all('/([!#@])\[url=(.*?)\](.*?)\[\/url\]/ism', $s, $matches, PREG_SET_ORDER);
if ($cnt) {
foreach ($matches as $mtch) {
if (in_array($mtch[1], ['!', '@'])) {
$contact = Contact::getDetailsByURL($mtch[2]);
$mtch[3] = empty($contact['addr']) ? $mtch[2] : $contact['addr'];
}
$s = str_replace($mtch[0], $mtch[1] . $mtch[3],$s);
}
}


+ 5
- 0
mod/item.php View File

@ -661,6 +661,11 @@ function item_post(App $a) {
$datarray['edit'] = true;
}
// Check for hashtags in the body and repair or add hashtag links
if ($preview || $orig_post) {
Item::setHashtags($datarray);
}
// preview mode - prepare the body for display and send it via json
if ($preview) {
require_once 'include/conversation.php';


+ 1
- 1
src/Model/Item.php View File

@ -1250,7 +1250,7 @@ class Item extends BaseObject
}
}
private static function setHashtags(&$item)
public static function setHashtags(&$item)
{
$tags = get_tags($item["body"]);


Loading…
Cancel
Save