Example #1
0
    private void LoadDashboardRecentItems()
    {
        using (CodeBenchmark.Start())
        {
            plhDashboardItems.Controls.Clear();

            foreach (IPersonalizedDashboardItem item in GlobalDashboardItems.Instance.DashboardItems)
            {
                plhDashboardItems.Controls.Add((WebControl)item);
            }

            foreach (IWebModule module in ModuleManager.WebModules.Values)
            {
                IPersonalizedDashboard personalizedModule = module as IPersonalizedDashboard;

                if (personalizedModule != null)
                {
                    foreach (IPersonalizedDashboardItem item in personalizedModule.DashboardItems)
                    {
                        plhDashboardItems.Controls.Add((WebControl)item);
                    }
                }
            }
        }
    }
Example #2
0
    protected override void OnLoad(EventArgs e)
    {
        using (CodeBenchmark.Start())
        {
            foreach (GlobalSettingElement item in ConfigHelper.Handler.GlobalSettings)
            {
                Type type;

                if (_cachedTypes.ContainsKey(item.TypeName))
                {
                    type = _cachedTypes[item.TypeName];
                }
                else
                {
                    lock (_lock)
                    {
                        if (!_cachedTypes.ContainsKey(item.TypeName))
                        {
                            type = TypeResolutionService.ResolveType(item.TypeName);
                            _cachedTypes.Add(item.TypeName, type);
                        }
                        else
                        {
                            type = _cachedTypes[item.TypeName];
                        }
                    }
                }

                IPersonalizationSetting setting = (IPersonalizationSetting)Activator.CreateInstance(type);

                if (setting.CanBecomeVisible)
                {
                    setting.TemplatePath  = item.TemplatePath;
                    setting.SettingOrder  = item.Order;
                    setting.SavedClicked += setting_SavedClicked;
                    _settings.Add(setting);
                }
            }

            foreach (IWebModule module in ModuleManager.WebModules.Values)
            {
                IPersonalizedModule personalizedModule = module as IPersonalizedModule;

                if (personalizedModule != null)
                {
                    IPersonalizationSetting setting = personalizedModule.CreateSettingPanel();

                    if (setting.CanBecomeVisible)
                    {
                        setting.SavedClicked += setting_SavedClicked;
                        _settings.Add(setting);
                    }
                }
            }

            if (_settings.Count > 0)
            {
                _settings.Sort(delegate(IPersonalizationSetting p1, IPersonalizationSetting p2)
                {
                    if (p1.SettingOrder == p2.SettingOrder)
                    {
                        return(p1.SettingText.CompareTo(p2.SettingText));
                    }

                    return(p1.SettingOrder.CompareTo(p2.SettingOrder));
                }
                               );

                plhContainer.Controls.Clear();

                for (int i = 0; i < _settings.Count; i++)
                {
                    plhContainer.Controls.Add((Control)_settings[i]);
                }

                int index = 0;

                if (IsPostBack)
                {
                    if (!string.IsNullOrEmpty(hidIndex.Value))
                    {
                        int.TryParse(hidIndex.Value, out index);
                    }
                }
                else
                {
                    if (!string.IsNullOrEmpty(Request.QueryString["index"]))
                    {
                        int.TryParse(Request.QueryString["index"], out index);
                    }
                }

                ShowScreen(index);
            }

            leftMenu.ItemDataBound += leftMenu_ItemDataBound;
            leftMenu.ItemCommand   += leftMenu_ItemCommand;
            leftMenu.DataSource     = _settings;
            leftMenu.DataBind();

            messageCtrl.Message = string.Empty;

            base.OnLoad(e);
        }
    }