Compare commits

...

18 Commits

Author SHA1 Message Date
Bogdan
4321c1d40c Catch search engine related error messages for MyAnonaMouse 2024-12-28 23:42:14 +02:00
Mark McDowall
bb2548a08d Don't send session information to Sentry
(cherry picked from commit fae24e98fb9230c2f3701caef457332952c6723f)
2024-12-28 15:22:41 +02:00
Weblate
3a9b841fad Multiple Translations updated by Weblate
ignore-downstream

Co-authored-by: GkhnGRBZ <gkhn.gurbuz@hotmail.com>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: Tommy Au <smarttommyau@gmail.com>
Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: marapavelka <mara.pavelka@gmail.com>
Translate-URL: https://translate.servarr.com/projects/servarr/prowlarr/cs/
Translate-URL: https://translate.servarr.com/projects/servarr/prowlarr/fi/
Translate-URL: https://translate.servarr.com/projects/servarr/prowlarr/tr/
Translate-URL: https://translate.servarr.com/projects/servarr/prowlarr/zh_TW/
Translation: Servarr/Prowlarr
2024-12-27 22:55:30 +02:00
Bogdan
31203d1370 Add more links for info FlareSolverr and category 8000 2024-12-27 22:53:53 +02:00
Bogdan
c8a910eaf4 Fixed: (RuTracker) Update categories
Co-authored-by: garfield69 <garfield69@outlook.com>
2024-12-27 22:53:53 +02:00
Bogdan
9ab3c3e6c7 Update how to get cookies info for Cardigann
Co-authored-by: garfield69 <garfield69@outlook.com>
2024-12-27 22:53:53 +02:00
Bogdan
4659cb706a Fixed: (Knaben) Update base url
Co-authored-by: garfield69 <garfield69@outlook.com>
2024-12-27 22:53:53 +02:00
Bogdan
500759bf1f Bump version to 1.29.1 2024-12-22 13:24:47 +02:00
Bogdan
43c7c43257 Bump Microsoft.Data.SqlClient to 2.1.7 2024-12-18 12:56:44 +02:00
Bogdan
9c2fced391 Bump System.Text.Json to 6.0.10 2024-12-18 02:34:29 +02:00
Bogdan
52ec5b6ff6 Bump MailKit to 4.8.0 2024-12-18 02:34:29 +02:00
zodihax
b46e657976 Fixed: (NorBits) Searching UTF-8 characters with full search disabled (#2305)
Co-authored-by: zodihaxx <parity.umpires-0m@icloud.com>
2024-12-17 23:04:05 +02:00
Bogdan
51fd30ba10 Use message from error response for Gazelle indexers 2024-12-17 15:30:25 +02:00
Mark McDowall
5fbb347108 Upgrade typescript-eslint packages to 8.181.1
(cherry picked from commit ed10b63fa0c161cac7e0a2084e53785ab1798208)
2024-12-17 14:09:24 +02:00
Mark McDowall
54d3d44620 Upgrade Font Awesome to 6.7.1
(cherry picked from commit 016b5718386593c030f14fcac307c93ee1ceeca6)
2024-12-17 14:04:46 +02:00
Mark McDowall
5ca18683ca Upgrade babel to 7.26.0
(cherry picked from commit bfcd017012730c97eb587ae2d2e91f72ee7a1de3)
2024-12-17 13:59:56 +02:00
Bogdan
6bdf5f5d69 Use error message from Redacted response 2024-12-16 22:25:55 +02:00
Bogdan
7cba7152f1 Bump version to 1.29.0 2024-12-16 22:11:18 +02:00
22 changed files with 1006 additions and 832 deletions

View File

@@ -9,7 +9,7 @@ variables:
testsFolder: './_tests'
yarnCacheFolder: $(Pipeline.Workspace)/.yarn
nugetCacheFolder: $(Pipeline.Workspace)/.nuget/packages
majorVersion: '1.28.2'
majorVersion: '1.29.1'
minorVersion: $[counter('minorVersion', 1)]
prowlarrVersion: '$(majorVersion).$(minorVersion)'
buildName: '$(Build.SourceBranchName).$(prowlarrVersion)'

View File

@@ -17,7 +17,7 @@ export async function fetchTranslations(): Promise<boolean> {
translations = data.Strings;
resolve(true);
} catch (error) {
} catch {
resolve(false);
}
});

View File

@@ -23,10 +23,10 @@
"defaults"
],
"dependencies": {
"@fortawesome/fontawesome-free": "6.6.0",
"@fortawesome/fontawesome-svg-core": "6.6.0",
"@fortawesome/free-regular-svg-icons": "6.6.0",
"@fortawesome/free-solid-svg-icons": "6.6.0",
"@fortawesome/fontawesome-free": "6.7.1",
"@fortawesome/fontawesome-svg-core": "6.7.1",
"@fortawesome/free-regular-svg-icons": "6.7.1",
"@fortawesome/free-solid-svg-icons": "6.7.1",
"@fortawesome/react-fontawesome": "0.2.2",
"@juggle/resize-observer": "3.4.0",
"@microsoft/signalr": "6.0.25",
@@ -84,21 +84,21 @@
"typescript": "5.7.2"
},
"devDependencies": {
"@babel/core": "7.25.8",
"@babel/eslint-parser": "7.25.8",
"@babel/plugin-proposal-export-default-from": "7.25.8",
"@babel/core": "7.26.0",
"@babel/eslint-parser": "7.25.9",
"@babel/plugin-proposal-export-default-from": "7.25.9",
"@babel/plugin-syntax-dynamic-import": "7.8.3",
"@babel/preset-env": "7.25.8",
"@babel/preset-react": "7.25.7",
"@babel/preset-typescript": "7.25.7",
"@babel/preset-env": "7.26.0",
"@babel/preset-react": "7.26.3",
"@babel/preset-typescript": "7.26.0",
"@types/lodash": "4.14.195",
"@types/react-document-title": "2.0.10",
"@types/react-router-dom": "5.3.3",
"@types/react-text-truncate": "0.19.0",
"@types/react-window": "1.8.8",
"@types/webpack-livereload-plugin": "2.3.6",
"@typescript-eslint/eslint-plugin": "6.21.0",
"@typescript-eslint/parser": "6.21.0",
"@typescript-eslint/eslint-plugin": "8.18.1",
"@typescript-eslint/parser": "8.18.1",
"are-you-es5": "2.1.2",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",

View File

@@ -119,7 +119,7 @@ namespace NzbDrone.Common.Instrumentation.Sentry
o.Environment = BuildInfo.Branch;
// Crash free run statistics (sends a ping for healthy and for crashes sessions)
o.AutoSessionTracking = true;
o.AutoSessionTracking = false;
// Caches files in the event device is offline
// Sentry creates a 'sentry' sub directory, no need to concat here
@@ -148,7 +148,7 @@ namespace NzbDrone.Common.Instrumentation.Sentry
_debounce = new SentryDebounce();
// initialize to true and reconfigure later
// Otherwise it will default to false and any errors occuring
// Otherwise it will default to false and any errors occurring
// before config file gets read will not be filtered
FilterEvents = true;
SentryEnabled = true;
@@ -207,9 +207,7 @@ namespace NzbDrone.Common.Instrumentation.Sentry
private void OnError(Exception ex)
{
var webException = ex as WebException;
if (webException != null)
if (ex is WebException webException)
{
var response = webException.Response as HttpWebResponse;
var statusCode = response?.StatusCode;

View File

@@ -16,6 +16,7 @@
<PackageReference Include="Sentry" Version="4.0.2" />
<PackageReference Include="NLog.Targets.Syslog" Version="7.0.0" />
<PackageReference Include="SharpZipLib" Version="1.4.2" />
<PackageReference Include="System.Text.Json" Version="6.0.10" />
<PackageReference Include="System.ValueTuple" Version="4.5.0" />
<PackageReference Include="System.Data.SQLite.Core.Servarr" Version="1.0.115.5-18" />
<PackageReference Include="System.Configuration.ConfigurationManager" Version="6.0.1" />

View File

@@ -95,3 +95,8 @@ public class GazelleIndexResponse
public string Authkey { get; set; }
public string Passkey { get; set; }
}
public class GazelleErrorResponse
{
public string Error { get; init; }
}

View File

@@ -4,6 +4,7 @@ using System.Linq;
using System.Net;
using NzbDrone.Common.Extensions;
using NzbDrone.Common.Http;
using NzbDrone.Common.Serializer;
using NzbDrone.Core.Indexers.Exceptions;
using NzbDrone.Core.Parser;
using NzbDrone.Core.Parser.Model;
@@ -32,7 +33,9 @@ public class GazelleParser : IParseIndexerResponse
// Remove cookie cache
CookiesUpdater(null, null);
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request");
STJson.TryDeserialize<GazelleErrorResponse>(indexerResponse.Content, out var errorResponse);
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request: {errorResponse?.Error ?? "Check the logs for more information."}");
}
if (!indexerResponse.HttpResponse.Headers.ContentType.Contains(HttpAccept.Json.Value))

View File

@@ -7,6 +7,7 @@ using Newtonsoft.Json;
using NLog;
using NzbDrone.Common.Extensions;
using NzbDrone.Common.Http;
using NzbDrone.Common.Serializer;
using NzbDrone.Core.Annotations;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.Indexers.Definitions.Gazelle;
@@ -148,7 +149,9 @@ public class GreatPosterWallParser : GazelleParser
throw new IndexerException(indexerResponse, $"Redirected to {indexerResponse.HttpResponse.RedirectUrl} from indexer request");
}
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request");
STJson.TryDeserialize<GazelleErrorResponse>(indexerResponse.Content, out var errorResponse);
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request: {errorResponse?.Error ?? "Check the logs for more information."}");
}
if (!indexerResponse.HttpResponse.Headers.ContentType.Contains(HttpAccept.Json.Value))

