aboutsummaryrefslogtreecommitdiff
path: root/node_simple.js
diff options
context:
space:
mode:
authorHumairAK <humair88@hotmail.com>2016-07-24 06:13:31 +0000
committerHumairAK <humair88@hotmail.com>2016-07-24 06:13:31 +0000
commit6522ff6aa38b5a8d56f64460d1646e4ab7ab8dc2 (patch)
tree5e16217dbea4e23fc93413ba6f9d0c317812ec39 /node_simple.js
parent3e777af0387821e7a7fe03792cf79915d1b20bc7 (diff)
parente83ad0a7931611822f49f84bf21a204df1de8eb6 (diff)
Merge branch 'master' of https://github.com/HumairAK/solutions_repo
Diffstat (limited to 'node_simple.js')
-rw-r--r--node_simple.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/node_simple.js b/node_simple.js
index b8ada6b..d3eddb4 100644
--- a/node_simple.js
+++ b/node_simple.js
@@ -15,6 +15,7 @@
* 10. comment_history ? DONE
* 11. solutions_history ? DONE
* 12. voting for solutions ? DONE
+ * 23. A search users function ? DONE
*
* */
@@ -98,6 +99,35 @@ var uri = exports.uri = 'mongodb://general:assignment4@ds057862.mlab.com:57862/
//****************************FUNCTIONS************************************************|
+exports.search_users = function ( token, callback ) {
+
+ mongoFactory.getConnection(uri).then(function (db) {
+ var users = db.collection('users');
+ users.createIndex( // make the following fields searchable
+ {
+ "user_name":"text",
+ "f_name":"text",
+ "l_name":"text"
+ });
+ users.find(
+ { $text: { $search: token } },
+ { score: { $meta: "textScore" } }
+ ).sort( { score: { $meta:"textScore" } } ).toArray(function (err, docs) {
+ if (err) callback(false, "Error: some error while searhing");
+ else {
+ // console.log(docs);
+ callback(true, docs);
+ }
+ });
+
+ db.close();
+
+ }).catch(function (err) {
+ console.error(err);
+ });
+};
+
+
exports.followExam = function (user_name, exam_id, callback) {
exports.retrieveFollows(user_name, function (bool, result) {