Ejemplo n.º 1
0
        public IList <CategoryDataTableModel> GetDataTable(string term, int page, int count,
                                                           Order order, CategoryOrderBy orderBy, CategorySearchBy searchBy)
        {
            IQueryable <Category> selectedCategories = _categories.AsQueryable();

            if (!string.IsNullOrEmpty(term))
            {
                switch (searchBy)
                {
                case CategorySearchBy.Name:
                    selectedCategories =
                        selectedCategories.Where(category => category.Name.Contains(term)).AsQueryable();
                    break;

                case CategorySearchBy.Description:
                    selectedCategories =
                        selectedCategories.Where(category => category.Description.Contains(term)).AsQueryable();
                    break;
                }
            }

            if (order == Order.Asscending)
            {
                switch (orderBy)
                {
                case CategoryOrderBy.Id:
                    selectedCategories = selectedCategories.OrderBy(category => category.Id).AsQueryable();
                    break;

                case CategoryOrderBy.Name:
                    selectedCategories = selectedCategories.OrderBy(category => category.Name).AsQueryable();
                    break;
                }
            }
            else
            {
                switch (orderBy)
                {
                case CategoryOrderBy.Id:
                    selectedCategories = selectedCategories.OrderByDescending(category => category.Id).AsQueryable();
                    break;

                case CategoryOrderBy.Name:
                    selectedCategories =
                        selectedCategories.OrderByDescending(category => category.Name).AsQueryable();
                    break;
                }
            }

            return(selectedCategories.Select(category => new CategoryDataTableModel
            {
                Name = category.Name,
                Description = category.Description,
                Id = category.Id,
                ArticlesCount = category.Articles.Count,
                Order = category.Order,
            }).Skip(page * count).Take(count).ToList());
        }
Ejemplo n.º 2
0
        public IList<CategoryDataTableModel> GetDataTable(string term, int page, int count,
            Order order, CategoryOrderBy orderBy, CategorySearchBy searchBy)
        {
            IQueryable<Category> selectedCategories = _categories.AsQueryable();

            if (!string.IsNullOrEmpty(term))
            {
                switch (searchBy)
                {
                    case CategorySearchBy.Name:
                        selectedCategories =
                            selectedCategories.Where(category => category.Name.Contains(term)).AsQueryable();
                        break;
                    case CategorySearchBy.Description:
                        selectedCategories =
                            selectedCategories.Where(category => category.Description.Contains(term)).AsQueryable();
                        break;
                }
            }

            if (order == Order.Asscending)
            {
                switch (orderBy)
                {
                    case CategoryOrderBy.Id:
                        selectedCategories = selectedCategories.OrderBy(category => category.Id).AsQueryable();
                        break;
                    case CategoryOrderBy.Name:
                        selectedCategories = selectedCategories.OrderBy(category => category.Name).AsQueryable();
                        break;
                }
            }
            else
            {
                switch (orderBy)
                {
                    case CategoryOrderBy.Id:
                        selectedCategories = selectedCategories.OrderByDescending(category => category.Id).AsQueryable();
                        break;
                    case CategoryOrderBy.Name:
                        selectedCategories =
                            selectedCategories.OrderByDescending(category => category.Name).AsQueryable();
                        break;
                }
            }

            return selectedCategories.Select(category => new CategoryDataTableModel
            {
                Name = category.Name,
                Description = category.Description,
                Id = category.Id,
                ArticlesCount = category.Articles.Count,
                Order = category.Order,
            }).Skip(page * count).Take(count).ToList();
        }
        public CategoryFilter(XmlElement node) : base(node)
        {
            foreach (XmlElement propertyNode in node.ChildNodes)
            {
                switch (propertyNode.Name)
                {
                case "freeText":
                    this._FreeText = propertyNode.InnerText;
                    continue;

                case "membersIn":
                    this._MembersIn = propertyNode.InnerText;
                    continue;

                case "nameOrReferenceIdStartsWith":
                    this._NameOrReferenceIdStartsWith = propertyNode.InnerText;
                    continue;

                case "managerEqual":
                    this._ManagerEqual = propertyNode.InnerText;
                    continue;

                case "memberEqual":
                    this._MemberEqual = propertyNode.InnerText;
                    continue;

                case "fullNameStartsWithIn":
                    this._FullNameStartsWithIn = propertyNode.InnerText;
                    continue;

                case "ancestorIdIn":
                    this._AncestorIdIn = propertyNode.InnerText;
                    continue;

                case "idOrInheritedParentIdIn":
                    this._IdOrInheritedParentIdIn = propertyNode.InnerText;
                    continue;

                case "orderBy":
                    this._OrderBy = (CategoryOrderBy)StringEnum.Parse(typeof(CategoryOrderBy), propertyNode.InnerText);
                    continue;
                }
            }
        }
