Skip to content

Commit 60c9ddc

Browse files
committed
Datetime range
1 parent d6f223b commit 60c9ddc

14 files changed

+43
-10
lines changed

Mvc.JQuery.Datatables.Example/Controllers/FakeDatabase.cs

+1
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ public class User
5757

5858
public PositionTypes? Position { get; set; }
5959

60+
6061
public DateTime? Hired { get; set; }
6162

6263
public Numbers Number { get; set; }

Mvc.JQuery.Datatables.Example/Controllers/HomeController.cs

+3-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ public class UserView
6464
[DataTables(SortDirection = SortDirection.Ascending, Order = 0)]
6565
public int Id { get; set; }
6666

67-
[DataTables(DisplayName = "E-Mail", Searchable = false)]
67+
[DataTables(DisplayName = "E-Mail", Searchable = true)]
6868
public string Email { get; set; }
6969

7070
[DataTables( Sortable = false)]
@@ -78,6 +78,8 @@ public class UserView
7878
public decimal Salary { get; set; }
7979

8080
public string Position { get; set; }
81+
82+
[DataTablesFilter(DataTablesFilterType.DateTimeRange)]
8183
public DateTime? Hired { get; set; }
8284

8385
public Numbers Number { get; set; }

Mvc.JQuery.Datatables.Example/Mvc.JQuery.Datatables.Example.csproj

+3
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,9 @@
6464
<Private>True</Private>
6565
<HintPath>..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
6666
</Reference>
67+
<Reference Include="Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
68+
<HintPath>..\packages\Newtonsoft.Json.5.0.8\lib\net45\Newtonsoft.Json.dll</HintPath>
69+
</Reference>
6770
<Reference Include="System.Data.DataSetExtensions" />
6871
<Reference Include="System.Web.Extensions" />
6972
<Reference Include="Microsoft.CSharp" />

Mvc.JQuery.Datatables.Example/Views/Home/_ExampleTable.cshtml

+5-1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@
1010
<script type="text/javascript" src="//cdn.datatables.net/tabletools/2.2.1/js/dataTables.tableTools.min.js"></script>
1111
<link rel="stylesheet" href="//cdn.datatables.net/tabletools/2.2.1/css/dataTables.tableTools.css" />
1212

13+
<script type="text/javascript" src="/Content/jquery-datatables-column-filter/jquery-ui-timepicker-addon.js"></script>
14+
<link rel="stylesheet" href="/Content/jquery-datatables-column-filter/jquery-ui-timepicker-addon.css" />
15+
16+
<script type="text/javascript" src="/Content/jquery-datatables-column-filter/media/js/jquery.dataTables.columnFilter.js"></script>
1317
<script type="text/javascript" src="/Content/jquery-datatables-column-filter/media/js/jquery.dataTables.columnFilter.js"></script>
1418

