Skip to content

Commit

Permalink
have different name and id fields for elements within a table and list
Browse files Browse the repository at this point in the history
  • Loading branch information
Shashank Shetty committed Apr 12, 2013
1 parent 2ac941f commit 69da002
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 7 deletions.
14 changes: 10 additions & 4 deletions src/FluentWebControls/DataColumn.cs
Expand Up @@ -47,6 +47,7 @@ public DataColumn(Func<T, string> getColumnText, string columnName)
internal string HeaderText { private get; set; }
internal string InputCssClass { get; set; }
internal string InputTextId { get; set; }
internal string InputTextName { get; set; }
internal string Prefix { get; set; }

AlignAttribute IDataColumn.Align
Expand Down Expand Up @@ -110,23 +111,28 @@ private string GetColumnWithInput(T item)
{
if (ColumnTextType == ColumnTextType.TextBox)
{
return new TextBoxData(GetColumnText(item)).WithId(GetId(item)).CssClass(InputCssClass).ToString();
return new TextBoxData(GetColumnText(item)).WithId(GetId(item)).WithName(GetName(item)).CssClass(InputCssClass).ToString();
}
if (ColumnTextType == ColumnTextType.CheckBox)
{
return new CheckBoxData(bool.Parse(GetColumnText(item))).WithId(GetId(item)).WithCssClass(InputCssClass).ToString();
return new CheckBoxData(bool.Parse(GetColumnText(item))).WithId(GetId(item)).WithName(GetName(item)).WithCssClass(InputCssClass).ToString();
}
if (ColumnTextType == ColumnTextType.Hidden)
{
return new HiddenData().WithId(GetId(item)).WithValue(GetColumnText(item)).ToString();
return new HiddenData().WithId(GetId(item)).WithName(GetName(item)).WithValue(GetColumnText(item)).ToString();
}
if (ColumnTextType == ColumnTextType.Span)
{
return new SpanData(GetColumnText(item)).WithId(GetId(item)).WithCssClass(InputCssClass).ToString();
return new SpanData(GetColumnText(item)).WithId(GetId(item)).WithName(GetName(item)).WithCssClass(InputCssClass).ToString();
}
return GetColumnText(item);
}

private string GetName(T item)
{
return InputTextName ?? GetId(item);
}

private string GetId(T item)
{
if (InputTextId != null)
Expand Down
12 changes: 9 additions & 3 deletions src/FluentWebControls/DataItem.cs
Expand Up @@ -41,6 +41,7 @@ public DataItem(Func<T, string> getColumnText, string columnName)
internal string ContainerCssClass { get; set; }
internal string LabelText { get; set; }
internal string InputTextId { get; set; }
internal string InputTextName { get; set; }
internal bool HasDivId { get; set; }
internal string DivId { get; set; }
internal bool WrapWithSpan { private get; set; }
Expand Down Expand Up @@ -110,19 +111,24 @@ private string GetColumnWithInput(T item)
{
if (ColumnTextType == ColumnTextType.TextBox)
{
return new TextBoxData(GetColumnText(item)).WithId(GetId(item)).CssClass(InputCssClass).ToString();
return new TextBoxData(GetColumnText(item)).WithId(GetId(item)).WithName(GetName(item)).CssClass(InputCssClass).ToString();
}
if (ColumnTextType == ColumnTextType.Span)
{
return new SpanData(GetColumnText(item)).WithId(GetId(item)).WithCssClass(InputCssClass).ToString();
return new SpanData(GetColumnText(item)).WithId(GetId(item)).WithName(GetName(item)).WithCssClass(InputCssClass).ToString();
}
if (ColumnTextType == ColumnTextType.Hidden)
{
return new HiddenData().WithId(GetId(item)).WithValue(GetColumnText(item)).ToString();
return new HiddenData().WithId(GetId(item)).WithName(GetName(item)).WithValue(GetColumnText(item)).ToString();
}
return GetColumnText(item);
}

private string GetName(T item)
{
return InputTextName ?? GetId(item);
}

private string GetId(T item)
{
if (InputTextId != null)
Expand Down
6 changes: 6 additions & 0 deletions src/FluentWebControls/Extensions/DataColumnExtensions.cs
Expand Up @@ -42,6 +42,12 @@ public static DataColumn<T> AsHidden<T>(this DataColumn<T> dataColumn, string fo
return dataColumn;
}

public static DataColumn<T> WithName<T>(this DataColumn<T> dataColumn, string name)
{
dataColumn.InputTextName = name;
return dataColumn;
}

public static DataColumn<T> AsSpan<T>(this DataColumn<T> dataColumn, Func<T, string> forId)
{
dataColumn.ColumnTextType = ColumnTextType.Span;
Expand Down
6 changes: 6 additions & 0 deletions src/FluentWebControls/Extensions/DataItemExtensions.cs
Expand Up @@ -50,6 +50,12 @@ public static DataItem<T> AsTextBox<T>(this DataItem<T> dataItem, Func<T, string
return dataItem;
}

public static DataItem<T> WithName<T>(this DataItem<T> dataColumn, string name)
{
dataColumn.InputTextName = name;
return dataColumn;
}

public static DataItem<T> WithInputCssClass<T>(this DataItem<T> dataItem, string inputCssClass)
{
dataItem.InputCssClass = inputCssClass;
Expand Down

0 comments on commit 69da002

Please sign in to comment.