private void RegisterButtonClick(object sender, RoutedEventArgs e) { if (string.IsNullOrEmpty(UsernameTxt.Text) || string.IsNullOrEmpty(PasswordTxt.Password)) { MessageBox.Show("Username and password cannot be empty!", "Error in registration", MessageBoxButton.OK, MessageBoxImage.Error); return; } var controller = "User?username="******"&passwordOrRank=" + Crypto.Encrypt(PasswordTxt.Password) + "&mode=register&token=nothing"; try { var ans = RestClient.MakeGetRequest(controller); if (ans != "\"\"") { MessageBox.Show(ans, "Error in registration", MessageBoxButton.OK, MessageBoxImage.Error); } else { UsernameTxt.Text = ""; PasswordTxt.Password = ""; MessageBox.Show("User " + UsernameTxt.Text + " registered succefully!", "Success", MessageBoxButton.OK, MessageBoxImage.Information); ChangeModeHelper(); } } catch { MessageBox.Show("Server is not found.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void ReplayRequest() { var controller = "Replay?user="******"&&token=" + LoggedUser.token; try { var ans = RestClient.MakeGetRequest(controller); var js = new JavaScriptSerializer(); var replayAns = js.Deserialize <List <TupleModel <string, string> > >(ans); var tmpList = replayAns.ToList(); Replays.Clear(); foreach (var pair in tmpList) { var tmpTpl = new TupleModel <string, string>(); var dateAndTime = pair.m_Item1.Split(' '); tmpTpl.m_Item1 = dateAndTime[0].Replace('_', '/') + ' ' + dateAndTime[1].Replace('_', ':'); tmpTpl.m_Item2 = pair.m_Item2; Replays.Add(tmpTpl); } ReplayGrid.ItemsSource = Replays; ReplayGrid.Items.Refresh(); } catch { HandleCrashing(); } }
private void Spectate_Click(object sender, RoutedEventArgs e) { var room = RoomResults[RoomsGrid.SelectedIndex]; var controller = "Room?userName="******"&gameName=" + room.RoomName + "&playerName=none&option=spectate&token=" + LoggedUser.token; try { var ans = RestClient.MakeGetRequest(controller); var json = JObject.Parse(ans); var roomState = json.ToObject <RoomState>(); if (roomState.Messege == null) { var gameWindow = new GameWindow(LoggedUser, null, roomState, this, null); OpenWindows.Add(gameWindow); Application.Current.MainWindow = gameWindow; gameWindow.Show(); } else { MessageBox.Show(roomState.Messege, "Error in spectate", MessageBoxButton.OK, MessageBoxImage.Error); } } catch { HandleCrashing(); } }
private void Watch_Click(object sender, RoutedEventArgs e) { var selection = Replays[ReplayGrid.SelectedIndex]; var dateAndTime = selection.m_Item1.Split(' '); var controller = "Replay?user="******"&roomName=" + selection.m_Item2 + "&date=" + dateAndTime[0].Replace('/', '_') + ' ' + dateAndTime[1].Replace(':', '_') + "&token=" + LoggedUser.token; try { var ans = RestClient.MakeGetRequest(controller); var js = new JavaScriptSerializer(); try { var replayStates = js.Deserialize <List <RoomState> >(ans); var gameWindow = new GameWindow(LoggedUser, LoggedUser.Username, replayStates[0], this, replayStates); OpenWindows.Add(gameWindow); Application.Current.MainWindow = gameWindow; gameWindow.Show(); } catch { MessageBox.Show("Replay is not available.", "Error in replay", MessageBoxButton.OK, MessageBoxImage.Error); } } catch { HandleCrashing(); } }
private void Window_Closing(object sender, CancelEventArgs e) { if (_loggedIn) { var controller = "User?username="******"&mode=logout&token=" + LoggedUser.token; try { RestClient.MakeGetRequest(controller); } catch { } finally { foreach (var w in OpenWindows) { if (w != null && w.Playing) { w.Playing = false; w.Close(); } } if (ProfileWindow != null) { ProfileWindow.Open = false; ProfileWindow.Close(); } var login = new LoginWindow(); Application.Current.MainWindow = login; _loggedIn = false; login.Show(); } } }