]> git.ipfire.org Git - ipfire.org.git/commitdiff
campaigns: Give them a name
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 19 Nov 2019 13:59:41 +0000 (13:59 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 19 Nov 2019 14:00:30 +0000 (14:00 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/backend/accounts.py
src/backend/campaigns.py

index 6d01ac2e072a48779db98d089e92ebf548ee8f5e..24261192b90acf274c2e983fced486e2c2b9261a 100644 (file)
@@ -375,7 +375,7 @@ class Accounts(Object):
                        recipients=["moderators@ipfire.org"], account=account)
 
                # Launch all drip campaigns
-               self.backend.campaigns.launch(account)
+               self.backend.campaigns.launch("signup", account)
 
                return account
 
index 746870e36fb5b3eed145583320bee17b2cb15e7b..35f55b54238ed48ea4c15de633b97fc4d79c9f78 100644 (file)
@@ -6,12 +6,12 @@ from .decorators import *
 from .misc import Object
 
 class Campaigns(Object):
-       async def launch_manually(self, uid):
+       async def launch_manually(self, name, uid):
                account = self.backend.accounts.get_by_uid(uid)
                if account:
-                       self.launch(account)
+                       self.launch(name, account)
 
-       def launch(self, account):
+       def launch(self, name, account):
                logging.debug("Launching all campaigns for %s" % account)
 
                # Update old timestamps first
@@ -22,9 +22,10 @@ class Campaigns(Object):
 
                # Launch all campaigns
                self.db.execute("INSERT INTO campaign_emails(account_uid, template, \
-                       launch_at, repeat_after, groups ) \
+                       launch_at, repeat_after) \
                        SELECT %s, template, COALESCE(launch_at, CURRENT_TIMESTAMP + launch_after), \
-                               repeat_after, groups FROM campaign_templates", account.uid)
+                               repeat_after FROM campaign_templates WHERE name = %s",
+                       account.uid, name)
 
        def _get_campaign_emails(self, query, *args):
                res = self.db.query(query, *args)