From 3e327f31bee94663d269e2412828fb47adbf6754 Mon Sep 17 00:00:00 2001 From: Leo Date: Wed, 11 Apr 2018 03:44:03 +0000 Subject: [PATCH 1/3] test --- test.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 test.txt diff --git a/test.txt b/test.txt new file mode 100644 index 0000000..e69de29 From 829a6e345ba8fcaa1a1a46e9527b7c1c931bce94 Mon Sep 17 00:00:00 2001 From: Leo Date: Wed, 11 Apr 2018 03:44:45 +0000 Subject: [PATCH 2/3] remove test --- test.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 test.txt diff --git a/test.txt b/test.txt deleted file mode 100644 index e69de29..0000000 From 0876c7113c8a0d79eddf41f8686764c3b093826b Mon Sep 17 00:00:00 2001 From: Leo Date: Wed, 11 Apr 2018 03:50:46 +0000 Subject: [PATCH 3/3] handle case for invalid fighter name so the app won't crash --- lib/mma/index.js | 109 +++++++++++++++++++++++++---------------------- 1 file changed, 57 insertions(+), 52 deletions(-) diff --git a/lib/mma/index.js b/lib/mma/index.js index 53c3f00..4a0cffb 100644 --- a/lib/mma/index.js +++ b/lib/mma/index.js @@ -102,61 +102,66 @@ var fighter = function(query, callback) { // Crawl and Parse Sherdog Profile // https://github.com/valish/sherdog-api //------------------------------------------+ - sherdog.getFighter(sherdog_url, function(data) { - fighter.name = data.name; - fighter.nickname = data.nickname; - fighter.association = data.association; - fighter.age = data.age; - fighter.birthday = data.birthday; - fighter.hometown = data.locality; - fighter.nationality = data.nationality; - fighter.height = data.height; - fighter.weight = data.weight; - fighter.weight_class = data.weight_class; - fighter.wins = data.wins; - fighter.losses = data.losses; - fighter.fights = data.fights; - - // Search for UFC profile - google(query + ' ufc', function(err, next, links) { - if (err) console.error(err); - - for (var i = 0; i < links.length; ++i) { - if (resultContains(links[i], "ufc.com/fighter/")) { - ufc_url = links[i].href; - i = 10; + if (sherdog_url) { + sherdog.getFighter(sherdog_url, function(data) { + fighter.name = data.name; + fighter.nickname = data.nickname; + fighter.association = data.association; + fighter.age = data.age; + fighter.birthday = data.birthday; + fighter.hometown = data.locality; + fighter.nationality = data.nationality; + fighter.height = data.height; + fighter.weight = data.weight; + fighter.weight_class = data.weight_class; + fighter.wins = data.wins; + fighter.losses = data.losses; + fighter.fights = data.fights; + + // Search for UFC profile + google(query + ' ufc', function(err, next, links) { + if (err) console.error(err); + + for (var i = 0; i < links.length; ++i) { + if (resultContains(links[i], "ufc.com/fighter/")) { + ufc_url = links[i].href; + i = 10; + } } - } - - //------------------------------------------+ - // Crawl and Parse UFC Profile - // https://github.com/valish/ufc-api - //------------------------------------------+ - if (ufc_url) { - ufc.getFighter(ufc_url, function(data) { - fighter.fullname = data.fullname; - fighter.hometown = data.hometown; - fighter.location = data.location; - fighter.height = data.height; - fighter.height_cm = data.height_cm; - fighter.weight = data.weight; - fighter.weight_kg = data.weight_kg; - fighter.record = data.record; - fighter.college = data.college; - fighter.degree = data.degree; - fighter.summary = data.summary; - fighter.strikes = data.strikes; - fighter.takedowns = data.takedowns; - + + //------------------------------------------+ + // Crawl and Parse UFC Profile + // https://github.com/valish/ufc-api + //------------------------------------------+ + if (ufc_url) { + ufc.getFighter(ufc_url, function(data) { + fighter.fullname = data.fullname; + fighter.hometown = data.hometown; + fighter.location = data.location; + fighter.height = data.height; + fighter.height_cm = data.height_cm; + fighter.weight = data.weight; + fighter.weight_kg = data.weight_kg; + fighter.record = data.record; + fighter.college = data.college; + fighter.degree = data.degree; + fighter.summary = data.summary; + fighter.strikes = data.strikes; + fighter.takedowns = data.takedowns; + + callback(fighter); + }); + } else { callback(fighter); - }); - } else { - callback(fighter); - } + } + }); + }); - - }); - + } + else { + fighter = null; + callback(fighter); + } }); }