var config = require('../config');
|
|
var pageSize=config.pageSize;
|
|
|
|
var jwt = require('jsonwebtoken'); // used to create, sign, and verify tokens
|
|
var express = require("express");
|
|
var app = express();
|
|
app.set('superSecret', config.secret); // secret variable
|
|
|
|
var crypto = require('crypto');
|
|
var mongoose = require('mongoose');
|
|
var userModel = mongoose.model('userModel');
|
|
var notificationModel = mongoose.model('notificationModel');
|
|
var travelModel = mongoose.model('travelModel');
|
|
|
|
exports.searchByString = function (req, res) {
|
|
console.log(req.params.searchstring);
|
|
userModel.find({
|
|
username: new RegExp(req.params.searchstring, "i")
|
|
})//to return all the objects containing the string, having exactly the same string
|
|
.limit(pageSize)
|
|
.skip(pageSize * Number(req.query.page))
|
|
.lean()
|
|
.select('username avatar')
|
|
.exec(function (err, users) {
|
|
if (err) return res.send(500, err.message);
|
|
travelModel.find({
|
|
$or:[
|
|
{'from.name': new RegExp(req.params.searchstring, "i")},
|
|
{'to.name': new RegExp(req.params.searchstring, "i")},
|
|
{title: new RegExp(req.params.searchstring, "i")}
|
|
]
|
|
})//to return all the objects containing the string, without need of having the same string
|
|
.limit(pageSize)
|
|
.skip(pageSize * Number(req.query.page))
|
|
.lean()
|
|
.select('title from to date type')
|
|
.exec(function (err, travels) {
|
|
if (err) return res.send(500, err.message);
|
|
res.json({
|
|
users: users,
|
|
travels: travels
|
|
});
|
|
});//travels
|
|
});//users
|
|
};
|