From d4b457b01d3c2ab2d2c214052ad60a5bbc06bf42 Mon Sep 17 00:00:00 2001 From: gdlbo <41114720+gdlbo@users.noreply.github.com> Date: Fri, 12 May 2023 19:50:48 +0300 Subject: [PATCH] fixed detection admin for kick button --- .../ui/components/common/MsgActionHelper.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/vk/im/ui/components/common/MsgActionHelper.java b/app/src/main/java/com/vk/im/ui/components/common/MsgActionHelper.java index 8defed88a..438d192a4 100644 --- a/app/src/main/java/com/vk/im/ui/components/common/MsgActionHelper.java +++ b/app/src/main/java/com/vk/im/ui/components/common/MsgActionHelper.java @@ -3,9 +3,11 @@ package com.vk.im.ui.components.common; import com.vk.core.extensions.CollectionExt; import com.vk.im.engine.ImConfig; import com.vk.im.engine.ImEngine; +import com.vk.im.engine.models.Member; import com.vk.im.engine.models.dialogs.Dialog; import com.vk.im.engine.models.messages.Msg; import com.vk.im.engine.utils.MsgPermissionHelper; +import ru.vtosters.lite.utils.AccountManagerUtils; import java.util.ArrayList; import java.util.Collection; @@ -35,11 +37,21 @@ public final class MsgActionHelper { CollectionExt.a(arrayList, MsgAction.TRANSLATE, true); CollectionExt.a(arrayList, MsgAction.READTO, true); - boolean isAdmin; + boolean isAdmin = false; + try { - isAdmin = aVar.a().z1().t1().contains(aVar.b().j().b()) && !aVar.a().z1().K1(); // get admin list and check if it has you | is you kicked - } catch (Exception e) { - isAdmin = false; + if (aVar.a().z1().L0().t1() == AccountManagerUtils.getUserId()) { // is owner + isAdmin = true; + } else if (!aVar.a().z1().K1()) { // is you not kicked + for (Member admins : aVar.a().z1().t1()) { // admin list + if (admins.t1() == AccountManagerUtils.getUserId()) { + isAdmin = true; + break; + } + } + } + } catch (Exception ignored) { + } CollectionExt.a(arrayList, MsgAction.KICK, isAdmin);