private void codeActivity1_ExecuteCode(object sender, EventArgs e) { DataEntityToken token = (DataEntityToken)this.EntityToken; IMediaFileFolder folder = (IMediaFileFolder)token.Data; string storeId = folder.StoreId; string parentPath = folder.Path; StoreIdFilterQueryable <IMediaFileFolder> folderQueryable = new StoreIdFilterQueryable <IMediaFileFolder>(DataFacade.GetData <IMediaFileFolder>(), storeId); StoreIdFilterQueryable <IMediaFile> fileQueryable = new StoreIdFilterQueryable <IMediaFile>(DataFacade.GetData <IMediaFile>(), storeId); string innerElementsPathPrefix = string.Format("{0}/", parentPath); bool anyFiles = (from item in fileQueryable where item.FolderPath.StartsWith(innerElementsPathPrefix) || item.FolderPath == parentPath select item).Any(); bool anyFolders = (from item in folderQueryable where item.Path.StartsWith(innerElementsPathPrefix) select item).Any(); if ((anyFiles == false) && (anyFolders == false)) { this.Bindings.Add("MessageText", StringResourceSystemFacade.GetString("Composite.Management", "Website.Forms.Administrative.DeleteMediaFolder.Text")); } else { this.Bindings.Add("MessageText", StringResourceSystemFacade.GetString("Composite.Management", "Website.Forms.Administrative.DeleteMediaFolder.HasChildringText")); } }
private void codeActivity1_ExecuteCode(object sender, EventArgs e) { var token = (DataEntityToken)this.EntityToken; var folder = (IMediaFileFolder)token.Data; string storeId = folder.StoreId; string parentPath = folder.Path; var folderQueryable = new StoreIdFilterQueryable <IMediaFileFolder>(DataFacade.GetData <IMediaFileFolder>(), storeId); var fileQueryable = new StoreIdFilterQueryable <IMediaFile>(DataFacade.GetData <IMediaFile>(), storeId); string innerElementsPathPrefix = $"{parentPath}/"; bool anyFiles = (from item in fileQueryable where item.FolderPath.StartsWith(innerElementsPathPrefix) || item.FolderPath == parentPath select item).Any(); bool anyFolders = (from item in folderQueryable where item.Path.StartsWith(innerElementsPathPrefix) select item).Any(); var message = !anyFiles && !anyFolders ? Texts.Website_Forms_Administrative_DeleteMediaFolder_Text : Texts.Website_Forms_Administrative_DeleteMediaFolder_HasChildringText; this.Bindings.Add("MessageText", message); }
private void HasDataReferences(object sender, ConditionalEventArgs e) { DataEntityToken token = (DataEntityToken)this.EntityToken; IMediaFileFolder folder = (IMediaFileFolder)token.Data; string storeId = folder.StoreId; string parentPath = folder.Path; string innerElementsPathPrefix = string.Format("{0}/", parentPath); var fileQueryable = new StoreIdFilterQueryable<IMediaFile>(DataFacade.GetData<IMediaFile>(), storeId); IEnumerable<IMediaFile> childFiles = (from item in fileQueryable where item.FolderPath.StartsWith(innerElementsPathPrefix) || item.FolderPath == parentPath select item).Evaluate(); var brokenReferences = new List<IData>(); foreach (IMediaFile mediaFile in childFiles) { List<IData> references = DataReferenceFacade.GetNotOptionalReferences(mediaFile); foreach (IData reference in references) { if (brokenReferences.Any(data => data.DataSourceId.Equals(reference.DataSourceId))) { continue; } brokenReferences.Add(reference); } } e.Result = brokenReferences.Count > 0; if (brokenReferences.Count == 0) { return; } Bindings.Add("ReferencedData", DataReferenceFacade.GetBrokenReferencesReport(brokenReferences)); }
private void HasDataReferences(object sender, ConditionalEventArgs e) { DataEntityToken token = (DataEntityToken)this.EntityToken; IMediaFileFolder folder = (IMediaFileFolder)token.Data; string storeId = folder.StoreId; string parentPath = folder.Path; string innerElementsPathPrefix = string.Format("{0}/", parentPath); var fileQueryable = new StoreIdFilterQueryable <IMediaFile>(DataFacade.GetData <IMediaFile>(), storeId); IEnumerable <IMediaFile> childFiles = (from item in fileQueryable where item.FolderPath.StartsWith(innerElementsPathPrefix) || item.FolderPath == parentPath select item).Evaluate(); var brokenReferences = new List <IData>(); foreach (IMediaFile mediaFile in childFiles) { List <IData> references = DataReferenceFacade.GetNotOptionalReferences(mediaFile); foreach (IData reference in references) { if (brokenReferences.Any(data => data.DataSourceId.Equals(reference.DataSourceId))) { continue; } brokenReferences.Add(reference); } } e.Result = brokenReferences.Count > 0; if (brokenReferences.Count == 0) { return; } Bindings.Add("ReferencedData", DataReferenceFacade.GetBrokenReferencesReport(brokenReferences)); }
private void codeActivity1_ExecuteCode(object sender, EventArgs e) { DataEntityToken token = (DataEntityToken)this.EntityToken; IMediaFileFolder folder = (IMediaFileFolder)token.Data; string storeId = folder.StoreId; string parentPath = folder.Path; StoreIdFilterQueryable<IMediaFileFolder> folderQueryable = new StoreIdFilterQueryable<IMediaFileFolder>(DataFacade.GetData<IMediaFileFolder>(), storeId); StoreIdFilterQueryable<IMediaFile> fileQueryable = new StoreIdFilterQueryable<IMediaFile>(DataFacade.GetData<IMediaFile>(), storeId); string innerElementsPathPrefix = string.Format("{0}/", parentPath); bool anyFiles = (from item in fileQueryable where item.FolderPath.StartsWith(innerElementsPathPrefix) || item.FolderPath == parentPath select item).Any(); bool anyFolders = (from item in folderQueryable where item.Path.StartsWith(innerElementsPathPrefix) select item).Any(); if ((anyFiles == false) && (anyFolders == false)) { this.Bindings.Add("MessageText", StringResourceSystemFacade.GetString("Composite.Management", "Website.Forms.Administrative.DeleteMediaFolder.Text")); } else { this.Bindings.Add("MessageText", StringResourceSystemFacade.GetString("Composite.Management", "Website.Forms.Administrative.DeleteMediaFolder.HasChildringText")); } }