Skip to content
Snippets Groups Projects
email.py 2.22 KiB
Newer Older
  • Learn to ignore specific revisions
  • Bodor Máté's avatar
    Bodor Máté committed
    from django.core.mail import send_mail
    
    Bodor Máté's avatar
    Bodor Máté committed
    import codecs
    
    import sys
    
    
    Rafael László's avatar
    Rafael László committed
    sender_email = 'noreply@ujonc.kszk.bme.hu'
    link = 'https://ujonc.kszk.bme.hu/homework'
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    
    def get_full_name(user):
        return user.last_name + " " + user.first_name
    
    
    
    Bodor Máté's avatar
    Bodor Máté committed
    def read_email(name):
    
        with codecs.open('common/emails/' + name, 'r', 'utf-8') as myfile:
    
    Bodor Máté's avatar
    Bodor Máté committed
            data = myfile.read()
        return data
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    
    Rafael László's avatar
    Rafael László committed
    
    
    def send_out_mail(subject, message, sender_email, receiver_email):
        if 'runserver' in sys.argv:
            # It is in development
            print("Email sent from: " + str(sender_email) + " to: " + str(receiver_email))
        else:
            send_mail(subject, message, sender_email, [receiver_email, ])
    
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    
    Bodor Máté's avatar
    Bodor Máté committed
    def registration(user):
    
        subject = "Kszképzés regisztráció"
        message = read_email('registration.txt')
    
        message = str.format(message % {'name': get_full_name(user)})
    
        send_out_mail(subject, message, sender_email, [user.email, ])
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    
    
    Bodor Máté's avatar
    Bodor Máté committed
    def admitted(user):
        subject = "Jelentkezés eredménye"
    
        message = read_email('admitted.txt')
    
        message = str.format(message % {'name': get_full_name(user)})
    
        send_out_mail(subject, message, sender_email, [user.email, ])
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    
    
    Bodor Máté's avatar
    Bodor Máté committed
    def denied(user):
    
        subject = "Jelentkezés eredménye"
        message = read_email('denied.txt')
    
        message = str.format(message % {'name': get_full_name(user)})
    
        send_out_mail(subject, message, sender_email, [user.email, ])
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    def new_homework(user, deadline):
    
        deadline = deadline.strftime('%Y-%m-%d %H:%M')
        subject = "Új házifeladat"
        message = read_email('new_homework.txt')
        message = str.format(
    
            message % {'name': get_full_name(user), 'link': link, 'deadline': deadline})
    
        send_out_mail(subject, message, sender_email, [user.email, ])
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    
    def homework_corrected(user, title, accepted):
    
        subject = "Házifeladat eredménye"
        if accepted:
            status = 'Elfogadva'
        else:
            status = 'Hibás'
        message = read_email('homework_corrected.txt')
    
        message = str.format(message % {'name': get_full_name(user),
                                        'link': link,
                                        'status': status,
                                        'title': title})
    
        send_out_mail(subject, message, sender_email, [user.email, ])
    
        pass