Compare commits

..

No commits in common. "3ca6245fc2bdadddb51efcdc1d13c02c6535ff45" and "3c4867a276545519380477824c5fdc63792ee08b" have entirely different histories.

3 changed files with 8 additions and 17 deletions

View File

@ -14,7 +14,10 @@ internal class HttpDownloadClient : DownloadClient
public HttpDownloadClient(GlobalBase clone, Dictionary<byte, int> rateLimitRequestsPerMinute) : base(clone, rateLimitRequestsPerMinute) public HttpDownloadClient(GlobalBase clone, Dictionary<byte, int> rateLimitRequestsPerMinute) : base(clone, rateLimitRequestsPerMinute)
{ {
Client.DefaultRequestHeaders.TryAddWithoutValidation("User-Agent", settings.userAgent); if (settings.customUserAgent is null || settings.customUserAgent.Length < 1)
Client.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue("Tranga", "1.0"));
else
Client.DefaultRequestHeaders.TryAddWithoutValidation("User-Agent", settings.customUserAgent);
} }
protected override RequestResult MakeRequestInternal(string url, string? referrer = null, string? clickButton = null) protected override RequestResult MakeRequestInternal(string url, string? referrer = null, string? clickButton = null)

View File

@ -200,9 +200,6 @@ public class Server : GlobalBase
case "Settings": case "Settings":
SendResponse(HttpStatusCode.OK, response, settings); SendResponse(HttpStatusCode.OK, response, settings);
break; break;
case "Settings/userAgent":
SendResponse(HttpStatusCode.OK, response, settings.userAgent);
break;
case "NotificationConnectors": case "NotificationConnectors":
SendResponse(HttpStatusCode.OK, response, notificationConnectors); SendResponse(HttpStatusCode.OK, response, notificationConnectors);
break; break;
@ -387,13 +384,13 @@ public class Server : GlobalBase
settings.UpdateWorkingDirectory(workingDirectory); settings.UpdateWorkingDirectory(workingDirectory);
SendResponse(HttpStatusCode.Accepted, response); SendResponse(HttpStatusCode.Accepted, response);
break;*/ break;*/
case "Settings/userAgent": case "Settings/customUserAgent":
if(!requestVariables.TryGetValue("userAgent", out string? customUserAgent)) if(!requestVariables.TryGetValue("userAgent", out string? customUserAgent))
{ {
SendResponse(HttpStatusCode.BadRequest, response); SendResponse(HttpStatusCode.BadRequest, response);
break; break;
} }
settings.UpdateUserAgent(customUserAgent); settings.customUserAgent = customUserAgent;
SendResponse(HttpStatusCode.Accepted, response); SendResponse(HttpStatusCode.Accepted, response);
break; break;
case "Settings/customRequestLimit": case "Settings/customRequestLimit":

View File

@ -1,5 +1,4 @@
using System.Net.Http.Headers; using System.Runtime.InteropServices;
using System.Runtime.InteropServices;
using Newtonsoft.Json; using Newtonsoft.Json;
using Tranga.LibraryConnectors; using Tranga.LibraryConnectors;
using Tranga.NotificationConnectors; using Tranga.NotificationConnectors;
@ -13,9 +12,7 @@ public class TrangaSettings
public string workingDirectory { get; private set; } public string workingDirectory { get; private set; }
public int apiPortNumber { get; init; } public int apiPortNumber { get; init; }
public string styleSheet { get; private set; } public string styleSheet { get; private set; }
public string? customUserAgent { get; set; } = null;
public string userAgent { get; set; } =
$"Tranga ({Enum.GetName(Environment.OSVersion.Platform)}; {(Environment.Is64BitOperatingSystem ? "x64" : "")}) / 1.0";
[JsonIgnore] public string settingsFilePath => Path.Join(workingDirectory, "settings.json"); [JsonIgnore] public string settingsFilePath => Path.Join(workingDirectory, "settings.json");
[JsonIgnore] public string libraryConnectorsFilePath => Path.Join(workingDirectory, "libraryConnectors.json"); [JsonIgnore] public string libraryConnectorsFilePath => Path.Join(workingDirectory, "libraryConnectors.json");
[JsonIgnore] public string notificationConnectorsFilePath => Path.Join(workingDirectory, "notificationConnectors.json"); [JsonIgnore] public string notificationConnectorsFilePath => Path.Join(workingDirectory, "notificationConnectors.json");
@ -123,12 +120,6 @@ public class TrangaSettings
ExportSettings(); ExportSettings();
} }
public void UpdateUserAgent(string customUserAgent)
{
this.userAgent = customUserAgent;
ExportSettings();
}
public void ExportSettings() public void ExportSettings()
{ {
if (File.Exists(settingsFilePath)) if (File.Exists(settingsFilePath))