webdav portal filter + detail view added
This commit is contained in:
parent
280628e362
commit
51d432fd2e
156 changed files with 32494 additions and 260 deletions
|
@ -0,0 +1,78 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Web;
|
||||
using System.Web.Mvc;
|
||||
using Microsoft.Ajax.Utilities;
|
||||
using WebsitePanel.WebDavPortal.Models.Common.DataTable;
|
||||
|
||||
|
||||
namespace WebsitePanel.WebDavPortal.ModelBinders.DataTables
|
||||
{
|
||||
public class JqueryDataTableModelBinder : DefaultModelBinder
|
||||
{
|
||||
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
|
||||
{
|
||||
base.BindModel(controllerContext, bindingContext);
|
||||
HttpRequestBase request = controllerContext.HttpContext.Request;
|
||||
|
||||
// Retrieve request data
|
||||
int draw = Convert.ToInt32(request["draw"]);
|
||||
int start = Convert.ToInt32(request["start"]);
|
||||
int count = Convert.ToInt32(request["length"]);
|
||||
|
||||
// Search
|
||||
var search = new JqueryDataTableSearch
|
||||
{
|
||||
Value = request["search[value]"],
|
||||
IsRegex = Convert.ToBoolean(request["search[regex]"])
|
||||
};
|
||||
|
||||
var orderIndex = 0;
|
||||
|
||||
var orders = new List<JqueryDataTableOrder>();
|
||||
|
||||
while (request["order[" + orderIndex + "][column]"] != null)
|
||||
{
|
||||
orders.Add(new JqueryDataTableOrder()
|
||||
{
|
||||
Column = Convert.ToInt32(request["order[" + orderIndex + "][column]"]),
|
||||
Ascending = (request["order[" + orderIndex + "][dir]"] == "asc")
|
||||
});
|
||||
|
||||
orderIndex++;
|
||||
}
|
||||
|
||||
// Columns
|
||||
var columnsIndex = 0;
|
||||
var columns = new List<JqueryDataTableColumn>();
|
||||
|
||||
while (request["columns[" + columnsIndex + "][name]"] != null)
|
||||
{
|
||||
columns.Add(new JqueryDataTableColumn
|
||||
{
|
||||
Data = request["columns[" + columnsIndex + "][data]"],
|
||||
Name = request["columns[" + columnsIndex + "][name]"],
|
||||
Orderable = Convert.ToBoolean(request["columns[" + columnsIndex + "][orderable]"]),
|
||||
Search = new JqueryDataTableSearch
|
||||
{
|
||||
Value = request["columns[" + columnsIndex + "][search][value]"],
|
||||
IsRegex = Convert.ToBoolean(request["columns[" + columnsIndex + "][search][regex]"])
|
||||
}
|
||||
});
|
||||
|
||||
columnsIndex++;
|
||||
}
|
||||
|
||||
return new JqueryDataTableRequest
|
||||
{
|
||||
Draw = draw,
|
||||
Start = start,
|
||||
Count = count,
|
||||
Search = search,
|
||||
Orders = orders,
|
||||
Columns = columns
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue