private void LoadGroup(int groupId)
        {
            var gc = new ForumGroupController();
            var gi = gc.Groups_Get(ModuleId, groupId);

            if (gi == null)
            {
                return;
            }

            var newGroup = gc.GetForumGroup(ModuleId, groupId);

            ctlSecurityGrid = LoadControl("~/DesktopModules/activeforums/controls/admin_securitygrid.ascx") as Controls.admin_securitygrid;
            if (ctlSecurityGrid != null)
            {
                ctlSecurityGrid.Perms               = newGroup.Security;
                ctlSecurityGrid.PermissionsId       = newGroup.PermissionsId;
                ctlSecurityGrid.ModuleConfiguration = ModuleConfiguration;

                plhGrid.Controls.Clear();
                plhGrid.Controls.Add(ctlSecurityGrid);
            }

            trGroups.Visible   = false;
            reqGroups.Enabled  = false;
            txtForumName.Text  = gi.GroupName;
            chkActive.Checked  = gi.Active;
            chkHidden.Checked  = gi.Hidden;
            hidForumId.Value   = gi.ForumGroupId.ToString();
            hidSortOrder.Value = gi.SortOrder.ToString();
            txtPrefixURL.Text  = gi.PrefixURL;

            Utilities.SelectListItemByValue(drpTopicsTemplate, gi.TopicsTemplateId);
            Utilities.SelectListItemByValue(drpTopicTemplate, gi.TopicTemplateId);
            Utilities.SelectListItemByValue(drpTopicForm, gi.TopicFormId);
            Utilities.SelectListItemByValue(drpReplyForm, gi.ReplyFormId);
            Utilities.SelectListItemByValue(drpProfileDisplay, gi.ProfileTemplateId);
            Utilities.SelectListItemByValue(drpModApprovedTemplateId, gi.ModApproveTemplateId);
            Utilities.SelectListItemByValue(drpModRejectTemplateId, gi.ModRejectTemplateId);
            Utilities.SelectListItemByValue(drpModDeleteTemplateId, gi.ModDeleteTemplateId);
            Utilities.SelectListItemByValue(drpModMoveTemplateId, gi.ModMoveTemplateId);
            Utilities.SelectListItemByValue(drpModNotifyTemplateId, gi.ModNotifyTemplateId);
            Utilities.SelectListItemByValue(drpDefaultTrust, gi.DefaultTrustValue);
            Utilities.SelectListItemByValue(drpEditorTypes, (int)gi.EditorType);
            Utilities.SelectListItemByValue(drpEditorMobile, (int)gi.EditorMobile);
            Utilities.SelectListItemByValue(drpPermittedRoles, gi.EditorPermittedUsers);

            txtAutoTrustLevel.Text  = gi.AutoTrustLevel.ToString();
            txtEmailAddress.Text    = gi.EmailAddress;
            txtCreatePostCount.Text = gi.CreatePostCount.ToString();
            txtReplyPostCount.Text  = gi.ReplyPostCount.ToString();

            rdFilterOn.Checked  = gi.UseFilter;
            rdFilterOff.Checked = !gi.UseFilter;

            rdPostIconOn.Checked  = gi.AllowPostIcon;
            rdPostIconOff.Checked = !gi.AllowPostIcon;

            rdEmotOn.Checked  = gi.AllowEmoticons;
            rdEmotOff.Checked = !gi.AllowEmoticons;

            rdScriptsOn.Checked  = gi.AllowScript;
            rdScriptsOff.Checked = !gi.AllowScript;

            rdIndexOn.Checked  = gi.IndexContent;
            rdIndexOff.Checked = !gi.IndexContent;

            rdRSSOn.Checked  = gi.AllowRSS;
            rdRSSOff.Checked = !gi.AllowRSS;

            rdAttachOn.Checked  = gi.AllowAttach;
            rdAttachOff.Checked = !gi.AllowAttach;

            if (gi.AllowAttach)
            {
                cfgAttach.Attributes.Remove("style");
            }
            else
            {
                cfgAttach.Attributes.Add("style", "display:none;");
            }

            txtMaxAttach.Text                 = gi.AttachCount.ToString();
            txtMaxAttachSize.Text             = gi.AttachMaxSize.ToString();
            txtAllowedTypes.Text              = gi.AttachTypeAllowed;
            ckAllowBrowseSite.Checked         = gi.AttachAllowBrowseSite;
            txtMaxAttachWidth.Text            = gi.MaxAttachWidth.ToString();
            txtMaxAttachHeight.Text           = gi.MaxAttachHeight.ToString();
            ckAttachInsertAllowed.Checked     = gi.AttachInsertAllowed;
            ckConvertingToJpegAllowed.Checked = gi.ConvertingToJpegAllowed;

            rdHTMLOn.Checked  = gi.AllowHTML;
            rdHTMLOff.Checked = !gi.AllowHTML;

            if (gi.AllowHTML)
            {
                cfgHTML.Attributes.Remove("style");
            }
            else
            {
                cfgHTML.Attributes.Add("style", "display:none;");
            }

            rdModOn.Checked  = gi.IsModerated;
            rdModOff.Checked = !gi.IsModerated;

            if (gi.IsModerated)
            {
                cfgMod.Attributes.Remove("style");
            }
            else
            {
                cfgMod.Attributes.Add("style", "display:none;");
            }

            rdAutoSubOn.Checked  = gi.AutoSubscribeEnabled;
            rdAutoSubOff.Checked = !gi.AutoSubscribeEnabled;

            rdLikesOn.Checked  = gi.AllowLikes;
            rdLikesOff.Checked = !gi.AllowLikes;

            if (gi.AutoSubscribeEnabled)
            {
                cfgAutoSub.Attributes.Remove("style");
            }
            else
            {
                cfgAutoSub.Attributes.Add("style", "display:none;");
            }

            var x = gi.EditorType;

            txtEditorHeight.Text  = (gi.EditorHeight == string.Empty) ? "400" : gi.EditorHeight;
            txtEditorWidth.Text   = (gi.EditorWidth == string.Empty) ? "99%" : gi.EditorWidth;
            chkTopicsOnly.Checked = gi.AutoSubscribeNewTopicsOnly;
            hidRoles.Value        = gi.AutoSubscribeRoles;
            BindAutoSubRoles(gi.AutoSubscribeRoles);
        }
        private void LoadGroup(int groupId)
        {
            var gc = new ForumGroupController();
            var gi = gc.Groups_Get(ModuleId, groupId);

            if (gi == null)
                return;

            var newGroup = gc.GetForumGroup(ModuleId, groupId);

            ctlSecurityGrid = LoadControl("~/DesktopModules/activeforums/controls/admin_securitygrid.ascx") as Controls.admin_securitygrid;
            if(ctlSecurityGrid != null)
            {
                ctlSecurityGrid.Perms = newGroup.Security;
                ctlSecurityGrid.PermissionsId = newGroup.PermissionsId;
                ctlSecurityGrid.ModuleConfiguration = ModuleConfiguration;

                plhGrid.Controls.Clear();
                plhGrid.Controls.Add(ctlSecurityGrid);
            }

            trGroups.Visible = false;
            reqGroups.Enabled = false;
            txtForumName.Text = gi.GroupName;
            chkActive.Checked = gi.Active;
            chkHidden.Checked = gi.Hidden;
            hidForumId.Value = gi.ForumGroupId.ToString();
            hidSortOrder.Value = gi.SortOrder.ToString();
            txtPrefixURL.Text = gi.PrefixURL;

            Utilities.SelectListItemByValue(drpTopicsTemplate, gi.TopicsTemplateId);
            Utilities.SelectListItemByValue(drpTopicTemplate, gi.TopicTemplateId);
            Utilities.SelectListItemByValue(drpTopicForm, gi.TopicFormId);
            Utilities.SelectListItemByValue(drpReplyForm, gi.ReplyFormId);
            Utilities.SelectListItemByValue(drpProfileDisplay, gi.ProfileTemplateId);
            Utilities.SelectListItemByValue(drpModApprovedTemplateId, gi.ModApproveTemplateId);
            Utilities.SelectListItemByValue(drpModRejectTemplateId, gi.ModRejectTemplateId);
            Utilities.SelectListItemByValue(drpModDeleteTemplateId, gi.ModDeleteTemplateId);
            Utilities.SelectListItemByValue(drpModMoveTemplateId, gi.ModMoveTemplateId);
            Utilities.SelectListItemByValue(drpModNotifyTemplateId, gi.ModNotifyTemplateId);
            Utilities.SelectListItemByValue(drpDefaultTrust, gi.DefaultTrustValue);

            txtAutoTrustLevel.Text = gi.AutoTrustLevel.ToString();
            txtEmailAddress.Text = gi.EmailAddress;
            txtCreatePostCount.Text = gi.CreatePostCount.ToString();
            txtReplyPostCount.Text = gi.ReplyPostCount.ToString();

            rdFilterOn.Checked = gi.UseFilter;
            rdFilterOff.Checked = !gi.UseFilter;

            rdPostIconOn.Checked = gi.AllowPostIcon;
            rdPostIconOff.Checked = !gi.AllowPostIcon;

            rdEmotOn.Checked = gi.AllowEmoticons;
            rdEmotOff.Checked = !gi.AllowEmoticons;

            rdScriptsOn.Checked = gi.AllowScript;
            rdScriptsOff.Checked = !gi.AllowScript;

            rdIndexOn.Checked = gi.IndexContent;
            rdIndexOff.Checked = !gi.IndexContent;

            rdRSSOn.Checked = gi.AllowRSS;
            rdRSSOff.Checked = !gi.AllowRSS;

            rdAttachOn.Checked = gi.AllowAttach;
            rdAttachOff.Checked = !gi.AllowAttach;

            rdHTMLOn.Checked = gi.AllowHTML;
            rdHTMLOff.Checked = !gi.AllowHTML;

            if (gi.AllowHTML)
                cfgHTML.Attributes.Remove("style");
            else
                cfgHTML.Attributes.Add("style", "display:none;");

            rdModOn.Checked = gi.IsModerated;
            rdModOff.Checked = !gi.IsModerated;

            if (gi.IsModerated)
                cfgMod.Attributes.Remove("style");
            else
                cfgMod.Attributes.Add("style", "display:none;");

            rdAutoSubOn.Checked = gi.AutoSubscribeEnabled;
            rdAutoSubOff.Checked = !gi.AutoSubscribeEnabled;

            if (gi.AutoSubscribeEnabled)
                cfgAutoSub.Attributes.Remove("style");
            else
                cfgAutoSub.Attributes.Add("style", "display:none;");

            Utilities.SelectListItemByValue(drpEditorTypes, gi.EditorType);
            Utilities.SelectListItemByValue(drpEditorStyle, gi.EditorStyle);
            Utilities.SelectListItemByValue(drpPermittedRoles, gi.EditorPermittedUsers);

            txtEditorHeight.Text = (gi.EditorHeight == string.Empty) ? "400" : gi.EditorHeight;
            txtEditorWidth.Text = (gi.EditorWidth == string.Empty) ? "99%" : gi.EditorWidth;
            txtEditorToolBar.Text = (gi.EditorToolBar == string.Empty) ? "bold,italic,underline|bulletedlist,numberedlist" : gi.EditorToolBar;
            chkTopicsOnly.Checked = gi.AutoSubscribeNewTopicsOnly;
            hidRoles.Value = gi.AutoSubscribeRoles;
            BindAutoSubRoles(gi.AutoSubscribeRoles);
        }
        private void LoadForum(int forumId)
        {
            var fc = new ForumController();
            var fi = fc.Forums_Get(forumId, -1, false, false);

            if (fi == null)
            {
                return;
            }

            var newForum = fc.GetForum(PortalId, ModuleId, forumId, true);

            ctlSecurityGrid = LoadControl("~/DesktopModules/activeforums/controls/admin_securitygrid.ascx") as Controls.admin_securitygrid;
            if (ctlSecurityGrid != null)
            {
                ctlSecurityGrid.Perms               = newForum.Security;
                ctlSecurityGrid.PermissionsId       = newForum.PermissionsId;
                ctlSecurityGrid.ModuleConfiguration = ModuleConfiguration;
                ctlSecurityGrid.ReadOnly            = newForum.InheritSecurity;

                plhGrid.Controls.Clear();
                plhGrid.Controls.Add(ctlSecurityGrid);
            }

            txtForumName.Text = fi.ForumName;
            txtForumDesc.Text = fi.ForumDesc;
            chkActive.Checked = fi.Active;
            chkHidden.Checked = fi.Hidden;
            hidForumId.Value  = fi.ForumID.ToString();
            txtPrefixURL.Text = fi.PrefixURL;

            var groupValue = (fi.ParentForumId > 0) ? "FORUM" + fi.ParentForumId : "GROUP" + fi.ForumGroupId;


            Utilities.SelectListItemByValue(drpGroups, groupValue);

            if (fi.ForumSettingsKey == "G:" + fi.ForumGroupId)
            {
                chkInheritGroup.Checked = true;
                trTemplates.Attributes.Add("style", "display:none;");
            }

            Utilities.SelectListItemByValue(drpTopicsTemplate, fi.TopicsTemplateId);
            Utilities.SelectListItemByValue(drpTopicTemplate, fi.TopicTemplateId);
            Utilities.SelectListItemByValue(drpTopicForm, fi.TopicFormId);
            Utilities.SelectListItemByValue(drpReplyForm, fi.ReplyFormId);
            //Utilities.SelectListItemByValue(drpQuickReplyForm, fi.QuickReplyFormId);
            Utilities.SelectListItemByValue(drpProfileDisplay, fi.ProfileTemplateId);
            Utilities.SelectListItemByValue(drpModApprovedTemplateId, fi.ModApproveTemplateId);
            Utilities.SelectListItemByValue(drpModRejectTemplateId, fi.ModRejectTemplateId);
            Utilities.SelectListItemByValue(drpModDeleteTemplateId, fi.ModDeleteTemplateId);
            Utilities.SelectListItemByValue(drpModMoveTemplateId, fi.ModMoveTemplateId);
            Utilities.SelectListItemByValue(drpModNotifyTemplateId, fi.ModNotifyTemplateId);
            Utilities.SelectListItemByValue(drpDefaultTrust, fi.DefaultTrustValue);
            Utilities.SelectListItemByValue(drpEditorTypes, fi.EditorType);
            Utilities.SelectListItemByValue(drpEditorMobile, fi.EditorMobile);
            Utilities.SelectListItemByValue(drpPermittedRoles, (int)fi.EditorPermittedUsers);

            txtAutoTrustLevel.Text  = fi.AutoTrustLevel.ToString();
            txtEmailAddress.Text    = fi.EmailAddress;
            txtCreatePostCount.Text = fi.CreatePostCount.ToString();
            txtReplyPostCount.Text  = fi.ReplyPostCount.ToString();

            rdFilterOn.Checked  = fi.UseFilter;
            rdFilterOff.Checked = !fi.UseFilter;

            rdPostIconOn.Checked  = fi.AllowPostIcon;
            rdPostIconOff.Checked = !fi.AllowPostIcon;

            rdEmotOn.Checked  = fi.AllowEmoticons;
            rdEmotOff.Checked = !fi.AllowEmoticons;

            rdScriptsOn.Checked  = fi.AllowScript;
            rdScriptsOff.Checked = !fi.AllowScript;

            rdIndexOn.Checked  = fi.IndexContent;
            rdIndexOff.Checked = !fi.IndexContent;

            rdRSSOn.Checked  = fi.AllowRSS;
            rdRSSOff.Checked = !fi.AllowRSS;

            rdAttachOn.Checked  = fi.AllowAttach;
            rdAttachOff.Checked = !fi.AllowAttach;

            if (fi.AllowAttach)
            {
                cfgAttach.Attributes.Remove("style");
            }
            else
            {
                cfgAttach.Attributes.Add("style", "display:none;");
            }

            txtMaxAttach.Text                 = fi.AttachCount.ToString();
            txtMaxAttachSize.Text             = fi.AttachMaxSize.ToString();
            txtAllowedTypes.Text              = fi.AttachTypeAllowed;
            ckAllowBrowseSite.Checked         = fi.AttachAllowBrowseSite;
            txtMaxAttachWidth.Text            = fi.MaxAttachWidth.ToString();
            txtMaxAttachHeight.Text           = fi.MaxAttachHeight.ToString();
            ckAttachInsertAllowed.Checked     = fi.AttachInsertAllowed;
            ckConvertingToJpegAllowed.Checked = fi.ConvertingToJpegAllowed;

            rdHTMLOn.Checked  = fi.AllowHTML;
            rdHTMLOff.Checked = !fi.AllowHTML;

            if (fi.AllowHTML)
            {
                cfgHTML.Attributes.Remove("style");
            }
            else
            {
                cfgHTML.Attributes.Add("style", "display:none;");
            }

            rdModOn.Checked  = fi.IsModerated;
            rdModOff.Checked = !fi.IsModerated;

            if (fi.IsModerated)
            {
                cfgMod.Attributes.Remove("style");
            }
            else
            {
                cfgMod.Attributes.Add("style", "display:none;");
            }

            rdAutoSubOn.Checked  = fi.AutoSubscribeEnabled;
            rdAutoSubOff.Checked = !fi.AutoSubscribeEnabled;

            if (fi.AutoSubscribeEnabled)
            {
                cfgAutoSub.Attributes.Remove("style");
            }
            else
            {
                cfgAutoSub.Attributes.Add("style", "display:none;");
            }

            rdLikesOn.Checked  = fi.AllowLikes;
            rdLikesOff.Checked = !fi.AllowLikes;

            chkTopicsOnly.Checked = fi.AutoSubscribeNewTopicsOnly;

            txtEditorHeight.Text = (fi.EditorHeight == string.Empty) ? "400" : fi.EditorHeight;
            txtEditorWidth.Text  = (fi.EditorWidth == string.Empty) ? "99%" : fi.EditorWidth;

            hidRoles.Value = fi.AutoSubscribeRoles;
            BindAutoSubRoles(fi.AutoSubscribeRoles);
        }
        private void LoadForum(int forumId)
        {
            var fc = new ForumController();
            var fi = fc.Forums_Get(forumId, -1, false, false);

            if (fi == null)
                return;

            var newForum = fc.GetForum(PortalId, ModuleId, forumId, true);

            ctlSecurityGrid = LoadControl("~/DesktopModules/activeforums/controls/admin_securitygrid.ascx") as Controls.admin_securitygrid;
            if(ctlSecurityGrid != null)
            {
                ctlSecurityGrid.Perms = newForum.Security;
                ctlSecurityGrid.PermissionsId = newForum.PermissionsId;
                ctlSecurityGrid.ModuleConfiguration = ModuleConfiguration;
                ctlSecurityGrid.ReadOnly = newForum.InheritSecurity;

                plhGrid.Controls.Clear();
                plhGrid.Controls.Add(ctlSecurityGrid);
            }

            txtForumName.Text = fi.ForumName;
            txtForumDesc.Text = fi.ForumDesc;
            chkActive.Checked = fi.Active;
            chkHidden.Checked = fi.Hidden;
            hidForumId.Value = fi.ForumID.ToString();
            txtPrefixURL.Text = fi.PrefixURL;

            var groupValue = (fi.ParentForumId > 0) ? "FORUM" + fi.ParentForumId : "GROUP" + fi.ForumGroupId;

            Utilities.SelectListItemByValue(drpGroups, groupValue);

            if (fi.ForumSettingsKey == "G:" + fi.ForumGroupId)
            {
                chkInheritGroup.Checked = true;
                trTemplates.Attributes.Add("style", "display:none;");
            }

            Utilities.SelectListItemByValue(drpTopicsTemplate, fi.TopicsTemplateId);
            Utilities.SelectListItemByValue(drpTopicTemplate, fi.TopicTemplateId);
            Utilities.SelectListItemByValue(drpTopicForm, fi.TopicFormId);
            Utilities.SelectListItemByValue(drpReplyForm, fi.ReplyFormId);
            //Utilities.SelectListItemByValue(drpQuickReplyForm, fi.QuickReplyFormId);
            Utilities.SelectListItemByValue(drpProfileDisplay, fi.ProfileTemplateId);
            Utilities.SelectListItemByValue(drpModApprovedTemplateId, fi.ModApproveTemplateId);
            Utilities.SelectListItemByValue(drpModRejectTemplateId, fi.ModRejectTemplateId);
            Utilities.SelectListItemByValue(drpModDeleteTemplateId, fi.ModDeleteTemplateId);
            Utilities.SelectListItemByValue(drpModMoveTemplateId, fi.ModMoveTemplateId);
            Utilities.SelectListItemByValue(drpModNotifyTemplateId, fi.ModNotifyTemplateId);
            Utilities.SelectListItemByValue(drpDefaultTrust, fi.DefaultTrustValue);

            txtAutoTrustLevel.Text = fi.AutoTrustLevel.ToString();
            txtEmailAddress.Text = fi.EmailAddress;
            txtCreatePostCount.Text = fi.CreatePostCount.ToString();
            txtReplyPostCount.Text = fi.ReplyPostCount.ToString();

            rdFilterOn.Checked = fi.UseFilter;
            rdFilterOff.Checked = !fi.UseFilter;

            rdPostIconOn.Checked = fi.AllowPostIcon;
            rdPostIconOff.Checked = !fi.AllowPostIcon;

            rdEmotOn.Checked = fi.AllowEmoticons;
            rdEmotOff.Checked = !fi.AllowEmoticons;

            rdScriptsOn.Checked = fi.AllowScript;
            rdScriptsOff.Checked = !fi.AllowScript;

            rdIndexOn.Checked = fi.IndexContent;
            rdIndexOff.Checked = !fi.IndexContent;

            rdRSSOn.Checked = fi.AllowRSS;
            rdRSSOff.Checked = !fi.AllowRSS;

            rdAttachOn.Checked = fi.AllowAttach;
            rdAttachOff.Checked = !fi.AllowAttach;

            rdHTMLOn.Checked = fi.AllowHTML;
            rdHTMLOff.Checked = !fi.AllowHTML;

            if (fi.AllowHTML)
                cfgHTML.Attributes.Remove("style");
            else
                cfgHTML.Attributes.Add("style", "display:none;");

            rdModOn.Checked = fi.IsModerated;
            rdModOff.Checked = !fi.IsModerated;

            if (fi.IsModerated)
                cfgMod.Attributes.Remove("style");
            else
                cfgMod.Attributes.Add("style", "display:none;");

            rdAutoSubOn.Checked = fi.AutoSubscribeEnabled;
            rdAutoSubOff.Checked = !fi.AutoSubscribeEnabled;

            if (fi.AutoSubscribeEnabled)
                cfgAutoSub.Attributes.Remove("style");
            else
                cfgAutoSub.Attributes.Add("style", "display:none;");

            chkTopicsOnly.Checked = fi.AutoSubscribeNewTopicsOnly;

            Utilities.SelectListItemByValue(drpEditorTypes, fi.EditorType);
            if (Convert.ToInt32(fi.EditorType).ToString() != "1") // Active Editor should not be used anymore
            {
                txtEditorToolBar.Enabled = false;
                drpEditorStyle.Enabled = false;
            }

            Utilities.SelectListItemByValue(drpEditorStyle, fi.EditorStyle);
            Utilities.SelectListItemByValue(drpPermittedRoles, (int)fi.EditorPermittedUsers);

            txtEditorHeight.Text = (fi.EditorHeight == string.Empty) ? "400" : fi.EditorHeight;
            txtEditorWidth.Text = (fi.EditorWidth == string.Empty) ? "99%" : fi.EditorWidth;
            txtEditorToolBar.Text = (fi.EditorToolBar == string.Empty) ? "bold,italic,underline|bulletedlist,numberedlist" : fi.EditorToolBar;

            hidRoles.Value = fi.AutoSubscribeRoles;
            BindAutoSubRoles(fi.AutoSubscribeRoles);
        }