using System; using System.Threading; using System.Windows.Forms; using Tanshu.Accounts.Repository; using Tanshu.Accounts.Helpers; using Tanshu.Common.KeyboardControl; namespace Tanshu.Accounts.PointOfSale { public partial class LoginForm : Form { //size: 296, 123 //private static readonly Tanshu.Logging.SqlLogger log = new Tanshu.Logging.SqlLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); private bool isAuthenticated; private string userName; private IKeyboardControl keyboardControl; public LoginForm(IKeyboardControl keyboardControl) { InitializeComponent(); isAuthenticated = false; userName = null; this.keyboardControl = keyboardControl; var control = keyboardControl as UserControl; if (control != null) { control.Location = new System.Drawing.Point(6, 87); var border = (this.Width - this.ClientSize.Width) / 2; var titlebarHeight = this.Height - this.ClientSize.Height - (2 * border); this.Controls.Add(control); this.Width = 6 + control.Width + 6 + (border * 2); this.Height = titlebarHeight + 87 + control.Height + 6 + (border * 2); } } private void txtUserName_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Return) txtPassword.Focus(); } private void txtPassword_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Return) btnLogin_Click(sender, e); } private void btnLogin_Click(object sender, EventArgs e) { userName = txtUserName.Text.Trim(); isAuthenticated = UserBI.ValidateUser(userName, Tanshu.Common.Md5.Hash(txtPassword.Text, "v2")); if (isAuthenticated) { this.Close(); } else MessageBox.Show("Username or password is not valid"); } public bool UserName(out string userName) { userName = this.userName; return isAuthenticated; } private void btnExit_Click(object sender, EventArgs e) { this.Close(); } } }