| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- /*
- This file is part of Telegram Desktop,
- the official desktop application for the Telegram messaging service.
- For license and copyright information please follow this link:
- https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
- */
- #include "data/data_premium_limits.h"
- #include "main/main_app_config.h"
- #include "main/main_session.h"
- namespace Data {
- PremiumLimits::PremiumLimits(not_null<Main::Session*> session)
- : _session(session) {
- }
- int PremiumLimits::channelsDefault() const {
- return appConfigLimit("channels_limit_default", 500);
- }
- int PremiumLimits::channelsPremium() const {
- return appConfigLimit("channels_limit_premium", 1000);
- }
- int PremiumLimits::channelsCurrent() const {
- return isPremium()
- ? channelsPremium()
- : channelsDefault();
- }
- int PremiumLimits::similarChannelsDefault() const {
- return appConfigLimit("recommended_channels_limit_default", 10);
- }
- int PremiumLimits::similarChannelsPremium() const {
- return appConfigLimit("recommended_channels_limit_premium", 100);
- }
- int PremiumLimits::similarChannelsCurrent() const {
- return isPremium()
- ? channelsPremium()
- : channelsDefault();
- }
- int PremiumLimits::gifsDefault() const {
- return appConfigLimit("saved_gifs_limit_default", 200);
- }
- int PremiumLimits::gifsPremium() const {
- return appConfigLimit("saved_gifs_limit_premium", 400);
- }
- int PremiumLimits::gifsCurrent() const {
- return isPremium()
- ? gifsPremium()
- : gifsDefault();
- }
- int PremiumLimits::stickersFavedDefault() const {
- return appConfigLimit("stickers_faved_limit_default", 5);
- }
- int PremiumLimits::stickersFavedPremium() const {
- return appConfigLimit("stickers_faved_limit_premium", 10);
- }
- int PremiumLimits::stickersFavedCurrent() const {
- return isPremium()
- ? stickersFavedPremium()
- : stickersFavedDefault();
- }
- int PremiumLimits::dialogFiltersDefault() const {
- return appConfigLimit("dialog_filters_limit_default", 10);
- }
- int PremiumLimits::dialogFiltersPremium() const {
- return appConfigLimit("dialog_filters_limit_premium", 20);
- }
- int PremiumLimits::dialogFiltersCurrent() const {
- return isPremium()
- ? dialogFiltersPremium()
- : dialogFiltersDefault();
- }
- int PremiumLimits::dialogShareableFiltersDefault() const {
- return appConfigLimit("chatlists_joined_limit_default", 2);
- }
- int PremiumLimits::dialogShareableFiltersPremium() const {
- return appConfigLimit("chatlists_joined_limit_premium", 20);
- }
- int PremiumLimits::dialogShareableFiltersCurrent() const {
- return isPremium()
- ? dialogShareableFiltersPremium()
- : dialogShareableFiltersDefault();
- }
- int PremiumLimits::dialogFiltersChatsDefault() const {
- return appConfigLimit("dialog_filters_chats_limit_default", 100);
- }
- int PremiumLimits::dialogFiltersChatsPremium() const {
- return appConfigLimit("dialog_filters_chats_limit_premium", 200);
- }
- int PremiumLimits::dialogFiltersChatsCurrent() const {
- return isPremium()
- ? dialogFiltersChatsPremium()
- : dialogFiltersChatsDefault();
- }
- int PremiumLimits::dialogFiltersLinksDefault() const {
- return appConfigLimit("chatlist_invites_limit_default", 3);
- }
- int PremiumLimits::dialogFiltersLinksPremium() const {
- return appConfigLimit("chatlist_invites_limit_premium", 20);
- }
- int PremiumLimits::dialogFiltersLinksCurrent() const {
- return isPremium()
- ? dialogFiltersLinksPremium()
- : dialogFiltersLinksDefault();
- }
- int PremiumLimits::dialogsPinnedDefault() const {
- return appConfigLimit("dialogs_pinned_limit_default", 5);
- }
- int PremiumLimits::dialogsPinnedPremium() const {
- return appConfigLimit("dialogs_pinned_limit_premium", 10);
- }
- int PremiumLimits::dialogsPinnedCurrent() const {
- return isPremium()
- ? dialogsPinnedPremium()
- : dialogsPinnedDefault();
- }
- int PremiumLimits::dialogsFolderPinnedDefault() const {
- return appConfigLimit("dialogs_folder_pinned_limit_default", 100);
- }
- int PremiumLimits::dialogsFolderPinnedPremium() const {
- return appConfigLimit("dialogs_folder_pinned_limit_premium", 200);
- }
- int PremiumLimits::dialogsFolderPinnedCurrent() const {
- return isPremium()
- ? dialogsFolderPinnedPremium()
- : dialogsFolderPinnedDefault();
- }
- int PremiumLimits::topicsPinnedCurrent() const {
- return appConfigLimit("topics_pinned_limit", 5);
- }
- int PremiumLimits::savedSublistsPinnedDefault() const {
- return appConfigLimit("saved_dialogs_pinned_limit_default", 5);
- }
- int PremiumLimits::savedSublistsPinnedPremium() const {
- return appConfigLimit("saved_dialogs_pinned_limit_premium", 100);
- }
- int PremiumLimits::savedSublistsPinnedCurrent() const {
- return isPremium()
- ? savedSublistsPinnedPremium()
- : savedSublistsPinnedDefault();
- }
- int PremiumLimits::channelsPublicDefault() const {
- return appConfigLimit("channels_public_limit_default", 10);
- }
- int PremiumLimits::channelsPublicPremium() const {
- return appConfigLimit("channels_public_limit_premium", 20);
- }
- int PremiumLimits::channelsPublicCurrent() const {
- return isPremium()
- ? channelsPublicPremium()
- : channelsPublicDefault();
- }
- int PremiumLimits::captionLengthDefault() const {
- return appConfigLimit("caption_length_limit_default", 1024);
- }
- int PremiumLimits::captionLengthPremium() const {
- return appConfigLimit("caption_length_limit_premium", 2048);
- }
- int PremiumLimits::captionLengthCurrent() const {
- return isPremium()
- ? captionLengthPremium()
- : captionLengthDefault();
- }
- int PremiumLimits::uploadMaxDefault() const {
- return appConfigLimit("upload_max_fileparts_default", 4000);
- }
- int PremiumLimits::uploadMaxPremium() const {
- return appConfigLimit("upload_max_fileparts_premium", 8000);
- }
- int PremiumLimits::uploadMaxCurrent() const {
- return isPremium()
- ? uploadMaxPremium()
- : uploadMaxDefault();
- }
- int PremiumLimits::aboutLengthDefault() const {
- return appConfigLimit("about_length_limit_default", 70);
- }
- int PremiumLimits::aboutLengthPremium() const {
- return appConfigLimit("about_length_limit_premium", 140);
- }
- int PremiumLimits::aboutLengthCurrent() const {
- return isPremium()
- ? aboutLengthPremium()
- : aboutLengthDefault();
- }
- int PremiumLimits::maxBoostLevel() const {
- return appConfigLimit(
- u"boosts_channel_level_max"_q,
- _session->isTestMode() ? 9 : 99);
- }
- int PremiumLimits::appConfigLimit(
- const QString &key,
- int fallback) const {
- return _session->appConfig().get<int>(key, fallback);
- }
- bool PremiumLimits::isPremium() const {
- return _session->premium();
- }
- LevelLimits::LevelLimits(not_null<Main::Session*> session)
- : _session(session) {
- }
- int LevelLimits::channelColorLevelMin() const {
- return _session->appConfig().get<int>(
- u"channel_color_level_min"_q,
- 5);
- }
- int LevelLimits::channelBgIconLevelMin() const {
- return _session->appConfig().get<int>(
- u"channel_bg_icon_level_min"_q,
- 4);
- }
- int LevelLimits::channelProfileBgIconLevelMin() const {
- return _session->appConfig().get<int>(
- u"channel_profile_bg_icon_level_min"_q,
- 7);
- }
- int LevelLimits::channelEmojiStatusLevelMin() const {
- return _session->appConfig().get<int>(
- u"channel_emoji_status_level_min"_q,
- 8);
- }
- int LevelLimits::channelWallpaperLevelMin() const {
- return _session->appConfig().get<int>(
- u"channel_wallpaper_level_min"_q,
- 9);
- }
- int LevelLimits::channelCustomWallpaperLevelMin() const {
- return _session->appConfig().get<int>(
- u"channel_custom_wallpaper_level_min"_q,
- 10);
- }
- int LevelLimits::channelRestrictSponsoredLevelMin() const {
- return _session->appConfig().get<int>(
- u"channel_restrict_sponsored_level_min"_q,
- 20);
- }
- int LevelLimits::groupTranscribeLevelMin() const {
- return _session->appConfig().get<int>(
- u"group_transcribe_level_min"_q,
- 6);
- }
- int LevelLimits::groupEmojiStickersLevelMin() const {
- return _session->appConfig().get<int>(
- u"group_emoji_stickers_level_min"_q,
- 4);
- }
- int LevelLimits::groupProfileBgIconLevelMin() const {
- return _session->appConfig().get<int>(
- u"group_profile_bg_icon_level_min"_q,
- 5);
- }
- int LevelLimits::groupEmojiStatusLevelMin() const {
- return _session->appConfig().get<int>(
- u"group_emoji_status_level_min"_q,
- 8);
- }
- int LevelLimits::groupWallpaperLevelMin() const {
- return _session->appConfig().get<int>(
- u"group_wallpaper_level_min"_q,
- 9);
- }
- int LevelLimits::groupCustomWallpaperLevelMin() const {
- return _session->appConfig().get<int>(
- u"group_custom_wallpaper_level_min"_q,
- 10);
- }
- } // namespace Data
|