void UpdateSecretary() { Models.AuthenticatedUser Secretary = (Models.AuthenticatedUser)TaxiDbContext.Instance.Users.Single(d => d.Id == BizObject.Id); Secretary.FullName = BizObject.FullName; Secretary.Mobile = BizObject.Mobile; DialogResult dr = MessageBoxRTL.Ask("آیا مایل به ویرایش کلمه عبور هستید؟", string.Empty); if (dr == DialogResult.OK) { Secretary.Password = EasyHash.Hash(BizObject.Password); } Secretary.Role = Roles.Secretary; Secretary.SecurityQuestion = string.Empty; Secretary.SecurityAnswer = string.Empty; Secretary.TaxiName = TaxiDbContext.Instance.AuthenticatedUsers.Where(u => u.Role == Roles.Admin).First().TaxiName; BizObject.IsDeleted = false; TaxiDbContext.Instance.SaveChanges(); BizObject = null; MessageBoxRTL.Info(".منشی با موفقیت ویرایش شد", string.Empty); UpdateGrid(); }
private void btnRegister_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(txtSecurityQuestion.Text) || string.IsNullOrEmpty(txtSecurityAnswer.Text)) { MessageBoxRTL.Error("وارد کردن سوال امنیتی و پاسخ آن ضروری است", string.Empty); return; } if (!TaxiDbContext.Instance.AuthenticatedUsers.Any()) { AuthenticatedUser user = new AuthenticatedUser() { FullName = txtFullName.Text, Mobile = txtMobile.Text.PersianToEnglish(), Username = txtUsername.Text, Password = EasyHash.Hash(txtPassword.Text), Role = Roles.Admin, SecurityQuestion = txtSecurityQuestion.Text, SecurityAnswer = EasyHash.Hash(txtSecurityAnswer.Text), DateJoined = DateTime.Today }; if (Validation.Validate(user) & Validation.ValidatePassword(txtPassword.Text)) { TaxiDbContext.Instance.AuthenticatedUsers.Add(user); TaxiDbContext.Instance.SaveChanges(); Utility.MessageBoxRTL.Info("ثبت نام مدیر با موفقیت انجام شد.اکنون میتوانید وارد حساب کاربریتان شوید.", "ثبت نام"); this.Hide(); new Login(); Session.RecentlyLogedIn = true; } } }
public void Should_throw_initialization_exception_during_hashing() { EasyHash <Foo> .Register(r => { throw new ApplicationException(); }); Action action = () => new Foo().GetHashCode(); action.ShouldThrow <ApplicationException>(); }
private void btnVerify_Click(object sender, EventArgs e) { if (txtSecurityAnswer.Text != string.Empty) { if (user.SecurityAnswer == EasyHash.Hash(txtSecurityAnswer.Text)) { btnChangePassword.Enabled = true; } } }
private void btnSave_Click(object sender, EventArgs e) { BizObject.TaxiName = TaxiDbContext.Instance.AuthenticatedUsers.Where(u => u.Role == Roles.Admin).First().TaxiName; if (BizObject != null && Validation.Validate(BizObject)) { try { if (BizObject.Id != 0) { UpdateSecretary(); } else if (BizObject.Id == 0) { //avoid repeating Secretary Mobile if (TaxiDbContext.Instance.Users.Any(u => u.Mobile == BizObject.Mobile && u.FullName != BizObject.FullName)) { MessageBoxRTL.Error("شماره همراه قبلا ثبت شده است. لطفا شماره دیگری وارد کنید", string.Empty); return; } if (TaxiDbContext.Instance.Users.Any(u => u.Mobile == BizObject.Mobile && u.FullName == BizObject.FullName)) { DialogResult dr = MessageBoxRTL.Ask("این منشی قبلا ثبت شده است. آیا مایل به ویرایش آن هستید؟", string.Empty); if (dr == DialogResult.OK) { Models.AuthenticatedUser CheckExistingSecretary = TaxiDbContext.Instance.Users .OfType <Models.AuthenticatedUser>().Single(u => u.Mobile == BizObject.Mobile && u.FullName == BizObject.FullName); BizObject = null; BizObject = CheckExistingSecretary; UpdateSecretary(); return; } return; } BizObject.Role = Roles.Secretary; BizObject.TaxiName = TaxiDbContext.Instance.AuthenticatedUsers.Where(u => u.Role == Roles.Admin).First().TaxiName; BizObject.Password = EasyHash.Hash(txtSecretaryPassword.Text); TaxiDbContext.Instance.Users.Add(BizObject); TaxiDbContext.Instance.SaveChanges(); MessageBoxRTL.Info(".منشی با موفقیت افزوده شد", string.Empty); UpdateGrid(); BizObject = null; } } catch { MessageBoxRTL.Error("ذخیره سازی منشی با خطا روبرو شد.", string.Empty); } } }
public void Should_not_allow_register_type_twice() { EasyHash <Foo> .Reset(); EasyHash <Foo> .Register(r => { }); EasyHash <Foo> .Register(r => { }); Action action = () => new Foo().GetHashCode(); action.ShouldThrow <InvalidOperationException>(); }
public void Should_use_custom_hashing_if_registered() { var foo = new Foo(); EasyHash <Foo> .Reset(); int defaultHashCode = foo.GetHashCode(); EasyHash <Foo> .Register(r => r.WithPrimes(23, 31)); int customHashCode = foo.GetHashCode(); defaultHashCode.Should().NotBe(customHashCode); }
public void Should_generate_the_same_code_when_have_the_same_data() { EasyHash <Foo> .Reset(); EasyHash <Foo> .Register(r => { }); var one = new Foo() { Text = "some text" }; var two = one.Clone(); one.GetHashCode().Should().Be(two.GetHashCode()); }
public void Should_generate_different_code_when_have_different_data() { EasyHash <Foo> .Reset(); EasyHash <Foo> .Register(r => { }); var one = new Foo() { Text = "some text" }; var two = new Foo() { Text = "another text" }; one.GetHashCode().Should().NotBe(two.GetHashCode()); }
private void btnChangePassword_Click(object sender, EventArgs e) { if (txtPassword.Text == txtPasswordRepeation.Text && Validation.ValidatePassword(txtPassword.Text)) { user.Password = EasyHash.Hash(txtPassword.Text); try { TaxiDbContext.Instance.AuthenticatedUsers.AddOrUpdate(user); TaxiDbContext.Instance.SaveChanges(); MessageBoxRTL.Info("کلمه عبور شما با موفقیت تغییر یافت.", string.Empty); this.Close(); } catch { MessageBoxRTL.Error("عملیات تغییر کلمه عبور موفقیت آمیز نبود. لطفا مجددا تلاش نمایید.", "خطا"); } } else { MessageBoxRTL.Error("کلمه عبور باید حداقل 8 کاراکتر شامل حداقل یک حرف بزرگ، یک حرف کوچک و یک عدد باشد", "خطا"); } }
public override void btnLogin_Click(object sender, EventArgs e) { if (txtUsername.Text != string.Empty && txtPassword.Text != string.Empty) { string Password = EasyHash.Hash(txtPassword.Text); Session.CurrentUser = TaxiDbContext.Instance.AuthenticatedUsers.FirstOrDefault(au => au.Username == txtUsername.Text && au.Password == Password); if (Session.CurrentUser != null) { MessageBoxRTL.Info(string.Format("کاربر گرامی، {0} خوش آمدید", Session.CurrentUser.Username), ""); Session.RecentlyLogedIn = true; new frmDashboard(); Utility.Session.LoginForm = this; this.Hide(); //checking Role //switch (Session.CurrentUser.Role) //{ // case Roles.Admin: // new ManagerPanel(); // break; // case Roles.Secretary: // new SecretaryPanel(); // break; //} } else { MessageBoxRTL.Info("کاربری با این مشخصات یافت نشد. لطفا از صحت نام کاربری و کلمه عبور خود اطمینان حاصل نمایید", ""); } } else { MessageBoxRTL.Info("نام کاربری و کلمه عبور نمیتواند خالی باشد", ""); } base.btnLogin_Click(sender, e); }
public override bool Equals(object obj) => EasyHash <Foo> .Equals(this, obj);
public void Should_use_default_hashing_if_have_no_registration() { EasyHash <Foo> .Reset(); new Foo().GetHashCode().Should().NotBe(0); }
public override int GetHashCode() => EasyHash <HashedWithEasyHash> .GetHashCode(this);
public void Should_not_throw_during_registration() { Action action = () => EasyHash <Foo> .Register(r => { throw new Exception(); }); action.ShouldNotThrow(); }
public override bool Equals(object obj) => EasyHash <HashedWithEasyHash> .Equals(this, obj);
public override int GetHashCode() => EasyHash <Foo> .GetHashCode(this);