Add verify domain button (#22)

This commit is contained in:
KM Koushik
2024-05-28 06:34:01 +10:00
committed by GitHub
parent ad57992e21
commit d7b8a9cca6
6 changed files with 83 additions and 32 deletions

View File

@@ -17,6 +17,15 @@ export const domainRouter = createTRPCRouter({
return createDomain(ctx.team.id, input.name);
}),
startVerification: teamProcedure
.input(z.object({ id: z.number() }))
.mutation(async ({ ctx, input }) => {
await ctx.db.domain.update({
where: { id: input.id },
data: { isVerifying: true },
});
}),
domains: teamProcedure.query(async ({ ctx }) => {
const domains = await db.domain.findMany({
where: {

View File

@@ -33,7 +33,7 @@ export async function getDomain(id: number) {
throw new Error("Domain not found");
}
if (domain.status !== "SUCCESS") {
if (domain.isVerifying) {
const domainIdentity = await ses.getDomainIdentity(
domain.name,
domain.region
@@ -48,27 +48,23 @@ export async function getDomain(id: number) {
const _dmarcRecord = await getDmarcRecord(domain.name);
const dmarcRecord = _dmarcRecord?.[0]?.[0];
console.log(domainIdentity);
console.log(dmarcRecord);
if (
domain.dkimStatus !== dkimStatus ||
domain.spfDetails !== spfDetails ||
domain.status !== verificationStatus ||
domain.dmarcAdded !== (dmarcRecord ? true : false)
) {
domain = await db.domain.update({
where: {
id,
},
data: {
dkimStatus,
spfDetails,
status: verificationStatus ?? "NOT_STARTED",
dmarcAdded: dmarcRecord ? true : false,
},
});
}
domain = await db.domain.update({
where: {
id,
},
data: {
dkimStatus,
spfDetails,
status: verificationStatus ?? "NOT_STARTED",
dmarcAdded: dmarcRecord ? true : false,
isVerifying:
verificationStatus === "SUCCESS" &&
dkimStatus === "SUCCESS" &&
spfDetails === "SUCCESS"
? false
: true,
},
});
return {
...domain,