Ejemplo n.º 4
0
 public CategoryFilter(JToken node) : base(node)
 {
     if (node["freeText"] != null)
     {
         this._FreeText = node["freeText"].Value <string>();
     }
     if (node["membersIn"] != null)
     {
         this._MembersIn = node["membersIn"].Value <string>();
     }
     if (node["nameOrReferenceIdStartsWith"] != null)
     {
         this._NameOrReferenceIdStartsWith = node["nameOrReferenceIdStartsWith"].Value <string>();
     }
     if (node["managerEqual"] != null)
     {
         this._ManagerEqual = node["managerEqual"].Value <string>();
     }
     if (node["memberEqual"] != null)
     {
         this._MemberEqual = node["memberEqual"].Value <string>();
     }
     if (node["fullNameStartsWithIn"] != null)
     {
         this._FullNameStartsWithIn = node["fullNameStartsWithIn"].Value <string>();
     }
     if (node["ancestorIdIn"] != null)
     {
         this._AncestorIdIn = node["ancestorIdIn"].Value <string>();
     }
     if (node["idOrInheritedParentIdIn"] != null)
     {
         this._IdOrInheritedParentIdIn = node["idOrInheritedParentIdIn"].Value <string>();
     }
     if (node["orderBy"] != null)
     {
         this._OrderBy = (CategoryOrderBy)StringEnum.Parse(typeof(CategoryOrderBy), node["orderBy"].Value <string>());
     }
 }
Ejemplo n.º 5
0
        public virtual ActionResult DataTable(string term = "", int page = 0, int count = 10,
                                              Order order = Order.Descending, CategoryOrderBy orderBy = CategoryOrderBy.Id,
                                              CategorySearchBy searchBy = CategorySearchBy.Name)
        {
            ViewBag.CurrentPage = page;
            ViewBag.Count       = count;

            ViewBag.TERM     = term;
            ViewBag.PAGE     = page;
            ViewBag.COUNT    = count;
            ViewBag.ORDER    = order;
            ViewBag.ORDERBY  = orderBy;
            ViewBag.SEARCHBY = searchBy;

            var selectListOrderBy = new List <SelectListItem>
            {
                new SelectListItem {
                    Text = "تاریخ", Value = "Id"
                },
                new SelectListItem {
                    Text = "نام", Value = "Name"
                },
            };

            ViewBag.OrderByItems = new SelectList(selectListOrderBy, "Value", "Text", orderBy);

            ViewBag.OrderByList = DropDownList.OrderList(order);

            ViewBag.CountList = DropDownList.CountList(count);

            IList <CategoryDataTableModel> model = _categoryService.GetDataTable(term, page, count, order, orderBy,
                                                                                 searchBy);

            ViewBag.TotalRecords = (string.IsNullOrEmpty(term)) ? _categoryService.Count : model.Count;

            return(PartialView(MVC.Admin.Category.Views._DataTable, model));
        }
