コード例 #1
0
 public IEnumerable <IContent> GetContentItems(OptionItemPart term, int skip = 0, int count = 0, string fieldName = null)
 {
     return(GetContentItemsQuery(term, fieldName)
            .Join <CommonPartRecord>()
            .OrderByDescending(x => x.CreatedUtc)
            .Slice(skip, count));
 }
コード例 #2
0
        public IEnumerable <OptionItemPart> GetOptionItems(int optionSetId)
        {
            var result = _contentManager.Query <OptionItemPart, OptionItemPartRecord>()
                         .Where(x => x.OptionSetId == optionSetId)
                         .WithQueryHints(new QueryHints().ExpandRecords <TitlePartRecord, CommonPartRecord>())
                         .List();

            return(OptionItemPart.Sort(result));
        }
コード例 #3
0
 public static OptionItemEntry CreateTermEntry(this OptionItemPart term)
 {
     return(new OptionItemEntry {
         Id = term.Id,
         Name = term.Name,
         Selectable = term.Selectable,
         Weight = term.Weight,
         IsChecked = false,
         ContentItem = term.ContentItem,
         OptionSetId = term.OptionSetId
     });
 }
コード例 #4
0
        public bool CreateTerm(OptionItemPart termPart)
        {
            if (GetTermByName(termPart.OptionSetId, termPart.Name) == null)
            {
                _authorizationService.CheckAccess(Permissions.CreateTerm, _services.WorkContext.CurrentUser, null);

                termPart.As <ICommonPart>().Container = GetOptionSet(termPart.OptionSetId).ContentItem;
                _contentManager.Create(termPart);
                return(true);
            }
            _notifier.Warning(T("The term {0} already exists in this taxonomy", termPart.Name));
            return(false);
        }
コード例 #5
0
        public void DeleteOptionItem(OptionItemPart optionItemPart)
        {
            _contentManager.Remove(optionItemPart.ContentItem);

            // delete termContentItems
            var optionItemContentItems = _optionItemContentItemRepository
                                         .Fetch(t => t.OptionItemRecord == optionItemPart.Record)
                                         .ToList();

            foreach (var item in optionItemContentItems)
            {
                _optionItemContentItemRepository.Delete(item);
            }
        }
コード例 #6
0
ファイル: OptionSetService.cs プロジェクト: jgtaveras/Coevery
 public IEnumerable<IContent> GetContentItems(OptionItemPart term, int skip = 0, int count = 0, string fieldName = null) {
     return GetContentItemsQuery(term, fieldName)
         .Join<CommonPartRecord>()
         .OrderByDescending(x => x.CreatedUtc)
         .Slice(skip, count);
 }
コード例 #7
0
ファイル: OptionSetService.cs プロジェクト: jgtaveras/Coevery
        public IContentQuery<OptionItemContainerPart, OptionItemContainerPartRecord> GetContentItemsQuery(OptionItemPart term, string fieldName = null) {

            var query = _contentManager
                .Query<OptionItemContainerPart, OptionItemContainerPartRecord>()
                .WithQueryHints(new QueryHints().ExpandRecords<TitlePartRecord, CommonPartRecord>());

            if (String.IsNullOrWhiteSpace(fieldName)) {
                query = query.Where(
                    tpr => tpr.OptionItems.Any(tr =>
                        tr.OptionItemRecord.Id == term.Id));
            }
            else {
                query = query.Where(
                    tpr => tpr.OptionItems.Any(tr =>
                        tr.Field == fieldName
                         && (tr.OptionItemRecord.Id == term.Id)));
            }

            return query;
        }
コード例 #8
0
ファイル: OptionSetService.cs プロジェクト: jgtaveras/Coevery
        public void DeleteOptionItem(OptionItemPart optionItemPart) {
            _contentManager.Remove(optionItemPart.ContentItem);

            // delete termContentItems
            var optionItemContentItems = _optionItemContentItemRepository
                .Fetch(t => t.OptionItemRecord == optionItemPart.Record)
                .ToList();

            foreach (var item in optionItemContentItems) {
                _optionItemContentItemRepository.Delete(item);
            }
        }
コード例 #9
0
ファイル: OptionSetService.cs プロジェクト: jgtaveras/Coevery
        public void CreateTerm(OptionItemPart termPart) {
            if (GetTermByName(termPart.OptionSetId, termPart.Name) == null) {
                _authorizationService.CheckAccess(Permissions.CreateTerm, _services.WorkContext.CurrentUser, null);

                termPart.As<ICommonPart>().Container = GetOptionSet(termPart.OptionSetId).ContentItem;
                _contentManager.Create(termPart);
            }
            else {
                _notifier.Warning(T("The term {0} already exists in this taxonomy", termPart.Name));
            }
        }
コード例 #10
0
        public IContentQuery <OptionItemContainerPart, OptionItemContainerPartRecord> GetContentItemsQuery(OptionItemPart term, string fieldName = null)
        {
            var query = _contentManager
                        .Query <OptionItemContainerPart, OptionItemContainerPartRecord>()
                        .WithQueryHints(new QueryHints().ExpandRecords <TitlePartRecord, CommonPartRecord>());

            if (String.IsNullOrWhiteSpace(fieldName))
            {
                query = query.Where(
                    tpr => tpr.OptionItems.Any(tr =>
                                               tr.OptionItemRecord.Id == term.Id));
            }
            else
            {
                query = query.Where(
                    tpr => tpr.OptionItems.Any(tr =>
                                               tr.Field == fieldName &&
                                               (tr.OptionItemRecord.Id == term.Id)));
            }

            return(query);
        }