public IEnumerable<ForumPart> GetForumsForCategory(ForumCategoryPart forumCategoryPart, int skip, int count, VersionOptions versionOptions) { var forums = _contentManager.Query<ForumPart, ForumPartRecord>(versionOptions) .OrderBy(fp => fp.Weight) .WithQueryHints(new QueryHints().ExpandRecords<CommonPartRecord, TitlePartRecord>()) .Join<CommonPartRecord>() .Where(cpr => cpr.Container.Id == forumCategoryPart.Id).Slice(skip, count).ToList(); /* * var forumIds = _categoryToForumMappingRepository.Table.Where(rec => rec.ForumCategoryPartRecord.Id == forumCategoryPart.Id).Select(rec => rec.ForumPartRecord.Id).ToList(); var forums = _contentManager.Query<ForumPart, ForumPartRecord>(versionOptions).OrderByDescending(fpr => fpr.Weight).Where(forum => forumIds.Contains(forumCategoryPart.Id)).Slice(skip, count).ToList(); */ /* return GetParentQuery(forumCategoryPart, versionOptions) .Join<ThreadPartRecord>() .OrderByDescending(o => o.IsSticky) .Join<CommonPartRecord>() .OrderByDescending(o => o.ModifiedUtc) .ForPart<ThreadPart>() .Slice(skip, count) .ToList(); */ return forums; }
public IEnumerable<ForumPart> GetForumsForCategory(ForumCategoryPart forumCategoryPart, VersionOptions versionOptions) { return _contentManager.Query<ForumPart, ForumPartRecord>(versionOptions) .WithQueryHints(new QueryHints().ExpandRecords<AutoroutePartRecord, TitlePartRecord, CommonPartRecord>()) .OrderBy( fp=>fp.Weight) .Join<CommonPartRecord>() .Where( cpr=>cpr.Container.Id == forumCategoryPart.Id) .List(); }
public void VerifyUrlLength(ForumCategoryPart part) { var forumSettings = _orchardServices.WorkContext.CurrentSite.As<ForumsSettingsPart>(); var url = part.As<AutoroutePart>().DisplayAlias; if (forumSettings.CategoryTitleMaximumLength > 0) { part.As<AutoroutePart>().DisplayAlias = url.Substring(0, Math.Min(forumSettings.CategoryUrlMaximumLength, url.Length)); } }
public IEnumerable<ForumPart> GetForumsForCategory(ForumCategoryPart forumCategoryPart, VersionOptions versionOptions) { var forums = _contentManager.Query<ForumPart, ForumPartRecord>(versionOptions) .OrderBy( fp=>fp.Weight) .WithQueryHints(new QueryHints().ExpandRecords<CommonPartRecord, TitlePartRecord>()) .Join<CommonPartRecord>() .Where(cpr => cpr.Container.Id == forumCategoryPart.Id).List().ToList(); //var forumIds = _categoryToForumMappingRepository.Table.Where(rec => rec.ForumCategoryPartRecord.Id == forumCategoryPart.Id).Select(rec => rec.ForumPartRecord.Id).ToList(); //var forums = _contentManager.Query<ForumPart, ForumPartRecord>(versionOptions).Where(forum => forumIds.Contains(forum.Id)).List().ToList(); return forums; }
public void Delete(ForumCategoryPart forumCategoryPart) { _contentManager.Remove(forumCategoryPart.ContentItem); }
public static string ForumCreateForAdmin(this UrlHelper urlHelper, ForumCategoryPart forumCategoryPart) { return urlHelper.Action("CreateForum", "ForumAdmin", new { forumCategoryPartId = forumCategoryPart.Id, area = Constants.LocalArea }); }