diff --git a/plugins/helpers/googleapi.js b/plugins/helpers/googleapi.js index 7a6df6f..3d924d2 100644 --- a/plugins/helpers/googleapi.js +++ b/plugins/helpers/googleapi.js @@ -15,10 +15,14 @@ module.exports = function(config) { key: apikey }; + console.log(videosParams); + var thisResolve = resolve; + var thisReject = reject; youtube.videos.list(videosParams, function(err, resp) { //console.log('respo', resp); - if(resp.items.length <= 0) { - reject('No results'); + + if(typeof resp === 'undefined' || resp === null || typeof resp.items === 'undefined' || resp.items === null || resp.items.length <= 0) { + thisReject('No results'); return; } @@ -32,7 +36,10 @@ module.exports = function(config) { statistics: resp.items[0].statistics, duration: formattedTime }; - resolve(data); + console.log(resp); + console.log(resp.items[0]); + console.log(data); + thisResolve(data); }); }); return promise; @@ -46,7 +53,7 @@ module.exports = function(config) { order: 'viewCount', key: apikey }; - + console.log(params); var promise = new Promise(function(resolve, reject) { youtube.search.list(params, function(err, resp) { if (err) { @@ -58,7 +65,7 @@ module.exports = function(config) { reject('No results (null)'); return; } - + if(resp.items.length <= 0) { reject('No results'); return; @@ -93,7 +100,7 @@ module.exports = function(config) { }); }); - return promise; + return promise; } }; }; diff --git a/plugins/helpers/requestPromise.js b/plugins/helpers/requestPromise.js index efe099d..f208081 100644 --- a/plugins/helpers/requestPromise.js +++ b/plugins/helpers/requestPromise.js @@ -1,21 +1,30 @@ var request = require('request'); var Promise = require('promise'); -function RequestPromise(url, urlArgs) { - var promise = new Promise(function(resolve, reject) { - request({ - url: url, - qs: urlArgs, - json: false - }, function(error, response, body) { - if(!error && response.statusCode == 200) { - resolve(JSON.parse(body)); - } else { - reject(error); - } - }); - }); - return promise; -}; +function RequestPromise(url, urlArgs, headers, json) { + if(typeof headers === 'undefined') { + headers = {}; + } + + if(typeof json === 'undefined') { + json = false; + } + + var promise = new Promise(function(resolve, reject) { + request({ + url: url, + qs: urlArgs, + headers: headers, + json: json + }, function(error, response, body) { + if(!error && response.statusCode == 200) { + resolve(JSON.parse(body)); + } else { + reject(error); + } + }); + }); + return promise; +} module.exports = RequestPromise;