View File

@@ -23,7 +23,8 @@ namespace NzbDrone.Core.Indexers.Definitions
public class Knaben : TorrentIndexerBase<NoAuthTorrentBaseSettings>
{
public override string Name => "Knaben";
public override string[] IndexerUrls => new[] { "https://knaben.eu/" };
public override string[] IndexerUrls => new[] { "https://knaben.org/" };
public override string[] LegacyUrls => new[] { "https://knaben.eu/" };
public override string Description => "Knaben is a Public torrent meta-search engine";
public override IndexerPrivacy Privacy => IndexerPrivacy.Public;
public override IndexerCapabilities Capabilities => SetCapabilities();
@@ -145,7 +146,7 @@ namespace NzbDrone.Core.Indexers.Definitions
public class KnabenRequestGenerator : IIndexerRequestGenerator
{
private const string API_SEARCH_ENDPOINT = "https://api.knaben.eu/v1";
private const string ApiSearchEndpoint = "https://api.knaben.org/v1";
private readonly IndexerCapabilities _capabilities;
@@ -226,7 +227,7 @@ namespace NzbDrone.Core.Indexers.Definitions
body.Add("categories", categories.Select(int.Parse).Distinct().ToArray());
}
var request = new HttpRequest(API_SEARCH_ENDPOINT, HttpAccept.Json)
var request = new HttpRequest(ApiSearchEndpoint, HttpAccept.Json)
{
Headers =
{

View File

@@ -441,6 +441,11 @@ namespace NzbDrone.Core.Indexers.Definitions
return releaseInfos.ToArray();
}
if (jsonResponse.Data == null)
{
throw new IndexerException(indexerResponse, "Unexpected response content from indexer request: {0}", jsonResponse.Message ?? "Check the logs for more information.");
}
var hasUserVip = HasUserVip(httpResponse.GetCookies());
foreach (var item in jsonResponse.Data)
@@ -655,7 +660,8 @@ namespace NzbDrone.Core.Indexers.Definitions
public class MyAnonamouseResponse
{
public string Error { get; set; }
public List<MyAnonamouseTorrent> Data { get; set; }
public IReadOnlyCollection<MyAnonamouseTorrent> Data { get; set; }
public string Message { get; set; }
}
public class MyAnonamouseBuyPersonalFreeleechResponse

View File

@@ -190,7 +190,7 @@ public class NorBitsRequestGenerator : IIndexerRequestGenerator
}
else if (!string.IsNullOrWhiteSpace(term))
{
searchTerm = "search=" + term.UrlEncode(Encoding.GetEncoding(28591));
searchTerm = "search=" + term.UrlEncode(Encoding.UTF8);
}
searchUrl += "?" + searchTerm + "&" + parameters.GetQueryString();

View File

@@ -8,6 +8,7 @@ using FluentValidation;
using NLog;
using NzbDrone.Common.Extensions;
using NzbDrone.Common.Http;
using NzbDrone.Common.Serializer;
using NzbDrone.Core.Annotations;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.Indexers.Definitions.Gazelle;
@@ -252,7 +253,9 @@ namespace NzbDrone.Core.Indexers.Definitions
if (indexerResponse.HttpResponse.StatusCode != HttpStatusCode.OK)
{
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request");
STJson.TryDeserialize<GazelleErrorResponse>(indexerResponse.Content, out var errorResponse);
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request: {errorResponse?.Error ?? "Check the logs for more information."}");
}
if (!indexerResponse.HttpResponse.Headers.ContentType.Contains(HttpAccept.Json.Value))

View File

@@ -8,6 +8,7 @@ using FluentValidation;
using NLog;
using NzbDrone.Common.Extensions;
using NzbDrone.Common.Http;
using NzbDrone.Common.Serializer;
using NzbDrone.Core.Annotations;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.Indexers.Definitions.Gazelle;
@@ -252,7 +253,9 @@ namespace NzbDrone.Core.Indexers.Definitions
if (indexerResponse.HttpResponse.StatusCode != HttpStatusCode.OK)
{
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request");
STJson.TryDeserialize<GazelleErrorResponse>(indexerResponse.Content, out var errorResponse);
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request: {errorResponse?.Error ?? "Check the logs for more information."}");
}
if (!indexerResponse.HttpResponse.Headers.ContentType.Contains(HttpAccept.Json.Value))

View File

@@ -1292,7 +1292,6 @@ namespace NzbDrone.Core.Indexers.Definitions
caps.Categories.AddCategoryMapping(650, NewznabStandardCategory.PCMobileOther, "Игры для мобильных устройств");
caps.Categories.AddCategoryMapping(2149, NewznabStandardCategory.PCMobileAndroid, "|- Игры для Android");
caps.Categories.AddCategoryMapping(2420, NewznabStandardCategory.ConsoleOther, "|- Игры для Oculus Quest");
caps.Categories.AddCategoryMapping(1001, NewznabStandardCategory.PC, "|- Игры для Java");
caps.Categories.AddCategoryMapping(1004, NewznabStandardCategory.PCMobileOther, "|- Игры для Symbian");
caps.Categories.AddCategoryMapping(1002, NewznabStandardCategory.PCMobileOther, "|- Игры для Windows Mobile");
caps.Categories.AddCategoryMapping(240, NewznabStandardCategory.OtherMisc, "Игровое видео");
@@ -1308,7 +1307,6 @@ namespace NzbDrone.Core.Indexers.Definitions
caps.Categories.AddCategoryMapping(1379, NewznabStandardCategory.PC, "|- Операционные системы (Linux, Unix)");
caps.Categories.AddCategoryMapping(1381, NewznabStandardCategory.PC, "|- Программное обеспечение (Linux, Unix)");
caps.Categories.AddCategoryMapping(1473, NewznabStandardCategory.PC, "|- Другие ОС и ПО под них");
caps.Categories.AddCategoryMapping(1195, NewznabStandardCategory.PC, "Тестовые диски для настройки аудио/видео аппаратуры");
caps.Categories.AddCategoryMapping(1013, NewznabStandardCategory.PC, "Системные программы");
caps.Categories.AddCategoryMapping(1028, NewznabStandardCategory.PC, "|- Работа с жёстким диском");
caps.Categories.AddCategoryMapping(1029, NewznabStandardCategory.PC, "|- Резервное копирование");
@@ -1350,6 +1348,7 @@ namespace NzbDrone.Core.Indexers.Definitions
caps.Categories.AddCategoryMapping(1018, NewznabStandardCategory.PC, "|- Шаблоны для сайтов и CMS");
caps.Categories.AddCategoryMapping(1058, NewznabStandardCategory.PC, "|- Разное (Веб-разработка и программирование)");
caps.Categories.AddCategoryMapping(1016, NewznabStandardCategory.PC, "Программы для работы с мультимедиа и 3D");
caps.Categories.AddCategoryMapping(1195, NewznabStandardCategory.PC, "|- Тестовые диски для настройки аудио/видео аппаратуры");
caps.Categories.AddCategoryMapping(1079, NewznabStandardCategory.PC, "|- Программные комплекты");
caps.Categories.AddCategoryMapping(1080, NewznabStandardCategory.PC, "|- Плагины для программ компании Adobe");
caps.Categories.AddCategoryMapping(1081, NewznabStandardCategory.PC, "|- Графические редакторы");

View File

@@ -6,6 +6,7 @@ using System.Text.RegularExpressions;
using NLog;
using NzbDrone.Common.Extensions;
using NzbDrone.Common.Http;
using NzbDrone.Common.Serializer;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.Indexers.Definitions.Gazelle;
using NzbDrone.Core.Indexers.Exceptions;
@@ -78,7 +79,9 @@ public class SecretCinemaParser : IParseIndexerResponse
// Remove cookie cache
CookiesUpdater(null, null);
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request");
STJson.TryDeserialize<GazelleErrorResponse>(indexerResponse.Content, out var errorResponse);
throw new IndexerException(indexerResponse, $"Unexpected response status {indexerResponse.HttpResponse.StatusCode} code from indexer request: {errorResponse?.Error ?? "Check the logs for more information."}");
}
if (!indexerResponse.HttpResponse.Headers.ContentType.Contains(HttpAccept.Json.Value))

View File

