/// <summary> /// Page_Load event. /// </summary> protected void Page_Load(object sender, EventArgs e) { // If current control context is widget or livesite hide site selector if (ControlsHelper.CheckControlContext(this, ControlContext.WIDGET_PROPERTIES)) { ShowSiteFilter = false; } Reload(false); }
/// <summary> /// Configures the selector. /// </summary> private void SetupSelector() { if (mSetupFinished) { return; } uniSelector.SelectionMode = SelectionMode; uniSelector.AllowEmpty = AllowEmpty; // If current control context is widget or livesite or SingleDropDownList mode hide site selector if (ControlsHelper.CheckControlContext(this, ControlContext.WIDGET_PROPERTIES) || ControlsHelper.CheckControlContext(this, ControlContext.LIVE_SITE) || SelectionMode == SelectionModeEnum.SingleDropDownList) { ShowSiteFilter = false; } uniSelector.IsLiveSite = IsLiveSite; // Return form name or ID according to type of field (if no field specified form name is returned) if ((FieldInfo != null) && DataTypeManager.IsInteger(TypeEnum.Field, FieldInfo.DataType)) { uniSelector.ReturnColumnName = "FormID"; ShowSiteFilter = false; uniSelector.AllowEmpty = true; } else { uniSelector.ReturnColumnName = "FormName"; } // Add sites filter if (ShowSiteFilter) { uniSelector.FilterControl = "~/CMSFormControls/Filters/SiteFilter.ascx"; uniSelector.SetValue("DefaultFilterValue", (SiteID > 0) ? SiteID : SiteContext.CurrentSiteID); uniSelector.SetValue("FilterMode", "bizform"); } // Select bizforms depending on a site if not filtered by uniselector site filter else { int siteId = (SiteID == 0) ? SiteContext.CurrentSiteID : SiteID; uniSelector.WhereCondition = SqlHelper.AddWhereCondition(uniSelector.WhereCondition, "FormSiteID = " + siteId); } mSetupFinished = true; }
protected void Page_Load(object sender, EventArgs e) { if (StopProcessing) { uniSelector.StopProcessing = true; } else { // If current control context is widget or livesite hide site selector if (ControlsHelper.CheckControlContext(this, ControlContext.WIDGET_PROPERTIES) || ControlsHelper.CheckControlContext(this, ControlContext.LIVE_SITE)) { ShowSiteFilter = false; } ReloadData(); } }
protected void SetupControls() { // If current control context is widget or livesite hide site selector if (ControlsHelper.CheckControlContext(this, ControlContext.WIDGET_PROPERTIES) || ControlsHelper.CheckControlContext(this, ControlContext.LIVE_SITE)) { ShowSiteFilter = false; } // Set prefix if not set if (ResourcePrefix == String.Empty) { // Set resource prefix based on mode if ((SelectionMode == SelectionModeEnum.Multiple) || (SelectionMode == SelectionModeEnum.MultipleButton) || (SelectionMode == SelectionModeEnum.MultipleTextBox)) { usUsers.ResourcePrefix = "selectusers"; } } // Add sites filter if (ShowSiteFilter) { usUsers.FilterControl = "~/CMSFormControls/Filters/SiteFilter.ascx"; usUsers.SetValue("DefaultFilterValue", (SiteID > 0) ? SiteID : SiteContext.CurrentSiteID); usUsers.SetValue("FilterMode", "user"); } // Generate WhereCondtion based on SelectUser's properties var usersWhereCondition = new WhereCondition(); var userTypeInfo = ObjectTypeManager.GetTypeInfo(UserInfo.OBJECT_TYPE); // Hide hidden users if (HideHiddenUsers) { var apparentUsersCondition = new WhereCondition().WhereEqualsOrNull("UserIsHidden", 0); usersWhereCondition.And(apparentUsersCondition); } // Hide disabled users if (HideDisabledUsers) { var enabledUsersCondition = new WhereCondition(UserInfoProvider.USER_ENABLED_WHERE_CONDITION); usersWhereCondition.And(enabledUsersCondition); } // Hide non-approved users if (HideNonApprovedUsers) { var approvedUserIDs = UserSettingsInfoProvider .GetUserSettings() .WhereEqualsOrNull("UserWaitingForApproval", 0) .Column("UserSettingsUserID"); var approvedUsersCondition = new WhereCondition().WhereIn(userTypeInfo.IDColumn, approvedUserIDs); usersWhereCondition.And(approvedUsersCondition); } // Select group users if (GroupID > 0) { var groupUserIDs = new ObjectQuery(PredefinedObjectType.GROUPMEMBER) .WhereEquals("MemberGroupID", GroupID) .Column("MemberUserID"); // Hide non-approved group users if (HideNonApprovedUsers) { groupUserIDs.WhereNull("MemberRejectedWhen"); } var usersInGroupCondition = new WhereCondition().WhereIn(userTypeInfo.IDColumn, groupUserIDs); usersWhereCondition.And(usersInGroupCondition); } // Select users in role if (RoleID > 0) { var usersInRoleIDs = UserRoleInfoProvider .GetUserRoles() .WhereEquals("RoleID", RoleID) .Column("UserID"); var usersInRoleCondition = new WhereCondition().WhereIn(userTypeInfo.IDColumn, usersInRoleIDs); usersWhereCondition.And(usersInRoleCondition); } // Select users depending on site; if filter enabled, where condition is added from filter itself if (!ShowSiteFilter && (SiteID >= 0) && !DisplayUsersFromAllSites) { int siteID = (SiteID == 0) ? SiteContext.CurrentSiteID : SiteID; var siteUserIDs = UserSiteInfoProvider .GetUserSites() .WhereEquals("SiteID", siteID) .Column("UserID"); var siteUsersCondition = new WhereCondition().WhereIn(userTypeInfo.IDColumn, siteUserIDs); if (TreatGlobalAdminsAsSiteUsers) { siteUsersCondition.Or(GetPrivilegeLevelCondition()); } usersWhereCondition.And(siteUsersCondition); } if (AlwaysShowGlobalAdministrators) { // New instance has to be created in order to produce brackets usersWhereCondition = new WhereCondition(usersWhereCondition).Or(GetPrivilegeLevelCondition()); } // Add additional users if ((AdditionalUsers != null) && (AdditionalUsers.Length > 0)) { var additionalUsersCondition = new WhereCondition().WhereIn(userTypeInfo.IDColumn, AdditionalUsers); new WhereCondition(usersWhereCondition).Or(additionalUsersCondition); } // Control where condition if (!String.IsNullOrEmpty(WhereCondition)) { usersWhereCondition = new WhereCondition(usersWhereCondition).And(new WhereCondition(WhereCondition)); } // Append generated where condition usUsers.WhereCondition = SqlHelper.AddWhereCondition(usUsers.WhereCondition, usersWhereCondition.ToString(expand: true)); pnlUpdate.ShowProgress = (SelectionMode == SelectionModeEnum.Multiple); }
protected void SetupControls() { usUsers.WhereCondition = null; // If current control context is widget or livesite hide site selector if (ControlsHelper.CheckControlContext(this, ControlContext.WIDGET_PROPERTIES) || ControlsHelper.CheckControlContext(this, ControlContext.LIVE_SITE)) { ShowSiteFilter = false; } // Set prefix if not set if (ResourcePrefix == String.Empty) { // Set resource prefix based on mode if ((SelectionMode == SelectionModeEnum.Multiple) || (SelectionMode == SelectionModeEnum.MultipleButton) || (SelectionMode == SelectionModeEnum.MultipleTextBox)) { usUsers.ResourcePrefix = "selectusers"; } else { usUsers.ResourcePrefix = "selectuser"; } } // Add sites filter if (ShowSiteFilter) { usUsers.FilterControl = "~/CMSFormControls/Filters/SiteFilter.ascx"; usUsers.SetValue("DefaultFilterValue", (SiteID > 0) ? SiteID : CMSContext.CurrentSiteID); usUsers.SetValue("FilterMode", "user"); } // Hide hidden users if (HideHiddenUsers) { const string where = "((UserIsHidden IS NULL) OR (UserIsHidden=0))"; usUsers.WhereCondition = SqlHelperClass.AddWhereCondition(usUsers.WhereCondition, where); } // Hide disabled users if (HideDisabledUsers) { const string where = "((UserEnabled IS NULL) OR (UserEnabled = 1))"; usUsers.WhereCondition = SqlHelperClass.AddWhereCondition(usUsers.WhereCondition, where); } // Hide non-approved users if (HideNonApprovedUsers) { const string where = "UserID IN (SELECT UserSettingsUserID FROM CMS_UserSettings WHERE ((UserWaitingForApproval IS NULL) OR (UserWaitingForApproval = 0)))"; usUsers.WhereCondition = SqlHelperClass.AddWhereCondition(usUsers.WhereCondition, where); } // Select group users if (GroupID > 0) { string where = "UserID IN (SELECT MemberUserID FROM Community_GroupMember WHERE MemberGroupID = " + GroupID + ")"; usUsers.WhereCondition = SqlHelperClass.AddWhereCondition(usUsers.WhereCondition, where); // Hide non-approved group users if (HideNonApprovedUsers) { string whereNonApproved = "UserID IN (SELECT MemberUserID FROM Community_GroupMember WHERE (MemberGroupID = " + GroupID + ") AND (MemberRejectedWhen IS NULL))"; usUsers.WhereCondition = SqlHelperClass.AddWhereCondition(usUsers.WhereCondition, whereNonApproved); } } // Select users in role if (RoleID > 0) { string where = "UserID IN (SELECT UserID FROM CMS_UserRole WHERE RoleID = " + RoleID + ")"; usUsers.WhereCondition = SqlHelperClass.AddWhereCondition(usUsers.WhereCondition, where); } // Select users depending on site; if filter enabled, where condition is added from filter itself if (!ShowSiteFilter && (SiteID >= 0) && !DisplayUsersFromAllSites) { int siteId = (SiteID == 0) ? CMSContext.CurrentSiteID : SiteID; string where = "UserID IN (SELECT UserID FROM CMS_UserSite WHERE SiteID = " + siteId + ")"; if (TreatGlobalAdminsAsSiteUsers) { where = SqlHelperClass.AddWhereCondition(where, "UserIsGlobalAdministrator=1", "OR"); } usUsers.WhereCondition = SqlHelperClass.AddWhereCondition(usUsers.WhereCondition, where); } // Add aditional users if ((AdditionalUsers != null) && (AdditionalUsers.Length > 0)) { usUsers.WhereCondition = SqlHelperClass.AddWhereCondition(usUsers.WhereCondition, SqlHelperClass.GetWhereCondition("UserID", AdditionalUsers), "OR"); } // Control where condition if (!String.IsNullOrEmpty(WhereCondition)) { usUsers.WhereCondition = SqlHelperClass.AddWhereCondition(usUsers.WhereCondition, WhereCondition); } pnlUpdate.ShowProgress = (this.SelectionMode == SelectionModeEnum.Multiple); }