Ejemplo n.º 6
0
 private IEnumerable <Category> OrderByDescending(IEnumerable <Category> categories, CategoryOrderBy categoryOrderBy)
 {
     return(categoryOrderBy == CategoryOrderBy.Newest ?
            categories.OrderByDescending(c => c.DateCreated) :
            categories.OrderByDescending(c => c.BlogCategories.Count()));
 }
 public Category(JToken node) : base(node)
 {
     if (node["id"] != null)
     {
         this._Id = ParseInt(node["id"].Value <string>());
     }
     if (node["parentId"] != null)
     {
         this._ParentId = ParseInt(node["parentId"].Value <string>());
     }
     if (node["depth"] != null)
     {
         this._Depth = ParseInt(node["depth"].Value <string>());
     }
     if (node["partnerId"] != null)
     {
         this._PartnerId = ParseInt(node["partnerId"].Value <string>());
     }
     if (node["name"] != null)
     {
         this._Name = node["name"].Value <string>();
     }
     if (node["fullName"] != null)
     {
         this._FullName = node["fullName"].Value <string>();
     }
     if (node["fullIds"] != null)
     {
         this._FullIds = node["fullIds"].Value <string>();
     }
     if (node["entriesCount"] != null)
     {
         this._EntriesCount = ParseInt(node["entriesCount"].Value <string>());
     }
     if (node["createdAt"] != null)
     {
         this._CreatedAt = ParseInt(node["createdAt"].Value <string>());
     }
     if (node["updatedAt"] != null)
     {
         this._UpdatedAt = ParseInt(node["updatedAt"].Value <string>());
     }
     if (node["description"] != null)
     {
         this._Description = node["description"].Value <string>();
     }
     if (node["tags"] != null)
     {
         this._Tags = node["tags"].Value <string>();
     }
     if (node["appearInList"] != null)
     {
         this._AppearInList = (AppearInListType)ParseEnum(typeof(AppearInListType), node["appearInList"].Value <string>());
     }
     if (node["privacy"] != null)
     {
         this._Privacy = (PrivacyType)ParseEnum(typeof(PrivacyType), node["privacy"].Value <string>());
     }
     if (node["inheritanceType"] != null)
     {
         this._InheritanceType = (InheritanceType)ParseEnum(typeof(InheritanceType), node["inheritanceType"].Value <string>());
     }
     if (node["userJoinPolicy"] != null)
     {
         this._UserJoinPolicy = (UserJoinPolicyType)ParseEnum(typeof(UserJoinPolicyType), node["userJoinPolicy"].Value <string>());
     }
     if (node["defaultPermissionLevel"] != null)
     {
         this._DefaultPermissionLevel = (CategoryUserPermissionLevel)ParseEnum(typeof(CategoryUserPermissionLevel), node["defaultPermissionLevel"].Value <string>());
     }
     if (node["owner"] != null)
     {
         this._Owner = node["owner"].Value <string>();
     }
     if (node["directEntriesCount"] != null)
     {
         this._DirectEntriesCount = ParseInt(node["directEntriesCount"].Value <string>());
     }
     if (node["referenceId"] != null)
     {
         this._ReferenceId = node["referenceId"].Value <string>();
     }
     if (node["contributionPolicy"] != null)
     {
         this._ContributionPolicy = (ContributionPolicyType)ParseEnum(typeof(ContributionPolicyType), node["contributionPolicy"].Value <string>());
     }
     if (node["membersCount"] != null)
     {
         this._MembersCount = ParseInt(node["membersCount"].Value <string>());
     }
     if (node["pendingMembersCount"] != null)
     {
         this._PendingMembersCount = ParseInt(node["pendingMembersCount"].Value <string>());
     }
     if (node["privacyContext"] != null)
     {
         this._PrivacyContext = node["privacyContext"].Value <string>();
     }
     if (node["privacyContexts"] != null)
     {
         this._PrivacyContexts = node["privacyContexts"].Value <string>();
     }
     if (node["status"] != null)
     {
         this._Status = (CategoryStatus)ParseEnum(typeof(CategoryStatus), node["status"].Value <string>());
     }
     if (node["inheritedParentId"] != null)
     {
         this._InheritedParentId = ParseInt(node["inheritedParentId"].Value <string>());
     }
     if (node["partnerSortValue"] != null)
     {
         this._PartnerSortValue = ParseInt(node["partnerSortValue"].Value <string>());
     }
     if (node["partnerData"] != null)
     {
         this._PartnerData = node["partnerData"].Value <string>();
     }
     if (node["defaultOrderBy"] != null)
     {
         this._DefaultOrderBy = (CategoryOrderBy)StringEnum.Parse(typeof(CategoryOrderBy), node["defaultOrderBy"].Value <string>());
     }
     if (node["directSubCategoriesCount"] != null)
     {
         this._DirectSubCategoriesCount = ParseInt(node["directSubCategoriesCount"].Value <string>());
     }
     if (node["moderation"] != null)
     {
         this._Moderation = (NullableBoolean)ParseEnum(typeof(NullableBoolean), node["moderation"].Value <string>());
     }
     if (node["pendingEntriesCount"] != null)
     {
         this._PendingEntriesCount = ParseInt(node["pendingEntriesCount"].Value <string>());
     }
     if (node["isAggregationCategory"] != null)
     {
         this._IsAggregationCategory = (NullableBoolean)ParseEnum(typeof(NullableBoolean), node["isAggregationCategory"].Value <string>());
     }
     if (node["aggregationCategories"] != null)
     {
         this._AggregationCategories = node["aggregationCategories"].Value <string>();
     }
     if (node["adminTags"] != null)
     {
         this._AdminTags = node["adminTags"].Value <string>();
     }
 }
