voucher code activated
parent
a70a3affbe
commit
04397ce7c9
|
@ -0,0 +1,33 @@
|
|||
{
|
||||
"category": "Shinnex",
|
||||
"name": "Gutscheincode freigeschaltet",
|
||||
"globalInputs": [],
|
||||
"tasks": [
|
||||
{
|
||||
"name": "Gutscheincode per E-Mail an Kunden senden",
|
||||
"onFinish": "next",
|
||||
"undoPossible": false,
|
||||
"repeatPossible": true,
|
||||
"scriptPath": "script.py",
|
||||
"parameters": [
|
||||
{
|
||||
"parameterName": "customer_email",
|
||||
"type": "text",
|
||||
"displayName": "E-Mail vom Kunden"
|
||||
},
|
||||
{
|
||||
"parameterName": "voucher_code",
|
||||
"type": "text",
|
||||
"displayName": "Gutscheincode für den Kunden (in Shopify erstellen)"
|
||||
},
|
||||
{
|
||||
"parameterName": "voucher_type",
|
||||
"type": "select",
|
||||
"displayName": "Gutschein Typ",
|
||||
"options": ["5 €", "10 €"],
|
||||
"global": false
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,87 @@
|
|||
import json
|
||||
import sys
|
||||
import yaml
|
||||
import smtplib
|
||||
from email.mime.multipart import MIMEMultipart
|
||||
from email.mime.text import MIMEText
|
||||
|
||||
STATIC_PATH = "../../groupsData/shx-order-voucher-code-activated/"
|
||||
|
||||
json_object = json.loads(sys.argv[1])
|
||||
customer_email = json_object["customer_email"]
|
||||
voucher_code = json_object["voucher_code"]
|
||||
voucher_type = json_object["voucher_type"]
|
||||
|
||||
if (customer_email is None
|
||||
or voucher_code is None
|
||||
or voucher_type is None):
|
||||
print("Missing required parameters")
|
||||
sys.exit(1)
|
||||
|
||||
customer_email = customer_email["value"]
|
||||
voucher_code = voucher_code["value"]
|
||||
voucher_type = voucher_type["value"]
|
||||
|
||||
def load_email_config(filename):
|
||||
with open(filename, "r") as f:
|
||||
config = yaml.safe_load(f)
|
||||
return config["email"], config["smtp"]
|
||||
|
||||
email_config, smtp_config = load_email_config(f"{STATIC_PATH}config.yml")
|
||||
|
||||
# extract the email parameters
|
||||
auth_email = email_config["auth_email"]
|
||||
from_email_name = email_config["from_email_name"]
|
||||
from_email = email_config["from_email"]
|
||||
password = email_config["password"]
|
||||
|
||||
# extract the smtp parameters
|
||||
smtp_server = smtp_config["server"]
|
||||
smtp_port = smtp_config["port"]
|
||||
|
||||
receiver_email = customer_email
|
||||
|
||||
# create the email multipart message
|
||||
msg = MIMEMultipart("alternative")
|
||||
msg["From"] = f"{from_email_name} <{from_email}>"
|
||||
msg["To"] = receiver_email
|
||||
msg["Subject"] = f"{voucher_type} Gutschein als Dankeschön"
|
||||
|
||||
# load html content from file
|
||||
with open(f"{STATIC_PATH}email.txt", "r") as file:
|
||||
text = file.read()
|
||||
|
||||
with open(f"{STATIC_PATH}email.html", "r") as file:
|
||||
html = file.read()
|
||||
|
||||
# replace placeholders with actual values
|
||||
|
||||
if voucher_type == "5 €":
|
||||
message = "Wir haben deine Bewertung überprüft und möchten dir als Dankeschön einen 5 € Gutschein überreichen."
|
||||
else:
|
||||
message = "Wir haben deinen Beitrag auf Instagram überprüft und möchten dir als Dankeschön einen 10 € Gutschein überreichen."
|
||||
|
||||
html = html.replace("{{MESSAGE}}", message)
|
||||
html = html.replace("{{VOUCHER_CODE}}", voucher_code)
|
||||
|
||||
text = text.replace("{{MESSAGE}}", message)
|
||||
text = text.replace("{{VOUCHER_CODE}}", voucher_code)
|
||||
|
||||
# add text and html part to the email
|
||||
part1 = MIMEText(text, "plain", "utf-8")
|
||||
part2 = MIMEText(html, "html", "utf-8")
|
||||
|
||||
# Attach the text and html part to the email
|
||||
msg.attach(part1)
|
||||
msg.attach(part2)
|
||||
|
||||
# connect to the smtp server and send the email
|
||||
try:
|
||||
with smtplib.SMTP_SSL(smtp_server, smtp_port) as server:
|
||||
server.login(auth_email, password)
|
||||
server.sendmail(from_email, receiver_email, msg.as_string())
|
||||
|
||||
print(f"Email sent to {receiver_email} with voucher code {voucher_code} of type {voucher_type}")
|
||||
except Exception as e:
|
||||
print(f"Error sending email: {e}")
|
||||
sys.exit(1)
|
|
@ -0,0 +1,8 @@
|
|||
email:
|
||||
auth_email: jan.umbach@jannex.de
|
||||
from_email_name: Shinnex
|
||||
from_email: info@shinnex.de
|
||||
password: WhBPcHifjN5pg6LOhSRxMJ8KX3BT3gUo
|
||||
smtp:
|
||||
server: smtp.mailbox.org
|
||||
port: 465
|
|
@ -0,0 +1,280 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<style>
|
||||
/* CSS-Stile hier */
|
||||
</style>
|
||||
</head>
|
||||
<body style="margin: 0">
|
||||
<!-- Kopfzeile -->
|
||||
<table
|
||||
class="body"
|
||||
style="
|
||||
height: 100% !important;
|
||||
width: 100% !important;
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="font-family: Arial, sans-serif">
|
||||
<table
|
||||
class="header row"
|
||||
style="
|
||||
width: 100%;
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
margin: 40px 0 20px;
|
||||
"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td
|
||||
class="header__cell"
|
||||
style="font-family: Arial, sans-serif"
|
||||
>
|
||||
<center>
|
||||
<!-- Logo einfügen -->
|
||||
<table
|
||||
class="container"
|
||||
style="
|
||||
width: 560px;
|
||||
text-align: left;
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
margin: 0 auto;
|
||||
"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="font-family: Arial, sans-serif">
|
||||
<table
|
||||
class="row"
|
||||
style="
|
||||
width: 100%;
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td
|
||||
class="shop-name__cell"
|
||||
style="font-family: Arial, sans-serif"
|
||||
>
|
||||
<img
|
||||
src="https://cdn.shopify.com/s/files/1/0830/6881/3652/files/Final_logo_black_social_sharing.png?341"
|
||||
alt="Shinnex"
|
||||
width="180"
|
||||
/>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</center>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<!-- Inhalt -->
|
||||
<table
|
||||
class="row content"
|
||||
style="width: 100%; border-spacing: 0; border-collapse: collapse"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td
|
||||
class="content__cell"
|
||||
style="
|
||||
font-family: Arial, sans-serif;
|
||||
padding-bottom: 40px;
|
||||
border-width: 0;
|
||||
"
|
||||
>
|
||||
<center>
|
||||
<table
|
||||
class="container"
|
||||
style="
|
||||
width: 560px;
|
||||
text-align: left;
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
margin: 0 auto;
|
||||
"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="font-family: Arial, sans-serif">
|
||||
<h2
|
||||
style="
|
||||
font-weight: normal;
|
||||
font-size: 24px;
|
||||
margin: 0 0 10px;
|
||||
"
|
||||
>
|
||||
Dein Gutschein als Dankeschön
|
||||
</h2>
|
||||
<p
|
||||
style="
|
||||
color: #777;
|
||||
line-height: 150%;
|
||||
font-size: 16px;
|
||||
margin: 0;
|
||||
"
|
||||
>
|
||||
{{MESSAGE}} Du kannst den Gutschein beim
|
||||
Checkout einlösen.
|
||||
</p>
|
||||
<br />
|
||||
<!-- Gutscheincode hier einfügen -->
|
||||
<p
|
||||
style="
|
||||
color: #777;
|
||||
line-height: 150%;
|
||||
font-size: 16px;
|
||||
margin: 0;
|
||||
"
|
||||
>
|
||||
Dein Gutscheincode lautet:
|
||||
<strong>{{VOUCHER_CODE}}</strong>
|
||||
</p>
|
||||
<table
|
||||
class="row actions"
|
||||
style="
|
||||
width: 100%;
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
margin-top: 20px;
|
||||
"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td
|
||||
class="actions__cell"
|
||||
style="font-family: Arial, sans-serif"
|
||||
>
|
||||
<table
|
||||
class="button main-action-cell"
|
||||
style="
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
float: left;
|
||||
margin-right: 15px;
|
||||
"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td
|
||||
class="button__cell"
|
||||
style="
|
||||
font-family: Arial, sans-serif;
|
||||
border-radius: 4px;
|
||||
"
|
||||
align="center"
|
||||
bgcolor="#af9363"
|
||||
>
|
||||
<a
|
||||
href="https://shinnex.de"
|
||||
class="button__text"
|
||||
style="
|
||||
font-size: 16px;
|
||||
text-decoration: none;
|
||||
display: block;
|
||||
color: #fff;
|
||||
padding: 20px 25px;
|
||||
"
|
||||
>Zu unserem Shop</a
|
||||
>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</center>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<!-- Fußzeile -->
|
||||
<table
|
||||
class="row footer"
|
||||
style="
|
||||
width: 100%;
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
border-top-width: 1px;
|
||||
border-top-color: #e5e5e5;
|
||||
border-top-style: solid;
|
||||
"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td
|
||||
class="footer__cell"
|
||||
style="font-family: Arial, sans-serif; padding: 35px 0"
|
||||
>
|
||||
<center>
|
||||
<table
|
||||
class="container"
|
||||
style="
|
||||
width: 560px;
|
||||
text-align: left;
|
||||
border-spacing: 0;
|
||||
border-collapse: collapse;
|
||||
margin: 0 auto;
|
||||
"
|
||||
>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="font-family: Arial, sans-serif">
|
||||
<p
|
||||
class="disclaimer__subtext"
|
||||
style="
|
||||
color: #999;
|
||||
line-height: 150%;
|
||||
font-size: 14px;
|
||||
margin: 0;
|
||||
"
|
||||
>
|
||||
Falls du Fragen hast, antworte auf diese E-Mail
|
||||
oder kontaktiere uns unter
|
||||
<a
|
||||
href="mailto:info@shinnex.de"
|
||||
style="
|
||||
font-size: 14px;
|
||||
text-decoration: none;
|
||||
color: #af9363;
|
||||
"
|
||||
>info@shinnex.de</a
|
||||
>.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</center>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,9 @@
|
|||
Dein Gutscheincode als Dankeschön
|
||||
|
||||
{{MESSAGE}} Du kannst den Gutschein beim Checkout einlösen.
|
||||
|
||||
Dein Gutscheincode lautet: {{VOUCHER_CODE}}
|
||||
|
||||
Zu unserem Shop: https://shinnex.de
|
||||
|
||||
Falls du Fragen hast, antworte auf diese E-Mail oder kontaktiere uns unter info@shinnex.de.
|
Loading…
Reference in New Issue