From 281c3df8264a6fcbf7386e989ca34745350438f4 Mon Sep 17 00:00:00 2001 From: Vlad Stan Date: Fri, 19 Dec 2025 22:11:34 +0200 Subject: [PATCH] fix: unlimited admin upload (#3679) Co-authored-by: Arc <33088785+arcbtc@users.noreply.github.com> --- lnbits/core/services/assets.py | 2 +- lnbits/settings.py | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lnbits/core/services/assets.py b/lnbits/core/services/assets.py index 795eec6f..fd9472fe 100644 --- a/lnbits/core/services/assets.py +++ b/lnbits/core/services/assets.py @@ -16,7 +16,7 @@ async def create_user_asset(user_id: str, file: UploadFile, is_public: bool) -> if file.content_type.lower() not in settings.lnbits_assets_allowed_mime_types: raise ValueError(f"File type '{file.content_type}' not allowed.") - if user_id not in settings.lnbits_assets_no_limit_users: + if not settings.is_unlimited_assets_user(user_id): user_assets_count = await get_user_assets_count(user_id) if user_assets_count >= settings.lnbits_max_assets_per_user: raise ValueError( diff --git a/lnbits/settings.py b/lnbits/settings.py index 6d963609..2f469223 100644 --- a/lnbits/settings.py +++ b/lnbits/settings.py @@ -308,6 +308,12 @@ class AssetSettings(LNbitsSettings): lnbits_max_assets_per_user: int = Field(default=1, ge=0) lnbits_assets_no_limit_users: list[str] = Field(default=[]) + def is_unlimited_assets_user(self, user_id: str) -> bool: + return ( + settings.is_admin_user(user_id) + or user_id in self.lnbits_assets_no_limit_users + ) + class FeeSettings(LNbitsSettings): lnbits_reserve_fee_min: int = Field(default=2000, ge=0)