diff options
author | Andrei Karas <akaras@inbox.ru> | 2016-01-16 22:21:30 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2016-01-16 22:34:33 +0300 |
commit | 0ad55dae62f1c8295517bf87844368575a813d57 (patch) | |
tree | 1611caa884e1b2fa5e0b4071feb436ec0e13d3d5 /src/gui | |
parent | 71ef8f1355524d9af8a3c8231e128cbc71365a13 (diff) | |
download | plus-0ad55dae62f1c8295517bf87844368575a813d57.tar.gz plus-0ad55dae62f1c8295517bf87844368575a813d57.tar.bz2 plus-0ad55dae62f1c8295517bf87844368575a813d57.tar.xz plus-0ad55dae62f1c8295517bf87844368575a813d57.zip |
Add function for replace item links in chat.
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/widgets/tabs/chat/chattab.cpp | 37 |
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]) |