示例#1
0
        override protected void OnInit(EventArgs e)
        {
            base.OnInit(e);

            try
            {
                // check for new plugins
                var pi = new PluginData(PortalId, true);
                pi.UpdateSystemPlugins();
                pi.CheckforNewSystemConfig();

                #region "load templates"

                var t1 = "backoffice.html";

                // Get Display Body
                var dataTempl = ModCtrl.GetTemplateData(ModSettings, t1, Utils.GetCurrentCulture(), DebugMode);
                // insert page header text
                var headerTempl = NBrightBuyUtils.GetGenXmlTemplate(dataTempl, ModSettings.Settings(), PortalSettings.HomeDirectory);
                NBrightBuyUtils.IncludePageHeaders(ModCtrl, ModuleId, Page, headerTempl, ModSettings.Settings(), null, DebugMode);

                // remove any DNN modules from the BO page
                var tabInfo  = PortalSettings.Current.ActiveTab;
                var modCount = tabInfo.Modules.Count;
                for (int i = 0; i < modCount; i++)
                {
                    tabInfo.Modules.RemoveAt(0);
                }


                var aryTempl = Utils.ParseTemplateText(dataTempl);

                foreach (var s in aryTempl)
                {
                    var htmlDecode = System.Web.HttpUtility.HtmlDecode(s);
                    if (htmlDecode != null)
                    {
                        switch (htmlDecode.ToLower())
                        {
                        case "<tag:menu>":
                            var c1 = LoadControl(ControlPath + "/Menu.ascx");
                            phData.Controls.Add(c1);
                            break;

                        case "<tag:container>":
                            var c2 = LoadControl(ControlPath + "/Container.ascx");
                            phData.Controls.Add(c2);
                            break;

                        default:
                            var lc = new Literal {
                                Text = s
                            };
                            phData.Controls.Add(lc);
                            break;
                        }
                    }
                }


                #endregion
            }
            catch (Exception exc)
            {
                //display the error on the template (don;t want to log it here, prefer to deal with errors directly.)
                var l = new Literal();
                l.Text = exc.ToString();
                phData.Controls.Add(l);
            }
        }