From e6e728c57ee4a054315d94715851c35bdf6cccc8 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Wed, 25 May 2016 14:18:09 +0500 Subject: [PATCH] [FIX] UserError: ('Record cannot be modified right now: This cron task is currently being executed and may not be modified Please try again in a few minutes', None) --- mailgun/data/cron.xml | 2 +- mailgun/models.py | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/mailgun/data/cron.xml b/mailgun/data/cron.xml index 7c53db1..edbeb03 100644 --- a/mailgun/data/cron.xml +++ b/mailgun/data/cron.xml @@ -5,7 +5,7 @@ Mailgun - domain verification 10 minutes - -1 + 288 True ir.config_parameter mailgun_verify diff --git a/mailgun/models.py b/mailgun/models.py index 7fa1136..464e685 100644 --- a/mailgun/models.py +++ b/mailgun/models.py @@ -27,11 +27,13 @@ class IrConfigParameter(models.Model): @api.model def mailgun_verify(self): + verified = self.get_param('mailgun.verified') + if verified: + return api_key = self.get_param('mailgun.apikey') mail_domain = self.get_param('mail.catchall.domain') - cron_record = self.env.ref('mailgun.mailgun_domain_verification') if api_key and mail_domain: url = "https://api.mailgun.net/v3/domains/%s/verify" % mail_domain res = requests.put(url, auth=("api", api_key)) if res.status_code == 200 and simplejson.loads(res.text)["domain"]["state"] == "active": - cron_record.write({'active': False}) + self.set_param('mailgun.verified', '1')