Prechádzať zdrojové kódy

Add a default public archive template.

Kailash Nadh 2 rokov pred
rodič
commit
1f693b80f7
2 zmenil súbory, kde vykonal 111 pridanie a 2 odobranie
  1. 13 2
      cmd/install.go
  2. 98 0
      static/email-templates/default-archive.tpl

+ 13 - 2
cmd/install.go

@@ -125,6 +125,17 @@ func install(lastVer string, db *sqlx.DB, fs stuffbin.FileSystem, prompt, idempo
 		lo.Fatalf("error setting default template: %v", err)
 	}
 
+	// Default campaign archive template.
+	archiveTpl, err := fs.Get("/static/email-templates/default-archive.tpl")
+	if err != nil {
+		lo.Fatalf("error reading default archive template: %v", err)
+	}
+
+	var archiveTplID int
+	if err := q.CreateTemplate.Get(&archiveTplID, "Default archive template", models.TemplateTypeCampaign, "", archiveTpl.ReadBytes()); err != nil {
+		lo.Fatalf("error creating default campaign template: %v", err)
+	}
+
 	// Sample campaign.
 	if _, err := q.CreateCampaign.Exec(uuid.Must(uuid.NewV4()),
 		models.CampaignTypeRegular,
@@ -148,8 +159,8 @@ func install(lastVer string, db *sqlx.DB, fs stuffbin.FileSystem, prompt, idempo
 		campTplID,
 		pq.Int64Array{1},
 		false,
-		campTplID,
-		"{}",
+		archiveTplID,
+		`{"name": "Subscriber"}`,
 	); err != nil {
 		lo.Fatalf("error creating sample campaign: %v", err)
 	}

+ 98 - 0
static/email-templates/default-archive.tpl

@@ -0,0 +1,98 @@
+<!doctype html>
+<html>
+    <head>
+        <title>{{ .Campaign.Subject }}</title>
+        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+        <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1">
+        <base target="_blank">
+        <style>
+            body {
+                background-color: #F0F1F3;
+                font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;
+                font-size: 15px;
+                line-height: 26px;
+                margin: 0;
+                color: #444;
+            }
+
+            pre {
+                background: #f4f4f4f4;
+                padding: 2px;
+            }
+
+            table {
+                width: 100%;
+                border: 1px solid #ddd;
+            }
+            table td {
+                border-color: #ddd;
+                padding: 5px;
+            }
+
+            .wrap {
+                background-color: #fff;
+                padding: 30px;
+                max-width: 525px;
+                margin: 0 auto;
+                border-radius: 5px;
+            }
+
+            .button {
+                background: #0055d4;
+                border-radius: 3px;
+                text-decoration: none !important;
+                color: #fff !important;
+                font-weight: bold;
+                padding: 10px 30px;
+                display: inline-block;
+            }
+            .button:hover {
+                background: #111;
+            }
+
+            .footer {
+                text-align: center;
+                font-size: 12px;
+                color: #888;
+            }
+                .footer a {
+                    color: #888;
+                    margin-right: 5px;
+                }
+
+            .gutter {
+                padding: 30px;
+            }
+
+            img {
+                max-width: 100%;
+                height: auto;
+            }
+
+            a {
+                color: #0055d4;
+            }
+                a:hover {
+                    color: #111;
+                }
+            @media screen and (max-width: 600px) {
+                .wrap {
+                    max-width: auto;
+                }
+                .gutter {
+                    padding: 10px;
+                }
+            }
+        </style>
+    </head>
+<body style="background-color: #F0F1F3;font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;font-size: 15px;line-height: 26px;margin: 0;color: #444;">
+    <div class="gutter" style="padding: 30px;">&nbsp;</div>
+    <div class="wrap" style="background-color: #fff;padding: 30px;max-width: 525px;margin: 0 auto;border-radius: 5px;">
+        {{ template "content" . }}
+    </div>
+    
+    <div class="footer" style="text-align: center;font-size: 12px;color: #888;">
+        <p>Powered by <a href="https://listmonk.app" target="_blank" style="color: #888;">listmonk</a></p>
+    </div>
+</body>
+</html>