using System; using System.Collections.Generic; using System.Linq; using System.Web; using MongoDB.Driver; using MongoDB.Bson; using AIAHTML5.API.Properties; using AIAHTML5.API.Constants; using log4net; namespace AIAHTML5.API.Models { public class Users { internal static dynamic AuthenticateUser(Newtonsoft.Json.Linq.JObject credentials) { ILog logger = log4net.LogManager.GetLogger((System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)); logger.Debug("insdie AuthenticateUser for loginId =" + credentials["username"].ToString() + " and password= " + credentials["password"].ToString()); try { var client = new MongoClient(); var db = client.GetDatabase(Settings.Default.database); var collection = db.GetCollection("Users"); // var builder = Builders.Filter; BsonDocument filter = new BsonDocument(); filter.Add("loginId", credentials["username"].ToString()); filter.Add("password", credentials["password"].ToString()); dynamic userDetails = collection.Find(filter).SingleOrDefault(); logger.Debug("userDetails= " + userDetails.ElementCount); if (userDetails.ElementCount > 0) { return userDetails; } else { return AIAConstants.USER_NOT_FOUND; } } catch(Exception e) { //NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger(); logger.Fatal("Exception in AuthenticateUser for loginId =" + credentials["username"].ToString() + " and password= " + credentials["password"].ToString() + "Exception= " + e.Message); string error = AIAConstants.ERROR_IN_FECTHING_DETAILS; return error; } } } }