mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-04-15 21:57:10 +02:00
Fixed expiration date of boosts in boosts list.
This commit is contained in:
parent
282c076931
commit
33cf9a0702
4 changed files with 10 additions and 14 deletions
|
@ -587,6 +587,7 @@ void Boosts::requestBoosts(
|
|||
|
||||
auto list = std::vector<Data::Boost>();
|
||||
list.reserve(data.vboosts().v.size());
|
||||
constexpr auto kMonthsDivider = int(30 * 86400);
|
||||
for (const auto &boost : data.vboosts().v) {
|
||||
const auto &data = boost.data();
|
||||
const auto path = data.vused_gift_slug()
|
||||
|
@ -609,7 +610,8 @@ void Boosts::requestBoosts(
|
|||
? FullMsgId{ _peer->id, data.vgiveaway_msg_id()->v }
|
||||
: FullMsgId(),
|
||||
QDateTime::fromSecsSinceEpoch(data.vdate().v),
|
||||
data.vexpires().v,
|
||||
QDateTime::fromSecsSinceEpoch(data.vexpires().v),
|
||||
(data.vexpires().v - data.vdate().v) / kMonthsDivider,
|
||||
std::move(giftCodeLink),
|
||||
data.vmultiplier().value_or_empty(),
|
||||
});
|
||||
|
|
|
@ -34,7 +34,8 @@ struct Boost final {
|
|||
UserId userId = UserId(0);
|
||||
FullMsgId giveawayMessage;
|
||||
QDateTime date;
|
||||
crl::time expiresAt = 0;
|
||||
QDateTime expiresAt;
|
||||
int expiresAfterMonths = 0;
|
||||
GiftCodeLink giftCodeLink;
|
||||
int multiplier = 0;
|
||||
};
|
||||
|
|
|
@ -365,15 +365,11 @@ void InnerWidget::fill() {
|
|||
} else if (boost.userId) {
|
||||
const auto user = _peer->owner().user(boost.userId);
|
||||
if (boost.isGift || boost.isGiveaway) {
|
||||
constexpr auto kMonthsDivider = int(30 * 86400);
|
||||
const auto date = TimeId(boost.date.toSecsSinceEpoch());
|
||||
const auto months = (boost.expiresAt - date)
|
||||
/ kMonthsDivider;
|
||||
const auto d = Api::GiftCode{
|
||||
.from = _peer->id,
|
||||
.to = user->id,
|
||||
.date = date,
|
||||
.months = int(months),
|
||||
.date = TimeId(boost.date.toSecsSinceEpoch()),
|
||||
.months = boost.expiresAfterMonths,
|
||||
};
|
||||
_show->showBox(Box(GiftCodePendingBox, _controller, d));
|
||||
} else {
|
||||
|
|
|
@ -391,19 +391,16 @@ BoostRow::BoostRow(const Data::Boost &boost)
|
|||
|
||||
void BoostRow::init() {
|
||||
invalidateBadges();
|
||||
constexpr auto kMonthsDivider = int(30 * 86400);
|
||||
const auto months = (_boost.expiresAt - _boost.date.toSecsSinceEpoch())
|
||||
/ kMonthsDivider;
|
||||
auto status = !PeerListRow::special()
|
||||
? tr::lng_boosts_list_status(
|
||||
tr::now,
|
||||
lt_date,
|
||||
langDateTime(_boost.date))
|
||||
: tr::lng_months_tiny(tr::now, lt_count, months)
|
||||
langDayOfMonth(_boost.expiresAt.date()))
|
||||
: tr::lng_months_tiny(tr::now, lt_count, _boost.expiresAfterMonths)
|
||||
+ ' '
|
||||
+ QChar(0x2022)
|
||||
+ ' '
|
||||
+ langDateTime(_boost.date);
|
||||
+ langDayOfMonth(_boost.date.date());
|
||||
PeerListRow::setCustomStatus(std::move(status));
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue