aboutsummaryrefslogtreecommitdiff
path: root/node_simple.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_simple.js')
-rw-r--r--node_simple.js45
1 files changed, 27 insertions, 18 deletions
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);
- })
};
/**