File size: 1,562 Bytes
bafa0db
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import os
import secrets
from mailjet_rest import Client

# Load Mailjet API keys from environment variables
MAILJET_API_KEY = os.environ.get("MAILJET_API_KEY")
MAILJET_API_SECRET = os.environ.get("MAILJET_API_SECRET")

# Create a Mailjet client
mailjet = Client(auth=(MAILJET_API_KEY, MAILJET_API_SECRET))

def send_verification_email(to_email, verification_token):
    # Create the email message
    email_data = {
        'Messages': [
            {
                "From": {
                    "Email": "[email protected]",
                    "Name": "Your Name"
                },
                "To": [
                    {
                        "Email": to_email,
                        "Name": "User Name"
                    }
                ],
                "Subject": "Verify Your Email",
                "HTMLPart": f'Click <a href="https://yourapp.com/verify/{verification_token}">here</a> to verify your email.'
            }
        ]
    }

    # Send the email
    try:
        response = mailjet.send.create(data=email_data)
        if response.status_code == 200:
            print("Verification email sent successfully.")
        else:
            print("Failed to send verification email.")
    except Exception as e:
        print(str(e))

def generate_verification_token(email):
    # Generate a random token
    token = secrets.token_urlsafe(32)

    # You can associate this token with the provided email address in your database
    # For example, store it in a verification_tokens table with an expiration date

    return token