@@ -1,6 +1,6 @@
{
"Add": "Přidat",
"CertificateValidation": "Ověření certifikátu",
"CertificateValidation": "Ověřování certifikátu",
"DeleteBackupMessageText": "Opravdu chcete odstranit zálohu '{name}'?",
"YesCancel": "Ano, zrušit",
"About": "O aplikaci",
@@ -18,7 +18,7 @@
"Usenet": "Usenet",
"AddDownloadClient": "Přidat klienta pro stahování",
"Backups": "Zálohy",
"CancelPendingTask": "Opravdu chcete zrušit tento nevyřízený úkol?",
"CancelPendingTask": "Opravdu chcete zrušit tento úkol čekající na vyřízení?",
"MovieIndexScrollBottom": "Rejstřík filmů: Posun dolů",
"ProxyType": "Typ serveru proxy",
"Reddit": "Reddit",
@@ -69,23 +69,23 @@
"UnselectAll": "Odznačit vše",
"UpdateStartupNotWritableHealthCheckMessage": "Aktualizaci nelze nainstalovat, protože spouštěcí složku „{startupFolder}“ nelze zapisovat uživatelem „{userName}“.",
"Version": "Verze",
"AnalyticsEnabledHelpText": "Odesílejte anonymní informace o použití a chybách na servery {appName}u. To zahrnuje informace o vašem prohlížeči, které stránky {appName} WebUI používáte, hlášení chyb a také verzi operačního systému a běhového prostředí. Tyto informace použijeme k upřednostnění funkcí a oprav chyb.",
"AnalyticsEnabledHelpText": "Odesílejte anonymní informace o použití a chybách na servery {appName}u. To zahrnuje informace o vašem prohlížeči, které stránky webového rozhraní {appName}u používáte, hlášení chyb a také verzi operačního systému a běhového prostředí. Tyto informace použijeme k určení priorit funkcí a oprav chyb.",
"ApiKey": "Klíč API",
"AppDataDirectory": "Adresář AppData",
"AppDataLocationHealthCheckMessage": "Aktualizace nebude možná, aby se zabránilo odstranění AppData při aktualizaci",
"ApplicationStatusCheckAllClientMessage": "Všechny seznamy nejsou k dispozici z důvodu selhání",
"ApplicationStatusCheckSingleClientMessage": "Seznamy nejsou k dispozici z důvodu selhání: {0}",
"ApplicationStatusCheckAllClientMessage": "Všechny aplikace jsou nedostupné z důvodu poruch",
"ApplicationStatusCheckSingleClientMessage": "Aplikace nedostupné z důvodu poruch: {0}",
"Apply": "Použít",
"Branch": "Větev",
"BranchUpdate": "Pobočka, která se má použít k aktualizaci {appName}",
"BranchUpdate": "Větev použitá k aktualizaci {appName}u",
"EditIndexer": "Upravit indexátor",
"ForMoreInformationOnTheIndividualDownloadClients": "Další informace o jednotlivých klientech pro stahování získáte kliknutím na informační tlačítka.",
"General": "Všeobecné",
"CloseCurrentModal": "Zavřít aktuální modální",
"CloseCurrentModal": "Zavřít aktuální modální okno",
"Columns": "Sloupce",
"ConnectionLost": "Spojení ztraceno",
"ConnectionLost": "Ztráta spojení",
"ConnectSettings": "Nastavení připojení",
"Custom": "Zvyk",
"Custom": "Vlastní",
"Error": "Chyba",
"Failed": "Selhalo",
"FeatureRequests": "Žádosti o funkce",
@@ -106,7 +106,7 @@
"Test": "Test",
"UnableToLoadTags": "Značky nelze načíst",
"IndexerProxyStatusAllUnavailableHealthCheckMessage": "Všechny indexery nejsou k dispozici z důvodu selhání",
"ApplyTags": "Použít značky",
"ApplyTags": "Použít štítky",
"MoreInfo": "Více informací",
"System": "Systém",
"Enabled": "Povoleno",
@@ -171,15 +171,15 @@
"UseProxy": "Použij proxy",
"Username": "Uživatelské jméno",
"Yesterday": "Včera",
"AutomaticSearch": "Vyhledat automaticky",
"BackupFolderHelpText": "Relativní cesty budou v adresáři AppData společnosti {appName}",
"AutomaticSearch": "Automatické vyhledávání",
"BackupFolderHelpText": "Relativní cesty budou v adresáři AppData {appName}u",
"BackupIntervalHelpText": "Interval mezi automatickými zálohami",
"BackupNow": "Ihned zálohovat",
"BackupNow": "Zálohovat nyní",
"BackupRetentionHelpText": "Automatické zálohy starší než doba uchovávání budou automaticky vyčištěny",
"BeforeUpdate": "Před zálohováním",
"BeforeUpdate": "Před aktualizací",
"BindAddress": "Vázat adresu",
"BindAddressHelpText": "Platná IP adresa, localhost nebo '*' pro všechna rozhraní",
"BranchUpdateMechanism": "Větev používaná externím aktualizačním mechanismem",
"BindAddressHelpText": "Platná IP adresa, localhost nebo * pro všechna rozhraní",
"BranchUpdateMechanism": "Větev použitá externím aktualizačním mechanismem",
"BypassProxyForLocalAddresses": "Obcházení proxy serveru pro místní adresy",
"DeleteIndexerProxyMessageText": "Opravdu chcete smazat značku „{0}“?",
"DeleteTag": "Smazat značku",
@@ -222,28 +222,28 @@
"SettingsShowRelativeDates": "Zobrazit relativní data",
"SettingsShowRelativeDatesHelpText": "Zobrazit relativní (dnes / včera / atd.) Nebo absolutní data",
"SystemTimeHealthCheckMessage": "Systémový čas je vypnutý o více než 1 den. Naplánované úlohy nemusí fungovat správně, dokud nebude čas opraven",
"AddingTag": "Přidání značky",
"AddingTag": "Přidáštítku",
"Age": "Stáří",
"All": "Vše",
"AllIndexersHiddenDueToFilter": "Všechny filmy jsou skryty kvůli použitému filtru.",
"AllIndexersHiddenDueToFilter": "Všechny indexery jsou skryty kvůli použitému filtru.",
"Analytics": "Analýzy",
"EnableRss": "Povolit RSS",
"NoChange": "Žádná změna",
"Authentication": "Ověřování",
"AuthenticationMethodHelpText": "Vyžadovat uživatelské jméno a heslo pro přístup k {appName}",
"AuthenticationMethodHelpText": "Vyžadovat uživatelské jméno a heslo pro přístup k {appName}u",
"Automatic": "Automatický",
"Backup": "Záloha",
"Cancel": "Zrušit",
"CertificateValidationHelpText": "Změňte, jak přísné je ověření certifikace HTTPS",
"CertificateValidationHelpText": "Změňte přísnost ověřování certifikace HTTPS",
"ChangeHasNotBeenSavedYet": "Změna ještě nebyla uložena",
"Clear": "Vyčistit",
"Clear": "Vymazat",
"ClientPriority": "Priorita klienta",
"CloneProfile": "Klonovat profil",
"Close": "Zavřít",
"CouldNotConnectSignalR": "Nelze se připojit k SignalR, uživatelské rozhraní se neaktualizuje",
"CustomFilters": "Vlastní filtry",
"Date": "datum",
"Dates": "Termíny",
"Date": "Datum",
"Dates": "Data",
"DatabaseMigration": "Migrace databáze",
"Delete": "Vymazat",
"DeleteApplicationMessageText": "Opravdu chcete smazat oznámení „{0}“?",
@@ -320,8 +320,8 @@
"UnableToLoadIndexers": "Nelze načíst indexery",
"Yes": "Ano",
"GrabReleases": "Uchopte uvolnění",
"ApplicationLongTermStatusCheckSingleClientMessage": "Indexery nedostupné z důvodu selhání po dobu delší než 6 hodin: {0}",
"ApplicationLongTermStatusCheckAllClientMessage": "Všechny indexery nejsou k dispozici z důvodu selhání po dobu delší než 6 hodin",
"ApplicationLongTermStatusCheckSingleClientMessage": "Aplikace nedostupné z důvodu poruchy po dobu delší než 6 hodin: {0}",
"ApplicationLongTermStatusCheckAllClientMessage": "Všechny aplikace jsou z důvodu poruchy nedostupné déle než 6 hodin",
"Ended": "Skončil",
"LastDuration": "lastDuration",
"LastExecution": "Poslední poprava",
@@ -331,42 +331,42 @@
"Replace": "Nahradit",
"OnLatestVersion": "Nejnovější verze aplikace {appName} je již nainstalována",
"More": "Více",
"ApplyTagsHelpTextAdd": "Přidat: Přidá značky k již existujícímu seznamu",
"ApplyTagsHelpTextHowToApplyApplications": "Jak použít značky na vybrané filmy",
"ApplyTagsHelpTextAdd": "Přidat: Přidat štítky do existujícího seznamu štítků",
"ApplyTagsHelpTextHowToApplyApplications": "Jak použít štítky na vybrané aplikace",
"DeleteSelectedDownloadClients": "Odstranit klienta pro stahování",
"DeleteSelectedIndexersMessageText": "Opravdu chcete smazat {count} vybraný(ch) indexer(ů)?",
"DeleteSelectedApplicationsMessageText": "Opravdu chcete odstranit indexer „{0}“?",
"DeleteSelectedDownloadClientsMessageText": "Opravdu chcete smazat {count} vybraných klientů pro stahování?",
"Year": "Rok",
"ApplyTagsHelpTextRemove": "Odebrat: Odebrat zadané značky",
"ApplyTagsHelpTextRemove": "Odebrat: Odebrat zadané štítky",
"DownloadClientPriorityHelpText": "Upřednostněte více klientů pro stahování. Round-Robin se používá pro klienty se stejnou prioritou.",
"ApplyTagsHelpTextHowToApplyIndexers": "Jak použít značky na vybrané indexery",
"ApplyTagsHelpTextReplace": "Nahradit: Nahradit značky zadanými značkami (prázdné pole vymaže všechny značky)",
"ApplyTagsHelpTextHowToApplyIndexers": "Jak použít štítky na vybrané indexery",
"ApplyTagsHelpTextReplace": "Nahradit: Nahradit štítky zadanými štítky (prázdné pole vymaže všechny štítky)",
"Track": "Stopa",
"Genre": "Žánry",
"ConnectionLostReconnect": "{appName} se pokusí připojit automaticky, nebo můžete kliknout na tlačítko znovunačtení níže.",
"RecentChanges": "Nedávné změny",
"WhatsNew": "Co je nového?",
"DeleteAppProfileMessageText": "Opravdu chcete smazat kvalitní profil {0}",
"ConnectionLostToBackend": "{appName} ztratil spojení s backendem a pro obnovení funkčnosti bude třebaho znovu načíst.",
"ConnectionLostToBackend": "{appName} ztratil spojení s backendem a pro obnovení funkčnosti bude potřeba ho znovu načíst.",
"minutes": "Minut",
"ApplicationURL": "URL aplikace",
"ApplicationUrlHelpText": "Externí adresa URL této aplikace včetně http(s)://, portu a základní adresy URL",
"ApplicationUrlHelpText": "Externí adresa URL této aplikace včetně http(s)://, portu a základu URL",
"ApplyChanges": "Použít změny",
"ApiKeyValidationHealthCheckMessage": "Aktualizujte svůj klíč API tak, aby měl alespoň {length} znaků. Můžete to provést prostřednictvím nastavení nebo konfiguračního souboru",
"AppUpdated": "{appName} aktualizován",
"AddDownloadClientImplementation": "Přidat klienta pro stahování - {implementationName}",
"AuthenticationRequired": "Vyžadované ověření",
"AuthenticationRequiredHelpText": "Změnit, pro které požadavky je vyžadováno ověření. Pokud nerozumíte rizikům, neměňte je.",
"AddDownloadClientImplementation": "Přidat klienta pro stahování {implementationName}",
"AuthenticationRequired": "Vyžadováno ověření",
"AuthenticationRequiredHelpText": "Změnit, pro které požadavky je vyžadováno ověření. Neměňte, pokud nerozumíte rizikům.",
"AddCustomFilter": "Přidat vlastní filtr",
"AddConnection": "Přidat spojení",
"AddConnectionImplementation": "Přidat spojení - {implementationName}",
"AddIndexerImplementation": "Přidat indexer - {implementationName}",
"AddConnectionImplementation": "Přidat spojení {implementationName}",
"AddIndexerImplementation": "Přidat indexer {implementationName}",
"Publisher": "Vydavatel",
"Categories": "Kategorie",
"Notification": "Oznámení",
"AddApplicationImplementation": "Přidat spojení - {implementationName}",
"AddIndexerProxyImplementation": "Přidat indexátor - {implementationName}",
"AddApplicationImplementation": "Přidat aplikaci {implementationName}",
"AddIndexerProxyImplementation": "Přidat proxy server indexeru {implementationName}",
"Artist": "Umělec",
"EditIndexerImplementation": "Upravit indexer - {implementationName}",
"Episode": "epizoda",
@@ -392,38 +392,38 @@
"None": "Žádný",
"ResetAPIKeyMessageText": "Opravdu chcete resetovat klíč API?",
"Database": "Databáze",
"CountDownloadClientsSelected": "{count} vybraných klientů ke stahování",
"CountDownloadClientsSelected": "{count} vybraných klientů pro stahování",
"CountIndexersSelected": "{count} vybraných indexerů",
"EditIndexerProxyImplementation": "Přidat indexátor - {implementationName}",
"AuthBasic": "Základní (vyskakovací okno prohlížeče)",
"AuthenticationRequiredWarning": "Aby se zabránilo vzdálenému přístupu bez ověření, vyžaduje nyní {appName} povolení ověření. Ověřování z místních adres můžete volitelně zakázat.",
"AuthenticationRequiredWarning": "Aby se zabránilo vzdálenému přístupu bez ověření, vyžaduje nyní {appName}, aby bylo povoleno ověřování. Volitelně můžete zakázat ověřování z místních adres.",
"RestartProwlarr": "Restartujte {appName}",
"Duration": "Trvání",
"EditSelectedDownloadClients": "Upravit vybrané klienty pro stahování",
"EditSelectedIndexers": "Upravit vybrané indexery",
"AuthenticationMethod": "Metoda ověřování",
"AuthenticationRequiredPasswordHelpTextWarning": "Vložte nové heslo",
"AuthenticationRequiredUsernameHelpTextWarning": "Vložte nové uživatelské jméno",
"AuthenticationMethodHelpTextWarning": "Prosím vyberte platnou metodu ověřování",
"AuthenticationRequiredPasswordHelpTextWarning": "Zadejte nové heslo",
"AuthenticationRequiredUsernameHelpTextWarning": "Zadejte nové uživatelské jméno",
"AuthenticationMethodHelpTextWarning": "Vyberte platnou metodu ověřování",
"AuthenticationRequiredPasswordConfirmationHelpTextWarning": "Potvrďte nové heslo",
"days": "dnů",
"Id": "ID",
"CountApplicationsSelected": "Vybráno {0} kolekcí",
"CountApplicationsSelected": "{count} vybraných aplikací",
"IndexerHDBitsSettingsCodecs": "Kodek",
"IndexerHDBitsSettingsMediums": "Střední",
"Directory": "Adresář",
"CustomFilter": "Vlastní filtry",
"CustomFilter": "Vlastní filtr",
"ProxyValidationBadRequest": "Nepodařilo se otestovat proxy. StatusCode: {statusCode}",
"Default": "Výchozí",
"GrabRelease": "Uchopte uvolnění",
"Category": "Kategorie",
"BlackholeFolderHelpText": "Složka do které {appName} uloží {extension} soubor",
"BlackholeFolderHelpText": "Složka, do které {appName} uloží soubor {extension}",
"DownloadClientSettingsUrlBaseHelpText": "Přidá předponu do {connectionName} url, jako např. {url}",
"Any": "Jakákoliv",
"BuiltIn": "Vestavěný",
"Script": "Skript",
"PublishedDate": "Datum zveřejnění",
"AllSearchResultsHiddenByFilter": "Všechny výsledky jsou schovány použitým filtrem",
"AllSearchResultsHiddenByFilter": "Všechny výsledky vyhledávání jsou skryty použitým filtrem.",
"DockerUpdater": "aktualizujte kontejner dockeru, abyste aktualizaci obdrželi",
"Download": "Stažení",
"ErrorRestoringBackup": "Chyba při obnovování zálohy",
@@ -432,9 +432,51 @@
"NoEventsFound": "Nebyly nalezeny žádné události",
"RestartReloadNote": "Poznámka: {appName} se během procesu obnovy automaticky restartuje a znovu načte uživatelské rozhraní.",
"UpdateAppDirectlyLoadError": "{appName} nelze aktualizovat přímo,",
"AptUpdater": "K instalaci aktualizace použijte apt",
"AptUpdater": "K instalaci aktualizace používat apt",
"InstallLatest": "Nainstalujte nejnovější",
"Stats": "Postavení",
"CurrentlyInstalled": "Aktuálně nainstalováno",
"Mixed": "Pevný"
"Mixed": "Pevný",
"ActiveIndexers": "Aktivní indexery",
"ActiveApps": "Aktivní aplikace",
"AppSettingsSummary": "Aplikace a nastavení pro konfiguraci interakce {appName}u s vašimi programy PVR",
"ApplicationSettingsSyncRejectBlocklistedTorrentHashesHelpText": "Pokud je torrent blokován pomocí hash, nemusí být u některých indexerů správně odmítnut během RSS/vyhledávání. Povolení této funkce umožní jeho odmítnutí po zachycení torrentu, ale před jeho odesláním klientovi.",
"ApplicationsLoadError": "Nelze načíst seznam aplikací",
"AppProfileInUse": "Používaný profil aplikace",
"AppsMinimumSeedersHelpText": "Minimální počet seederů požadovaných aplikacemi pro indexer, výchozí hodnota synchronizačního profilu je prázdná",
"AverageGrabs": "Průměrné získání",
"AverageQueries": "Průměrné dotazy",
"AdvancedSettingsShownClickToHide": "Rozšířená nastavení jsou zobrazená, klikněte pro skrytí",
"AdvancedSettingsHiddenClickToShow": "Rozšířená nastavení jsou skrytá, klikněte pro zobrazení",
"AppsMinimumSeeders": "Minimální počet seederů aplikací",
"AddNewIndexer": "Přidat nový indexer",
"AddToDownloadClient": "Přidat vydání do klienta pro stahování",
"AddIndexerProxy": "Přidat proxy server indexeru",
"AppProfileSelectHelpText": "Profily aplikace slouží k ovládání nastavení RSS, automatického vyhledávání a interaktivního vyhledávání při synchronizaci aplikace",
"BookSearch": "Vyhledávání knihy",
"ClearHistory": "Vymazat historii",
"Auth": "Ověřování",
"ConnectSettingsSummary": "Oznámení a vlastní skripty",
"AreYouSureYouWantToDeleteIndexer": "Opravdu chcete odstranit {name} z {appName}u?",
"AuthQueries": "Ověřovací dotazy",
"CountIndexersAvailable": "{count} dostupných indexerů",
"ApplicationTagsHelpText": "Synchronizovat s touto aplikací indexery, které mají jeden nebo více shodných štítků. Pokud zde nejsou uvedeny žádné štítky, nebude synchronizace žádných indexerů znemožněna kvůli jejich štítkům.",
"ApplicationTagsHelpTextWarning": "Štítky je potřeba používat opatrně, mohou mít nechtěné účinky. Aplikace se štítkem se bude synchronizovat pouze s indexery se stejným štítkem.",
"BasicSearch": "Základní vyhledávání",
"ClearHistoryMessageText": "Opravdu chcete vymazat celou historii {appName}u?",
"AddDownloadClientToProwlarr": "Přidání klienta pro stahování umožňuje {appName} odesílat vydání přímo z uživatelského rozhraní při ručním vyhledávání.",
"AddRemoveOnly": "Pouze přidat a odebrat",
"AudioSearch": "Vyhledávání audia",
"ApplicationSettingsSyncRejectBlocklistedTorrentHashes": "Synchronizovat odmítnuté blokované hashe torrentů při získávání",
"Apps": "Aplikace",
"ClickToChangeQueryOptions": "Kliknutím změníte možnosti dotazu",
"Author": "Autor",
"AverageResponseTimesMs": "Průměrné doby odezvy indexerů (ms)",
"Book": "Kniha",
"BookSearchTypes": "Typy vyhledávání knihy",
"AddApplication": "Přidat aplikaci",
"AddSyncProfile": "Přidat synchronizační profil",
"AddedToDownloadClient": "Vydání přidáno do klienta",
"AddCategory": "Přidat kategorii",
"AreYouSureYouWantToDeleteCategory": "Opravdu chcete odstranit namapovanou kategorii?"
}

