Example #1
0
        public async Task <IHttpActionResult> GetByUriAsync([FromUri] MediaQueryDto model, CancellationToken cancellationToken)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }
            if (model == null)
            {
                model = new MediaQueryDto();
            }

            var portal = await _portalManager.FindByUriAsync(model.PortalUri, cancellationToken);

            await ApiSecurity.AuthorizeAsync(portal, AccessPermission.CanView, cancellationToken);

            var parent = default(MediaItem);

            if (model.MediaUri != null)
            {
            }
            return(Ok(ModelMapper.ToMediaListDto(
                          await _portalManager.GetMediaAsync(portal, parent, model.Name, model.OrderBy, model.Fields, cancellationToken),
                          uri => _portalManager.GetMediaLinkByUri(portal.Uri, uri))));
        }