private BackupObject GetBackupObject(Action <ExportImportProgressInfo> progressCallback, bool handleBynaryData) { var retVal = new BackupObject(); var progressInfo = new ExportImportProgressInfo(); progressInfo.Description = "cms content loading..."; progressCallback(progressInfo); retVal.MenuLinkLists = _menuService.GetAllLinkLists().Select(x => x.ToWebModel()).ToList(); if (handleBynaryData) { var result = _contentStorageProvider.Search("/", null); foreach (var blobFolder in result.Folders.Where(x => _exportedFolders.Contains(x.Name))) { var contentFolder = new ContentFolder { Url = blobFolder.Url }; ReadContentFoldersRecurive(contentFolder); retVal.ContentFolders.Add(contentFolder); } } return(retVal); }
public IHttpActionResult GetThemeAssets(string storeId, string themeId) { base.CheckCurrentUserHasPermissionForObjects(ContentPredefinedPermissions.Read, new ContentScopeObject { StoreId = storeId }); var retVal = new List <ThemeAssetFolder>(); var result = _contentStorageProvider.Search("/Themes/" + storeId + "/" + themeId, null); foreach (var folder in result.Folders) { var themeFolder = folder.ToThemeFolderWebModel(); themeFolder.Assets.AddRange(LoadFolderAssetRecursive(folder, folder.Name)); retVal.Add(themeFolder); } return(Ok(retVal.ToArray())); }
private GetPagesResult InnerGetPages(string storeId) { var retVal = new GetPagesResult(); var result = _contentStorageProvider.Search("/Pages/" + storeId, null); foreach (var folder in result.Folders) { var pageFolder = LoadFolderRecursive(folder, folder.Name); retVal.Folders.Add(pageFolder); } foreach (var item in result.Items) { var page = item.ToPageWebModel(); page.Id = item.FileName; retVal.Pages.Add(page); } return(retVal); }