View File

@@ -5,7 +5,7 @@
"MovieIndexScrollTop": "Elokuvakirjasto: vieritä ylös",
"Apply": "Käytä",
"ClientPriority": "Lataustyökalun painotus",
"IndexerPriorityHelpText": "Tietolähteen painotus, 1 50 (korkein-alin). Oletusarvo on 25. Käytetään muutoin tasaveroisten julkaisujen kaappauspäätökseen. Kaikkia käytössä olevia tietolähteitä käytetään edelleen RSS-synkronointiin ja hakuun.",
"IndexerPriorityHelpText": "Tietolähteen painotus, 1 50 (korkein-alin). Oletusarvo on 25.",
"Manual": "Manuaalinen",
"Add": "Lisää",
"Reload": "Lataa uudelleen",
@@ -52,14 +52,14 @@
"SettingsShortDateFormat": "Lyhyen päiväyksen esitys",
"UnselectAll": "Tyhjennä valinnat",
"UpdateStartupTranslocationHealthCheckMessage": "Päivitystä ei voida asentaa, koska käynnistyskansio \"{startupFolder}\" sijaitsee \"App Translocation\" -kansiossa.",
"UpdateUiNotWritableHealthCheckMessage": "Päivityksen asennus ei onnistu, koska käyttäjällä \"{userName}\" ei ole kirjoitusoikeutta käyttöliittymäkansioon \"{uiFolder}\".",
"UpdateUiNotWritableHealthCheckMessage": "Päivityksen asennus ei onnistu, koska käyttäjällä {userName} ei ole kirjoitusoikeutta käyttöliittymäkansioon \"{uiFolder}\".",
"UpdateMechanismHelpText": "Käytä {appName}in sisäänrakennettua päivitystoimintoa tai komentosarjaa.",
"Enable": "Käytä",
"UI": "Käyttöliittymä",
"Usenet": "Usenet",
"BackupNow": "Varmuuskopioi nyt",
"NoBackupsAreAvailable": "Varmuuskopioita ei ole käytettävissä",
"UpdateStartupNotWritableHealthCheckMessage": "Päivitystä ei voida asentaa, koska käyttäjällä \"{userName}\" ei ole kirjoitusoikeutta käynnistyskansioon \"{startupFolder}\".",
"UpdateStartupNotWritableHealthCheckMessage": "Päivitystä ei voida asentaa, koska käyttäjällä {userName} ei ole kirjoitusoikeutta käynnistyskansioon \"{startupFolder}\".",
"Updates": "Päivitykset",
"UpdateScriptPathHelpText": "Polku komentosarjaan, joka käsittelee puretun päivitystiedoston ja hoitaa asennuksen loppuosuuden.",
"Uptime": "Käyttöaika",
@@ -70,7 +70,7 @@
"NoTagsHaveBeenAddedYet": "Tunnisteita ei ole vielä lisätty.",
"ApplyTags": "Tunnistetoimenpide",
"Authentication": "Tunnistautuminen",
"AuthenticationMethodHelpText": "Vaadi {appName}in käyttöön käyttäjätunnus ja salasana",
"AuthenticationMethodHelpText": "Vaadi {appName}in käyttöön käyttäjätunnus ja salasana.",
"BindAddressHelpText": "Toimiva IP-osoite, localhost tai * (tähti) kaikille verkkoliitännöille.",
"Close": "Sulje",
"DeleteNotification": "Poista ilmoitus",
@@ -95,7 +95,7 @@
"Protocol": "Protokolla",
"ProxyBadRequestHealthCheckMessage": "Välityspalvelintesti epäonnistui. Tilakoodi: {statusCode}.",
"ProxyFailedToTestHealthCheckMessage": "Välityspalvelintesti epäonnistui: {url}",
"ProxyResolveIpHealthCheckMessage": "Määritetyn välityspalvelimen \"{0}\" IP-osoitteen selvitys epäonnistui.",
"ProxyResolveIpHealthCheckMessage": "Määritetyn välityspalvelimen \"{proxyHostName}\" IP-osoitteen selvitys epäonnistui.",
"ProxyPasswordHelpText": "Käyttäjätunnus ja salasana tulee täyttää vain tarvittaessa. Mikäli näitä ei ole, tulee kentät jättää tyhjiksi.",
"ProxyType": "Välityspalvelimen tyyppi",
"ProxyUsernameHelpText": "Käyttäjätunnus ja salasana tulee täyttää vain tarvittaessa. Mikäli näitä ei ole, tulee kentät jättää tyhjiksi.",
@@ -116,7 +116,7 @@
"Security": "Suojaus",
"SuggestTranslationChange": "Ehdota käännösmuutosta",
"System": "Järjestelmä",
"SystemTimeHealthCheckMessage": "Järjestelmän ajassa on ainakin vuorokauden heitto eivätkä ajoitetut tehtävät tämän vuoksi toimi oikein ennen kuin se on korjattu.",
"SystemTimeHealthCheckMessage": "Järjestelmän aika on ainakin vuorokauden pielessä, eivätkä ajoitetut tehtävät toimi oikein ennen kuin se on korjattu.",
"TagCannotBeDeletedWhileInUse": "Tunnistetta ei voi poistaa, koska se on käytössä",
"TagIsNotUsedAndCanBeDeleted": "Tunnistetta ei ole määritetty millekään kohteelle, joten sen voi poistaa.",
"TagsSettingsSummary": "Täältä näet kaikki tunnisteet käyttökohteineen ja voit poistaa käyttämättömät tunnisteet.",
@@ -202,7 +202,7 @@
"SettingsShowRelativeDates": "Suhteellisten päiväysten esitys",
"SettingsShowRelativeDatesHelpText": "Korvaa absoluuttiset päiväykset suhteellisilla päiväyksillä (tänään/eilen/yms.).",
"ShowSearch": "Näytä haku",
"Source": "Lähdekoodi",
"Source": "Lähde",
"SSLPort": "SSL-portti",
"StartTypingOrSelectAPathBelow": "Aloita kirjoitus tai valitse sijainti alta",
"StartupDirectory": "Käynnistyskansio",
@@ -213,7 +213,7 @@
"UnableToAddANewNotificationPleaseTryAgain": "Kytköksen lisäys epäonnistui. Yritä uudelleen.",
"Version": "Versio",
"View": "Näkymä",
"Warn": "Varoitus",
"Warn": "Varoita",
"Wiki": "Wiki",
"Port": "Portti",
"Automatic": "Automaattinen",
@@ -226,11 +226,11 @@
"BeforeUpdate": "Ennen päivitystä",
"BindAddress": "Sidososoite",
"Branch": "Haara",
"BranchUpdate": "{appName}in versiopäivityksiin käytettävä kehityshaara",
"BranchUpdate": "{appName}in versiopäivityksiin käytettävä kehityshaara.",
"BranchUpdateMechanism": "Ulkoisen päivitysratkaisun käyttämä kehityshaara.",
"BypassProxyForLocalAddresses": "Ohjaa paikalliset osoitteet välityspalvelimen ohi",
"Cancel": "Peruuta",
"CancelPendingTask": "Haluatko varmasti perua tämän odottavan tehtävän?",
"CancelPendingTask": "Haluatko varmasti perua odottavan tehtävän?",
"CertificateValidation": "Varmenteen vahvistus",
"CertificateValidationHelpText": "Muuta HTTPS-varmennevahvistuksen tarkkuutta. Älä muuta, jollet ymmärrä tähän liittyviä riskejä.",
"ChangeHasNotBeenSavedYet": "Muutosta ei ole vielä tallennettu",
@@ -280,7 +280,7 @@
"IndexerPriority": "Tietolähteiden painotus",
"IndexerProxyStatusAllUnavailableHealthCheckMessage": "Välityspalvelimet eivät ole käytettävissä virheiden vuoksi",
"IndexerStatusAllUnavailableHealthCheckMessage": "Tietolähteet eivät ole käytettävissä virheiden vuoksi",
"IndexerStatusUnavailableHealthCheckMessage": "Tietolähteet eivät ole käytettävissä virheiden vuoksi: {indexerNames}",
"IndexerStatusUnavailableHealthCheckMessage": "Tietolähteet eivät ole virheiden vuoksi käytettävissä: {indexerNames}",
"NoChange": "Ei muutosta",
"NoLogFiles": "Lokitiedostoja ei ole",
"SSLCertPasswordHelpText": "PFX-tiedoston salasana",
@@ -351,7 +351,7 @@
"SettingsLogRotate": "Lokitiedostojen kierrätys",
"SettingsLogSql": "Kirjaa SQL",
"SettingsSqlLoggingHelpText": "Kirjaa kaikki {appName}in SQL-kyselyt",
"ConnectSettingsSummary": "Ilmoitukset, kuten viestintä mediapalvelimille ja soittimille, sekä omat komentosarjat.",
"ConnectSettingsSummary": "Ilmoitukset ja mukautetut komentosarjat.",
"DevelopmentSettings": "Kehittäjäasetukset",
"Description": "Kuvaus",
"Id": "ID",
@@ -411,7 +411,7 @@
"Application": "Sovellus",
"GrabReleases": "Kaappaa julkaisu(t)",
"Link": "Linkki",
"SearchTypes": "Mitä etsitään",
"SearchTypes": "Hakutyypit",
"UnableToLoadIndexers": "Tietolähteiden lataus epäonnistui",
"Yes": "Kyllä",
"MappedDrivesRunningAsService": "Yhdistetyt verkkoasemat eivät ole käytettävissä kun sovellus suoritetaan Windows-palveluna. Saat lisätietoja UKK:sta.",
@@ -434,7 +434,7 @@
"EditSyncProfile": "Muokkaa synkronointiprofiilia",
"InstanceName": "Instanssin nimi",
"InstanceNameHelpText": "Instanssin nimi välilehdellä ja järjestelmälokissa.",
"ThemeHelpText": "Vaihda sovelluksen käyttöliittymän ulkoasua. \"Automaattinen\" vaihtaa vaalean ja tumman tilan välillä käyttöjärjestelmän teeman mukaan. Innoittanut Theme.Park.",
"ThemeHelpText": "Vaihda sovelluksen käyttöliittymän ulkoasua. \"Automaattinen\" vaihtaa vaalean ja tumman tilan välillä käyttöjärjestelmän teeman mukaan. Innoittanut {inspiredBy}.",
"Duration": "Kesto",
"ElapsedTime": "Kulunut aika",
"EnabledRedirected": "Kulunut, uudelleenohjattu",
@@ -455,7 +455,7 @@
"AuthenticationRequired": "Vaadi tunnistautuminen",
"Remove": "Poista",
"Replace": "Korvaa",
"OnLatestVersion": "{appName}in uusin versio on jo asennettu",
"OnLatestVersion": "Uusin {appName}-versio on jo asennettu",
"ApplicationURL": "Sovelluksen URL",
"ApplicationUrlHelpText": "Tämän sovelluksen ulkoinen URL-osoite, johon sisältyy http(s)://, portti ja URL-perusta.",
"Track": "Valvo",
@@ -480,7 +480,7 @@
"Artist": "Esittäjä",
"Author": "Kirjailija",
"Book": "Kirja",
"UpdateAvailableHealthCheckMessage": "Uusi päivitys on saatavilla",
"UpdateAvailableHealthCheckMessage": "Uusi päivitys on saatavilla: {version}",
"Episode": "Jakso",
"Label": "Nimi",
"Theme": "Teema",
@@ -493,16 +493,16 @@
"AddConnection": "Lisää yhteys",
"NotificationStatusAllClientHealthCheckMessage": "Mikään ilmoituspavelu ei ole ongelmien vuoksi käytettävissä.",
"NotificationStatusSingleClientHealthCheckMessage": "Ilmoitukset eivät ole ongelmien vuoksi käytettävissä: {notificationNames}",
"AuthBasic": "Perus (ponnahdusikkuna)",
"AuthBasic": "Perus (selaimen ponnahdus)",
"AuthForm": "Lomake (kirjautumissivu)",
"DisabledForLocalAddresses": "Ei käytössä paikallisille osoitteille",
"DisabledForLocalAddresses": "Ei käytössä paikallisissa osoitteissa",
"None": "Ei mitään",
"ResetAPIKeyMessageText": "Haluatko varmasti korvata rajapinnan avaimen uudella?",
"TotalIndexerSuccessfulGrabs": "Onnistuneiden tietolähdekaappausten kokonaismäärä",
"AppUpdated": "{appName} on päivitetty",
"AppUpdatedVersion": "{appName} on päivitetty versioon {version} ja muutosten käyttöönottamiseksi se on käynnistettävä uudelleen.",
"IndexerDownloadClientHelpText": "Määritä tämän tietolähteen kanssa käytettävä lataustyökalu.",
"AuthenticationRequiredWarning": "Etäkäytön estämiseksi ilman tunnistautumista {appName} vaatii nyt todennuksen käyttöönoton. Todennus voidaan poistaa käytöstä paikallisille osoitteille.",
"IndexerDownloadClientHelpText": "Määritä {appName}issa tästä tietolähteestä tehdyille kaappauksille käytettävä lataustyökalu.",
"AuthenticationRequiredWarning": "Etäkäytön estämiseksi ilman tunnistautumista {appName} vaatii nyt tunnistautumisen käyttöönoton. Paikallisilta osoitteilta se voidaan valinnaisesti poistaa käytöstä.",
"TotalGrabs": "Kaappausten kokonaismäärä",
"AddDownloadClientImplementation": "Lisäätään lataustyökalua - {implementationName}",
"AddIndexerImplementation": "Lisätään tietolähdettä - {implementationName}",
@@ -558,7 +558,7 @@
"IndexerStatus": "Tietolähteen tila",
"ManageApplications": "Hallitse sovelluksia",
"NewznabUrl": "Newznab URL",
"PackSeedTime": "Koosteen jakoaika",
"PackSeedTime": "Paketin jakoaika",
"PackSeedTimeHelpText": "Aika, joka koostepaketin (kuten sarjan tuotantokauden tai esittäjän diskografian) sisältävää torrentia tulee jakaa. Käytä sovelluksen oletusta jättämällä tyhjäksi.",
"QueryType": "Kyselyn tyyppi",
"SearchAllIndexers": "Etsi kaikista tietolähteistä",
@@ -608,18 +608,18 @@
"NotificationsEmailSettingsUseEncryptionHelpText": "Määrittää suositaanko salausta, jos se on määritetty palvelimelle, käytetäänkö aina SSL- (vain portti 465) tai StartTLS-salausta (kaikki muut portit), voi käytetäänkö salausta lainkaan.",
"ManageClients": "Hallitse työkaluja",
"NoApplicationsFound": "Sovelluksia ei löytynyt",
"DownloadClientAriaSettingsDirectoryHelpText": "Valinnainen latuasten tallennussijainti. Käytä Aria2-oletusta jättämällä tyhjäksi.",
"UrlBaseHelpText": "Lisää {appName}in URL-osoitteeseen jälkiliitteen, esim. \"http://[osoite]:[portti]/[URL-perusta]\". Oletusarvo on tyhjä.",
"DownloadClientAriaSettingsDirectoryHelpText": "Vaihtoehtoinen latausten tallennussijainti. Käytä Aria2:n oletusta jättämällä tyhjäksi.",
"UrlBaseHelpText": "Käänteisen välityspalvelimen tukea varten. Oletusarvo on tyhjä.",
"Donate": "Lahjoita",
"DownloadClientFloodSettingsAdditionalTagsHelpText": "Lisää median ominaisuuksia tunnisteina. Vihjeet ovat esimerkkejä.",
"DownloadClientRTorrentSettingsDirectoryHelpText": "Valinnainen latuasten tallennussijainti. Käytä Aria2-oletusta jättämällä tyhjäksi.",
"DownloadClientRTorrentSettingsDirectoryHelpText": "Vaihtoehtoinen latausten tallennussijainti. Käytä rTorrentin oletusta jättämällä tyhjäksi.",
"DownloadClientSettingsUseSslHelpText": "Muodosta {clientName} -yhteys käyttäen salattua yhteyttä.",
"DownloadClientTransmissionSettingsDirectoryHelpText": "Vaihtoehtoinen latauskansio. Käytä Transmissionin oletusta jättämällä tyhjäksi.",
"DownloadClientTransmissionSettingsDirectoryHelpText": "Vaihtoehtoinen latausten tallennussijainti. Käytä Transmissionin oletusta jättämällä tyhjäksi.",
"DownloadClientTransmissionSettingsUrlBaseHelpText": "Lisää etuliite lataustyökalun {clientName} RPC-URL-osoitteeseen. Esimerkiksi {url}. Oletus on \"{defaultUrl}\".",
"IndexerSettingsAppsMinimumSeedersHelpText": "Sovellusten edellyttämä tietolähteestä kaapattavien kohteiden jakajien (seed) vähimmäismäärä. Jos tyhjä, käytetään synkronointiprofiilin oletusta.",
"Menu": "Valikko",
"ApplicationSettingsSyncRejectBlocklistedTorrentHashes": "Hylkää estetyt torrent-hajautusarvot kaapattaessa",
"IndexerBeyondHDSettingsSearchTypes": "Mitä etsitään",
"ApplicationSettingsSyncRejectBlocklistedTorrentHashes": "Synkronoi estetyt torrent-hajautusarvot kaapattaessa",
"IndexerBeyondHDSettingsSearchTypes": "Hakutyypit",
"IndexerSettingsSeedRatio": "Jakosuhde",
"IndexerSettingsSeedTime": "Jakoaika",
"IndexerSettingsSeedTimeHelpText": "Aika, joka torrentia tulee jakaa ennen sen pysäytystä. Käytä lataustyökalun oletusta jättämällä tyhjäksi.",
@@ -632,9 +632,9 @@
"DownloadClientFreeboxSettingsHostHelpText": "Freeboxin isäntänimi tai IP-osoite. Oletus on \"{url}\" (toimii vain samassa verkossa).",
"DownloadClientPneumaticSettingsStrmFolder": "Strm-kansio",
"DownloadClientQbittorrentSettingsInitialStateHelpText": "Tila, jossa torrentit lisätään qBittorrentiin. Huomioi, että pakotetut torrentit eivät noudata nopeusrajoituksia.",
"DownloadClientSettingsAddPaused": "Lisää pysäytettynä",
"DownloadClientSettingsAddPaused": "Lisää keskeytettynä",
"DownloadClientSettingsDestinationHelpText": "Määrittää manuaalisen tallennuskohteen. Käytä oletusta jättämällä tyhjäksi.",
"DownloadClientSettingsInitialState": "Virheellinen tila",
"DownloadClientSettingsInitialState": "Aloitustila",
"DownloadClientSettingsInitialStateHelpText": "Lataustyökaluun {clientName} lisättyjen torrentien aloitustila.",
"IndexerHDBitsSettingsCodecs": "Koodekit",
"IndexerHDBitsSettingsCodecsHelpText": "Jos ei määritetty, käytetään kaikkia vaihtoehtoja.",
@@ -642,16 +642,16 @@
"IndexerHDBitsSettingsMediumsHelpText": "Jos ei määritetty, käytetään kaikkia vaihtoehtoja.",
"IndexerHDBitsSettingsOriginsHelpText": "Jos ei määritetty, käytetään kaikkia vaihtoehtoja.",
"IndexerSettingsAdditionalParameters": "Muut parametrit",
"IndexerSettingsApiPath": "API:n polku",
"IndexerSettingsApiPathHelpText": "Polku API:in (yleensä {url}).",
"IndexerSettingsApiPath": "Rajapinnan sijainti",
"IndexerSettingsApiPathHelpText": "Polku rajapintaan (yleensä {url}).",
"IndexerSettingsCookie": "Eväste",
"IndexerSettingsPackSeedTime": "Koosteen jakoaika",
"IndexerSettingsPackSeedTime": "Paketin jakoaika",
"IndexerSettingsPackSeedTimeIndexerHelpText": "Aika, joka koostepaketin (kuten sarjan tuotantokauden tai esittäjän diskografian) sisältävää torrentia tulee jakaa. Käytä sovelluksen oletusta jättämällä tyhjäksi.",
"IndexerSettingsSeedRatioHelpText": "Suhde, joka torrentin tulee saavuttaa ennen sen pysäytystä. Käytä lataustyökalun oletusta jättämällä tyhjäksi. Suhteen tulisi olla ainakin 1.0 ja noudattaa tietolähteen sääntöjä.",
"SecretToken": "Salainen tunniste",
"TorrentBlackholeSaveMagnetFiles": "Tallenna magnet-tiedostot",
"UseSsl": "Käytä SSL-salausta",
"ApplicationSettingsSyncRejectBlocklistedTorrentHashesHelpText": "Jos torrent on estetty hajautusarvon perusteella sitä ei välttämättä hylätä oikein etsittäessä joiltakin tietolähteiltä RSS-syötteen tai haun välityksellä. Tämä mahdollistaa tällaisten torrentien hylkäämisen kaappauksen jälkeen, mutta ennen välitystä lataustyökalulle.",
"ApplicationSettingsSyncRejectBlocklistedTorrentHashesHelpText": "Jos torrent on estetty hajautusarvon perusteella sitä ei välttämättä hylätä oikein joidenkin tietolähteiden RSS-syötteestä tai hausta. Tämän käyttöönotto mahdollistaa tällaisten torrentien hylkäämisen kaappauksen jälkeen, kuitenkin ennen kuin niitä välitetään lataustyökalulle.",
"BlackholeFolderHelpText": "Kansio, jonne {appName} tallentaa {extension}-tiedoston.",
"DownloadClientDelugeSettingsUrlBaseHelpText": "Lisää etuliitteen Delugen JSON-URL-osoitteeseen (ks. {url}).",
"DownloadClientFloodSettingsAdditionalTags": "Lisätunnisteet",
@@ -661,14 +661,14 @@
"XmlRpcPath": "XML RPC -sijainti",
"DownloadClientSettingsUrlBaseHelpText": "Lisää etuliite lataustuökalun {clientName} URL-osoitteeseen, kuten {url}.",
"DownloadClientFloodSettingsUrlBaseHelpText": "Lisää etuliitteen Flood-rajapintaan (esim. {url}).",
"DownloadClientDownloadStationSettingsDirectoryHelpText": "Valinnainen jaettu kansio latauksille. Download Stationin oletussijaintia jättämällä tyhjäksi.",
"DownloadClientDownloadStationSettingsDirectoryHelpText": "Vaihtoehtoinen jaettu kansio latauksille. Käytä Download Stationin oletussijaintia jättämällä tyhjäksi.",
"DownloadClientFreeboxSettingsApiUrlHelpText": "Määritä Freebox-rajapinnan perus-URL rajapinnan versiolla. Esimerkiksi \"{url}\". Oletus on \"{defaultApiUrl}\".",
"DownloadClientQbittorrentSettingsFirstAndLastFirst": "Ensimmäinen ja viimeinen ensin",
"DownloadClientFreeboxSettingsAppId": "Sovellustunniste",
"DownloadClientFreeboxSettingsPortHelpText": "Freebox-liittymän portti. Oletus on \"{port}\".",
"DownloadClientPneumaticSettingsNzbFolder": "NZB-kansio",
"DownloadClientQbittorrentSettingsSequentialOrder": "Peräkkäinen järjestys",
"CustomFilter": "Oma suodatin",
"CustomFilter": "Mukautettu suodatin",
"DownloadClientFreeboxSettingsAppIdHelpText": "Freebox-rajapinnan käyttöoikeutta määritettäessä käytettävä App ID -sovellustunniste.",
"DownloadClientFreeboxSettingsAppToken": "Sovellustietue",
"DownloadClientNzbgetSettingsAddPausedHelpText": "Tämä vaatii vähintään NzbGet-version 16.0.",
@@ -679,26 +679,26 @@
"DownloadClientRTorrentSettingsUrlPath": "URL-sijainti",
"TorrentBlackholeSaveMagnetFilesHelpText": "Tallenna magnet-linkki, jos .torrent-tiedostoa ei ole käytettävissä (hyödyllinen vain lataustyökalun tukiessa tiedostoon tallennettuja magnet-linkkejä).",
"TorrentBlackholeTorrentFolder": "Torrent-kansio",
"TorrentBlackholeSaveMagnetFilesExtension": "Tallennettujen magnet-tiedostojen pääte",
"TorrentBlackholeSaveMagnetFilesExtension": "Tallenna magnet-tiedostojen pääte",
"TorrentBlackholeSaveMagnetFilesExtensionHelpText": "Magnet-linkeille käytettävä tiedostopääte. Oletus on \".magnet\".",
"LabelIsRequired": "Nimi on pakollinen",
"Default": "Oletus",
"GrabRelease": "Kaappaa julkaisu",
"OverrideGrabModalTitle": "Ohita ja sieppaa - {title}",
"OverrideGrabModalTitle": "Ohita ja kaappaa - {title}",
"PrioritySettings": "Painotus: {priority}",
"SelectDownloadClientModalTitle": "{modalTitle} - Valitse lataustyökalu",
"ProxyValidationBadRequest": "Välityspalvelintesti epäonnistui. Tilakoodi: {statusCode}.",
"ProxyValidationUnableToConnect": "Tietolähdettä ei tavoiteta: {exceptionMessage}. Etsi tietoja tämän virheen lähellä olevista lokimerkinnöistä.",
"ManualGrab": "Manuaalinen kaappaus",
"OverrideAndAddToDownloadClient": "Ohita ja lisää latausjonoon",
"OverrideAndAddToDownloadClient": "Ohita ja lisää lataustyökaluun",
"BuiltIn": "Sisäänrakennettu",
"Any": "Mikä vain",
"Script": "Skripti",
"InfoUrl": "Tietojen URL",
"Any": "Mikä tahansa",
"Script": "Komentosarja",
"InfoUrl": "Tietojen URL-osoite",
"PublishedDate": "Julkaisupäivä",
"Redirected": "Uudelleenohjaus",
"Redirected": "Uudelleenohjattu",
"AllSearchResultsHiddenByFilter": "Aktiivinen suodatin piilottaa kaikki tulokset.",
"HealthMessagesInfoBox": "Saat lisätietoja näiden vakausviestien syistä painamalla rivin lopussa olevaa wikilinkkiä (kirjakuvake) tai tarkastelemalla [lokitietoja]({link}). Mikäli kohtaat ongelmia näiden viestien tulkinnassa, tavoitat tukemme alla olevilla linkkeillä.",
"HealthMessagesInfoBox": "Saat lisätietoja näiden vakausviestien syistä painamalla rivin lopussa olevaa wikilinkkiä (kirjakuvake) tai tarkastelemalla [lokitietoja]({link}). Mikäli et osaa tulkita näi viestejä, tavoitat tukemme alla olevilla linkeillä.",
"PackageVersionInfo": "{packageVersion} julkaisijalta {packageAuthor}",
"ErrorRestoringBackup": "Virhe palautettaessa varmuuskopiota",
"ExternalUpdater": "{appName} on määritetty käyttämään ulkoista päivitysratkaisua.",
@@ -715,7 +715,22 @@
"UpdaterLogFiles": "Päivittäjän lokitiedostot",
"WouldYouLikeToRestoreBackup": "Haluatko palauttaa varmuuskopion \"{name}\"?",
"InstallLatest": "Asenna uusin",
"CurrentlyInstalled": "Nykyinen asennettu versio",
"CurrentlyInstalled": "Tällä hetkellä asennettu versio",
"PreviouslyInstalled": "Edellinen asennettu versio",
"Mixed": "Korjattu"
"Mixed": "Sekoitettu",
"IndexerSettingsAppsMinimumSeeders": "Sovellusten vähimmäisjakajat",
"FailedToFetchSettings": "Asetusten nouto epäonnistui",
"IndexerAlphaRatioSettingsExcludeSceneHelpText": "Älä huomioi tulosten SCENE-julkaisuja.",
"DownloadClientRTorrentSettingsUrlPathHelpText": "Polku XMLRPC-päätteeseen, katso {url}. Käytettäessä ruTorrentia tämä on yleensä RPC2 tai [ruTorrentin sijainti]{url2}.",
"InstallMajorVersionUpdateMessageLink": "Saat lisätietoja osoitteesta [{domain}]({url}).",
"Install": "Asenna",
"NotificationsTelegramSettingsIncludeAppName": "Sisällytä {appName} otsikkoon",
"InstallMajorVersionUpdate": "Asenna päivitys",
"InstallMajorVersionUpdateMessage": "Tämä päivitys asentaa uuden pääversion, joka ei välttämättä ole yhteensopiva laitteistosi kanssa. Haluatko varmasti asentaa päivityksen?",
"NotificationsTelegramSettingsIncludeAppNameHelpText": "Valinnaisesti ilmoitukset voidaan erottaa muista sovelluksista lisäämällä viestien otsikoiden eteen {appName}.",
"DownloadClientRTorrentSettingsAddStoppedHelpText": "Tämä lisää torrentit ja magnet-linkit rTorentiin pysäytetyssä tilassa. Tämä saattaa rikkoa margnet-tiedostot.",
"DownloadClientSettingsPriorityItemHelpText": "Kaapatuille kohteille käytettävä painotus.",
"LogSizeLimit": "Lokin kokorajoitus",
"LogSizeLimitHelpText": "Lokitiedoston enimmäiskoko ennen pakkausta. Oletusarvo on 1 Mt.",
"IndexerAlphaRatioSettingsExcludeScene": "Ohita SCENE-julkaisut"
}

