1
0

upd: handle email signups properly with approval enabled

This commit is contained in:
Mar0xy
2023-10-18 03:21:06 +02:00
parent 3f0cc256dc
commit 32fc540df4
3 changed files with 15 additions and 4 deletions
@@ -277,10 +277,14 @@ export class SignupApiService {
pendingUserId: null,
});
}
if (instance.approvalRequiredForSignup) {
reply.code(204);
return;
if (pendingUser.email) {
this.emailService.sendEmail(pendingUser.email, 'Approval pending',
'Congratulations! Your account is now pending approval. You will get notified when you have been accepted.',
'Congratulations! Your account is now pending approval. You will get notified when you have been accepted.');
}
return { pendingApproval: true };
}
return this.signinService.signin(request, reply, account as MiLocalUser);
+1 -1
View File
@@ -182,7 +182,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<div v-else-if="tab === 'approval'" class="_gaps_m">
<MkKeyValue oneline>
<template #key>{{ i18n.ts.approvalStatus }}</template>
<template #value><span class="_monospace">{{ approved ? {{ i18n.ts.approved }} : {{ i18n.ts.notApproved }} }}</span></template>
<template #value><span class="_monospace">{{ approved ? i18n.ts.approved : i18n.ts.notApproved }}</span></template>
</MkKeyValue>
<MkTextarea v-model="signupReason" readonly>
@@ -45,6 +45,13 @@ function submit() {
os.api('signup-pending', {
code: props.code,
}).then(res => {
if (res.pendingApproval) {
return os.alert({
type: 'success',
title: i18n.ts._signup.almostThere,
text: i18n.ts._signup.approvalPending,
});
}
return login(res.i, '/');
}).catch(() => {
submitting = false;