fixed get_pwr_chat
This commit is contained in:
parent
bf14298188
commit
5f056d12d7
@ -452,12 +452,16 @@ trait PeerHandler
|
|||||||
if (!isset($res['participants']) && isset($res['can_view_participants']) && $res['can_view_participants']) {
|
if (!isset($res['participants']) && isset($res['can_view_participants']) && $res['can_view_participants']) {
|
||||||
$res['participants'] = [];
|
$res['participants'] = [];
|
||||||
$limit = 200;
|
$limit = 200;
|
||||||
$offset = -$limit;
|
|
||||||
$filters = ['channelParticipantsBanned', 'channelParticipantsAdmins', 'channelParticipantsKicked', 'channelParticipantsBots', 'channelParticipantsRecent'];
|
$filters = ['channelParticipantsBanned', 'channelParticipantsAdmins', 'channelParticipantsKicked', 'channelParticipantsBots', 'channelParticipantsRecent'];
|
||||||
$gres = $this->method_call('channels.getParticipants', ['channel' => $full['InputChannel'], 'filter' => ['_' => 'channelParticipantsRecent'], 'offset' => $offset += $limit, 'limit' => $limit], ['datacenter' => $this->datacenter->curdc]);
|
|
||||||
$count = $res['participants_count'] + (isset($res['kicked_count']) ? $res['kicked_count'] : 0) + (isset($res['admins_count']) ? $res['admins_count'] : 0) + (isset($res['banned_count']) ? $res['banned_count'] : 0);
|
|
||||||
while (count($filters)) {
|
while (count($filters)) {
|
||||||
$filter = array_pop($filters);
|
$filter = array_pop($filters);
|
||||||
|
$offset = -$limit;
|
||||||
|
try {
|
||||||
|
$gres = $this->method_call('channels.getParticipants', ['channel' => $full['InputChannel'], 'filter' => ['_' => $filter, 'q' => ''], 'offset' => $offset += $limit, 'limit' => $limit], ['datacenter' => $this->datacenter->curdc]);
|
||||||
|
} catch (\danog\MadelineProto\RPCErrorException $e) {
|
||||||
|
if ($e->rpc === 'CHAT_ADMIN_REQUIRED') continue; else throw $e;
|
||||||
|
}
|
||||||
|
$count = $gres['count'];
|
||||||
while ($offset <= $count) {
|
while ($offset <= $count) {
|
||||||
foreach ($gres['participants'] as $participant) {
|
foreach ($gres['participants'] as $participant) {
|
||||||
$newres = [];
|
$newres = [];
|
||||||
@ -510,9 +514,7 @@ trait PeerHandler
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ($offset >= $count) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ($fullfetch || $send) {
|
if ($fullfetch || $send) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user