View File

@@ -35,7 +35,7 @@
"TagsSettingsSummary": "Tüm etiketleri ve nasıl kullanıldıklarını göster. Kullanılmayan etiketler kaldırılabilinir",
"Tags": "Etiketler",
"System": "Sistem",
"Style": "Tarz",
"Style": "Stil",
"Status": "Durum",
"Size": "Boyut",
"ShowAdvanced": "Gelişmiş'i Göster",
@@ -431,8 +431,8 @@
"DownloadClientFreeboxSettingsApiUrl": "API URL'si",
"DownloadClientFreeboxSettingsApiUrlHelpText": "Freebox API temel URL'sini API sürümüyle tanımlayın, örneğin '{url}', varsayılan olarak '{defaultApiUrl}' olur",
"DownloadClientFreeboxSettingsAppIdHelpText": "Freebox API'sine erişim oluşturulurken verilen uygulama kimliği (ör. 'app_id')",
"DownloadClientFreeboxSettingsAppToken": "Uygulama Jetonu",
"DownloadClientFreeboxSettingsAppTokenHelpText": "Freebox API'sine erişim oluşturulurken alınan uygulama jetonu (ör. 'app_token')",
"DownloadClientFreeboxSettingsAppToken": "Uygulama Token'ı",
"DownloadClientFreeboxSettingsAppTokenHelpText": "Freebox API'sine erişim oluşturulurken alınan uygulama token'ı (ör. 'app_token')",
"DownloadClientFreeboxSettingsAppId": "Uygulama kimliği",
"DownloadClientFreeboxSettingsHostHelpText": "Freebox'un istemci adı veya istemci IP adresi, varsayılan olarak '{url}' şeklindedir (yalnızca aynı ağda çalışır)",
"Duration": "Süre",
@@ -486,7 +486,7 @@
"UseSsl": "SSL kullan",
"OnApplicationUpdate": "Uygulama Güncellemesinde",
"TorrentBlackholeSaveMagnetFiles": "Magnet Dosyalarını Kaydet",
"SecretToken": "Gizlilik Jetonu",
"SecretToken": "Gizlilik Token'ı",
"TorrentBlackholeSaveMagnetFilesExtension": "Magnet Dosya Uzantısını Kaydet",
"TorrentBlackholeSaveMagnetFilesExtensionHelpText": "Magnet bağlantıları için kullanılacak uzantı, varsayılan olarak '.magnet'tir",
"TorrentBlackholeSaveMagnetFilesHelpText": ".torrent dosyası yoksa magnet bağlantısını kaydedin (yalnızca indirme istemcisi bir dosyaya kaydedilen magnetleri destekliyorsa kullanışlıdır)",
@@ -701,7 +701,7 @@
"UnableToLoadAppProfiles": "Uygulama profilleri yüklenemiyor",
"UnableToLoadDevelopmentSettings": "Geliştirme ayarları yüklenemiyor",
"IndexerHDBitsSettingsOrigins": "Kaynaklar",
"IndexerNoDefinitionCheckHealthCheckMessage": "Dizinleyicilerin tanımı yoktur ve çalışmayacaktır: {indexerNames}. Lütfen {appName}'i kaldırın ve (veya) yeniden ekleyin.",
"IndexerNoDefinitionCheckHealthCheckMessage": "{indexerNames} dizinleyicileri tanımsız olduğundan çalışmayacaktır. Lütfen bunları kaldırın ve/veya {appName} uygulamasına yeniden ekleyin.",
"MovieSearchTypes": "Film Arama Türleri",
"NoIndexerCategories": "Bu dizinleyici için hiçbir kategori bulunamadı",
"PackSeedTimeHelpText": "Bir paketin (sezon veya diskografi) torrentinin durdurulmadan önce aktif olması gereken süre, boş bırakılırsa uygulamanın varsayılan değeri kullanılır",

