コード例 #1
0
        public bool AddUserToRole(DotNetNuke.Entities.Users.UserInfo user, string roleName)
        {
            bool rc = false;

            DotNetNuke.Security.Roles.RoleController roleCtl = new DotNetNuke.Security.Roles.RoleController();
            DotNetNuke.Security.Roles.RoleInfo       newRole = roleCtl.GetRoleByName(user.PortalID, roleName);

            if (newRole == null)
            {
                throw new Exception("No existe el Rol [" + roleName + "] en el sistema");
            }
            else if (user == null)
            {
                throw new Exception("La información de usuario se encuentra vacía");
            }
            else
            {
                rc = user.IsInRole(roleName);
                if (!rc)
                {
                    roleCtl.AddUserRole(user.PortalID, user.UserID, newRole.RoleID, DateTime.MinValue, DateTime.MaxValue);
                    user = DotNetNuke.Entities.Users.UserController.GetUserById(user.PortalID, user.UserID);
                    rc   = user.IsInRole(roleName);
                }
            }

            return(rc);
        }
コード例 #2
0
        private static List <int> BuildRoleList()
        {
            var psCurrent = PortalSettings.Current;

            if (psCurrent == null)
            {
                return(new List <int>());
            }

            var portalId = psCurrent.PortalId;
            var user     = psCurrent.UserInfo;

            if (user == null)
            {
                return(new List <int>());
            }

            var rc = new DotNetNuke.Security.Roles.RoleController();

            return(user.Roles
                   .Select(r => rc.GetRoleByName(portalId, r))
                   .Where(r => r != null)
                   .Select(r => r.RoleID)
                   .ToList());
        }
コード例 #3
0
        public void CreateNewUser(string FullName, string Email, string AddUserRole)
        {
            try
            {
                NameSplit(FullName);

                UserInfo oUser = new UserInfo();

                oUser.PortalID    = this.PortalId;
                oUser.IsSuperUser = false;
                oUser.FirstName   = FirstName;
                oUser.LastName    = LastName;
                oUser.Email       = Email;
                oUser.Username    = Email;
                oUser.DisplayName = FullName;

                //Fill MINIMUM Profile Items (KEY PIECE)
                oUser.Profile.PreferredLocale   = PortalSettings.DefaultLanguage;
                oUser.Profile.PreferredTimeZone = PortalSettings.TimeZone;
                oUser.Profile.FirstName         = oUser.FirstName;
                oUser.Profile.LastName          = oUser.LastName;


                //Set Membership
                UserMembership oNewMembership = new UserMembership(oUser);
                oNewMembership.Approved    = true;
                oNewMembership.CreatedDate = System.DateTime.Now;

                //    oNewMembership.Email = oUser.Email;
                oNewMembership.IsOnLine = false;
                //    oNewMembership.Username = oUser.Username;
                oNewMembership.Password = GenerateRandomString(7);

                //Bind membership to user
                oUser.Membership = oNewMembership;

                //Add the user, ensure it was successful
                if (DotNetNuke.Security.Membership.UserCreateStatus.Success == UserController.CreateUser(ref oUser))
                {
                    //Add Role if passed something from module settings

                    if (AddUserRole.Length > 0)
                    {
                        DotNetNuke.Security.Roles.RoleController rc = new DotNetNuke.Security.Roles.RoleController();
                        //retrieve role
                        string groupName = AddUserRole;
                        DotNetNuke.Security.Roles.RoleInfo ri = rc.GetRoleByName(PortalId, groupName);
                        rc.AddUserRole(this.PortalId, oUser.UserID, ri.RoleID, Null.NullDate);
                    }
                }
            }
            catch (Exception ex)
            {
                Exceptions.ProcessModuleLoadException(this, ex);
            }
        }
コード例 #4
0
 public static void ensureFolderExists(int portalId)
 {
     FolderMappingInfo fm = FolderMappingController.Instance.GetFolderMapping(portalId, "Secure");
     if (!FolderManager.Instance.FolderExists(portalId, IMAGE_FOLDER + "/"))
     {
         IFolderInfo f1 = FolderManager.Instance.AddFolder(fm, IMAGE_FOLDER);
         DotNetNuke.Security.Roles.RoleController rc = new DotNetNuke.Security.Roles.RoleController();
         DotNetNuke.Security.Permissions.PermissionController pc = new DotNetNuke.Security.Permissions.PermissionController();
         DotNetNuke.Security.Permissions.PermissionInfo w = (DotNetNuke.Security.Permissions.PermissionInfo)pc.GetPermissionByCodeAndKey("SYSTEM_FOLDER", "WRITE")[0];
         FolderManager.Instance.SetFolderPermission(f1, w.PermissionID, rc.GetRoleByName(portalId, "Accounts Team").RoleID);
     }
 }
