mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2026-07-25 06:54:43 +00:00
Don't edit non-member tags.
This commit is contained in:
@@ -495,8 +495,9 @@ void TagInfoBox(
|
||||
const auto isAdmin = (selfRole != BadgeRole::User);
|
||||
const auto canEditSelf = isAdmin
|
||||
|| !peer->amRestricted(ChatRestriction::EditRank);
|
||||
|
||||
if (canEditSelf) {
|
||||
const auto channel = peer->asChannel();
|
||||
const auto inGroup = peer->isChat() || (channel && channel->amIn());
|
||||
if (canEditSelf && inGroup) {
|
||||
const auto currentRank = LookupCurrentRank(peer);
|
||||
auto buttonText = currentRank.isEmpty()
|
||||
? tr::lng_tag_info_add_my_tag()
|
||||
|
||||
@@ -3998,6 +3998,12 @@ void FillSenderUserpicMenu(
|
||||
|
||||
if (const auto user = peer->asUser()) {
|
||||
if (groupPeer) {
|
||||
// Discussion group users may not be members,
|
||||
// so editing their tag is not available.
|
||||
const auto groupChannel = groupPeer->asChannel();
|
||||
const auto isDiscussionGroup = groupChannel
|
||||
&& groupChannel->isMegagroup()
|
||||
&& groupChannel->discussionLink();
|
||||
const auto canEditTarget = [&] {
|
||||
if (const auto chat = groupPeer->asChat()) {
|
||||
if (peerToUser(user->id) == chat->creator) {
|
||||
@@ -4017,7 +4023,10 @@ void FillSenderUserpicMenu(
|
||||
}
|
||||
return false;
|
||||
}();
|
||||
if (groupPeer->canManageRanks() && canEditTarget && !user->isSelf()) {
|
||||
if (!isDiscussionGroup
|
||||
&& canEditTarget
|
||||
&& groupPeer->canManageRanks()
|
||||
&& !user->isSelf()) {
|
||||
const auto currentRank = LookupMemberRank(
|
||||
groupPeer,
|
||||
user);
|
||||
|
||||
Reference in New Issue
Block a user