feat: Add mail to admins when new user registers
This commit is contained in:
		@@ -1,4 +1,8 @@
 | 
				
			|||||||
 | 
					from venv import create
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import django.conf.global_settings
 | 
					import django.conf.global_settings
 | 
				
			||||||
 | 
					from django.db.models.signals import post_save
 | 
				
			||||||
 | 
					from django.dispatch import receiver
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from django.utils.translation import gettext_lazy as _
 | 
					from django.utils.translation import gettext_lazy as _
 | 
				
			||||||
from django.utils.translation import gettext
 | 
					from django.utils.translation import gettext
 | 
				
			||||||
@@ -10,6 +14,7 @@ from notfellchen.settings import host
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
NEWLINE = "\r\n"
 | 
					NEWLINE = "\r\n"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def mail_admins_new_report(report):
 | 
					def mail_admins_new_report(report):
 | 
				
			||||||
    subject = _("Neue Meldung")
 | 
					    subject = _("Neue Meldung")
 | 
				
			||||||
    for moderator in User.objects.filter(trust_level__gt=User.TRUST_LEVEL[User.MODERATOR]):
 | 
					    for moderator in User.objects.filter(trust_level__gt=User.TRUST_LEVEL[User.MODERATOR]):
 | 
				
			||||||
@@ -31,3 +36,21 @@ def mail_admins_new_report(report):
 | 
				
			|||||||
        message = mail.EmailMessage(subject, body_text, settings.DEFAULT_FROM_EMAIL, [moderator.email])
 | 
					        message = mail.EmailMessage(subject, body_text, settings.DEFAULT_FROM_EMAIL, [moderator.email])
 | 
				
			||||||
        print("Sending email to ", moderator.email)
 | 
					        print("Sending email to ", moderator.email)
 | 
				
			||||||
        message.send()
 | 
					        message.send()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@receiver(post_save, sender=User)
 | 
				
			||||||
 | 
					def mail_admins_new_member(sender, instance: User, created: bool, **kwargs):
 | 
				
			||||||
 | 
					    if not created:
 | 
				
			||||||
 | 
					        return
 | 
				
			||||||
 | 
					    subject = _("Neuer User") + f": {instance.username}"
 | 
				
			||||||
 | 
					    for moderator in User.objects.filter(trust_level__gt=User.TRUST_LEVEL[User.MODERATOR]):
 | 
				
			||||||
 | 
					        greeting = _("Moin,") + "{NEWLINE}"
 | 
				
			||||||
 | 
					        new_report_text = _("es hat sich eine neue Person registriert.") + "{NEWLINE}"
 | 
				
			||||||
 | 
					        user_detail_text = _("Username") + f": {instance.username}{NEWLINE}" + _(
 | 
				
			||||||
 | 
					            "E-Mail") + f": {instance.email}{NEWLINE}"
 | 
				
			||||||
 | 
					        user_url = "https://" + host + instance.get_absolute_url()
 | 
				
			||||||
 | 
					        link_text = f"Um alle Details zu sehen, geh bitte auf: {user_url}"
 | 
				
			||||||
 | 
					        body_text = greeting + new_report_text + user_detail_text + link_text
 | 
				
			||||||
 | 
					        message = mail.EmailMessage(subject, body_text, settings.DEFAULT_FROM_EMAIL, [moderator.email])
 | 
				
			||||||
 | 
					        print("Sending email to ", moderator.email)
 | 
				
			||||||
 | 
					        message.send()
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user