2
0
mirror of https://github.com/telegramdesktop/tdesktop synced 2025-09-05 00:46:08 +00:00

Added credits balance to main session.

This commit is contained in:
23rd
2024-05-22 17:01:42 +03:00
committed by John Preston
parent 174fb62c32
commit e11755af46
5 changed files with 36 additions and 4 deletions

View File

@@ -7,6 +7,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
#include "settings/settings_main.h"
#include "api/api_credits.h"
#include "core/application.h"
#include "core/click_handler_types.h"
#include "settings/settings_advanced.h"
@@ -491,9 +492,13 @@ void SetupPremium(
showOther(PremiumId());
});
AddPremiumStar(
AddButtonWithIcon(
AddButtonWithLabel(
container,
tr::lng_credits_summary_title(),
controller->session().creditsValue(
) | rpl::map([=](uint64 c) {
return c ? Lang::FormatCountToShort(c).string : QString{};
}),
st::settingsButton),
true
)->addClickHandler([=] {
@@ -510,6 +515,12 @@ void SetupPremium(
});
Ui::NewBadge::AddToRight(button);
const auto api = button->lifetime().make_state<Api::CreditsStatus>(
controller->session().user());
api->request({}, [=](Data::CreditsStatusSlice slice) {
controller->session().setCredits(slice.balance);
});
if (controller->session().premiumCanBuy()) {
const auto button = AddButtonWithIcon(
container,