public static ArrayList GetCustomSettingValues(int moduleId) { ArrayList customSettings = new ArrayList(); using (IDataReader reader = DBModuleSettings.GetModuleSettings(moduleId)) { while (reader.Read()) { int sortOrder = 100; if (reader["SortOrder"] != DBNull.Value) { sortOrder = Convert.ToInt32(reader["SortOrder"]); } CustomModuleSetting setting = new CustomModuleSetting( new Guid(reader["FeatureGuid"].ToString()), -1, reader["ResourceFile"].ToString(), reader["SettingName"].ToString().Trim(), reader["SettingValue"].ToString(), reader["ControlType"].ToString(), reader["RegexValidationExpression"].ToString(), reader["ControlSrc"].ToString(), reader["HelpKey"].ToString(), sortOrder ); customSettings.Add(setting); } } return(customSettings); }
public static ArrayList GetDefaultSettings(int moduleDefId) { ArrayList defaultCustomSettings = new ArrayList(); using (IDataReader reader = DBModuleSettings.GetDefaultModuleSettings(moduleDefId)) { while (reader.Read()) { int sortOrder = 100; if (reader["SortOrder"] != DBNull.Value) { sortOrder = Convert.ToInt32(reader["SortOrder"]); } CustomModuleSetting setting = new CustomModuleSetting( new Guid(reader["FeatureGuid"].ToString()), Convert.ToInt32(reader["ID"]), reader["ResourceFile"].ToString(), reader["SettingName"].ToString().Trim(), reader["SettingValue"].ToString(), reader["ControlType"].ToString(), reader["RegexValidationExpression"].ToString(), reader["ControlSrc"].ToString(), reader["HelpKey"].ToString(), sortOrder, reader["Attributes"].ToString(), reader["Options"].ToString() ); setting.GroupName = reader["GroupName"].ToString(); defaultCustomSettings.Add(setting); } } return(defaultCustomSettings); }
private void AddSettingControl(CustomModuleSetting s, Panel groupPanel) { if (s.SettingName == "WebPartModuleWebPartSetting") { // Special handling for this one divWebParts.Visible = true; using (IDataReader reader = WebPartContent.SelectBySite(siteSettings.SiteId)) { this.ddWebParts.DataSource = reader; this.ddWebParts.DataBind(); } if (s.SettingValue.Length == 36) { ListItem listItem = ddWebParts.Items.FindByValue(s.SettingValue); if (listItem != null) { ddWebParts.ClearSelection(); listItem.Selected = true; } } } else { if (s.SettingControlType == string.Empty) { return; } String settingLabel = s.SettingName; String resourceFile = "Resource"; if (s.ResourceFile.Length > 0) { resourceFile = s.ResourceFile; } try { settingLabel = GetGlobalResourceObject(resourceFile, s.SettingName).ToString(); if (settingLabel == null) { settingLabel = s.SettingName; } } catch (NullReferenceException ex) { log.Error("ModuleSettings.aspx.cs handled error getting resource for s.SettingName " + s.SettingName, ex); } Panel panel = new Panel(); panel.CssClass = "settingrow " + s.SettingName; Literal label = new Literal(); label.Text = "<label class='settinglabel' >" + settingLabel + "</label>"; panel.Controls.Add(label); if ((s.SettingControlType == "TextBox") || (s.SettingControlType == string.Empty)) { Literal textBox = new Literal(); textBox.Text = "<input name=\"" + s.SettingName + moduleId.ToInvariantString() + "\" type='text' class=\"forminput\" value=\"" + s.SettingValue.HtmlEscapeQuotes() + "\" size=\"45\" id=\"" + s.SettingName + moduleId.ToInvariantString() + "\" />"; panel.Controls.Add(textBox); } if (s.SettingControlType == "CheckBox") { Literal checkBox = new Literal(); String isChecked = String.Empty; if (string.Equals(s.SettingValue, "true", StringComparison.InvariantCultureIgnoreCase)) { isChecked = "checked"; } checkBox.Text = "<input id='" + s.SettingName + this.moduleId.ToInvariantString() + "' type='checkbox' class='forminput' " + isChecked + " name='" + s.SettingName + moduleId.ToInvariantString() + "' />"; panel.Controls.Add(checkBox); } if (s.SettingControlType == "ISettingControl") { if (s.ControlSrc.Length > 0) { if(s.ControlSrc.EndsWith(".ascx")) { Control uc = Page.LoadControl(s.ControlSrc); if (uc is ISettingControl) { ISettingControl sc = uc as ISettingControl; if (!IsPostBack) sc.SetValue(s.SettingValue); uc.ID = "uc" + moduleId.ToInvariantString() + s.SettingName; panel.Controls.Add(uc); } } else { try { Control c = Activator.CreateInstance(Type.GetType(s.ControlSrc)) as Control; if (c != null) { if (c is ISettingControl) { ISettingControl sc = c as ISettingControl; c.ID = "uc" + moduleId.ToInvariantString() + s.SettingName; panel.Controls.Add(c); if (!IsPostBack) { sc.SetValue(s.SettingValue); } } else { log.Error("setting control " + s.ControlSrc + " does not implement ISettingControl"); } } } catch(Exception ex) { log.Error(ex); } } } else { log.Error("could not add setting control for ISettingControl, missing controlsrc for " + s.SettingName); } } if (s.HelpKey.Length > 0) { mojoHelpLink.AddHelpLink(panel, s.HelpKey); } //this.PlaceHolderAdvancedSettings.Controls.Add(panel); //pnlcustomSettings.Controls.Add(panel); groupPanel.Controls.Add(panel); } }
public static ArrayList GetCustomSettingValues(int moduleId) { ArrayList customSettings = new ArrayList(); using (IDataReader reader = DBModuleSettings.GetModuleSettings(moduleId)) { while (reader.Read()) { int sortOrder = 100; if (reader["SortOrder"] != DBNull.Value) sortOrder = Convert.ToInt32(reader["SortOrder"]); CustomModuleSetting setting = new CustomModuleSetting( new Guid(reader["FeatureGuid"].ToString()), -1, reader["ResourceFile"].ToString(), reader["SettingName"].ToString().Trim(), reader["SettingValue"].ToString(), reader["ControlType"].ToString(), reader["RegexValidationExpression"].ToString(), reader["ControlSrc"].ToString(), reader["HelpKey"].ToString(), sortOrder ); customSettings.Add(setting); } } return customSettings; }