From bb28cebde1a93467a46e89fcb781a57c790c7e7b Mon Sep 17 00:00:00 2001 From: Scritches Date: Fri, 30 Mar 2018 12:22:03 -0400 Subject: [PATCH] Words module api support for phrases ~define, ~example, and ~like now all support phrases. --- modules/words/words.js | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/modules/words/words.js b/modules/words/words.js index 92014aa..ef7d0de 100644 --- a/modules/words/words.js +++ b/modules/words/words.js @@ -4,7 +4,7 @@ var Wordnik = require('wordnik'), var words = function(dbot) { this.commands = { '~define': function(event) { - var query = event.params[1]; + var query = event.params.slice(1).join(" "); this.wn.definitions(encodeURIComponent(query), function(err, defs) { if(!err && defs[0]) { event.reply(dbot.t('def', { @@ -18,8 +18,8 @@ var words = function(dbot) { }, '~like': function(event) { - var query = event.params[1]; - this.wn.word(query, {}, function(err, word) { + var query = event.params.slice(1).join(" "); + this.wn.word(encodeURIComponent(query), {}, function(err, word) { if(!err && word) { word.related({ 'limit': 10 @@ -40,22 +40,18 @@ var words = function(dbot) { }, '~example': function(event) { - var query = event.params[1]; - this.wn.word(query, {}, function(err, word) { - if(!err && word) { - word.topExample({}, function(err, example) { - if(!err && example) { - var rep = new RegExp(query, 'g'); - event.reply(dbot.t('def', { - 'word': query + ' example', - 'definition': example.text.replace(rep, '\u00033'+query+'\u000f') - })); - } else { - event.reply(dbot.t('no_example', { 'word': query })); - } - }); + var query = event.params.slice(1).join(" "); + + this.wn.topExample(encodeURIComponent(query), {}, function(err, example) { + if(!err && example) { + console.log(rep); + var rep = new RegExp(query, 'g'); + event.reply(dbot.t('def', { + 'word': query + ' example', + 'definition': example.text.replace(rep, '\u00033'+query+'\u000f') + })); } else { - event.reply(dbot.t('no_word', { 'word': query })); + event.reply(dbot.t('no_example', { 'word': query })); } }); },