1519
<link rel="stylesheet" href="//cdn.datatables.net/colvis/1.1.1/css/dataTables.colVis.css" />
@@ -36,7 +40,7 @@
3640
vm.LengthMenu = LengthMenuVm.Default();
3741
vm.LengthMenu.RemoveAll(t => t.Item2 == 5);
3842
vm.PageLength = 25; //... and set a default
39-
43+
vm.ColVis = true;
4044
if (Request.QueryString["lang"] == "de")
4145
{
4246
//vm.Language = "{ 'sUrl': '" + Url.Content("~/Content/jquery.dataTables.lang.de-DE.txt") + "' }";

Mvc.JQuery.Datatables.Example/Views/Shared/_Layout.cshtml

+3-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44
<meta charset="utf-8" />
55
<title>@ViewBag.Title</title>
66
<script src="@Url.Content("~/Scripts/modernizr-2.0.6-development-only.js")" type="text/javascript"></script>
7-
<link href="@Url.Content("~/Content/bootstrap.min.css")" rel="stylesheet" type="text/css"/>
8-
<link href="@Url.Content("~/Content/bootstrap-overrides.css")" rel="stylesheet" type="text/css"/>
97
<script src="@Url.Content("~/Scripts/jquery-1.11.0.min.js")" type="text/javascript"></script>
108
<script src="@Url.Content("~/Scripts/jquery-ui-1.10.3.min.js")" type="text/javascript"></script>
119
<link href="/Content/themes/Aristo/jquery-ui-1.8.7.custom.css" type="text/css" rel="stylesheet" />
@@ -60,5 +58,8 @@
6058
</div>
6159
<footer>
6260
</footer>
61+
<link href="@Url.Content("~/Content/bootstrap.min.css")" rel="stylesheet" type="text/css" />
62+
<link href="@Url.Content("~/Content/bootstrap-overrides.css")" rel="stylesheet" type="text/css" />
63+
6364
</body>
6465
</html>

Mvc.JQuery.Datatables.Example/packages.config

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
1919
<package id="Modernizr" version="1.7" />
2020
<package id="Modernizr" version="2.0.6" />
21+
<package id="Newtonsoft.Json" version="5.0.8" targetFramework="net45" />
2122
<package id="Twitter.Bootstrap" version="1.4.0" />
2223
<package id="Twitter.Bootstrap" version="2.0.1" />
2324
</packages>

Mvc.JQuery.Datatables.Templates/Mvc.JQuery.Datatables.Templates.csproj

+3
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,10 @@
8585
<None Include="Views\Web.config" />
8686
</ItemGroup>
8787
<ItemGroup>
88+
<Content Include="Content\jquery-datatables-column-filter\jquery-ui-timepicker-addon.css" />
89+
<Content Include="Content\jquery-datatables-column-filter\jquery-ui-timepicker-addon.js" />
8890
<Content Include="Content\jquery-datatables-column-filter\media\js\jquery.dataTables.columnFilter.js" />
91+
<Content Include="Content\jquery-datatables-column-filter\media\js\jquery.multiselect.js" />
8992
<Content Include="Views\Shared\DataTable.cshtml" />
9093
</ItemGroup>
9194
<ItemGroup>

Mvc.JQuery.Datatables.Templates/Views/Shared/DataTable.cshtml

-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@
4949
options["bServerSide"] = true;
5050
options["bFilter"] = Model.ShowSearch;
5151
options["sDom"] = Model.Dom;
52-
5352
if (Model.LengthMenu != null)
5453
{
5554
options["lengthMenu"] = new JRaw(Model.LengthMenu);

Mvc.JQuery.Datatables/ColumnFilterSettingsVm.cs

+5-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System.Collections;
22
using System.Linq;
33
using System.Web.Script.Serialization;
4+
using Newtonsoft.Json.Linq;
45

56
namespace Mvc.JQuery.Datatables
67
{
@@ -11,13 +12,16 @@ public class ColumnFilterSettingsVm : Hashtable
1112
public ColumnFilterSettingsVm(DataTableConfigVm vm)
1213
{
1314
_vm = vm;
14-
this["bUseColVis"] = true;
15+
1516
this["sPlaceHolder"] = "head:after";
1617
}
1718

19+
public JObject columnBuilders = new JObject();
20+
1821
public override string ToString()
1922
{
2023
var noColumnFilter = new FilterDef(null);
24+
this["bUseColVis"] = _vm.ColVis;
2125
this["aoColumns"] = _vm.Columns
2226
//.Where(c => c.Visible || c.Filter["sSelector"] != null)
2327
.Select(c => c.Searchable?c.Filter:noColumnFilter).ToArray();

Mvc.JQuery.Datatables/DataTablesFilterAttribute.cs

+6-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,12 @@ public override void ApplyTo(ColDef colDef, System.Reflection.PropertyInfo pi)
4242

4343
public enum DataTablesFilterType
4444
{
45-
Select,NumberRange,DateRange,Checkbox,Text
45+
Select,
46+
NumberRange,
47+
DateRange,
48+
Checkbox,
49+
Text,
50+
DateTimeRange
4651
}
4752

4853
}

Mvc.JQuery.Datatables/Mvc.JQuery.Datatables.csproj

+8-2
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@
4141
<Private>True</Private>
4242
<HintPath>..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
4343
</Reference>
44-
<Reference Include="Newtonsoft.Json">
45-
<HintPath>..\packages\Newtonsoft.Json.5.0.8\lib\net40\Newtonsoft.Json.dll</HintPath>
44+
<Reference Include="Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
45+
<HintPath>..\packages\Newtonsoft.Json.5.0.8\lib\net45\Newtonsoft.Json.dll</HintPath>
4646
</Reference>
4747
<Reference Include="System" />
4848
<Reference Include="System.ComponentModel.DataAnnotations" />
@@ -124,6 +124,12 @@
124124
<EmbeddedResource Include="..\Mvc.JQuery.Datatables.Templates\Content\jquery-datatables-column-filter\media\js\jquery.dataTables.columnFilter.js">
125125
<Link>Content\jquery-datatables-column-filter\media\js\jquery.dataTables.columnFilter.js</Link>
126126
</EmbeddedResource>
127+
<EmbeddedResource Include="..\Mvc.JQuery.Datatables.Templates\Content\jquery-datatables-column-filter\jquery-ui-timepicker-addon.css">
128+
<Link>Content\jquery-datatables-column-filter\jquery-ui-timepicker-addon.css</Link>
129+
</EmbeddedResource>
130+
<EmbeddedResource Include="..\Mvc.JQuery.Datatables.Templates\Content\jquery-datatables-column-filter\jquery-ui-timepicker-addon.js">
131+
<Link>Content\jquery-datatables-column-filter\jquery-ui-timepicker-addon.js</Link>
132+
</EmbeddedResource>
127133
<Content Include="RegisterDatatablesModelBinder.cs.pp" />
128134
<None Include="packages.config" />
129135
<None Include="Views\Web.config" />

Mvc.JQuery.Datatables/packages.config

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
<package id="Microsoft.AspNet.Razor" version="3.1.0" targetFramework="net45" />
55
<package id="Microsoft.AspNet.WebPages" version="3.1.0" targetFramework="net45" />
66
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
7-
<package id="Newtonsoft.Json" version="5.0.8" targetFramework="net40" requireReinstallation="True" />
7+
<package id="Newtonsoft.Json" version="5.0.8" targetFramework="net45" />
88
</packages>

Mvc.Jquery.DataTables.Tests/Mvc.JQuery.DataTables.Tests.csproj

+3
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@
4848
<Reference Include="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
4949
<Private>True</Private>
5050
</Reference>
51+
<Reference Include="Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
52+
<HintPath>..\packages\Newtonsoft.Json.5.0.8\lib\net45\Newtonsoft.Json.dll</HintPath>
53+
</Reference>
5154
<Reference Include="nunit.framework">
5255
<HintPath>..\packages\NUnit.2.6.2\lib\nunit.framework.dll</HintPath>
5356
</Reference>

Mvc.Jquery.DataTables.Tests/packages.config

+1
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,6 @@
77
<package id="Microsoft.AspNet.WebPages" version="3.1.0" targetFramework="net45" />
88
<package id="Microsoft.SqlServer.Compact" version="4.0.8854.1" targetFramework="net45" />
99
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
10+
<package id="Newtonsoft.Json" version="5.0.8" targetFramework="net45" />
1011
<package id="NUnit" version="2.6.2" targetFramework="net45" />
1112
</packages>

0 commit comments

Comments
 (0)