public MainMenu() { InitializeComponent(); Current = this; // si se deben mostrar las notas a notificar if (App.Notificar) { // Comprobar si hay notas a notificar var colNotificar = NotaSQL.Buscar(UsuarioSQL.UsuarioLogin.ID, "Notificar = 1 AND Eliminada = 0"); if (colNotificar.Count() != 0) { // Mostrar la ventana de las notas marcadas para notificar Navigation.PushAsync(new NotasMostrar(NotasDatosMostrar.Notificar)); } } MyMenu(); }
async private void ContentPage_Appearing(object sender, EventArgs e) { LabelStatus.Text = App.StatusInfo; if (UsuarioSQL.UsuarioLogin is null || UsuarioSQL.UsuarioLogin.ID == 0 || UsuarioSQL.UsuarioLogin.Email == "prueba") { await Navigation.PushAsync(new Login(this)); return; } var sDatos = "archivada"; switch (DatosMostrar) { case NotasDatosMostrar.Archivadas: sDatos = "archivada"; // Solo las notas archivadas y no eliminadas if (App.UsarNotasLocal) { colNotas = App.Database.NotasArchivadas(); } else { colNotas = NotaSQL.NotasUsuario(UsuarioSQL.UsuarioLogin.ID, archivadas: true); } break; case NotasDatosMostrar.Eliminadas: sDatos = "eliminada"; // Solo las notas eliminadas if (App.UsarNotasLocal) { colNotas = App.Database.NotasEliminadas(); } else { colNotas = NotaSQL.NotasUsuario(UsuarioSQL.UsuarioLogin.ID, eliminadas: true); } break; case NotasDatosMostrar.Favoritas: sDatos = "favorita"; // Solo las notas favoritas if (App.UsarNotasLocal) { colNotas = App.Database.NotasFavoritas(); } else { colNotas = NotaSQL.NotasFavoritas(UsuarioSQL.UsuarioLogin.ID); } break; case NotasDatosMostrar.Notificar: sDatos = "a notificar."; // Las notas a notificar que no estén eliminadas if (App.UsarNotasLocal) { colNotas = App.Database.NotasNotificar(); } else { colNotas = NotaSQL.Buscar(UsuarioSQL.UsuarioLogin.ID, "Notificar = 1 AND Eliminada = 0"); } break; case NotasDatosMostrar.Local: sDatos = "de la base local."; colNotas = App.Database.NotasTodas(); break; default: break; } listView.ItemsSource = colNotas; var plural = colNotas.Count() == 1 ? "" : "s"; var plural2 = plural + "."; if (sDatos.EndsWith(".")) { plural2 = ""; } //LabelInfo.Text = $"{UsuarioSQL.UsuarioLogin.Email} con {colNotas.Count()} nota{plural} archivada{plural}."; LabelInfo.Text = $"{UsuarioSQL.UsuarioLogin.Email} con {colNotas.Count()} nota{plural} {sDatos}{plural2}"; }
async private void btnAcceder_Clicked(object sender, EventArgs e) { LabelInfo.IsVisible = false; //App.UsarNotasMaxConfig = false; if (UsuarioSQL.ComprobarContraseña(email.Text, password.Text)) { // Guardar el último usuario que accede App.UltimoUsuario = UsuarioSQL.UsuarioLogin.Email; App.UltimoPassword = UsuarioSQL.UsuarioLogin.Password; // Usar las opciones indicadas (26/May/21) App.RecordarPassword = chkRecordarPassword.IsToggled; App.RecordarUsuario = chkRecordarUsuario.IsToggled; // si es el usuario de prueba, no hacer nada. if (UsuarioSQL.UsuarioLogin.Email.ToLower() == "prueba") { LabelInfo.Text = "Has indicado el usuario de prueba. " + "Te recuerdo que estas notas estarán visibles a todos los que entren con estas credenciales."; LabelInfo.IsVisible = true; return; } // Avisar si no está validado if (!UsuarioSQL.UsuarioLogin.Validado) { await App.CodigoValidación(UsuarioSQL.UsuarioLogin.Email); var minutos = 60 - DateTime.UtcNow.Minute; string plural = (minutos == 1) ? "" : "s"; LabelInfo.Text = "Aún no has validado tu email. " + "Te he enviado un correo con el código de validación. " + $"Úsalo en la página de validar antes de {minutos} minuto{plural}. Gracias."; LabelInfo.IsVisible = true; } else { // Guardar los datos de último acceso, etc. UsuarioSQL.UsuarioLogin.UltimoAcceso = DateTime.UtcNow; UsuarioSQL.UsuarioLogin.VersionPrograma = $"{App.AppName} {App.AppVersion}"; // Por si accede después de usar el usuario local (23/May/21) App.UsarNotasLocal = false; UsuarioSQL.GuardarUsuario(UsuarioSQL.UsuarioLogin); // si se deben mostrar las notas a notificar if (App.Notificar) { // Comprobar si hay notas a notificar var colNotificar = NotaSQL.Buscar(UsuarioSQL.UsuarioLogin.ID, "Notificar = 1 AND Eliminada = 0"); if (colNotificar.Count() == 0) { App.GuardarConfig(); VolverAMain(); return; } // Mostrar la ventana de las notas marcadas para notificar await Navigation.PushAsync(new NotasMostrar(NotasDatosMostrar.Notificar)); //return; } } App.GuardarConfig(); VolverAMain(); } else { LabelInfo.Text = "El usuario y/o el password no son correctos."; LabelInfo.IsVisible = true; email.Focus(); return; } }