Пример #1
0
        public JsonResult LogIn(string username, string password)
        {
            var credential =
                Mocks.MockCredentials.FirstOrDefault(x =>
                                                     x.AccessCredential.Username == username);

            if (credential == null)
            {
                return(Json(ResponseData.SendFailMsg("You are not recognized here. Please contact the Administrator"),
                            JsonRequestBehavior.AllowGet));
            }

            if (!Encryption.IsSaltEncryptValid(password, credential.AccessCredential.PasswordData,
                                               credential.AccessCredential.PasswordSalt))
            {
                return(Json(
                           ResponseData.SendFailMsg(
                               "Your password is incorrect. Please try again or contact the Administrator"),
                           JsonRequestBehavior.AllowGet));
            }

            if (credential.AccessRoles.Any(x =>
                                           x.PermissionId == (int)RolePermissions.WebAdministrator ||
                                           x.PermissionId == (int)RolePermissions.RegOpr) == false)
            {
                return(Json(ResponseData.SendFailMsg("You are not authorised to use this Application"),
                            JsonRequestBehavior.AllowGet));
            }

            SecurityModel.SetUserSession(credential);

            return(Json(ResponseData.SendSuccessMsg("Your credentials have been accepted. Logging you in a moment."),
                        JsonRequestBehavior.AllowGet));
        }