/[sudobot]/trunk/src/services/Verification.ts
ViewVC logotype

Diff of /trunk/src/services/Verification.ts

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 130 by rakin, Mon Jul 29 17:28:43 2024 UTC revision 340 by rakin, Mon Jul 29 17:29:38 2024 UTC
# Line 3  import { Request } from "express"; Line 3  import { Request } from "express";
3  import { Op } from "sequelize";  import { Op } from "sequelize";
4  import DiscordClient from "../client/Client";  import DiscordClient from "../client/Client";
5  import MessageEmbed from "../client/MessageEmbed";  import MessageEmbed from "../client/MessageEmbed";
6    import Service from "../utils/structures/Service";
7    
8  export default class Verification {  export default class Verification extends Service {
     constructor(protected client: DiscordClient) {  
   
     }  
   
9      async success(member: GuildMember, req: Request) {              async success(member: GuildMember, req: Request) {        
10          await member.roles.remove(this.client.config.props[member.guild.id].verification.role);          await member.roles.remove(this.client.config.props[member.guild.id].verification.role);
11    
12          await member.send({          try {
13              embeds: [              await member.send({
14                  new MessageEmbed({                  embeds: [
15                      author: {                      new MessageEmbed({
16                          name: member.guild.name,                          author: {
17                          iconURL: member.guild.iconURL() ?? undefined,                              name: member.guild.name,
18                      },                              iconURL: member.guild.iconURL() ?? undefined,
19                      title: "Thanks for verifying!",                          },
20                      description: "The verification was completed successfully!",                          title: "Thanks for verifying!",
21                      timestamp: new Date()                          description: "The verification was completed successfully!",
22                  })                          timestamp: new Date()
23              ],                      })
24          });                  ],
25                });
26            }
27            catch (e) {
28                console.log(e);
29            }
30    
31          const { default: UnverifiedMember } = await import('../models/UnverifiedMember');          const { default: UnverifiedMember } = await import('../models/UnverifiedMember');
32    
33          const data = await UnverifiedMember.findOne({          const data = await UnverifiedMember.findOne({
34              where: {              guild_id: member.guild.id,
35                  guild_id: member.guild.id,              user_id: member.id,
36                  user_id: member.id,              status: 'pending'
                 status: 'pending'  
             }  
37          });          });
38    
39          await data?.set('status', 'done');          await data?.set('status', 'done');
# Line 48  export default class Verification { Line 48  export default class Verification {
48          await UnverifiedMember.create({          await UnverifiedMember.create({
49              guild_id: member.guild.id,              guild_id: member.guild.id,
50              user_id: member.id,              user_id: member.id,
51              status: 'pending'              status: 'pending',
52                createdAt: new Date()
53          });          });
54    
55          await member.roles.add(this.client.config.props[member.guild.id].verification.role);          await member.roles.add(this.client.config.props[member.guild.id].verification.role);
56    
57          const url = `${this.client.config.props.global.cp_host}/challenge/v1/verify/?guild_id=${member.guild.id}`;          const url = `${this.client.config.props.global.cp_host}/challenge/v1/verify/?guild_id=${member.guild.id}`;
58    
59          await member.send({          try {
60              embeds: [              await member.send({
61                  new MessageEmbed({                  embeds: [
62                      author: {                      new MessageEmbed({
63                          name: member.guild.name,                          author: {
64                          iconURL: member.guild.iconURL() ?? undefined,                              name: member.guild.name,
65                      },                              iconURL: member.guild.iconURL() ?? undefined,
66                      title: "Verification Required!",                          },
67                      description: `Hey ${member.nickname ?? member.user.username}, the server **${member.guild.name}** requires verification!\nTo verify yourself, simply go to the verification URL given below and you might be asked to solve some captcha.\n\nHave a nice day,\n*${member.guild.name} Staff*`,                          title: "Verification Required!",
68                      timestamp: new Date(),                          description: `Hey ${member.nickname ?? member.user.username}, the server **${member.guild.name}** requires verification!\nTo verify yourself, simply go to the verification URL given below and you might be asked to solve some captcha.\n\nHave a nice day,\n*${member.guild.name} Staff*`,
69                      fields: [                          timestamp: new Date(),
70                          {                          fields: [
71                              name: "Verification URL",                              {
72                              value: url                                  name: "Verification URL",
73                          }                                  value: url
74                      ],                              }
75                      url                          ],
76                  })                          url
77              ]                      })
78          });                  ]
79                });
80            }
81            catch (e) {
82                console.log(e);
83            }
84      }      }
 }  
85    }

Legend:
Removed from v.130  
changed lines
  Added in v.340

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26