コード例 #5
0
ファイル: ClientData.cs プロジェクト: Lewy-H/NBrightBuy
 public void AddClientRole(ModSettings modSettings)
 {
     if (_userInfo != null)
     {
         if (!_userInfo.IsInRole("Client"))
         {
             var rc = new DotNetNuke.Security.Roles.RoleController();
             var ri = rc.GetRoleByName(PortalId, "Client");
             if (ri != null) rc.AddUserRole(PortalId, _userInfo.UserID, ri.RoleID, Null.NullDate);
             if (StoreSettings.Current.Get("sendclientroleemail") == "True") NBrightBuyUtils.SendEmail(_userInfo.Email, "addclientrole.html", _clientInfo, "", "", _userInfo.Profile.PreferredLocale);
         }
     }
 }
コード例 #6
0
 public static void checkFolderPermissions(int PortalId, IFolderInfo theFolder, int theUserId, List<UserInfo> approvers)
 {
     // Get the write permission
     PermissionController pc = new PermissionController();
     PermissionInfo w = (PermissionInfo)pc.GetPermissionByCodeAndKey("SYSTEM_FOLDER", "WRITE")[0];
     // Get a list of all the folderPermissions we currently have
     FolderPermissionCollection folderPermissions = theFolder.FolderPermissions;
     // Set up the first permission
     FolderPermissionInfo permission = new FolderPermissionInfo();
     // Set up some default values for the permission
     initFolderPermission(permission, theFolder.FolderID, PortalId, w.PermissionID);
     // Set the user id to be this user
     permission.UserID = theUserId;
     // Add folder permissions, with a check for duplicates.
     // This duplicate check (the 'True' parameter) will classify this as a "duplicate" if this permission
     // has the same PermissionID, UserID, and RoleID as a pre-existing one, and not add it if it is a duplicate
     folderPermissions.Add(permission, true);
     // Get all the possible approvers for this reimbursement
     try
     {
         foreach (var approver in approvers)
         {
             // Create a new permission for this approver
             permission = new FolderPermissionInfo();
             // Initialize all the variables
             initFolderPermission(permission, theFolder.FolderID, PortalId, w.PermissionID);
             // Set the userid to the approver's id
             permission.UserID = approver.UserID;
             // Add permission for approver
             folderPermissions.Add(permission, true);
         }
     }
     catch { }
     // Finally, add permissions for the accounts team:
     try
     {
         permission = new FolderPermissionInfo();
         // Initialize new folder permission
         initFolderPermission(permission, theFolder.FolderID, PortalId, w.PermissionID);
         // Set the role ID
         DotNetNuke.Security.Roles.RoleController rc = new DotNetNuke.Security.Roles.RoleController();
         permission.RoleID = rc.GetRoleByName(PortalId, "Accounts Team").RoleID;
         folderPermissions.Add(permission, true);
     }
     catch { }
     // Once we're finished adding these folder permissions, save it all
     FolderPermissionController.SaveFolderPermissions(theFolder);
 }
コード例 #7
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                //   lblDebug.Text = this.UserId.ToString() + "<br />";
                if (this.UserId >= 1)
                {
                    DotNetNuke.Security.Roles.RoleController rolesController = new DotNetNuke.Security.Roles.RoleController();
                    UserRoleInfo role = rolesController.GetUserRole(this.PortalId, this.UserId, rolesController.GetRoleByName(0, "Member").RoleID);
                    if (role != null)
                    {
                        DateTime expiryDate = role.ExpiryDate;
                        if (expiryDate != null)
                        {
                            if (expiryDate > DateTime.Now)
                            {
                                lblExpireDate.Text = "Membership Expires " + expiryDate.ToShortDateString();
                            }
                            else
                            {
                                lblExpireDate.Text = "Membership Expired " + expiryDate.ToShortDateString() + "<br />Time to Renew!!! ";
                            }
                        }

                        //   lblDebug.Text += "";
                    }
                }
                else
                {
                    //lblExpireDate.Text = "";
                    divMemberBadge.Visible = false;
                }
            }
            catch (Exception exc) //Module failed to load
            {
                Exceptions.ProcessModuleLoadException(this, exc);
            }
        }
