|
|
- const {
- mongo_url,
- trello_token,
- trello_key
- } = require('../config.json');
-
- const {
- userModel,
- } = require('./schemas.js');
-
- let mongoose = require('mongoose');
-
-
- module.exports = {
- name: 'upgrade',
- channels: ['734387503464710165'],
- description: 'Upgrade a user!',
- roles: ['732345527143759943'],
- async execute(message,args) {
-
- try {
- await mongoose.connect( mongo_url, {useNewUrlParser: true, useUnifiedTopology: true}, () => null );
- }catch (error) {
- console.log("ERROR WITH MONGODB CONNECTION");
- }
-
- var roles_hierarchy = [
- '732558019409346603', // 'kiddie,
- '732618552661770241', // 'hunter',
- '732618853355356192', // 'hacker',
- '732618650158366770' // 'mentor'
- ];
-
- const member = message.mentions.members.first();
- let data = await userModel.find({_id : member.id},"rank")
- let current_index = data[0].rank - 1
-
- if(current_index == roles_hierarchy.length - 1){
- return message.channel.send("This user is already at the highest level!")
- }
-
- member.roles.remove(roles_hierarchy[current_index])
- member.roles.add(roles_hierarchy[current_index + 1]);
-
- userModel.findOneAndUpdate(
- {_id : member.id},
- {rank : current_index + 2},
- {
- new: true,
- runValidators: true,
- useFindAndModify: false
- }, function(err, result) {
- //if (err) {console.log(err); } else {console.log(result);}
- });
- return message.channel.send("User upgraded successfully!")
-
- },
- };
|