/*
Kooboo is a content management system based on ASP.NET MVC framework. Copyright 2009 Yardi Technology Limited.
This program is free software: you can redistribute it and/or modify it under the terms of the
GNU General Public License version 3 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program.
If not, see http://www.kooboo.com/gpl3/.
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Linq.Dynamic;
using Everest.Library.ExtensionMethod;
using System.Web.Mvc;
namespace Everest.CmsServices.Controllers{
public class CmsExtController : Everest.Library.Mvc.ExtControllerBase
{
/// <summary>
/// Ensures the paging.
/// </summary>
/// <param name="start">The start.</param>
/// <param name="limit">The limit.</param>
protected void EnsurePaging(out int start, out int limit)
{
start = 0;
limit = 50;
if (!StringExtensions.IsNullOrEmptyTrim(Request.Form["start"]))
{
start = int.Parse(Request.Form["start"]);
}
if (!StringExtensions.IsNullOrEmptyTrim(Request.Form["limit"]))
{
limit = int.Parse(Request.Form["limit"]);
}
}
/// <summary>
/// Orders the by request.
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="query">The query.</param>
/// <returns></returns>
protected IQueryable<T> OrderByRequest<T>(IQueryable<T> query)
{
if (!StringExtensions.IsNullOrEmptyTrim(Request.Form["sort"]))
{
query = query.OrderBy(GetOrderStatement());
}
return query;
}
protected IEnumerable<T> OrderByRequest<T>(IEnumerable<T> query)
{
if (!StringExtensions.IsNullOrEmptyTrim(Request.Form["sort"]))
{
query = query.OrderBy(GetOrderStatement());
}
return query;
}
protected string GetOrderStatement()
{
if (!StringExtensions.IsNullOrEmptyTrim(Request.Form["sort"]))
{
return string.Format("{0} {1}", Request.Form["sort"], Request.Form["dir"]);
}
return string.Empty;
}
}
}
|