public ActionResult <string> SelectUser([FromBody] dynamic json) { lock (_system) { var res = JsonSerializer.Serialize(json); JObject job = JObject.Parse(res); String email = job.GetValue("email").ToString(); if (!_system.isUserOnline(job.GetValue("valueST").ToString())) { return(Unauthorized("Client Offline")); } InterfaceUtilizador u = _system.GetUser(email); var user = new JObject(); user.Add("name", u.GetName()); user.Add("email", email); user.Add("cat", u.GetType().Name); user.Add("localidade", u.GetLocalidade()); if (u.GetType().Name == "Cliente") { user.Add("categoria", "Cliente " + ((Cliente)u).categoria); } var ret = new JObject(); ret.Add("user", user); return(Ok(ret.ToString())); } }
public ActionResult <InterfaceUtilizador> Authenticate([Bind] UserAuthenticationDto userDto) { lock (_system) { InterfaceUtilizador user = null; int typeOfUser = _system.TypeUser(userDto.email); string token = CalculateHash.GetHashString(userDto.email + DateTime.Now); if (typeOfUser != -1) { switch (typeOfUser) { case 0: { user = (Cliente)_system.Authenticate(userDto.email, userDto.password, token); break; } case 1: { user = (Instrutor)_system.Authenticate(userDto.email, userDto.password, token); break; } case 2: { user = (Rececionista)_system.Authenticate(userDto.email, userDto.password, token); break; } } } if (user == null || typeOfUser == -1) { return(Unauthorized(new { message = "Credentials are wrong..." })); } StringBuilder a = new StringBuilder() .Append("{") .Append("\"token\":\"") .Append(token) .Append("\",\"user\":") .Append(JsonSerializer.Serialize(user, user.GetType())) .Append("}"); return(Ok(a.ToString())); } }
public ActionResult <string> Status([FromBody] StringDto token) { lock (_system) { var validToken = _system.isUserOnline(token.valueST); if (!validToken) { return(Unauthorized("Client offline")); } String statusToken = validToken ? "online" : "offline"; InterfaceUtilizador user = null; if (validToken) { _system.RenovaToken(token.valueST); var email = _system.getUserGivenToken(token.valueST); user = _system.GetUser(email); int typeOfUser = _system.TypeUser(user.GetEmail()); if (typeOfUser != -1) { switch (typeOfUser) { case 0: { user = (Cliente)user; break; } case 1: { user = (Instrutor)user; break; } case 2: { user = (Rececionista)user; break; } } } } string userData = JsonSerializer.Serialize(user, user.GetType()); StringBuilder a = new StringBuilder() .Append("{") .Append("\"status\":\"") .Append(statusToken) .Append("\",\"user\":") .Append(userData) .Append("}"); return(Ok(a.ToString())); } }