Skip to content

Commit

Permalink
Merge pull request LBRYFoundation#28 from khay12/master
Browse files Browse the repository at this point in the history
Fixed !roletip
  • Loading branch information
nikooo777 authored May 4, 2018
2 parents 7e9134e + 6413a70 commit bf16968
Showing 1 changed file with 34 additions and 21 deletions.
55 changes: 34 additions & 21 deletions bot/modules/tipbot.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,8 @@ exports.tip = {
author: { name: '!tip' }
}
},
channelwarning = 'Please use <#' + spamchannel + '> or DMs to talk to bots.';
channelwarning = 'Please use <#' + spamchannel + '> or DMs to talk to bots.',
MultiorRole = false;
switch (subcommand) {
case 'help':
privateOrSandboxOnly(msg, channelwarning, doHelp, [helpmsg]);
Expand All @@ -49,7 +50,7 @@ exports.tip = {
privateOrSandboxOnly(msg, channelwarning, doWithdraw, [tipper, words, helpmsg]);
break;
default:
doTip(msg, tipper, words, helpmsg);
doTip(bot, msg, tipper, words, helpmsg, MultiorRole);
}
}
};
Expand Down Expand Up @@ -78,13 +79,14 @@ exports.multitip = {
author: { name: '!multitip' }
}
},
channelwarning = 'Please use <#' + spamchannel + '> or DMs to talk to bots.';
channelwarning = 'Please use <#' + spamchannel + '> or DMs to talk to bots.',
MultiorRole = true
switch (subcommand) {
case 'help':
privateOrSandboxOnly(msg, channelwarning, doHelp, [helpmsg]);
break;
default:
doMultiTip(msg, tipper, words, helpmsg);
doMultiTip(bot, msg, tipper, words, helpmsg, MultiorRole);
break;
}
}
Expand Down Expand Up @@ -114,13 +116,14 @@ exports.roletip = {
author: { name: '!roletip' }
}
},
channelwarning = `Please use <#${spamchannel}> or DMs to talk to bots.`;
channelwarning = `Please use <#${spamchannel}> or DMs to talk to bots.`,
MultiorRole = true
switch (subcommand) {
case 'help':
privateOrSandboxOnly(msg, channelwarning, doHelp, [helpmsg]);
break;
default:
doRoleTip(msg, tipper, words, helpmsg);
doRoleTip(bot, msg, tipper, words, helpmsg, MultiorRole);
break;
}
}
Expand Down Expand Up @@ -202,7 +205,7 @@ ${txLink(txId)}`);
});
}

function doTip(message, tipper, words, helpmsg) {
function doTip(bot, message, tipper, words, helpmsg, MultiorRole) {
if (words.length < 3 || !words) {
return doHelp(message, helpmsg);
}
Expand All @@ -221,18 +224,18 @@ function doTip(message, tipper, words, helpmsg) {
}

if (message.mentions.users.first() && message.mentions.users.first().id) {
return sendLBC(message, tipper, message.mentions.users.first().id.replace('!', ''), amount, prv);
return sendLBC(message, tipper, message.mentions.users.first().id.replace('!', ''), amount, prv, MultiorRole);
}
message.reply('Sorry, I could not find a user in your tip...');
}

function doMultiTip(message, tipper, words, helpmsg) {
function doMultiTip(bot, message, tipper, words, helpmsg, MultiorRole) {
if (!words) {
doHelp(message, helpmsg);
return;
}
if (words.length < 4) {
doTip(message, tipper, words, helpmsg);
doTip(bot, message, tipper, words, helpmsg, MultiorRole);
return;
}
let prv = false;
Expand All @@ -249,37 +252,47 @@ function doMultiTip(message, tipper, words, helpmsg) {
return;
}
for (let i = 0; i < userIDs.length; i++) {
sendLBC(message, tipper, userIDs[i].toString(), amount, prv);
sendLBC(message, tipper, userIDs[i].toString(), amount, prv, MultiorRole);
}
}

function doRoleTip(message, tipper, words, helpmsg) {
function doRoleTip(bot, message, tipper, words, helpmsg, MultiorRole) {
if (!words || words.length < 3) {
doHelp(message, helpmsg);
return;
}
let prv = false;
let amountOffset = 2;
var prv = false;
var amountOffset = 2;
if (words.length >= 4 && words[1] === 'private') {
prv = true;
amountOffset = 3;
}
let amount = getValidatedAmount(words[amountOffset]);
if (amount == null) {
message.reply("I don't know how to tip that many credits...").then(message => message.delete(5000));
message
.reply("I don't know how to tip that many LBC coins...")
.then(message => message.delete(10000));
return;
}
if (message.mentions.roles.first().id) {
if (message.mentions.roles.first().members.first().id) {
let userIDs = message.mentions.roles.first().members.map(member => member.user.id.replace('!', ''));
for (let i = 0; i < userIDs; i++) {
sendLBC(message, tipper, userIDs[i].toString(), amount, prv);
let userIDs = message.mentions.roles
.first()
.members.map(member => member.user.id.replace('!', ''));
for (var i = 0; i < userIDs.length; i++) {
sendLBC(bot, message, tipper, userIDs[i], amount, prv, MultiorRole);
}
} else {
message.reply('Sorry, I could not find any users to tip in that role...').then(message => message.delete(5000));
message
.reply('Sorry, I could not find any users to tip in that role...')
.then(message => message.delete(10000));
return;
}
} else {
message.reply('Sorry, I could not find any roles in your tip...').then(message => message.delete(5000));
message
.reply('Sorry, I could not find any roles in your tip...')
.then(message => message.delete(10000));
return;
}
}

Expand All @@ -302,7 +315,7 @@ function findUserIDsAndAmount(message, words, prv) {
return [idList, amount];
}

function sendLBC(message, tipper, recipient, amount, privacyFlag) {
function sendLBC(bot, message, tipper, recipient, amount, privacyFlag, MultiorRole) {
getAddress(recipient.toString(), function(err, address) {
if (err) {
message.reply(err.message).then(message => message.delete(5000));
Expand Down

0 comments on commit bf16968

Please sign in to comment.