View File

@@ -2,17 +2,17 @@
"About": "關於",
"Add": "新增",
"Added": "已新增",
"Actions": "執行",
"Actions": "動作",
"Age": "年齡",
"AddIndexer": "新增索引",
"AddNewIndexer": "新增新索引",
"AddDownloadClient": "新增下載器",
"AddDownloadClient": "加入下載用戶端",
"Analytics": "分析",
"AddIndexerProxy": "新增索引器代理",
"AddingTag": "新增標籤",
"All": "全部",
"AddRemoveOnly": "僅限新增或移除",
"AcceptConfirmationModal": "接受確認模式",
"AcceptConfirmationModal": "接受確認對話框",
"Language": "語言",
"Filter": "篩選",
"Reload": "重新載入",
@@ -156,5 +156,13 @@
"AddCategory": "新增類別",
"AdvancedSettingsShownClickToHide": "進階設定已顯示,點擊以隱藏",
"Version": "版本",
"UpdateAvailableHealthCheckMessage": "可用的新版本: {version}"
"UpdateAvailableHealthCheckMessage": "可用的新版本: {version}",
"AuthenticationRequiredHelpText": "更改需要進行驗證的請求。除非你了解其中的風險,否則請勿修改。",
"AuthenticationRequiredPasswordHelpTextWarning": "請輸入新密碼",
"AuthenticationRequiredUsernameHelpTextWarning": "請輸入新用戶名",
"AuthenticationRequiredPasswordConfirmationHelpTextWarning": "確認新密碼",
"AuthenticationRequired": "需要驗證",
"AuthenticationRequiredWarning": "為防止未經認證的遠程訪問,{appName} 現需要啟用身份認證。您可以選擇禁用本地地址的身份認證。",
"AuthenticationMethodHelpTextWarning": "請選擇一個有效的驗證方式",
"AuthenticationMethod": "驗證方式"
}

