/// <summary> /// Envia los datos del nuevo usuario verificados al servidor para ser registrado. /// </summary> /// <param name="sender">Botón de reistrarse.</param> /// <param name="e">Evento de click.</param> /// <exception cref="System.ServiceModel.EndpointNotFoundException"> /// Arrojada cuando no hay conexión con el servidor. /// </exception> private void Button_Registrarse(object sender, RoutedEventArgs e) { if (!ValidarCampos() || !ValidarFormatoCorreo()) { return; } ServidorJuegoSE.AdministradorCuentaClient cliente = new ServidorJuegoSE.AdministradorCuentaClient(); ServidorJuegoSE.Cuenta cuenta = new ServidorJuegoSE.Cuenta() { Correo = textBox_CorreoElectronico.Text, Contraseña = passwordBox_Contraseña.Password }; ServidorJuegoSE.Jugador jugador = new ServidorJuegoSE.Jugador() { Apodo = textBox_Apodo.Text, Nombre = textBox_NombreUsuario.Text, Apellidos = textBox_Apellidos.Text }; int respuesta; try { respuesta = cliente.RegistrarJugador(jugador, cuenta); if (respuesta == (int)EstadoDeOperacion.OperacionExitosa) { cliente.EnviarCorreo(cuenta); IngresarCodigo ingresarCodigo = new IngresarCodigo(cuenta); ingresarCodigo.Show(); this.Close(); } } catch (System.ServiceModel.EndpointNotFoundException) { MessageBox.Show(Properties.Resources.errorConexionServidor, Properties.Resources.tituloErrorConexion, MessageBoxButton.OK, MessageBoxImage.Error); return; } if (respuesta == (int)EstadoDeOperacion.JugadorEncontrado) { string usuarioRepetido = Properties.Resources.usuarioRepetido; MessageBox.Show(usuarioRepetido); return; } if (respuesta == (int)EstadoDeOperacion.CuentaEncontrada) { string correoRepetido = Properties.Resources.correoRepetido; MessageBox.Show(correoRepetido); return; } if (respuesta == (int)EstadoDeOperacion.ErrorConexionBD || respuesta == (int)EstadoDeOperacion.Excepcion) { MessageBox.Show(Properties.Resources.errorConexionBaseDatos, Properties.Resources.tituloErrorConexion, MessageBoxButton.OK, MessageBoxImage.Error); } }
/// <summary> /// Llama al servidor para iniciar sesión con el correo y la contraseña y abre el menú principal. /// Abre la ventana de ingresar código de activación de cuenta si la cuenta no está activada. /// </summary> /// <param name="sender">Botón de iniciar sesión.</param> /// <param name="e">Evento Click.</param> /// <exception cref="System.ServiceModel.EndpointNotFoundException"> /// Arrojada cuando no hay conexión con el servidor. /// </exception> private void Button_IniciarSesion(object sender, RoutedEventArgs e) { String correoIngresado = textBox_Usuario.Text; String contraseñaIngresada = passwordBox_contraseña.Password; if (!ValidarCamposVacios() || !ValidarFormatoCorreo()) { return; } ServidorJuegoSE.AdministradorCuentaClient cliente = new ServidorJuegoSE.AdministradorCuentaClient(); ServidorJuegoSE.Cuenta cuenta = new ServidorJuegoSE.Cuenta() { Correo = correoIngresado, Contraseña = contraseñaIngresada }; ServidorJuegoSE.Jugador jugador; try { jugador = cliente.IniciarSesion(cuenta); cuenta = cliente.VerificarCuenta(cuenta); } catch (System.ServiceModel.EndpointNotFoundException) { MessageBox.Show(Properties.Resources.errorConexionServidor, Properties.Resources.tituloErrorConexion, MessageBoxButton.OK, MessageBoxImage.Error); return; } if (jugador != null && cuenta != null) { if (cuenta.Correo.Equals(ERRORBD) || jugador.Apodo.Equals(ERRORBD)) { MessageBox.Show(Properties.Resources.errorConexionBaseDatos, Properties.Resources.tituloErrorConexion, MessageBoxButton.OK, MessageBoxImage.Error); return; } if (cuenta.Validada) { MenuPrincipal ventanaPrincipal = new MenuPrincipal(jugador); ventanaPrincipal.Show(); this.Close(); } else { IngresarCodigo ventanaIngresarCodigo = new IngresarCodigo(cuenta); ventanaIngresarCodigo.Show(); this.Close(); } } else { MessageBox.Show(Properties.Resources.usuarioContraseñaInvalidas); } }