private void PopulateControls() { uxSearchTitle.Text = "Configuration result from keyword : " + CurrentSearch; uxPlaceHolder.Controls.Clear(); IList <Configuration> list = DataAccessContext.ConfigurationRepository.SearchConfiguration( AdminConfig.CurrentCulture, "Configuration.ConfigID", CurrentSearch, StringUtilities.SplitString(ConfigurationDescription.ConfigurationSearchBy, ',')); if (list.Count > 0) { int countConfig = 0; foreach (Configuration item in list) { if (IsExcludeConfigInFree(item.Name) && !KeyUtilities.IsDeluxeLicense(DataAccessHelper.DomainRegistrationkey, DataAccessHelper.DomainName)) { continue; } if ((!Store.CanUseMultiStoreConfig(item.Name) && CurrentStore.Equals("0")) || (Store.CanUseMultiStoreConfig(item.Name) && !CurrentStore.Equals("0"))) { if (ConfigurationControlBuilder.IsSpecialType(item.Name)) { Panel panel = CreateNewConfigPanel(item); AdminAdvanced_Components_Common_HelpIcon helpIcon = LoadControl("../Components/Common/HelpIcon.ascx") as AdminAdvanced_Components_Common_HelpIcon; helpIcon.ID = item.Name + "Help"; helpIcon.ConfigName = item.Name; panel.Controls.Add(helpIcon); panel.Controls.Add(ConfigurationControlBuilder.CreateLabel( item.Descriptions[0].DisplayName, "Label")); panel.Controls.Add(ConfigurationControlBuilder.GetControl(item, CurrentStore)); uxPlaceHolder.Controls.Add(panel); } else if (item.ConfigType == Configuration.ConfigurationType.UserControl) { Panel panel = CreateNewConfigPanel(item); UserControl control = (UserControl)LoadControl("../" + item.DisplayUserControl); control.ID = item.Name; //"WidgetAddThisIsEnabled","WidgetLivePersonIsEnabled" //This control need to set some property before populate control if (ConfigurationControlBuilder.IsSpecialUserControl(item.Name)) { Admin_Components_SiteConfig_WidgetDetails widgetDetailsControl = (Admin_Components_SiteConfig_WidgetDetails)control; string name = String.Empty; if (item.Name.Contains("AddThis")) { widgetDetailsControl.ParameterName = "AddThis Username"; widgetDetailsControl.WidgetStyle = "AddThis"; } else if (item.Name.Contains("LivePerson")) { widgetDetailsControl.ParameterName = "LivePerson Account"; widgetDetailsControl.WidgetStyle = "LivePerson"; } else if (item.Name.Contains("LikeBox")) { widgetDetailsControl.ParameterName = "Fanpage URL"; widgetDetailsControl.WidgetStyle = "LikeBox"; } } panel.Controls.Add(control); uxPlaceHolder.Controls.Add(panel); // Need to add dynamic controls after adding parent controls to place holder. // Otherwise, the dynamic controls' ClientID may not be correct // (e.g. Parent_uxDynmaic instead of uxFront_uxDiv_Parent_uxDynamic). // If this happens, view state for the dynamic control will not be restored correctly. ((IConfigUserControl)control).Populate(item); } else { // Normal configurations (non-special, non-user-control) AddNormalConfigPanel(uxPlaceHolder, item); } countConfig++; } } if (countConfig == 0) { uxUpdateButton.Visible = false; } } else { uxUpdateButton.Visible = false; } }