From a66522cd2efbe44baac0bbc6de6b8e74cd018097 Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Thu, 7 Nov 2019 09:37:26 +0000 Subject: [PATCH] Better handling of donation types --- person.py | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/person.py b/person.py index c02f64685..1e500ca4f 100644 --- a/person.py +++ b/person.py @@ -838,7 +838,9 @@ def personUnsnooze(baseDir: str,nickname: str,domain: str,snoozeActor: str) -> N def getDonationTypes() -> str: - return ('patreon','paypal','gofundme','liberapay','kickstarter','indiegogo','crowdsupply') + return ('patreon','paypal','gofundme','liberapay', \ + 'kickstarter','indiegogo','crowdsupply', \ + 'subscribestar') def getDonationUrl(actorJson: {}) -> str: """Returns a link used for donations @@ -870,22 +872,12 @@ def setDonationUrl(actorJson: {},donateUrl: str) -> None: if not actorJson.get('attachment'): actorJson['attachment']=[] + donationType=getDonationTypes() donateName=None - if 'patreon' in donateUrl: - donateName='Patreon' - elif 'gofundme' in donateUrl: - donateName='GoFundMe' - elif 'liberapay' in donateUrl: - donateName='LiberaPay' - elif 'paypal' in donateUrl: - donateName='PayPal' - elif 'kickstarter' in donateUrl: - donateName='Kickstarter' - elif 'indiegogo' in donateUrl: - donateName='IndieGoGo' - elif 'crowdsupply' in donateUrl: - donateName='CrowdSupply' - else: + for paymentService in donationType: + if paymentService in donateUrl: + donateName=paymentService + if not donateName: return donateValue=''+donateUrl+'' @@ -895,7 +887,7 @@ def setDonationUrl(actorJson: {},donateUrl: str) -> None: continue if not propertyValue.get('type'): continue - if propertyValue['name']!=donateName: + if propertyValue['name'].lower()!=donateName: continue if propertyValue['type']!='PropertyValue': continue