From 248a428bace05c9b345128e96fa134a56eeabcdc Mon Sep 17 00:00:00 2001 From: kumar Date: Tue, 26 Jul 2016 19:36:48 -0400 Subject: added checking for examid before looking for its solutions --- node_simple.js | 45 +++++++++++++++++++++++++++------------------ 1 file changed, 27 insertions(+), 18 deletions(-) (limited to 'node_simple.js') diff --git a/node_simple.js b/node_simple.js index 1260c40..ca20978 100644 --- a/node_simple.js +++ b/node_simple.js @@ -776,27 +776,36 @@ exports.add_comment = function (sol_id, fields, serverCallback) { * @param {function} callback: <[Objs]> - RESULT * */ exports.get_all_solutions = function (exam_id, q_num, callback) { - mongoFactory.getConnection(uri) - .then(function (db) { - var solutions = db.collection('solutions'); + // check if the exam id already exists... + exports.get_exam_byID(exam_id, function (success, failure, exam) { + if (!success && failure) { // some error occurred while searching + callback(false, true, "Error: Some error occurred while searching for exam", null); + } else if (!success && !failure) { + callback(false, true, "Error: this exam doesn't exist", null); + } else if (success && !failure) { // this exam exists proceed with task + mongoFactory.getConnection(uri).then(function (db) { - solutions.find( - { - exam_id: exam_id, - q_id: q_num - } - ).sort({ votes: -1}).toArray( function (err, docs) { - if (err) throw err; - else { - callback(docs); - } + var solutions = db.collection('solutions'); + + solutions.find( + { + exam_id: exam_id, + q_id: q_num + } + ).sort({ votes: -1}).toArray( function (err, docs) { + if (err) callback(false, true, "Error: Some error occurred while looking for solutions"); + else { // either nothing was found or something was found + callback(true, false, "Solutions", docs); + } + + }); + }).catch(function () { + callback(false, true, "Error: Some error occurred with the db connection"); + }) + } + }); - }); - }) - .catch(function () { - console.error(err); - }) }; /** -- cgit v1.2.3