using PersonalFinance; using PersonalFinanceWindow.ViewModel; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; namespace PersonalFinanceWindow { /// /// Interaction logic for Login.xaml /// public partial class Login : Window { private int defaultUser = 1; public Login() { InitializeComponent(); } private void Button_Click(object sender, RoutedEventArgs e) { // Write code here to authenticate user // If authenticated, then set DialogResult=true if (password.Password.Equals(login.Text)){ UserViewModel uvm = new UserViewModel(); User u = uvm.Users.FirstOrDefault(i => i.Login == login.Text); if (u != null) { UserViewModel.loggedUserId = u.UserId; UserViewModel.loggedUser = u; DialogResult = true; } else { MessageBox.Show(this, "Bad login"); } } else{ MessageBox.Show(this, "Bad login"); DialogResult = false; } } private void ExitButton_Click(object sender, RoutedEventArgs e) { DialogResult = false; } private void Window_KeyUp(object sender, KeyEventArgs e) { //sign in if (e.Key == Key.Return) { Button_Click(sender, e); } //exit if (e.Key == Key.Escape) { DialogResult = false; } //help if (e.Key == Key.F1) { MessageBox.Show("Put your 'login name' and your secret 'password' into a form\nand then click on 'Sign in' button.\nOr click on 'Exit' button to exiting the program.", "Help", MessageBoxButton.OK, MessageBoxImage.Information); } //auto sign in - only for testing purpose (Ctrl + Shift + F12 or just F12) if ((e.Key == Key.F12 && (Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl)) && (Keyboard.IsKeyDown(Key.LeftShift) || Keyboard.IsKeyDown(Key.RightShift))) || (e.Key == Key.F12) || (e.Key == Key.F2) /*Only laziness*/) { UserViewModel uvm = new UserViewModel(); UserViewModel.loggedUserId = defaultUser; UserViewModel.loggedUser = uvm.Users.FirstOrDefault(i => i.UserId == defaultUser); DialogResult = true; } } } }