mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2026-08-02 02:07:54 +00:00
Added initial API support for different boosts lists.
This commit is contained in:
@@ -533,8 +533,13 @@ rpl::producer<rpl::no_value, QString> Boosts::request() {
|
||||
};
|
||||
_boostStatus.link = qs(data.vboost_url());
|
||||
|
||||
requestBoosts({}, [=](Data::BoostsListSlice &&slice) {
|
||||
_boostStatus.firstSlice = std::move(slice);
|
||||
using namespace Data;
|
||||
requestBoosts({ .gifts = false }, [=](BoostsListSlice &&slice) {
|
||||
_boostStatus.firstSliceBoosts = std::move(slice);
|
||||
requestBoosts({ .gifts = true }, [=](BoostsListSlice &&s) {
|
||||
_boostStatus.firstSliceGifts = std::move(s);
|
||||
consumer.put_done();
|
||||
});
|
||||
consumer.put_done();
|
||||
});
|
||||
}).fail([=](const MTP::Error &error) {
|
||||
@@ -553,9 +558,11 @@ void Boosts::requestBoosts(
|
||||
}
|
||||
constexpr auto kTlFirstSlice = tl::make_int(kFirstSlice);
|
||||
constexpr auto kTlLimit = tl::make_int(kLimit);
|
||||
const auto gifts = token.gifts;
|
||||
_requestId = _api.request(MTPpremium_GetBoostsList(
|
||||
// MTP_flags(MTPpremium_GetBoostsList::Flag::f_gifts),
|
||||
MTP_flags(0),
|
||||
gifts
|
||||
? MTP_flags(MTPpremium_GetBoostsList::Flag::f_gifts)
|
||||
: MTP_flags(0),
|
||||
_peer->input,
|
||||
MTP_string(token.next),
|
||||
token.next.isEmpty() ? kTlFirstSlice : kTlLimit
|
||||
@@ -596,12 +603,13 @@ void Boosts::requestBoosts(
|
||||
}
|
||||
done(Data::BoostsListSlice{
|
||||
.list = std::move(list),
|
||||
.total = data.vcount().v,
|
||||
.multipliedTotal = data.vcount().v,
|
||||
.allLoaded = (data.vcount().v == data.vboosts().v.size()),
|
||||
.token = Data::BoostsListSlice::OffsetToken{
|
||||
data.vnext_offset()
|
||||
.next = data.vnext_offset()
|
||||
? qs(*data.vnext_offset())
|
||||
: QString()
|
||||
: QString(),
|
||||
.gifts = gifts,
|
||||
},
|
||||
});
|
||||
}).fail([=] {
|
||||
|
||||
Reference in New Issue
Block a user