コード例 #1
0
        protected override void Seed(StudentPortalContext context)
        {
            IPortalRoleManager roleManager = new PortalRoleManager(context);

            roleManager.SetupPortalRoles();
            roleManager.SetupAdministratorAccount();
        }
コード例 #2
0
        public ActionResult Index()
        {
            try
            {
                var userData = MvcApplication.GetUserData(User.Identity.Name);
                if (userData == null || userData.UserId < 1)
                {
                    ViewBag.Error = "Session Has Expired! Please Re-Login";
                    return(View(new List <RoleObj>()));
                }

                var searchObj = new RoleSearchObj
                {
                    AdminUserId = userData.UserId,
                    RoleId      = 0,
                    Status      = -200,
                };
                var retVal = new PortalRoleManager().LoadRoles(searchObj, userData.Username);
                if (retVal?.Status == null)
                {
                    ViewBag.Error = "Role Item list is empty!";
                    return(View(new List <RoleObj>()));
                }

                if (!retVal.Status.IsSuccessful)
                {
                    ViewBag.Error = string.IsNullOrEmpty(retVal.Status.Message.FriendlyMessage)
                        ? "Role Item list is empty!"
                        : retVal.Status.Message.FriendlyMessage;
                    return(View(new List <RoleObj>()));
                }
                if (!retVal.Roles.Any())
                {
                    ViewBag.Error = "Role Item list is empty!";
                    return(View(new List <RoleObj>()));
                }

                var allRoles = retVal.Roles.OrderBy(m => m.RoleId).ToList();
                Session["_portalRoles"] = allRoles;
                return(View(allRoles));
            }
            catch (Exception ex)
            {
                ViewBag.Error = ex.Message;
                UtilTools.LogE(ex.StackTrace, ex.Source, ex.Message);
                return(View(new List <RoleObj>()));
            }
        }
コード例 #3
0
        public JsonResult ProcessAddRoleRequest(string myRoleName, bool myRoleStatus)
        {
            try
            {
                var userData = MvcApplication.GetUserData(User.Identity.Name) ?? new UserData();

                if (userData.UserId < 1)
                {
                    return(Json(new { IsSuccessful = false, Error = "Your session has expired", IsAuthenticated = false }));
                }

                if (string.IsNullOrEmpty(myRoleName) || myRoleName.Length < 2)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid Role Name" }));
                }


                var passObj = new RegRoleObj
                {
                    Name        = myRoleName,
                    Status      = myRoleStatus ? 1 : 0,
                    AdminUserId = userData.UserId,
                };


                var response = new PortalRoleManager().AddRole(passObj, userData.Username);
                if (response?.Status == null)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Error Occurred! Please try again later" }));
                }

                if (!response.Status.IsSuccessful)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = string.IsNullOrEmpty(response.Status.Message.FriendlyMessage) ? "Process Failed! Unable to add role" : response.Status.Message.FriendlyMessage }));
                }

                return(Json(new { IsAuthenticated = true, IsSuccessful = true, IsReload = false, Error = "" }));
            }
            catch (Exception ex)
            {
                UtilTools.LogE(ex.StackTrace, ex.Source, ex.Message);
                return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Process Error Occurred! Please try again later" }));
            }
        }
コード例 #4
0
        public JsonResult ProcessRoleUpdateRequest(int myRoleId, string myRoleName, bool myRoleStatus)
        {
            try
            {
                var userData = MvcApplication.GetUserData(User.Identity.Name) ?? new UserData();

                if (userData.UserId < 1)
                {
                    return(Json(new { IsSuccessful = false, Error = "Your session has expired", IsAuthenticated = false }));
                }

                //var bearerAuth = MvcApplication.GetSessionBearerData(userData.Username);
                //var authToken = MvcApplication.GetSessionAuthData(userData.Username);

                //if (string.IsNullOrEmpty(bearerAuth) || bearerAuth.Length < 5)
                //{
                //    return Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid User Session! Please Re-Login" });
                //}

                //if (string.IsNullOrEmpty(authToken) || authToken.Length < 5)
                //{
                //    return Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid User Session! Please Re-Login" });
                //}

                if (myRoleId < 1)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid Role Information" }));
                }

                if (string.IsNullOrEmpty(myRoleName) || myRoleName.Length < 2)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid Role Name" }));
                }


                var passObj = new EditRoleObj
                {
                    RoleId      = myRoleId,
                    Name        = myRoleName,
                    Status      = myRoleStatus ? 1 : 0,
                    AdminUserId = userData.UserId,
                };


                var response = new PortalRoleManager().ModifyRole(passObj, userData.Username);
                if (response?.Status == null)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Error Occurred! Please try again later" }));
                }


                if (!response.Status.IsSuccessful)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = string.IsNullOrEmpty(response.Status.Message.FriendlyMessage) ? "Process Failed! Unable to modify role" : response.Status.Message.FriendlyMessage }));
                }

                return(Json(new { IsAuthenticated = true, IsSuccessful = true, IsReload = false, Error = "" }));
            }
            catch (Exception ex)
            {
                UtilTools.LogE(ex.StackTrace, ex.Source, ex.Message);
                return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Process Error Occurred! Please try again later" }));
            }
        }