コード例 #8
0
        public bool CreateNewUser(string FirstName, string LastName, string Email, string Password, string AddUserRole)
        {
            try
            {
                UserInfo oUser = new UserInfo();
                oUser.PortalID    = this.PortalId;
                oUser.IsSuperUser = false;
                oUser.FirstName   = FirstName;
                oUser.LastName    = LastName;
                oUser.Email       = Email;
                oUser.Username    = Email;
                oUser.DisplayName = FirstName + " " + LastName;

                //Fill MINIMUM Profile Items (KEY PIECE)
                oUser.Profile.PreferredLocale   = PortalSettings.DefaultLanguage;
                oUser.Profile.PreferredTimeZone = PortalSettings.TimeZone;
                oUser.Profile.FirstName         = oUser.FirstName;
                oUser.Profile.LastName          = oUser.LastName;
                oUser.Profile.Country           = "United States";
                oUser.Profile.Region            = ddlStates.SelectedValue.ToString();
                oUser.Profile.Street            = txtAddress.Text.ToString();
                oUser.Profile.City       = txtCity.Text.ToString();
                oUser.Profile.Telephone  = txtPhoneNumber.Text.ToString();
                oUser.Profile.PostalCode = txtZip.Text.ToString();

                //Set Membership
                UserMembership oNewMembership = new UserMembership(oUser);
                oNewMembership.Approved    = true;
                oNewMembership.CreatedDate = System.DateTime.Now;

                //    oNewMembership.Email = oUser.Email;
                oNewMembership.IsOnLine = false;
                //     oNewMembership.Username = oUser.Username;
                oNewMembership.Password = Password;

                //Bind membership to user
                oUser.Membership = oNewMembership;


                //Add the user, ensure it was successful
                if (DotNetNuke.Security.Membership.UserCreateStatus.Success == UserController.CreateUser(ref oUser))
                {
                    //Add Role if passed something from module settings

                    if (AddUserRole.Length > 0)
                    {
                        DotNetNuke.Security.Roles.RoleController rc = new DotNetNuke.Security.Roles.RoleController();
                        //retrieve role
                        int    AuctionPortalID = this.PortalId;
                        string groupName       = AddUserRole;

                        DotNetNuke.Security.Roles.RoleInfo ri = rc.GetRoleByName(AuctionPortalID, groupName);
                        rc.AddUserRole(AuctionPortalID, oUser.UserID, ri.RoleID, DotNetNuke.Security.Roles.RoleStatus.Approved, false, DateTime.Today, Null.NullDate);
                    }



                    // LOGIN THE NEWLY CREATED USER
                    DotNetNuke.Entities.Users.UserInfo             myNewUser       = new DotNetNuke.Entities.Users.UserInfo();
                    DotNetNuke.Security.Membership.UserLoginStatus userLoginStatus = new DotNetNuke.Security.Membership.UserLoginStatus();
                    myNewUser = DotNetNuke.Entities.Users.UserController.ValidateUser(this.PortalId, Email, Password, "", "", GetIPAddress(), ref userLoginStatus);

                    if (userLoginStatus == DotNetNuke.Security.Membership.UserLoginStatus.LOGIN_SUCCESS ||
                        userLoginStatus == DotNetNuke.Security.Membership.UserLoginStatus.LOGIN_SUPERUSER)
                    {
                        //login the user ...
                        DotNetNuke.Entities.Users.UserController.UserLogin(PortalId, myNewUser, "", GetIPAddress(), true);

                        string newURL = Globals.NavigateURL("", "", "NewAccount=Success", "Foreclosure=" + PropertyID.ToString());

                        // Response.Redirect(Request.RawUrl,true);
                        Response.Redirect(newURL, true);
                    }
                    else
                    {
                        lblErrorMessage.Text = "New User Login Failed";
                    }

                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                Exceptions.ProcessModuleLoadException(this, ex);
                return(false);
            }
        }
コード例 #9
0
ファイル: View.ascx.cs プロジェクト: JoeAucoin/MealTracker
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                GridView1.DataSource = MealController.GetAllMeals(ModuleId);
                GridView1.DataBind();

                if (this.UserId > 1)
                {
                    DotNetNuke.Security.Roles.RoleController rolesController = new DotNetNuke.Security.Roles.RoleController();
                    UserRoleInfo role       = rolesController.GetUserRole(0, this.UserId, rolesController.GetRoleByName(0, "Donor").RoleID);
                    DateTime     expiryDate = role.ExpiryDate;
                    lblDebug.Text = expiryDate.ToShortDateString();
                }
            }
            catch (Exception exc) //Module failed to load
            {
                Exceptions.ProcessModuleLoadException(this, exc);
            }
        }