From 5ea368b0a8634f35551d885f09089ecccb3eb02e Mon Sep 17 00:00:00 2001 From: Believethehype <1097224+believethehype@users.noreply.github.com> Date: Thu, 7 Mar 2024 17:17:58 +0100 Subject: [PATCH] allow a list of users to be managed in admin_config --- main.py | 3 +++ nostr_dvm/utils/admin_utils.py | 39 +++++++++++++++++----------------- 2 files changed, 23 insertions(+), 19 deletions(-) diff --git a/main.py b/main.py index 224eae2..9bbbae3 100644 --- a/main.py +++ b/main.py @@ -39,6 +39,9 @@ def playground(): admin_config = AdminConfig() admin_config.REBROADCAST_NIP89 = False admin_config.LUD16 = lnaddress + + + # Set rebroadcast to true once you have set your NIP89 descriptions and d tags. You only need to rebroadcast once you # want to update your NIP89 descriptions diff --git a/nostr_dvm/utils/admin_utils.py b/nostr_dvm/utils/admin_utils.py index 5274234..fefe7c0 100644 --- a/nostr_dvm/utils/admin_utils.py +++ b/nostr_dvm/utils/admin_utils.py @@ -20,7 +20,7 @@ class AdminConfig: LISTDATABASE: bool = False ClEANDB: bool = False - USERNPUB: str = "" + USERNPUBS: list = [] LUD16: str = "" EVENTID: str = "" @@ -37,7 +37,7 @@ def admin_make_database_updates(adminconfig: AdminConfig = None, dvmconfig: DVMC if (( adminconfig.WHITELISTUSER is True or adminconfig.UNWHITELISTUSER is True or adminconfig.BLACKLISTUSER is True or adminconfig.DELETEUSER is True) - and adminconfig.USERNPUB == ""): + and adminconfig.USERNPUBS == []): return if adminconfig.UPDATE_PROFILE and (dvmconfig.NIP89 is None): @@ -48,27 +48,28 @@ def admin_make_database_updates(adminconfig: AdminConfig = None, dvmconfig: DVMC db = dvmconfig.DB - if str(adminconfig.USERNPUB).startswith("npub"): - publickey = PublicKey.from_bech32(adminconfig.USERNPUB).to_hex() - else: - publickey = adminconfig.USERNPUB + for npub in adminconfig.USERNPUBS: + if str(npub).startswith("npub"): + publickey = PublicKey.from_bech32(npub).to_hex() + else: + publickey = npub - if adminconfig.WHITELISTUSER: - user = get_or_add_user(db, publickey, client=client, config=dvmconfig) - update_sql_table(db, user.npub, user.balance, True, False, user.nip05, user.lud16, user.name, user.lastactive) - user = get_from_sql_table(db, publickey) - print(str(user.name) + " is whitelisted: " + str(user.iswhitelisted)) + if adminconfig.WHITELISTUSER: + user = get_or_add_user(db, publickey, client=client, config=dvmconfig) + update_sql_table(db, user.npub, user.balance, True, False, user.nip05, user.lud16, user.name, user.lastactive) + user = get_from_sql_table(db, publickey) + print(str(user.name) + " is whitelisted: " + str(user.iswhitelisted)) - if adminconfig.UNWHITELISTUSER: - user = get_from_sql_table(db, publickey) - update_sql_table(db, user.npub, user.balance, False, False, user.nip05, user.lud16, user.name, user.lastactive) + if adminconfig.UNWHITELISTUSER: + user = get_from_sql_table(db, publickey) + update_sql_table(db, user.npub, user.balance, False, False, user.nip05, user.lud16, user.name, user.lastactive) - if adminconfig.BLACKLISTUSER: - user = get_from_sql_table(db, publickey) - update_sql_table(db, user.npub, user.balance, False, True, user.nip05, user.lud16, user.name, user.lastactive) + if adminconfig.BLACKLISTUSER: + user = get_from_sql_table(db, publickey) + update_sql_table(db, user.npub, user.balance, False, True, user.nip05, user.lud16, user.name, user.lastactive) - if adminconfig.DELETEUSER: - delete_from_sql_table(db, publickey) + if adminconfig.DELETEUSER: + delete_from_sql_table(db, publickey) if adminconfig.ClEANDB: clean_db(db)