def send_account_confirmation(commcare_user):
    from corehq.apps.hqwebapp.tasks import send_html_email_async
    from corehq.apps.users.views.mobile import CommCareUserConfirmAccountView
    url = absolute_reverse(CommCareUserConfirmAccountView.urlname,
                           args=[commcare_user.domain, commcare_user.get_id])
    template_params = {
        'domain': commcare_user.domain,
        'username': commcare_user.raw_username,
        'url': url,
        'url_prefix': get_static_url_prefix(),
        'hq_name': commcare_hq_names()['commcare_hq_names']['COMMCARE_HQ_NAME']
    }

    lang = guess_domain_language(commcare_user.domain)
    with override(lang):
        text_content = render_to_string(
            "registration/email/mobile_worker_confirm_account.txt",
            template_params)
        html_content = render_to_string(
            "registration/email/mobile_worker_confirm_account.html",
            template_params)
        subject = _(
            f'Confirm your CommCare account for {commcare_user.domain}')
    send_html_email_async.delay(subject,
                                commcare_user.email,
                                html_content,
                                text_content=text_content,
                                email_from=settings.DEFAULT_FROM_EMAIL)
Example #2
0
 def test_guess_domain_language(self):
     for i, lang in enumerate(['en', 'fra', 'fra']):
         app = Application.new_app(domain=self.domain_name,
                                   name='app{}'.format(i + 1),
                                   lang=lang)
         app.save()
     lang = guess_domain_language(self.domain_name)
     self.assertEqual('fra', lang)
Example #3
0
 def test_guess_domain_language_no_apps(self):
     lang = guess_domain_language(self.domain_name)
     self.assertEqual('en', lang)
Example #4
0
 def test_guess_domain_language(self):
     for i, lang in enumerate(['en', 'fra', 'fra']):
         app = Application.new_app(domain=self.domain_name, name='app{}'.format(i + 1), lang=lang)
         app.save()
     lang = guess_domain_language(self.domain_name)
     self.assertEqual('fra', lang)