Skip to content

Commit 7196d13

Browse files
committed
Sort out send-email-verification form as command
1 parent 40af449 commit 7196d13

File tree

4 files changed

+14
-159
lines changed

4 files changed

+14
-159
lines changed

src/commands/members/send-email-verification-form.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,17 @@ const renderForm = (viewModel: ViewModel) =>
1919
pipe(
2020
html`
2121
<h1>Send email verification</h1>
22+
<p>
23+
In order to finish adding an email to your profile it needs to be verified. Click the button below
24+
to send an email with a verification link to '${sanitizeString(viewModel.emailAddress)}'
25+
</p>
2226
<form action="?next=/me" method="post">
23-
<label for="email">Email address</label>
2427
<input
25-
type="email"
28+
type="hidden"
2629
name="email"
2730
id="email"
2831
value="${sanitizeString(viewModel.emailAddress)}"
32+
readonly
2933
/>
3034
<input
3135
type="hidden"

src/commands/members/send-email-verification-route.ts

Lines changed: 0 additions & 151 deletions
This file was deleted.

src/queries/me/render.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import { renderTrainingMatrix } from '../training-matrix/render';
1313
import * as O from 'fp-ts/Option';
1414
import { MemberEmail } from '../../read-models/shared-state/return-types';
1515
import { EmailAddress } from '../../types';
16-
import { tooltip } from '../shared-render/tool-tip';
1716

1817
const editFormOfAddress = (viewModel: ViewModel) => html`
1918
<a
@@ -23,9 +22,9 @@ const editFormOfAddress = (viewModel: ViewModel) => html`
2322
</a>
2423
`;
2524

26-
const sendVerifyEmail = (email: EmailAddress) => html`
25+
const sendVerifyEmail = (memberNumber: number, email: EmailAddress) => html`
2726
<a
28-
href="/members/send-email-verification?email=${sanitizeString(email)}"
27+
href="/members/send-email-verification?email=${sanitizeString(email)}&member=${memberNumber}"
2928
>
3029
Send Verification Email
3130
</a>
@@ -89,7 +88,7 @@ const renderEmailAddresses = (viewModel: ViewModel) => {
8988
<tr>
9089
<td></td>
9190
<td>${sanitizeString(email.emailAddress)}${O.isSome(email.verifiedAt) ? html`✅` : html``}</td>
92-
<td>${O.isSome(email.verifiedAt) ? setPrimaryEmail(email.emailAddress): sendVerifyEmail(email.emailAddress)}</td>
91+
<td>${O.isSome(email.verifiedAt) ? setPrimaryEmail(email.emailAddress): sendVerifyEmail(viewModel.member.memberNumber, email.emailAddress)}</td>
9392
</tr>
9493
`;
9594
};

src/routes.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import {Route, get} from './types/route';
66
import {authRoutes} from './authentication';
77
import {queryToHandler, commandToHandlers, ping} from './http';
88
import {emailHandler} from './http/email-handler';
9-
import {sendEmailVerificationRoutes} from './commands/members/send-email-verification-route';
109

1110
export const initRoutes = (
1211
deps: Dependencies,
@@ -84,7 +83,11 @@ export const initRoutes = (
8483
'sign-owner-agreement',
8584
commands.members.signOwnerAgreement
8685
),
87-
...sendEmailVerificationRoutes(deps, conf),
86+
...command(
87+
'members',
88+
'send-email-verification',
89+
commands.members.sendEmailVerification
90+
),
8891
...command(
8992
'members',
9093
'rejoined-with-new',

0 commit comments

Comments
 (0)