public ActionResult Delete(string id)
        {
            AccountAccessLayer accountAccessLayer = new AccountAccessLayer();
            int result = accountAccessLayer.DeleteData(id);

            TempData["DeleteResult"] = result;
            ModelState.Clear();

            return(RedirectToAction("ShowAllAccounts"));
        }
        public ActionResult ShowAllAccounts()
        {
            Account            account            = new Account();
            AccountAccessLayer accountAccessLayer = new AccountAccessLayer();

            account.listAccount = accountAccessLayer.Selectalldata();
            account.account     = (Account)Session["account"];

            return(View(account));
        }
        public ActionResult updatePassword(Account account, FormCollection form)
        {
            if (ModelState.IsValid)
            {
                AccountAccessLayer accountAccessLayer = new AccountAccessLayer();
                string             oldpassword        = form["oldpassword"];
                string             newpasswordAgain   = form["newpasswordagain"];
                string             newpassword        = form["newpassword"];
                if (oldpassword == "" || newpasswordAgain == "" || newpassword == "")
                {
                    ModelState.AddModelError("", "oldpassword, new password again or new password is null");

                    return(View(account));
                }
                else
                {
                    if (account.PassWord == oldpassword && newpasswordAgain == newpassword)
                    {
                        Account updatedAccount = new Account
                        {
                            Id       = account.Id,
                            Name     = account.Name,
                            PassWord = newpassword,
                            Role     = account.Role
                        };
                        string result = accountAccessLayer.Updatedata(updatedAccount);
                        TempData["UpdateResult"] = result;
                        ModelState.Clear();

                        return(RedirectToAction("ShowAllAccounts"));
                    }
                    else if (account.PassWord != oldpassword)
                    {
                        ModelState.AddModelError("", "your oldpassword is false");

                        return(View(account));
                    }
                    else if (newpasswordAgain != newpassword)
                    {
                        ModelState.AddModelError("", "your newpasswordagain is not equal to newpassword");

                        return(View(account));
                    }
                    return(View(account));
                }
            }
            else
            {
                ModelState.AddModelError("", "Error in updating data");

                return(View());
            }
        }
        public ActionResult editAccount(Account account, FormCollection form)
        {
            if (ModelState.IsValid)
            {
                AccountAccessLayer accountAccessLayer = new AccountAccessLayer();
                string             password           = form["oldpassword"];
                int id = account.Id;
                if (password == "")
                {
                    ModelState.AddModelError("", "Your password is null");

                    return(View(account));
                }
                else
                {
                    if (password == account.PassWord)
                    {
                        Account updatedAccount = new Account
                        {
                            Id       = account.Id,
                            Name     = account.Name,
                            PassWord = password,
                            Role     = account.Role
                        };
                        string result = accountAccessLayer.Updatedata(updatedAccount);
                        TempData["UpdateResult"] = result;
                        ModelState.Clear();

                        return(RedirectToAction("ShowAllAccounts"));
                    }
                    else
                    {
                        ModelState.AddModelError("", "Your password is not true");

                        return(View(account));
                    }
                }
            }
            else
            {
                ModelState.AddModelError("", "Error in updating data");

                return(View(account));
            }
        }
        public ActionResult Login(Account objAccount)
        {
            if (ModelState.IsValid)
            {
                AccountAccessLayer accountAccessLayer = new AccountAccessLayer();
                List <Account>     listAccount        = accountAccessLayer.Selectalldata();
                Account            obj = listAccount.Where(a => a.Name.Equals(objAccount.Name) && a.PassWord.Equals(objAccount.PassWord)).FirstOrDefault();
                if (obj != null)
                {
                    Session["account"] = obj;
                    return(RedirectToAction("ShowAllAccounts", "Account"));
                }
                else
                {
                    ModelState.AddModelError("", "Accountname or password is wrong");

                    return(View(objAccount));
                }
            }
            return(View(objAccount));
        }
        public ActionResult createAccount(Account account, FormCollection form)
        {
            if (ModelState.IsValid)
            {
                AccountAccessLayer accountAccessLayer = new AccountAccessLayer();
                string             password           = form["password1"];
                string             passwordAgain      = form["passwordAgain"];
                if (password == "" || passwordAgain == "")
                {
                    ModelState.AddModelError("", "Your password or password again is null");

                    return(View());
                }
                else
                {
                    if (password == passwordAgain)
                    {
                        account.PassWord = password;
                        string result = accountAccessLayer.Insertdata(account);
                        TempData["InsertResult"] = result;
                        ModelState.Clear();

                        return(RedirectToAction("ShowAllAccounts"));
                    }
                    else
                    {
                        ModelState.AddModelError("", "Your password is not equal to passwordAgain");

                        return(View());
                    }
                }
            }
            else
            {
                ModelState.AddModelError("", "Error in saving data to table");

                return(View());
            }
        }
        public ActionResult updatePassword(string id)
        {
            AccountAccessLayer accountAccessLayer = new AccountAccessLayer();

            return(View(accountAccessLayer.SelectDataById(id)));
        }
        public ActionResult editAccount(string id)
        {
            AccountAccessLayer accountAccessLayer = new AccountAccessLayer();

            return(View(accountAccessLayer.SelectDataById(id)));
        }