// The id parameter should match the DataKeyNames value set on the control
        // or be decorated with a value provider attribute, e.g. [QueryString]int id

        protected void EnterNewPass_Click(object sender, EventArgs e)
        {
            IQueryable <User> user = _db.Users;
            var new_user           = user.SingleOrDefault(u => u.UserName == forgotEmail.Text);

            if (!string.IsNullOrEmpty(forgotEmail.Text) && new_user != null)
            {
                string pass   = new Encryptions().EncryptPassword(forgotPass.Text);
                string repass = new Encryptions().EncryptPassword(forgotRepass.Text);
                if (pass == repass)
                {
                    AddUser(ref new_user, ref repass);
                    _db.SaveChanges();
                    new_user = _db.Users.SingleOrDefault(u => u.UserName == forgotEmail.Text &&
                                                         u.Password == repass);
                    Session["Id"]       = new_user.UserId;
                    Session["Username"] = new_user.UserName;
                    Session["Password"] = new_user.Password;
                    Session["Name"]     = new_user.Name;
                    Session["Lastname"] = new_user.LastName;
                    Session["Position"] = _db.Positions.SingleOrDefault(p => p.PositionID == new_user.PositionID).PositionName;
                    Session["Login"]    = "******";
                    Response.Redirect("/Default.aspx");
                }
                else
                {
                    forgotRepasstxt.Text = "Password does not match!";
                }
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, GetType(), "emailNotExist", "emailNotExist()", true);
            }
        }
예제 #2
0
        //A-Z - 65-90
        //a-z - 97-122
        //A-Я - 1040-1071 Ё in 1025 position
        //а-я - 1072-1103 same for ё
        //English alphabet - 26
        //Russian alphabet - 33, but letter Ё in 1025 position

        static Encryption()
        {
            CurrentEncryption = Encryptions.Caesar;
            CaesarStrength    = 1;
            EnglishLetters    = "abcdefghijklmnopqrstuvwxyz";
            RussianLetters    = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
        }
예제 #3
0
        protected void BuAddData_Click(object sender, EventArgs e)
        {
            DataTable dataTable = new DataTable();

            dataTable = DBop.cobject.SelectDataSet("MyStudents", "StudentID", "StudentEmail like '" + txtEmail.Text + "'  and IsActive=1").Tables[0];
            if ((dataTable != null) && (dataTable.Rows.Count > 0))
            {
                Encryptions Myenc    = new Encryptions(); // encript password
                string      PassCode = Myenc.GetMD5Data(Encoding.Default.GetBytes(Convert.ToString(dataTable.Rows[0]["StudentID"]) + StringGeneration.getString(30)));

                ColoumnParam[] Coloumns = new ColoumnParam[3];
                Coloumns[0] = new ColoumnParam("PersonID", ColoumnType.Int, Convert.ToString(dataTable.Rows[0]["StudentID"]));
                Coloumns[1] = new ColoumnParam("PassCode", ColoumnType.Char1, PassCode);
                Coloumns[2] = new ColoumnParam("DateIn", ColoumnType.DateTime, DateTime.Now.ToString());

                if (DBop.cobject.InsertRow("PeoplePassCode", Coloumns))
                {
                    Contacting sendwelcome = new Contacting();

                    string subject = "Ask for password";
                    string body    = "Dear  ,";
                    body = body + "\n Recently you asked for your password please click the link bellow to complete your request";
                    body = body + "\n   please login here<a href=' http://www.alrubaye.com/ForgetPassWord.aspx?id=" + PassCode.Trim() + "'> Link </a> and change this password as soon as you login on \n";
                    sendwelcome.SendWelcome(txtEmail.Text, subject, body);
                }
            }

            theDiv.Visible = true;
        }
        public async Task <UserDto> Login(string user, string password)
        {
            var pEncrypted = Encryptions.EncryptString(EncryptionConstants.Key, password);

            var userModel = await _authenticationRepository.GetUser(user, pEncrypted);

            if (userModel == null)
            {
                return(null);
            }
            userModel.IsLoggedIn  = true;
            userModel.UpdatedDate = DateTime.Now;

            _repositoryWrapper.User.Updete(userModel);

            await _repositoryWrapper.SaveAsync();

            var result = _mapper.Map <UserDto>(userModel);

            result.UserType = userModel.UserTypeId == 1 ? "Owner" : "Customer";

            result.Password = password;

            return(result);
        }
        public async Task <bool> CheckIsLoggedIn(string user, string password)
        {
            var pEncrypted = Encryptions.EncryptString(EncryptionConstants.Key, password);
            var userModel  = await _authenticationRepository.GetUser(user, pEncrypted);

            if (userModel == null || userModel.IsLoggedIn.Value == false)
            {
                return(false);
            }
            return(true);
        }