コード例 #5
0
        public ActionResult Index()
        {
            try
            {
                var userData = MvcApplication.GetUserData(User.Identity.Name);
                if (userData == null || userData.UserId < 1)
                {
                    ViewBag.Error = "Session Has Expired! Please Re-Login";
                    return(View(new List <TabObj>()));
                }

                // var bearerAuth = MvcApplication.GetSessionBearerData(userData.Username);

                var searchObj = new RoleSearchObj
                {
                    AdminUserId = userData.UserId,
                    RoleId      = 0,
                    Status      = -2
                };
                var roleVal = new PortalRoleManager().LoadRoles(searchObj, userData.Username);
                if (roleVal?.Status == null)
                {
                    ViewBag.Error = "Role Item list is empty! Roles must be defined before setting up tabs";
                    return(View(new List <TabObj>()));
                }


                if (!roleVal.Status.IsSuccessful)
                {
                    ViewBag.Error = string.IsNullOrEmpty(roleVal.Status.Message.FriendlyMessage)
                        ? "Role Item list is empty! Roles must be defined before setting up tabs"
                        : roleVal.Status.Message.FriendlyMessage;
                    return(View(new List <TabObj>()));
                }

                if (roleVal.Roles == null)
                {
                    ViewBag.Error = "Role Item list is empty! Roles must be defined before setting up tabs";
                    return(View(new List <TabObj>()));
                }

                var roles = roleVal.Roles.Where(m => m.Status == 1).ToList();
                if (!roles.Any())
                {
                    ViewBag.Error = "Role Item list is empty! Roles must be defined before setting up tab";
                    return(View(new List <TabObj>()));
                }

                var allRoles = new List <NameValueObject>();

                foreach (var item in roles)
                {
                    allRoles.Add(new NameValueObject
                    {
                        Id   = item.RoleId,
                        Name = item.Name
                    });
                }

                Session["_portal_tab_allroles"] = allRoles;

                var searchObj2 = new TabSearchObj
                {
                    AdminUserId = userData.UserId,
                    Status      = -2,
                };

                var retVal = new PortalTabManager().LoadTabs(searchObj2, userData.Username);
                if (retVal?.Status == null)
                {
                    ViewBag.Error = "Tab Item list is empty!";
                    return(View(new List <TabObj>()));
                }

                if (!retVal.Status.IsSuccessful)
                {
                    ViewBag.Error = string.IsNullOrEmpty(retVal.Status.Message.FriendlyMessage)
                        ? "Tab Item list is empty!"
                        : retVal.Status.Message.FriendlyMessage;
                    return(View(new List <TabObj>()));
                }
                if (!retVal.Tabs.Any())
                {
                    ViewBag.Error = "Tab Item list is empty!";
                    return(View(new List <TabObj>()));
                }

                var allTabs = retVal.Tabs.OrderBy(m => m.TabId).ToList();
                Session["_portalTabs"] = allTabs;
                return(View(allTabs));
            }
            catch (Exception ex)
            {
                ViewBag.Error = ex.Message;
                UtilTools.LogE(ex.StackTrace, ex.Source, ex.Message);
                return(View(new List <TabObj>()));
            }
        }
コード例 #6
0
        public JsonResult ProcessEditUserRequest(PortalUserViewModel portalUser)
        {
            try
            {
                var userData = MvcApplication.GetUserData(User.Identity.Name) ?? new UserData();

                if (userData.UserId < 1)
                {
                    return(Json(new { IsSuccessful = false, Error = "Your session has expired", IsAuthenticated = false }));
                }

                //var bearerAuth = MvcApplication.GetSessionBearerData(userData.Username);
                //var authToken = MvcApplication.GetSessionAuthData(userData.Username);

                //if (string.IsNullOrEmpty(bearerAuth) || bearerAuth.Length < 5)
                //{
                //    return Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid User Session! Please Re-Login" });
                //}

                //if (string.IsNullOrEmpty(authToken) || authToken.Length < 5)
                //{
                //    return Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid User Session! Please Re-Login" });
                //}

                if (portalUser == null)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid User Item" }));
                }

                if (string.IsNullOrEmpty(portalUser.FirstName) || portalUser.FirstName.Length < 2)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "First Name is required" }));
                }

                if (string.IsNullOrEmpty(portalUser.LastName) || portalUser.LastName.Length < 2)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Last Name is required" }));
                }

                if (string.IsNullOrEmpty(portalUser.Email) || portalUser.Email.Length < 5)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Email is required" }));
                }


                var passObj = new EditUserObj
                {
                    UserId       = portalUser.UserId,
                    FirstName    = portalUser.FirstName,
                    LastName     = portalUser.LastName,
                    AdminUserId  = userData.UserId,
                    MobileNumber = portalUser.MobileNumber,
                };


                var response = new PortalUserManager().ModifyUser(passObj, userData.Username);
                if (response == null)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Error Occurred! Please try again later" }));
                }


                if (!response.Status.IsSuccessful)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = string.IsNullOrEmpty(response.Status.Message.FriendlyMessage) ? "Process Failed! Unable to add role" : response.Status.Message.FriendlyMessage }));
                }

                var updateRole = new EditUserRoleObj
                {
                    AdminUserId = userData.UserId,
                    UserId      = portalUser.UserId,
                    RoleIds     = string.Join(",", portalUser.MyRoleIds)
                };

                var response2 = new PortalRoleManager().UpdateUserRoles(updateRole, userData.Username);
                if (response2 == null)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Error Occurred! Please try again later" }));
                }


                if (!response2.Status.IsSuccessful)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = string.IsNullOrEmpty(response.Status.Message.FriendlyMessage) ? "Process Failed! Unable to add role" : response.Status.Message.FriendlyMessage }));
                }

                return(Json(new { IsAuthenticated = true, IsSuccessful = true, IsReload = false, Error = "" }));
            }
            catch (Exception ex)
            {
                UtilTools.LogE(ex.StackTrace, ex.Source, ex.Message);
                return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Process Error Occurred! Please try again later" }));
            }
        }
