private static void SetServerCredentials() { // Ask for Username input Console.WriteLine("Enter Username:"******"Enter password:"******""; ConsoleKeyInfo info = Console.ReadKey(true); while (info.Key != ConsoleKey.Enter) { if (info.Key != ConsoleKey.Backspace) { password += info.KeyChar; info = Console.ReadKey(true); Console.Write("*"); } else if (info.Key == ConsoleKey.Backspace) { if (!string.IsNullOrEmpty(password)) { password = password.Substring (0, password.Length - 1); } info = Console.ReadKey(true); } } Console.WriteLine(); // Login using API if (!string.IsNullOrEmpty(username) && !string.IsNullOrEmpty(password)) { Console.WriteLine("Logging " + username + " in..."); var userConfig = UserManagement.CreateTokenLogin(username, password, "TrakHound-Server-Console-Login"); if (userConfig != null) { ServerCredentials.Create(userConfig); } else { ServerCredentials.Remove(); } } }
void Login_Worker(object o) { if (o != null) { Login_Info info = (Login_Info)o; var userConfig = UserManagement.CreateTokenLogin(info.Username, info.Password, "TrakHound Server Login"); if (userConfig != null) { ServerCredentials.Create(userConfig); } else { ServerCredentials.Remove(); } Dispatcher.BeginInvoke(new Action <UserConfiguration>(Login_Finished), System.Windows.Threading.DispatcherPriority.Background, new object[] { userConfig }); } }
// Set Login File UserConfiguration private void Login(UserConfiguration userConfig) { if (userConfig != null) { var userInfo = ServerCredentials.Read(); if (userInfo != null) { if (userInfo.Username != userConfig.Username || userInfo.Token != userConfig.Token) { ServerCredentials.Create(userConfig); } } else { ServerCredentials.Create(userConfig); } } else { ServerCredentials.Remove(); } }