diff --git a/app/Message.php b/app/Message.php index 4e22157e2..6dfafb044 100644 --- a/app/Message.php +++ b/app/Message.php @@ -242,7 +242,8 @@ class Message extends Model ->orderBy('published', 'asc') ->first(); - if ($parent && $parent->mid != $this->mid) { + if ($parent && $parent->mid != $this->mid + && $parent->replaceid != $this->replaceid) { $this->parentmid = $parent->mid; } } diff --git a/app/widgets/ChatActions/ChatActions.php b/app/widgets/ChatActions/ChatActions.php index 3f62a6aa6..7da5a918f 100644 --- a/app/widgets/ChatActions/ChatActions.php +++ b/app/widgets/ChatActions/ChatActions.php @@ -85,17 +85,19 @@ class ChatActions extends \Movim\Widget\Base ->first(); if ($message && $message->resolved == false) { - $picture = resolvePictureFileFromUrl(trim($message->body)); - - if ($picture != false) { - $message->file = (array)$picture; + try { + Url::resolve(trim($message->body)); + $message->urlid = Url::$id; $this->rpc('Chat.refreshMessage', $message->mid); - } else { - try { - Url::resolve(trim($message->body)); - $message->urlid = Url::$id; + } catch (\Exception $e) {} + + if (!$message->urlid) { + $picture = resolvePictureFileFromUrl(trim($message->body)); + + if ($picture != false) { + $message->file = (array)$picture; $this->rpc('Chat.refreshMessage', $message->mid); - } catch (\Exception $e) {} + } } $message->resolved = true;