From f4c1d504575dec4cf66c0c913ab55e8cdfb15e9a Mon Sep 17 00:00:00 2001 From: ElzorFox Date: Tue, 31 Dec 2024 17:04:05 +0500 Subject: VKontakte: fixes #4824 add NS support also for gifts, graffiti, market version bump --- protocols/VKontakte/src/misc.cpp | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'protocols/VKontakte/src/misc.cpp') diff --git a/protocols/VKontakte/src/misc.cpp b/protocols/VKontakte/src/misc.cpp index a0e49f8cce..3198cf9cde 100644 --- a/protocols/VKontakte/src/misc.cpp +++ b/protocols/VKontakte/src/misc.cpp @@ -1378,10 +1378,14 @@ CMStringW CVkProto::GetAttachmentDescr(const JSONNode &jnAttachments, BBCSupport continue; CMStringW wszUrl(jnGraffiti["url"].as_mstring()); + CMStringW wszImgUrl(wszUrl); + + if (m_vkOptions.bBBCNewStorySupport) + wszUrl = GetVkFileItem(wszImgUrl, hContact, iMessageId); res.AppendFormat(L"%s\n\t%s", SetBBCString(TranslateT("Graffiti"), iBBC, vkbbcUrl, wszUrl).c_str(), - SetBBCString(wszUrl, bbcBasic, vkbbcImg).c_str() + SetBBCString(wszImgUrl, iBBC, vkbbcImg).c_str() ); } else if (wszType == L"video") { @@ -1575,8 +1579,11 @@ CMStringW CVkProto::GetAttachmentDescr(const JSONNode &jnAttachments, BBCSupport wszUrl = wszLink.IsEmpty() ? (wszLink128.IsEmpty() ? wszLinkLast : wszLink128) : wszLink; - if (!m_vkOptions.bStikersAsSmileys) + if (!m_vkOptions.bStikersAsSmileys) { + if(m_vkOptions.bBBCNewStorySupport) + wszUrl = GetVkFileItem(wszUrl, hContact, iMessageId); res += SetBBCString(wszUrl, iBBC, vkbbcImg); + } else if (m_vkOptions.bUseStikersAsStaticSmileys) res.AppendFormat(L"[sticker:%d]", iStickerId); else { @@ -1649,10 +1656,13 @@ CMStringW CVkProto::GetAttachmentDescr(const JSONNode &jnAttachments, BBCSupport SetBBCString(TranslateT("Product"), iBBC, vkbbcB).c_str(), SetBBCString(wszTitle.IsEmpty() ? TranslateT("Link") : wszTitle, iBBC, vkbbcUrl, wszUrl).c_str()); - if (!wszPhoto.IsEmpty()) + if (!wszPhoto.IsEmpty()) { + if (m_vkOptions.bBBCNewStorySupport) + wszPhoto = GetVkFileItem(wszPhoto, hContact, iMessageId); res.AppendFormat(L"\n\t%s: %s", SetBBCString(TranslateT("Photo"), iBBC, vkbbcB).c_str(), SetBBCString(wszPhoto, iBBC, vkbbcImg).c_str()); + } if (jnMarket["price"] && jnMarket["price"]["text"]) res.AppendFormat(L"\n\t%s: %s", @@ -1679,8 +1689,11 @@ CMStringW CVkProto::GetAttachmentDescr(const JSONNode &jnAttachments, BBCSupport continue; res += SetBBCString(TranslateT("Gift"), iBBC, vkbbcUrl, wszLink); - if (m_vkOptions.iIMGBBCSupport && iBBC != bbcNo) + if (m_vkOptions.iIMGBBCSupport && iBBC != bbcNo) { + if (m_vkOptions.bBBCNewStorySupport) + wszLink = GetVkFileItem(wszLink, hContact, iMessageId); res.AppendFormat(L"\n\t%s", SetBBCString(wszLink, iBBC, vkbbcImg).c_str()); + } } else { res.AppendFormat(TranslateT("Unsupported or unknown attachment type: %s"), SetBBCString(wszType, iBBC, vkbbcB).c_str()); -- cgit v1.2.3