diff --git a/pkg/server/routes.go b/pkg/server/routes.go index d9b57a9..b3057b8 100644 --- a/pkg/server/routes.go +++ b/pkg/server/routes.go @@ -123,11 +123,39 @@ func (ctrl *Controller) CreateJob(ctx *gin.Context) { if ctrl.EmailService != nil { // TODO: make this a nicer html template? - message := fmt.Sprintf( - "Your job has been created!\n\nUse this link to edit the job posting", - SignedJobRoute(job, ctrl.Config), - ) - err = ctrl.EmailService.SendEmail(newJobInput.Email, "Job Created!", message) + subject := fmt.Sprintf("Job %s Created!", newJobInput.Position) + message := fmt.Sprintf(` + + + + + + Job Created + + + +
+

Job %s Created!

+

Congratulations! Your job posting for the position %s has been successfully created.

+

You can edit or update your job posting by clicking the link below:

+

Edit Job Posting

+ +
+ + + `, newJobInput.Position, newJobInput.Position, SignedJobRoute(job, ctrl.Config)) + + err = ctrl.EmailService.SendEmail(newJobInput.Email, subject, message) if err != nil { log.Println(fmt.Errorf("failed to sendEmail: %w", err)) // continuing... diff --git a/pkg/server/routes_test.go b/pkg/server/routes_test.go index f8b4dda..e94c8d9 100644 --- a/pkg/server/routes_test.go +++ b/pkg/server/routes_test.go @@ -166,7 +166,8 @@ func TestCreateJob(t *testing.T) { assert.Equal(t, 1, len(svcmock.tweets)) assert.Equal(t, 1, len(svcmock.slacks)) - assert.Equal(t, "Job Created!", svcmock.emails[0].subject) + expectedSubject := fmt.Sprintf("Job %s Created!", tt.values["position"][0]) + assert.Equal(t, expectedSubject, svcmock.emails[0].subject) assert.Equal(t, tt.values["email"][0], svcmock.emails[0].recipient) assert.Contains(t, svcmock.emails[0].body, server.SignedJobRoute(newJob, conf))