Merge branch 'Readarr:develop' into develop

pull/3344/head
adechant 3 months ago committed by GitHub
commit 35eb141a60
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -9,14 +9,14 @@ variables:
testsFolder: './_tests'
yarnCacheFolder: $(Pipeline.Workspace)/.yarn
nugetCacheFolder: $(Pipeline.Workspace)/.nuget/packages
majorVersion: '0.3.19'
majorVersion: '0.3.20'
minorVersion: $[counter('minorVersion', 1)]
readarrVersion: '$(majorVersion).$(minorVersion)'
buildName: '$(Build.SourceBranchName).$(readarrVersion)'
sentryOrg: 'servarr'
sentryUrl: 'https://sentry.servarr.com'
dotnetVersion: '6.0.417'
nodeVersion: '16.X'
nodeVersion: '20.X'
innoVersion: '6.2.0'
windowsImage: 'windows-2022'
linuxImage: 'ubuntu-20.04'

@ -90,7 +90,7 @@ class AuthorIndexOverview extends Component {
status,
titleSlug,
nextAiring,
statistics,
statistics = {},
images,
posterWidth,
posterHeight,
@ -113,10 +113,11 @@ class AuthorIndexOverview extends Component {
} = this.props;
const {
bookCount,
sizeOnDisk,
bookFileCount,
totalBookCount
bookCount = 0,
availableBookCount = 0,
bookFileCount = 0,
totalBookCount = 0,
sizeOnDisk = 0
} = statistics;
const {
@ -179,6 +180,7 @@ class AuthorIndexOverview extends Component {
monitored={monitored}
status={status}
bookCount={bookCount}
availableBookCount={availableBookCount}
bookFileCount={bookFileCount}
totalBookCount={totalBookCount}
posterWidth={posterWidth}

@ -85,7 +85,7 @@ class AuthorIndexPoster extends Component {
titleSlug,
status,
nextAiring,
statistics,
statistics = {},
images,
posterWidth,
posterHeight,
@ -110,10 +110,11 @@ class AuthorIndexPoster extends Component {
} = this.props;
const {
bookCount,
sizeOnDisk,
bookFileCount,
totalBookCount
bookCount = 0,
availableBookCount = 0,
bookFileCount = 0,
totalBookCount = 0,
sizeOnDisk = 0
} = statistics;
const {
@ -213,6 +214,7 @@ class AuthorIndexPoster extends Component {
monitored={monitored}
status={status}
bookCount={bookCount}
availableBookCount={availableBookCount}
bookFileCount={bookFileCount}
totalBookCount={totalBookCount}
posterWidth={posterWidth}

@ -11,14 +11,15 @@ function AuthorIndexProgressBar(props) {
monitored,
status,
bookCount,
availableBookCount,
bookFileCount,
totalBookCount,
posterWidth,
detailedProgressBar
} = props;
const progress = bookCount ? bookCount / totalBookCount * 100 : 100;
const text = `${bookCount} / ${totalBookCount}`;
const progress = bookCount ? (availableBookCount / bookCount) * 100 : 100;
const text = `${availableBookCount} / ${bookCount}`;
return (
<ProgressBar
@ -29,7 +30,7 @@ function AuthorIndexProgressBar(props) {
size={detailedProgressBar ? sizes.MEDIUM : sizes.SMALL}
showText={detailedProgressBar}
text={text}
title={translate('BookFileCountBookCountTotalTotalBookCountInterp', [bookFileCount, bookCount, totalBookCount])}
title={translate('AuthorProgressBarText', { bookCount, availableBookCount, bookFileCount, totalBookCount })}
width={posterWidth}
/>
);
@ -39,6 +40,7 @@ AuthorIndexProgressBar.propTypes = {
monitored: PropTypes.bool.isRequired,
status: PropTypes.string.isRequired,
bookCount: PropTypes.number.isRequired,
availableBookCount: PropTypes.number.isRequired,
bookFileCount: PropTypes.number.isRequired,
totalBookCount: PropTypes.number.isRequired,
posterWidth: PropTypes.number.isRequired,

@ -90,7 +90,7 @@ class AuthorIndexRow extends Component {
nextBook,
lastBook,
added,
statistics,
statistics = {},
genres,
ratings,
path,
@ -110,10 +110,11 @@ class AuthorIndexRow extends Component {
} = this.props;
const {
bookCount,
bookFileCount,
totalBookCount,
sizeOnDisk
bookCount = 0,
availableBookCount = 0,
bookFileCount = 0,
totalBookCount = 0,
sizeOnDisk = 0
} = statistics;
const {
@ -286,7 +287,7 @@ class AuthorIndexRow extends Component {
}
if (name === 'bookProgress') {
const progress = bookCount ? bookFileCount / bookCount * 100 : 100;
const progress = bookCount ? (availableBookCount / bookCount) * 100 : 100;
return (
<VirtualTableRowCell
@ -297,8 +298,8 @@ class AuthorIndexRow extends Component {
progress={progress}
kind={getProgressBarKind(status, monitored, progress)}
showText={true}
text={`${bookCount} / ${totalBookCount}`}
title={translate('BookFileCountBookCountTotalTotalBookCountInterp', [bookFileCount, bookCount, totalBookCount])}
text={`${availableBookCount} / ${bookCount}`}
title={translate('AuthorProgressBarText', { bookCount, availableBookCount, bookFileCount, totalBookCount })}
width={125}
/>
</VirtualTableRowCell>

@ -16,8 +16,8 @@ function BookIndexProgressBar(props) {
detailedProgressBar
} = props;
const progress = bookCount ? bookFileCount / totalBookCount * 100 : 0;
const text = `${bookFileCount} / ${bookCount}`;
const progress = bookFileCount && bookCount ? (totalBookCount / bookCount) * 100 : 0;
const text = `${bookFileCount ? bookCount : 0} / ${totalBookCount}`;
return (
<ProgressBar
@ -28,7 +28,11 @@ function BookIndexProgressBar(props) {
size={detailedProgressBar ? sizes.MEDIUM : sizes.SMALL}
showText={detailedProgressBar}
text={text}
title={translate('BookFileCountBookCountTotalTotalBookCountInterp', [bookFileCount, bookCount, totalBookCount])}
title={translate('BookProgressBarText', {
bookCount: bookFileCount ? bookCount : 0,
bookFileCount,
totalBookCount
})}
width={posterWidth}
/>
);

@ -27,14 +27,15 @@ class BookshelfBook extends Component {
title,
disambiguation,
monitored,
statistics,
statistics = {},
isSaving
} = this.props;
const {
bookFileCount,
totalBookCount,
percentOfBooks
bookCount = 0,
bookFileCount = 0,
totalBookCount = 0,
percentOfBooks = 0
} = statistics;
return (
@ -59,10 +60,14 @@ class BookshelfBook extends Component {
percentOfBooks < 100 && monitored && styles.missingWanted,
percentOfBooks === 100 && styles.allBooks
)}
title={translate('BookFileCounttotalBookCountBooksDownloadedInterp', [bookFileCount, totalBookCount])}
title={translate('BookProgressBarText', {
bookCount: bookFileCount ? bookCount : 0,
bookFileCount,
totalBookCount
})}
>
{
totalBookCount === 0 ? '0/0' : `${bookFileCount}/${totalBookCount}`
totalBookCount === 0 ? '0/0' : `${bookFileCount ? bookCount : 0}/${totalBookCount}`
}
</div>
</div>

@ -25,7 +25,8 @@ function createMapStateToProps() {
const values = _.map(filteredItems.sort(sortByName), (downloadClient) => {
return {
key: downloadClient.id,
value: downloadClient.name
value: downloadClient.name,
hint: `(${downloadClient.id})`
};
});

@ -29,7 +29,7 @@ class SelectAuthorModalContent extends Component {
// Listeners
onFilterChange = ({ value }) => {
this.setState({ filter: value.toLowerCase() });
this.setState({ filter: value });
};
//
@ -43,6 +43,7 @@ class SelectAuthorModalContent extends Component {
} = this.props;
const filter = this.state.filter;
const filterLower = filter.toLowerCase();
return (
<ModalContent onModalClose={onModalClose}>
@ -66,7 +67,7 @@ class SelectAuthorModalContent extends Component {
<Scroller className={styles.scroller}>
{
items.map((item) => {
return item.authorName.toLowerCase().includes(filter) ?
return item.authorName.toLowerCase().includes(filterLower) ?
(
<SelectAuthorRow
key={item.id}

@ -52,7 +52,7 @@ class SelectBookModalContent extends Component {
// Listeners
onFilterChange = ({ value }) => {
this.setState({ filter: value.toLowerCase() });
this.setState({ filter: value });
};
//
@ -68,6 +68,7 @@ class SelectBookModalContent extends Component {
} = this.props;
const filter = this.state.filter;
const filterLower = filter.toLowerCase();
return (
<ModalContent onModalClose={onModalClose}>
@ -101,7 +102,7 @@ class SelectBookModalContent extends Component {
<TableBody>
{
items.map((item) => {
return item.title.toLowerCase().includes(filter) ?
return item.title.toLowerCase().includes(filterLower) ?
(
<SelectBookRow
key={item.id}

@ -295,11 +295,11 @@ class InteractiveImportModalContent extends Component {
const errorMessage = getErrorMessage(error, 'Unable to load manual import items');
const bulkSelectOptions = [
{ key: SELECT, value: 'Select...', disabled: true },
{ key: BOOK, value: 'Select Book' },
{ key: EDITION, value: 'Select Edition' },
{ key: QUALITY, value: 'Select Quality' },
{ key: RELEASE_GROUP, value: 'Select ReleaseGroup' }
{ key: SELECT, value: translate('SelectDropdown'), disabled: true },
{ key: BOOK, value: translate('SelectBook') },
{ key: EDITION, value: translate('SelectEdition') },
{ key: QUALITY, value: translate('SelectQuality') },
{ key: RELEASE_GROUP, value: translate('SelectReleaseGroup') }
];
if (allowAuthorChange) {

@ -3,7 +3,7 @@ import React, { Component } from 'react';
import { connect } from 'react-redux';
import { createSelector } from 'reselect';
import { fetchDelayProfiles, fetchDownloadClients, fetchImportLists, fetchIndexers, fetchNotifications, fetchReleaseProfiles } from 'Store/Actions/settingsActions';
import { fetchTagDetails } from 'Store/Actions/tagActions';
import { fetchTagDetails, fetchTags } from 'Store/Actions/tagActions';
import Tags from './Tags';
function createMapStateToProps() {
@ -25,6 +25,7 @@ function createMapStateToProps() {
}
const mapDispatchToProps = {
dispatchFetchTags: fetchTags,
dispatchFetchTagDetails: fetchTagDetails,
dispatchFetchDelayProfiles: fetchDelayProfiles,
dispatchFetchImportLists: fetchImportLists,
@ -41,6 +42,7 @@ class MetadatasConnector extends Component {
componentDidMount() {
const {
dispatchFetchTags,
dispatchFetchTagDetails,
dispatchFetchDelayProfiles,
dispatchFetchImportLists,
@ -50,6 +52,7 @@ class MetadatasConnector extends Component {
dispatchFetchDownloadClients
} = this.props;
dispatchFetchTags();
dispatchFetchTagDetails();
dispatchFetchDelayProfiles();
dispatchFetchImportLists();
@ -72,6 +75,7 @@ class MetadatasConnector extends Component {
}
MetadatasConnector.propTypes = {
dispatchFetchTags: PropTypes.func.isRequired,
dispatchFetchTagDetails: PropTypes.func.isRequired,
dispatchFetchDelayProfiles: PropTypes.func.isRequired,
dispatchFetchImportLists: PropTypes.func.isRequired,

@ -21,19 +21,19 @@ export const firstDayOfWeekOptions = [
];
export const weekColumnOptions = [
{ key: 'ddd M/D', value: 'Tue 3/25' },
{ key: 'ddd MM/DD', value: 'Tue 03/25' },
{ key: 'ddd D/M', value: 'Tue 25/3' },
{ key: 'ddd DD/MM', value: 'Tue 25/03' }
{ key: 'ddd M/D', value: 'Tue 3/25', hint: 'ddd M/D' },
{ key: 'ddd MM/DD', value: 'Tue 03/25', hint: 'ddd MM/DD' },
{ key: 'ddd D/M', value: 'Tue 25/3', hint: 'ddd D/M' },
{ key: 'ddd DD/MM', value: 'Tue 25/03', hint: 'ddd DD/MM' }
];
const shortDateFormatOptions = [
{ key: 'MMM D YYYY', value: 'Mar 25 2014' },
{ key: 'DD MMM YYYY', value: '25 Mar 2014' },
{ key: 'MM/D/YYYY', value: '03/25/2014' },
{ key: 'MM/DD/YYYY', value: '03/25/2014' },
{ key: 'DD/MM/YYYY', value: '25/03/2014' },
{ key: 'YYYY-MM-DD', value: '2014-03-25' }
{ key: 'MMM D YYYY', value: 'Mar 25 2014', hint: 'MMM D YYYY' },
{ key: 'DD MMM YYYY', value: '25 Mar 2014', hint: 'DD MMM YYYY' },
{ key: 'MM/D/YYYY', value: '03/25/2014', hint: 'MM/D/YYYY' },
{ key: 'MM/DD/YYYY', value: '03/25/2014', hint: 'MM/DD/YYYY' },
{ key: 'DD/MM/YYYY', value: '25/03/2014', hint: 'DD/MM/YYYY' },
{ key: 'YYYY-MM-DD', value: '2014-03-25', hint: 'YYYY-MM-DD' }
];
const longDateFormatOptions = [

@ -13,7 +13,7 @@ using NzbDrone.Core.Test.Framework;
namespace NzbDrone.Core.Test.MetadataSource.Goodreads
{
[TestFixture]
[Ignore("Waiting for metadata to be back again", Until = "2024-01-31 00:00:00Z")]
[Ignore("Waiting for metadata to be back again", Until = "2024-03-15 00:00:00Z")]
public class BookInfoProxyFixture : CoreTest<BookInfoProxy>
{
private MetadataProfile _metadataProfile;

@ -15,7 +15,7 @@ using NzbDrone.Test.Common;
namespace NzbDrone.Core.Test.MetadataSource.Goodreads
{
[TestFixture]
[Ignore("Waiting for metadata to be back again", Until = "2024-01-31 00:00:00Z")]
[Ignore("Waiting for metadata to be back again", Until = "2024-03-15 00:00:00Z")]
public class BookInfoProxySearchFixture : CoreTest<BookInfoProxy>
{
[SetUp]

@ -34,6 +34,7 @@ namespace NzbDrone.Core.Books
public List<string> Genres { get; set; }
public List<int> RelatedBooks { get; set; }
public Ratings Ratings { get; set; }
public DateTime? LastSearchTime { get; set; }
// These are Readarr generated/config
public string CleanTitle { get; set; }
@ -90,6 +91,7 @@ namespace NzbDrone.Core.Books
Monitored = other.Monitored;
AnyEditionOk = other.AnyEditionOk;
LastInfoSync = other.LastInfoSync;
LastSearchTime = other.LastSearchTime;
Added = other.Added;
AddOptions = other.AddOptions;
}

@ -31,6 +31,7 @@ namespace NzbDrone.Core.Books
Book UpdateBook(Book book);
void SetBookMonitored(int bookId, bool monitored);
void SetMonitored(IEnumerable<int> ids, bool monitored);
void UpdateLastSearchTime(List<Book> books);
PagingSpec<Book> BooksWithoutFiles(PagingSpec<Book> pagingSpec);
PagingSpec<Book> BooksWithFiles(PagingSpec<Book> pagingSpec);
List<Book> BooksBetweenDates(DateTime start, DateTime end, bool includeUnmonitored);
@ -311,6 +312,11 @@ namespace NzbDrone.Core.Books
}
}
public void UpdateLastSearchTime(List<Book> books)
{
_bookRepository.SetFields(books, b => b.LastSearchTime);
}
public void Handle(AuthorDeletedEvent message)
{
var books = GetBooksByAuthorMetadataId(message.Author.AuthorMetadataId);

@ -0,0 +1,14 @@
using FluentMigrator;
using NzbDrone.Core.Datastore.Migration.Framework;
namespace NzbDrone.Core.Datastore.Migration
{
[Migration(039)]
public class book_last_searched_time : NzbDroneMigrationBase
{
protected override void MainDbUpgrade()
{
Alter.Table("Books").AddColumn("LastSearchTime").AsDateTimeOffset().Nullable();
}
}
}

@ -59,13 +59,18 @@ namespace NzbDrone.Core.Download
{
var indexer = _indexerFactory.Find(indexerId);
if (indexer != null && indexer.DownloadClientId > 0)
if (indexer is { DownloadClientId: > 0 })
{
var client = availableProviders.SingleOrDefault(d => d.Definition.Id == indexer.DownloadClientId);
if (client == null || (filterBlockedClients && blockedProviders.Contains(client.Definition.Id)))
if (client == null)
{
throw new DownloadClientUnavailableException($"Indexer specified download client is not available");
throw new DownloadClientUnavailableException($"Indexer specified download client does not exist for {indexer.Name}");
}
if (filterBlockedClients && blockedProviders.Contains(client.Definition.Id))
{
throw new DownloadClientUnavailableException($"Indexer specified download client is not available due to recent failures for {indexer.Name}");
}
return client;

@ -14,7 +14,7 @@ namespace NzbDrone.Core.Extras.Files
List<TExtraFile> GetFilesByAuthor(int authorId);
List<TExtraFile> GetFilesByBook(int authorId, int bookId);
List<TExtraFile> GetFilesByBookFile(int bookFileId);
TExtraFile FindByPath(string path);
TExtraFile FindByPath(int authorId, string path);
}
public class ExtraFileRepository<TExtraFile> : BasicRepository<TExtraFile>, IExtraFileRepository<TExtraFile>
@ -55,9 +55,9 @@ namespace NzbDrone.Core.Extras.Files
return Query(c => c.BookFileId == bookFileId);
}
public TExtraFile FindByPath(string path)
public TExtraFile FindByPath(int authorId, string path)
{
return Query(c => c.RelativePath == path).SingleOrDefault();
return Query(c => c.AuthorId == authorId && c.RelativePath == path).SingleOrDefault();
}
}
}

@ -18,7 +18,7 @@ namespace NzbDrone.Core.Extras.Files
{
List<TExtraFile> GetFilesByAuthor(int authorId);
List<TExtraFile> GetFilesByBookFile(int bookFileId);
TExtraFile FindByPath(string path);
TExtraFile FindByPath(int authorId, string path);
void Upsert(TExtraFile extraFile);
void Upsert(List<TExtraFile> extraFiles);
void Delete(int id);
@ -59,9 +59,9 @@ namespace NzbDrone.Core.Extras.Files
return _repository.GetFilesByBookFile(bookFileId);
}
public TExtraFile FindByPath(string path)
public TExtraFile FindByPath(int authorId, string path)
{
return _repository.FindByPath(path);
return _repository.FindByPath(authorId, path);
}
public void Upsert(TExtraFile extraFile)

@ -41,8 +41,8 @@ namespace NzbDrone.Core.Extras.Others
}
var relativePath = author.Path.GetRelativePath(path);
var otherExtraFile = _otherExtraFileService.FindByPath(author.Id, relativePath);
var otherExtraFile = _otherExtraFileService.FindByPath(relativePath);
if (otherExtraFile != null)
{
var newPath = path + "-orig";
@ -66,8 +66,8 @@ namespace NzbDrone.Core.Extras.Others
}
var relativePath = author.Path.GetRelativePath(path);
var otherExtraFile = _otherExtraFileService.FindByPath(author.Id, relativePath);
var otherExtraFile = _otherExtraFileService.FindByPath(relativePath);
if (otherExtraFile != null)
{
var subfolder = Path.GetDirectoryName(relativePath);

@ -1,12 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Threading.Tasks;
using NLog;
using NzbDrone.Common.Instrumentation.Extensions;
using NzbDrone.Core.Books;
using NzbDrone.Core.Datastore;
using NzbDrone.Core.DecisionEngine;
using NzbDrone.Core.Download;
using NzbDrone.Core.Messaging.Commands;
using NzbDrone.Core.Queue;
@ -39,20 +39,31 @@ namespace NzbDrone.Core.IndexerSearch
_logger = logger;
}
private async Task SearchForMissingBooks(List<Book> books, bool userInvokedSearch)
private async Task SearchForBulkBooks(List<Book> books, bool userInvokedSearch)
{
_logger.ProgressInfo("Performing missing search for {0} books", books.Count);
var downloadedCount = 0;
foreach (var book in books)
foreach (var book in books.OrderBy(a => a.LastSearchTime ?? DateTime.MinValue))
{
var decisions = await _releaseSearchService.BookSearch(book.Id, false, userInvokedSearch, false);
List<DownloadDecision> decisions;
try
{
decisions = await _releaseSearchService.BookSearch(book.Id, false, userInvokedSearch, false);
}
catch (Exception ex)
{
_logger.Error(ex, "Unable to search for book: [{0}]", book);
continue;
}
var processed = await _processDownloadDecisions.ProcessDecisions(decisions);
downloadedCount += processed.Grabbed.Count;
}
_logger.ProgressInfo("Completed missing search for {0} books. {1} reports downloaded.", books.Count, downloadedCount);
_logger.ProgressInfo("Completed search for {0} books. {1} reports downloaded.", books.Count, downloadedCount);
}
public void Execute(BookSearchCommand message)
@ -104,17 +115,11 @@ namespace NzbDrone.Core.IndexerSearch
var queue = _queueService.GetQueue().Where(q => q.Book != null).Select(q => q.Book.Id);
var missing = books.Where(e => !queue.Contains(e.Id)).ToList();
SearchForMissingBooks(missing, message.Trigger == CommandTrigger.Manual).GetAwaiter().GetResult();
SearchForBulkBooks(missing, message.Trigger == CommandTrigger.Manual).GetAwaiter().GetResult();
}
public void Execute(CutoffUnmetBookSearchCommand message)
{
Expression<Func<Book, bool>> filterExpression;
filterExpression = v =>
v.Monitored == true &&
v.Author.Value.Monitored == true;
var pagingSpec = new PagingSpec<Book>
{
Page = 1,
@ -123,14 +128,14 @@ namespace NzbDrone.Core.IndexerSearch
SortKey = "Id"
};
pagingSpec.FilterExpressions.Add(filterExpression);
pagingSpec.FilterExpressions.Add(v => v.Monitored == true && v.Author.Value.Monitored == true);
var books = _bookCutoffService.BooksWhereCutoffUnmet(pagingSpec).Records.ToList();
var queue = _queueService.GetQueue().Where(q => q.Book != null).Select(q => q.Book.Id);
var missing = books.Where(e => !queue.Contains(e.Id)).ToList();
var cutoffUnmet = books.Where(e => !queue.Contains(e.Id)).ToList();
SearchForMissingBooks(missing, message.Trigger == CommandTrigger.Manual).GetAwaiter().GetResult();
SearchForBulkBooks(cutoffUnmet, message.Trigger == CommandTrigger.Manual).GetAwaiter().GetResult();
}
}
}

@ -136,6 +136,16 @@ namespace NzbDrone.Core.IndexerSearch
_logger.Debug("Total of {0} reports were found for {1} from {2} indexers", reports.Count, criteriaBase, indexers.Count);
// Update the last search time for all albums if at least 1 indexer was searched.
if (indexers.Any())
{
var lastSearchTime = DateTime.UtcNow;
_logger.Debug("Setting last search time to: {0}", lastSearchTime);
criteriaBase.Books.ForEach(a => a.LastSearchTime = lastSearchTime);
_bookService.UpdateLastSearchTime(criteriaBase.Books);
}
return _makeDownloadDecision.GetSearchDecision(reports, criteriaBase).ToList();
}

@ -449,8 +449,6 @@
"AudioFileMetadata": "Metadaten in Audiodateien schreiben",
"AuthorNameHelpText": "Der Name des auszuschließenden Autors/Buches (kann etwas Sinnvolles sein)",
"AutomaticallySwitchEdition": "Edition automatisch wechseln",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (Gesamt: {2})",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} Bücher heruntergeladen",
"BookFilesCountMessage": "Keine Buchdateien",
"BookNaming": "Buchbenennung",
"Books": "Bücher",

@ -734,7 +734,6 @@
"WriteTagsAll": "Ολα τα αρχεία; μόνο αρχική εισαγωγή",
"WriteTagsSync": "Ολα τα αρχεία; μείνετε σε συγχρονισμό με το Goodreads",
"WriteMetadataTags": "Γράψτε ετικέτες μεταδεδομένων",
"BookFileCounttotalBookCountBooksDownloadedInterp": "Λήφθηκαν {0}/{1} βιβλία",
"BookFilesCountMessage": "Δεν υπάρχουν αρχεία βιβλίων",
"BookIndex": "ΠΕΡΙΕΧΟΜΕΝΑ ΒΙΒΛΙΟΥ",
"OnImportFailureHelpText": "Σε περίπτωση αποτυχίας εισαγωγής",
@ -800,7 +799,6 @@
"MetadataProviderSource": "Πηγή παρόχου μεταδεδομένων",
"EnabledHelpText": "Επιλέξτε για να ενεργοποιήσετε το προφίλ απελευθέρωσης",
"EnableProfile": "Ενεργοποίηση προφίλ",
"BookFileCountBookCountTotalTotalBookCountInterp": "Βιβλίο {0} / {1} (Σύνολο: {2})",
"BookStudio": "Στούντιο Βιβλίου",
"CalibreContentServerText": "Η χρήση ενός Caliber Content Server (όχι Caliber Web) επιτρέπει στο Readarr να προσθέτει βιβλία στη βιβλιοθήκη Caliber και να ενεργοποιεί μετατροπές μεταξύ μορφών",
"IfYouDontAddAnImportListExclusionAndTheAuthorHasAMetadataProfileOtherThanNoneThenThisBookMayBeReaddedDuringTheNextAuthorRefresh": "Εάν δεν προσθέσετε εξαίρεση λίστας εισαγωγής και ο συγγραφέας έχει προφίλ μεταδεδομένων διαφορετικό από το \"Κανένα\", τότε αυτό το βιβλίο μπορεί να προστεθεί ξανά κατά την επόμενη ανανέωση του συγγραφέα.",

@ -59,6 +59,7 @@
"AuthorFolderFormat": "Author Folder Format",
"AuthorIndex": "Author Index",
"AuthorNameHelpText": "The name of the author/book to exclude (can be anything meaningful)",
"AuthorProgressBarText": "{availableBookCount} / {bookCount} (Total: {totalBookCount}, Files: {bookFileCount})",
"Authors": "Authors",
"AutoAdd": "Auto Add",
"AutoRedownloadFailed": "Redownload Failed",
@ -92,8 +93,6 @@
"Book": "Book",
"BookAvailableButMissing": "Book Available, but Missing",
"BookEditor": "Book Editor",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (Total: {2})",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} books downloaded",
"BookFilesCountMessage": "No book files",
"BookIndex": "Book Index",
"BookIsDownloading": "Book is downloading",
@ -101,6 +100,7 @@
"BookList": "Book List",
"BookMonitoring": "Book Monitoring",
"BookNaming": "Book Naming",
"BookProgressBarText": "{bookCount} / {totalBookCount} (Files: {bookFileCount})",
"BookStudio": "Book Studio",
"BookTitle": "Book Title",
"Books": "Books",
@ -833,6 +833,11 @@
"SearchSelected": "Search Selected",
"Security": "Security",
"SelectAll": "Select All",
"SelectBook": "Select Book",
"SelectDropdown": "Select...",
"SelectEdition": "Select Edition",
"SelectQuality": "Select Quality",
"SelectReleaseGroup": "Select Release Group",
"SelectedCountAuthorsSelectedInterp": "{0} Author(s) Selected",
"SelectedCountBooksSelectedInterp": "{0} Book(s) Selected",
"SendAnonymousUsageData": "Send Anonymous Usage Data",

@ -120,7 +120,7 @@
"EnableRSS": "Habilitar RSS",
"EnableSSL": "Habilitar SSL",
"EnableSslHelpText": " Requiere reiniciar la aplicación como administrador para que surta efecto",
"Ended": "Finalizado",
"Ended": "Terminado",
"ErrorLoadingContents": "Error cargando contenidos",
"ErrorLoadingPreviews": "Error al cargar las previsualizaciones",
"Exception": "Excepción",
@ -181,10 +181,10 @@
"Local": "Local",
"LogFiles": "Archivos de Registro",
"LogLevel": "Nivel de Registro",
"LogLevelvalueTraceTraceLoggingShouldOnlyBeEnabledTemporarily": "El registro de seguimiento se ha de habilitar solo temporalmente",
"LogLevelvalueTraceTraceLoggingShouldOnlyBeEnabledTemporarily": "El registro de seguimiento sólo debe activarse temporalmente",
"Logging": "Registro de eventos",
"Logs": "Registros",
"LongDateFormat": "Formato Largo de Fecha",
"LongDateFormat": "Formato de Fecha Larga",
"ManualImport": "Importar Manualmente",
"MarkAsFailed": "Marcar como Fallida",
"MarkAsFailedMessageText": "Seguro que quieres marcar '{0}' como fallida?",
@ -348,9 +348,9 @@
"SslCertPathHelpText": "Ruta al archivo pfx",
"StandardBookFormat": "Formato de Película Estándar",
"StartTypingOrSelectAPathBelow": "Comienza a escribir o selecciona una ruta debajo",
"StartupDirectory": "Directorio de arranque",
"StartupDirectory": "Directorio de Arranque",
"Status": "Estado",
"StatusEndedEnded": "Terminó",
"StatusEndedEnded": "Terminado",
"Style": "Estilo",
"SuccessMyWorkIsDoneNoFilesToRename": "Éxito! Mi trabajo está hecho, no hay archivos pendientes de renombrar.",
"SuccessMyWorkIsDoneNoFilesToRetag": "Éxito! Mi trabajo está hecho, no hay archivos pendientes de renombrar.",
@ -393,8 +393,8 @@
"UnableToLoadHistory": "No se ha podido cargar la historia",
"UnableToLoadImportListExclusions": "No se pueden cargas las Excluidas de la Lista",
"UnableToLoadIndexerOptions": "No se han podido cargar las opciones del indexer",
"UnableToLoadIndexers": "No se pueden cargar los indexers",
"UnableToLoadLists": "No se puden cargar las Listas",
"UnableToLoadIndexers": "No se pueden cargar los indexadores",
"UnableToLoadLists": "No se pueden cargar las Listas",
"UnableToLoadMediaManagementSettings": "No se han podido cargar los ajustes de Manipulación multimedia",
"UnableToLoadMetadata": "No se pueden cargar los Metadatos",
"UnableToLoadNamingSettings": "No se han podido cargar los ajustes de renombrado",
@ -518,7 +518,7 @@
"SettingsRemotePathMappingRemotePathHelpText": "Ruta de origen al directorio al que accede el Gestor de Descargas",
"TimeLeft": "Tiempo restante",
"DownloadClientCheckUnableToCommunicateMessage": "Incapaz de comunicarse con {0}.",
"IndexerPriorityHelpText": "Prioridad del Indexer de 1 (La más alta) a 50 (La más baja). Por defecto: 25. Se utiliza cuando se toman las versiones como un criterio para las versiones que de otro modo serían iguales, Radarr seguirá utilizando todos los indexadores habilitados para la sincronización y la búsqueda de RSS",
"IndexerPriorityHelpText": "Prioridad del Indexador de 1 (la más alta) a 50 (la más baja). Por defecto: 25. Usada para desempatar lanzamientos iguales cuando se capturan, Readarr seguirá usando todos los indexadores habilitados para Sincronización de RSS y Búsqueda.",
"Monitor": "Monitorear",
"MountCheckMessage": "El punto de montaje que contiene la ruta de una película es de read-only: ",
"OnBookFileDelete": "Al eliminar archivo de película",
@ -533,7 +533,7 @@
"IndexerLongTermStatusCheckSingleClientMessage": "Indexers no disponible por errores durando más de 6 horas: {0}",
"IndexerRssHealthCheckNoAvailableIndexers": "Todos los indexers capaces de RSS están temporalmente desactivados debido a errores recientes con el indexer",
"IndexerSearchCheckNoInteractiveMessage": "No hay Indexers con Búsqueda Interactiva activada, Readarr no obtendrá ningún resultado en las búsquedas",
"IndexerStatusCheckSingleClientMessage": "Indexers no disponibles debido a errores: {0}",
"IndexerStatusCheckSingleClientMessage": "Indexadores no disponibles debido a errores: {indexerNames}",
"OnBookFileDeleteForUpgrade": "En archivo de película Eliminar para actualizar",
"OnBookFileDeleteForUpgradeHelpText": "En archivo de película Eliminar para actualizar",
"OnBookFileDeleteHelpText": "Al eliminar archivo de película",
@ -562,7 +562,7 @@
"IndexerRssHealthCheckNoIndexers": "No hay indexers disponibles con sincronización RSS activada, Radarr no capturará nuevos estrenos automáticamente",
"IndexerSearchCheckNoAutomaticMessage": "No hay indexers con Búsqueda Automática disponibles, Radarr no dará ningún resultado de búsquedas automáticas",
"IndexerSearchCheckNoAvailableIndexersMessage": "Todos los indexers están temporalmente inactivos debido a errores recientes con ellos",
"IndexerStatusCheckAllClientMessage": "Los indexers no están disponibles debido a errores",
"IndexerStatusCheckAllClientMessage": "Todos los indexadores no están disponibles debido a errores",
"Label": "Etiqueta",
"MissingFromDisk": "Radarr no pudo encontrar el archivo en el disco, por lo que el archivo fue desvinculado de la película en la base de datos",
"RemotePathMappingCheckDownloadPermissions": "Radarr puede ver pero no acceder a la película descargada {0}. Probablemente sea un error de permisos.",
@ -573,13 +573,13 @@
"UserAgentProvidedByTheAppThatCalledTheAPI": "User-Agent proporcionado por la aplicación llamó a la API",
"WriteTagsNo": "Nunca",
"FileWasDeletedByUpgrade": "Se eliminó el archivo para importar una actualización",
"IndexersSettingsSummary": "Indexers y restricciones de lanzamientos",
"IndexersSettingsSummary": "Indexadores y restricciones de lanzamiento",
"RestartRequiredHelpTextWarning": "Requiere reiniciar para que surta efecto",
"AddList": "Añadir Lista",
"RenameFiles": "Renombrar Archivos",
"Test": "Test",
"InstanceName": "Nombre de Instancia",
"InstanceNameHelpText": "Nombre de instancia en pestaña y para nombre de aplicación en Syslog",
"InstanceName": "Nombre de la Instancia",
"InstanceNameHelpText": "Nombre de la instancia en la pestaña y para la aplicación Syslog",
"Database": "Base de datos",
"ManualImportSelectEdition": "Importar Manualmente - Seleccionar Película",
"ImportListExclusions": "Importar lista de exclusiones",
@ -646,13 +646,13 @@
"RemoveCompleted": "Eliminación completada",
"RemoveDownloadsAlert": "Los ajustes de eliminación se han trasladado a los ajustes individuales del cliente de descarga en la tabla anterior.",
"RemoveFailed": "La eliminación falló",
"ApplyTagsHelpTextAdd": "Añadir: Añadir las etiquetas la lista existente de etiquetas",
"ApplyTagsHelpTextAdd": "Añadir: Añade las etiquetas a la lista de etiquetas existente",
"ApplyTagsHelpTextHowToApplyDownloadClients": "Cómo añadir etiquetas a los clientes de descargas seleccionados",
"ApplyTagsHelpTextHowToApplyImportLists": "Cómo añadir etiquetas a las listas de importación seleccionadas",
"ApplyTagsHelpTextHowToApplyIndexers": "Cómo añadir etiquetas a los indexadores seleccionados",
"ApplyTagsHelpTextRemove": "Eliminar: Eliminar las etiquetas introducidas",
"ApplyTagsHelpTextReplace": "Reemplazar: Reemplazar las etiquetas con las etiquetas introducidas (no introducir etiquetas para eliminar todas las etiquetas)",
"DeleteSelectedDownloadClients": "Borrar gestor de descarga(s)",
"ApplyTagsHelpTextHowToApplyIndexers": "Cómo aplicar etiquetas a los indexadores seleccionados",
"ApplyTagsHelpTextRemove": "Eliminar: Elimina las etiquetas introducidas",
"ApplyTagsHelpTextReplace": "Reemplazar: Sustituye las etiquetas por las introducidas (introduce \"no tags\" para borrar todas las etiquetas)",
"DeleteSelectedDownloadClients": "Borrar Cliente de Descarga(s)",
"DeleteSelectedDownloadClientsMessageText": "¿Está seguro de querer eliminar {count} cliente(s) de descarga seleccionado(s)?",
"DeleteSelectedImportListsMessageText": "Seguro que quieres eliminar {count} lista(s) de importación seleccionada(s)?",
"DeleteSelectedIndexers": "Borrar indexer(s)",
@ -696,7 +696,7 @@
"TotalSpace": "Espacio Total",
"IndexerDownloadClientHealthCheckMessage": "Indexadores con clientes de descarga inválidos: {0}.",
"ManageImportLists": "Gestionar Listas de Importación",
"ConnectionLostToBackend": "{appName} ha perdido su conexión con el backend y necesitará ser recargada para restaurar su funcionalidad.",
"ConnectionLostToBackend": "{appName} ha perdido su conexión con el backend y tendrá que ser recargado para recuperar su funcionalidad.",
"NotificationStatusSingleClientHealthCheckMessage": "Listas no disponibles debido a errores: {0}",
"NotificationStatusAllClientHealthCheckMessage": "Las listas no están disponibles debido a errores",
"ReleaseProfiles": "perfil de lanzamiento",
@ -706,11 +706,11 @@
"Library": "Biblioteca",
"SomeResultsAreHiddenByTheAppliedFilter": "Algunos resultados están ocultos por el filtro aplicado",
"FreeSpace": "Espacio libre",
"LastDuration": "Duración",
"LastExecution": "Última ejecución",
"LastDuration": "Última Duración",
"LastExecution": "Última Ejecución",
"LastWriteTime": "Última Fecha de Escritura",
"ConnectionLost": "Conexión perdida",
"ConnectionLostReconnect": "Radarr intentará conectarse automáticamente, o haz clic en el botón de recarga abajo.",
"ConnectionLostReconnect": "{appName} intentará conectarse automáticamente, o puede hacer clic en recargar abajo.",
"NextExecution": "Siguiente ejecución",
"NoResultsFound": "No se han encontrado resultados",
"RecentChanges": "Cambios recientes",
@ -724,7 +724,6 @@
"AuthorEditor": "Editor de Autor",
"Author": "Autor",
"BackupIntervalHelpText": "Intervalo para respaldar la base de datos y configuraciones de Readarr",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} libros descargados",
"BookList": "Lista de libros",
"BookFilesCountMessage": "No hay archivos de libros",
"AllowFingerprintingHelpText": "Utilizar la huella digital para mejorar la precisión de la coincidencia de libros",
@ -736,13 +735,12 @@
"BookEditor": "Editor de Libro",
"ASIN": "ASIN",
"AnyEditionOkHelpText": "Readarr cambiará automáticamente a la edición que mejor coincida con los archivos descargados",
"AppUpdated": "{appName} Actualizada",
"AppUpdatedVersion": "{appName} ha sido actualizado a la versión `{version}`, para obtener los cambios más recientes necesitará recargar {appName}",
"AppUpdated": "{appName} Actualizado",
"AppUpdatedVersion": "{appName} ha sido actualizado a la versión `{version}`, para obtener los cambios más recientes, necesitará recargar {appName}",
"AuthorFolderFormat": "Formato de Carpeta de Autor",
"AuthorNameHelpText": "El nombre del autor/libro a excluir (puede ser cualquier cosa significativa)",
"BookMonitoring": "Monitoreo de libros",
"AllowFingerprintingHelpTextWarning": "Esto requiere que Readarr lea partes del archivo, lo que ralentizará los escaneos y puede provocar una alta actividad en el disco o en la red.",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (Total: {2})",
"Book": "Libro",
"AutomaticallySwitchEdition": "Cambiar edición automáticamente",
"BookNaming": "Nombrado de libros",
@ -796,5 +794,7 @@
"IgnoreDownload": "Ignorar descarga",
"IgnoreDownloads": "Ignorar descargas",
"IgnoreDownloadHint": "Detiene {appName} de procesar esta descarga más adelante",
"IgnoreDownloadsHint": "Detiene {appName} de procesar estas descargas más adelante"
"IgnoreDownloadsHint": "Detiene {appName} de procesar estas descargas más adelante",
"NoDownloadClientsFound": "No se han encontrado clientes de descarga",
"NoIndexersFound": "No se han encontrado indexadores"
}

@ -8,7 +8,7 @@
"20MinutesTwenty": "20 minuuttia: {0}",
"45MinutesFourtyFive": "45 minuuttia: {0}",
"60MinutesSixty": "60 minuuttia: {0}",
"APIKey": "API-avain",
"APIKey": "Rajapinnan avain",
"About": "Tietoja",
"AddListExclusion": "Lisää listapoikkeus",
"AddingTag": "Tunniste lisätään",
@ -22,7 +22,7 @@
"Authentication": "Tunnistautuminen",
"AuthenticationMethodHelpText": "Vaadi {appName}in käyttöön käyttäjätunnus ja salasana.",
"AuthorClickToChangeBook": "Vaihda kirjaa painamalla",
"AutoRedownloadFailedHelpText": "Hae ja pyri laaamaan eri julkaisu automaattisesti.",
"AutoRedownloadFailedHelpText": "Etsi ja pyri lataamaan eri julkaisu automaattisesti.",
"AutoUnmonitorPreviouslyDownloadedBooksHelpText": "Levyltä poistettavien kirjojen valvonta lopetetaan automaattisesti.",
"Automatic": "Automaattinen",
"BackupFolderHelpText": "Suhteelliset tiedostosijainnit ovat {appName}in AppData-kansiossa.",
@ -124,7 +124,7 @@
"ErrorLoadingPreviews": "Virhe ladattaessa esikatselua",
"Exception": "Poikkeus",
"FailedDownloadHandling": "Latauksen käsittely epäonnistui",
"FileDateHelpText": "Muuta tiedoston päiväys tuonnin ja uudelleentarkistuksen yhteydessä.",
"FileDateHelpText": "Muuta tiedoston päiväys tuonnin/kirjaston uudelleentarkistuksen yhteydessä.",
"FileManagement": "Tiedostojen hallinta",
"FileNames": "Tiedostonimet",
"Filename": "Tiedostonimi",
@ -177,7 +177,7 @@
"IsTagUsedCannotBeDeletedWhileInUse": "Tunnistetta ei voi poistaa, koska se on käytössä",
"Language": "Kieli",
"LaunchBrowserHelpText": " Avaa readarrin verkkokäyttöliittymä verkkoselaimeen sovelluksen käynnistyksen yhteydessä.",
"LoadingBookFilesFailed": "Elokuvatiedostojen lataaminen epäonnistui",
"LoadingBookFilesFailed": "Kirjatiedostojen lataus epäonnistui",
"Local": "Paikalliset",
"LogFiles": "Lokitiedostot",
"LogLevel": "Lokikirjauksen laajuus",
@ -200,7 +200,7 @@
"MinimumAge": "Vähimmäisikä",
"MinimumAgeHelpText": "Vain Usenet: NZB:n vähimmäisikä minuutteina, ennen niiden kaappausta. Tämän avulla uusille julkaisuille voidaan antaa aikaa levitä Usenet-palveluntarjoajalle.",
"MinimumFreeSpace": "Vapaan tilan vähimmäismäärä",
"MinimumFreeSpaceWhenImportingHelpText": "Estä tuonti, jos sen jälkeinen vapaa levytila olisi tässä määritettyä arvoa pienempi.",
"MinimumFreeSpaceWhenImportingHelpText": "Estä tuonti, jos sen jälkeinen vapaa levytila olisi tässä määritettyä pienempi.",
"MinimumLimits": "Vähimmäisrajoitukset",
"Missing": "Puuttuu",
"Mode": "Tila",
@ -222,7 +222,7 @@
"OnGrabHelpText": "Kun julkaisu kaapataan",
"OnHealthIssueHelpText": "Vakausongelmat",
"OnRenameHelpText": "Uudelleennimeäminen",
"OnUpgradeHelpText": "Päivitys",
"OnUpgradeHelpText": "Päivitettäessä",
"OpenBrowserOnStart": "Avaa selain käynnistettäessä",
"Options": "Asetukset",
"Original": "Alkuperäiset",
@ -261,7 +261,7 @@
"ReadarrTags": "Tunnisteet",
"Real": "Todellinen",
"Reason": "Syy",
"RecycleBinCleanupDaysHelpText": "Arvo \"0\" (nolla) poistaa automaattityhjennyksen käytöstä.",
"RecycleBinCleanupDaysHelpText": "Arvo \"0\" (nolla) poistaa automaattisen tyhjennyksen käytöstä.",
"RecycleBinCleanupDaysHelpTextWarning": "Määritettyä päiväystä vanhemmat tiedostot poistetaan roskakorista automaattisesti.",
"RecycleBinHelpText": "Pysyvän poiston sijaan kirjatiedostot siirretään tähän kansioon.",
"RecyclingBin": "Roskakori",
@ -277,13 +277,13 @@
"RemotePathMappings": "Etäsijaintien kohdistukset",
"Remove": "Poista",
"RemoveCompletedDownloadsHelpText": "Poista tuodut lataukset lataustyökalun historiasta",
"RemoveFailedDownloadsHelpText": "Poista epäonnistuneet lataukset lataustyökalun historiasta",
"RemoveFailedDownloadsHelpText": "Poista epäonnistuneet lataukset lataustyökalun historiasta.",
"RemoveFilter": "Poista suodatin",
"RemoveFromDownloadClient": "Poista lataustyökalusta",
"RemoveFromQueue": "Poista jonosta",
"RemoveHelpTextWarning": "Poistaminen poistaa latauksen ja sen sisältämät tiedostot lataustyökalusta.",
"RemoveSelected": "Poista valitut",
"RemoveTagExistingTag": "Olemassa oleva tunniste",
"RemoveTagExistingTag": "Tunniste on jo olemassa",
"RemoveTagRemovingTag": "Tunniste poistetaan",
"RemovedFromTaskQueue": "Poistettu tehtäväjonosta",
"RenameBooksHelpText": "Jos uudelleennimeäminen ei ole käytössä, käytetään nykyistä tiedostonimeä.",
@ -294,8 +294,8 @@
"RescanAfterRefreshHelpTextWarning": "{appName} ei tunnista tiedostomuutoksia automaattisesti, jos asetuksena ei ole \"Aina\".",
"RescanAuthorFolderAfterRefresh": "Tutki kirjailijakansio päivityksen jälkeen uudelleen",
"Reset": "Uudista",
"ResetAPIKey": "Uudista API-avain",
"ResetAPIKeyMessageText": "Haluatko varmasti uudistaa API-avaimesi?",
"ResetAPIKey": "Korvaa rajapinnan avain",
"ResetAPIKeyMessageText": "Haluatko varmasti korvata rajapinnan avaimen uudella?",
"Restart": "Käynnistä uudelleen",
"RestartNow": "Käynnistä uudelleen nyt",
"RestartReadarr": "Käynnistä Radarr uudelleen",
@ -386,28 +386,28 @@
"UnableToAddANewRemotePathMappingPleaseTryAgain": "Etäsijainnin kohdistuksen lisäys epäonnistui. Yritä uudelleen.",
"UnableToAddANewRootFolderPleaseTryAgain": "Uutta mukautettua muotoa ei voi lisätä, yritä uudelleen.",
"UnableToLoadBackups": "Varmuuskopioiden lataus epäonnistui",
"UnableToLoadDelayProfiles": "Viiveprofiilien lataus epäonnistui.",
"UnableToLoadDelayProfiles": "Virhe ladattaessa viiveprofiileja",
"UnableToLoadDownloadClientOptions": "Lataustyökalun asetusten lataus epäonnistui",
"UnableToLoadDownloadClients": "Lataustyökalujen lataus ei onistu",
"UnableToLoadGeneralSettings": "Yleisten asetusten lataus epäonnistui.",
"UnableToLoadGeneralSettings": "Virhe ladattaessa yleisiä asetuksia",
"UnableToLoadHistory": "Historian lataus epäonnistui",
"UnableToLoadImportListExclusions": "Tuontilistojen poikkeuksien lataus epäonnistui",
"UnableToLoadIndexerOptions": "Tietolähdeasetusten lataus ei onnistu.",
"UnableToLoadImportListExclusions": "Tuontilistapoikkeusten lataus epäonnistui",
"UnableToLoadIndexerOptions": "Tietolähdeasetusten lataus ei onnistu",
"UnableToLoadIndexers": "Tietolähteiden lataus epäonnistui",
"UnableToLoadLists": "Tuontilistojen lataus epäonnistui.",
"UnableToLoadMediaManagementSettings": "Medianhallinnan asetuksien lataus epäonnistui.",
"UnableToLoadMetadata": "Metatietojen lataus epäonnistui.",
"UnableToLoadNamingSettings": "Nimeämisen asetuksien lataus epäonnistui.",
"UnableToLoadNotifications": "Kytkösten lataus epäonnistui.",
"UnableToLoadMediaManagementSettings": "Virhe ladattaessa mediatiedostojen hallinta-asetuksia",
"UnableToLoadMetadata": "Virhe ladattaessa metatietoja",
"UnableToLoadNamingSettings": "Virhe ladattaessa nimeämisasetuksia",
"UnableToLoadNotifications": "Virhe ladattaessa kytköksiä",
"UnableToLoadQualities": "Laatujen lataus epäonnistui.",
"UnableToLoadQualityDefinitions": "Laatumäärityksien lataus epäonnistui.",
"UnableToLoadQualityProfiles": "Laatuprofiilien lataus epäonnistui.",
"UnableToLoadQualityDefinitions": "Virhe ladattaessa laatumäärityksiä",
"UnableToLoadQualityProfiles": "Virhe ladattaessa laatuprofiileja",
"UnableToLoadReleaseProfiles": "Viiveprofiileja ei voi ladata",
"UnableToLoadRemotePathMappings": "Etäsijaintien kohdistusten lataus epäonnistui",
"UnableToLoadRootFolders": "Juurikansioiden lataus epäonnistui.",
"UnableToLoadTags": "Tunnisteiden lataus ei onnistu",
"UnableToLoadTheCalendar": "Kalenterin lataus epäonnistui.",
"UnableToLoadUISettings": "Käyttöliittymän asetuksien lataus epäonnistui.",
"UnableToLoadUISettings": "Virhe ladattaesssa käyttöliittymän asetuksia",
"Ungroup": "Pura ryhmä",
"Unmonitored": "Valvomattomat",
"UnmonitoredHelpText": "Sisällytä ei-valvotut kirjat iCal-syötteeseen.",
@ -433,10 +433,10 @@
"YesCancel": "Kyllä, peru",
"ApiKeyHelpTextWarning": "Käyttöönotto vaatii {appName}in uudelleenkäynnistyksen.",
"DeleteRootFolderMessageText": "Haluatko varmasti poistaa juurikansion \"{name}\"?",
"LoadingBooksFailed": "Elokuvatiedostojen lataaminen epäonnistui",
"LoadingBooksFailed": "Kirjojen lataus 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.",
"SslCertPathHelpTextWarning": "Käyttöönotto vaatii {appName}in uudelleenkäynnistyksen.",
"UnableToLoadMetadataProfiles": "Metatietoprofiileja ei voida ladata.",
"UnableToLoadMetadataProfiles": "Metatietoprofiilien lataus epäonnistui",
"DownloadClientCheckDownloadingToRoot": "Lataustyökalu \"{0}\" tallentaa lataukset juurikansioon \"{1}\", mutta ne tulisi tallentaa muualle.",
"ReplaceIllegalCharactersHelpText": "Korvaa laittomat merkit vaihtoehtoisella merkinnällä. Jos ei valittu, ne poistetaan.",
"OutputPath": "Tallennussijainti",
@ -483,14 +483,14 @@
"WriteTagsSync": "Kaikki tiedostot, Goodreads-synkronoinnilla",
"WriteTagsAll": "Kaikki tiedostot, alkuperäisen tuonnin yhteydessä",
"NoTagsHaveBeenAddedYet": "Tunnisteita ei ole vielä lisätty. Lisää tunnisteita määrittääksesi kirjailijoille viiveprofiileja, rajoituksia tai ilmoituksia. Paina '{0}' lukeaksesi lisää tunnisteista.",
"EnabledHelpText": "Käytä julkaisuprofiilia valitsemalla tämä.",
"EnabledHelpText": "Käytä julkaisuprofiilia merkitsemällä tämä.",
"CreateEmptyAuthorFolders": "Luo kirjailijoille tyhjät kansiot",
"RescanAfterRefreshHelpText": "Tutki kirjailijakansio uudelleen kirjailijan päivityksen jälkeen.",
"ThisCannotBeCancelled": "Tämän peruminen on aloituksen jälkeen mahdollista vain poistamalla kaikki tietolähteet käytöstä.",
"UnselectAll": "Tyhjennä valinnat",
"DeleteFilesHelpText": "Poista kirjatiedostot ja kirjailijakansio",
"MonitoredHelpText": "Kirjailijan kirjoja etsitään ja ne ladataan, jos ne ovat saatavilla.",
"ShouldMonitorHelpText": "Tältä tuontilistalta lisätyt kirjailijat lisätään ja niitä valvotaan.",
"ShouldMonitorHelpText": "Valvo tältä tuontilistalta lisättyjä uusia kirjailijoita ja kirjoja.",
"AuthorIndex": "Kirjailijahakemisto",
"BookEditor": "Kirjaeditori",
"BookIndex": "Kirjahakemisto",
@ -506,7 +506,7 @@
"AllowAuthorChangeClickToChangeAuthor": "Paina vaihtaaksesi kirjailijaa",
"AllowedLanguages": "Sallitut kielet",
"AnyEditionOkHelpText": "Readarr vaihtaa automaattisesti versioon, joka vastaa ladattuja tiedostoja parhaiten",
"AuthorEditor": "Kirjailijan muokkaus",
"AuthorEditor": "Kirjailijaeditori",
"AudioFileMetadata": "Kirjoita metatiedot äänitiedostoihin",
"AuthorFolderFormat": "Kirjailijakansion kaava",
"AuthorNameHelpText": "Poissuljettavan kirjailijan/kirjan nimi (voi olla mitä tahansa merkityksellistä)",
@ -600,10 +600,10 @@
"DefaultMonitorOptionHelpText": "Kansiosta löydetyille kirjailijoille oletusarvoisesti asetettava kirjojen valvontataso.",
"RemotePathMappingCheckFileRemoved": "Tiedosto \"{0}\" poistettiin kesken käsittelyn.",
"Other": "Muut",
"RootFolderCheckSingleMessage": "Puuttuva juurikansio: {0}",
"RootFolderCheckSingleMessage": "Juurikansio puuttuu: {0}.",
"Save": "Tallenna",
"UpdateCheckStartupNotWritableMessage": "Päivitystä ei voida asentaa, koska käyttäjällä \"{1}\" ei ole kirjoitusoikeutta käynnistyskansioon \"{0}\".",
"UpdateCheckStartupTranslocationMessage": "Päivitystä ei voi asentaa, koska käynnistyskansio '{0}' sijaitsee 'App Translocation' -kansiossa.",
"UpdateCheckStartupTranslocationMessage": "Päivitystä ei voida asentaa, koska käynnistyskansio \"{0}\" sijaitsee \"App Translocation\" -kansiossa.",
"UpdateCheckUINotWritableMessage": "Päivityksen asennus ei onnistu, koska käyttäjällä \"{1}\" ei ole kirjoitusoikeutta käyttöliittymäkansioon \"{0}\".",
"Yesterday": "Eilen",
"UpdateAvailable": "Uusi päivitys on saatavilla",
@ -615,7 +615,7 @@
"IndexerStatusCheckAllClientMessage": "Tietolähteet eivät ole käytettävissä virheiden vuoksi",
"MediaManagement": "Median hallinta",
"Metadata": "Metatiedot",
"OnBookFileDeleteHelpText": "Kun elokuvatiedosto poistetaan",
"OnBookFileDeleteHelpText": "Kun kirjatiedosto poistetaan",
"ProxyCheckFailedToTestMessage": "Välityspalvelintesti epäonnistui: {0}",
"Queued": "Lisätty jonoon",
"SearchFiltered": "Etsi suodatetuista",
@ -644,7 +644,7 @@
"DownloadClientCheckNoneAvailableMessage": "Lataustyökaluja ei ole käytettävissä",
"DownloadClientCheckUnableToCommunicateMessage": "Viestintä lataustyökalun \"{0}\" kanssa ei onnistu.",
"DownloadClientStatusCheckSingleClientMessage": "Lataustyökaluja ei ole ongelmien vuoksi käytettävissä: {0}",
"FailedToLoadQueue": "Jonon lataus epäonnistui.",
"FailedToLoadQueue": "Jonon lataus epäonnistui",
"FileWasDeletedByUpgrade": "Tiedosto poistettiin päivityksen tuontia varten.",
"HealthNoIssues": "Kokoonpanossasi ei ole ongelmia",
"IndexerRssHealthCheckNoAvailableIndexers": "Kaikki RSS-tietolähteet ovat tilapaisesti tavoittamattomissa viimeaikaisten tietolähdevirheiden vuoksi.",
@ -652,10 +652,10 @@
"IndexerStatusCheckSingleClientMessage": "Tietolähteet eivät ole käytettävissä virheiden vuoksi: {0}",
"MissingFromDisk": "Koska tiedostoa ei löytynyt levyltä, sen kytkös kirjastossa olevaan kirjaan poistettiin.",
"Monitor": "Valvonta",
"MountCheckMessage": "Elokuvareitin sisältävä kiinnike on asennettu vain luku -tilaan: ",
"OnBookFileDelete": "Kun elokuvatiedosto poistetaan",
"OnBookFileDeleteForUpgrade": "Kun elokuvatiedosto poistetaan päivitystä varten",
"OnBookFileDeleteForUpgradeHelpText": "Kun elokuvatiedosto poistetaan päivitystä varten",
"MountCheckMessage": "Kirjailijan sijainnin sisältävä media on kytketty vain luku -tilassa: ",
"OnBookFileDelete": "Kun kirjatiedosto poistetaan",
"OnBookFileDeleteForUpgrade": "Kun kirjatiedosto poistetaan päivitystä varten",
"OnBookFileDeleteForUpgradeHelpText": "Kun kirjatiedosto poistetaan päivitystä varten",
"OnGrab": "Kun julkaisu kaapataan",
"OnHealthIssue": "Vakausongelmat",
"OnRename": "Uudelleennimeäminen",
@ -674,7 +674,7 @@
"SizeLimit": "Kokorajoitus",
"SystemTimeCheckMessage": "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.",
"UISettingsSummary": "Kalenterin, päiväyksen ja kellonajan sekä kielen ja heikentyneelle värinäölle sopivan tilan asetukset.",
"UserAgentProvidedByTheAppThatCalledTheAPI": "User-Agent-tiedon ilmoitti sovellus, joka kommunikoi API:n kanssa",
"UserAgentProvidedByTheAppThatCalledTheAPI": "User-Agent-tiedon ilmoitti rajapinnan kanssa viestinyt sovellus.",
"WatchLibraryForChangesHelpText": "Suorita automaattinen uudelleentutkinta, kun juurikansiossa havaitaan tiedostomuutoksia.",
"RestartRequiredHelpTextWarning": "Käyttöönotto vaatii {appName}in uudelleenkäynnistyksen.",
"AddList": "Lisää lista",
@ -740,40 +740,38 @@
"ForeignIdHelpText": "Ohitettavan kirjailijan/kirjan MusicBrainz-tunniste.",
"IsExpandedShowFileInfo": "Näytä tiedostojen tiedot",
"ApplicationUrlHelpText": "Tämän sovelluksen ulkoinen URL-osoite, johon sisältyy http(s)://, portti ja URL-perusta.",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0}/{1} (yhteensä: {2})",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} kappaletta ladattu",
"CollapseMultipleBooksHelpText": "Supista useat samana päivänä julkaistavat albumit.",
"DataFirstBook": "Seuraa ensimmäisiä albumeita. Muita albumeita ei huomioida.",
"DataListMonitorSpecificBook": "Valvo esittäjiä, mutta valvo vain albumeita, jotka on erityisesti lisätty listalle.",
"DataNone": "Albumeita ei valvota",
"EndedAllBooksDownloaded": "Päättynyt (kaikki kappaleet on ladattu)",
"GoToAuthorListing": "Avaa esittäjälistaus",
"ListsSettingsSummary": "Tuotilistat",
"CollapseMultipleBooksHelpText": "Tiivistä useat samana päivänä julkaistavat kirjat.",
"DataFirstBook": "Seuraa ensimmäisiä kirjoja. Muita kirjoja ei huomioida.",
"DataListMonitorSpecificBook": "Valvo kirjailijoita, mutta vain erikseen listalle lisättyjä kirjoja.",
"DataNone": "Kirjoja ei valvota",
"EndedAllBooksDownloaded": "Päättynyt (kaikki kirjat on ladattu)",
"GoToAuthorListing": "Avaa kirjailijalistaus",
"ListsSettingsSummary": "Tuontilistat",
"MusicBrainzAuthorID": "MusicBrainzin kirjailija-ID",
"SearchForNewItems": "Etsi uusia kohteita",
"SelectedCountAuthorsSelectedInterp": "{0} kirjailija(a) valittu",
"TheBooksFilesWillBeDeleted": "Albumin tiedostot poistetaan.",
"TotalBookCountBooksTotalBookFileCountBooksWithFilesInterp": "Yhteensä {0} kappaletta. {1} kappaleelle on tiedostoja.",
"ContinuingAllBooksDownloaded": "Jatkuva (kaikki kappaleet on ladattu)",
"ContinuingNoAdditionalBooksAreExpected": "Abumeita ei odoteta lisää",
"MusicBrainzBookID": "MusicBrainz-kappaletunniste",
"SearchForAllCutoffUnmetBooks": "Etsi kaikkia albumeita, joiden katkaisutasoa ei ole savutettu",
"SearchForMonitoredBooks": "Etsi valvottuja albumeita",
"DataExistingBooks": "Valvo albumeita, joille on tiedostoja tai joita ei ole vielä julkaistu.",
"DataMissingBooks": "Seuraa albumeita, joille ei ole tiedostoja tai joita ei ole vielä julkaistu.",
"TheBooksFilesWillBeDeleted": "Kirjan tiedostot poistetaan.",
"TotalBookCountBooksTotalBookFileCountBooksWithFilesInterp": "Yhteensä {0} kirjaa. {1} kirjalle on tiedostoja.",
"ContinuingAllBooksDownloaded": "Jatkuva (kaikki kirjat on ladattu)",
"ContinuingNoAdditionalBooksAreExpected": "Kirjoja ei odoteta lisää",
"MusicBrainzBookID": "MusicBrainz-kirjatunniste",
"SearchForAllCutoffUnmetBooks": "Etsi kaikkia kirjoja, joiden katkaisutasoa ei ole savutettu",
"SearchForMonitoredBooks": "Etsi valvottuja kirjoja",
"DataExistingBooks": "Valvo kirjoja, joille on tiedostoja tai joita ei ole vielä julkaistu.",
"DataMissingBooks": "Valvo kirjoja, joille ei ole tiedostoja tai joita ei ole vielä julkaistu.",
"EntityName": "Entiteetin nimi",
"EnableAutomaticAddHelpText": "Lisää esittäjät/albumit {appName}iin kun synkronointi suoritetaan käyttöliittymästä tai {appName}in toimesta.",
"IndexerIdHelpText": "Määritä mitä tietolähdettä profiili koskee.",
"IndexerIdHelpTextWarning": "Yksittäisen tietolähteen käyttö sanapainotuksen kanssa saattaa aiheuttaa julkaisujen kaksoiskappaleiden kaappauksia.",
"ChooseImportMethod": "Valitse tuontitila",
"ChooseImportMethod": "Valitse tuontitapa",
"ClickToChangeReleaseGroup": "Vaihda julkaisuryhmää painamalla tästä",
"HardlinkCopyFiles": "Hardlink/tiedostojen kopiointi",
"MoveFiles": "Siirrä tiedostot",
"DataListMonitorAll": "Valvo esittäjiä ja jokaisen esittäjän kaikkia tuontilistan sisältämiä albumeita",
"DataListMonitorAll": "Valvo jokaista tuontilistalla olevaa kirjailijaa ja heidän kaikkia kirjojaan.",
"OnApplicationUpdate": "Kun sovellus päivitetään",
"OnApplicationUpdateHelpText": "Kun sovellus päivitetään",
"Theme": "Teema",
"ThemeHelpText": "Vaihda sovelluksen käyttöliittymän ulkoasua. \"Automaattinen\" vaihtaa vaalean ja tumman tilan välillä 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 Theme.Park.",
"EnableRssHelpText": "Käytetään {appName}in etsiessä julkaisuja ajoitetusti RSS-synkronoinnilla.",
"BypassIfHighestQuality": "Ohita, jos korkein laatu",
"CustomFormatScore": "Mukautetun muodon pisteytys",
@ -784,7 +782,7 @@
"CustomFormat": "Mukautettu muoto",
"CustomFormatSettings": "Mukautettujen muotojen asetukset",
"CustomFormats": "Mukautetut muodot",
"DataFutureBooks": "Seuraa albumeita, joita ei ole vielä julkaistu.",
"DataFutureBooks": "Valvo kirjoja, joita ei ole vielä julkaistu.",
"DeleteCustomFormat": "Poista mukautettu muoto",
"DeleteCustomFormatMessageText": "Haluatko varmasti poistaa mukautetun muodon \"{name}\"?",
"DeleteFormatMessageText": "Haluatko varmasti poistaa muototunnisteen \"{0}\"?",
@ -793,13 +791,13 @@
"IncludeCustomFormatWhenRenamingHelpText": "Mahdollista tämän muodon käyttö \"{Custom Formats}\" -nimeämiskaavan kanssa.",
"MinFormatScoreHelpText": "Mukautetun muodon vähimmäispisteytys, jolla lataus sallitaan.",
"NegateHelpText": "Jos käytössä, ei mukautettua muotoa sovelleta tämän \"{0}\" -ehdon täsmätessä.",
"UnableToLoadCustomFormats": "Muokattuja muotoja ei voitu ladata.",
"UnableToLoadCustomFormats": "Virhe ladattaessa mukautettuja muotoja",
"UpgradesAllowed": "Päivitykset sallitaan",
"CutoffFormatScoreHelpText": "Kun kirja saavuttaa laaturajoituksen tai tämän mukautetun muodon pisteytyksen, ei siihen enää kaapata uusia julkaisuja tai tuoda päivityksiä.",
"ResetDefinitionTitlesHelpText": "Palauta määritysten nimet ja arvot.",
"ResetDefinitions": "Palauta määritykset",
"ResetTitles": "Palauta nimet",
"ImportListMissingRoot": "Tuontilistalta tai -listoilta puuttuu juurikansio: {0}",
"ImportListMissingRoot": "Tuontilistalta tai -listoilta puuttuu juurikansio: {0}.",
"ImportListMultipleMissingRoots": "Useita tuontilistojen juurikansioita puuttuu: {0}",
"IndexerDownloadClientHelpText": "Määritä tämän tietolähteen kanssa käytettävä lataustyökalu.",
"IndexerTagsHelpText": "Tietolähdettä käytetään vain vähintään yhdellä täsmäävällä tunnisteella merkityille kirjailijoille. Käytä kaikille jättämällä tyhjäksi.",
@ -820,7 +818,7 @@
"RemoveSelectedItemQueueMessageText": "Haluatko varmasti poistaa jonosta 1 kohteen?",
"RemoveSelectedItems": "Poista valitut kohteet",
"RemoveSelectedItemsQueueMessageText": "Haluatko varmasti poistaa jonosta {0} kohdetta?",
"Required": "Vaaditaan",
"Required": "Pakollinen",
"ResetQualityDefinitions": "Palauta laatumääritykset",
"ResetQualityDefinitionsMessageText": "Haluatko varmasti palauttaa laatumääritykset?",
"NoEventsFound": "Tapahtumia ei löytynyt",
@ -829,7 +827,7 @@
"ApplyTagsHelpTextHowToApplyAuthors": "Tunnisteisiin kohdistettavat toimenpiteet:",
"DeleteSelectedImportLists": "Poista tuontilista(t)",
"No": "Ei",
"RedownloadFailed": "Lataus epäonnistui",
"RedownloadFailed": "Uudelleenlataus epäonnistui",
"Yes": "Kyllä",
"DeleteSelectedImportListsMessageText": "Haluatko varmasti poistaa valitut {count} tuontilistaa?",
"ApplyTagsHelpTextHowToApplyDownloadClients": "Tunnisteiden käyttö valituissa lataustyökaluissa",
@ -865,16 +863,16 @@
"FreeSpace": "Vapaa tila",
"ConnectionLost": "Ei yhteyttä",
"ConnectionLostReconnect": "{appName} pyrkii ajoittain muodostamaan yhteyden automaattisesti tai voit painaa alta \"Lataa uudelleen\".",
"RecentChanges": "Viimeisimmät muutokset",
"WhatsNew": "Mi uutta?",
"RecentChanges": "Uusimmat muutokset",
"WhatsNew": "Mikä on uutta?",
"Large": "Suuri",
"LastDuration": "Edellinen kesto",
"LastExecution": "Edellinen suoritus",
"LastWriteTime": "Viimeksi tallennettu",
"LastWriteTime": "Edellinen tallennus",
"Location": "Sijainti",
"NoResultsFound": "Ei tuloksia",
"NoResultsFound": "Tuloksia ei löytynyt.",
"SomeResultsAreHiddenByTheAppliedFilter": "Aktiivinen suodatin piilottaa joitakin tuloksia.",
"Activity": "Tapahtuma",
"Activity": "Tapahtumat",
"AddNew": "Lisää uusi",
"Backup": "Varmuuskopiointi",
"NextExecution": "Seuraava suoritus",
@ -884,10 +882,10 @@
"Iso639-3": "ISO 639-3 -kielikoodit tai \"null\" (pilkuin eroteltuna)",
"ExtraFileExtensionsHelpText": "Pilkuin eroteltu listaus tuotavista oheistiedostoista (.nfo-tiedostot tuodaan \".nfo-orig\"-nimellä).",
"ExtraFileExtensionsHelpTextsExamples": "Esimerkiksi '\"sub, .nfo\" tai \"sub,nfo\".",
"NoCutoffUnmetItems": "Katkaisutasoa saavuttamattomia kohteita ei ole",
"NoCutoffUnmetItems": "Katkaisutasoa saavuttamattomia kohteita ei ole.",
"DeleteSelected": "Poista valitut",
"CountAuthorsSelected": "{selectedCount} tietolähde(ttä) on valittu",
"NoMissingItems": "Ei puuttuvia kohteita",
"CountAuthorsSelected": "{selectedCount} kirjailija(a) on valittu",
"NoMissingItems": "Puuttuvia kohteita ei ole.",
"InvalidUILanguage": "Käytöliittymän kielivalinta on virheellinen. Korjaa se ja tallenna asetukset.",
"MetadataSettingsSummary": "Luo metatietotiedostot kun kirjoja tuodaan tai kirjailijoiden tietoja päivitetään.",
"ThereWasAnErrorLoadingThisItem": "Virhe ladattaessa kohdetta",
@ -926,9 +924,9 @@
"ASIN": "ASIN",
"AutoAdd": "Automaattilisäys",
"ManageImportLists": "Tuontilistojen hallinta",
"AutoRedownloadFailedFromInteractiveSearchHelpText": "Etsi automaattisesti ja pyri lataamaan eri julkaisu vaikka epäonnistunut julkaisu oli kaapattu manuaalihausta.",
"AutoRedownloadFailedFromInteractiveSearchHelpText": "Etsi ja pyri lataamaan eri julkaisu automaattisesti vaikka epäonnistunut julkaisu oli kaapattu manuaalihaun tuloksista.",
"BypassIfAboveCustomFormatScoreHelpText": "Käytä ohitusta, kun julkaisun pisteytys on määritetyn mukautetun muodon vähimmäispisteytystä korkeampi.",
"ApiKeyValidationHealthCheckMessage": "Muuta API-avaimesi ainakin {0} merkin pituiseksi. Voit tehdä tämän asetuksista tai muokkaamalla asetustiedostoa.",
"ApiKeyValidationHealthCheckMessage": "Muuta rajapinnan (API) avain ainakin {0} merkin pituiseksi. Voit tehdä tämän asetuksista tai muokkaamalla asetustiedostoa.",
"ManageLists": "Listojen hallunta",
"DownloadClientQbittorrentSettingsContentLayoutHelpText": "Määrittää käytetäänkö qBittorrentista määritettyä rakennetta, torrentin alkuperäistä rakennetta vai luodaanko uusi alikansio (qBittorrent 4.3.2+).",
"Implementation": "Toteutus",
@ -971,5 +969,12 @@
"DoNotBlocklistHint": "Poista lisäämättä estolistalle.",
"IgnoreDownloadHint": "Estää {appName}ia käsittelemästä tätä latausta jatkossa.",
"IgnoreDownloadsHint": "Estää {appName}ia käsittelemästä näitä latauksia jatkossa.",
"ChangeCategoryHint": "Vaihtaa latauksen kategoriaksi lataustyökalun \"Tuonnin jälkeinen kategoria\" -asetuksen kategorian."
"ChangeCategoryHint": "Vaihtaa latauksen kategoriaksi lataustyökalun \"Tuonnin jälkeinen kategoria\" -asetuksen kategorian.",
"DataLatestBook": "Valvo uusimpia ja tulevia kirjoja",
"RootFolderPathHelpText": "Juurikansio, johon listan kohteet lisätään.",
"AutoRedownloadFailed": "Uudelleenlataus epäonnistui",
"LatestBook": "Uusin kirja",
"TheFollowingFilesWillBeDeleted": "Seuraavat tiedostot poistetaan:",
"CollapseMultipleBooks": "Tiivistä useat kirjat",
"CustomFormatsSpecificationRegularExpression": "Säännöllinen lauseke"
}

@ -617,7 +617,6 @@
"AuthorFolderFormat": "Format du dossier de l'auteur",
"Authors": "Auteurs",
"Book": "Livre",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} livres téléchargés",
"BookFilesCountMessage": "Aucun fichiers de livre",
"BookMonitoring": "Surveillance des livres",
"BookNaming": "Nommage des livres",
@ -651,7 +650,6 @@
"DefaultMonitorOptionHelpText": "Quels livres doivent être surveillés lors de l'ajout initial pour les auteurs détectés dans ce dossier",
"DefaultQualityProfileIdHelpText": "Profil de qualité par défaut pour les auteurs détectés dans ce dossier",
"AddMissing": "Ajouter manquant",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (Total : {2})",
"InstanceName": "Nom de l'instance",
"InstanceNameHelpText": "Nom de l'instance dans l'onglet et pour le nom de l'application Syslog",
"UseCalibreContentServer": "Serveur de contenu Calibre",

@ -15,7 +15,7 @@
"BackupRetentionHelpText": "A megőrzési időszaknál régebbi automatikus biztonsági másolatok automatikusan törlődnek",
"Backups": "Biztonsági mentések",
"BindAddress": "Kötési cím",
"BindAddressHelpText": "Érvényes IPv4-cím, vagy „*” minden interfészhez",
"BindAddressHelpText": "Érvényes IP-cím, localhost vagy '*' minden interfészhez",
"BindAddressHelpTextWarning": "Újraindítás szükséges a hatálybalépéshez",
"BookIsDownloading": "A film letöltés alatt",
"BookIsDownloadingInterp": "A film letöltés alatt - {0}% {1}",
@ -44,13 +44,13 @@
"CompletedDownloadHandling": "Befejezett letöltéskezelés",
"ConnectSettings": "Csatlakozási beállítások",
"Connections": "Kapcsolatok",
"CopyUsingHardlinksHelpText": "Használj Hardlininket, amikor megpróbálsz fájlokat másolni a még Seedelt torrentekből",
"CopyUsingHardlinksHelpText": "A merev hivatkozások lehetővé teszik a Readarr számára, hogy import torrenteket importáljon a sorozat mappájába anélkül, hogy extra lemezterületet foglalna el, vagy a fájl teljes tartalmát másolná. A merev hivatkozások csak akkor működnek, ha a forrás és a cél ugyanazon a köteten található",
"CopyUsingHardlinksHelpTextWarning": "Esetenként az írásvédettség megakadályozza a Seedelt fájlok átnevezését. Ideiglenesen állítsd le a Seedelést, hogy a Radarr át tudja nevezni a fájlokat.",
"CreateEmptyAuthorFoldersHelpText": "Hozzon létre mappákat a hiányzó filmeknek, filmkeresés közben",
"CreateGroup": "Csoport létrehozása",
"CutoffHelpText": "Amint ezt a minőséget eléri, a Radarr többé nem fog filmeket letölteni",
"CutoffUnmet": "Küszöbszint nincs elérve",
"DatabaseMigration": "DB Migráció",
"DatabaseMigration": "Adatbázis-migráció",
"Dates": "Dátumok",
"DelayProfile": "Késleltetési Profil",
"DelayProfiles": "Késleltetési Profilok",
@ -64,24 +64,24 @@
"DeleteDownloadClientMessageText": "Biztosan törli a(z) \"{name}\" letöltési klienst?",
"DeleteEmptyFolders": "Üres Mappa Törlése",
"DeleteEmptyFoldersHelpText": "Törölje az üres könyvmappákat a lemezfrissítés és a könyvfájlokfájlok törlése során",
"DeleteImportListExclusion": "Az importlista kizárásásainak törlése",
"DeleteImportListExclusion": "Importálási lista kizárásának törlése",
"DeleteImportListExclusionMessageText": "Biztosan törli ezt az importlista-kizárást?",
"DeleteImportListMessageText": "Biztosan törli a(z) „{name}” listát?",
"DeleteIndexer": "Indexer Törlése",
"DeleteIndexer": "Indexelő törlése",
"DeleteIndexerMessageText": "Biztosan törli a(z) \"{name}\" indexelőt?",
"DeleteMetadataProfileMessageText": "Biztosan törli a {0} minőségi profilt?",
"DeleteNotification": "Értesítés Törlése",
"DeleteMetadataProfileMessageText": "Biztosan törli a(z) „{name}” metaadat-profilt?",
"DeleteNotification": "Értesítés törlése",
"DeleteNotificationMessageText": "Biztosan törli a(z) „{name}” értesítést?",
"DeleteQualityProfile": "Minőségi Profil Törlése",
"DeleteQualityProfile": "Törölje a minőségi profilt",
"DeleteQualityProfileMessageText": "Biztosan törli a(z) „{name}” minőségi profilt?",
"DeleteReleaseProfile": "Késleltetési Profil Törlése",
"DeleteReleaseProfile": "Release profil törlése",
"DeleteReleaseProfileMessageText": "Biztos hogy törölni szeretnéd ezt a késleltetési profilt?",
"DeleteSelectedBookFiles": "Töröld a Kiválaszott Film Fájlokat",
"DeleteSelectedBookFilesMessageText": "Biztosan törlöd a kijelölt filmfájlokat?",
"DeleteTag": "Címke Törlése",
"DeleteTag": "Címke törlése",
"DeleteTagMessageText": "Biztosan törlöd a(z) „{0}” címkét?",
"DestinationPath": "Célmappa Útvonala",
"DetailedProgressBar": "Részletes Folyamat Sáv",
"DestinationPath": "Cél útvonal",
"DetailedProgressBar": "Részletes folyamatjelző sáv",
"DetailedProgressBarHelpText": "Szöveg megjelenítése a folyamatjelző sávon",
"DiskSpace": "Lemez terület",
"Docker": "Docker",
@ -95,18 +95,18 @@
"Edit": "Szerkeszt",
"Edition": "Kiadás",
"Enable": "Aktiválás",
"EnableAutomaticAdd": "Engedélyezd az automatikus hozzáadást",
"EnableAutomaticAdd": "Automatikus hozzáadás engedélyezése",
"EnableAutomaticSearch": "Automatikus keresés engedélyezése",
"EnableColorImpairedMode": "Engedélyezze a színtévesztő módot",
"EnableColorImpairedModeHelpText": "Megváltoztatott színek, hogy a színvak felhasználók jobban meg tudják különböztetni a színkódolt információkat",
"EnableCompletedDownloadHandlingHelpText": "A befejezett letöltések automatikus importálása a letöltési kliensből",
"EnableHelpText": "Engedélyezze a metaadatfájlok létrehozását ehhez a metaadat típushoz",
"EnableHelpText": "Metaadatfájl létrehozásának engedélyezése ehhez a metaadattípushoz",
"EnableInteractiveSearch": "Interaktív keresés engedélyezése",
"EnableRSS": "RSS Engedélyezése",
"EnableSSL": "SSL Engedélyezése",
"EnableSslHelpText": " A hatálybalépéshez újra kell indítani rendszergazdaként",
"Ended": "Vége",
"ErrorLoadingContents": "Hiba történt a tartalom betöltésekor",
"ErrorLoadingContents": "Hiba a tartalom betöltésekor",
"ErrorLoadingPreviews": "Hiba történt az előnézetek betöltése közben",
"Exception": "Kivétel",
"FailedDownloadHandling": "Nem sikerült a letöltés kezelése",
@ -115,7 +115,7 @@
"FileNames": "Fájlnevek",
"Filename": "Fájl név",
"Files": "Fájlok",
"FirstDayOfWeek": "A Hét Első Napja",
"FirstDayOfWeek": "A hét első napja",
"Fixed": "Rögzített",
"Folder": "Mappa",
"Folders": "Mappák",
@ -145,7 +145,7 @@
"IgnoredHelpText": "A kiadás elutasításra kerül, ha egy vagy több kifejezést tartalmaz (A kis- és nagybetűket nem vesszük figyelembe)",
"IgnoredPlaceHolder": "Új korlátozás hozzáadása",
"IllRestartLater": "Később Újraindítom",
"ImportExtraFiles": "Extra Fájlok Importálása",
"ImportExtraFiles": "Extra fájlok importálása",
"ImportExtraFilesHelpText": "A megfelelő extra fájlok importálása (feliratok, nfo stb.) a filmfájl importálása után",
"ImportFailedInterp": "Importálás sikertelen: {0}",
"ImportedTo": "Importálva Ide",
@ -275,7 +275,7 @@
"RenameBooksHelpText": "A Radarr a meglévő fájlnevet fogja használni, ha az átnevezés le van tiltva",
"Reorder": "Átrendezés",
"ReplaceIllegalCharacters": "Az illegális karakterek cseréje",
"RequiredHelpText": "A kiadásnak tartalmaznia kell legalább egy ilyen kifejezést (a kis- és nagybetűk nem számítanak)",
"RequiredHelpText": "Ennek a {0} feltételnek meg kell egyeznie az egyéni formátum alkalmazásához. Ellenkező esetben egyetlen {0} egyezés elegendő.",
"RequiredPlaceHolder": "Új korlátozás hozzáadása",
"RescanAfterRefreshHelpTextWarning": "A Radarr nem érzékeli automatikusan a fájlok változását, ha nincs beállítva „Always”-re",
"RescanAuthorFolderAfterRefresh": "Film mappa újraszkennelése a frissítés után",
@ -451,8 +451,6 @@
"AutomaticallySwitchEdition": "Kiadás automatikus váltása",
"BackupIntervalHelpText": "Időköz a Readarr adatbázis és a beállítások biztonsági mentéséhez",
"Book": "Könyv",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (összesen: {2})",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} könyv letöltve",
"BookFilesCountMessage": "Nincsenek könyvfájlok",
"BookNaming": "Könyvek elnevezése",
"BookStudio": "Könyvstúdió",
@ -520,7 +518,7 @@
"IfYouDontAddAnImportListExclusionAndTheAuthorHasAMetadataProfileOtherThanNoneThenThisBookMayBeReaddedDuringTheNextAuthorRefresh": "Ha nem ad hozzá importlista-kizárást, és a szerző metaadatprofillal rendelkezik, és nem a „Nincs”, akkor ezt a könyvet a következő szerzői frissítés során hozzá lehet adni.",
"IgnoreDeletedBooks": "A törölt könyvek figyelmen kívül hagyása",
"ImportFailures": "Importálási hibák",
"ImportListExclusions": "Lista kizárások importálása",
"ImportListExclusions": "Listakizárások importálása",
"ImportListSettings": "Általános importálási lista beállításai",
"ImportLists": "Listák importálása",
"IndexerIdHelpText": "Adja meg, hogy a profil milyen indexelőre vonatkozik",
@ -568,7 +566,7 @@
"NETCore": ".NET Mag",
"ApiKeyHelpTextWarning": "Újraindítás szükséges a hatálybalépéshez",
"AnalyticsEnabledHelpTextWarning": "Újraindítás szükséges a hatálybalépéshez",
"DeleteRootFolderMessageText": "Biztosan törlöd a(z) „{0}” indexert?",
"DeleteRootFolderMessageText": "Biztosan törli a(z) \"{name}\" gyökérmappát?",
"LoadingBooksFailed": "A film fájljainak betöltése sikertelen",
"ProxyPasswordHelpText": "Csak akkor kell megadnod felhasználónevet és jelszót, ha szükséges. Egyébként hagyd üresen.",
"SslCertPathHelpTextWarning": "Újraindítás szükséges a hatálybalépéshez",
@ -585,7 +583,7 @@
"UpdatingIsDisabledInsideADockerContainerUpdateTheContainerImageInstead": "A frissítés le van tiltva a docker-tárolóban. A konténer képfájlját frissítsd.",
"UpdateCoversHelpText": "Állítsa be a Calibre könyvborítóit, hogy azok megegyezzenek a Readarrban találhatóakkal",
"UpdateCovers": "Borítók frissítése",
"UnmappedFiles": "Feltérképezetlen fájlok",
"UnmappedFiles": "Leképezés nélküli fájlok",
"UnableToLoadMetadataProviderSettings": "Nem lehet betölteni a metaadat-szolgáltató beállításait",
"TrackNumber": "Dal száma",
"TrackTitle": "Dal címe",
@ -738,7 +736,7 @@
"OnReleaseImport": "A kiadás importálásakor",
"OnRename": "Átnevezés alatt",
"OnUpgrade": "Minőségjavítás alatt",
"GeneralSettingsSummary": "Port, SSL, felhasználónév / jelszó, proxy, elemzések és frissítések",
"GeneralSettingsSummary": "Port, SSL, felhasználónév/jelszó, proxy, elemzések és frissítések",
"IndexersSettingsSummary": "Letöltőkliensek, letöltések kezelése, és távoli elérési útvonalak",
"MediaManagementSettingsSummary": "Elnevezések, fájlkezelési beállítások és gyökérmappák",
"MissingFromDisk": "A Readarr nem találta a fájlt a lemezen, ezért a fájlt leválasztották az adatbázisban lévő könyvről",
@ -868,17 +866,17 @@
"EnableRssHelpText": "Akkor használatos, amikor a Radarr rendszeresen keres kiadásokat az RSS Sync segítségével",
"MinimumCustomFormatScore": "Minimális egyéni formátum pontszám",
"BypassIfHighestQuality": "Kihagyás ha a legjobb minőség elérhető",
"CustomFormatScore": "Egyéni formátum pontszám",
"CustomFormatScore": "Egyéni formátum pontszáma",
"CloneCustomFormat": "Egyéni formátum klónozása",
"Conditions": "Állapot",
"CopyToClipboard": "Másold a Vágólapra",
"CustomFormat": "Egyéni formátum",
"CustomFormatSettings": "Egyéni Formátum Beállításai",
"CustomFormats": "Egyéni Formátumok",
"CustomFormats": "Egyéni formátumok",
"DataFutureBooks": "Figyelje meg azokat az albumokat, amelyek még nem jelentek meg",
"DeleteCustomFormat": "Egyéni formátum törlése",
"DeleteCustomFormatMessageText": "Biztosan törölni akarod a/az '{0}' egyéni formátumot?",
"DeleteFormatMessageText": "Biztosan törlöd a(z) {0} formátumú címkét?",
"DeleteCustomFormatMessageText": "Biztosan törli a(z) „{name}” egyéni formátumot?",
"DeleteFormatMessageText": "Biztosan törölni szeretné a(z) \"{0}\" formátumcímkét?",
"ExportCustomFormat": "Egyéni formátum exportálása",
"Formats": "Formátum",
"IncludeCustomFormatWhenRenamingHelpText": "Tartalmazza a(z) {Custom Formats} átnevezési formátumot",
@ -933,8 +931,8 @@
"ApplyTagsHelpTextHowToApplyImportLists": "Címkék alkalmazása a kiválasztott importlistákra",
"ApplyTagsHelpTextHowToApplyIndexers": "Címkék alkalmazása a kiválasztott indexelőkre",
"ApplyTagsHelpTextRemove": "Eltávolítás: Távolítsa el a beírt címkéket",
"CountIndexersSelected": "{0} Indexelő(k) kiválasztva",
"DeleteConditionMessageText": "Biztosan törölni akarod a '{0}' feltételt?",
"CountIndexersSelected": "{selectedCount} indexelő(k) kiválasztva",
"DeleteConditionMessageText": "Biztosan törli a(z) „{name}” feltételt?",
"DeleteSelectedDownloadClients": "Letöltési kliens(ek) törlése",
"DeleteSelectedImportLists": "Importálási lista(k) törlése",
"DeleteSelectedIndexers": "Indexelő(k) törlése",
@ -953,7 +951,7 @@
"Small": "Kicsi",
"SkipRedownloadHelpText": "Megakadályozza, hogy a Lidarr megpróbálja letölteni az eltávolított elemek alternatív kiadásait",
"Events": "Események",
"FreeSpace": "Szabad Tárhely",
"FreeSpace": "Szabad hely",
"NoResultsFound": "Nincs találat",
"SomeResultsAreHiddenByTheAppliedFilter": "Néhány eredményt elrejtett az alkalmazott szűrő",
"System": "Rendszer",
@ -1003,5 +1001,53 @@
"AutoRedownloadFailedFromInteractiveSearchHelpText": "Automatikusan keressen és kíséreljen meg egy másik kiadást letölteni, ha az interaktív keresésből sikertelen kiadást ragadtak meg",
"AppUpdatedVersion": "{appName} frissítve lett `{version}` verzióra, ahhoz hogy a legutóbbi változtatások életbelépjenek, töltsd újra a {appName}-t",
"CustomFormatsSpecificationRegularExpression": "Reguláris kifejezés",
"SourceTitle": "Eredeti cím"
"SourceTitle": "Eredeti cím",
"CustomFormatsSpecificationRegularExpressionHelpText": "Az egyéni formátumú reguláris kifejezés nem különbözteti meg a kis- és nagybetűket",
"DoNotBlocklist": "Ne tiltsa le",
"DoNotBlocklistHint": "Eltávolítás tiltólista nélkül",
"IndexerDownloadClientHealthCheckMessage": "Indexelők érvénytelen letöltési kliensekkel: {0}.",
"NoMissingItems": "Nincsenek hiányzó elemek",
"ResetQualityDefinitionsMessageText": "Biztosan vissza szeretné állítani a minőségi definíciókat?",
"DeleteSelected": "Kijelöltek eltávolítása",
"OnAuthorAddedHelpText": "A szerző hozzáadva",
"BypassIfAboveCustomFormatScore": "Kihagyás, ha az egyéni formátum pontszáma felett van",
"Bookshelf": "Könyvespolc",
"DeleteFormat": "Formátum Törlés",
"Loading": "Betöltés",
"CountAuthorsSelected": "{selectedCount} szerző kiválasztva",
"WouldYouLikeToRestoreBackup": "Szeretné visszaállítani a(z) „{name}” biztonsági másolatot?",
"CountDownloadClientsSelected": "{selectedCount} letöltési kliens kiválasztva",
"CountImportListsSelected": "{selectedCount} importálási lista kiválasztva",
"DownloadClientRemovesCompletedDownloadsHealthCheckMessage": "A(z) {0} letöltési kliens a befejezett letöltések eltávolítására van beállítva. Ez azt eredményezheti, hogy a letöltések eltávolításra kerülnek az ügyfélprogramból, mielőtt {1} importálhatná őket.",
"BypassIfAboveCustomFormatScoreHelpText": "Engedélyezze az áthidalást, ha a kiadás pontszáma magasabb, mint a konfigurált minimális egyéni formátum pontszám",
"BypassIfHighestQualityHelpText": "Áthidalási késleltetés, amikor a kiadás a minőségi profilban a legmagasabb engedélyezett minőséggel rendelkezik",
"ListWillRefreshEveryInterp": "A lista minden {0} napon frissül",
"ListRefreshInterval": "Lista frissítési időköz",
"ThereWasAnErrorLoadingThisPage": "Hiba történt az oldal betöltésekor",
"RemotePathMappingsInfo": "Nagyon ritkán van szükség távoli útvonal-leképezésre, ha az {app} és a letöltési kliens ugyanazon a rendszeren van, jobb, ha megfeleltetjük az útvonalakat. További információért lásd: [wiki]({wikiLink}).",
"RemoveSelectedItemBlocklistMessageText": "Biztosan eltávolítja a kijelölt elemeket a tiltólistáról?",
"ThereWasAnErrorLoadingThisItem": "Hiba történt az elem betöltésekor",
"ErrorLoadingContent": "Hiba történt a tartalom betöltésekor",
"BlocklistAndSearch": "Feketelista és Keresés",
"BlocklistAndSearchMultipleHint": "Indítsa el a helyettesítők keresését a tiltólistázás után",
"BlocklistMultipleOnlyHint": "Blokklista helyettesítők keresése nélkül",
"BlocklistOnly": "Csak blokklistára",
"BlocklistOnlyHint": "Blokklista csere keresése nélkül",
"ChangeCategory": "Kategória módosítása",
"ChangeCategoryHint": "A módosítások letöltése az „Importálás utáni kategóriára” a Download Clientből",
"ChangeCategoryMultipleHint": "Módosítja a letöltéseket az „Importálás utáni kategóriára” a Download Clientből",
"IgnoreDownload": "Letöltés figyelmen kívül hagyása",
"IgnoreDownloads": "Letöltések figyelmen kívül hagyása",
"IgnoreDownloadHint": "Leállítja a(z) {appName} alkalmazásnak a letöltés további feldolgozását",
"IgnoreDownloadsHint": "Leállítja a(z) {appName} alkalmazást, hogy feldolgozza ezeket a letöltéseket",
"MinimumCustomFormatScoreHelpText": "Minimális egyéni formátum pontszám a preferált protokoll késleltetésének megkerüléséhez",
"NoCutoffUnmetItems": "Nincsenek teljesítetlen elemek levágása",
"RemoveMultipleFromDownloadClientHint": "Eltávolítja a letöltéseket és fájlokat a letöltési kliensből",
"RemoveFromDownloadClientHint": "Távolítsa el a letöltést és a fájlokat) a letöltési kliensből",
"RemoveQueueItem": "Eltávolítás {sourceTitle}",
"RemoveQueueItemConfirmation": "Biztosan eltávolítja a következőt a sorból: \"{sourceTitle}\"?",
"RemoveQueueItemRemovalMethod": "Eltávolítási módszer",
"RemoveQueueItemRemovalMethodHelpTextWarning": "Az „Eltávolítás a letöltési kliensből” eltávolítja a letöltést és a fájl(oka)t a letöltési kliensből.",
"RemoveQueueItemsRemovalMethodHelpTextWarning": "Az „Eltávolítás a letöltési kliensből” eltávolítja a letöltéseket és a fájlokat a letöltési kliensből.",
"OnAuthorAdded": "A szerző hozzáadva"
}

@ -583,8 +583,6 @@
"BookMonitoring": "Monitoraggio del libro",
"BookNaming": "Nomenclatura del Libro",
"Books": "Libri",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (Totale: {2})",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} libri scaricati",
"BookFilesCountMessage": "Nessun file di libri",
"AudioFileMetadata": "Scrivi i Metadati sui File Audio",
"Duration": "Durata",

@ -438,7 +438,6 @@
"SslPortHelpTextWarning": "Requer reinício para aplicar alterações",
"AudioFileMetadata": "Escrever metadados em ficheiros de áudio",
"AuthorNameHelpText": "O nome do autor/livro a eliminar (pode ser qualquer palavra)",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} livros transferidos",
"CalibreOutputProfile": "Perfil de saída do Calibre",
"ChownGroup": "Grupo chown",
"CollapseMultipleBooks": "Fechar múltiplos livros",
@ -521,7 +520,6 @@
"AuthorFolderFormat": "Formato da pasta do autor",
"Authors": "Autores",
"AutomaticallySwitchEdition": "Alternar edição automaticamente",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0}/{1} (Total: {2})",
"BookNaming": "Nomenclatura de livros",
"BookStudio": "Estúdio de livros",
"Books": "Livros",

@ -435,7 +435,6 @@
"WeekColumnHeader": "Cabeçalho da Coluna da Semana",
"Year": "Ano",
"YesCancel": "Sim, Cancelar",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0}/{1} (Total: {2})",
"WriteBookTagsHelpTextWarning": "Selecionar \"Todos os arquivos\" alterará os arquivos existentes quando forem importados.",
"WatchRootFoldersForFileChanges": "Monitorar alterações nas pastas raiz",
"WatchLibraryForChangesHelpText": "Verificar novamente quando houver alteração em arquivos de uma pasta raiz",
@ -621,7 +620,6 @@
"Books": "Livros",
"BookNaming": "Nomenclatura de livros",
"BookFilesCountMessage": "Nenhum arquivo de livro",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} livros baixados",
"Book": "Livro",
"BackupIntervalHelpText": "Intervalo para fazer backup das configurações e do banco de dados do Readarr",
"AutomaticallySwitchEdition": "Alternar edição automaticamente",
@ -791,7 +789,7 @@
"ProxyCheckResolveIpMessage": "Falha ao resolver o endereço IP do host de proxy configurado {0}",
"ProxyCheckBadRequestMessage": "Falha ao testar o proxy. Código de status: {0}",
"ProxyCheckFailedToTestMessage": "Falha ao testar o proxy: {0}",
"QualitySettingsSummary": "Tamanhos de qualidade e nomenclatura",
"QualitySettingsSummary": "Tamanhos e nomenclatura de qualidade",
"Queued": "Na fila",
"QueueIsEmpty": "A fila está vazia",
"RefreshAndScan": "Atualizar & Escanear",

@ -25,7 +25,7 @@
"AlternateTitles": "Альтернативное название",
"Analytics": "Аналитика",
"AnalyticsEnabledHelpText": "Отправлять в Radarr информацию о использовании и ошибках. Анонимная статистика включает в себя информацию о браузере, какие страницы загружены, сообщения об ошибках, а так же операционной системе. Мы используем эту информацию для выявления ошибок, а так же для разработки нового функционала.",
"AppDataDirectory": "AppData директория",
"AppDataDirectory": "Директория AppData",
"ApplyTags": "Применить тэги",
"Authentication": "Аутентификация",
"AuthenticationMethodHelpText": "Необходим логин и пароль для доступа в Radarr",
@ -725,5 +725,6 @@
"ResetQualityDefinitionsMessageText": "Вы уверены, что хотите сбросить определения качества?",
"DeleteRemotePathMappingMessageText": "Вы уверены, что хотите удалить это сопоставление удаленного пути?",
"RemotePathMappingsInfo": "Сопоставление удаленных путей требуется крайне редко, если {app} и клиент загрузки находятся в одной системе, то лучше согласовать пути. Более подробную информацию можно найти в [wiki]({wikiLink}).",
"WouldYouLikeToRestoreBackup": "Желаете восстановить резервную копию {name} ?"
"WouldYouLikeToRestoreBackup": "Желаете восстановить резервную копию {name} ?",
"CustomFormatsSpecificationRegularExpression": "Регулярное выражение"
}

@ -536,7 +536,6 @@
"AudioFileMetadata": "Skriv Metadata till Ljudfiler",
"BackupIntervalHelpText": "Intervall mellan automatiska säkerhetskopior",
"Book": "Bok",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (Totalt: {2})",
"AnyEditionOkHelpText": "Readarr kommer automatiskt byta till den versionen som matchar nedladdade filer",
"AutomaticallySwitchEdition": "Automatiskt Byt Version",
"HideBooks": "Dölj Böcker",
@ -550,7 +549,6 @@
"OnBookRetagHelpText": "När Bok-Omtaggas",
"SkipPartBooksAndSets": "Hoppa böcker som är i delar eller uppsättningar",
"SkipRedownload": "Hoppa Åternedladdning",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} böcker nedladdade",
"BookFilesCountMessage": "Inga bokfiler",
"BookMonitoring": "Boken Bevakas",
"BookNaming": "Bok Namngivning",

@ -541,7 +541,7 @@
"Yesterday": "Dün",
"FailedToLoadQueue": "Sıra yüklenemedi",
"RestartRequiredHelpTextWarning": "Etkili olması için yeniden başlatma gerektirir",
"AddList": "Liste ekle",
"AddList": "Liste Ekleyin",
"RenameFiles": "Yeniden Adlandır",
"Test": "Ölçek",
"ImportListExclusions": "İçe Aktarma Listesi Hariç Tutmasını Sil",
@ -622,8 +622,8 @@
"TotalSpace": "Toplam alan",
"Backup": "Destek olmak",
"Medium": "Orta",
"Activity": "Aktivite",
"AddNew": "Yeni ekle",
"Activity": "Etkinlik",
"AddNew": "Yeni Ekle",
"Large": "Büyük",
"LastDuration": "lastDuration",
"AllResultsAreHiddenByTheAppliedFilter": "Tüm sonuçlar, uygulanan filtre tarafından gizlenir",

@ -591,8 +591,6 @@
"AddList": "添加列表",
"BookList": "书籍清单",
"Books": "书籍",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (全部: {2})",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} 书籍已下载",
"BookFilesCountMessage": "无书籍文件",
"AutomaticallySwitchEdition": "自动切换版本",
"AllAuthorBooks": "该作者所有书籍",
@ -1025,5 +1023,6 @@
"DownloadClientQbittorrentSettingsContentLayout": "内容布局",
"ExtraFileExtensionsHelpTextsExamples": "示例:’.sub,.nfosub,nfo",
"InvalidUILanguage": "您的UI设置为无效语言请纠正并保存设置",
"DownloadClientQbittorrentSettingsContentLayoutHelpText": "是否使用 qBittorrent 配置的内容布局使用种子的原始布局或始终创建子文件夹qBittorrent 4.3.2+"
"DownloadClientQbittorrentSettingsContentLayoutHelpText": "是否使用 qBittorrent 配置的内容布局使用种子的原始布局或始终创建子文件夹qBittorrent 4.3.2+",
"ChangeCategory": "改变分类"
}

@ -7,7 +7,7 @@ using Readarr.Api.V1.Author;
namespace NzbDrone.Integration.Test.ApiTests
{
[TestFixture]
[Ignore("Waiting for metadata to be back again", Until = "2024-01-31 00:00:00Z")]
[Ignore("Waiting for metadata to be back again", Until = "2024-03-15 00:00:00Z")]
public class AuthorEditorFixture : IntegrationTest
{
private void GivenExistingAuthor()

@ -7,7 +7,7 @@ using NUnit.Framework;
namespace NzbDrone.Integration.Test.ApiTests
{
[TestFixture]
[Ignore("Waiting for metadata to be back again", Until = "2024-01-31 00:00:00Z")]
[Ignore("Waiting for metadata to be back again", Until = "2024-03-15 00:00:00Z")]
public class AuthorFixture : IntegrationTest
{
[Test]

@ -4,7 +4,7 @@ using NUnit.Framework;
namespace NzbDrone.Integration.Test.ApiTests
{
[TestFixture]
[Ignore("Waiting for metadata to be back again", Until = "2024-01-31 00:00:00Z")]
[Ignore("Waiting for metadata to be back again", Until = "2024-03-15 00:00:00Z")]
public class AuthorLookupFixture : IntegrationTest
{
[TestCase("Robert Harris", "Robert Harris")]

@ -6,7 +6,7 @@ using Readarr.Api.V1.Blocklist;
namespace NzbDrone.Integration.Test.ApiTests
{
[TestFixture]
[Ignore("Waiting for metadata to be back again", Until = "2024-01-31 00:00:00Z")]
[Ignore("Waiting for metadata to be back again", Until = "2024-03-15 00:00:00Z")]
public class BlocklistFixture : IntegrationTest
{
private AuthorResource _author;

@ -9,7 +9,7 @@ using Readarr.Api.V1.Books;
namespace NzbDrone.Integration.Test.ApiTests
{
[TestFixture]
[Ignore("Waiting for metadata to be back again", Until = "2024-01-31 00:00:00Z")]
[Ignore("Waiting for metadata to be back again", Until = "2024-03-15 00:00:00Z")]
public class CalendarFixture : IntegrationTest
{
public ClientBase<BookResource> Calendar;

@ -8,7 +8,7 @@ using Readarr.Api.V1.RootFolders;
namespace NzbDrone.Integration.Test.ApiTests.WantedTests
{
[TestFixture]
[Ignore("Waiting for metadata to be back again", Until = "2024-01-31 00:00:00Z")]
[Ignore("Waiting for metadata to be back again", Until = "2024-03-15 00:00:00Z")]
public class CutoffUnmetFixture : IntegrationTest
{
[SetUp]

@ -7,7 +7,7 @@ using Readarr.Api.V1.RootFolders;
namespace NzbDrone.Integration.Test.ApiTests.WantedTests
{
[TestFixture]
[Ignore("Waiting for metadata to be back again", Until = "2024-01-31 00:00:00Z")]
[Ignore("Waiting for metadata to be back again", Until = "2024-03-15 00:00:00Z")]
public class MissingFixture : IntegrationTest
{
[SetUp]

@ -8968,6 +8968,11 @@
"ratings": {
"$ref": "#/components/schemas/Ratings"
},
"lastSearchTime": {
"type": "string",
"format": "date-time",
"nullable": true
},
"cleanTitle": {
"type": "string",
"nullable": true

Loading…
Cancel
Save