示例#1
0
    private static void OnMatchFound(GameServerInfo match, PlayerManagerClient pm)
    {
        print("match found " + match.ip + " " + match.port);
        NetworkClient gameClient = new NetworkClient();

        gameClient.RegisterHandler(MsgType.Connect, x =>
        {
            print("connected to gameServer");
            gameClient.RegisterHandler((short)CustomMessageTypes.ApprovalResponse, netMsg =>
            {
                IntegerMessage msg = netMsg.ReadMessage <IntegerMessage>();
                bool isApproved    = msg.value == 1;
                print("approval status " + isApproved);
                if (!isApproved)
                {
                    gameClient.Disconnect();
                }
                else
                {
                    //Start playing ,
                    //Teel server i'm ready and addPlayerRequest if needed

                    //ClientScene.AddPlayer()
                    // or
                    //ClientScene.Ready();
                }
            });
            gameClient.Send((short)CustomMessageTypes.RequestPlayerApproval, new IntegerMessage(pm.myInfo.gameServerID));
        });
        gameClient.Connect(match.ip, match.port);
    }
示例#2
0
 private void DeleteAccountPlayer(object sender, RoutedEventArgs routedEventArgs)
 {
     try
     {
         InstanceContext     instanceContext = new InstanceContext(this);
         PlayerManagerClient playerManager   = new PlayerManagerClient(instanceContext);
         playerManager.DeleteAccountPlayer(player.NickName);
         bool isDeletePlayer = responseBoolean;
         if (isDeletePlayer)
         {
             OpenMessageBox(Properties.Resources.DeleteAccountMessage, Properties.Resources.DeleteAccountMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Information);
             MainWindow main = new MainWindow();
             main.Show();
             this.Close();
         }
         else
         {
             OpenMessageBox(Properties.Resources.NoDeleteAccountMessage, Properties.Resources.DeleteAccountMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Error);
         }
     } catch (EndpointNotFoundException exception)
     {
         TelegramBot.SendToTelegram(exception);
         LogException.Log(this, exception);
         LogException.ErrorConnectionService();
     }
 }
 private void Send(object sender, RoutedEventArgs eventSend)
 {
     if (ValidatePassword() && ValidateCode())
     {
         try
         {
             InstanceContext     instanceContext = new InstanceContext(this);
             PlayerManagerClient changePassword  = new PlayerManagerClient(instanceContext);
             changePassword.ChangePassword(emailAccount, Security.Encrypt(pbNewPassword.Password));
             if (response)
             {
                 System.Windows.Forms.MessageBox.Show(Properties.Resources.PasswordChangedDetails, Properties.Resources.PasswordChanged
                                                      , MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
             else
             {
                 System.Windows.Forms.MessageBox.Show(Properties.Resources.ErrorDataBaseDetails, Properties.Resources.ErrorDataBase
                                                      , MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         catch (EndpointNotFoundException exception)
         {
             TelegramBot.SendToTelegram(exception);
             LogException.Log(this, exception);
             LogException.ErrorConnectionService();
         }
         MainWindow main = new MainWindow();
         main.Show();
         this.Close();
     }
 }
 private void SendRecoveryCode(object sender, RoutedEventArgs eventSendCode)
 {
     if (ValidateEmail() && SearchEmail())
     {
         try
         {
             InstanceContext     instanceContext = new InstanceContext(this);
             PlayerManagerClient sendCode        = new PlayerManagerClient(instanceContext);
             int code = ValidationData.GenerateConfirmationCode();
             sendCode.SendEmail(tbEmail.Text, code);
             RecoverAccount recover = new RecoverAccount();
             recover.EmailReceived(tbEmail.Text);
             recover.CodeReceived(code);
             recover.Show();
             this.Close();
         }
         catch (EndpointNotFoundException exception)
         {
             TelegramBot.SendToTelegram(exception);
             LogException.Log(this, exception);
             LogException.ErrorConnectionService();
             CloseWindow();
         }
     }
 }
示例#5
0
        //Work in progress
        private void Btn_RegisterNewUser_Click(object sender, RoutedEventArgs e)
        {
            InstanceContext instanceContext = new InstanceContext(this);

            Proxy.PlayerManagerClient client = new PlayerManagerClient(instanceContext);

            Player newPlayer = new Player();

            newPlayer.username  = tb_Username.Text;
            newPlayer.password  = pb_Password.Password;
            newPlayer.name      = tb_Name.Text;
            newPlayer.lastnames = tb_LastName.Text;
            //newPlayer.avatarImage =
            newPlayer.isBanned          = false;
            newPlayer.verificationToken = "";
            newPlayer.isLogged          = false;
            newPlayer.isVerified        = false;
            newPlayer.email             = tb_Email.Text;

            try
            {
                client.RegisterPlayer(newPlayer);
            }
            catch (EndpointNotFoundException exception)
            {
                Console.WriteLine("No se pudo realizar la conexión con el servidor \n" + exception);
                lb_RegistrationError.Content = "Error en la conexión con el servidor";
            }
            catch (TimeoutException exception)
            {
                Console.WriteLine("No se pudo realizar la conexion con el servidor por tiempo \n" + exception);
                lb_RegistrationError.Content = "Error en la conexion con el servidor";
            }
        }
        private bool SearchEmail()
        {
            bool emailExist = false;

            try
            {
                InstanceContext     instanceContext = new InstanceContext(this);
                PlayerManagerClient searchEmail     = new PlayerManagerClient(instanceContext);
                searchEmail.SearchEmailPlayer(tbEmail.Text);
                if (responseCallback)
                {
                    emailExist = true;
                }
                else
                {
                    tbEmail.BorderBrush         = Brushes.Red;
                    tbValidateEmail.BorderBrush = Brushes.Red;
                    System.Windows.Forms.MessageBox.Show(Properties.Resources.EmailNotFoundDetails, Properties.Resources.EmailNotFound
                                                         , MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
            }
            catch (EndpointNotFoundException exception)
            {
                TelegramBot.SendToTelegram(exception);
                LogException.Log(this, exception);
                LogException.ErrorConnectionService();
                CloseWindow();
            }
            return(emailExist);
        }
示例#7
0
 private void LogIn(object sender, RoutedEventArgs eventLog)
 {
     if (ValidateCredential())
     {
         string email    = tbEmail.Text;
         string password = Security.Encrypt(pbPassword.Password);
         try
         {
             InstanceContext     instanceContext = new InstanceContext(this);
             PlayerManagerClient logIn           = new PlayerManagerClient(instanceContext);
             logIn.LogIn(email, password);
             if (responseGeneral)
             {
                 tbEmail.BorderBrush    = Brushes.LightGreen;
                 pbPassword.BorderBrush = Brushes.LightGreen;
                 Lobby lobby = new Lobby();
                 lobby.EmailReceived(email);
                 lobby.ColocateBestScores();
                 lobby.ColocatePersonalInformation();
                 lobby.Show();
                 this.Close();
             }
             else
             {
                 WrongCredentials();
             }
         } catch (EndpointNotFoundException exception)
         {
             TelegramBot.SendToTelegram(exception);
             LogException.Log(this, exception);
             LogException.ErrorConnectionService();
         }
     }
 }
        /// <summary>
        /// Method to send the confirmation code
        /// </summary>
        public void SendConfirmationCodePlayer()
        {
            InstanceContext     instanceContext  = new InstanceContext(this);
            PlayerManagerClient sendConfirmation = new PlayerManagerClient(instanceContext);

            sendConfirmation.SendEmail(account.Email, account.ConfirmationCode);
        }
示例#9
0
        /// <summary>
        /// Crea una solicitud al servidor para terminar sesion de un <c>Jugador</c> y cerrar conexión al servidor
        /// </summary>
        /// <param name="playerNickname"></param>
        /// <exception>
        /// Esta excepcion puede retornar una excepcion tipo EndpointNotFoundException
        /// </exception>
        public static void EndSession(string playerNickname)
        {
            InstanceContext     instanceContext = new InstanceContext(new PlayerCallbackHandler());
            PlayerManagerClient server          = new PlayerManagerClient(instanceContext);

            try
            {
                server.CloseSession(playerNickname);
            }
            catch (EndpointNotFoundException)
            {
                MessageBox.Show("El servidor ya no esta disponible");
            }
        }
示例#10
0
        /// <summary>
        /// Crea una solicitud al servidor para verificar el numero PIN ingresado para habilitar un cambio de contraseña
        /// </summary>
        /// <param name="playerNickname"></param>
        /// <param name="playerPin"></param>
        /// <param name="answerText"></param>
        /// <exception>
        /// Esta excepcion puede retornar una excepcion tipo EndpointNotFoundException
        /// </exception>
        public static void VerifyPin(string playerNickname, string playerPin, string answerText)
        {
            InstanceContext     instanceContext = new InstanceContext(new PlayerCallbackHandler());
            PlayerManagerClient server          = new PlayerManagerClient(instanceContext);

            try
            {
                server.VerifyPin(playerNickname, playerPin, answerText);
            }
            catch (EndpointNotFoundException)
            {
                MessageBox.Show("No se ha podido conectar a la Base de datos, intentar mas tarde");
            }
        }
示例#11
0
        /// <summary>
        /// Crea una solicitud al servidor para verificar un <c>Jugador</c> durante el proceso de registrar una cuenta nueva
        /// </summary>
        /// <param name="jugador"></param>
        /// <exception>
        /// Esta excepcion puede retornar una excepcion tipo EndpointNotFoundException
        /// </exception>
        public static void VerifyPlayer(Jugador jugador)
        {
            InstanceContext     instanceContext = new InstanceContext(new PlayerCallbackHandler());
            PlayerManagerClient server          = new PlayerManagerClient(instanceContext);

            try
            {
                server.VerifyPlayer(jugador);
            }
            catch (EndpointNotFoundException)
            {
                MessageBox.Show("No se ha podido conectar a la Base de datos, intentar mas tarde");
            }
        }
        private void AcceptCodeConfirmation(object sender, RoutedEventArgs routedEventArgs)
        {
            imgErrorCodeConfirmation.Visibility = Visibility.Hidden;
            tbConfirmationCode.BorderBrush      = Brushes.Transparent;
            bool isValidConfirmationCode;

            isValidConfirmationCode = ValidationData.ValidateConfirmationCode(tbConfirmationCode.Text);
            if (isValidConfirmationCode)
            {
                bool isEqualConfirmationCode = ValidateEqualsConfirmationCode();
                if (isEqualConfirmationCode)
                {
                    tbConfirmationCode.BorderBrush = Brushes.Green;
                    try
                    {
                        InstanceContext     instanceContext = new InstanceContext(this);
                        PlayerManagerClient registry        = new PlayerManagerClient(instanceContext);
                        registry.Register(account, accountPlayer);
                        if (responseConfirmation)
                        {
                            OpenMessageBox(Properties.Resources.AccountRegistrationMessage, Properties.Resources.AccountRegistrationMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Information);
                        }
                        else
                        {
                            OpenMessageBox(Properties.Resources.NoAccountRegisteredMessage, Properties.Resources.AccountRegistrationMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Error);
                        }
                    }
                    catch (EndpointNotFoundException exception)
                    {
                        TelegramBot.SendToTelegram(exception);
                        LogException.Log(this, exception);
                        LogException.ErrorConnectionService();
                    }
                    MainWindow mainWindow = new MainWindow();
                    mainWindow.Show();
                    this.Close();
                }
                else
                {
                    tbConfirmationCode.BorderBrush = Brushes.Red;
                    OpenMessageBox(Properties.Resources.ErrorEqualConfirmationCodeMessage, Properties.Resources.IncorrectCodeMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Warning);
                }
            }
            else
            {
                tbConfirmationCode.BorderBrush      = Brushes.Red;
                imgErrorCodeConfirmation.Visibility = Visibility.Visible;
                OpenMessageBox(Properties.Resources.IncorrectCodeMessage, Properties.Resources.IncorrectCodeMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Warning);
            }
        }
示例#13
0
        /// <summary>
        /// Crea una solicitud al servidor para enviar un correo con codigo de verificacion PIN para cambiar contraseña
        /// de un <c>Jugador</c>
        /// </summary>
        /// <param name="playerNickname"></param>
        /// <exception>
        /// Esta excepcion puede retornar una excepcion tipo EndpointNotFoundException
        /// </exception>
        public static void ObtainMailPassword(string playerNickname)
        {
            InstanceContext     instanceContext = new InstanceContext(new PlayerCallbackHandler());
            PlayerManagerClient server          = new PlayerManagerClient(instanceContext);

            try
            {
                server.PasswordForgotMail(playerNickname);
            }
            catch (EndpointNotFoundException)
            {
                MessageBox.Show("No se ha podido conectar a la Base de datos, intentar mas tarde");
            }
        }
示例#14
0
        public void GetMailResult_ReturnSendError_MailResult()
        {
            try
            {
                var baseAddress = new Uri("net.tcp://*****:*****@gmail.com",
                    PinConfirmacion       = "1234",
                    PreguntaRecuperacion  = "testquestion?",
                    RespuestaConfirmacion = "testanswer",
                    IdCreador             = 1,
                    IdLenguaje            = 1,
                    Status                = "No Verificado"
                };

                playerClient.SendMail(testPlayer);
                PlayerCallbackHandler playerHandler = new PlayerCallbackHandler();
                MailResult            result        = playerHandler.mailResult;

                Assert.AreEqual(result, MailResult.SendError);
            }
            catch (EndpointNotFoundException)
            {
                playerClient.Abort();
            }
            catch (CommunicationException)
            {
                playerClient.Abort();
            }
        }
示例#15
0
        /// <summary>
        /// Crea una solicitud al servidor para actualizar la contraseña asociada a un <c>Jugador</c>
        /// </summary>
        /// <param name="player"></param>
        /// <exception>
        /// Esta excepcion puede retornar una excepcion tipo EndpointNotFoundException
        /// </exception>
        public static void ChangePassword(Jugador player)
        {
            InstanceContext     instanceContext = new InstanceContext(new PlayerCallbackHandler());
            PlayerManagerClient server          = new PlayerManagerClient(instanceContext);

            try
            {
                server.ChangePassword(player.Apodo, player.Contrasenia);
            }
            catch (EndpointNotFoundException)
            {
                MessageBox.Show("No se ha podido conectar a la Base de datos, intentar mas tarde");
            }
        }
示例#16
0
 private void ChangeAccountPassword(object sender, RoutedEventArgs routedEventArgs)
 {
     imgErrorConfirmationPassword.Visibility = Visibility.Hidden;
     imgErrorCurrentPassword.Visibility      = Visibility.Hidden;
     imgErrorNewPassword.Visibility          = Visibility.Hidden;
     pbConfirmationPassword.BorderBrush      = Brushes.Transparent;
     pbPassword.BorderBrush    = Brushes.Transparent;
     pbNewPassword.BorderBrush = Brushes.Transparent;
     isValidNewPassword        = false;
     ValidatePassword();
     ValidateNewPassword();
     if (isValidPassword && isValidNewPassword)
     {
         string passwordEncrypt = Security.Encrypt(pbNewPassword.Password);
         try
         {
             InstanceContext     instanceContext = new InstanceContext(this);
             PlayerManagerClient playerManager   = new PlayerManagerClient(instanceContext);
             playerManager.ChangePassword(account.Email, passwordEncrypt);
             if (responseBoolean)
             {
                 OpenMessageBox(Properties.Resources.ChangePasswordMessage, Properties.Resources.ChangePasswordMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Information);
             }
             else
             {
                 OpenMessageBox(Properties.Resources.NoChangePasswordMessage, Properties.Resources.ChangePasswordMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Error);
             }
             ModifyAccount modifyAccount = new ModifyAccount();
             modifyAccount.ObtainAccount();
             modifyAccount.Show();
             this.Close();
         } catch (EndpointNotFoundException exception)
         {
             TelegramBot.SendToTelegram(exception);
             LogException.Log(this, exception);
             LogException.ErrorConnectionService();
         }
     }
     else
     {
         OpenMessageBox(Properties.Resources.IncorrectDataMessage, Properties.Resources.IncorrectDataMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Warning);
     }
 }
示例#17
0
        public void SendActualPlayer_ReturnErrorObtainingData_DataObtainedResult()
        {
            try
            {
                var baseAddress = new Uri("net.tcp://localhost:8090/Contratos");
                serviceHost = new ServiceHost(typeof(Contratos.MainService), baseAddress);
                System.ServiceModel.Channels.Binding binding = new NetTcpBinding();
                var address  = new EndpointAddress("net.tcp://localhost:8090/ServerTests");
                var endpoint = serviceHost
                               .AddServiceEndpoint(typeof(Contratos.IPlayerManager), binding, address.Uri);

                var smb = new ServiceMetadataBehavior {
                    HttpGetEnabled = false
                };
                serviceHost.Description.Behaviors.Add(smb);
                InstanceContext instanceContext = new InstanceContext(new PlayerCallbackHandler());
                playerClient  = new PlayerManagerClient(instanceContext);
                endpoint.Name = playerClient.Endpoint.Name;

                serviceHost.Open();
                serviceHost.Close();

                Jugador testPlayer = new Jugador
                {
                    Apodo       = "savetestplayer",
                    Contrasenia = "password123",
                };

                playerClient.GetActualPlayer(testPlayer);
                PlayerCallbackHandler playerHandler = new PlayerCallbackHandler();
                DataObtainedResult    result        = playerHandler.dataObtainedResult;

                Assert.AreEqual(result, DataObtainedResult.ErrorObtainingData);
            }
            catch (EndpointNotFoundException)
            {
                playerClient.Abort();
            }
            catch (CommunicationException)
            {
                playerClient.Abort();
            }
        }
示例#18
0
        public void GetLoginResult_ReturnLOGGEDPLAYER_LoginResult()
        {
            try
            {
                var baseAddress = new Uri("net.tcp://localhost:8090/Contratos");
                serviceHost = new ServiceHost(typeof(Contratos.MainService), baseAddress);
                System.ServiceModel.Channels.Binding binding = new NetTcpBinding();
                var address  = new EndpointAddress("net.tcp://localhost:8090/ServerTests");
                var endpoint = serviceHost
                               .AddServiceEndpoint(typeof(Contratos.IPlayerManager), binding, address.Uri);

                var smb = new ServiceMetadataBehavior {
                    HttpGetEnabled = false
                };
                serviceHost.Description.Behaviors.Add(smb);
                InstanceContext instanceContext = new InstanceContext(new PlayerCallbackHandler());
                playerClient  = new PlayerManagerClient(instanceContext);
                endpoint.Name = playerClient.Endpoint.Name;

                serviceHost.Open();

                Jugador testPlayer = new Jugador
                {
                    Apodo       = "pklove3456",
                    Contrasenia = "bobcholo1"
                };

                playerClient.Login(testPlayer);
                playerClient.Login(testPlayer);
                PlayerCallbackHandler playerHandler = new PlayerCallbackHandler();
                LoginResult           result        = playerHandler.loginResult;

                Assert.AreEqual(result, LoginResult.LOGGED_PLAYER);
            }
            catch (EndpointNotFoundException)
            {
                playerClient.Abort();
            }
            catch (CommunicationException)
            {
                playerClient.Abort();
            }
        }
示例#19
0
        private void RegisterPlayer(object sender, RoutedEventArgs routedEventArgs)
        {
            bool isValidData = ValidateDataPlaye();

            if (isValidData)
            {
                string name             = tbName.Text;
                string lastName         = tbLastName.Text;
                string nickname         = tbNickname.Text;
                string email            = tbEmail.Text;
                string password         = Security.Encrypt(pbPassword.Password);
                int    codeConfirmation = ValidationData.GenerateConfirmationCode();

                ServiceAccount account = new ServiceAccount();
                account.PasswordAccount  = password;
                account.Email            = email;
                account.ConfirmationCode = codeConfirmation;

                ServicePlayer accountPlayer = new ServicePlayer();
                accountPlayer.NickName      = nickname;
                accountPlayer.NamePlayer    = ValidationData.DeleteSpaceWord(name);
                accountPlayer.LastName      = ValidationData.DeleteSpaceWord(lastName);
                accountPlayer.StatusPlayer  = "Active";
                accountPlayer.ScoreObtained = 0;

                try {
                    InstanceContext     instanceContext = new InstanceContext(this);
                    PlayerManagerClient validatePlayer  = new PlayerManagerClient(instanceContext);
                    validatePlayer.SearchNicknamePlayer(nickname);
                    bool isValidRepeatNickname = responseBoolean;
                    validatePlayer.SearchEmailPlayer(email);
                    bool isValidRepeatEmail = responseBoolean;

                    if (isValidRepeatEmail && isValidRepeatNickname)
                    {
                        OpenMessageBox(Properties.Resources.RegisteredEmailNicknameMessage, Properties.Resources.RepeatedDataMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Warning);
                    }
                    else
                    {
                        if (isValidRepeatEmail)
                        {
                            OpenMessageBox(Properties.Resources.RegisteredEmailMessage, Properties.Resources.RepeatedDataMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Warning);
                        }
                        else
                        {
                            if (isValidRepeatNickname)
                            {
                                OpenMessageBox(Properties.Resources.RegisteredNicknameMessage, Properties.Resources.RepeatedDataMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Warning);
                            }
                            else
                            {
                                EmailConfirmation emailConfirmation = new EmailConfirmation();
                                emailConfirmation.AccountReceived(account);
                                emailConfirmation.PlayerReceived(accountPlayer);
                                emailConfirmation.SendConfirmationCodePlayer();
                                emailConfirmation.Show();
                                this.Close();
                            }
                        }
                    }
                }
                catch (EndpointNotFoundException exception)
                {
                    TelegramBot.SendToTelegram(exception);
                    LogException.Log(this, exception);
                    LogException.ErrorConnectionService();
                }
            }
            else
            {
                OpenMessageBox(Properties.Resources.IncorrectDataMessage, Properties.Resources.IncorrectDataMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Warning);
            }
        }
示例#20
0
 private void Modify(object sender, RoutedEventArgs routedEventArgs)
 {
     playerEdit = new ServicePlayer();
     emailEdit  = account.Email;
     ValidateDataAccount();
     if (isUpdateData || !emailEdit.Equals(emailAccount))
     {
         if (isValidData)
         {
             try {
                 InstanceContext     instanceContext = new InstanceContext(this);
                 PlayerManagerClient playerManager   = new PlayerManagerClient(instanceContext);
                 bool isValidRepeatEmail             = false;
                 if (isUpdateEmail)
                 {
                     playerManager.SearchRepeatEmailAccount(emailEdit, account.IdAccount);
                     isValidRepeatEmail = responseBoolean;
                 }
                 bool updateEmail = false;
                 if (isUpdateEmail && !isValidRepeatEmail)
                 {
                     playerManager.UpdateEmail(emailEdit, account.IdAccount);
                     updateEmail = responseBoolean;
                 }
                 bool updatePlayer = false;
                 if (isUpdateData)
                 {
                     playerManager.UpdatePlayer(player.NickName, playerEdit);
                     updatePlayer = responseBoolean;
                 }
                 if (updatePlayer || updateEmail)
                 {
                     OpenMessageBox(Properties.Resources.ModifyAccountMessage, Properties.Resources.ModifyAccountMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Information);
                 }
                 else
                 {
                     OpenMessageBox(Properties.Resources.NoModifyAccountMessage, Properties.Resources.ModifyAccountMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Error);
                 }
                 Lobby lobby = new Lobby();
                 if (isUpdateEmail)
                 {
                     lobby.EmailReceived(emailEdit);
                 }
                 lobby.ColocateBestScores();
                 lobby.ColocatePersonalInformation();
                 lobby.Show();
                 this.Close();
             }
             catch (EndpointNotFoundException exception)
             {
                 TelegramBot.SendToTelegram(exception);
                 LogException.Log(this, exception);
                 LogException.ErrorConnectionService();
             }
         }
         else
         {
             OpenMessageBox(Properties.Resources.IncorrectDataMessage, Properties.Resources.IncorrectCodeMessageTitle, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Warning);
             isUpdateData = false;
         }
     }
     else
     {
         OpenMessageBox(Properties.Resources.ModifyLeastDataMessage, Properties.Resources.ModifyLeastDataMessageTile, (MessageBoxImage)System.Windows.Forms.MessageBoxIcon.Warning);
     }
 }