feat: account dispute emails

This commit is contained in:
2026-09-10 13:21:04 +00:00
parent 5c87505820
commit 50ab63ff13
12 changed files with 210 additions and 2 deletions
+9
View File
@@ -0,0 +1,9 @@
{{define "pill"}}{{template "chip" (dict "label" "Account locked" "tone" "pend")}}{{end}}
{{define "title"}}Your account is locked{{end}}
{{define "body"}}
{{template "lead" (printf "We have locked the Vantage account %s. Reason: %s." .AccountName .Reason)}}
{{template "p" "Nothing has been deleted. While the account is locked, sign-in is paused, cloud instances are offline and billing is paused."}}
{{if .InstanceRows}}{{template "rows" .InstanceRows}}{{end}}
{{template "p" (printf "If you believe this is a mistake, reply to %s before %s, quoting dispute reference %s." .DisputeEmail (date .DisputeBy) .DisputeID)}}
{{template "p" "If the dispute is not upheld, the account will be terminated and its cloud instances deleted."}}
{{end}}
+10
View File
@@ -0,0 +1,10 @@
{{define "subject"}}Your Vantage account {{.AccountName}} is locked{{end}}
{{define "pill"}}{{template "chip" (dict "label" "Account locked" "tone" "pend")}}{{end}}
{{define "title"}}Your account is locked{{end}}
{{define "body"}}
{{template "lead" (printf "We have locked the Vantage account %s. Reason: %s." .AccountName .Reason)}}
{{template "p" "Nothing has been deleted. While the account is locked, sign-in is paused, cloud instances are offline and billing is paused."}}
{{if .InstanceRows}}{{template "rows" .InstanceRows}}{{end}}
{{template "p" (printf "If you believe this is a mistake, reply to %s before %s, quoting dispute reference %s." .DisputeEmail (date .DisputeBy) .DisputeID)}}
{{template "p" "If the dispute is not upheld, the account will be terminated and its cloud instances deleted."}}
{{end}}
+7
View File
@@ -0,0 +1,7 @@
{{define "pill"}}{{template "chip" (dict "label" "Restored" "tone" "up")}}{{end}}
{{define "title"}}Your account is restored{{end}}
{{define "body"}}
{{template "lead" (printf "The dispute for %s is resolved and your account is restored." .AccountName)}}
{{template "p" "Sign-in works again and cloud instances are back online. Billing has resumed and starts a new period from today."}}
{{template "p" "You will need to sign in again."}}
{{end}}
+8
View File
@@ -0,0 +1,8 @@
{{define "subject"}}Your Vantage account {{.AccountName}} is restored{{end}}
{{define "pill"}}{{template "chip" (dict "label" "Restored" "tone" "up")}}{{end}}
{{define "title"}}Your account is restored{{end}}
{{define "body"}}
{{template "lead" (printf "The dispute for %s is resolved and your account is restored." .AccountName)}}
{{template "p" "Sign-in works again and cloud instances are back online. Billing has resumed and starts a new period from today."}}
{{template "p" "You will need to sign in again."}}
{{end}}
@@ -0,0 +1,9 @@
{{define "pill"}}{{template "chip" (dict "label" "Terminated" "tone" "down")}}{{end}}
{{define "title"}}Your account is terminated{{end}}
{{define "body"}}
{{template "lead" (printf "The dispute for %s was not upheld, and the account is terminated. Reason: %s." .AccountName .Reason)}}
{{template "p" "Every subscription is cancelled and no refund is due. Sign-in is removed and cloud instances are being deleted. This cannot be undone."}}
{{if .InstanceRows}}{{template "rows" .InstanceRows}}{{end}}
{{if .SelfHosted}}{{template "p" "Self-hosted installs keep running until the licence date shown above. No new licence will be issued."}}{{end}}
{{template "p" (printf "Questions: %s, quoting dispute reference %s." .DisputeEmail .DisputeID)}}
{{end}}
+10
View File
@@ -0,0 +1,10 @@
{{define "subject"}}Your Vantage account {{.AccountName}} is terminated{{end}}
{{define "pill"}}{{template "chip" (dict "label" "Terminated" "tone" "down")}}{{end}}
{{define "title"}}Your account is terminated{{end}}
{{define "body"}}
{{template "lead" (printf "The dispute for %s was not upheld, and the account is terminated. Reason: %s." .AccountName .Reason)}}
{{template "p" "Every subscription is cancelled and no refund is due. Sign-in is removed and cloud instances are being deleted. This cannot be undone."}}
{{if .InstanceRows}}{{template "rows" .InstanceRows}}{{end}}
{{if .SelfHosted}}{{template "p" "Self-hosted installs keep running until the licence date shown above. No new licence will be issued."}}{{end}}
{{template "p" (printf "Questions: %s, quoting dispute reference %s." .DisputeEmail .DisputeID)}}
{{end}}
+7
View File
@@ -0,0 +1,7 @@
{{define "pill"}}{{template "chip" (dict "label" "Dispute deadline" "tone" "pend")}}{{end}}
{{define "title"}}Your account is still locked{{end}}
{{define "body"}}
{{template "lead" (printf "The Vantage account %s is still locked. Reason: %s." .AccountName .Reason)}}
{{template "p" (printf "To dispute this, reply to %s before %s, quoting dispute reference %s." .DisputeEmail (date .DisputeBy) .DisputeID)}}
{{template "p" "After that date the dispute is decided. If it is not upheld, the account is terminated and its cloud instances deleted."}}
{{end}}
+8
View File
@@ -0,0 +1,8 @@
{{define "subject"}}{{.AccountName}}: dispute deadline {{shortDate .DisputeBy}}{{end}}
{{define "pill"}}{{template "chip" (dict "label" "Dispute deadline" "tone" "pend")}}{{end}}
{{define "title"}}Your account is still locked{{end}}
{{define "body"}}
{{template "lead" (printf "The Vantage account %s is still locked. Reason: %s." .AccountName .Reason)}}
{{template "p" (printf "To dispute this, reply to %s before %s, quoting dispute reference %s." .DisputeEmail (date .DisputeBy) .DisputeID)}}
{{template "p" "After that date the dispute is decided. If it is not upheld, the account is terminated and its cloud instances deleted."}}
{{end}}