summaryrefslogtreecommitdiff
path: root/src/gui/widgets
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2016-01-16 22:21:30 +0300
committerAndrei Karas <akaras@inbox.ru>2016-01-16 22:34:33 +0300
commit0ad55dae62f1c8295517bf87844368575a813d57 (patch)
tree1611caa884e1b2fa5e0b4071feb436ec0e13d3d5 /src/gui/widgets
parent71ef8f1355524d9af8a3c8231e128cbc71365a13 (diff)
downloadManaVerse-0ad55dae62f1c8295517bf87844368575a813d57.tar.gz
ManaVerse-0ad55dae62f1c8295517bf87844368575a813d57.tar.bz2
ManaVerse-0ad55dae62f1c8295517bf87844368575a813d57.tar.xz
ManaVerse-0ad55dae62f1c8295517bf87844368575a813d57.zip
Add function for replace item links in chat.
Diffstat (limited to 'src/gui/widgets')
-rw-r--r--src/gui/widgets/tabs/chat/chattab.cpp37
1 files changed, 1 insertions, 36 deletions
diff --git a/src/gui/widgets/tabs/chat/chattab.cpp b/src/gui/widgets/tabs/chat/chattab.cpp
index 94e66e955..cb1566092 100644
--- a/src/gui/widgets/tabs/chat/chattab.cpp
+++ b/src/gui/widgets/tabs/chat/chattab.cpp
@@ -379,42 +379,7 @@ void ChatTab::chatInput(const std::string &message)
if (msg.empty())
return;
- // Check for item link
- size_t start = msg.find('[');
- size_t sz = msg.size();
- while (start + 1 < sz && start != std::string::npos
- && msg[start + 1] != '@')
- {
- const size_t end = msg.find(']', start);
- if (start + 1 != end && end != std::string::npos)
- {
- // Catch multiple embeds and ignore them
- // so it doesn't crash the client.
- while ((msg.find('[', start + 1) != std::string::npos) &&
- (msg.find('[', start + 1) < end))
- {
- start = msg.find('[', start + 1);
- }
-
- std::string temp;
- if (start + 1 < sz && end < sz && end > start + 1)
- {
- temp = msg.substr(start + 1, end - start - 1);
-
- const ItemInfo &itemInfo = ItemDB::get(temp);
- if (itemInfo.getId() != 0)
- {
- msg.insert(end, "@@");
- msg.insert(start + 1, "|");
- msg.insert(start + 1, toString(itemInfo.getId()));
- msg.insert(start + 1, "@@");
- sz = msg.size();
- }
- }
- }
- start = msg.find('[', start + 1);
- }
-
+ replaceItemLinks(msg);
replaceVars(msg);
switch (msg[0])