Ejemplo n.º 8
0
        public Category(XmlElement node) : base(node)
        {
            foreach (XmlElement propertyNode in node.ChildNodes)
            {
                switch (propertyNode.Name)
                {
                case "id":
                    this._Id = ParseInt(propertyNode.InnerText);
                    continue;

                case "parentId":
                    this._ParentId = ParseInt(propertyNode.InnerText);
                    continue;

                case "depth":
                    this._Depth = ParseInt(propertyNode.InnerText);
                    continue;

                case "partnerId":
                    this._PartnerId = ParseInt(propertyNode.InnerText);
                    continue;

                case "name":
                    this._Name = propertyNode.InnerText;
                    continue;

                case "fullName":
                    this._FullName = propertyNode.InnerText;
                    continue;

                case "fullIds":
                    this._FullIds = propertyNode.InnerText;
                    continue;

                case "entriesCount":
                    this._EntriesCount = ParseInt(propertyNode.InnerText);
                    continue;

                case "createdAt":
                    this._CreatedAt = ParseInt(propertyNode.InnerText);
                    continue;

                case "updatedAt":
                    this._UpdatedAt = ParseInt(propertyNode.InnerText);
                    continue;

                case "description":
                    this._Description = propertyNode.InnerText;
                    continue;

                case "tags":
                    this._Tags = propertyNode.InnerText;
                    continue;

                case "appearInList":
                    this._AppearInList = (AppearInListType)ParseEnum(typeof(AppearInListType), propertyNode.InnerText);
                    continue;

                case "privacy":
                    this._Privacy = (PrivacyType)ParseEnum(typeof(PrivacyType), propertyNode.InnerText);
                    continue;

                case "inheritanceType":
                    this._InheritanceType = (InheritanceType)ParseEnum(typeof(InheritanceType), propertyNode.InnerText);
                    continue;

                case "userJoinPolicy":
                    this._UserJoinPolicy = (UserJoinPolicyType)ParseEnum(typeof(UserJoinPolicyType), propertyNode.InnerText);
                    continue;

                case "defaultPermissionLevel":
                    this._DefaultPermissionLevel = (CategoryUserPermissionLevel)ParseEnum(typeof(CategoryUserPermissionLevel), propertyNode.InnerText);
                    continue;

                case "owner":
                    this._Owner = propertyNode.InnerText;
                    continue;

                case "directEntriesCount":
                    this._DirectEntriesCount = ParseInt(propertyNode.InnerText);
                    continue;

                case "referenceId":
                    this._ReferenceId = propertyNode.InnerText;
                    continue;

                case "contributionPolicy":
                    this._ContributionPolicy = (ContributionPolicyType)ParseEnum(typeof(ContributionPolicyType), propertyNode.InnerText);
                    continue;

                case "membersCount":
                    this._MembersCount = ParseInt(propertyNode.InnerText);
                    continue;

                case "pendingMembersCount":
                    this._PendingMembersCount = ParseInt(propertyNode.InnerText);
                    continue;

                case "privacyContext":
                    this._PrivacyContext = propertyNode.InnerText;
                    continue;

                case "privacyContexts":
                    this._PrivacyContexts = propertyNode.InnerText;
                    continue;

                case "status":
                    this._Status = (CategoryStatus)ParseEnum(typeof(CategoryStatus), propertyNode.InnerText);
                    continue;

                case "inheritedParentId":
                    this._InheritedParentId = ParseInt(propertyNode.InnerText);
                    continue;

                case "partnerSortValue":
                    this._PartnerSortValue = ParseInt(propertyNode.InnerText);
                    continue;

                case "partnerData":
                    this._PartnerData = propertyNode.InnerText;
                    continue;

                case "defaultOrderBy":
                    this._DefaultOrderBy = (CategoryOrderBy)StringEnum.Parse(typeof(CategoryOrderBy), propertyNode.InnerText);
                    continue;

                case "directSubCategoriesCount":
                    this._DirectSubCategoriesCount = ParseInt(propertyNode.InnerText);
                    continue;

                case "moderation":
                    this._Moderation = (NullableBoolean)ParseEnum(typeof(NullableBoolean), propertyNode.InnerText);
                    continue;

                case "pendingEntriesCount":
                    this._PendingEntriesCount = ParseInt(propertyNode.InnerText);
                    continue;

                case "isAggregationCategory":
                    this._IsAggregationCategory = (NullableBoolean)ParseEnum(typeof(NullableBoolean), propertyNode.InnerText);
                    continue;

                case "aggregationCategories":
                    this._AggregationCategories = propertyNode.InnerText;
                    continue;
                }
            }
        }