예제 #6
0
        public async Task <bool> Login(string emailrequest, string passwordrequest)
        {
            var user = await _userRepository.GetPasswordByEmail(emailrequest);

            var password = Encryptions.DecryptString(EncryptionConstants.Key, user.Password);

            if (passwordrequest != password)
            {
                return(false);
            }
            return(true);
        }
예제 #7
0
        public async Task <bool> CreateUser(UserRequest requestDto)
        {
            try
            {
                var userModel = _mapper.Map <UserModel>(requestDto);
                userModel.CreatedDate = DateTime.Now;
                userModel.UpdatedDate = DateTime.Now;
                userModel.IsLoggedIn  = false;
                var encryptedString = Encryptions.EncryptString(EncryptionConstants.Key, userModel.Password);
                userModel.Password = encryptedString;
                await _repositoryWrapper.User.CreateAsync(userModel);

                await _repositoryWrapper.SaveAsync();

                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
예제 #8
0
        protected void SubmitLogin_Click(object sender, EventArgs e)
        {
            var    new_user = _db.Users.SingleOrDefault(u => u.UserName == UserEmail.Text);
            string pass     = new Encryptions().EncryptPassword(UserPassword.Text);

            if (new_user != null && new_user.Password.ToString() == pass)
            {
                Session["Id"]       = new_user.UserId;
                Session["Username"] = new_user.UserName;
                Session["Password"] = new_user.Password;
                Session["Name"]     = new_user.Name;
                Session["Lastname"] = new_user.LastName;
                Session["Position"] = _db.Positions.SingleOrDefault(p => p.PositionID == new_user.PositionID).PositionName;
                Session["Login"]    = "******";
                Page.Response.Redirect("~/Default.aspx");
            }
            else if (pass != new_user.Password.ToString())
            {
                ScriptManager.RegisterStartupScript(this, GetType(), "LoginFail", "LoginFail()", true);
                //Response.Write(new Encryptions().EncryptPassword(UserPassword.Text));
            }
        }
        protected void Register_Click(object sender, EventArgs e)
        {
            CpDashboardContext context = new CpDashboardContext();

            string reg_pass   = new Encryptions().EncryptPassword(RegisterPass.Text);
            string reg_repass = new Encryptions().EncryptPassword(RegisterRepass.Text);

            if (reg_pass == reg_repass)
            {
                //singleordefault can only return to var
                var query = context.Users.SingleOrDefault(q => q.UserName == RegisterEm.Text);

                if (query == null)
                {
                    context.Users.Add(InsertUser(RegisterFn.Text, RegisterLn.Text, RegisterEm.Text, reg_repass));
                    context.SaveChanges();

                    query = context.Users.SingleOrDefault(u => u.UserName == RegisterEm.Text);

                    Session["Id"]       = query.UserId;
                    Session["Username"] = query.UserName;
                    Session["Password"] = query.Password;
                    Session["Name"]     = query.Name;
                    Session["Lastname"] = query.LastName;
                    Session["Position"] = context.Positions.SingleOrDefault(p => p.PositionID == query.PositionID).PositionName;
                    Session["Login"]    = "******";
                    Response.Redirect("~/Default.aspx");
                }
                else
                {
                    LabelEm.Text = "Email already Exist!!";
                }
            }
            else
            {
                LabelPass.Text = "Your password is not match!!";
            }
        }
예제 #10
0
        public async Task <bool> ChangePassword(int id, ChangePasswordRequest request)
        {
            try
            {
                var user = await _userRepository.GetUserById(id);

                await _repositoryWrapper.BeginTransactionAsync();

                var Encrypassword = Encryptions.DecryptString(EncryptionConstants.Key, user.Password);

                if (Encrypassword == request.OldPassword)
                {
                    var encryptPassword = Encryptions.EncryptString(EncryptionConstants.Key, request.NewPassword);

                    user.Password = encryptPassword;
                }
                else
                {
                    return(false);
                }
                _repositoryWrapper.User.Updete(user);

                await _repositoryWrapper.SaveAsync();

                await _repositoryWrapper.CommitAsync();

                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                _repositoryWrapper.Dispose();
            }
        }