Add get_premium_payment_options_object fucntion.
This commit is contained in:
parent
472fdd248e
commit
9b87c2237a
@ -16850,17 +16850,13 @@ tl_object_ptr<td_api::userFullInfo> ContactsManager::get_user_full_info_object(U
|
|||||||
}
|
}
|
||||||
bio_object = get_formatted_text_object(bio, true, 0);
|
bio_object = get_formatted_text_object(bio, true, 0);
|
||||||
}
|
}
|
||||||
auto base_premium_gift_it =
|
|
||||||
std::min_element(user_full->premium_gift_options.begin(), user_full->premium_gift_options.end());
|
|
||||||
auto premium_gift_options = transform(user_full->premium_gift_options, [&base_premium_gift_it](const auto &option) {
|
|
||||||
return option.get_premium_payment_option_object(*base_premium_gift_it);
|
|
||||||
});
|
|
||||||
auto voice_messages_forbidden = is_premium ? user_full->voice_messages_forbidden : false;
|
auto voice_messages_forbidden = is_premium ? user_full->voice_messages_forbidden : false;
|
||||||
return make_tl_object<td_api::userFullInfo>(
|
return make_tl_object<td_api::userFullInfo>(get_chat_photo_object(td_->file_manager_.get(), user_full->photo),
|
||||||
get_chat_photo_object(td_->file_manager_.get(), user_full->photo), user_full->is_blocked,
|
user_full->is_blocked, user_full->can_be_called,
|
||||||
user_full->can_be_called, user_full->supports_video_calls, user_full->has_private_calls,
|
user_full->supports_video_calls, user_full->has_private_calls,
|
||||||
!user_full->private_forward_name.empty(), voice_messages_forbidden,
|
!user_full->private_forward_name.empty(), voice_messages_forbidden,
|
||||||
user_full->need_phone_number_privacy_exception, std::move(bio_object), std::move(premium_gift_options),
|
user_full->need_phone_number_privacy_exception, std::move(bio_object),
|
||||||
|
get_premium_payment_options_object(user_full->premium_gift_options),
|
||||||
user_full->common_chat_count, std::move(bot_info));
|
user_full->common_chat_count, std::move(bot_info));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -157,12 +157,9 @@ class GetPremiumPromoQuery final : public Td::ResultHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto period_options = get_premium_gift_options(std::move(promo->period_options_));
|
auto period_options = get_premium_gift_options(std::move(promo->period_options_));
|
||||||
auto base_premium_gift_it = std::min_element(period_options.begin(), period_options.end());
|
|
||||||
auto payment_options = transform(period_options, [&base_premium_gift_it](const auto &option) {
|
|
||||||
return option.get_premium_payment_option_object(*base_premium_gift_it);
|
|
||||||
});
|
|
||||||
promise_.set_value(td_api::make_object<td_api::premiumState>(get_formatted_text_object(state, true, 0),
|
promise_.set_value(td_api::make_object<td_api::premiumState>(get_formatted_text_object(state, true, 0),
|
||||||
std::move(payment_options), std::move(animations)));
|
get_premium_payment_options_object(period_options),
|
||||||
|
std::move(animations)));
|
||||||
}
|
}
|
||||||
|
|
||||||
void on_error(Status status) final {
|
void on_error(Status status) final {
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
#include "td/utils/common.h"
|
#include "td/utils/common.h"
|
||||||
#include "td/utils/logging.h"
|
#include "td/utils/logging.h"
|
||||||
|
|
||||||
|
#include <algorithm>
|
||||||
#include <tuple>
|
#include <tuple>
|
||||||
|
|
||||||
namespace td {
|
namespace td {
|
||||||
@ -94,4 +95,15 @@ vector<PremiumGiftOption> get_premium_gift_options(
|
|||||||
return premium_gift_options;
|
return premium_gift_options;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
vector<td_api::object_ptr<td_api::premiumPaymentOption>> get_premium_payment_options_object(
|
||||||
|
const vector<PremiumGiftOption> &options) {
|
||||||
|
if (options.empty()) {
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
auto base_premium_option_it = std::min_element(options.begin(), options.end());
|
||||||
|
return transform(options, [&base_premium_option_it](const auto &option) {
|
||||||
|
return option.get_premium_payment_option_object(*base_premium_option_it);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace td
|
} // namespace td
|
||||||
|
@ -52,4 +52,7 @@ vector<PremiumGiftOption> get_premium_gift_options(
|
|||||||
vector<PremiumGiftOption> get_premium_gift_options(
|
vector<PremiumGiftOption> get_premium_gift_options(
|
||||||
vector<telegram_api::object_ptr<telegram_api::premiumSubscriptionOption>> &&options);
|
vector<telegram_api::object_ptr<telegram_api::premiumSubscriptionOption>> &&options);
|
||||||
|
|
||||||
|
vector<td_api::object_ptr<td_api::premiumPaymentOption>> get_premium_payment_options_object(
|
||||||
|
const vector<PremiumGiftOption> &options);
|
||||||
|
|
||||||
} // namespace td
|
} // namespace td
|
||||||
|
Loading…
Reference in New Issue
Block a user