using System; using System.Data; using System.Collections; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using CMS.GlobalHelper; using CMS.UIControls; public partial class CMSModules_Membership_Controls_Roles_Role : CMSAdminEditControl { private int mGroupID = 0; private Guid mGroupGUID = Guid.Empty; #region "Public properties" public int SelectedTab { get { return ValidationHelper.GetInteger(ViewState["selectedtab"], 0); } set { ViewState["selectedtab"] = (object)value; } } public int SiteID { get { return ValidationHelper.GetInteger(ViewState["siteid"], -1); } set { ViewState["siteid"] = (object)value; } } /// /// Gets or sets the community group id. /// public int GroupID { get { return mGroupID; } set { mGroupID = value; } } /// /// Gets or sets the community group GUID. /// public Guid GroupGUID { get { return mGroupGUID; } set { mGroupGUID = value; } } #endregion protected void Page_Load(object sender, EventArgs e) { #region "security" RoleEdit.OnCheckPermissions += new CheckPermissionsEventHandler(RoleEdit_OnCheckPermissions); RoleUsers.OnCheckPermissions += new CheckPermissionsEventHandler(RoleUsers_OnCheckPermissions); #endregion ltlScript.Text = ScriptHelper.GetScript("function UpdateForm(){ " + Page.ClientScript.GetPostBackEventReference(btnUpdate, "") + "; } \n"); // Menu initialization tabMenu.UrlTarget = "_self"; tabMenu.Tabs = new string[2,5]; tabMenu.Tabs[0, 0] = GetString("general.general"); tabMenu.Tabs[1, 0] = GetString("general.users"); tabMenu.UsePostback = true; tabMenu.UseClientScript = true; tabMenu.OnTabClicked += new EventHandler(tabMenu_OnTabChanged); tabMenu.TabControlIdPrefix = ClientID; btnUpdate.Attributes.Add("style", "display:none;"); ReloadData(false); } #region "Security handlers" private void RoleUsers_OnCheckPermissions(string permissionType, CMSAdminControl sender) { RaiseOnCheckPermissions(permissionType, sender); } private void RoleEdit_OnCheckPermissions(string permissionType, CMSAdminControl sender) { RaiseOnCheckPermissions(permissionType, sender); } #endregion /// /// Reloads and displays appropriate controls. /// public override void ReloadData(bool forceReload) { RoleEdit.ItemID = RoleUsers.RoleID = ItemID; RoleEdit.SiteID = SiteID; RoleEdit.GroupID = GroupID; RoleEdit.GroupGUID = GroupGUID; RoleEdit.DisplayMode = DisplayMode; RoleEdit.ReloadData(forceReload); RoleEdit.Visible = false; RoleUsers.Visible = false; RoleUsers.GroupID = GroupID; tabMenu.SelectedTab = SelectedTab; switch (SelectedTab) { case 0: default: RoleEdit.Visible = true; break; case 1: RoleUsers.Visible = true; RoleUsers.ReloadData(); break; } } /// /// Tab change event handler. /// private void tabMenu_OnTabChanged(object sender, EventArgs e) { SelectedTab = tabMenu.SelectedTab; ReloadData(false); } /// /// This function is executed by callback iniciated by 'Select roles' dialog after its closing. /// protected void btnUpdate_Click(object sender, EventArgs e) { ReloadData(false); } }