From 35eb84b63d4b589d115b860f7a28905306de9fc5 Mon Sep 17 00:00:00 2001 From: Walker Aldridge Date: Wed, 20 Mar 2024 17:05:40 -0500 Subject: [PATCH] Conditionally build update body --- waifuVault-csharp-api.csproj | 2 +- waifuvault.cs | 22 +++++++++++++++------- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/waifuVault-csharp-api.csproj b/waifuVault-csharp-api.csproj index fda2fd5..54d89bc 100644 --- a/waifuVault-csharp-api.csproj +++ b/waifuVault-csharp-api.csproj @@ -2,7 +2,7 @@ Waifuvault - 1.2.2 + 1.2.3 Walker Aldridge (walker@waifuvault.moe) waifuvault.moe waifuvault;temp file hosting;waifu;vault diff --git a/waifuvault.cs b/waifuvault.cs index 98dbffb..29ef1d7 100644 --- a/waifuvault.cs +++ b/waifuvault.cs @@ -53,13 +53,21 @@ public static async Task fileUpdate(string token, string? password var client = new HttpClient(); var cts = new CancellationTokenSource(); var url = $"{baseURL}/{token}"; - var content = new FormUrlEncodedContent(new [] - { - new KeyValuePair("password", password), - new KeyValuePair("previousPassword", previousPassword), - new KeyValuePair("customExpiry", customExpiry), - new KeyValuePair("hideFilename", hideFilename.ToString().ToLower()) - }); + var fields = new List>(); + if (password!=null) { + fields.Add(new KeyValuePair("password", password)); + } + if (previousPassword!=null) { + fields.Add(new KeyValuePair("previousPassword", previousPassword)); + } + if (previousPassword!=null) { + fields.Add(new KeyValuePair("previousPassword", previousPassword)); + } + if (customExpiry!=null) { + fields.Add(new KeyValuePair("customExpiry", customExpiry)); + } + fields.Add(new KeyValuePair("hideFilename", hideFilename.ToString().ToLower())); + var content = new FormUrlEncodedContent(fields.ToArray()); var infoResponse = await client.PatchAsync(url, content); checkError(infoResponse,false); var infoResponseData = await infoResponse.Content.ReadAsStringAsync();