コード例 #7
0
        public JsonResult ProcessAddUserRequest(PortalUserViewModel portalUser)
        {
            try
            {
                var userData = MvcApplication.GetUserData(User.Identity.Name) ?? new UserData();

                if (userData.UserId < 1)
                {
                    return(Json(new { IsSuccessful = false, Error = "Your session has expired", IsAuthenticated = false }));
                }

                //var bearerAuth = MvcApplication.GetSessionBearerData(userData.Username);
                //var authToken = MvcApplication.GetSessionAuthData(userData.Username);

                //if (string.IsNullOrEmpty(bearerAuth) || bearerAuth.Length < 5)
                //{
                //    return Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid User Session! Please Re-Login" });
                //}

                //if (string.IsNullOrEmpty(authToken) || authToken.Length < 5)
                //{
                //    return Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid User Session! Please Re-Login" });
                //}

                if (portalUser == null)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Invalid Tab Item" }));
                }

                if (string.IsNullOrEmpty(portalUser.FirstName))
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "First Name is required" }));
                }

                if (string.IsNullOrEmpty(portalUser.Email))
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Email is required" }));
                }

                if (string.IsNullOrEmpty(portalUser.Password) || portalUser.Password.Length < 3)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Password is required" }));
                }

                if (string.IsNullOrEmpty(portalUser.ConfirmPassword) || portalUser.ConfirmPassword.Length < 3)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Password Confirmation is required" }));
                }

                if (string.Compare(portalUser.ConfirmPassword, portalUser.Password, StringComparison.CurrentCultureIgnoreCase) != 0)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Password and Password Confirmation must be equal" }));
                }

                if (portalUser.MyRoleIds == null || !portalUser.MyRoleIds.Any())
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Tab Roles are required" }));
                }

                if (!(Session["_portal_user_allroles"] is List <NameValueObject> allRoles) || !allRoles.Any())
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Your session has expired" }));
                }

                // var selRoles = allRoles.Where(m => portalUser.MyRoleIds.Contains(m.Id)).Select(m => m.Name).ToList();

                var passObj = new RegUserObj
                {
                    FirstName    = portalUser.FirstName,
                    LastName     = portalUser.LastName,
                    Password     = portalUser.Password,
                    Email        = portalUser.Email,
                    MobileNumber = portalUser.MobileNumber,
                    AdminUserId  = userData.UserId,
                    UserType     = 1,
                };


                var response = new PortalUserManager().AddUser(passObj, userData.Username);
                if (response == null)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Error Occurred! Please try again later" }));
                }



                if (!response.Status.IsSuccessful)
                {
                    return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = string.IsNullOrEmpty(response.Status.Message.FriendlyMessage) ? "Process Failed! Unable to add user" : response.Status.Message.FriendlyMessage }));
                }


                if (response.UserId > 0)
                {
                    var userRole = new RegUserRoleObj
                    {
                        UserId      = response.UserId,
                        RoleIds     = string.Join(",", portalUser.MyRoleIds),
                        AdminUserId = userData.UserId,
                    };

                    var response2 = new PortalRoleManager().AdUserToRole(userRole, userData.Username);


                    if (!response2.Status.IsSuccessful)
                    {
                        return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = string.IsNullOrEmpty(response.Status.Message.FriendlyMessage) ? "User information was added but user roles not added" : "User information was added but role Error: " + response.Status.Message.FriendlyMessage + " occured!" }));
                    }
                }


                return(Json(new { IsAuthenticated = true, IsSuccessful = true, IsReload = false, Error = "" }));
            }
            catch (Exception ex)
            {
                UtilTools.LogE(ex.StackTrace, ex.Source, ex.Message);
                return(Json(new { IsAuthenticated = true, IsSuccessful = false, IsReload = false, Error = "Process Error Occurred! Please try again later" }));
            }
        }