private static void UpdateRoles(DataSourceContext context, JToken data, JObject schema, UserInfo user) { if (HasProperty(schema, "", "Roles")) { List <string> rolesToRemove = new List <string>(user.Roles); var roles = data["Roles"] as JArray; foreach (var role in roles) { string roleName = role.ToString(); rolesToRemove.Remove(roleName); if (!user.Roles.Contains(roleName)) { var roleInfo = RoleController.Instance.GetRoleByName(context.PortalId, roleName); RoleController.AddUserRole(user, roleInfo, PortalSettings.Current, RoleStatus.Approved, Null.NullDate, Null.NullDate, false, false); } } foreach (var roleName in rolesToRemove) { if (roleName != REGISTERED_USERS) { var roleInfo = RoleController.Instance.GetRoleByName(context.PortalId, roleName); RoleController.DeleteUserRole(user, roleInfo, PortalSettings.Current, false); } } } }
private UserCreateStatus CreateDNNUser(UserInfo user) { user.Membership.Password = UserController.GeneratePassword(12).ToString(); user.PortalID = PortalId; user.IsSuperUser = false; UserCreateStatus createStatus = UserCreateStatus.AddUser; //Create the User createStatus = UserController.CreateUser(ref user); if (createStatus == UserCreateStatus.Success) { RoleController objRoles = new RoleController(); List <int> rolesList = new List <int>(); foreach (int roleID in rolesList) { objRoles.AddUserRole(user.PortalID, user.UserID, roleID, Null.NullDate, Null.NullDate); } } return(createStatus); }
public void RemoveUserFromRoles(Int32 portalID, OrderInfo order) { int userID = order.CustomerID; RoleController roleController = new RoleController(); List <OrderDetailInfo> orderDetails = GetOrderDetails(order.OrderID); foreach (OrderDetailInfo detail in orderDetails) { int roleID = detail.RoleID; if (roleID != Null.NullInteger) { DateTime today = DateTime.Now; UserRoleInfo userRole = roleController.GetUserRole(portalID, userID, roleID); if (userRole != null) { DateTime roleExpiryDate = userRole.ExpiryDate; // If remaining days exist if (roleExpiryDate != Null.NullDate && roleExpiryDate > today) { RoleInfo role = roleController.GetRoleById(portalID, roleID); DateTime expiryDate = Null.NullDate; // If a billing period is defined if (role.BillingPeriod != Null.NullInteger) { switch (role.BillingFrequency) { case "D": expiryDate = roleExpiryDate.AddDays(-(role.BillingPeriod * detail.Quantity)); break; case "M": expiryDate = roleExpiryDate.AddMonths(-(role.BillingPeriod * detail.Quantity)); break; case "W": expiryDate = roleExpiryDate.AddDays(-(role.BillingPeriod * 7 * detail.Quantity)); break; case "Y": expiryDate = roleExpiryDate.AddYears(-(role.BillingPeriod * detail.Quantity)); break; default: // If 'None' or 'One Time Fee' is defined, // then the role never expire! break; } } // If an expiry date is defined if (expiryDate != Null.NullDate) { roleController.AddUserRole(portalID, userID, roleID, userRole.EffectiveDate, expiryDate); } } } } } }
public void AddPortalToGroup(PortalInfo portal, PortalGroupInfo portalGroup, UserCopiedCallback callback) { Requires.NotNull("portal", portal); Requires.PropertyNotNegative("portal", "PortalId", portal.PortalID); Requires.NotNull("portalGroup", portalGroup); Requires.PropertyNotNegative("portalGroup", "PortalGroupId", portalGroup.PortalGroupId); Requires.PropertyNotNegative("portalGroup", "MasterPortalId", portalGroup.MasterPortalId); OnAddPortalToGroupStart(callback, portal); var users = UserController.GetUsers(portal.PortalID); var masterUsers = UserController.GetUsers(portalGroup.MasterPortalId); var totalUsers = users.Count + masterUsers.Count; var userNo = 0; if (users.Count > 0) { var masterPortal = _portalController.GetPortal(portalGroup.MasterPortalId); foreach (UserInfo user in users) { userNo += 1; //move user to master portal UserController.CopyUserToPortal(user, masterPortal, true, true); OnUserAddedToSiteGroup(callback, portal, user, totalUsers, userNo); } } if (masterUsers.Count > 0) { var autoAssignRoles = TestableRoleController.Instance.GetRoles(portal.PortalID, role => role.AutoAssignment && role.Status == RoleStatus.Approved); foreach (UserInfo user in masterUsers) { userNo += 1; foreach (var autoAssignRole in autoAssignRoles) { var roleController = new RoleController(); roleController.AddUserRole(portalGroup.MasterPortalId, user.UserID, autoAssignRole.RoleID, Null.NullDate, Null.NullDate); } OnUserAddedToSiteGroup(callback, portal, user, totalUsers, userNo); } } OnAddPortalToGroupFinishing(callback, portal, users.Count); RemoveProfileDefinitions(portal); //Add portal to group portal.PortalGroupID = portalGroup.PortalGroupId; _portalController.UpdatePortalInfo(portal); OnAddPortalToGroupFinished(callback, portal, portalGroup, users.Count); }
/// ----------------------------------------------------------------------------- /// <summary> /// cmdAdd_Click runs when the Update Button is clicked /// </summary> /// <remarks> /// </remarks> /// <history> /// [cnurse] 9/10/2004 Updated to reflect design changes for Help, 508 support /// and localisation /// </history> /// ----------------------------------------------------------------------------- private void cmdAdd_Click(Object sender, EventArgs e) { if (PortalSecurity.IsInRole(PortalSettings.AdministratorRoleName) == false) { return; } try { if (Page.IsValid) { if ((Role != null) && (User != null)) { //do not modify the portal Administrator account dates if (User.UserID == PortalSettings.AdministratorId && Role.RoleID == PortalSettings.AdministratorRoleId) { effectiveDatePicker.SelectedDate = null; expiryDatePicker.SelectedDate = null; } DateTime datEffectiveDate; if (effectiveDatePicker.SelectedDate != null) { datEffectiveDate = effectiveDatePicker.SelectedDate.Value; } else { datEffectiveDate = Null.NullDate; } DateTime datExpiryDate; if (expiryDatePicker.SelectedDate != null) { datExpiryDate = expiryDatePicker.SelectedDate.Value; } else { datExpiryDate = Null.NullDate; } //Add User to Role var isOwner = false; if (((Role.SecurityMode == SecurityMode.SocialGroup) || (Role.SecurityMode == SecurityMode.Both))) { isOwner = chkIsOwner.Checked; } RoleController.AddUserRole(User, Role, PortalSettings, RoleStatus.Approved, datEffectiveDate, datExpiryDate, chkNotify.Checked, isOwner); chkIsOwner.Checked = false; //reset the checkbox } } BindGrid(); } catch (Exception exc) //Module failed to load { Exceptions.ProcessModuleLoadException(this, exc); } }
protected void cmdNewUser_Click(object sender, EventArgs e) { if (lblUserNameConfirm.Text.ToLower() == txtUserName2Repeat.Text.ToLower()) { _userName = txtUserName2Repeat.Text; UserInfo user = new UserInfo(); user.Username = _userName; user.FirstName = ""; user.LastName = ""; user.PortalID = PortalId; user.Email = _userName; user.DisplayName = _userName; user.Membership.Password = UserController.GeneratePassword(10); user.IsSuperUser = false; user.Profile.PreferredLocale = PortalSettings.DefaultLanguage; user.Profile.TimeZone = PortalSettings.TimeZoneOffset; user.Profile.FirstName = user.FirstName; user.Profile.LastName = user.LastName; UserCreateStatus status = MembershipProvider.Instance().CreateUser(ref user); if (status == UserCreateStatus.Success) { // Add User to Standard Roles RoleController roleController = new RoleController(); RoleInfo role = new RoleInfo(); ArrayList roles = roleController.GetPortalRoles(PortalId); for (int i = 0; i < roles.Count - 1; i++) { role = (RoleInfo)roles[i]; if (role.AutoAssignment == true) { roleController.AddUserRole(PortalId, user.UserID, role.RoleID, Null.NullDate, Null.NullDate); } } // Log new user in and create a new customer + add him to cart UserController.UserLogin(PortalId, user, PortalSettings.PortalName, Request.UserHostAddress, false); int customerId = Controller.NewCustomer(new CustomerInfo(user.UserID, PortalId, _userName)); Controller.UpdateCartCustomerId(this.MainControl.CartId, customerId); Mail.SendMail(user, MessageType.UserRegistrationVerified, PortalSettings); Response.Redirect(Request.QueryString["returnUrl"]); } } else { divMessages.Attributes.Add("class", "dnnFormMessage dnnFormWarning"); string loginUrl = Globals.NavigateURL(TabId, "", "ctl=Login"); lblIntro.Text = String.Format(Localization.GetString("DifferentUserNames.Text", this.LocalResourceFile)); txtUserName.Text = ""; pnlUser.Visible = true; pnlCheckUser.Visible = true; pnlPassword.Visible = false; pnlConfirmUser.Visible = false; } }
private string UpdateRoles(UserInfo objUser, DataRow dr) { RoleController objRoleController = new RoleController(); bool ByID = false; string Roles = ""; switch (rblImportRoles.SelectedValue) { case "0": return(""); case "1": ByID = true; Roles = (string)dr["RoleIDs"]; break; case "2": Roles = (string)dr["Roles"]; break; } StringBuilder sb = new StringBuilder(); foreach (string Role in Roles.Split(new char[] { ',' })) { if (Role.Trim() == "") { continue; } RoleInfo objRole = null; if (ByID) { int RoleID = -1; if (Int32.TryParse(Role, out RoleID)) { objRole = objRoleController.GetRole(RoleID, this.PortalId); } } else { objRole = objRoleController.GetRoleByName(this.PortalId, Role); } if (objRole != null) { objRoleController.AddUserRole(this.PortalId, objUser.UserID, objRole.RoleID, Null.NullDate); } else { sb.AppendFormat( ByID ? Localization.GetString("RoleIDNotFound", this.LocalResourceFile) : Localization.GetString("RoleNameNotFound", this.LocalResourceFile), Role); } } return(sb.ToString()); }
public ActionResult AdminPanel() { bool mustRedirect = false; string newUrl = string.Empty; if (PortalSettings.EnablePopUps) { if (Request.QueryString["popUp"] == null || Request.QueryString["popUp"] != "true" || Request.Url.Query.IndexOf("popUp") == -1) { mustRedirect = true; newUrl = ModuleContext.EditUrl("popUp", "true", "AdminPanel", "controller", "AdminPanel", "action", "AdminPanel"); } } else { if (Request.QueryString["SkinSrc"] == null) { mustRedirect = true; newUrl = ModuleContext.EditUrl("", "", "AdminPanel", "controller", "AdminPanel", "action", "AdminPanel", "SkinSrc=[G]Skins%2f_default%2fNo+Skin&ContainerSrc=[G]Containers%2f_default%2fNo+Container"); } } if (!User.IsInRole("MyDnnSupportAgent")) { //add agent role to current user var role = RoleController.Instance.GetRoleByName(PortalSettings.PortalId, "MyDnnSupportAgent"); RoleController.AddUserRole(User, role, PortalSettings, DotNetNuke.Security.Roles.RoleStatus.Approved, Null.NullDate, Null.NullDate, true, false); } var model = new ModuleConfigStatusViewModel(); model.VisitorsOnlineEnabled = bool.Parse(PortalController.GetPortalSetting("MyDnnVisitorsOnlineEnabled", PortalSettings.PortalId, "false"));; model.LiveChatEnabled = bool.Parse(PortalController.GetPortalSetting("MyDnnLiveChatEnabled", PortalSettings.PortalId, "false"));; var moduleID = int.Parse(PortalController.GetPortalSetting("MyDnnLiveChatModuleID", PortalSettings.PortalId, "-1")); if (moduleID != -1) { var objModuleInfo = new ModuleController().GetModule(moduleID); var Settings = objModuleInfo.ModuleSettings; model.ModuleID = objModuleInfo.ModuleID; model.TabID = objModuleInfo.TabID; model.BasicSettingsUpdated = Settings["UpdateBasicSettings"] != null?bool.Parse(Settings["UpdateBasicSettings"].ToString()) : false; model.WidgetSettingsUpdated = Settings["UpdateWidgetSettings"] != null?bool.Parse(Settings["UpdateWidgetSettings"].ToString()) : false;; } if (mustRedirect) { return(Redirect(newUrl)); } else { return(View(model)); } }
public HttpResponseMessage JoinGroup(RoleDTO postData) { try { if (UserInfo.UserID >= 0 && postData.RoleId > 0) { var roleController = new RoleController(); _roleInfo = roleController.GetRole(postData.RoleId, PortalSettings.PortalId); if (_roleInfo != null) { var requireApproval = false; if (_roleInfo.Settings.ContainsKey("ReviewMembers")) { requireApproval = Convert.ToBoolean(_roleInfo.Settings["ReviewMembers"]); } if ((_roleInfo.IsPublic || UserInfo.IsInRole(PortalSettings.AdministratorRoleName)) && !requireApproval) { roleController.AddUserRole(PortalSettings.PortalId, UserInfo.UserID, _roleInfo.RoleID, Null.NullDate); roleController.UpdateRole(_roleInfo); var url = Globals.NavigateURL(postData.GroupViewTabId, "", new[] { "groupid=" + _roleInfo.RoleID }); return(Request.CreateResponse(HttpStatusCode.OK, new { Result = "success", URL = url })); } if (_roleInfo.IsPublic && requireApproval) { roleController.AddUserRole(PortalSettings.PortalId, UserInfo.UserID, _roleInfo.RoleID, RoleStatus.Pending, false, Null.NullDate, Null.NullDate); var notifications = new Notifications(); notifications.AddGroupOwnerNotification(Constants.MemberPendingNotification, _tabId, _moduleId, _roleInfo, UserInfo); return(Request.CreateResponse(HttpStatusCode.OK, new { Result = "success", URL = string.Empty })); } } } } catch (Exception exc) { Logger.Error(exc); return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exc)); } return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Unknown Error")); }
private void AssignToGuestRole(CustomerAccount n) { try { var roleCtl = new RoleController(); var portalId = PortalSettings.Current.PortalId; var ui = UserController.GetUserById(portalId, Convert.ToInt32(n.Bvin)); var gRole = roleCtl.GetRoleByName(portalId, GUEST_ROLENAME); if (gRole == null) { gRole = new RoleInfo(); gRole.PortalID = portalId; gRole.RoleName = GUEST_ROLENAME; gRole.IsPublic = false; //Null.NullInteger is giving error in Evoq. Needs to be -1 gRole.RoleGroupID = -1; //Null.NullInteger; Default value as per DNN EditRole.ascx.cs BindGroups() gRole.Status = RoleStatus.Approved; //Need Auto assignment (Not Null in DNN Role table) gRole.AutoAssignment = false; //Need Security Mode (Not Null in DNN Role table) gRole.SecurityMode = SecurityMode.SecurityRole; //Need IsSystemRole (Not Null in DNN Role table) gRole.IsSystemRole = false; //Even if this property are Nullable in DNN Role Table , DNN Store Procedure: AddRole() expects them as non nullable. // Set them with default values. Reference DNN: EditRoles.ascx.cs (Line 382: OnUpdateClick()) gRole.Description = string.Empty; gRole.ServiceFee = 0; //Required value 0 if BillingFrequency is 'N' gRole.BillingPeriod = -1; gRole.BillingFrequency = "N"; //Default in EditRole.ascx.cs gRole.TrialPeriod = -1; gRole.TrialFrequency = "N"; //Default in EditRole.ascx.cs gRole.TrialFee = 0; gRole.IconFile = string.Empty; gRole.RSVPCode = string.Empty; gRole.RoleID = roleCtl.AddRole(gRole); } roleCtl.AddUserRole(portalId, ui.UserID, gRole.RoleID, Null.NullDate, Null.NullDate); } catch (Exception ex) { LogError(ex); EventLog.LogEvent(ex); } }
/// <summary> /// Adds information to the current user. Add the user the following roles: Registered Users and NexsoUser /// </summary> /// <param name="user"></param> /// <returns></returns> private int SaveProfile(UserProperty user) { try { user.FirstName = ValidateSecurity.ValidateString(txtFirstName.Text, false); user.LastName = ValidateSecurity.ValidateString(txtLastName.Text, false); user.Address = CountryStateCityEditMode.SelectedAddress; user.City = CountryStateCityEditMode.SelectedCity; user.Region = CountryStateCityEditMode.SelectedState; user.Country = CountryStateCityEditMode.SelectedCountry; user.PostalCode = CountryStateCityEditMode.SelectedPostalCode; user.Longitude = CountryStateCityEditMode.SelectedLongitude; user.Latitude = CountryStateCityEditMode.SelectedLatitude; user.email = ValidateSecurity.ValidateString(txtEmail.Text, false); //user.Telephone = txtPhone.Text; //user.SkypeName = txtSkype.Text; //user.Twitter = txtTwitter.Text; //user.FaceBook = txtFacebook.Text; //user.Google = txtGoogle.Text; //user.LinkedIn = txtLinkedIn.Text; user.Agreement = "A001"; //user.CustomerType = Convert.ToInt32(ddWhoareYou.SelectedValue); //user.NexsoEnrolment = Convert.ToInt32(ddSource.SelectedValue); //user.Language = Convert.ToInt32(ddLanguage.SelectedValue); //user.AllowNexsoNotifications = Convert.ToInt32(chkNotifications.Checked); if (currentUser != null) { UserInfo myDnnUser = currentUser; if (!myDnnUser.IsInRole("Registered Users")) { var oDnnRoleController = new RoleController(); RoleInfo oCurrentRole = oDnnRoleController.GetRoleByName(this.PortalId, "Registered Users"); oDnnRoleController.AddUserRole(this.PortalId, myDnnUser.UserID, oCurrentRole.RoleID, System.DateTime.Now.AddDays(-1), DotNetNuke.Common.Utilities.Null.NullDate); } if (!myDnnUser.IsInRole("NexsoUser")) { var oDnnRoleController = new RoleController(); RoleInfo oCurrentRole = oDnnRoleController.GetRoleByName(this.PortalId, "NexsoUser"); oDnnRoleController.AddUserRole(this.PortalId, myDnnUser.UserID, oCurrentRole.RoleID, System.DateTime.Now.AddDays(-1), DotNetNuke.Common.Utilities.Null.NullDate); } } } catch (Exception exc) //Module failed to load { Exceptions. ProcessModuleLoadException( this, exc); } return(0); }
private void GivenThereIsAUserWithThisRole(string userName, string password, string roleName) { var reset = false; var isSuperUser = roleName == "Super User"; var portalId = PortalId; var user = UserController.GetUserByName(PortalId, userName); if (user == null) { user = new UserInfo { PortalID = PortalId, Username = userName, IsSuperUser = isSuperUser, Email = string.Format("{0}@dnn.com", userName), FirstName = string.Format("{0} FN", userName), LastName = string.Format("{0} LN", userName), DisplayName = string.Format("{0} DN", userName), Membership = { Password = password } }; var res = UserController.CreateUser(ref user); reset = true; } else if (user.IsDeleted) { UserController.RestoreUser(ref user); reset = true; } user.Membership.Password = password; if (!isSuperUser) { var roles = user.Roles.Where(r => r == roleName); if (!roles.Any()) { var roleController = new RoleController(); var role = roleController.GetRoleByName(PortalId, roleName); if (role == null) { role = new RoleInfo { RoleName = roleName, PortalID = PortalId, RoleGroupID = -1 }; role.RoleID = roleController.AddRole(role); } RoleController.AddUserRole(user, role, PortalSettings.Current, RoleStatus.Approved, DateTime.Now, Null.NullDate, false, false); reset = true; } } User = user; if (reset) { Config.Touch(); } }
public void AddUserToPaidOrderRole(Int32 portalID, int userID, int roleID) { if (userID != Null.NullInteger && roleID != Null.NullInteger) { RoleController roleController = new RoleController(); RoleInfo role = roleController.GetRoleById(portalID, roleID); if (role != null) { roleController.AddUserRole(portalID, userID, roleID, DateTime.Now, Null.NullDate); } } }
protected void btnSaveUserPermissions_Click(object sender, EventArgs e) { AdminController aCont = new AdminController(); int thisUserId = -1; if (ddlUsers.SelectedIndex > 0) { //save roles RoleController rCont = new RoleController(); IList <RoleInfo> roles = rCont.GetRoles(PortalId); thisUserId = Convert.ToInt32(ddlUsers.SelectedValue); UserInfo thisUser = UserController.GetUserById(PortalId, thisUserId); foreach (ListItem li in lbxUserRoles.Items) { RoleInfo rInfo = rCont.GetRoleByName(PortalId, li.Text); if (rInfo != null) { if (li.Selected) { rCont.AddUserRole(PortalId, thisUserId, rInfo.RoleID, DateTime.MinValue, DateTime.MaxValue); } else { rCont.DeleteUserRole(PortalId, thisUserId, rInfo.RoleID); } } } //save agencies //first delete all agencies for this user aCont.Delete_UserInAgencies(thisUserId); //now add them back in foreach (ListItem li in lbxUserAgencies.Items) { if (li.Selected) { aCont.Add_UserInAgency(thisUserId, Convert.ToInt32(li.Value)); } } //save advertisers //first, delete all advertisers for this user aCont.Delete_UserInAdvertisers(thisUserId); //now add them back in foreach (ListItem li in lbxUserAdvertisers.Items) { if (li.Selected) { aCont.Add_UserInAdvertiser(thisUserId, Convert.ToInt32(li.Value)); } } lblUserMessage.Text = "Permissions updated for this user."; } }
public UserRoleDto SaveUserRole(int portalId, UserInfo currentUserInfo, UserRoleDto userRoleDto, bool notifyUser, bool isOwner) { PortalSettings portalSettings = this.PortalSettings; if (this.PortalSettings.PortalId != portalId) { portalSettings = this.GetPortalSettings(portalId); } if (!UserRoleDto.AllowExpiredRole(portalSettings, userRoleDto.UserId, userRoleDto.RoleId)) { userRoleDto.StartTime = userRoleDto.ExpiresTime = Null.NullDate; } var user = UserController.Instance.GetUserById(portalId, userRoleDto.UserId); var role = RoleController.Instance.GetRoleById(portalId, userRoleDto.RoleId); if (role == null || role.Status != RoleStatus.Approved) { throw new Exception(Localization.GetString("RoleIsNotApproved", Constants.LocalResourcesFile)); } if (currentUserInfo.IsSuperUser || currentUserInfo.Roles.Contains(portalSettings.AdministratorRoleName) || (!currentUserInfo.IsSuperUser && !currentUserInfo.Roles.Contains(portalSettings.AdministratorRoleName) && role.RoleType != RoleType.Administrator)) { if (role.SecurityMode != SecurityMode.SocialGroup && role.SecurityMode != SecurityMode.Both) { isOwner = false; } RoleController.AddUserRole(user, role, portalSettings, RoleStatus.Approved, userRoleDto.StartTime, userRoleDto.ExpiresTime, notifyUser, isOwner); var addedRole = RoleController.Instance.GetUserRole(portalId, userRoleDto.UserId, userRoleDto.RoleId); return(new UserRoleDto { UserId = addedRole.UserID, RoleId = addedRole.RoleID, DisplayName = addedRole.FullName, RoleName = addedRole.RoleName, StartTime = addedRole.EffectiveDate, ExpiresTime = addedRole.ExpiryDate, AllowExpired = UserRoleDto.AllowExpiredRole(portalSettings, user.UserID, role.RoleID), AllowDelete = RoleController.CanRemoveUserFromRole(portalSettings, user.UserID, role.RoleID) }); } throw new Exception(Localization.GetString("InSufficientPermissions", Constants.LocalResourcesFile)); }
/// ----------------------------------------------------------------------------- /// <summary> /// cmdAdd_Click runs when the Update Button is clicked /// </summary> /// <remarks> /// </remarks> /// <history> /// [cnurse] 9/10/2004 Updated to reflect design changes for Help, 508 support /// and localisation /// </history> /// ----------------------------------------------------------------------------- private void cmdAdd_Click(Object sender, EventArgs e) { if (PortalSecurity.IsInRole(PortalSettings.AdministratorRoleName) == false) { return; } try { if (Page.IsValid) { if ((Role != null) && (User != null)) { //do not modify the portal Administrator account dates if (User.UserID == PortalSettings.AdministratorId && Role.RoleID == PortalSettings.AdministratorRoleId) { effectiveDatePicker.SelectedDate = null; expiryDatePicker.SelectedDate = null; } DateTime datEffectiveDate; if (effectiveDatePicker.SelectedDate != null) { datEffectiveDate = effectiveDatePicker.SelectedDate.Value; } else { datEffectiveDate = Null.NullDate; } DateTime datExpiryDate; if (expiryDatePicker.SelectedDate != null) { datExpiryDate = expiryDatePicker.SelectedDate.Value; } else { datExpiryDate = Null.NullDate; } //Add User to Role RoleController.AddUserRole(User, Role, PortalSettings, datEffectiveDate, datExpiryDate, UserId, chkNotify.Checked); } } BindGrid(); } catch (Exception exc) //Module failed to load { Exceptions.ProcessModuleLoadException(this, exc); } }
public bool addRoleToUser(UserInfo user, string roleName, DateTime expiry) { var rc = false; var roleCtl = new RoleController(); RoleInfo newRole = roleCtl.GetRoleByName(user.PortalID, roleName); if (newRole != null && user != null) { rc = user.IsInRole(roleName); roleCtl.AddUserRole(user.PortalID, user.UserID, newRole.RoleID, DateTime.MinValue, expiry); // Refresh user and check if role was added user = DotNetNuke.Entities.Users.UserController.GetUserById(user.PortalID, user.UserID); rc = user.IsInRole(roleName); } return(rc); }
/// ----------------------------------------------------------------------------- /// <summary> /// cmdAdd_Click runs when the Update Button is clicked /// </summary> /// <remarks> /// </remarks> /// <history> /// [cnurse] 9/10/2004 Updated to reflect design changes for Help, 508 support /// and localisation /// </history> /// ----------------------------------------------------------------------------- private void cmdAdd_Click(Object sender, EventArgs e) { try { if (Page.IsValid) { if ((Role != null) && (User != null)) { //do not modify the portal Administrator account dates if (User.UserID == PortalSettings.AdministratorId && Role.RoleID == PortalSettings.AdministratorRoleId) { txtEffectiveDate.Text = ""; txtExpiryDate.Text = ""; } DateTime datEffectiveDate; if (!String.IsNullOrEmpty(txtEffectiveDate.Text)) { datEffectiveDate = DateTime.Parse(txtEffectiveDate.Text); } else { datEffectiveDate = Null.NullDate; } DateTime datExpiryDate; if (!String.IsNullOrEmpty(txtExpiryDate.Text)) { datExpiryDate = DateTime.Parse(txtExpiryDate.Text); } else { datExpiryDate = Null.NullDate; } //Add User to Role RoleController.AddUserRole(User, Role, PortalSettings, datEffectiveDate, datExpiryDate, UserId, chkNotify.Checked); } } BindGrid(); } catch (Exception exc) //Module failed to load { Exceptions.ProcessModuleLoadException(this, exc); } }
public void Seed() { if (userRepository.Exists(u => u.Email == "*****@*****.**")) { return; } Role admin = roleRepository.First(r => r.Name == "ADMIN"); AddUserModel model = new AddUserModel { Email = "*****@*****.**", Name = "Chendjou", Surname = "Caleb", Password = "******" }; User user = userController.Create(model); roleController.AddUserRole(admin, user); }
private void CreateUser(string email, string firstname, string lastname, string phoneNumber) { var mp = new AspNetMembershipProvider(); var userInfo = new UserInfo(); userInfo.Username = email; //set auto generated password userInfo.Membership.Password = mp.GeneratePassword(); userInfo.Email = email; userInfo.FirstName = firstname; userInfo.LastName = lastname; userInfo.Username = email; userInfo.DisplayName = firstname + ' ' + lastname; userInfo.PortalID = 0; //TODO: hard coded for PortalID var createStatus = mp.CreateUser(ref userInfo); if (createStatus == UserCreateStatus.InvalidPassword) { throw new Exception("Invalid password"); } //save back to table with IsVerified set if (createStatus == UserCreateStatus.Success) { var roleName = "Registered Users"; bool bc = false; var rc = new RoleController(); RoleInfo newRole = rc.GetRoleByName(userInfo.PortalID, roleName); if (newRole != null && userInfo != null) { bc = userInfo.IsInRole(roleName); rc.AddUserRole(userInfo.PortalID, userInfo.UserID, newRole.RoleID, DateTime.MinValue, DateTime.MaxValue); userInfo = UserController.GetUserById(userInfo.PortalID, userInfo.UserID); bc = userInfo.IsInRole(roleName); } } }
public HttpResponseMessage Add(int id, [FromBody] AddRemoveUserDTO data) { var uc = new RoleController(); if (uc.GetUserRole(ActiveModule.PortalID, data.UserId, id) != null) { return(Request.CreateResponse(HttpStatusCode.OK)); } uc.AddUserRole(ActiveModule.PortalID, data.UserId, id, System.DateTime.MinValue, System.DateTime.MinValue); var u = UserController.GetUserById(ActiveModule.PortalID, data.UserId); var res = new RMUser() { UserId = u.UserID, FirstName = u.FirstName, LastName = u.LastName, DisplayName = u.DisplayName, Email = u.Email }; return(Request.CreateResponse(HttpStatusCode.OK, res)); }
private void AutoAssignUsers(RoleInfo role) { if (role.AutoAssignment) { //loop through users for portal and add to role var arrUsers = UserController.GetUsers(role.PortalID); foreach (UserInfo objUser in arrUsers) { try { var legacyRoleController = new RoleController(); legacyRoleController.AddUserRole(role.PortalID, objUser.UserID, role.RoleID, Null.NullDate, Null.NullDate); } catch (Exception exc) { //user already belongs to role DnnLog.Error(exc); } } } }
public void AddUserRole(int portalId, int userId, string roleName) { var ctl = new RoleController(); var role = ctl.GetRoleByName(portalId, roleName); if (role == null) { role = new RoleInfo { PortalID = portalId, RoleGroupID = Null.NullInteger, RoleName = roleName }; role.RoleID = ctl.AddRole(role); } if (ctl.GetUserRole(portalId, userId, role.RoleID) == null) { ctl.AddUserRole(portalId, userId, role.RoleID, Null.NullDate, Null.NullDate); } }
private void AutoAssignUsers(RoleInfo role) { if (role.AutoAssignment) { //loop through users for portal and add to role var arrUsers = UserController.GetUsers(role.PortalID); foreach (UserInfo objUser in arrUsers) { try { var legacyRoleController = new RoleController(); legacyRoleController.AddUserRole(role.PortalID, objUser.UserID, role.RoleID, Null.NullDate, Null.NullDate); } catch (Exception exc) { //user already belongs to role Logger.Error(exc); } } } }
public static void AddToRoles(int UserId, int PortalId, string RoleNames, string RoleDelimiter = ",", DateTime?EffectiveDate = null, DateTime?ExpiryDate = null) { DateTime effDate = EffectiveDate.GetValueOrDefault(Null.NullDate); DateTime expDate = ExpiryDate.GetValueOrDefault(Null.NullDate); // get the specified RoleName RoleController rc = new RoleController(); string[] lstRoles = RoleNames.Split(RoleDelimiter.ToCharArray()); RoleInfo role = default(RoleInfo); string curRole = null; for (int i = 0; i <= lstRoles.Length - 1; i++) { curRole = lstRoles[i].Trim(); role = rc.GetRoleByName(PortalId, curRole); if ((role != null)) { rc.AddUserRole(PortalId, UserId, role.RoleID, effDate, expDate); } } }
public HttpResponseMessage Roles_AddRemove(int userid, string role, string mode) { int v_Current_Portal_ID = this.ActiveModule.PortalID; //Getting user info DotNetNuke.Entities.Users.UserInfo v_UserInfo = DotNetNuke.Entities.Users.UserController.GetUserById(v_Current_Portal_ID, userid); if (v_UserInfo != null) { RoleController v_RoleController = new RoleController(); RoleInfo v_RoleInfo = v_RoleController.GetRoleByName(v_Current_Portal_ID, role); if (v_RoleInfo != null) { if (v_UserInfo.IsInRole(v_RoleInfo.RoleName) && mode == "remove") { RoleController.DeleteUserRole(v_UserInfo, v_RoleInfo, this.PortalSettings, false); return(Request.CreateResponse(HttpStatusCode.OK, "ok role removed")); } if (v_UserInfo.IsInRole(v_RoleInfo.RoleName) == false && mode == "add") { v_RoleController.AddUserRole(v_Current_Portal_ID, userid, v_RoleInfo.RoleID, DateTime.MinValue); return(Request.CreateResponse(HttpStatusCode.OK, "ok role added")); } } else { return(Request.CreateResponse(HttpStatusCode.InternalServerError, "No such role with that RoleName")); } } else { return(Request.CreateResponse(HttpStatusCode.InternalServerError, "No such user with that Id")); } return(Request.CreateResponse(HttpStatusCode.OK, "ok")); }
/// <summary> /// </summary> /// <remarks> /// This routine is more accurated, /// Prevent user assign to admin role in case user logon as LOCAL\Administrator /// </remarks> public static void AddUserRoles(int PortalID, UserInfo AuthenticationUser) { GroupController objGroupController = new GroupController(); ArrayList colGroup = objGroupController.GetGroups(); RoleController objRoles = new RoleController(); GroupInfo authenticationGroup; try { foreach (GroupInfo tempLoopVar_authenticationGroup in colGroup) { authenticationGroup = tempLoopVar_authenticationGroup; if (objGroupController.IsAuthenticationMember(authenticationGroup, AuthenticationUser)) { objRoles.AddUserRole(PortalID, AuthenticationUser.UserID, authenticationGroup.RoleID, Null.NullDate, Null.NullDate); } } } catch (Exception exc) { Exceptions.LogException(exc); } }
/// <summary> /// Creates a new User in the Data Store /// </summary> /// <remarks></remarks> /// <param name="objUser">The userInfo object to persist to the Database</param> /// <returns>The Created status ot the User</returns> public static UserCreateStatus CreateUser(ref UserInfo objUser) { //Create the User UserCreateStatus createStatus = memberProvider.CreateUser(ref objUser); if (createStatus == UserCreateStatus.Success && !objUser.IsSuperUser) { RoleController objRoles = new RoleController(); // autoassign user to portal roles ArrayList arrRoles = objRoles.GetPortalRoles(objUser.PortalID); for (int i = 0; i < arrRoles.Count; i++) { RoleInfo objRole = (RoleInfo)arrRoles[i]; if (objRole.AutoAssignment) { objRoles.AddUserRole(objUser.PortalID, objUser.UserID, objRole.RoleID, Null.NullDate, Null.NullDate); } } } return(createStatus); }
public string AddGroupMember(string groupname, string username) { // empty groupname or username if (string.IsNullOrEmpty(groupname) || string.IsNullOrEmpty(username)) { return("error: empty groupname or username"); } groupname = groupname.Trim(); username = username.Trim(); // get user by username UserInfo user = _GetUserByUserName(username); if (user == null) { // user do not exists return("error: user do not exists"); } // get group by group name RoleInfo group = _GetDnnRole(groupname); if (group == null) { // group do not exists return("error: group do not exists");; } // add user to group RoleController RoleController = new RoleController(); RoleController.AddUserRole(Dnn.Portal.PortalId, user.UserID, group.RoleID, Null.NullDate, Null.NullDate); return("user " + username + " is in group " + groupname); }
private void Create_Click(object sender, EventArgs e) { RoleController roleController = new RoleController(); Security.PortalSecurity ps = new Security.PortalSecurity(); txtGroupName.Text = ps.InputFilter(txtGroupName.Text, Security.PortalSecurity.FilterFlag.NoScripting); txtGroupName.Text = ps.InputFilter(txtGroupName.Text, Security.PortalSecurity.FilterFlag.NoMarkup); txtDescription.Text = ps.InputFilter(txtDescription.Text, Security.PortalSecurity.FilterFlag.NoScripting); txtDescription.Text = ps.InputFilter(txtDescription.Text, Security.PortalSecurity.FilterFlag.NoMarkup); if (roleController.GetRoleByName(PortalId, txtGroupName.Text) != null) { lblInvalidGroupName.Visible = true; return; } var modRoles = new List <RoleInfo>(); var modUsers = new List <UserInfo>(); foreach (ModulePermissionInfo modulePermissionInfo in ModulePermissionController.GetModulePermissions(ModuleId, TabId)) { if (modulePermissionInfo.PermissionKey == "MODGROUP" && modulePermissionInfo.AllowAccess) { if (modulePermissionInfo.RoleID > int.Parse(Globals.glbRoleNothing)) { modRoles.Add(roleController.GetRole(modulePermissionInfo.RoleID, PortalId)); } else if (modulePermissionInfo.UserID > Null.NullInteger) { modUsers.Add(UserController.GetUserById(PortalId, modulePermissionInfo.UserID)); } } } var roleInfo = new RoleInfo() { PortalID = PortalId, RoleName = txtGroupName.Text, Description = txtDescription.Text, SecurityMode = SecurityMode.SocialGroup, Status = RoleStatus.Approved, IsPublic = rdAccessTypePublic.Checked }; var userRoleStatus = RoleStatus.Pending; if (GroupModerationEnabled) { roleInfo.Status = RoleStatus.Pending; userRoleStatus = RoleStatus.Pending; } else { userRoleStatus = RoleStatus.Approved; } var objModulePermissions = new ModulePermissionCollection(CBO.FillCollection(DataProvider.Instance().GetModulePermissionsByModuleID(ModuleId, -1), typeof(ModulePermissionInfo))); if (ModulePermissionController.HasModulePermission(objModulePermissions, "MODGROUP")) { roleInfo.Status = RoleStatus.Approved; userRoleStatus = RoleStatus.Approved; } roleInfo.RoleGroupID = DefaultRoleGroupId; roleInfo.RoleID = roleController.AddRole(roleInfo); roleInfo = roleController.GetRole(roleInfo.RoleID, PortalId); var groupUrl = Globals.NavigateURL(GroupViewTabId, "", new String[] { "groupid=" + roleInfo.RoleID.ToString() }); if (groupUrl.StartsWith("http://") || groupUrl.StartsWith("https://")) { const int startIndex = 8; // length of https:// groupUrl = groupUrl.Substring(groupUrl.IndexOf("/", startIndex, StringComparison.InvariantCultureIgnoreCase)); } roleInfo.Settings.Add("URL", groupUrl); roleInfo.Settings.Add("GroupCreatorName", UserInfo.DisplayName); roleInfo.Settings.Add("ReviewMembers", chkMemberApproved.Checked.ToString()); TestableRoleController.Instance.UpdateRoleSettings(roleInfo, true); if (inpFile.PostedFile != null && inpFile.PostedFile.ContentLength > 0) { IFileManager _fileManager = FileManager.Instance; IFolderManager _folderManager = FolderManager.Instance; var rootFolderPath = PathUtils.Instance.FormatFolderPath(PortalSettings.HomeDirectory); IFolderInfo groupFolder = _folderManager.GetFolder(PortalSettings.PortalId, "Groups/" + roleInfo.RoleID); if (groupFolder == null) { groupFolder = _folderManager.AddFolder(PortalSettings.PortalId, "Groups/" + roleInfo.RoleID); } if (groupFolder != null) { var fileName = Path.GetFileName(inpFile.PostedFile.FileName); var fileInfo = _fileManager.AddFile(groupFolder, fileName, inpFile.PostedFile.InputStream, true); roleInfo.IconFile = "FileID=" + fileInfo.FileId; roleController.UpdateRole(roleInfo); } } var notifications = new Notifications(); roleController.AddUserRole(PortalId, UserId, roleInfo.RoleID, userRoleStatus, true, Null.NullDate, Null.NullDate); if (roleInfo.Status == RoleStatus.Pending) { //Send notification to Group Moderators to approve/reject group. notifications.AddGroupNotification(Constants.GroupPendingNotification, GroupViewTabId, ModuleId, roleInfo, UserInfo, modRoles, modUsers); } else { //Send notification to Group Moderators informing of new group. notifications.AddGroupNotification(Constants.GroupCreatedNotification, GroupViewTabId, ModuleId, roleInfo, UserInfo, modRoles, modUsers); //Add entry to journal. GroupUtilities.CreateJournalEntry(roleInfo, UserInfo); } Response.Redirect(Globals.NavigateURL(GroupViewTabId, "", new String[] { "groupid=" + roleInfo.RoleID.ToString() })); }
public HttpResponseMessage AddUserToRole(UserRoleDto userRoleDto, bool notifyUser, bool isOwner) { try { Validate(userRoleDto); if (!AllowExpired(userRoleDto.UserId, userRoleDto.RoleId)) { userRoleDto.StartTime = userRoleDto.ExpiresTime = Null.NullDate; } HttpResponseMessage response; var user = GetUser(userRoleDto.UserId, out response); if (user == null) { return(response); } var role = RoleController.Instance.GetRoleById(PortalId, userRoleDto.RoleId); if (role.SecurityMode != SecurityMode.SocialGroup && role.SecurityMode != SecurityMode.Both) { isOwner = false; } if (role.Status != RoleStatus.Approved) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, Localization.GetString("CannotAssginUserToUnApprovedRole", Components.Constants.LocalResourcesFile))); } RoleController.AddUserRole(user, role, PortalSettings, RoleStatus.Approved, userRoleDto.StartTime, userRoleDto.ExpiresTime, notifyUser, isOwner); var addedUser = RoleController.Instance.GetUserRole(PortalId, userRoleDto.UserId, userRoleDto.RoleId); var portal = PortalController.Instance.GetPortal(PortalId); return(Request.CreateResponse(HttpStatusCode.OK, new UserRoleDto { UserId = addedUser.UserID, RoleId = addedUser.RoleID, DisplayName = addedUser.FullName, StartTime = addedUser.EffectiveDate, ExpiresTime = addedUser.ExpiryDate, AllowExpired = AllowExpired(addedUser.UserID, addedUser.RoleID), AllowDelete = RoleController.CanRemoveUserFromRole(portal, addedUser.UserID, addedUser.RoleID) })); } catch (ArgumentException ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message)); } catch (SecurityException ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message)); } catch (Exception ex) { Logger.Error(ex); return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message)); } }