· 6 years ago · Dec 05, 2019, 07:32 AM
1SQLite = require('sqlite'); // SQLpackage
2const path = require('path'); // PATHpackage
3const invites = {}; // Codes
4
5client.on("ready", () => { // ready ?
6 client.guilds.forEach(g => { // for each guilds ?
7 g.fetchInvites().then(guildInvites => { // fetch invites ?
8 invites[g.id] = guildInvites; // push guild invites on invites ^^
9 }); // end
10}); // end
11}); // end
12SQLite.open(path.join(__dirname, 'links.sql')) // read path ?
13.then(() => { // then ?
14 console.log('Opened') // seccussfull opened
15 SQLite.run(`CREATE TABLE IF NOT EXISTS linkSysteme (code TEXT, id VARCHAR(30))`) // create table if not exisit
16}) // end
17.catch(err => console.error(err)) // on error
18
19client.on("message", async msg => { // message ?
20 if(msg.author.bot || !msg.channel.guild) return; // if bot or private return
21 if(msg.content.startsWith("رابط")) { // message content
22 let invite = await msg.channel.createInvite({ // create invites
23 maxAge: 86400, // one day // limit time for invite ^^
24 maxUses: 5 // 5 people can enter // limit users for invites ^^
25 }, `Requested by ${msg.author.tag}`).catch(console.log); // reason // end
26
27 SQLite.run(`INSERT INTO linkSysteme VALUES ('${invite.code}','${msg.author.id}')`) // insert into table
28 msg.author.send(invite ? /*seccussfull*/`**مدة الرابط : يـوم عدد استخدامات الرابط : 5 **:\n ${invite}` /*error catch*/: "يوجد خلل في البوت :( \n يتم حل المشكل قريبا ...");
29 }
30
31})
32
33let inv_room = "544475000158289920" // room id
34client.on('guildMemberAdd', async member => { // membed add event
35 member.guild.fetchInvites().then(async guildInvites => { // fetch invites ?
36 const inv = invites[member.guild.id]; // get invite :)
37 invites[member.guild.id] = guildInvites; // push guild invites on invites
38 let invite = guildInvites.find(i => inv.get(i.code).uses < i.uses); // find ?
39 let res = await SQLite.get(`SELECT * FROM linkSysteme WHERE code = '${invite.code}'`) // select from sql
40 if(!res) { // if the code does'nt exists
41 console.log(invite.code) // for test
42 client.channels.get(inv_room).send("**Welcom To "+member.guild.name+"?? .\n Joined By: "+invite.inviter+".**") // send message to welcome room
43 } else { // if the code link exitst
44 client.channels.get(inv_room).send("**Welcom To "+member.guild.name+"?? .\n Joined By: <@!"+res.id+">.**") // send message to welcome room
45 console.log(res.code) // for test
46 } // end if
47 }); // end fetchs :)
48}); // end events :) ) )) )) )) )) )) )) ) )) ))