private string GetVideoFileName() { FileDirectoryOperations.OriginalFileName = MediaFileName; string legalChars = @"^[a-zA-Z0-9._]+$"; if (Regex.IsMatch(MediaFileName, legalChars, RegexOptions.IgnoreCase)) { return(MediaFileName); } else { log.Warn($"Filename: {MediaFileName} contains illegal chars"); char[] c = MediaFileName.ToCharArray(); var tmpFileName = new StringBuilder(); foreach (char ch in c) { if (!Regex.IsMatch(ch.ToString(), legalChars, RegexOptions.IgnoreCase)) { log.Warn($"Replacing illegal char: {ch} with _"); tmpFileName.Append(ch.ToString().Replace(ch.ToString(), "_")); } else { tmpFileName.Append(ch); } } log.Warn($"New destination file name: {tmpFileName}, Original filename: {MediaFileName}"); return(tmpFileName.ToString()); } }
/// <summary>Snippet for GetMediaFile</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public void GetMediaFileResourceNames() { // Create client MediaFileServiceClient mediaFileServiceClient = MediaFileServiceClient.Create(); // Initialize request argument(s) MediaFileName resourceName = MediaFileName.FromCustomerMediaFile("[CUSTOMER]", "[MEDIA_FILE]"); // Make the request MediaFile response = mediaFileServiceClient.GetMediaFile(resourceName); }
/// <summary>Snippet for GetMediaFileAsync</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public async Task GetMediaFileResourceNamesAsync() { // Create client MediaFileServiceClient mediaFileServiceClient = await MediaFileServiceClient.CreateAsync(); // Initialize request argument(s) MediaFileName resourceName = MediaFileName.FromCustomerMediaFile("[CUSTOMER]", "[MEDIA_FILE]"); // Make the request MediaFile response = await mediaFileServiceClient.GetMediaFileAsync(resourceName); }
/// <summary>Snippet for GetMediaFile</summary> public void GetMediaFileResourceNames() { // Snippet: GetMediaFile(MediaFileName, CallSettings) // Create client MediaFileServiceClient mediaFileServiceClient = MediaFileServiceClient.Create(); // Initialize request argument(s) MediaFileName resourceName = MediaFileName.FromCustomerMediaFile("[CUSTOMER_ID]", "[MEDIA_FILE_ID]"); // Make the request MediaFile response = mediaFileServiceClient.GetMediaFile(resourceName); // End snippet }
/// <summary>Snippet for GetMediaFile</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public void GetMediaFileRequestObject() { // Create client MediaFileServiceClient mediaFileServiceClient = MediaFileServiceClient.Create(); // Initialize request argument(s) GetMediaFileRequest request = new GetMediaFileRequest { ResourceNameAsMediaFileName = MediaFileName.FromCustomerMediaFile("[CUSTOMER_ID]", "[MEDIA_FILE_ID]"), }; // Make the request MediaFile response = mediaFileServiceClient.GetMediaFile(request); }
/// <summary>Snippet for GetMediaFileAsync</summary> public async Task GetMediaFileResourceNamesAsync() { // Snippet: GetMediaFileAsync(MediaFileName, CallSettings) // Additional: GetMediaFileAsync(MediaFileName, CancellationToken) // Create client MediaFileServiceClient mediaFileServiceClient = await MediaFileServiceClient.CreateAsync(); // Initialize request argument(s) MediaFileName resourceName = MediaFileName.FromCustomerMediaFile("[CUSTOMER_ID]", "[MEDIA_FILE_ID]"); // Make the request MediaFile response = await mediaFileServiceClient.GetMediaFileAsync(resourceName); // End snippet }
public async Task GetMediaFileAsync() { Mock <MediaFileService.MediaFileServiceClient> mockGrpcClient = new Mock <MediaFileService.MediaFileServiceClient>(MockBehavior.Strict); GetMediaFileRequest expectedRequest = new GetMediaFileRequest { ResourceName = new MediaFileName("[CUSTOMER]", "[MEDIA_FILE]").ToString(), }; MediaFile expectedResponse = new MediaFile { ResourceName = "resourceName2625949903", }; mockGrpcClient.Setup(x => x.GetMediaFileAsync(expectedRequest, It.IsAny <CallOptions>())) .Returns(new Grpc.Core.AsyncUnaryCall <MediaFile>(Task.FromResult(expectedResponse), null, null, null, null)); MediaFileServiceClient client = new MediaFileServiceClientImpl(mockGrpcClient.Object, null); string formattedResourceName = new MediaFileName("[CUSTOMER]", "[MEDIA_FILE]").ToString(); MediaFile response = await client.GetMediaFileAsync(formattedResourceName); Assert.AreEqual(expectedResponse, response); mockGrpcClient.VerifyAll(); }
public void GetMediaFile() { Mock <MediaFileService.MediaFileServiceClient> mockGrpcClient = new Mock <MediaFileService.MediaFileServiceClient>(MockBehavior.Strict); GetMediaFileRequest expectedRequest = new GetMediaFileRequest { ResourceName = new MediaFileName("[CUSTOMER]", "[MEDIA_FILE]").ToString(), }; MediaFile expectedResponse = new MediaFile { ResourceName = "resourceName2625949903", }; mockGrpcClient.Setup(x => x.GetMediaFile(expectedRequest, It.IsAny <CallOptions>())) .Returns(expectedResponse); MediaFileServiceClient client = new MediaFileServiceClientImpl(mockGrpcClient.Object, null); string formattedResourceName = new MediaFileName("[CUSTOMER]", "[MEDIA_FILE]").ToString(); MediaFile response = client.GetMediaFile(formattedResourceName); Assert.AreEqual(expectedResponse, response); mockGrpcClient.VerifyAll(); }
/// <summary> /// Provides operations necessary to create and store new library file. /// </summary> private void HandleLibrariesUpload() { // Get related library info if (LibraryInfo != null) { MediaFileInfo mediaFile = null; // Get the site name SiteInfo si = SiteInfoProvider.GetSiteInfo(LibraryInfo.LibrarySiteID); string siteName = (si != null) ? si.SiteName : SiteContext.CurrentSiteName; string message = string.Empty; try { // Check the allowed extensions CheckAllowedExtensions(); if (MediaFileID > 0) { #region "Check permissions" if (!MediaLibraryInfoProvider.IsUserAuthorizedPerLibrary(LibraryInfo, "FileModify")) { throw new Exception(GetString("media.security.nofilemodify")); } #endregion mediaFile = MediaFileInfoProvider.GetMediaFileInfo(MediaFileID); if (mediaFile != null) { // Ensure object version SynchronizationHelper.EnsureObjectVersion(mediaFile); if (IsMediaThumbnail) { string newFileExt = Path.GetExtension(ucFileUpload.FileName).TrimStart('.'); if ((ImageHelper.IsImage(newFileExt)) && (newFileExt.ToLowerCSafe() != "ico") && (newFileExt.ToLowerCSafe() != "wmf")) { // Update or creation of Media File update string previewSuffix = MediaLibraryHelper.GetMediaFilePreviewSuffix(siteName); if (!String.IsNullOrEmpty(previewSuffix)) { string previewExtension = Path.GetExtension(ucFileUpload.PostedFile.FileName); string previewName = Path.GetFileNameWithoutExtension(MediaLibraryHelper.GetPreviewFileName(mediaFile.FileName, mediaFile.FileExtension, previewExtension, siteName, previewSuffix)); string previewFolder = DirectoryHelper.CombinePath(Path.EnsureSlashes(LibraryFolderPath.TrimEnd('/')), MediaLibraryHelper.GetMediaFileHiddenFolder(siteName)); byte[] previewFileBinary = new byte[ucFileUpload.PostedFile.ContentLength]; ucFileUpload.PostedFile.InputStream.Read(previewFileBinary, 0, ucFileUpload.PostedFile.ContentLength); // Delete current preview thumbnails MediaFileInfoProvider.DeleteMediaFilePreview(siteName, mediaFile.FileLibraryID, mediaFile.FilePath); // Save preview file MediaFileInfoProvider.SaveFileToDisk(siteName, LibraryInfo.LibraryFolder, previewFolder, previewName, previewExtension, mediaFile.FileGUID, previewFileBinary, false, false); // Log synchronization task SynchronizationHelper.LogObjectChange(mediaFile, TaskTypeEnum.UpdateObject); } // Drop the cache dependencies CacheHelper.TouchKeys(MediaFileInfoProvider.GetDependencyCacheKeys(mediaFile, true)); } else { message = GetString("media.file.onlyimgthumb"); } } else { // Get folder path string path = Path.GetDirectoryName(DirectoryHelper.CombinePath(MediaLibraryInfoProvider.GetMediaLibraryFolderPath(LibraryInfo.LibraryID), mediaFile.FilePath)); // If file system permissions are sufficient for file update if (DirectoryHelper.CheckPermissions(path, false, true, true, true)) { // Delete existing media file MediaFileInfoProvider.DeleteMediaFile(LibraryInfo.LibrarySiteID, LibraryInfo.LibraryID, mediaFile.FilePath, true); // Update media file preview if (MediaLibraryHelper.HasPreview(siteName, LibraryInfo.LibraryID, mediaFile.FilePath)) { // Get new unique file name string newName = URLHelper.GetSafeFileName(ucFileUpload.PostedFile.FileName, siteName); // Get new file path string newPath = DirectoryHelper.CombinePath(path, newName); newPath = MediaLibraryHelper.EnsureUniqueFileName(newPath); newName = Path.GetFileName(newPath); // Rename preview MediaLibraryHelper.MoveMediaFilePreview(mediaFile, newName); // Delete preview thumbnails MediaFileInfoProvider.DeleteMediaFilePreviewThumbnails(mediaFile); } // Receive media info on newly posted file mediaFile = GetUpdatedFile(mediaFile); // Save media file information MediaFileInfoProvider.SetMediaFileInfo(mediaFile); } else { // Set error message message = String.Format(GetString("media.accessdeniedtopath"), path); } } } } else { #region "Check permissions" // Creation of new media file if (!MediaLibraryInfoProvider.IsUserAuthorizedPerLibrary(LibraryInfo, "FileCreate")) { throw new Exception(GetString("media.security.nofilecreate")); } #endregion // No file for upload specified if (!ucFileUpload.HasFile) { throw new Exception(GetString("media.newfile.errorempty")); } // Create new media file record mediaFile = new MediaFileInfo(ucFileUpload.PostedFile, LibraryID, LibraryFolderPath, ResizeToWidth, ResizeToHeight, ResizeToMaxSideSize, LibraryInfo.LibrarySiteID); mediaFile.FileDescription = ""; // Save the new file info MediaFileInfoProvider.SetMediaFileInfo(mediaFile); } } catch (Exception ex) { // Creation of new media file failed message = ex.Message; } finally { // Create media file info string string mediaInfo = ""; if ((mediaFile != null) && (mediaFile.FileID > 0) && (IncludeNewItemInfo)) { mediaInfo = mediaFile.FileID + "|" + LibraryFolderPath.Replace('\\', '>').Replace("'", "\\'"); } // Ensure message text message = HTMLHelper.EnsureLineEnding(message, " "); if (RaiseOnClick) { ScriptHelper.RegisterStartupScript(Page, typeof(Page), "UploaderOnClick", ScriptHelper.GetScript("if (parent.UploaderOnClick) { parent.UploaderOnClick('" + MediaFileName.Replace(" ", "").Replace(".", "").Replace("-", "") + "'); }")); } string script = String.Format(@" if (typeof(parent.DFU) !== 'undefined') {{ parent.DFU.OnUploadCompleted('{0}'); }} if ((window.parent != null) && (/parentelemid={1}/i.test(window.location.href)) && (window.parent.InitRefresh_{1} != null)){{ window.parent.InitRefresh_{1}({2}, false, '{3}'{4}); }}", QueryHelper.GetString("containerid", ""), ParentElemID, ScriptHelper.GetString(message.Trim()), mediaInfo, (InsertMode ? ", 'insert'" : ", 'update'")); // Call function to refresh parent window ScriptHelper.RegisterStartupScript(Page, typeof(Page), "RefreshParrent", ScriptHelper.GetScript(script)); } } }