public OnlineUser Create([FromBody] LogInUserMsg userInfo) { if (ModelState.IsValid) { return(_dataAccessProvider.AddOnlineUserRecord(userInfo)); } return(_dataAccessProvider.AddOnlineUserRecord(userInfo)); }
/* * Description:Adds an online user to OnlineUser table * Params:Login message with the credentials to be validated * Output:Succes, Bad Password, Not registered message */ public OnlineUser AddOnlineUserRecord(LogInUserMsg userInfo) { OnlineUser onlineUser = new OnlineUser(); bool verifiedCredentials = Connector.checkUserPass(userInfo.username, userInfo.passwordHash); if (_context.athletes.Any(a => a.username == userInfo.username)) { string id_athlete = _context.athletes.Where(a => a.username == userInfo.username).Select(u => u.id).SingleOrDefault(); if (verifiedCredentials) { if (_context.onlineusers.Any(ou => ou.id_athlete_fk == id_athlete)) { var entity = _context.onlineusers.FirstOrDefault(ou => ou.id_athlete_fk == id_athlete); return(entity); } else { onlineUser.id_athlete_fk = id_athlete; onlineUser.token = TokenManager.generateToken(12); _context.onlineusers.Add(onlineUser); _context.SaveChanges(); return(onlineUser); } } else { onlineUser.token = "BadPassword"; return(onlineUser); } } else if (_context.organizers.Any(o => o.username == userInfo.username)) { string id_organizer = _context.organizers.Where(o => o.username == userInfo.username).Select(u => u.id).SingleOrDefault(); if (verifiedCredentials) { if (_context.onlineusers.Any(ou => ou.id_organizer_fk == id_organizer)) { var entity = _context.onlineusers.FirstOrDefault(ou => ou.id_organizer_fk == id_organizer); return(entity); } else { onlineUser.id_organizer_fk = id_organizer; onlineUser.token = TokenManager.generateToken(12); _context.onlineusers.Add(onlineUser); _context.SaveChanges(); return(onlineUser); } } else { onlineUser.token = "BadPassword"; return(onlineUser); } } else { Console.WriteLine("NotRegistered"); onlineUser.token = "NotRegistered"; return(onlineUser); } }