Exemplo n.º 1
0
        static void AddFields(int moduleId, DataSet ds)
        {
            var fieldIndex    = ds.Tables[DataSetTableName.Fields].Rows.Count;
            var fieldSettings = ds.Tables[DataSetTableName.FieldSettings];

            foreach (DataRow row in ds.Tables[DataSetTableName.Fields].Rows)
            {
                var oldFieldId = row[FieldsTableColumn.Id].AsInt( );
                var newFieldId =
                    FieldController.AddField(moduleId, row[FieldsTableColumn.Title].ToString(),
                                             row.AsString(FieldsTableColumn.Order).AsInt(fieldIndex),
                                             row.AsString((FieldsTableColumn.HelpText)),
                                             row.AsString(FieldsTableColumn.Required).AsBoolean(),
                                             row.AsString((FieldsTableColumn.Type)),
                                             row.AsString((FieldsTableColumn.Default)),
                                             row.AsString(FieldsTableColumn.Visible).AsBoolean(),
                                             row.AsString(FieldsTableColumn.ShowOnEdit).AsBoolean(true),
                                             row.AsString(FieldsTableColumn.Searchable).AsBoolean(),
                                             row.AsString(FieldsTableColumn.IsPrivate).AsBoolean(),
                                             row.AsString(FieldsTableColumn.MultipleValues).AsBoolean(),
                                             row.AsString((FieldsTableColumn.InputSettings)),
                                             row.AsString((FieldsTableColumn.OutputSettings)),
                                             row.AsString(FieldsTableColumn.NormalizeFlag).AsBoolean(),
                                             row.AsString((FieldsTableColumn.ValidationRule)),
                                             row.AsString((FieldsTableColumn.ValidationMessage)),
                                             row.AsString((FieldsTableColumn.EditStyle)));

                if (fieldSettings != null)
                {
                    foreach (DataRowView setting in fieldSettings.WithFieldId(oldFieldId))
                    {
                        FieldSettingsController.UpdateFieldSetting(
                            (string)setting["SettingName"],
                            (string)setting["SettingValue"],
                            newFieldId);
                    }
                }
                row[FieldsTableColumn.Id] = newFieldId;
                fieldIndex--;
            }
        }
Exemplo n.º 2
0
        public void Update(int fieldId, DataType type)
        {
            var types = type.FieldSettingTypes.Where(t => t.Section == Section).ToArray();

            for (var i = 0; i < types.Count(); i++)
            {
                var value = string.Empty;
                var t     = types[i].SystemType;
                if (t == "Boolean")
                {
                    var cb = Repeater1.Controls[i].FindControl("Checkbox") as CheckBox;
                    if (cb != null)
                    {
                        value = cb.Checked.ToString(CultureInfo.InvariantCulture);
                    }
                }
                else
                {
                    var tb = Repeater1.Controls[i].FindControl("Textbox") as TextBox;
                    if (tb != null)
                    {
                        value = tb.Text;
                    }
                }

                if (t == "Int")
                {
                    value = value.AsInt().ToString(CultureInfo.InvariantCulture);
                }

                var key = types[i].Key;
                if (types[i].VerifySetting(value))
                {
                    FieldSettingsController.UpdateFieldSetting(key, value, fieldId);
                }
            }
        }