View File

@@ -6,9 +6,10 @@
<PackageReference Include="AngleSharp.Xml" Version="1.0.0" />
<PackageReference Include="Dapper" Version="2.0.151" />
<PackageReference Include="Diacritical.Net" Version="1.0.4" />
<PackageReference Include="MailKit" Version="3.6.0" />
<PackageReference Include="MailKit" Version="4.8.0" />
<PackageReference Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" Version="6.0.35" />
<PackageReference Include="Microsoft.AspNetCore.WebUtilities" Version="2.2.0" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="2.1.7" />
<PackageReference Include="NLog.Targets.Syslog" Version="7.0.0" />
<PackageReference Include="Npgsql" Version="7.0.9" />
<PackageReference Include="Polly" Version="8.5.0" />

View File

@@ -202,19 +202,23 @@ namespace Prowlarr.Api.V1.Indexers
{
case "info_cookie":
field.Label = "How to get the Cookie";
field.Value = "<ol><li>Login to this tracker with your browser</li><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></ol>";
break;
case "info_flaresolverr":
field.Label = "FlareSolverr Info";
field.Value = "This site may use Cloudflare DDoS Protection, therefore Prowlarr requires <a href=\"https://wiki.servarr.com/prowlarr/faq#can-i-use-flaresolverr-indexers\" target=\"_blank\" rel=\"noreferrer\">FlareSolverr</a> to access it.";
field.Value = "<ol><li>Login to this tracker with your browser</li><li>If present in the login page, ensure you have the <b>Remember me</b> ticked and the <b>Log Me Out if IP Changes</b> unticked when you login</li><li>Navigate to the web site's torrent search page to view the list of available torrents for download</li><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></ol>";
field.HelpLink = "https://wiki.servarr.com/useful-tools#finding-cookies";
break;
case "info_useragent":
field.Label = "How to get the User-Agent";
field.Value = "<ol><li>From the same place you fetched the cookie,</li><li>Find <b>'user-agent:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole user-agent string <i>(everything after 'user-agent: ')</i> and <b>Paste</b> here.</li></ol>";
field.HelpLink = "https://wiki.servarr.com/useful-tools#finding-cookies";
break;
case "info_flaresolverr":
field.Label = "FlareSolverr Info";
field.Value = "This site may use Cloudflare DDoS Protection, therefore Prowlarr requires <a href=\"https://wiki.servarr.com/prowlarr/faq#can-i-use-flaresolverr-indexers\" target=\"_blank\" rel=\"noreferrer\">FlareSolverr</a> to access it.";
field.HelpLink = "https://wiki.servarr.com/prowlarr/faq#can-i-use-flaresolverr-indexers";
break;
case "info_category_8000":
field.Label = $"About {definition.Name} Categories";
field.Value = $"{definition.Name} does not return categories in its search results. To sync to your apps, include 8000(Other) in your Apps' Sync Categories.";
field.HelpLink = "https://wiki.servarr.com/prowlarr/faq#prowlarr-will-not-sync-x-indexer-to-app";
break;
}
}

1461
yarn.lock

File diff suppressed because it is too large Load Diff