public bool TryFindExistingMedia(int parentNodeId, string fileName, out Media existingMedia) { var children = parentNodeId == -1 ? Media.GetRootMedias() : new Media(parentNodeId).Children; foreach (var childMedia in children) { if (childMedia.ContentType.Alias == MediaTypeAlias) { var prop = childMedia.getProperty("umbracoFile"); if (prop != null) { var destFileName = ConstructDestFileName(prop.Id, fileName); var destPath = ConstructDestPath(prop.Id); var destFilePath = VirtualPathUtility.Combine(destPath, destFileName); if (prop.Value.ToString() == destFilePath) { existingMedia = childMedia; return(true); } } } } existingMedia = null; return(false); }
public bool TryFindExistingMedia(int parentNodeId, string fileName, out Media existingMedia) { var children = parentNodeId == -1 ? Media.GetRootMedias() : new Media(parentNodeId).Children; foreach (var childMedia in children) { if (childMedia.ContentType.Alias == MediaTypeAlias) { var prop = childMedia.getProperty("umbracoFile"); if (prop != null) { var destFilePath = FileSystem.GetRelativePath(prop.Id, fileName); var destFileUrl = FileSystem.GetUrl(destFilePath); if (prop.Value.ToString() == destFileUrl) { existingMedia = childMedia; return(true); } } } } existingMedia = null; return(false); }
public bool TryFindExistingMedia(int parentNodeId, string fileName, out Media existingMedia) { var children = parentNodeId == -1 ? Media.GetRootMedias() : new Media(parentNodeId).Children; foreach (var childMedia in children) { if (childMedia.ContentType.Alias == MediaTypeAlias) { var prop = childMedia.getProperty(Constants.Conventions.Media.File); if (prop != null && prop.Value != null) { int subfolderId; var currentValue = prop.Value.ToString(); var subfolder = UmbracoConfig.For.UmbracoSettings().Content.UploadAllowDirectories ? currentValue.Replace(FileSystem.GetUrl("/"), "").Split('/')[0] : currentValue.Substring(currentValue.LastIndexOf("/", StringComparison.Ordinal) + 1).Split('-')[0]; if (int.TryParse(subfolder, out subfolderId)) { var destFilePath = GetRelativePath(subfolderId, fileName); var destFileUrl = FileSystem.GetUrl(destFilePath); if (prop.Value.ToString() == destFileUrl) { existingMedia = childMedia; return(true); } } } } } existingMedia = null; return(false); }