summaryrefslogtreecommitdiff
path: root/protocols/Telegram/src/proto.cpp
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2024-11-14 17:24:43 +0300
committerGeorge Hazan <george.hazan@gmail.com>2024-11-14 17:24:43 +0300
commitefc8291dafe68435480bb5dd378cf26ee62d042f (patch)
treee8242a4090dd360c0fae964759237c93017966c5 /protocols/Telegram/src/proto.cpp
parente76a4df48aa890a0e466c10f8bf6c40438ffb92a (diff)
fixes #4641 (Telegram: удаление с сервера чужих сообщений групчата, если пользователь Миранды не модератор/владелец)
Diffstat (limited to 'protocols/Telegram/src/proto.cpp')
-rw-r--r--protocols/Telegram/src/proto.cpp21
1 files changed, 10 insertions, 11 deletions
diff --git a/protocols/Telegram/src/proto.cpp b/protocols/Telegram/src/proto.cpp
index 73834415b8..a61d72b6ba 100644
--- a/protocols/Telegram/src/proto.cpp
+++ b/protocols/Telegram/src/proto.cpp
@@ -349,21 +349,12 @@ int CTelegramProto::AuthRequest(MCONTACT hContact, const wchar_t *)
INT_PTR CTelegramProto::GetCaps(int type, MCONTACT hContact)
{
- uint32_t ret;
-
switch (type) {
case PFLAGNUM_1:
return PF1_IM | PF1_FILE | PF1_CHAT | PF1_SEARCHBYNAME | PF1_ADDSEARCHRES | PF1_MODEMSGRECV | PF1_SERVERCLIST;
case PFLAGNUM_2:
return PF2_ONLINE | PF2_SHORTAWAY | PF2_LONGAWAY;
-
- case PFLAGNUM_4:
- ret = PF4_NOCUSTOMAUTH | PF4_FORCEAUTH | PF4_OFFLINEFILES | PF4_NOAUTHDENYREASON | PF4_SUPPORTTYPING | PF4_AVATARS
- | PF4_SERVERMSGID | PF4_REPLY | PF4_GROUPCHATFILES | PF4_IMSENDOFFLINE | PF4_SERVERFORMATTING;
- if (GetId(hContact) != m_iOwnId)
- ret |= PF4_DELETEFORALL;
- return ret;
case PFLAGNUM_5:
return PF2_SHORTAWAY | PF2_LONGAWAY;
@@ -371,9 +362,17 @@ INT_PTR CTelegramProto::GetCaps(int type, MCONTACT hContact)
case PFLAG_UNIQUEIDTEXT:
return (INT_PTR)L"ID";
- default:
- return 0;
+ case PFLAGNUM_4:
+ uint32_t ret = PF4_NOCUSTOMAUTH | PF4_FORCEAUTH | PF4_OFFLINEFILES | PF4_NOAUTHDENYREASON | PF4_SUPPORTTYPING | PF4_AVATARS
+ | PF4_SERVERMSGID | PF4_REPLY | PF4_GROUPCHATFILES | PF4_IMSENDOFFLINE | PF4_SERVERFORMATTING;
+
+ if (GetId(hContact) != m_iOwnId)
+ ret |= PF4_DELETEFORALL;
+
+ return ret;
}
+
+ return 0;
}
/////////////////////////////////////////////////////////////////////////////////////////