/// <summary> /// Gets user's profile info if authorized. /// </summary> /// <returns>Task.</returns> async Task getProfileInfo() { try { if (!_services.Preferences.IsLoggedIn) { return; } var username = _services.Preferences.UserLogin; if (string.IsNullOrEmpty(username)) { return; } var profile = await DataAccess.GetProfileInfo(username); AppUserData.SetLoginData(_services, _services.Preferences.UserId, username); AppUserData.SetProfileData(_services, profile); _services.Preferences.GroupName = profile?.GroupName; _services.Preferences.Avatar = profile?.Avatar; } catch (Exception ex) { AppLogs.Log(ex); } }
/// <summary> /// Gets user data (username and user's id) by provided credentials and saves it. /// </summary> /// <returns><see cref="UserModel"/> on success, <code>null</code> otherwise.</returns> async Task <UserModel> loginRequest() { var userLogin = await DataAccess.Login(Username, Password); if (userLogin != null) { AppUserData.SetLoginData(_services, userLogin.UserId, userLogin.Username); } return(userLogin); }
/// <summary> /// Gets user data (username and user's id) by provided credentials and saves it. /// </summary> /// <returns><see cref="UserModel"/> on success, <code>null</code> otherwise.</returns> async Task <UserModel> loginRequest() { var userLogin = await DataAccess.Login(Username, Password); if (_services.Preferences.Server == Servers.EduCatsAddress) { if (userLogin != null) { var jwt = new { password = Password, userName = Username, }; var body = JsonController.ConvertObjectToJson(jwt); var httpWebRequest = (HttpWebRequest)WebRequest.Create(Links.LoginTestServer); httpWebRequest.ContentType = "application/json"; httpWebRequest.Method = "POST"; using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream())) { string json = body; streamWriter.Write(json); streamWriter.Flush(); streamWriter.Close(); } var tok = ""; var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse(); using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) { string line = ""; while ((line = streamReader.ReadLine()) != null) { tok += line; } } var token = JsonConvert.DeserializeObject <TokenModel>(tok); _services.Preferences.AccessToken = token.Token; SecondUserModel userLoginTest = await DataAccess.LoginTest(Username, Password); userLogin.UserId = userLoginTest.Id; userLogin.Username = userLoginTest.Username; } } AppUserData.SetLoginData(_services, userLogin.UserId, userLogin.Username); return(userLogin); }
public void SetLoginDataTest() { AppUserData.SetLoginData(_mocked, _userId, _username); Assert.AreEqual(_userId, AppUserData.UserId); Assert.AreEqual(_username, AppUserData.Username); }