Exemplo n.º 1
0
        public bool GetList(int id, int currentPage, int pageSize, string sortColumn, OrderType orderType, VisibilityType visibilityType, bool ignoreFilter, bool ignoreSort, out IEnumerable <WorklistAsset> assets, out int normalCount, out int hiddenCount, out int deletedCount)
        {
            AssetPagedRequest assetPagedRequest = new AssetPagedRequest()
            {
                assetId        = id,
                currentPage    = currentPage,
                pageSize       = pageSize,
                sortColumn     = sortColumn,
                orderType      = orderType,
                visibilityType = visibilityType,
                ignoreFilter   = ignoreFilter,
                ignoreSort     = ignoreSort
            };
            AssetPagedRequest  assetPagedRequest1 = assetPagedRequest;
            string             str = this._api.SendRequest("POST", "/Asset/Paged", JsonConvert.SerializeObject(assetPagedRequest1));
            AssetPagedResponse assetPagedResponse = JsonConvert.DeserializeObject <AssetPagedResponse>(str);

            assets       = assetPagedResponse.assets;
            normalCount  = assetPagedResponse.normalCount;
            hiddenCount  = assetPagedResponse.hiddenCount;
            deletedCount = assetPagedResponse.deletedCount;
            return(assetPagedResponse.IsSuccessful);
        }
Exemplo n.º 2
0
 public AssetPagedResponse Paged(AssetPagedRequest request)
 {
     return(process <AssetPagedResponse>("Paged", request));
 }
Exemplo n.º 3
0
        private int AddAssetsToList(List<AssetInfo> assets, AccessAsset accessAsset, string assetPath, int folderAssetId, int currentPage, int pageSize)
        {
            var returnAllPages = pageSize == -1;

            // Fetch specified page of data
            var request = new AssetPagedRequest
            {
                assetId = folderAssetId,
                currentPage = currentPage - 1,
                pageSize = returnAllPages ? _maxSupportedPageSize : pageSize,
                sortColumn = "",
                orderType = cpAssetOrderType.Ascending,
                visibilityType = cpAssetVisibilityType.Normal,
                ignoreFilter = true,
                ignoreSort = true
            };

            var response = accessAsset.Paged(request);

            if (response != null && response.assets != null)
            {
                foreach (var worklistAsset in response.assets)
                {
                    if (worklistAsset.type == (int)AssetType.File || worklistAsset.type == (int)AssetType.Folder)
                    {
                        var publishedUrl = _settings.PublishSiteRootUrl + _settings.ImageBrowsePublishServerPath + assetPath + "/" + worklistAsset.label;
                        assets.Add(new AssetInfo
                        {
                            Id = worklistAsset.id,
                            Label = worklistAsset.label,
                            CmsPath = worklistAsset.FullPath,
                            PublishedUrl = publishedUrl,
                            IsFolder = worklistAsset.type == (int)AssetType.Folder
                        });
                    }
                }
            }

            // If returning all results, determine if additional pages of data need to be loaded
            if (returnAllPages && (response.normalCount > (currentPage * _maxSupportedPageSize)))
            {
                currentPage++;
                return AddAssetsToList(assets, accessAsset, assetPath, folderAssetId, currentPage, pageSize);
            }

            return response.normalCount;
        }