|
@@ -1,25 +1,16 @@
|
|
|
from django.core.mail import EmailMessage
|
|
|
from django.db.models.signals import post_save
|
|
|
from django.dispatch import receiver
|
|
|
-from django.template.loader import get_template
|
|
|
|
|
|
from desecapi import models
|
|
|
|
|
|
|
|
|
@receiver(post_save, sender=models.Domain, dispatch_uid=__name__)
|
|
|
-def domain_handler(sender, instance, created, raw, using, update_fields, **kwargs):
|
|
|
+def domain_handler(sender, instance: models.Domain, created, raw, using, update_fields, **kwargs):
|
|
|
if instance.is_locally_registrable:
|
|
|
- content_tmpl = get_template('emails/domain-dyndns/content.txt')
|
|
|
- subject_tmpl = get_template('emails/domain-dyndns/subject.txt')
|
|
|
- from_tmpl = get_template('emails/from.txt')
|
|
|
- context = {
|
|
|
+ instance.owner.send_email('domain-dyndns', context={
|
|
|
'domain': instance.name,
|
|
|
'url': f'https://update.{instance.parent_domain_name}/',
|
|
|
'username': instance.name,
|
|
|
'password': models.Token.objects.create(user=instance.owner, name='dyndns')
|
|
|
- }
|
|
|
- email = EmailMessage(subject_tmpl.render(context),
|
|
|
- content_tmpl.render(context),
|
|
|
- from_tmpl.render(context),
|
|
|
- [instance.owner.email])
|
|
|
- email.send()
|
|
|
+ })
|