Exemple #1
0
        public ActionResult Delete(string userId)
        {
            if (string.IsNullOrEmpty(userId))
            {
                DisplayErrorPage("Error", Resources.Account.AccountResources.EmptyUserId);
                return(RedirectToAction("NewLogin"));
            }

            using (UserService _service = new UserService())
            {
                CFG_Users user = _service.GetUserById(userId);

                if (user != null) //The UserId exists
                {
                    try
                    {
                        _service.Delete(user);
                    }
                    catch
                    {
                        DisplayErrorPage("Error", Resources.Account.AccountResources.AccountDeleteFailed);
                    }
                }
                else
                {
                    IdentitySignout();
                }
            }
            return(RedirectToAction("NewLogin"));
        }
        public List <CFG_AppMenuItems> GetAllMenuItems(CFG_Users user)
        {
            List <CFG_AppMenuItems> list = new List <CFG_AppMenuItems>();

            foreach (CFG_UserGroups group in user.CFG_UserGroups)
            {
                foreach (CFG_AppMenuItems menuItem in group.CFG_AppMenuItems)
                {
                    if (!list.Exists(i => i.IDMenuItem == menuItem.IDMenuItem))
                    {
                        list.Add(menuItem);
                    }
                }
            }
            return(list);
        }
        public List <CFG_AppMenuItemsTranslation> GetAllMenuItemsTranslation(CFG_Users user, string langId)
        {
            List <CFG_AppMenuItemsTranslation> list = new List <CFG_AppMenuItemsTranslation>();

            foreach (CFG_AppMenuItems item in this.GetAllMenuItems(user))
            {
                if (item.CFG_AppMenues != null && item.CFG_AppMenues.CFG_Apps != null)
                {
                    if (item.CFG_AppMenues.CFG_Apps.Description == Constants.APP_NAME) //ge only dashboard menu items
                    {
                        list.Add(item.CFG_AppMenuItemsTranslation.Where(i => i.IDLanguage.Trim() == langId).FirstOrDefault());
                    }
                }
            }
            return(list);
        }
Exemple #4
0
        public ActionResult Register(FormCollection formVars)
        {
            string id = formVars["Id"];

            using (UserService _service = new UserService())
            {
                CFG_Users user = _service.GetUserById(id);
                if (user != null) //The UserId exists
                {
                    DisplayErrorPage("Error", Resources.Account.AccountResources.NewUserIdExist);
                    return(View("Register"));
                }
                string password        = formVars["password"];
                string confirmPassword = formVars["confirmPassword"];
                if (confirmPassword != password)
                {
                    DisplayErrorPage("Error", Resources.Account.AccountResources.TwoPasswordNotSame);
                    return(View("Register"));
                }

                user            = new CFG_Users();
                user.IDUser     = id;
                user.Password   = confirmPassword;
                user.IDLanguage = formVars["languageId"];
                user.FirstName  = formVars["firstName"];
                user.LastName   = formVars["lastName"];
                user.Enabled    = Convert.ToBoolean(formVars["enabled"]);
                _service.Insert(user);

                var claims = new List <Claim>();

                // create *required* claims
                claims.Add(new Claim(ClaimTypes.NameIdentifier, user.IDUser));
                claims.Add(new Claim(ClaimTypes.Name, _service.GetUserName(user)));
                claims.Add(new Claim("IsAdmin", _service.IsUserAdmin(user).ToString()));
                claims.Add(new Claim("Culture", user.IDLanguage.Trim()));

                IdentitySignin(claims);
            }
            return(RedirectToAction("Index", "Dashboard", null));
        }
Exemple #5
0
        public ActionResult NewLogin(LocalAccountLoginViewModel model, string returnUrl)
        {
            using (UserService _service = new UserService())
            {
                if (model.UserId == null)
                {
                    model.ErrorMsg = Resources.Account.LoginResources.UserIdIsEmpty;
                    return(View(model));
                }
                if (model.Password == null)
                {
                    model.ErrorMsg = Resources.Account.LoginResources.PasswordIsEmpty;
                    return(View(model));
                }
                CFG_Users user = _service.GetUserById(model.UserId);
                if (user == null)
                {
                    model.ErrorMsg = Resources.Account.LoginResources.UserNotExist;
                    return(View(model));
                }
                if (!user.Enabled)
                {
                    model.ErrorMsg = Resources.Account.LoginResources.UserNotActive;
                    return(View(model));
                }

                if (!_service.ValidateUser(model.UserId, model.Password))
                {
                    model.ErrorMsg = Resources.Account.LoginResources.InvalidUserNamePassword;
                    return(View(model));
                }

                using (DBVersionService dbVersionService = new DBVersionService())
                {
                    if (!dbVersionService.IsDBVersionOK())
                    {
                        model.ErrorMsg = Resources.Shared.GeneralResources.DBVersionError.Replace("{0}", Config.MinimumDBVersion);
                        model.ErrorMsg = model.ErrorMsg.Replace("{1}", dbVersionService.GetDBVersion());

                        return(View(model));
                    }
                }

                var claims = new List <Claim>();

                // create *required* claims
                claims.Add(new Claim(ClaimTypes.NameIdentifier, user.IDUser));
                claims.Add(new Claim(ClaimTypes.Name, _service.GetUserName(user)));
                claims.Add(new Claim("IsAdmin", _service.IsUserAdmin(user).ToString()));
                claims.Add(new Claim("Culture", user.IDLanguage.Trim()));

                IdentitySignin(claims, model.UserId, model.RememberMe);

                if (!string.IsNullOrEmpty(returnUrl))
                {
                    return(Redirect(returnUrl));
                }
                else
                {
                    return(RedirectToAction("Index", "Dashboard", null));
                }
            }
        }