Skip to content

Commit df459c5

Browse files
programcsharpjehhynes
authored andcommitted
Move editly stuff off index to its own section
1 parent 1f11d1a commit df459c5

File tree

6 files changed

+119
-45
lines changed

6 files changed

+119
-45
lines changed

Griddly/Controllers/HomeController.cs

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,46 @@ public ActionResult HistoryTest()
2121
return View();
2222
}
2323

24+
25+
public ActionResult Editly()
26+
{
27+
return View();
28+
}
29+
30+
public ActionResult EditlyGrid(string item, int? quantityStart, int? quantityEnd, decimal? totalStart, decimal? totalEnd, string firstName, string lastName, bool? isApproved)
31+
{
32+
this.SetGriddlyDefault(ref isApproved, "isApproved", true);
33+
34+
IQueryable<SimpleOrder> query = _indexTestData;
35+
36+
if (!string.IsNullOrWhiteSpace(item))
37+
query = query.Where(x => x.Item.ToLower().Contains(item.ToLower()));
38+
39+
if (quantityStart != null && quantityEnd != null)
40+
query = query.Where(x => x.Quantity >= quantityStart && x.Quantity <= quantityEnd);
41+
if (quantityStart != null)
42+
query = query.Where(x => x.Quantity >= quantityStart);
43+
if (quantityEnd != null)
44+
query = query.Where(x => x.Quantity <= quantityEnd);
45+
46+
if (totalStart != null && totalEnd != null)
47+
query = query.Where(x => x.Total >= totalStart && x.Total <= totalEnd);
48+
if (totalStart != null)
49+
query = query.Where(x => x.Total >= totalStart);
50+
if (totalEnd != null)
51+
query = query.Where(x => x.Total <= totalEnd);
52+
53+
if (!string.IsNullOrWhiteSpace(firstName))
54+
query = query.Where(x => x.Person.FirstName.ToLower().Contains(firstName.ToLower()));
55+
if (!string.IsNullOrWhiteSpace(lastName))
56+
query = query.Where(x => x.Person.LastName.ToLower().Contains(lastName.ToLower()));
57+
58+
if (isApproved != null)
59+
query = query.Where(x => x.IsApproved == isApproved);
60+
61+
return new GriddlyResult<SimpleOrder>(query);
62+
}
63+
2464
public GriddlyResult TestGrid(string firstName, int? zipStart, int? zipEnd)
2565
{
2666
IQueryable<TestGridItem> query = _testData;

Griddly/Griddly.csproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -255,6 +255,8 @@
255255
<Content Include="Views\Home\IndexGrid.cshtml" />
256256
<Content Include="Views\Shared\Griddly\GriddlyFilterInline.cshtml" />
257257
<Content Include="Views\Shared\Griddly\GriddlyFilterForm.cshtml" />
258+
<Content Include="Views\Home\Editly.cshtml" />
259+
<Content Include="Views\Home\EditlyGrid.cshtml" />
258260
<Content Include="Views\Home\HistoryTest.cshtml" />
259261
</ItemGroup>
260262
<ItemGroup>

Griddly/Views/Home/Editly.cshtml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
@{
2+
//ViewBag.Title = "Home Page";
3+
}
4+
5+
<div class="row">
6+
<div class="col-md-12">
7+
<h1>Editly</h1>
8+
@Html.Griddly("EditlyGrid")
9+
<form>
10+
<div class="form-group">
11+
<input id="edit-item" class="form-control" type="text" style="display:none" data-val="true" data-val-number="This field must be a number." data-val-range="This field must be greater than or equal to 0.01" data-val-range-min="0.01" data-val-required="This field is required." />
12+
<select id="edit-number" class="form-control" style="display:none">
13+
<option>1</option>
14+
<option>2</option>
15+
<option>3</option>
16+
<option>4</option>
17+
<option>5</option>
18+
<option>6</option>
19+
<option>7</option>
20+
<option>8</option>
21+
<option>9</option>
22+
<option>10</option>
23+
</select>
24+
<div id="edit-currency" class="input-group" style="display:none;">
25+
<span class="input-group-addon">$</span>
26+
<input type="text" class="form-control" />
27+
</div>
28+
<input id="edit-firstname" class="form-control" type="text" style="display:none" data-val="true" data-val-number="This field must be a number." data-val-range="This field must be greater than or equal to 0.01" data-val-range-min="0.01" data-val-required="This field is required." />
29+
<input id="edit-lastname" class="form-control" type="text" style="display:none" data-val="true" data-val-number="This field must be a number." data-val-range="This field must be greater than or equal to 0.01" data-val-range-min="0.01" data-val-required="This field is required." />
30+
<select id="edit-bool" class="form-control" style="display:none">
31+
<option>True</option>
32+
<option>False</option>
33+
</select>
34+
</div>
35+
</form>
36+
</div>
37+
</div>
38+
39+
@section scripts
40+
{
41+
<script>
42+
$(".editly-grid table").editly(
43+
{
44+
editors: [
45+
$("#edit-item"),
46+
$("#edit-number"),
47+
$("#edit-currency"),
48+
$("#edit-firstname"),
49+
$("#edit-lastname"),
50+
$("#edit-bool")
51+
]
52+
});
53+
</script>
54+
}

Griddly/Views/Home/EditlyGrid.cshtml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
@{
2+
Layout = null;
3+
}
4+
5+
@Html.Griddly(new GriddlySettings<SimpleOrder>()
6+
{
7+
ClassName = "editly-grid",
8+
}
9+
.Column(x => x.Item,
10+
filter: x => x.FilterBox(FilterDataType.String), summaryValue: "Total")
11+
.Column(x => x.Quantity,
12+
filter: x => x.FilterRange(FilterDataType.Integer, htmlClass: "testing"), summaryFunction: SummaryAggregateFunction.Sum)
13+
.Column(x => x.Total, format: "c", defaultSort: SortDirection.Descending,
14+
filter: x => x.FilterRange(FilterDataType.Currency), summaryFunction: SummaryAggregateFunction.Sum)
15+
.Column(x => x.Person.FirstName, "First Name",
16+
filter: x => x.FilterBox(FilterDataType.String))
17+
.Column(x => x.Person.LastName, "Last Name",
18+
filter: x => x.FilterBox(FilterDataType.String))
19+
.Column(x => x.IsApproved, "Approved?",
20+
filter: x => x.FilterBool(nullItemText: "Both"))
21+
)

Griddly/Views/Home/Index.cshtml

Lines changed: 1 addition & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -162,49 +162,5 @@
162162
<h3>Live Demo</h3>
163163
<p>And here's what it looks like after that's all set up.</p>
164164
@Html.Griddly("IndexGrid")
165-
<form>
166-
<div class="form-group">
167-
<input id="edit-item" class="form-control" type="text" style="display:none" data-val="true" data-val-number="This field must be a number." data-val-range="This field must be greater than or equal to 0.01" data-val-range-min="0.01" data-val-required="This field is required." />
168-
<select id="edit-number" class="form-control" style="display:none">
169-
<option>1</option>
170-
<option>2</option>
171-
<option>3</option>
172-
<option>4</option>
173-
<option>5</option>
174-
<option>6</option>
175-
<option>7</option>
176-
<option>8</option>
177-
<option>9</option>
178-
<option>10</option>
179-
</select>
180-
<div id="edit-currency" class="input-group" style="display:none;">
181-
<span class="input-group-addon">$</span>
182-
<input type="text" class="form-control" />
183-
</div>
184-
<input id="edit-firstname" class="form-control" type="text" style="display:none" data-val="true" data-val-number="This field must be a number." data-val-range="This field must be greater than or equal to 0.01" data-val-range-min="0.01" data-val-required="This field is required." />
185-
<input id="edit-lastname" class="form-control" type="text" style="display:none" data-val="true" data-val-number="This field must be a number." data-val-range="This field must be greater than or equal to 0.01" data-val-range-min="0.01" data-val-required="This field is required." />
186-
<select id="edit-bool" class="form-control" style="display:none">
187-
<option>True</option>
188-
<option>False</option>
189-
</select>
190-
</div>
191-
</form>
192165
</div>
193-
</div>
194-
195-
@section scripts
196-
{
197-
<script>
198-
$(".index-grid table").editly(
199-
{
200-
editors: [
201-
$("#edit-item"),
202-
$("#edit-number"),
203-
$("#edit-currency"),
204-
$("#edit-firstname"),
205-
$("#edit-lastname"),
206-
$("#edit-bool")
207-
]
208-
});
209-
</script>
210-
}
166+
</div>

Griddly/Views/Shared/_Layout.cshtml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
<div class="navbar-collapse collapse">
2424
<ul class="nav navbar-nav">
2525
<li class="@(ViewContext.RouteData.Values["action"].ToString() == "examples" ? "active" : null)">@Html.ActionLink("Examples", "Examples")</li>
26+
<li class="@(ViewContext.RouteData.Values["action"].ToString() == "editly" ? "active" : null)">@Html.ActionLink("Editly", "Editly")</li>
2627
<li class="@(ViewContext.RouteData.Values["action"].ToString() == "historytest" ? "active" : null)">@Html.ActionLink("History Test", "HistoryTest")</li>
2728
<li><a href="https://github.com/programcsharp/griddly/issues">Issues</a></li>
2829
<li class="@(ViewContext.RouteData.Values["action"].ToString() == "about" ? "active" : null)">@Html.ActionLink("About", "About")</li>

0 commit comments

Comments
 (0)