public async Task <ActionResult <IContentBlockViewModel> > AddContentBlock(
     Guid releaseId, Guid contentSectionId, ContentBlockAddRequest request)
 {
     return(await _contentService
            .AddContentBlock(releaseId, contentSectionId, request)
            .HandleFailuresOrOk());
 }
Exemplo n.º 2
0
 public Task <Either <ActionResult, IContentBlockViewModel> > AddContentBlock(
     Guid methodologyVersionId,
     Guid contentSectionId,
     ContentBlockAddRequest request)
 {
     return(CheckContentSectionExists(methodologyVersionId, contentSectionId)
            .OnSuccess(CheckCanUpdateMethodology)
            .OnSuccess(EnsureContentBlockListNotNull)
            .OnSuccess(async tuple =>
     {
         var(methodology, section) = tuple;
         var newContentBlock = CreateContentBlockForType(request.Type);
         return await AddContentBlockToContentSectionAndSave(
             request.Order, section, newContentBlock, methodology);
     }));
 }
        public Task <Either <ActionResult, IContentBlockViewModel> > AddContentBlock(Guid releaseId,
                                                                                     Guid contentSectionId,
                                                                                     ContentBlockAddRequest request)
        {
            if (request.Type != ContentBlockType.HtmlBlock)
            {
                throw new ArgumentOutOfRangeException(nameof(request), "Cannot create type");
            }

            return
                (CheckContentSectionExists(releaseId, contentSectionId)
                 .OnSuccess(CheckCanUpdateRelease)
                 .OnSuccess(async tuple =>
            {
                var(_, section) = tuple;
                var newContentBlock = CreateContentBlockForType(request.Type);
                return await AddContentBlockToContentSectionAndSave(request.Order, section,
                                                                    newContentBlock);
            }));
        }