diff --git a/ShareX.UploadersLib/FileUploaders/CustomFileUploader.cs b/ShareX.UploadersLib/FileUploaders/CustomFileUploader.cs index 2dc10acaa..b2081b45b 100644 --- a/ShareX.UploadersLib/FileUploaders/CustomFileUploader.cs +++ b/ShareX.UploadersLib/FileUploaders/CustomFileUploader.cs @@ -85,8 +85,8 @@ public override UploadResult Upload(Stream stream, string fileName) throw new Exception("'Request type' must be 'POST' when using custom file uploader."); } - UploadResult result = SendRequestFile(customUploader.GetRequestURL(), stream, fileName, customUploader.GetFileFormName(), customUploader.GetArguments(), - customUploader.GetHeaders(), responseType: customUploader.ResponseType); + UploadResult result = SendRequestFile(customUploader.GetRequestURL(), stream, fileName, customUploader.GetFileFormName(), + customUploader.GetArguments(fileName), customUploader.GetHeaders(), responseType: customUploader.ResponseType); if (result.IsSuccess) { diff --git a/ShareX.UploadersLib/Helpers/CustomUploaderItem.cs b/ShareX.UploadersLib/Helpers/CustomUploaderItem.cs index 9b7036a71..bcd1bde94 100644 --- a/ShareX.UploadersLib/Helpers/CustomUploaderItem.cs +++ b/ShareX.UploadersLib/Helpers/CustomUploaderItem.cs @@ -151,7 +151,7 @@ public string GetFileFormName() return FileFormName; } - public Dictionary GetArguments(string input = null) + public Dictionary GetArguments(string filename = "", string input = "") { Dictionary arguments = new Dictionary(); @@ -162,6 +162,7 @@ public Dictionary GetArguments(string input = null) string value = arg.Value; value = NameParser.Parse(NameParserType.Text, value); + value = value.Replace("$filename$", filename); value = value.Replace("$input$", input); arguments.Add(arg.Key, value); diff --git a/ShareX.UploadersLib/ImageUploaders/CustomImageUploader.cs b/ShareX.UploadersLib/ImageUploaders/CustomImageUploader.cs index 658aa6e65..2e48b0e4f 100644 --- a/ShareX.UploadersLib/ImageUploaders/CustomImageUploader.cs +++ b/ShareX.UploadersLib/ImageUploaders/CustomImageUploader.cs @@ -82,8 +82,8 @@ public override UploadResult Upload(Stream stream, string fileName) throw new Exception("'Request type' must be 'POST' when using custom image uploader."); } - UploadResult result = SendRequestFile(customUploader.GetRequestURL(), stream, fileName, customUploader.GetFileFormName(), customUploader.GetArguments(), - customUploader.GetHeaders(), responseType: customUploader.ResponseType); + UploadResult result = SendRequestFile(customUploader.GetRequestURL(), stream, fileName, customUploader.GetFileFormName(), + customUploader.GetArguments(fileName), customUploader.GetHeaders(), responseType: customUploader.ResponseType); if (result.IsSuccess) { diff --git a/ShareX.UploadersLib/SharingServices/CustomURLSharingService.cs b/ShareX.UploadersLib/SharingServices/CustomURLSharingService.cs index 2d908fb61..9737eb928 100644 --- a/ShareX.UploadersLib/SharingServices/CustomURLSharingService.cs +++ b/ShareX.UploadersLib/SharingServices/CustomURLSharingService.cs @@ -82,7 +82,7 @@ public override UploadResult ShareURL(string url) UploadResult result = new UploadResult { URL = url, IsURLExpected = false }; - Dictionary args = customUploader.GetArguments(url); + Dictionary args = customUploader.GetArguments("", url); if (customUploader.RequestType == CustomUploaderRequestType.POST) { diff --git a/ShareX.UploadersLib/TextUploaders/CustomTextUploader.cs b/ShareX.UploadersLib/TextUploaders/CustomTextUploader.cs index 46719186a..4e3d25745 100644 --- a/ShareX.UploadersLib/TextUploaders/CustomTextUploader.cs +++ b/ShareX.UploadersLib/TextUploaders/CustomTextUploader.cs @@ -88,7 +88,7 @@ public override UploadResult UploadText(string text, string fileName) (customUploader.Arguments == null || !customUploader.Arguments.Any(x => x.Value.Contains("$input$")))) throw new Exception("Atleast one '$input$' required for argument value."); - Dictionary args = customUploader.GetArguments(text); + Dictionary args = customUploader.GetArguments(fileName, text); if (customUploader.RequestType == CustomUploaderRequestType.POST) { diff --git a/ShareX.UploadersLib/URLShorteners/CustomURLShortener.cs b/ShareX.UploadersLib/URLShorteners/CustomURLShortener.cs index 212c619cb..1de50205e 100644 --- a/ShareX.UploadersLib/URLShorteners/CustomURLShortener.cs +++ b/ShareX.UploadersLib/URLShorteners/CustomURLShortener.cs @@ -83,7 +83,7 @@ public override UploadResult ShortenURL(string url) UploadResult result = new UploadResult { URL = url }; - Dictionary args = customUploader.GetArguments(url); + Dictionary args = customUploader.GetArguments("", url); if (customUploader.RequestType == CustomUploaderRequestType.POST) {