mirror of
https://github.com/fallenbagel/jellyseerr.git
synced 2025-12-24 02:39:18 -05:00
Compare commits
28 Commits
preview-OI
...
preview-de
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ca9074b111 | ||
|
|
f2bd0abcd8 | ||
|
|
872fc4581e | ||
|
|
53dc802696 | ||
|
|
764f7b4270 | ||
|
|
82c583974f | ||
|
|
b10c57ce43 | ||
|
|
efba847452 | ||
|
|
420e320f1f | ||
|
|
f427bc26df | ||
|
|
eec3319ba6 | ||
|
|
da57ccc5a7 | ||
|
|
e9db34ea07 | ||
|
|
1143f88b6e | ||
|
|
0b1ad8ca1c | ||
|
|
b209e7fdf9 | ||
|
|
fed772a8e7 | ||
|
|
f46a763152 | ||
|
|
c024799dae | ||
|
|
837629ec47 | ||
|
|
f045274a30 | ||
|
|
1518dc01e5 | ||
|
|
328517cc0a | ||
|
|
9e737576de | ||
|
|
cd479d0d17 | ||
|
|
e9f2f4490f | ||
|
|
d5bf17574f | ||
|
|
17172e93f9 |
@@ -642,6 +642,24 @@
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "sudo-kraken",
|
||||
"name": "Joe Harrison",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/53116754?v=4",
|
||||
"profile": "https://sudo-kraken.github.io/docs/",
|
||||
"contributions": [
|
||||
"infra"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "ale183",
|
||||
"name": "ale183",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/8809439?v=4",
|
||||
"profile": "https://github.com/ale183",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -4,6 +4,7 @@
|
||||
|
||||
#### To-Dos
|
||||
|
||||
- [ ] Disclosed any use of AI (see our [policy](https://github.com/fallenbagel/jellyseerr/blob/develop/CONTRIBUTING.md#ai-assistance-notice))
|
||||
- [ ] Successful build `pnpm build`
|
||||
- [ ] Translation keys `pnpm i18n:extract`
|
||||
- [ ] Database migration (if required)
|
||||
|
||||
154
.github/workflows/ci.yml
vendored
154
.github/workflows/ci.yml
vendored
@@ -7,6 +7,14 @@ on:
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: ci-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
test:
|
||||
@@ -17,14 +25,17 @@ jobs:
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Pnpm Setup
|
||||
uses: pnpm/action-setup@v4
|
||||
with:
|
||||
version: 9
|
||||
|
||||
- name: Get pnpm store directory
|
||||
shell: sh
|
||||
run: |
|
||||
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
|
||||
|
||||
- name: Setup pnpm cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
@@ -32,137 +43,144 @@ jobs:
|
||||
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pnpm-store-
|
||||
|
||||
- name: Install dependencies
|
||||
env:
|
||||
HUSKY: 0
|
||||
run: pnpm install
|
||||
|
||||
- name: Lint
|
||||
run: pnpm lint
|
||||
|
||||
- name: Formatting
|
||||
run: pnpm format:check
|
||||
|
||||
- name: Build
|
||||
run: pnpm build
|
||||
|
||||
build:
|
||||
name: Build & Publish Docker Images
|
||||
name: Build (per-arch, native runners)
|
||||
if: github.ref == 'refs/heads/develop' && !contains(github.event.head_commit.message, '[skip ci]')
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- runner: ubuntu-24.04
|
||||
platform: linux/amd64
|
||||
arch: amd64
|
||||
- runner: ubuntu-24.04-arm
|
||||
platform: linux/arm64
|
||||
arch: arm64
|
||||
runs-on: ${{ matrix.runner }}
|
||||
outputs:
|
||||
digest-amd64: ${{ steps.set_outputs.outputs.digest-amd64 }}
|
||||
digest-arm64: ${{ steps.set_outputs.outputs.digest-arm64 }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Commit timestamp
|
||||
id: ts
|
||||
run: echo "TIMESTAMP=$(git log -1 --pretty=%ct)" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_TOKEN }}
|
||||
- name: Log in to GitHub Container Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Set lower case owner name
|
||||
run: |
|
||||
echo "OWNER_LC=${OWNER,,}" >>${GITHUB_ENV}
|
||||
env:
|
||||
OWNER: ${{ github.repository_owner }}
|
||||
- name: Docker metadata
|
||||
id: meta
|
||||
uses: docker/metadata-action@v4
|
||||
with:
|
||||
images: |
|
||||
fallenbagel/jellyseerr
|
||||
ghcr.io/${{ env.OWNER_LC }}/jellyseerr
|
||||
tags: |
|
||||
type=ref,event=branch
|
||||
type=sha,prefix=,suffix=,format=short
|
||||
- name: Build and push by digest
|
||||
id: build
|
||||
uses: docker/build-push-action@v5
|
||||
|
||||
- name: Warm cache (no push) — ${{ matrix.platform }}
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
platforms: ${{ matrix.platform }}
|
||||
push: true
|
||||
push: false
|
||||
build-args: |
|
||||
COMMIT_TAG=${{ github.sha }}
|
||||
BUILD_VERSION=develop
|
||||
BUILD_DATE=${{ github.event.repository.updated_at }}
|
||||
outputs: |
|
||||
type=image,push-by-digest=true,name=fallenbagel/jellyseerr,push=true
|
||||
type=image,push-by-digest=true,name=ghcr.io/${{ env.OWNER_LC }}/jellyseerr,push=true
|
||||
SOURCE_DATE_EPOCH=${{ steps.ts.outputs.TIMESTAMP }}
|
||||
cache-from: type=gha,scope=${{ matrix.platform }}
|
||||
cache-to: type=gha,mode=max,scope=${{ matrix.platform }}
|
||||
provenance: false
|
||||
- name: Set outputs
|
||||
id: set_outputs
|
||||
run: |
|
||||
platform="${{ matrix.platform == 'linux/amd64' && 'amd64' || 'arm64' }}"
|
||||
echo "digest-${platform}=${{ steps.build.outputs.digest }}" >> $GITHUB_OUTPUT
|
||||
|
||||
merge_and_push:
|
||||
name: Create and Push Multi-arch Manifest
|
||||
publish:
|
||||
name: Publish multi-arch image
|
||||
needs: build
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
contents: read
|
||||
packages: write
|
||||
id-token: write
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Commit timestamp
|
||||
id: ts
|
||||
run: echo "TIMESTAMP=$(git log -1 --pretty=%ct)" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_TOKEN }}
|
||||
|
||||
- name: Log in to GitHub Container Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Set lower case owner name
|
||||
run: |
|
||||
echo "OWNER_LC=${OWNER,,}" >>${GITHUB_ENV}
|
||||
env:
|
||||
OWNER: ${{ github.repository_owner }}
|
||||
- name: Create and push manifest
|
||||
run: |
|
||||
docker manifest create fallenbagel/jellyseerr:develop \
|
||||
--amend fallenbagel/jellyseerr@${{ needs.build.outputs.digest-amd64 }} \
|
||||
--amend fallenbagel/jellyseerr@${{ needs.build.outputs.digest-arm64 }}
|
||||
docker manifest push fallenbagel/jellyseerr:develop
|
||||
|
||||
# GHCR manifest
|
||||
docker manifest create ghcr.io/${{ env.OWNER_LC }}/jellyseerr:develop \
|
||||
--amend ghcr.io/${{ env.OWNER_LC }}/jellyseerr@${{ needs.build.outputs.digest-amd64 }} \
|
||||
--amend ghcr.io/${{ env.OWNER_LC }}/jellyseerr@${{ needs.build.outputs.digest-arm64 }}
|
||||
docker manifest push ghcr.io/${{ env.OWNER_LC }}/jellyseerr:develop
|
||||
- name: Extract metadata
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
${{ github.repository }}
|
||||
ghcr.io/${{ github.repository }}
|
||||
tags: |
|
||||
type=raw,value=develop
|
||||
type=sha
|
||||
labels: |
|
||||
org.opencontainers.image.created=${{ steps.ts.outputs.TIMESTAMP }}
|
||||
|
||||
- name: Build & Push (multi-arch, single tag)
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
build-args: |
|
||||
COMMIT_TAG=${{ github.sha }}
|
||||
BUILD_VERSION=develop
|
||||
SOURCE_DATE_EPOCH=${{ steps.ts.outputs.TIMESTAMP }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
cache-from: |
|
||||
type=gha,scope=linux/amd64
|
||||
type=gha,scope=linux/arm64
|
||||
cache-to: type=gha,mode=max
|
||||
provenance: false
|
||||
|
||||
discord:
|
||||
name: Send Discord Notification
|
||||
needs: merge_and_push
|
||||
needs: publish
|
||||
if: always() && github.event_name != 'pull_request' && !contains(github.event.head_commit.message, '[skip ci]')
|
||||
runs-on: ubuntu-24.04
|
||||
steps:
|
||||
- name: Get Build Job Status
|
||||
uses: technote-space/workflow-conclusion-action@v3
|
||||
- name: Combine Job Status
|
||||
id: status
|
||||
run: |
|
||||
failures=(neutral, skipped, timed_out, action_required)
|
||||
if [[ ${array[@]} =~ $WORKFLOW_CONCLUSION ]]; then
|
||||
if [[ ${array[@]} =~ ${{ needs.publish.result }} ]]; then
|
||||
echo "status=failure" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "status=$WORKFLOW_CONCLUSION" >> $GITHUB_OUTPUT
|
||||
echo "status=${{ needs.publish.result }}" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Post Status to Discord
|
||||
uses: sarisia/actions-status-discord@v1
|
||||
with:
|
||||
|
||||
29
.github/workflows/codeql.yml
vendored
29
.github/workflows/codeql.yml
vendored
@@ -3,39 +3,52 @@ name: 'CodeQL'
|
||||
on:
|
||||
push:
|
||||
branches: ['develop']
|
||||
paths-ignore:
|
||||
- '**/*.md'
|
||||
- 'docs/**'
|
||||
pull_request:
|
||||
branches: ['develop']
|
||||
paths-ignore:
|
||||
- '**/*.md'
|
||||
- 'docs/**'
|
||||
schedule:
|
||||
- cron: '50 7 * * 5'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: codeql-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
analyze:
|
||||
name: Analyze
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04
|
||||
timeout-minutes: 10
|
||||
permissions:
|
||||
actions: read
|
||||
contents: read
|
||||
security-events: write
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
language: [javascript]
|
||||
|
||||
language: [actions, javascript]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v2
|
||||
uses: github/codeql-action/init@v3
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
queries: +security-and-quality
|
||||
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@v2
|
||||
uses: github/codeql-action/autobuild@v3
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v2
|
||||
uses: github/codeql-action/analyze@v3
|
||||
with:
|
||||
category: '/language:${{ matrix.language }}'
|
||||
|
||||
20
.github/workflows/conflict_labeler.yml
vendored
20
.github/workflows/conflict_labeler.yml
vendored
@@ -2,18 +2,24 @@ name: Merge Conflict Labeler
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
branches: [develop]
|
||||
|
||||
pull_request_target:
|
||||
branches:
|
||||
- develop
|
||||
types: [synchronize]
|
||||
branches: [develop]
|
||||
types: [opened, synchronize, reopened]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: merge-conflict-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
label:
|
||||
name: Labeling
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.repository == 'Fallenbagel/jellyseerr' }}
|
||||
runs-on: ubuntu-24.04
|
||||
timeout-minutes: 10
|
||||
permissions:
|
||||
contents: read
|
||||
pull-requests: write
|
||||
|
||||
38
.github/workflows/cypress.yml
vendored
38
.github/workflows/cypress.yml
vendored
@@ -2,26 +2,49 @@ name: Cypress Tests
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- '*'
|
||||
branches: ['*']
|
||||
paths-ignore:
|
||||
- '**/*.md'
|
||||
- 'docs/**'
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
branches: [develop]
|
||||
paths-ignore:
|
||||
- '**/*.md'
|
||||
- 'docs/**'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: cypress-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
cypress-run:
|
||||
runs-on: ubuntu-latest
|
||||
name: Cypress Run
|
||||
runs-on: ubuntu-24.04
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 22
|
||||
node-version-file: package.json
|
||||
|
||||
- name: Pnpm Setup
|
||||
uses: pnpm/action-setup@v4
|
||||
|
||||
- name: Setup cypress cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
version: 9
|
||||
path: ~/.cache/Cypress
|
||||
key: ${{ runner.os }}-cypress-store-${{ hashFiles('**/pnpm-lock.yaml') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-cypress-store-
|
||||
|
||||
- name: Cypress run
|
||||
uses: cypress-io/github-action@v6
|
||||
with:
|
||||
@@ -36,6 +59,7 @@ jobs:
|
||||
# Fix test titles in cypress dashboard
|
||||
COMMIT_INFO_MESSAGE: ${{github.event.pull_request.title}}
|
||||
COMMIT_INFO_SHA: ${{github.event.pull_request.head.sha}}
|
||||
|
||||
- name: Upload video files
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v4
|
||||
|
||||
40
.github/workflows/docs-deploy.yml
vendored
40
.github/workflows/docs-deploy.yml
vendored
@@ -8,24 +8,30 @@ on:
|
||||
- 'docs/**'
|
||||
- 'gen-docs/**'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: pages
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build Docusaurus
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
persist-credentials: false
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20
|
||||
node-version-file: package.json
|
||||
|
||||
- name: Pnpm Setup
|
||||
uses: pnpm/action-setup@v4
|
||||
with:
|
||||
version: 9
|
||||
|
||||
- name: Get pnpm store directory
|
||||
shell: sh
|
||||
@@ -46,38 +52,26 @@ jobs:
|
||||
pnpm install --frozen-lockfile
|
||||
|
||||
- name: Build website
|
||||
run: |
|
||||
cd gen-docs
|
||||
pnpm build
|
||||
working-directory: gen-docs
|
||||
run: pnpm build
|
||||
|
||||
- name: Upload Build Artifact
|
||||
uses: actions/upload-pages-artifact@v3
|
||||
uses: actions/upload-pages-artifact@v4
|
||||
with:
|
||||
path: gen-docs/build
|
||||
|
||||
deploy:
|
||||
name: Deploy to GitHub Pages
|
||||
needs: build
|
||||
concurrency: build-deploy-pages
|
||||
|
||||
# Grant GITHUB_TOKEN the permissions required to make a Pages deployment
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
pages: write # to deploy to Pages
|
||||
id-token: write # to verify the deployment originates from an appropriate source
|
||||
|
||||
# Deploy to the github-pages environment
|
||||
contents: read
|
||||
pages: write
|
||||
id-token: write
|
||||
environment:
|
||||
name: github-pages
|
||||
url: ${{ steps.deployment.outputs.page_url }}
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
# - name: Download Build Artifact
|
||||
# uses: actions/download-artifact@v4
|
||||
# with:
|
||||
# name: docusaurus-build
|
||||
# path: gen-docs/build
|
||||
|
||||
- name: Deploy to GitHub Pages
|
||||
id: deployment
|
||||
uses: actions/deploy-pages@v4
|
||||
|
||||
29
.github/workflows/helm.yml
vendored
29
.github/workflows/helm.yml
vendored
@@ -4,11 +4,21 @@ on:
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
paths:
|
||||
- 'charts/**'
|
||||
- '.github/workflows/release-charts.yml'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: helm-charts
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
package-helm-chart:
|
||||
name: Package helm chart
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
contents: read
|
||||
packages: read
|
||||
@@ -19,6 +29,7 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
persist-credentials: false
|
||||
|
||||
- name: Install helm
|
||||
uses: azure/setup-helm@v4
|
||||
@@ -42,16 +53,11 @@ jobs:
|
||||
# get current version
|
||||
current_version=$(grep '^version:' "$chart_path/Chart.yaml" | awk '{print $2}')
|
||||
# try to get current release version
|
||||
set +e
|
||||
oras discover ghcr.io/${GITHUB_REPOSITORY@L}/${chart_name}:${current_version}
|
||||
oras_exit_code=$?
|
||||
set -e
|
||||
|
||||
if [ $oras_exit_code -ne 0 ]; then
|
||||
if oras manifest fetch "ghcr.io/${GITHUB_REPOSITORY@L}/${chart_name}:${current_version}" >/dev/null 2>&1; then
|
||||
echo "No version change for $chart_name. Skipping."
|
||||
else
|
||||
helm dependency build "$chart_path"
|
||||
helm package "$chart_path" --destination ./.cr-release-packages
|
||||
else
|
||||
echo "No version change for $chart_name. Skipping."
|
||||
fi
|
||||
else
|
||||
echo "Skipping $chart_name: Not a valid Helm chart"
|
||||
@@ -61,7 +67,7 @@ jobs:
|
||||
- name: Check if artifacts exist
|
||||
id: check-artifacts
|
||||
run: |
|
||||
if ls .cr-release-packages/* >/dev/null 2>&1; then
|
||||
if ls .cr-release-packages/*.tgz >/dev/null 2>&1; then
|
||||
echo "has_artifacts=true" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "has_artifacts=false" >> $GITHUB_OUTPUT
|
||||
@@ -77,7 +83,7 @@ jobs:
|
||||
|
||||
publish:
|
||||
name: Publish to ghcr.io
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
packages: write # needed for pushing to github registry
|
||||
id-token: write # needed for signing the images with GitHub OIDC Token
|
||||
@@ -88,6 +94,7 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
persist-credentials: false
|
||||
|
||||
- name: Install helm
|
||||
uses: azure/setup-helm@v4
|
||||
|
||||
29
.github/workflows/lint-helm-charts.yml
vendored
29
.github/workflows/lint-helm-charts.yml
vendored
@@ -7,27 +7,48 @@ on:
|
||||
paths:
|
||||
- '.github/workflows/lint-helm-charts.yml'
|
||||
- 'charts/**'
|
||||
push:
|
||||
branches: [develop]
|
||||
paths:
|
||||
- 'charts/**'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: charts-lint-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
lint-test:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
persist-credentials: false
|
||||
|
||||
- name: Set up Helm
|
||||
uses: azure/setup-helm@v4.2.0
|
||||
uses: azure/setup-helm@v4
|
||||
|
||||
- name: Set up chart-testing
|
||||
uses: helm/chart-testing-action@v2
|
||||
|
||||
- name: Ensure documentation is updated
|
||||
uses: docker://jnorwood/helm-docs:v1.14.2
|
||||
- name: Set up chart-testing
|
||||
uses: helm/chart-testing-action@v2.6.1
|
||||
|
||||
- name: Run chart-testing (list-changed)
|
||||
id: list-changed
|
||||
run: |
|
||||
changed=$(ct list-changed --target-branch ${{ github.event.repository.default_branch }})
|
||||
if [[ -n "$changed" ]]; then
|
||||
echo "changed=true" >> "$GITHUB_OUTPUT"
|
||||
echo "$changed"
|
||||
fi
|
||||
|
||||
- name: Run chart-testing
|
||||
if: steps.list-changed.outputs.changed == 'true'
|
||||
run: ct lint --target-branch ${{ github.event.repository.default_branch }} --validate-maintainers=false
|
||||
|
||||
130
.github/workflows/preview.yml
vendored
130
.github/workflows/preview.yml
vendored
@@ -4,28 +4,125 @@ on:
|
||||
push:
|
||||
tags:
|
||||
- 'preview-*'
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: preview-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build_and_push:
|
||||
name: Build & Publish Docker Preview Images
|
||||
runs-on: ubuntu-22.04
|
||||
build:
|
||||
name: Build (per-arch, native runners)
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- runner: ubuntu-24.04
|
||||
platform: linux/amd64
|
||||
arch: amd64
|
||||
- runner: ubuntu-24.04-arm
|
||||
platform: linux/arm64
|
||||
arch: arm64
|
||||
runs-on: ${{ matrix.runner }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Get the version
|
||||
id: get_version
|
||||
run: echo "VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Commit timestamp
|
||||
id: ts
|
||||
run: echo "TIMESTAMP=$(git log -1 --pretty=%ct)" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Derive preview version from tag
|
||||
id: ver
|
||||
shell: bash
|
||||
run: |
|
||||
TAG="${GITHUB_REF_NAME}"
|
||||
VER="${TAG#preview-}"
|
||||
VER="${VER#v}"
|
||||
echo "version=${VER}" >> "$GITHUB_OUTPUT"
|
||||
echo "Building preview version: ${VER}"
|
||||
|
||||
- name: Warm cache (no push) — ${{ matrix.platform }}
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
platforms: ${{ matrix.platform }}
|
||||
push: false
|
||||
build-args: |
|
||||
COMMIT_TAG=${{ github.sha }}
|
||||
BUILD_VERSION=${{ steps.ver.outputs.version }}
|
||||
SOURCE_DATE_EPOCH=${{ steps.ts.outputs.TIMESTAMP }}
|
||||
cache-from: type=gha,scope=${{ matrix.platform }}
|
||||
cache-to: type=gha,mode=max,scope=${{ matrix.platform }}
|
||||
provenance: false
|
||||
|
||||
publish:
|
||||
name: Publish multi-arch image
|
||||
needs: build
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
contents: read
|
||||
packages: write
|
||||
id-token: write
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Commit timestamp
|
||||
id: ts
|
||||
run: echo "TIMESTAMP=$(git log -1 --pretty=%ct)" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_TOKEN }}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v5
|
||||
|
||||
- name: Log in to GitHub Container Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Derive preview version from tag
|
||||
id: ver
|
||||
shell: bash
|
||||
run: |
|
||||
TAG="${GITHUB_REF_NAME}"
|
||||
VER="${TAG#preview-}"
|
||||
VER="${VER#v}"
|
||||
echo "version=${VER}" >> "$GITHUB_OUTPUT"
|
||||
echo "Publishing preview version: ${VER}"
|
||||
|
||||
- name: Extract metadata
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
${{ github.repository }}
|
||||
ghcr.io/${{ github.repository }}
|
||||
tags: |
|
||||
type=raw,value=preview-${{ steps.ver.outputs.version }}
|
||||
labels: |
|
||||
org.opencontainers.image.version=preview-${{ steps.ver.outputs.version }}
|
||||
org.opencontainers.image.created=${{ steps.ts.outputs.TIMESTAMP }}
|
||||
|
||||
- name: Build & Push (multi-arch, single tag)
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
@@ -33,7 +130,12 @@ jobs:
|
||||
push: true
|
||||
build-args: |
|
||||
COMMIT_TAG=${{ github.sha }}
|
||||
BUILD_VERSION=${{ steps.get_version.outputs.VERSION }}
|
||||
BUILD_DATE=${{ github.event.repository.updated_at }}
|
||||
tags: |
|
||||
fallenbagel/jellyseerr:${{ steps.get_version.outputs.VERSION }}
|
||||
BUILD_VERSION=${{ steps.ver.outputs.version }}
|
||||
SOURCE_DATE_EPOCH=${{ steps.ts.outputs.TIMESTAMP }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
cache-from: |
|
||||
type=gha,scope=linux/amd64
|
||||
type=gha,scope=linux/arm64
|
||||
cache-to: type=gha,mode=max
|
||||
provenance: false
|
||||
|
||||
230
.github/workflows/release.yml
vendored
230
.github/workflows/release.yml
vendored
@@ -1,6 +1,14 @@
|
||||
name: Jellyseer Release
|
||||
name: Jellyseerr Release
|
||||
|
||||
on: workflow_dispatch
|
||||
on:
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: release-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
semantic-release:
|
||||
@@ -8,38 +16,29 @@ jobs:
|
||||
runs-on: ubuntu-22.04
|
||||
env:
|
||||
HUSKY: 0
|
||||
outputs:
|
||||
new_release_published: ${{ steps.release.outputs.new_release_published }}
|
||||
new_release_version: ${{ steps.release.outputs.new_release_version }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
persist-credentials: false
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 22
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_TOKEN }}
|
||||
- name: Log in to GitHub Container Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GH_TOKEN }}
|
||||
node-version-file: package.json
|
||||
|
||||
- name: Pnpm Setup
|
||||
uses: pnpm/action-setup@v4
|
||||
with:
|
||||
version: 9
|
||||
|
||||
- name: Get pnpm store directory
|
||||
shell: sh
|
||||
run: |
|
||||
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
|
||||
|
||||
- name: Setup pnpm cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
@@ -47,77 +46,151 @@ jobs:
|
||||
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pnpm-store-
|
||||
|
||||
- name: Install dependencies
|
||||
run: pnpm install
|
||||
|
||||
- name: Release
|
||||
id: release
|
||||
uses: cycjimmy/semantic-release-action@v5
|
||||
with:
|
||||
extra_plugins: |
|
||||
@semantic-release/git@10
|
||||
@semantic-release/changelog@6
|
||||
@codedependant/semantic-release-docker@5
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
|
||||
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
|
||||
run: npx semantic-release
|
||||
|
||||
# build-snap:
|
||||
# name: Build Snap Package (${{ matrix.architecture }})
|
||||
# needs: semantic-release
|
||||
# runs-on: ubuntu-22.04
|
||||
# strategy:
|
||||
# fail-fast: false
|
||||
# matrix:
|
||||
# architecture:
|
||||
# - amd64
|
||||
# - arm64
|
||||
# steps:
|
||||
# - name: Checkout Code
|
||||
# uses: actions/checkout@v4
|
||||
# with:
|
||||
# fetch-depth: 0
|
||||
# - name: Switch to main branch
|
||||
# run: git checkout main
|
||||
# - name: Pull latest changes
|
||||
# run: git pull
|
||||
# - name: Prepare
|
||||
# id: prepare
|
||||
# run: |
|
||||
# git fetch --prune --tags
|
||||
# if [[ $GITHUB_REF == refs/tags/* || $GITHUB_REF == refs/heads/master ]]; then
|
||||
# echo "RELEASE=stable" >> $GITHUB_OUTPUT
|
||||
# else
|
||||
# echo "RELEASE=edge" >> $GITHUB_OUTPUT
|
||||
# fi
|
||||
# - name: Set Up QEMU
|
||||
# uses: docker/setup-qemu-action@v3
|
||||
# with:
|
||||
# image: tonistiigi/binfmt@sha256:df15403e06a03c2f461c1f7938b171fda34a5849eb63a70e2a2109ed5a778bde
|
||||
# - name: Build Snap Package
|
||||
# uses: diddlesnaps/snapcraft-multiarch-action@v1
|
||||
# id: build
|
||||
# with:
|
||||
# architecture: ${{ matrix.architecture }}
|
||||
# - name: Upload Snap Package
|
||||
# uses: actions/upload-artifact@v4
|
||||
# with:
|
||||
# name: jellyseerr-snap-package-${{ matrix.architecture }}
|
||||
# path: ${{ steps.build.outputs.snap }}
|
||||
# - name: Review Snap Package
|
||||
# uses: diddlesnaps/snapcraft-review-tools-action@v1
|
||||
# with:
|
||||
# snap: ${{ steps.build.outputs.snap }}
|
||||
# - name: Publish Snap Package
|
||||
# uses: snapcore/action-publish@v1
|
||||
# env:
|
||||
# SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAP_LOGIN }}
|
||||
# with:
|
||||
# snap: ${{ steps.build.outputs.snap }}
|
||||
# release: ${{ steps.prepare.outputs.RELEASE }}
|
||||
build:
|
||||
name: Build (per-arch, native runners)
|
||||
needs: semantic-release
|
||||
if: needs.semantic-release.outputs.new_release_published == 'true'
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- runner: ubuntu-24.04
|
||||
platform: linux/amd64
|
||||
arch: amd64
|
||||
- runner: ubuntu-24.04-arm
|
||||
platform: linux/arm64
|
||||
arch: arm64
|
||||
runs-on: ${{ matrix.runner }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Commit timestamp
|
||||
id: ts
|
||||
run: echo "TIMESTAMP=$(git log -1 --pretty=%ct)" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Warm cache (no push) — ${{ matrix.platform }}
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
platforms: ${{ matrix.platform }}
|
||||
push: false
|
||||
build-args: |
|
||||
COMMIT_TAG=${{ github.sha }}
|
||||
BUILD_VERSION=${{ needs.semantic-release.outputs.new_release_version }}
|
||||
SOURCE_DATE_EPOCH=${{ steps.ts.outputs.TIMESTAMP }}
|
||||
cache-from: type=gha,scope=${{ matrix.platform }}
|
||||
cache-to: type=gha,mode=max,scope=${{ matrix.platform }}
|
||||
provenance: false
|
||||
|
||||
publish:
|
||||
name: Publish multi-arch image
|
||||
needs: [semantic-release, build]
|
||||
if: needs.semantic-release.outputs.new_release_published == 'true'
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write
|
||||
packages: write
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Commit timestamp
|
||||
id: ts
|
||||
run: echo "TIMESTAMP=$(git log -1 --pretty=%ct)" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_TOKEN }}
|
||||
|
||||
- name: Log in to GitHub Container Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Extract metadata
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
${{ github.repository }}
|
||||
ghcr.io/${{ github.repository }}
|
||||
tags: |
|
||||
type=raw,value=${{ needs.semantic-release.outputs.new_release_version }}
|
||||
labels: |
|
||||
org.opencontainers.image.created=${{ steps.ts.outputs.TIMESTAMP }}
|
||||
|
||||
- name: Build & Push (multi-arch, single tag)
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
build-args: |
|
||||
COMMIT_TAG=${{ github.sha }}
|
||||
BUILD_VERSION=${{ needs.semantic-release.outputs.new_release_version }}
|
||||
SOURCE_DATE_EPOCH=${{ steps.ts.outputs.TIMESTAMP }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
cache-from: |
|
||||
type=gha,scope=linux/amd64
|
||||
type=gha,scope=linux/arm64
|
||||
cache-to: type=gha,mode=max
|
||||
provenance: false
|
||||
|
||||
- name: Also tag :latest (non-pre-release only)
|
||||
shell: bash
|
||||
run: |
|
||||
VER="${{ needs.semantic-release.outputs.new_release_version }}"
|
||||
if [[ "$VER" != *"-"* ]]; then
|
||||
docker buildx imagetools create \
|
||||
-t ${{ github.repository }}:latest \
|
||||
${{ github.repository }}:${VER}
|
||||
docker buildx imagetools create \
|
||||
-t ghcr.io/${{ github.repository }}:latest \
|
||||
ghcr.io/${{ github.repository }}:${VER}
|
||||
fi
|
||||
|
||||
discord:
|
||||
name: Send Discord Notification
|
||||
needs: semantic-release
|
||||
needs: publish
|
||||
if: always()
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-24.04
|
||||
steps:
|
||||
- name: Get Build Job Status
|
||||
uses: technote-space/workflow-conclusion-action@v3
|
||||
|
||||
- name: Combine Job Status
|
||||
id: status
|
||||
run: |
|
||||
@@ -127,6 +200,7 @@ jobs:
|
||||
else
|
||||
echo "status=$WORKFLOW_CONCLUSION" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Post Status to Discord
|
||||
uses: sarisia/actions-status-discord@v1
|
||||
with:
|
||||
|
||||
94
.github/workflows/snap.yaml.disabled
vendored
94
.github/workflows/snap.yaml.disabled
vendored
@@ -1,94 +0,0 @@
|
||||
name: Publish Snap
|
||||
|
||||
# turn off edge snap builds temporarily and make it manual
|
||||
|
||||
# on:
|
||||
# push:
|
||||
# branches:
|
||||
# - develop
|
||||
|
||||
on: workflow_dispatch
|
||||
|
||||
jobs:
|
||||
jobs:
|
||||
name: Job Check
|
||||
runs-on: ubuntu-22.04
|
||||
if: "!contains(github.event.head_commit.message, '[skip ci]')"
|
||||
steps:
|
||||
- name: Cancel Previous Runs
|
||||
uses: styfle/cancel-workflow-action@0.12.1
|
||||
with:
|
||||
access_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
build-snap:
|
||||
name: Build Snap Package (${{ matrix.architecture }})
|
||||
needs: jobs
|
||||
runs-on: ubuntu-22.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
architecture:
|
||||
- amd64
|
||||
- arm64
|
||||
steps:
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@v4
|
||||
- name: Prepare
|
||||
id: prepare
|
||||
run: |
|
||||
git fetch --prune --unshallow --tags
|
||||
if [[ $GITHUB_REF == refs/tags/* || $GITHUB_REF == refs/heads/master ]]; then
|
||||
echo "RELEASE=stable" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "RELEASE=edge" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
- name: Set Up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
- name: Configure Git
|
||||
run: git config --add safe.directory /data/parts/jellyseerr/src
|
||||
- name: Build Snap Package
|
||||
uses: diddlesnaps/snapcraft-multiarch-action@v1
|
||||
id: build
|
||||
with:
|
||||
architecture: ${{ matrix.architecture }}
|
||||
- name: Upload Snap Package
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: jellyseerr-snap-package-${{ matrix.architecture }}
|
||||
path: ${{ steps.build.outputs.snap }}
|
||||
- name: Review Snap Package
|
||||
uses: diddlesnaps/snapcraft-review-tools-action@v1
|
||||
with:
|
||||
snap: ${{ steps.build.outputs.snap }}
|
||||
- name: Publish Snap Package
|
||||
uses: snapcore/action-publish@v1
|
||||
env:
|
||||
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAP_LOGIN }}
|
||||
with:
|
||||
snap: ${{ steps.build.outputs.snap }}
|
||||
release: ${{ steps.prepare.outputs.RELEASE }}
|
||||
|
||||
discord:
|
||||
name: Send Discord Notification
|
||||
needs: build-snap
|
||||
if: always() && !contains(github.event.head_commit.message, '[skip ci]')
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- name: Get Build Job Status
|
||||
uses: technote-space/workflow-conclusion-action@v3
|
||||
- name: Combine Job Status
|
||||
id: status
|
||||
run: |
|
||||
failures=(neutral, skipped, timed_out, action_required)
|
||||
if [[ ${array[@]} =~ $WORKFLOW_CONCLUSION ]]; then
|
||||
echo "status=failure" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "status=$WORKFLOW_CONCLUSION" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
- name: Post Status to Discord
|
||||
uses: sarisia/actions-status-discord@v1
|
||||
with:
|
||||
webhook: ${{ secrets.DISCORD_WEBHOOK }}
|
||||
status: ${{ steps.status.outputs.status }}
|
||||
title: ${{ github.workflow }}
|
||||
nofail: true
|
||||
51
.github/workflows/support.yml
vendored
51
.github/workflows/support.yml
vendored
@@ -4,22 +4,53 @@ on:
|
||||
issues:
|
||||
types: [labeled, unlabeled, reopened]
|
||||
|
||||
permissions:
|
||||
issues: read
|
||||
|
||||
concurrency:
|
||||
group: support-${{ github.event.issue.number }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
support:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event.label.name == 'support' || github.event.action == 'reopened'
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
issues: write
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
GH_REPO: ${{ github.repository }}
|
||||
NUMBER: ${{ github.event.issue.number }}
|
||||
ISSUE_AUTHOR: ${{ github.event.issue.user.login }}
|
||||
steps:
|
||||
- uses: dessant/support-requests@v4
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
support-label: 'support'
|
||||
issue-comment: >
|
||||
:wave: @{issue-author}, we use the issue tracker exclusively
|
||||
- name: Label added, comment and close issue
|
||||
if: github.event.action == 'labeled' && github.event.label.name == 'support'
|
||||
shell: bash
|
||||
env:
|
||||
BODY: >
|
||||
:wave: @${{ env.ISSUE_AUTHOR }}, we use the issue tracker exclusively
|
||||
for bug reports and feature requests. However, this issue appears
|
||||
to be a support request. Please use our support channels
|
||||
to get help with Jellyseerr.
|
||||
|
||||
- [Discord](https://discord.gg/ckbvBtDJgC)
|
||||
run: |
|
||||
retry() { n=0; until "$@"; do n=$((n+1)); [ $n -ge 3 ] && break; echo "retry $n: $*" >&2; sleep 2; done; }
|
||||
retry gh issue comment "$NUMBER" -R "$GH_REPO" -b "$BODY" || true
|
||||
retry gh issue close "$NUMBER" -R "$GH_REPO" || true
|
||||
gh issue lock "$NUMBER" -R "$GH_REPO" -r "off_topic" || true
|
||||
|
||||
close-issue: true
|
||||
lock-issue: true
|
||||
issue-lock-reason: 'off-topic'
|
||||
- name: Reopened or label removed, unlock issue
|
||||
if: github.event.action == 'unlabeled' && github.event.label.name == 'support'
|
||||
shell: bash
|
||||
run: |
|
||||
retry() { n=0; until "$@"; do n=$((n+1)); [ $n -ge 3 ] && break; echo "retry $n: $*" >&2; sleep 2; done; }
|
||||
retry gh issue reopen "$NUMBER" -R "$GH_REPO" || true
|
||||
gh issue unlock "$NUMBER" -R "$GH_REPO" || true
|
||||
|
||||
- name: Remove support label on manual reopen
|
||||
if: github.event.action == 'reopened'
|
||||
shell: bash
|
||||
run: |
|
||||
gh issue edit "$NUMBER" -R "$GH_REPO" --remove-label "support" || true
|
||||
gh issue unlock "$NUMBER" -R "$GH_REPO" || true
|
||||
|
||||
18
.github/workflows/test-docs-deploy.yml
vendored
18
.github/workflows/test-docs-deploy.yml
vendored
@@ -8,24 +8,32 @@ on:
|
||||
- 'docs/**'
|
||||
- 'gen-docs/**'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: docs-pr-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
test-deploy:
|
||||
name: Test deployment
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-24.04
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
persist-credentials: false
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20
|
||||
node-version-file: package.json
|
||||
|
||||
- name: Pnpm Setup
|
||||
uses: pnpm/action-setup@v4
|
||||
with:
|
||||
version: 9
|
||||
|
||||
- name: Get pnpm store directory
|
||||
shell: sh
|
||||
@@ -42,7 +50,7 @@ jobs:
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
cd gen-docs
|
||||
cd gen-docs
|
||||
pnpm install --frozen-lockfile
|
||||
|
||||
- name: Build website
|
||||
|
||||
@@ -9,7 +9,11 @@ cypress/config/settings.cypress.json
|
||||
# assets
|
||||
src/assets/
|
||||
public/
|
||||
!public/sw.js
|
||||
docs/
|
||||
!/public/
|
||||
/public/*
|
||||
!/public/sw.js
|
||||
|
||||
# helm charts
|
||||
**/charts
|
||||
|
||||
5
.vscode/settings.json
vendored
5
.vscode/settings.json
vendored
@@ -20,5 +20,8 @@
|
||||
"files.associations": {
|
||||
"globals.css": "tailwindcss"
|
||||
},
|
||||
"i18n-ally.localesPaths": ["src/i18n/locale"]
|
||||
"i18n-ally.localesPaths": [
|
||||
"src/i18n/locale"
|
||||
],
|
||||
"yaml.format.singleQuote": true
|
||||
}
|
||||
|
||||
@@ -2,6 +2,45 @@
|
||||
|
||||
All help is welcome and greatly appreciated! If you would like to contribute to the project, the following instructions should get you started...
|
||||
|
||||
## AI Assistance Notice
|
||||
|
||||
> [!IMPORTANT]
|
||||
>
|
||||
> If you are using **any kind of AI assistance** to contribute to Jellyseerr,
|
||||
> it must be disclosed in the pull request.
|
||||
|
||||
If you are using any kind of AI assistance while contributing to Jellyseerr,
|
||||
**this must be disclosed in the pull request**, along with the extent to
|
||||
which AI assistance was used (e.g. docs only vs. code generation).
|
||||
If PR responses are being generated by an AI, disclose that as well.
|
||||
As a small exception, trivial tab-completion doesn't need to be disclosed,
|
||||
so long as it is limited to single keywords or short phrases.
|
||||
|
||||
An example disclosure:
|
||||
|
||||
> This PR was written primarily by Claude Code.
|
||||
|
||||
Or a more detailed disclosure:
|
||||
|
||||
> I consulted ChatGPT to understand the codebase but the solution
|
||||
> was fully authored manually by myself.
|
||||
|
||||
Failure to disclose this is first and foremost rude to the human operators
|
||||
on the other end of the pull request, but it also makes it difficult to
|
||||
determine how much scrutiny to apply to the contribution.
|
||||
|
||||
In a perfect world, AI assistance would produce equal or higher quality
|
||||
work than any human. That isn't the world we live in today, and in most cases
|
||||
it's generating slop. I say this despite being a fan of and using them
|
||||
successfully myself (with heavy supervision)!
|
||||
|
||||
When using AI assistance, we expect contributors to understand the code
|
||||
that is produced and be able to answer critical questions about it. It
|
||||
isn't a maintainers job to review a PR so broken that it requires
|
||||
significant rework to be acceptable.
|
||||
|
||||
Please be respectful to maintainers and disclose AI assistance.
|
||||
|
||||
## Development
|
||||
|
||||
### Tools Required
|
||||
@@ -158,4 +197,4 @@ DB_TYPE="postgres" DB_USER=postgres DB_PASS=postgres pnpm migration:generate ser
|
||||
|
||||
## Attribution
|
||||
|
||||
This contribution guide was inspired by the [Next.js](https://github.com/vercel/next.js), [Radarr](https://github.com/Radarr/Radarr), and [Overseerr](https://github.com/sct/Overseerr) contribution guides.
|
||||
This contribution guide was inspired by the [Next.js](https://github.com/vercel/next.js), [Radarr](https://github.com/Radarr/Radarr), [Overseerr](https://github.com/sct/Overseerr) and [Ghostty](https://github.com/ghostty-org/ghostty) contribution guides.
|
||||
|
||||
35
Dockerfile
35
Dockerfile
@@ -2,8 +2,11 @@ FROM node:22-alpine AS BUILD_IMAGE
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
ARG SOURCE_DATE_EPOCH
|
||||
ARG TARGETPLATFORM
|
||||
ARG COMMIT_TAG
|
||||
ENV TARGETPLATFORM=${TARGETPLATFORM:-linux/amd64}
|
||||
ENV COMMIT_TAG=${COMMIT_TAG}
|
||||
|
||||
RUN \
|
||||
case "${TARGETPLATFORM}" in \
|
||||
@@ -14,47 +17,27 @@ RUN \
|
||||
;; \
|
||||
esac
|
||||
|
||||
RUN npm install --global pnpm@9
|
||||
RUN npm install --global pnpm@10
|
||||
|
||||
COPY package.json pnpm-lock.yaml postinstall-win.js ./
|
||||
RUN CYPRESS_INSTALL_BINARY=0 pnpm install --frozen-lockfile
|
||||
|
||||
COPY . ./
|
||||
|
||||
ARG COMMIT_TAG
|
||||
ENV COMMIT_TAG=${COMMIT_TAG}
|
||||
|
||||
RUN pnpm build
|
||||
|
||||
# remove development dependencies
|
||||
RUN pnpm prune --prod --ignore-scripts
|
||||
|
||||
RUN rm -rf src server .next/cache charts gen-docs docs
|
||||
|
||||
RUN touch config/DOCKER
|
||||
|
||||
RUN echo "{\"commitTag\": \"${COMMIT_TAG}\"}" > committag.json
|
||||
|
||||
RUN pnpm prune --prod --ignore-scripts && \
|
||||
rm -rf src server .next/cache charts gen-docs docs && \
|
||||
touch config/DOCKER && \
|
||||
echo "{\"commitTag\": \"${COMMIT_TAG}\"}" > committag.json
|
||||
|
||||
FROM node:22-alpine
|
||||
|
||||
# OCI Meta information
|
||||
ARG BUILD_DATE
|
||||
ARG BUILD_VERSION
|
||||
LABEL \
|
||||
org.opencontainers.image.authors="Fallenbagel" \
|
||||
org.opencontainers.image.source="https://github.com/fallenbagel/jellyseerr" \
|
||||
org.opencontainers.image.created=${BUILD_DATE} \
|
||||
org.opencontainers.image.version=${BUILD_VERSION} \
|
||||
org.opencontainers.image.title="Jellyseerr" \
|
||||
org.opencontainers.image.description="Open-source media request and discovery manager for Jellyfin, Plex, and Emby." \
|
||||
org.opencontainers.image.licenses="MIT"
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
RUN apk add --no-cache tzdata tini && rm -rf /tmp/*
|
||||
|
||||
RUN npm install -g pnpm@9
|
||||
RUN npm install -g pnpm@10
|
||||
|
||||
# copy from build image
|
||||
COPY --from=BUILD_IMAGE /app ./
|
||||
|
||||
@@ -3,7 +3,7 @@ FROM node:22-alpine
|
||||
COPY . /app
|
||||
WORKDIR /app
|
||||
|
||||
RUN npm install --global pnpm@9
|
||||
RUN npm install --global pnpm@10
|
||||
|
||||
RUN pnpm install
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<a href="http://translate.jellyseerr.dev/engage/jellyseerr/"><img src="http://translate.jellyseerr.dev/widget/jellyseerr/jellyseerr-frontend/svg-badge.svg" alt="Translation status" /></a>
|
||||
<a href="https://github.com/fallenbagel/jellyseerr/blob/develop/LICENSE"><img alt="GitHub" src="https://img.shields.io/github/license/fallenbagel/jellyseerr"></a>
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
||||
<a href="#contributors-"><img alt="All Contributors" src="https://img.shields.io/badge/all_contributors-69-orange.svg"/></a>
|
||||
<a href="#contributors-"><img alt="All Contributors" src="https://img.shields.io/badge/all_contributors-71-orange.svg"/></a>
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
||||
|
||||
**Jellyseerr** is a free and open source software application for managing requests for your media library. It integrates with the media server of your choice: [Jellyfin](https://jellyfin.org), [Plex](https://plex.tv), and [Emby](https://emby.media/). In addition, it integrates with your existing services, such as **[Sonarr](https://sonarr.tv/)**, **[Radarr](https://radarr.video/)**.
|
||||
@@ -173,6 +173,10 @@ Thanks goes to these wonderful people from Overseerr ([emoji key](https://allcon
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/JamsRepos"><img src="https://avatars.githubusercontent.com/u/1347620?v=4?s=100" width="100px;" alt="Jam"/><br /><sub><b>Jam</b></sub></a><br /><a href="https://github.com/fallenbagel/jellyseerr/commits?author=JamsRepos" title="Code">💻</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="http://www.joelowrance.com"><img src="https://avatars.githubusercontent.com/u/63176?v=4?s=100" width="100px;" alt="Joe Lowrance"/><br /><sub><b>Joe Lowrance</b></sub></a><br /><a href="https://github.com/fallenbagel/jellyseerr/commits?author=joelowrance" title="Code">💻</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/0xSysR3ll"><img src="https://avatars.githubusercontent.com/u/31414959?v=4?s=100" width="100px;" alt="0xsysr3ll"/><br /><sub><b>0xsysr3ll</b></sub></a><br /><a href="https://github.com/fallenbagel/jellyseerr/commits?author=0xSysR3ll" title="Code">💻</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://sudo-kraken.github.io/docs/"><img src="https://avatars.githubusercontent.com/u/53116754?v=4?s=100" width="100px;" alt="Joe Harrison"/><br /><sub><b>Joe Harrison</b></sub></a><br /><a href="#infra-sudo-kraken" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/ale183"><img src="https://avatars.githubusercontent.com/u/8809439?v=4?s=100" width="100px;" alt="ale183"/><br /><sub><b>ale183</b></sub></a><br /><a href="https://github.com/fallenbagel/jellyseerr/commits?author=ale183" title="Code">💻</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
@@ -3,7 +3,7 @@ kubeVersion: ">=1.23.0-0"
|
||||
name: jellyseerr-chart
|
||||
description: Jellyseerr helm chart for Kubernetes
|
||||
type: application
|
||||
version: 2.6.2
|
||||
version: 2.7.0
|
||||
appVersion: "2.7.3"
|
||||
maintainers:
|
||||
- name: Jellyseerr
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# jellyseerr-chart
|
||||
|
||||
  
|
||||
  
|
||||
|
||||
Jellyseerr helm chart for Kubernetes
|
||||
|
||||
@@ -20,6 +20,17 @@ Jellyseerr helm chart for Kubernetes
|
||||
|
||||
Kubernetes: `>=1.23.0-0`
|
||||
|
||||
## Update Notes
|
||||
|
||||
### Updating to 2.7.0
|
||||
|
||||
Jellyseerr is a stateful application and it is not designed to have multiple replicas. In version 2.7.0 we address this by:
|
||||
|
||||
- replacing `Deployment` with `StatefulSet`
|
||||
- removing `replicaCount` value
|
||||
|
||||
If `replicaCount` value was used - remove it. Helm update should work fine after that.
|
||||
|
||||
## Values
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
@@ -55,7 +66,6 @@ Kubernetes: `>=1.23.0-0`
|
||||
| probes.livenessProbe | object | `{}` | Configure liveness probe |
|
||||
| probes.readinessProbe | object | `{}` | Configure readiness probe |
|
||||
| probes.startupProbe | string | `nil` | Configure startup probe |
|
||||
| replicaCount | int | `1` | |
|
||||
| resources | object | `{}` | |
|
||||
| securityContext | object | `{}` | |
|
||||
| service.port | int | `80` | |
|
||||
@@ -64,7 +74,6 @@ Kubernetes: `>=1.23.0-0`
|
||||
| serviceAccount.automount | bool | `true` | Automatically mount a ServiceAccount's API credentials? |
|
||||
| serviceAccount.create | bool | `true` | Specifies whether a service account should be created |
|
||||
| serviceAccount.name | string | `""` | If not set and create is true, a name is generated using the fullname template |
|
||||
| strategy | object | `{"type":"Recreate"}` | Deployment strategy |
|
||||
| tolerations | list | `[]` | |
|
||||
| volumeMounts | list | `[]` | Additional volumeMounts on the output Deployment definition. |
|
||||
| volumes | list | `[]` | Additional volumes on the output Deployment definition. |
|
||||
| volumeMounts | list | `[]` | Additional volumeMounts on the output StatefulSet definition. |
|
||||
| volumes | list | `[]` | Additional volumes on the output StatefulSet definition. |
|
||||
|
||||
@@ -14,4 +14,15 @@
|
||||
|
||||
{{ template "chart.requirementsSection" . }}
|
||||
|
||||
## Update Notes
|
||||
|
||||
### Updating to 2.7.0
|
||||
|
||||
Jellyseerr is a stateful application and it is not designed to have multiple replicas. In version 2.7.0 we address this by:
|
||||
|
||||
- replacing `Deployment` with `StatefulSet`
|
||||
- removing `replicaCount` value
|
||||
|
||||
If `replicaCount` value was used - remove it. Helm update should work fine after that.
|
||||
|
||||
{{ template "chart.valuesSection" . }}
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
kind: StatefulSet
|
||||
metadata:
|
||||
name: {{ include "jellyseerr.fullname" . }}
|
||||
labels:
|
||||
{{- include "jellyseerr.labels" . | nindent 4 }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
strategy:
|
||||
type: {{ .Values.strategy.type }}
|
||||
serviceName: {{ include "jellyseerr.fullname" . }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "jellyseerr.selectorLabels" . | nindent 6 }}
|
||||
@@ -1,5 +1,3 @@
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
registry: ghcr.io
|
||||
repository: fallenbagel/jellyseerr
|
||||
@@ -12,10 +10,6 @@ imagePullSecrets: []
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
|
||||
# -- Deployment strategy
|
||||
strategy:
|
||||
type: Recreate
|
||||
|
||||
# Liveness / Readiness / Startup Probes
|
||||
probes:
|
||||
# -- Configure liveness probe
|
||||
@@ -115,14 +109,14 @@ resources: {}
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
# -- Additional volumes on the output Deployment definition.
|
||||
# -- Additional volumes on the output StatefulSet definition.
|
||||
volumes: []
|
||||
# - name: foo
|
||||
# secret:
|
||||
# secretName: mysecret
|
||||
# optional: false
|
||||
|
||||
# -- Additional volumeMounts on the output Deployment definition.
|
||||
# -- Additional volumeMounts on the output StatefulSet definition.
|
||||
volumeMounts: []
|
||||
# - name: foo
|
||||
# mountPath: "/etc/foo"
|
||||
|
||||
@@ -15,7 +15,7 @@ import TabItem from '@theme/TabItem';
|
||||
|
||||
### Prerequisites
|
||||
- [Node.js 22.x](https://nodejs.org/en/download/)
|
||||
- [Pnpm 9.x](https://pnpm.io/installation)
|
||||
- [Pnpm 10.x](https://pnpm.io/installation)
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
## Unix (Linux, macOS)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Kubernetes
|
||||
title: Kubernetes (Advanced)
|
||||
description: Install Jellyseerr in Kubernetes
|
||||
sidebar_position: 5
|
||||
---
|
||||
|
||||
24
gen-docs/blog/2025-09-29-introducing-jellyseerr-blog.md
Normal file
24
gen-docs/blog/2025-09-29-introducing-jellyseerr-blog.md
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
title: Welcome to the Jellyseerr Blog
|
||||
description: The official Jellyseerr blog for release notes, technical updates, and community news.
|
||||
slug: welcome
|
||||
authors: [fallenbagel, gauthier-th]
|
||||
tags: [announcement, jellyseerr, blog]
|
||||
image: https://raw.githubusercontent.com/fallenbagel/jellyseerr/refs/heads/develop/gen-docs/static/img/logo.svg
|
||||
hide_table_of_contents: false
|
||||
---
|
||||
|
||||
We are pleased to introduce the official Jellyseerr blog.
|
||||
|
||||
This space will serve as the central place for:
|
||||
|
||||
- Release announcements
|
||||
- Updates on new features and improvements
|
||||
- Technical articles, such as details on our [**DNS caching package**](https://github.com/jellyseerr/dns-caching) and other enhancements
|
||||
- Community-related news
|
||||
|
||||
<!--truncate-->
|
||||
|
||||
Our goal is to keep the community informed and provide deeper insights into the ongoing development of Jellyseerr.
|
||||
|
||||
Thank you for being part of the Jellyseerr project. More updates will follow soon.
|
||||
21
gen-docs/blog/authors.yml
Normal file
21
gen-docs/blog/authors.yml
Normal file
@@ -0,0 +1,21 @@
|
||||
fallenbagel:
|
||||
name: Fallenbagel
|
||||
page: true
|
||||
title: Developer & Maintainer of Jellyseerr
|
||||
description: Core Maintainer & Developer of Jellyseerr | Full-Stack Software Engineer | MSc Software Engineering Candidate.
|
||||
url: https://github.com/fallenbagel
|
||||
image_url: https://github.com/fallenbagel.png
|
||||
email: hello@fallenbagel.com
|
||||
socials:
|
||||
github: fallenbagel
|
||||
|
||||
gauthier-th:
|
||||
name: Gauthier
|
||||
page: true
|
||||
title: Co-Developer & Co-Maintainer of Jellyseerr
|
||||
description: Co-Maintainer & Developer of Jellyseerr | PhD Student in AI at ICB, Dijon
|
||||
url: https://gauthierth.fr
|
||||
image_url: https://github.com/gauthier-th.png
|
||||
email: mail@gauthierth.fr
|
||||
socials:
|
||||
github: gauthier-th
|
||||
@@ -34,7 +34,6 @@ const config: Config = {
|
||||
editUrl:
|
||||
'https://github.com/fallenbagel/jellyseerr/edit/develop/docs/',
|
||||
},
|
||||
blog: false,
|
||||
pages: false,
|
||||
theme: {
|
||||
customCss: './src/css/custom.css',
|
||||
@@ -69,6 +68,11 @@ const config: Config = {
|
||||
src: 'img/logo.svg',
|
||||
},
|
||||
items: [
|
||||
{
|
||||
to: 'blog',
|
||||
label: 'Blog',
|
||||
position: 'right',
|
||||
},
|
||||
{
|
||||
href: 'https://github.com/fallenbagel/jellyseerr',
|
||||
label: 'GitHub',
|
||||
@@ -88,6 +92,19 @@ const config: Config = {
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Project',
|
||||
items: [
|
||||
{
|
||||
label: 'Blog',
|
||||
to: '/blog',
|
||||
},
|
||||
{
|
||||
label: 'GitHub',
|
||||
href: 'https://github.com/fallenbagel/jellyseerr',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Community',
|
||||
items: [
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
"name": "gen-docs",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"packageManager": "pnpm@10.17.1",
|
||||
"scripts": {
|
||||
"docusaurus": "docusaurus",
|
||||
"start": "docusaurus start",
|
||||
@@ -15,9 +16,9 @@
|
||||
"typecheck": "tsc"
|
||||
},
|
||||
"dependencies": {
|
||||
"@docusaurus/core": "3.4.0",
|
||||
"@docusaurus/preset-classic": "3.4.0",
|
||||
"@easyops-cn/docusaurus-search-local": "^0.44.2",
|
||||
"@docusaurus/core": "3.9.1",
|
||||
"@docusaurus/preset-classic": "3.9.1",
|
||||
"@easyops-cn/docusaurus-search-local": "^0.52.1",
|
||||
"@mdx-js/react": "^3.0.0",
|
||||
"clsx": "^2.0.0",
|
||||
"prism-react-renderer": "^2.3.0",
|
||||
@@ -26,14 +27,11 @@
|
||||
"tailwindcss": "^3.4.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@docusaurus/module-type-aliases": "3.4.0",
|
||||
"@docusaurus/tsconfig": "3.4.0",
|
||||
"@docusaurus/types": "3.4.0",
|
||||
"@docusaurus/module-type-aliases": "3.9.1",
|
||||
"@docusaurus/tsconfig": "3.9.1",
|
||||
"@docusaurus/types": "3.9.1",
|
||||
"typescript": "~5.2.2"
|
||||
},
|
||||
"resolutions": {
|
||||
"prismjs": "PrismJS/prism"
|
||||
},
|
||||
"browserslist": {
|
||||
"production": [
|
||||
">0.5%",
|
||||
|
||||
8764
gen-docs/pnpm-lock.yaml
generated
8764
gen-docs/pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
@@ -1451,6 +1451,9 @@ components:
|
||||
type: string
|
||||
jsonPayload:
|
||||
type: string
|
||||
supportVariables:
|
||||
type: boolean
|
||||
example: false
|
||||
TelegramSettings:
|
||||
type: object
|
||||
properties:
|
||||
@@ -5195,6 +5198,12 @@ paths:
|
||||
schema:
|
||||
type: string
|
||||
example: 1,2
|
||||
- in: query
|
||||
name: excludeKeywords
|
||||
schema:
|
||||
type: string
|
||||
example: 3,4
|
||||
description: Comma-separated list of keyword IDs to exclude from results
|
||||
- in: query
|
||||
name: sortBy
|
||||
schema:
|
||||
@@ -5515,6 +5524,12 @@ paths:
|
||||
schema:
|
||||
type: string
|
||||
example: 1,2
|
||||
- in: query
|
||||
name: excludeKeywords
|
||||
schema:
|
||||
type: string
|
||||
example: 3,4
|
||||
description: Comma-separated list of keyword IDs to exclude from results
|
||||
- in: query
|
||||
name: sortBy
|
||||
schema:
|
||||
@@ -6138,7 +6153,7 @@ paths:
|
||||
get:
|
||||
summary: Gets request counts
|
||||
description: |
|
||||
Returns the number of pending and approved requests.
|
||||
Returns the number of requests by status including pending, approved, available, and completed requests.
|
||||
tags:
|
||||
- request
|
||||
responses:
|
||||
@@ -6165,6 +6180,8 @@ paths:
|
||||
type: number
|
||||
available:
|
||||
type: number
|
||||
completed:
|
||||
type: number
|
||||
/request/{requestId}:
|
||||
get:
|
||||
summary: Get MediaRequest
|
||||
|
||||
35
package.json
35
package.json
@@ -2,6 +2,7 @@
|
||||
"name": "jellyseerr",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"packageManager": "pnpm@10.17.1",
|
||||
"scripts": {
|
||||
"preinstall": "npx only-allow pnpm",
|
||||
"postinstall": "node postinstall-win.js",
|
||||
@@ -57,7 +58,7 @@
|
||||
"cronstrue": "2.23.0",
|
||||
"date-fns": "2.29.3",
|
||||
"dayjs": "1.11.7",
|
||||
"dns-caching": "^0.2.5",
|
||||
"dns-caching": "^0.2.7",
|
||||
"email-templates": "12.0.1",
|
||||
"email-validator": "2.0.4",
|
||||
"express": "4.21.2",
|
||||
@@ -116,11 +117,8 @@
|
||||
"zod": "3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@codedependant/semantic-release-docker": "^5.1.0",
|
||||
"@commitlint/cli": "17.4.4",
|
||||
"@commitlint/config-conventional": "17.4.4",
|
||||
"@semantic-release/changelog": "6.0.3",
|
||||
"@semantic-release/git": "10.0.1",
|
||||
"@tailwindcss/aspect-ratio": "0.4.2",
|
||||
"@tailwindcss/forms": "0.5.10",
|
||||
"@tailwindcss/typography": "0.5.16",
|
||||
@@ -170,7 +168,6 @@
|
||||
"prettier": "2.8.4",
|
||||
"prettier-plugin-organize-imports": "3.2.2",
|
||||
"prettier-plugin-tailwindcss": "0.2.3",
|
||||
"semantic-release": "24.2.7",
|
||||
"tailwindcss": "3.2.7",
|
||||
"ts-node": "10.9.1",
|
||||
"tsc-alias": "1.8.2",
|
||||
@@ -179,7 +176,7 @@
|
||||
},
|
||||
"engines": {
|
||||
"node": "^22.0.0",
|
||||
"pnpm": "^9.0.0"
|
||||
"pnpm": "^10.0.0"
|
||||
},
|
||||
"overrides": {
|
||||
"sqlite3/node-gyp": "8.4.1",
|
||||
@@ -208,28 +205,12 @@
|
||||
"plugins": [
|
||||
"@semantic-release/commit-analyzer",
|
||||
"@semantic-release/release-notes-generator",
|
||||
[
|
||||
"@semantic-release/changelog",
|
||||
{
|
||||
"changelogFile": "CHANGELOG.md"
|
||||
}
|
||||
],
|
||||
"@semantic-release/npm",
|
||||
[
|
||||
"@semantic-release/git",
|
||||
{
|
||||
"assets": [
|
||||
"package.json",
|
||||
"CHANGELOG.md"
|
||||
],
|
||||
"message": "chore(release): ${nextRelease.version}"
|
||||
}
|
||||
],
|
||||
[
|
||||
"@codedependant/semantic-release-docker",
|
||||
{
|
||||
"dockerArgs": {
|
||||
"COMMIT_TAG": "$GIT_SHA"
|
||||
"COMMIT_TAG": "${GITHUB_SHA}"
|
||||
},
|
||||
"dockerLogin": false,
|
||||
"dockerProject": "fallenbagel",
|
||||
@@ -250,7 +231,7 @@
|
||||
"@codedependant/semantic-release-docker",
|
||||
{
|
||||
"dockerArgs": {
|
||||
"COMMIT_TAG": "$GIT_SHA"
|
||||
"COMMIT_TAG": "${GITHUB_SHA}"
|
||||
},
|
||||
"dockerLogin": false,
|
||||
"dockerRegistry": "ghcr.io",
|
||||
@@ -283,5 +264,11 @@
|
||||
"@codedependant/semantic-release-docker",
|
||||
"@semantic-release/github"
|
||||
]
|
||||
},
|
||||
"pnpm": {
|
||||
"onlyBuiltDependencies": [
|
||||
"sqlite3",
|
||||
"bcrypt"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
1887
pnpm-lock.yaml
generated
1887
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
@@ -48,6 +48,7 @@ export interface AnidbItem {
|
||||
tvdbId?: number;
|
||||
tmdbId?: number;
|
||||
imdbId?: string;
|
||||
tvdbSeason?: number;
|
||||
}
|
||||
|
||||
class AnimeListMapping {
|
||||
@@ -97,6 +98,7 @@ class AnimeListMapping {
|
||||
tvdbId: anime.$.defaulttvdbseason === '0' ? undefined : tvdbId,
|
||||
tmdbId: tmdbId,
|
||||
imdbId: imdbIds[0], // this is used for one AniDB -> one imdb movie mapping
|
||||
tvdbSeason: Number(anime.$.defaulttvdbseason),
|
||||
};
|
||||
|
||||
if (tvdbId) {
|
||||
|
||||
@@ -103,6 +103,7 @@ export interface JellyfinLibraryItemExtended extends JellyfinLibraryItem {
|
||||
Tmdb?: string;
|
||||
Imdb?: string;
|
||||
Tvdb?: string;
|
||||
AniDB?: string;
|
||||
};
|
||||
MediaSources?: JellyfinMediaSource[];
|
||||
Width?: number;
|
||||
|
||||
@@ -113,7 +113,7 @@ interface MetadataResponse {
|
||||
ratingKey: string;
|
||||
type: 'movie' | 'show';
|
||||
title: string;
|
||||
Guid: {
|
||||
Guid?: {
|
||||
id: `imdb://tt${number}` | `tmdb://${number}` | `tvdb://${number}`;
|
||||
}[];
|
||||
}[];
|
||||
@@ -277,9 +277,18 @@ class PlexTvAPI extends ExternalAPI {
|
||||
}> {
|
||||
try {
|
||||
const watchlistCache = cacheManager.getCache('plexwatchlist');
|
||||
logger.debug('Fetching watchlist from Plex.TV', {
|
||||
offset,
|
||||
size,
|
||||
label: 'Plex.TV Metadata API',
|
||||
});
|
||||
let cachedWatchlist = watchlistCache.data.get<PlexWatchlistCache>(
|
||||
this.authToken
|
||||
);
|
||||
logger.debug(`Found cached watchlist: ${!!cachedWatchlist}`, {
|
||||
cachedWatchlist,
|
||||
label: 'Plex.TV Metadata API',
|
||||
});
|
||||
|
||||
const response = await this.axios.get<WatchlistResponse>(
|
||||
'/library/sections/watchlist/all',
|
||||
@@ -296,6 +305,10 @@ class PlexTvAPI extends ExternalAPI {
|
||||
}
|
||||
);
|
||||
|
||||
logger.debug(`Watchlist fetch returned status ${response.status}`, {
|
||||
label: 'Plex.TV Metadata API',
|
||||
});
|
||||
|
||||
// If we don't recieve HTTP 304, the watchlist has been updated and we need to update the cache.
|
||||
if (response.status >= 200 && response.status <= 299) {
|
||||
cachedWatchlist = {
|
||||
@@ -312,19 +325,32 @@ class PlexTvAPI extends ExternalAPI {
|
||||
const watchlistDetails = await Promise.all(
|
||||
(cachedWatchlist?.response.MediaContainer.Metadata ?? []).map(
|
||||
async (watchlistItem) => {
|
||||
const detailedResponse = await this.getRolling<MetadataResponse>(
|
||||
`/library/metadata/${watchlistItem.ratingKey}`,
|
||||
{
|
||||
baseURL: 'https://discover.provider.plex.tv',
|
||||
let detailedResponse: MetadataResponse;
|
||||
try {
|
||||
detailedResponse = await this.getRolling<MetadataResponse>(
|
||||
`/library/metadata/${watchlistItem.ratingKey}`,
|
||||
{
|
||||
baseURL: 'https://discover.provider.plex.tv',
|
||||
}
|
||||
);
|
||||
} catch (e) {
|
||||
if (e.response?.status === 404) {
|
||||
logger.warn(
|
||||
`Item with ratingKey ${watchlistItem.ratingKey} not found, it may have been removed from the server.`,
|
||||
{ label: 'Plex.TV Metadata API' }
|
||||
);
|
||||
return null;
|
||||
} else {
|
||||
throw e;
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
const metadata = detailedResponse.MediaContainer.Metadata[0];
|
||||
|
||||
const tmdbString = metadata.Guid.find((guid) =>
|
||||
const tmdbString = metadata.Guid?.find((guid) =>
|
||||
guid.id.startsWith('tmdb')
|
||||
);
|
||||
const tvdbString = metadata.Guid.find((guid) =>
|
||||
const tvdbString = metadata.Guid?.find((guid) =>
|
||||
guid.id.startsWith('tvdb')
|
||||
);
|
||||
|
||||
@@ -343,7 +369,9 @@ class PlexTvAPI extends ExternalAPI {
|
||||
)
|
||||
);
|
||||
|
||||
const filteredList = watchlistDetails.filter((detail) => detail.tmdbId);
|
||||
const filteredList = watchlistDetails.filter(
|
||||
(detail) => detail?.tmdbId
|
||||
) as PlexWatchlistItem[];
|
||||
|
||||
return {
|
||||
offset,
|
||||
|
||||
@@ -198,6 +198,25 @@ class ServarrBase<QueueItemAppendT> extends ExternalAPI {
|
||||
}
|
||||
};
|
||||
|
||||
public renameTag = async ({
|
||||
id,
|
||||
label,
|
||||
}: {
|
||||
id: number;
|
||||
label: string;
|
||||
}): Promise<Tag> => {
|
||||
try {
|
||||
const response = await this.axios.put<Tag>(`/tag/${id}`, {
|
||||
id,
|
||||
label,
|
||||
});
|
||||
|
||||
return response.data;
|
||||
} catch (e) {
|
||||
throw new Error(`[${this.apiName}] Failed to rename tag: ${e.message}`);
|
||||
}
|
||||
};
|
||||
|
||||
async refreshMonitoredDownloads(): Promise<void> {
|
||||
await this.runCommand('RefreshMonitoredDownloads', {});
|
||||
}
|
||||
|
||||
@@ -86,6 +86,7 @@ interface DiscoverMovieOptions {
|
||||
genre?: string;
|
||||
studio?: string;
|
||||
keywords?: string;
|
||||
excludeKeywords?: string;
|
||||
sortBy?: SortOptions;
|
||||
watchRegion?: string;
|
||||
watchProviders?: string;
|
||||
@@ -111,6 +112,7 @@ interface DiscoverTvOptions {
|
||||
genre?: string;
|
||||
network?: number;
|
||||
keywords?: string;
|
||||
excludeKeywords?: string;
|
||||
sortBy?: SortOptions;
|
||||
watchRegion?: string;
|
||||
watchProviders?: string;
|
||||
@@ -495,6 +497,7 @@ class TheMovieDb extends ExternalAPI implements TvShowProvider {
|
||||
genre,
|
||||
studio,
|
||||
keywords,
|
||||
excludeKeywords,
|
||||
withRuntimeGte,
|
||||
withRuntimeLte,
|
||||
voteAverageGte,
|
||||
@@ -545,6 +548,7 @@ class TheMovieDb extends ExternalAPI implements TvShowProvider {
|
||||
with_genres: genre,
|
||||
with_companies: studio,
|
||||
with_keywords: keywords,
|
||||
without_keywords: excludeKeywords,
|
||||
'with_runtime.gte': withRuntimeGte,
|
||||
'with_runtime.lte': withRuntimeLte,
|
||||
'vote_average.gte': voteAverageGte,
|
||||
@@ -577,6 +581,7 @@ class TheMovieDb extends ExternalAPI implements TvShowProvider {
|
||||
genre,
|
||||
network,
|
||||
keywords,
|
||||
excludeKeywords,
|
||||
withRuntimeGte,
|
||||
withRuntimeLte,
|
||||
voteAverageGte,
|
||||
@@ -628,6 +633,7 @@ class TheMovieDb extends ExternalAPI implements TvShowProvider {
|
||||
with_genres: genre,
|
||||
with_networks: network,
|
||||
with_keywords: keywords,
|
||||
without_keywords: excludeKeywords,
|
||||
'with_runtime.gte': withRuntimeGte,
|
||||
'with_runtime.lte': withRuntimeLte,
|
||||
'vote_average.gte': voteAverageGte,
|
||||
|
||||
@@ -82,7 +82,7 @@ app
|
||||
}
|
||||
|
||||
// Add DNS caching
|
||||
if (settings.network.dnsCache) {
|
||||
if (settings.network.dnsCache?.enabled) {
|
||||
initializeDnsCache({
|
||||
forceMinTtl: settings.network.dnsCache.forceMinTtl,
|
||||
forceMaxTtl: settings.network.dnsCache.forceMaxTtl,
|
||||
|
||||
@@ -177,9 +177,27 @@ class WebhookAgent
|
||||
subject: payload.subject,
|
||||
});
|
||||
|
||||
let webhookUrl = settings.options.webhookUrl;
|
||||
|
||||
if (settings.options.supportVariables) {
|
||||
Object.keys(KeyMap).forEach((keymapKey) => {
|
||||
const keymapValue = KeyMap[keymapKey as keyof typeof KeyMap];
|
||||
const variableValue =
|
||||
type === Notification.TEST_NOTIFICATION
|
||||
? 'test'
|
||||
: typeof keymapValue === 'function'
|
||||
? keymapValue(payload, type)
|
||||
: get(payload, keymapValue) || 'test';
|
||||
webhookUrl = webhookUrl.replace(
|
||||
new RegExp(`{{${keymapKey}}}`, 'g'),
|
||||
encodeURIComponent(variableValue)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
try {
|
||||
await axios.post(
|
||||
settings.options.webhookUrl,
|
||||
webhookUrl,
|
||||
this.buildPayload(type, payload),
|
||||
settings.options.authHeader
|
||||
? {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import animeList from '@server/api/animelist';
|
||||
import type { JellyfinLibraryItem } from '@server/api/jellyfin';
|
||||
import JellyfinAPI from '@server/api/jellyfin';
|
||||
import { getMetadataProvider } from '@server/api/metadata';
|
||||
@@ -45,6 +46,7 @@ class JellyfinScanner {
|
||||
private enable4kMovie = false;
|
||||
private enable4kShow = false;
|
||||
private asyncLock = new AsyncLock();
|
||||
private processedAnidbSeason: Map<number, Map<number, number>>;
|
||||
|
||||
constructor({ isRecentOnly }: { isRecentOnly?: boolean } = {}) {
|
||||
this.tmdb = new TheMovieDb();
|
||||
@@ -66,7 +68,7 @@ class JellyfinScanner {
|
||||
const mediaRepository = getRepository(Media);
|
||||
|
||||
try {
|
||||
const metadata = await this.jfClient.getItemData(jellyfinitem.Id);
|
||||
let metadata = await this.jfClient.getItemData(jellyfinitem.Id);
|
||||
const newMedia = new Media();
|
||||
|
||||
if (!metadata?.Id) {
|
||||
@@ -77,8 +79,18 @@ class JellyfinScanner {
|
||||
return;
|
||||
}
|
||||
|
||||
const anidbId = Number(metadata.ProviderIds.AniDB ?? null);
|
||||
|
||||
newMedia.tmdbId = Number(metadata.ProviderIds.Tmdb ?? null);
|
||||
newMedia.imdbId = metadata.ProviderIds.Imdb;
|
||||
|
||||
// We use anidb only if we have the anidbId and nothing else
|
||||
if (anidbId && !newMedia.imdbId && !newMedia.tmdbId) {
|
||||
const result = animeList.getFromAnidbId(anidbId);
|
||||
newMedia.tmdbId = Number(result?.tmdbId ?? null);
|
||||
newMedia.imdbId = result?.imdbId;
|
||||
}
|
||||
|
||||
if (newMedia.imdbId && !isNaN(newMedia.tmdbId)) {
|
||||
const tmdbMovie = await this.tmdb.getMediaByImdbId({
|
||||
imdbId: newMedia.imdbId,
|
||||
@@ -89,6 +101,40 @@ class JellyfinScanner {
|
||||
throw new Error('Unable to find TMDb ID');
|
||||
}
|
||||
|
||||
// With AniDB we can have mixed libraries with movies in a "show" library
|
||||
// We take the first episode of the first season (the movie) and use it to
|
||||
// get more information, like the MediaSource
|
||||
if (anidbId && metadata.Type === 'Series') {
|
||||
const season = (await this.jfClient.getSeasons(jellyfinitem.Id)).find(
|
||||
(md) => {
|
||||
return md.IndexNumber === 1;
|
||||
}
|
||||
);
|
||||
if (!season) {
|
||||
this.log('No season found for anidb movie', 'debug', {
|
||||
jellyfinitem,
|
||||
});
|
||||
return;
|
||||
}
|
||||
const episodes = await this.jfClient.getEpisodes(
|
||||
jellyfinitem.Id,
|
||||
season.Id
|
||||
);
|
||||
if (!episodes[0]) {
|
||||
this.log('No episode found for anidb movie', 'debug', {
|
||||
jellyfinitem,
|
||||
});
|
||||
return;
|
||||
}
|
||||
metadata = await this.jfClient.getItemData(episodes[0].Id);
|
||||
if (!metadata) {
|
||||
this.log('No metadata found for anidb movie', 'debug', {
|
||||
jellyfinitem,
|
||||
});
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
const has4k = metadata.MediaSources?.some((MediaSource) => {
|
||||
return MediaSource.MediaStreams.filter(
|
||||
(MediaStream) => MediaStream.Type === 'Video'
|
||||
@@ -106,6 +152,12 @@ class JellyfinScanner {
|
||||
});
|
||||
|
||||
await this.asyncLock.dispatch(newMedia.tmdbId, async () => {
|
||||
if (!metadata) {
|
||||
// this will never execute, but typescript thinks somebody could reset tvShow from
|
||||
// outer scope back to null before this async gets called
|
||||
return;
|
||||
}
|
||||
|
||||
const existing = await this.getExisting(
|
||||
newMedia.tmdbId,
|
||||
MediaType.MOVIE
|
||||
@@ -274,6 +326,28 @@ class JellyfinScanner {
|
||||
});
|
||||
}
|
||||
}
|
||||
let tvdbSeasonFromAnidb: number | undefined;
|
||||
if (!tvShow && metadata.ProviderIds.AniDB) {
|
||||
const anidbId = Number(metadata.ProviderIds.AniDB);
|
||||
const result = animeList.getFromAnidbId(anidbId);
|
||||
tvdbSeasonFromAnidb = result?.tvdbSeason;
|
||||
if (result?.tvdbId) {
|
||||
try {
|
||||
tvShow = await this.tmdb.getShowByTvdbId({
|
||||
tvdbId: result.tvdbId,
|
||||
});
|
||||
} catch {
|
||||
this.log('Unable to find AniDB ID for this title.', 'debug', {
|
||||
jellyfinitem,
|
||||
});
|
||||
}
|
||||
}
|
||||
// With AniDB we can have mixed libraries with movies in a "show" library
|
||||
else if (result?.imdbId || result?.tmdbId) {
|
||||
await this.processMovie(jellyfinitem);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (tvShow) {
|
||||
await this.asyncLock.dispatch(tvShow.id, async () => {
|
||||
@@ -302,9 +376,20 @@ class JellyfinScanner {
|
||||
|
||||
for (const season of seasons) {
|
||||
const JellyfinSeasons = await this.jfClient.getSeasons(Id);
|
||||
const matchedJellyfinSeason = JellyfinSeasons.find(
|
||||
(md) => Number(md.IndexNumber) === season.season_number
|
||||
);
|
||||
const matchedJellyfinSeason = JellyfinSeasons.find((md) => {
|
||||
if (tvdbSeasonFromAnidb) {
|
||||
// In AniDB we don't have the concept of seasons,
|
||||
// we have multiple shows with only Season 1 (and sometimes a season with index 0 for specials).
|
||||
// We use tvdbSeasonFromAnidb to check if we are on the correct TMDB season and
|
||||
// md.IndexNumber === 1 to be sure to find the correct season on jellyfin
|
||||
return (
|
||||
tvdbSeasonFromAnidb === season.season_number &&
|
||||
md.IndexNumber === 1
|
||||
);
|
||||
} else {
|
||||
return Number(md.IndexNumber) === season.season_number;
|
||||
}
|
||||
});
|
||||
|
||||
const existingSeason = media?.seasons.find(
|
||||
(es) => es.seasonNumber === season.season_number
|
||||
@@ -357,6 +442,29 @@ class JellyfinScanner {
|
||||
}
|
||||
}
|
||||
|
||||
// With AniDB we can have multiple shows for one season, so we need to save
|
||||
// the episode from all the jellyfin entries to get the total
|
||||
if (tvdbSeasonFromAnidb) {
|
||||
if (this.processedAnidbSeason.has(tvShow.id)) {
|
||||
const show = this.processedAnidbSeason.get(tvShow.id)!;
|
||||
if (show.has(season.season_number)) {
|
||||
show.set(
|
||||
season.season_number,
|
||||
show.get(season.season_number)! + totalStandard
|
||||
);
|
||||
|
||||
totalStandard = show.get(season.season_number)!;
|
||||
} else {
|
||||
show.set(season.season_number, totalStandard);
|
||||
}
|
||||
} else {
|
||||
this.processedAnidbSeason.set(
|
||||
tvShow.id,
|
||||
new Map([[season.season_number, totalStandard]])
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (
|
||||
media &&
|
||||
(totalStandard > 0 || (total4k > 0 && !this.enable4kShow)) &&
|
||||
@@ -569,6 +677,7 @@ class JellyfinScanner {
|
||||
}
|
||||
|
||||
private async processItems(slicedItems: JellyfinLibraryItem[]) {
|
||||
this.processedAnidbSeason = new Map();
|
||||
await Promise.all(
|
||||
slicedItems.map(async (item) => {
|
||||
if (item.Type === 'Movie') {
|
||||
@@ -666,6 +775,8 @@ class JellyfinScanner {
|
||||
(library) => library.enabled
|
||||
);
|
||||
|
||||
await animeList.sync();
|
||||
|
||||
this.enable4kMovie = settings.radarr.some((radarr) => radarr.is4k);
|
||||
if (this.enable4kMovie) {
|
||||
this.log(
|
||||
|
||||
@@ -275,6 +275,7 @@ export interface NotificationAgentWebhook extends NotificationAgentConfig {
|
||||
webhookUrl: string;
|
||||
jsonPayload: string;
|
||||
authHeader?: string;
|
||||
supportVariables?: boolean;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -362,6 +363,7 @@ export interface AllSettings {
|
||||
jobs: Record<JobId, JobSettings>;
|
||||
network: NetworkSettings;
|
||||
metadataSettings: MetadataSettings;
|
||||
migrations: string[];
|
||||
}
|
||||
|
||||
const SETTINGS_PATH = process.env.CONFIG_DIRECTORY
|
||||
@@ -592,6 +594,7 @@ class Settings {
|
||||
forceMaxTtl: -1,
|
||||
},
|
||||
},
|
||||
migrations: [],
|
||||
};
|
||||
if (initialSettings) {
|
||||
this.data = merge(this.data, initialSettings);
|
||||
@@ -721,6 +724,14 @@ class Settings {
|
||||
this.data.network = data;
|
||||
}
|
||||
|
||||
get migrations(): string[] {
|
||||
return this.data.migrations;
|
||||
}
|
||||
|
||||
set migrations(data: string[]) {
|
||||
this.data.migrations = data;
|
||||
}
|
||||
|
||||
get clientId(): string {
|
||||
return this.data.clientId;
|
||||
}
|
||||
|
||||
93
server/lib/settings/migrations/0007_migrate_arr_tags.ts
Normal file
93
server/lib/settings/migrations/0007_migrate_arr_tags.ts
Normal file
@@ -0,0 +1,93 @@
|
||||
import RadarrAPI from '@server/api/servarr/radarr';
|
||||
import SonarrAPI from '@server/api/servarr/sonarr';
|
||||
import { getRepository } from '@server/datasource';
|
||||
import { User } from '@server/entity/User';
|
||||
import type { AllSettings } from '@server/lib/settings';
|
||||
|
||||
const migrationArrTags = async (settings: any): Promise<AllSettings> => {
|
||||
if (
|
||||
Array.isArray(settings.migrations) &&
|
||||
settings.migrations.includes('0007_migrate_arr_tags')
|
||||
) {
|
||||
return settings;
|
||||
}
|
||||
|
||||
const userRepository = getRepository(User);
|
||||
const users = await userRepository.find({
|
||||
select: ['id'],
|
||||
});
|
||||
|
||||
let errorOccurred = false;
|
||||
|
||||
for (const radarrSettings of settings.radarr || []) {
|
||||
if (!radarrSettings.tagRequests) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
const radarr = new RadarrAPI({
|
||||
apiKey: radarrSettings.apiKey,
|
||||
url: RadarrAPI.buildUrl(radarrSettings, '/api/v3'),
|
||||
});
|
||||
const radarrTags = await radarr.getTags();
|
||||
for (const user of users) {
|
||||
const userTag = radarrTags.find((v) =>
|
||||
v.label.startsWith(user.id + ' - ')
|
||||
);
|
||||
if (!userTag) {
|
||||
continue;
|
||||
}
|
||||
await radarr.renameTag({
|
||||
id: userTag.id,
|
||||
label: userTag.label.replace(`${user.id} - `, `${user.id}-`),
|
||||
});
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(
|
||||
`Unable to rename Radarr tags to the new format. Please check your Radarr connection settings for the instance "${radarrSettings.name}".`,
|
||||
error.message
|
||||
);
|
||||
errorOccurred = true;
|
||||
}
|
||||
}
|
||||
|
||||
for (const sonarrSettings of settings.sonarr || []) {
|
||||
if (!sonarrSettings.tagRequests) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
const sonarr = new SonarrAPI({
|
||||
apiKey: sonarrSettings.apiKey,
|
||||
url: SonarrAPI.buildUrl(sonarrSettings, '/api/v3'),
|
||||
});
|
||||
const sonarrTags = await sonarr.getTags();
|
||||
for (const user of users) {
|
||||
const userTag = sonarrTags.find((v) =>
|
||||
v.label.startsWith(user.id + ' - ')
|
||||
);
|
||||
if (!userTag) {
|
||||
continue;
|
||||
}
|
||||
await sonarr.renameTag({
|
||||
id: userTag.id,
|
||||
label: userTag.label.replace(`${user.id} - `, `${user.id}-`),
|
||||
});
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(
|
||||
`Unable to rename Sonarr tags to the new format. Please check your Sonarr connection settings for the instance "${sonarrSettings.name}".`,
|
||||
error.message
|
||||
);
|
||||
errorOccurred = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (!errorOccurred) {
|
||||
if (!Array.isArray(settings.migrations)) {
|
||||
settings.migrations = [];
|
||||
}
|
||||
settings.migrations.push('0007_migrate_arr_tags');
|
||||
}
|
||||
return settings;
|
||||
};
|
||||
|
||||
export default migrationArrTags;
|
||||
@@ -61,6 +61,7 @@ const QueryFilterOptions = z.object({
|
||||
studio: z.coerce.string().optional(),
|
||||
genre: z.coerce.string().optional(),
|
||||
keywords: z.coerce.string().optional(),
|
||||
excludeKeywords: z.coerce.string().optional(),
|
||||
language: z.coerce.string().optional(),
|
||||
withRuntimeGte: z.coerce.string().optional(),
|
||||
withRuntimeLte: z.coerce.string().optional(),
|
||||
@@ -90,6 +91,7 @@ discoverRoutes.get('/movies', async (req, res, next) => {
|
||||
try {
|
||||
const query = ApiQuerySchema.parse(req.query);
|
||||
const keywords = query.keywords;
|
||||
const excludeKeywords = query.excludeKeywords;
|
||||
|
||||
const data = await tmdb.getDiscoverMovies({
|
||||
page: Number(query.page),
|
||||
@@ -105,6 +107,7 @@ discoverRoutes.get('/movies', async (req, res, next) => {
|
||||
? new Date(query.primaryReleaseDateGte).toISOString().split('T')[0]
|
||||
: undefined,
|
||||
keywords,
|
||||
excludeKeywords,
|
||||
withRuntimeGte: query.withRuntimeGte,
|
||||
withRuntimeLte: query.withRuntimeLte,
|
||||
voteAverageGte: query.voteAverageGte,
|
||||
@@ -381,6 +384,7 @@ discoverRoutes.get('/tv', async (req, res, next) => {
|
||||
try {
|
||||
const query = ApiQuerySchema.parse(req.query);
|
||||
const keywords = query.keywords;
|
||||
const excludeKeywords = query.excludeKeywords;
|
||||
const data = await tmdb.getDiscoverTv({
|
||||
page: Number(query.page),
|
||||
sortBy: query.sortBy as SortOptions,
|
||||
@@ -395,6 +399,7 @@ discoverRoutes.get('/tv', async (req, res, next) => {
|
||||
: undefined,
|
||||
originalLanguage: query.language,
|
||||
keywords,
|
||||
excludeKeywords,
|
||||
withRuntimeGte: query.withRuntimeGte,
|
||||
withRuntimeLte: query.withRuntimeLte,
|
||||
voteAverageGte: query.voteAverageGte,
|
||||
|
||||
@@ -381,6 +381,12 @@ requestRoutes.get('/count', async (_req, res, next) => {
|
||||
)
|
||||
.getCount();
|
||||
|
||||
const completedCount = await query
|
||||
.where('request.status = :requestStatus', {
|
||||
requestStatus: MediaRequestStatus.COMPLETED,
|
||||
})
|
||||
.getCount();
|
||||
|
||||
return res.status(200).json({
|
||||
total: totalCount,
|
||||
movie: movieCount,
|
||||
@@ -390,6 +396,7 @@ requestRoutes.get('/count', async (_req, res, next) => {
|
||||
declined: declinedCount,
|
||||
processing: processingCount,
|
||||
available: availableCount,
|
||||
completed: completedCount,
|
||||
});
|
||||
} catch (e) {
|
||||
logger.error('Something went wrong retrieving request counts', {
|
||||
|
||||
@@ -279,6 +279,7 @@ notificationRoutes.get('/webhook', (_req, res) => {
|
||||
'utf8'
|
||||
)
|
||||
),
|
||||
supportVariables: webhookSettings.options.supportVariables ?? false,
|
||||
},
|
||||
};
|
||||
|
||||
@@ -300,6 +301,7 @@ notificationRoutes.post('/webhook', async (req, res, next) => {
|
||||
),
|
||||
webhookUrl: req.body.options.webhookUrl,
|
||||
authHeader: req.body.options.authHeader,
|
||||
supportVariables: req.body.options.supportVariables ?? false,
|
||||
},
|
||||
};
|
||||
await settings.save();
|
||||
@@ -331,6 +333,7 @@ notificationRoutes.post('/webhook/test', async (req, res, next) => {
|
||||
),
|
||||
webhookUrl: req.body.options.webhookUrl,
|
||||
authHeader: req.body.options.authHeader,
|
||||
supportVariables: req.body.options.supportVariables ?? false,
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@@ -292,9 +292,17 @@ export class MediaRequestSubscriber
|
||||
}
|
||||
|
||||
if (radarrSettings.tagRequests) {
|
||||
let userTag = (await radarr.getTags()).find((v) =>
|
||||
const radarrTags = await radarr.getTags();
|
||||
// old tags had space around the hyphen
|
||||
let userTag = radarrTags.find((v) =>
|
||||
v.label.startsWith(entity.requestedBy.id + ' - ')
|
||||
);
|
||||
// new tags do not have spaces around the hyphen, since spaces are not allowed anymore
|
||||
if (!userTag) {
|
||||
userTag = radarrTags.find((v) =>
|
||||
v.label.startsWith(entity.requestedBy.id + '-')
|
||||
);
|
||||
}
|
||||
if (!userTag) {
|
||||
logger.info(`Requester has no active tag. Creating new`, {
|
||||
label: 'Media Request',
|
||||
@@ -302,11 +310,11 @@ export class MediaRequestSubscriber
|
||||
mediaId: entity.media.id,
|
||||
userId: entity.requestedBy.id,
|
||||
newTag:
|
||||
entity.requestedBy.id + ' - ' + entity.requestedBy.displayName,
|
||||
entity.requestedBy.id + '-' + entity.requestedBy.displayName,
|
||||
});
|
||||
userTag = await radarr.createTag({
|
||||
label:
|
||||
entity.requestedBy.id + ' - ' + entity.requestedBy.displayName,
|
||||
entity.requestedBy.id + '-' + entity.requestedBy.displayName,
|
||||
});
|
||||
}
|
||||
if (userTag.id) {
|
||||
@@ -601,9 +609,17 @@ export class MediaRequestSubscriber
|
||||
}
|
||||
|
||||
if (sonarrSettings.tagRequests) {
|
||||
let userTag = (await sonarr.getTags()).find((v) =>
|
||||
const sonarrTags = await sonarr.getTags();
|
||||
// old tags had space around the hyphen
|
||||
let userTag = sonarrTags.find((v) =>
|
||||
v.label.startsWith(entity.requestedBy.id + ' - ')
|
||||
);
|
||||
// new tags do not have spaces around the hyphen, since spaces are not allowed anymore
|
||||
if (!userTag) {
|
||||
userTag = sonarrTags.find((v) =>
|
||||
v.label.startsWith(entity.requestedBy.id + '-')
|
||||
);
|
||||
}
|
||||
if (!userTag) {
|
||||
logger.info(`Requester has no active tag. Creating new`, {
|
||||
label: 'Media Request',
|
||||
@@ -611,11 +627,11 @@ export class MediaRequestSubscriber
|
||||
mediaId: entity.media.id,
|
||||
userId: entity.requestedBy.id,
|
||||
newTag:
|
||||
entity.requestedBy.id + ' - ' + entity.requestedBy.displayName,
|
||||
entity.requestedBy.id + '-' + entity.requestedBy.displayName,
|
||||
});
|
||||
userTag = await sonarr.createTag({
|
||||
label:
|
||||
entity.requestedBy.id + ' - ' + entity.requestedBy.displayName,
|
||||
entity.requestedBy.id + '-' + entity.requestedBy.displayName,
|
||||
});
|
||||
}
|
||||
if (userTag.id) {
|
||||
|
||||
@@ -33,6 +33,7 @@ const messages = defineMessages('components.Discover.FilterSlideover', {
|
||||
studio: 'Studio',
|
||||
genres: 'Genres',
|
||||
keywords: 'Keywords',
|
||||
excludeKeywords: 'Exclude Keywords',
|
||||
originalLanguage: 'Original Language',
|
||||
runtimeText: '{minValue}-{maxValue} minute runtime',
|
||||
ratingText: 'Ratings between {minValue} and {maxValue}',
|
||||
@@ -181,6 +182,19 @@ const FilterSlideover = ({
|
||||
updateQueryParams('keywords', value?.map((v) => v.value).join(','));
|
||||
}}
|
||||
/>
|
||||
<span className="text-lg font-semibold">
|
||||
{intl.formatMessage(messages.excludeKeywords)}
|
||||
</span>
|
||||
<KeywordSelector
|
||||
defaultValue={currentFilters.excludeKeywords}
|
||||
isMulti
|
||||
onChange={(value) => {
|
||||
updateQueryParams(
|
||||
'excludeKeywords',
|
||||
value?.map((v) => v.value).join(',')
|
||||
);
|
||||
}}
|
||||
/>
|
||||
<span className="text-lg font-semibold">
|
||||
{intl.formatMessage(messages.originalLanguage)}
|
||||
</span>
|
||||
|
||||
@@ -99,6 +99,7 @@ export const QueryFilterOptions = z.object({
|
||||
studio: z.string().optional(),
|
||||
genre: z.string().optional(),
|
||||
keywords: z.string().optional(),
|
||||
excludeKeywords: z.string().optional(),
|
||||
language: z.string().optional(),
|
||||
withRuntimeGte: z.string().optional(),
|
||||
withRuntimeLte: z.string().optional(),
|
||||
@@ -161,6 +162,10 @@ export const prepareFilterValues = (
|
||||
filterValues.keywords = values.keywords;
|
||||
}
|
||||
|
||||
if (values.excludeKeywords) {
|
||||
filterValues.excludeKeywords = values.excludeKeywords;
|
||||
}
|
||||
|
||||
if (values.language) {
|
||||
filterValues.language = values.language;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import Button from '@app/components/Common/Button';
|
||||
import LoadingSpinner from '@app/components/Common/LoadingSpinner';
|
||||
import NotificationTypeSelector from '@app/components/NotificationTypeSelector';
|
||||
import SettingsBadge from '@app/components/Settings/SettingsBadge';
|
||||
import globalMessages from '@app/i18n/globalMessages';
|
||||
import defineMessages from '@app/utils/defineMessages';
|
||||
import { isValidURL } from '@app/utils/urlValidationHelper';
|
||||
@@ -73,6 +74,11 @@ const messages = defineMessages(
|
||||
{
|
||||
agentenabled: 'Enable Agent',
|
||||
webhookUrl: 'Webhook URL',
|
||||
webhookUrlTip:
|
||||
'Test Notification URL is set to {testUrl} instead of the actual webhook URL.',
|
||||
supportVariables: 'Support URL Variables',
|
||||
supportVariablesTip:
|
||||
'Available variables are documented in the webhook template variables section',
|
||||
authheader: 'Authorization Header',
|
||||
validationJsonPayloadRequired: 'You must provide a valid JSON payload',
|
||||
webhooksettingssaved: 'Webhook notification settings saved successfully!',
|
||||
@@ -111,8 +117,14 @@ const NotificationsWebhook = () => {
|
||||
.test(
|
||||
'valid-url',
|
||||
intl.formatMessage(messages.validationWebhookUrl),
|
||||
isValidURL
|
||||
function (value) {
|
||||
const { supportVariables } = this.parent;
|
||||
return supportVariables || isValidURL(value);
|
||||
}
|
||||
),
|
||||
|
||||
supportVariables: Yup.boolean(),
|
||||
|
||||
jsonPayload: Yup.string()
|
||||
.when('enabled', {
|
||||
is: true,
|
||||
@@ -147,6 +159,7 @@ const NotificationsWebhook = () => {
|
||||
webhookUrl: data.options.webhookUrl,
|
||||
jsonPayload: data.options.jsonPayload,
|
||||
authHeader: data.options.authHeader,
|
||||
supportVariables: data.options.supportVariables ?? false,
|
||||
}}
|
||||
validationSchema={NotificationsWebhookSchema}
|
||||
onSubmit={async (values) => {
|
||||
@@ -158,6 +171,7 @@ const NotificationsWebhook = () => {
|
||||
webhookUrl: values.webhookUrl,
|
||||
jsonPayload: JSON.stringify(values.jsonPayload),
|
||||
authHeader: values.authHeader,
|
||||
supportVariables: values.supportVariables,
|
||||
},
|
||||
});
|
||||
addToast(intl.formatMessage(messages.webhooksettingssaved), {
|
||||
@@ -215,6 +229,7 @@ const NotificationsWebhook = () => {
|
||||
webhookUrl: values.webhookUrl,
|
||||
jsonPayload: JSON.stringify(values.jsonPayload),
|
||||
authHeader: values.authHeader,
|
||||
supportVariables: values.supportVariables ?? false,
|
||||
},
|
||||
});
|
||||
|
||||
@@ -249,10 +264,59 @@ const NotificationsWebhook = () => {
|
||||
<Field type="checkbox" id="enabled" name="enabled" />
|
||||
</div>
|
||||
</div>
|
||||
<div className="form-row">
|
||||
<label htmlFor="supportVariables" className="checkbox-label">
|
||||
<span className="mr-2">
|
||||
{intl.formatMessage(messages.supportVariables)}
|
||||
</span>
|
||||
<SettingsBadge badgeType="experimental" />
|
||||
<span className="label-tip">
|
||||
{intl.formatMessage(messages.supportVariablesTip)}
|
||||
</span>
|
||||
</label>
|
||||
<div className="form-input-area">
|
||||
<Field
|
||||
type="checkbox"
|
||||
id="supportVariables"
|
||||
name="supportVariables"
|
||||
onChange={(e: React.ChangeEvent<HTMLInputElement>) =>
|
||||
setFieldValue('supportVariables', e.target.checked)
|
||||
}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
{values.supportVariables && (
|
||||
<div className="mt-2">
|
||||
<Link
|
||||
href="https://docs.jellyseerr.dev/using-jellyseerr/notifications/webhook#template-variables"
|
||||
passHref
|
||||
legacyBehavior
|
||||
>
|
||||
<Button
|
||||
as="a"
|
||||
buttonSize="sm"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
>
|
||||
<QuestionMarkCircleIcon />
|
||||
<span>
|
||||
{intl.formatMessage(messages.templatevariablehelp)}
|
||||
</span>
|
||||
</Button>
|
||||
</Link>
|
||||
</div>
|
||||
)}
|
||||
<div className="form-row">
|
||||
<label htmlFor="webhookUrl" className="text-label">
|
||||
{intl.formatMessage(messages.webhookUrl)}
|
||||
<span className="label-required">*</span>
|
||||
{values.supportVariables && (
|
||||
<div className="label-tip">
|
||||
{intl.formatMessage(messages.webhookUrlTip, {
|
||||
testUrl: '/test',
|
||||
})}
|
||||
</div>
|
||||
)}
|
||||
</label>
|
||||
<div className="form-input-area">
|
||||
<div className="form-input-field">
|
||||
@@ -312,7 +376,7 @@ const NotificationsWebhook = () => {
|
||||
<span>{intl.formatMessage(messages.resetPayload)}</span>
|
||||
</Button>
|
||||
<Link
|
||||
href="https://docs.overseerr.dev/using-overseerr/notifications/webhooks#template-variables"
|
||||
href="https://docs.jellyseerr.dev/using-jellyseerr/notifications/webhook#template-variables"
|
||||
passHref
|
||||
legacyBehavior
|
||||
>
|
||||
|
||||
@@ -371,19 +371,7 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "يجب عليك إختيار نوع تنبيه واحد على الأقل",
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSuccess": "تم إرسال تنبيه تجريبي لقونتفاي!",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlRequired": "يجب عليك كتابة رابط صحيح",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "تم حفظ اعدادات تنبيه لوناسي بنجاح!",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "الرابط يجب أن لا ينتهي بعلامة السلاش /",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "تفعيل الخدمة",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "إسم ملف التعريف",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "مطلوب فقط في حالة عدم إستخدام ملف التعريف الإفتراضي <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "فشل في حفظ اعدادات تنبيه تطبيق لونا سي.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "فشل في ارسال التنبيه التجريبي الى لوناسي.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "جاري إرسال تنبيه تجريبي الى لوناسي…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "تم ارسال التنبيه!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "يجب عليك اختيار نوع تنبيه واحد على الاقل",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "يجب عليك تزويد رابط صحيح",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "رابط webhook",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "رابط المستخدم أو الجهاز <LunaSeaLink>notification webhook URL</LunaSeaLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "مفتاح الدخول Token",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSending": "جاري ارسال التنبيه…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "فشل إرسال تنبيه تجريبي Pushbullet.",
|
||||
@@ -701,7 +689,6 @@
|
||||
"components.Settings.address": "العناوين",
|
||||
"components.Settings.addsonarr": "إضافة سيرفر سونار",
|
||||
"components.Settings.cancelscan": "إلغاء الفحص",
|
||||
"components.Settings.copied": "نسخ مفتاح الـ API.",
|
||||
"components.Settings.currentlibrary": "المكتبة الحالية: {name}",
|
||||
"components.Settings.default": "الإفتراضي",
|
||||
"components.Settings.default4k": "فور كي الإفتراضي",
|
||||
@@ -791,7 +778,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoverApplicationTokenTip": "<ApplicationRegistrationLink>تسجيل تطبيق application</ApplicationRegistrationLink> للإستخدام مع {applicationTitle}",
|
||||
"i18n.approve": "موافقة",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPgpPublicKey": "يجب ذكر مفتاح عام PGP صحيح",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "فشل حفظ إعدادات تنبيه web Push.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "كلمة سر جديد",
|
||||
"components.UserProfile.UserSettings.UserPermissions.unauthorizedDescription": "لا تستطيع تعديل صلاحياتك المُعطاة.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSet": "حساب هذا المستخدم بدون كلمة سر حاليا. قم بإعداد كلمة سر بالإسفل لإتاحة هذا الحساب من تسجيل الدخول \"كمستخدم محلي.\"",
|
||||
@@ -908,7 +894,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushoverUserKey": "يجب ذكر مفتاح مستخدم او مجموعة صحيح",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "يجب ذكر رقم هوية محادثة صحيحة",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "ويب بوش Web Push",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "تم حفظ إعدادات تنبيه Web Push بنجاح!",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "تأكيد كلمة السر",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "كلمة السر الحالية",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSetOwnAccount": "حسابك حاليا بدون كلمة سر. قم بإعداد كلمة سر بالأسفل لإتاحة تسجيل الدخول كـ\"مستخدم محلي\" بإستخدام البريد الإلكتروني.",
|
||||
|
||||
@@ -199,7 +199,7 @@
|
||||
"components.Settings.Notifications.encryptionOpportunisticTls": "Винаги използвайте STARTTLS",
|
||||
"components.Discover.FilterSlideover.ratingText": "Оценки между {minValue} и {maxValue}",
|
||||
"components.PermissionEdit.autoapproveSeries": "Автоматично одобряване на сериали",
|
||||
"components.RequestButton.approverequests": "Одобряване {requestCount, plural, one {заявка} other {{requestCount} заявки}}",
|
||||
"components.RequestButton.approverequests": "Одобри {requestCount, plural, one {заявка} other {{requestCount} заявки}}",
|
||||
"components.PersonDetails.crewmember": "Екип",
|
||||
"components.RequestButton.requestmore4k": "Заявете повече в 4К",
|
||||
"components.PersonDetails.ascharacter": "като {character}",
|
||||
@@ -239,7 +239,6 @@
|
||||
"components.ManageSlideOver.manageModalRequests": "Заявки",
|
||||
"components.NotificationTypeSelector.issuecreatedDescription": "Изпращайте известия при докладване на проблеми.",
|
||||
"components.NotificationTypeSelector.mediaavailableDescription": "Изпращайте известия, когато медийните заявки станат налични.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Вашият базиран на потребител или устройство <LunaSeaLink>URL адрес за webhook за известия</LunaSeaLink>",
|
||||
"components.RequestModal.requestmovie4ktitle": "Заявете филм в 4K",
|
||||
"components.RequestModal.requestSuccess": "<strong>{title}</strong> е заявен успешно!",
|
||||
"components.Settings.Notifications.webhookUrlTip": "Създайте <DiscordWebhookLink>интегриране на webhook</DiscordWebhookLink> във вашия сървър",
|
||||
@@ -263,9 +262,7 @@
|
||||
"components.Discover.resetsuccess": "Успешно нулиране на настройките за персонализиране на откриването.",
|
||||
"components.Settings.RadarrModal.minimumAvailability": "Минимална наличност",
|
||||
"components.Settings.Notifications.agentenabled": "Активиране на агент",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Неуспешно изпращане на тестово известие към LunaSea.",
|
||||
"components.Settings.SettingsAbout.Releases.releases": "Издания",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Активиране на агент",
|
||||
"components.Settings.RadarrModal.validationApiKeyRequired": "Трябва да предоставите API ключ",
|
||||
"components.Settings.RadarrModal.validationMinimumAvailabilityRequired": "Трябва да изберете минимална наличност",
|
||||
"components.RequestModal.requestseasons": "Заявете {seasonCount} {seasonCount, plural, one {сезон} other {сезони}}",
|
||||
@@ -296,7 +293,6 @@
|
||||
"components.NotificationTypeSelector.issuecomment": "Коментар на проблема",
|
||||
"components.RequestBlock.seasons": "{seasonCount, plural, one {Сезон} other {Сезони}}",
|
||||
"components.Settings.RadarrModal.selectMinimumAvailability": "Изберете минимална наличност",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Настройките за известяване към LunaSea са запазени успешно!",
|
||||
"components.Selector.showmore": "Покажи повече",
|
||||
"components.Settings.RadarrModal.selectRootFolder": "Изберете главна папка",
|
||||
"components.RequestList.RequestItem.modifieduserdate": "{date} от {user}",
|
||||
@@ -309,12 +305,11 @@
|
||||
"components.PermissionEdit.autoapproveMoviesDescription": "Гарантирано автоматично одобрение за заявки за не-4K филми.",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationUserTokenRequired": "Трябва да предоставите валиден потребителски или групов ключ",
|
||||
"components.Settings.SettingsAbout.Releases.versionChangelog": "{version} Дневник на промените",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Изисква се само ако не използвате профила <code>по подразбиране</code>",
|
||||
"components.ManageSlideOver.manageModalMedia": "Медия",
|
||||
"components.NotificationTypeSelector.issueresolved": "Проблемът е решен",
|
||||
"components.MovieDetails.originaltitle": "Оригинално заглавие",
|
||||
"components.Discover.trending": "Тендеция",
|
||||
"components.RequestButton.declinerequests": "Decline {requestCount, plural, one {Заявка} other {{requestCount} Заявки}}",
|
||||
"components.RequestButton.declinerequests": "Отхвърли {requestCount, plural, one {заявка} other {{requestCount} заявки}}",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Създайте токен от вашите <PushbulletSettingsLink>Настройки на акаунта</PushbulletSettingsLink>",
|
||||
"components.MovieDetails.rtcriticsscore": "Rotten Tomatoes Tomatometer",
|
||||
"components.PermissionEdit.requestMoviesDescription": "Дайте разрешение за изпращане на заявки за не-4K филми.",
|
||||
@@ -330,7 +325,6 @@
|
||||
"components.RequestModal.selectmovies": "Изберете филм(и)",
|
||||
"components.RequestModal.requestApproved": "Заявката за <strong>{title}</strong> е одобрена!",
|
||||
"components.Settings.RadarrModal.testFirstQualityProfiles": "Тествайте връзката, за да заредите профилите за качество",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Изпраща се тестово известие към LunaSea…",
|
||||
"components.QuotaSelector.unlimited": "Неограничен",
|
||||
"components.ResetPassword.validationpasswordminchars": "Паролата е твърде кратка; трябва да съдържа минимум 8 знака",
|
||||
"components.Settings.RadarrModal.syncEnabled": "Активирайте сканирането",
|
||||
@@ -344,7 +338,6 @@
|
||||
"components.RequestBlock.profilechanged": "Профил качество",
|
||||
"components.Settings.RadarrModal.create4kradarr": "Добавяне на нов 4K Radarr сървър",
|
||||
"components.Settings.Notifications.senderName": "Име на изпращача",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Трябва да предоставите валиден URL адрес",
|
||||
"components.PermissionEdit.autoapprove4kMovies": "Автоматично одобряване на 4К филми",
|
||||
"components.ManageSlideOver.playedby": "Изигран от",
|
||||
"components.Settings.RadarrModal.default4kserver": "4K сървър по подразбиране",
|
||||
@@ -360,13 +353,11 @@
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "За да получава уеб насочени известия, Overseerr трябва да се работи през HTTPS.",
|
||||
"components.MovieDetails.cast": "В ролите",
|
||||
"components.PermissionEdit.viewissues": "Преглед на проблемите",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URL",
|
||||
"components.NotificationTypeSelector.mediaautorequestedDescription": "Получавайте известия, когато автоматично се изпращат заявки за елементи от вашия списък за гледане в Plex.",
|
||||
"components.Discover.MovieGenreSlider.moviegenres": "Филмови жанрове",
|
||||
"components.PermissionEdit.viewrecent": "Преглед на наскоро добавените",
|
||||
"components.Discover.networks": "Мрежи",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL адресът не трябва да завършва с наклонена черта в края",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Трябва да изберете поне един тип известие",
|
||||
"components.MovieDetails.budget": "Бюджет",
|
||||
"components.RequestList.showallrequests": "Покажи всички заявки",
|
||||
"components.Settings.Notifications.validationTypes": "Трябва да изберете поне един тип известие",
|
||||
@@ -375,7 +366,6 @@
|
||||
"components.PermissionEdit.autoapprove4kDescription": "Гарантирано автоматично одобрение за заявки за 4K медии.",
|
||||
"components.RequestModal.requestmovies": "Заявка {count} {count, plural, one {филм} other {филми}}",
|
||||
"components.Settings.Notifications.validationSmtpHostRequired": "Трябва да предоставите валидно име на хост или IP адрес",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Известието за тест към LunaSea е изпратено!",
|
||||
"components.RequestModal.requestedited": "Заявката за <strong>{title}</strong> е редактирана успешно!",
|
||||
"components.Discover.TvGenreSlider.tvgenres": "Жанрове сериали",
|
||||
"components.RequestModal.selectseason": "Изберете сезон(и)",
|
||||
@@ -459,9 +449,8 @@
|
||||
"components.Settings.Notifications.pgpPasswordTip": "Подписвайте шифровани имейл съобщения с помощта на <OpenPgpLink>OpenPGP</OpenPgpLink>",
|
||||
"components.RequestList.RequestItem.failedretry": "Нещо се обърка при повторен опит за заявка.",
|
||||
"components.MovieDetails.imdbuserscore": "IMDB потребителска оценка",
|
||||
"components.RequestButton.decline4krequests": "Отхвърляне {requestCount, plural, one {заявка} other {{requestCount} заявки}}",
|
||||
"components.RequestButton.decline4krequests": "Отхвърли {requestCount, plural, one {4K заявка} other {{requestCount} 4K заявки}}",
|
||||
"components.RequestButton.declinerequest4k": "Отказ на 4К заявка",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Профилно име",
|
||||
"components.Settings.Notifications.NotificationsGotify.url": "URL адрес на сървъра",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Трябва да изберете поне един тип известие",
|
||||
"components.NotificationTypeSelector.mediarequestedDescription": "Изпращайте известия, когато потребителите изпращат нови медийни заявки, които изискват одобрение.",
|
||||
@@ -470,7 +459,6 @@
|
||||
"components.ManageSlideOver.manageModalClearMediaWarning": "* Това ще премахне необратимо всички данни за този {mediaType}, включително всички заявки. Ако този елемент съществува във вашата Plex библиотека, медийната информация ще бъде отново създадена по време на следващото сканиране.",
|
||||
"components.Settings.Notifications.encryptionDefault": "Използвайте STARTTLS, ако има такъв",
|
||||
"components.Settings.SettingsAbout.uptodate": "Актуално",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Настройките за известяване на LunaSea не успяха да бъдат запазени.",
|
||||
"components.Settings.Notifications.pgpPassword": "PGP Парола",
|
||||
"components.RequestModal.QuotaDisplay.requiredquotaUser": "Този потребител трябва да има най-малко <strong>{seasons}</strong> {seasons, plural, one {заявка за сезон} other {заявки за сезони}} оставащи, за да изпрати заявка за този сериал.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.authheader": "Хедър за удостоверяване",
|
||||
@@ -482,7 +470,7 @@
|
||||
"components.Settings.SettingsAbout.totalmedia": "Общо медия",
|
||||
"components.RegionSelector.regionServerDefault": "По подразбиране ({region})",
|
||||
"components.PermissionEdit.request4kMovies": "Заявка за 4K филми",
|
||||
"components.RequestButton.approve4krequests": "Одобрете {requestCount, plural, one {4K заявка} other {{requestCount} 4K Заявки}}",
|
||||
"components.RequestButton.approve4krequests": "Одобри {requestCount, plural, one {4K заявка} other {{requestCount} 4K Заявки}}",
|
||||
"components.Discover.FilterSlideover.releaseDate": "Дата на излизане",
|
||||
"components.Settings.Notifications.webhookUrl": "Webhook URL",
|
||||
"components.RequestModal.errorediting": "Нещо се обърка при редактирането на заявката.",
|
||||
@@ -745,7 +733,7 @@
|
||||
"components.StatusChecker.reloadApp": "Презареди {applicationTitle}",
|
||||
"components.Settings.toastTautulliSettingsSuccess": "Tautulli настройките са запазени успешно!",
|
||||
"components.Settings.default4k": "По подразбиране 4К",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleSelectorMinutes": "Всяка {jobScheduleMinutes, plural, one {минута} other {{jobScheduleMinutes} минути}}",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleSelectorMinutes": "На всяка {jobScheduleMinutes, plural, one {минута} other {{jobScheduleMinutes} минути}}",
|
||||
"components.Settings.SettingsJobsCache.imagecachesize": "Общ размер на кеша",
|
||||
"components.Settings.SonarrModal.validationLanguageProfileRequired": "Трябва да изберете езиков профил",
|
||||
"components.Settings.SonarrModal.loadingTags": "Етикетите се зареждат…",
|
||||
@@ -828,12 +816,10 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoverApplicationToken": "Токън за API към приложение",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationDiscordId": "Трябва да предоставите валиден потребителски идентификатор (User ID) в Discord",
|
||||
"i18n.importing": "Импортиране.…",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Настройките за известяване чрез Web push не успяха да бъдат запазени.",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.plexwatchlistsyncseries": "Автоматична заявка на сериали",
|
||||
"components.UserList.create": "Създавайте",
|
||||
"i18n.restartRequired": "Изисква се рестартиране",
|
||||
"components.Settings.tautulliSettingsDescription": "По желание конфигурирайте настройките за вашия сървър Tautulli. Overseerr извлича данни от хронологията на гледане за вашата Plex медия от Tautulli.",
|
||||
"components.Settings.copied": "Копиран API ключ в клипборда.",
|
||||
"i18n.request": "Заявка",
|
||||
"components.Settings.validationApiKey": "Трябва да предоставите API ключ",
|
||||
"components.Settings.SonarrModal.editsonarr": "Редактирай Sonarr сървър",
|
||||
@@ -1069,7 +1055,7 @@
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.admin": "Админ",
|
||||
"components.UserList.userlist": "Списък с потребители",
|
||||
"components.UserProfile.limit": "{remaining} от {limit}",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleSelectorSeconds": "Всяка {jobScheduleSeconds, plural, one {секунда} other {{jobScheduleSeconds} секунди}}",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleSelectorSeconds": "На всяка {jobScheduleSeconds, plural, one {секунда} other {{jobScheduleSeconds} секунда}}",
|
||||
"components.Settings.deleteserverconfirm": "Сигурни ли сте, че искате да изтриете този сървър?",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.applanguage": "Език на дисплея",
|
||||
"components.TvDetails.watchtrailer": "Гледайте трейлър",
|
||||
@@ -1157,7 +1143,7 @@
|
||||
"components.UserList.plexuser": "Plex потребител",
|
||||
"components.UserProfile.plexwatchlist": "Plex списък за гледане",
|
||||
"components.TvDetails.streamingproviders": "В момента се излъчва по",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleSelectorHours": "Всеки {jobScheduleHours, plural, one {час} other {{jobScheduleHours} часа}}",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleSelectorHours": "На всеки {jobScheduleHours, plural, one {час} other {{jobScheduleHours} часа}}",
|
||||
"components.TvDetails.originaltitle": "Оригинално заглавие",
|
||||
"components.Settings.noDefault4kServer": "4K {serverType} сървър трябва да бъде маркиран като стандартен, за да може потребителите да изпращат 4K {mediaType} заявки.",
|
||||
"components.Settings.SettingsUsers.tvRequestLimitLabel": "Глобален лимит за заявка на сериали",
|
||||
@@ -1165,7 +1151,6 @@
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.languageDefault": "По подразбиране ({language})",
|
||||
"components.Settings.validationUrlBaseTrailingSlash": "URL адресът не трябва да завършва с наклонена черта в края",
|
||||
"components.Settings.SettingsJobsCache.imagecacheDescription": "Когато е активиран в настройките, Overseerr ще бъде прокси и ще кешира изображения от предварително конфигурирани външни източници. Кешираните изображения се записват във вашата конфигурационна папка. Можете да намерите файловете в <code>{appDataPath}/cache/images</code>.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Настройките за известяване чрез Web push са запазени успешно!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pgpPublicKey": "PGP публичен ключ",
|
||||
"components.TitleCard.cleardata": "Изчистване на данните",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.nopermissionDescription": "Нямате права, за да промените паролата на този потребител.",
|
||||
@@ -1245,7 +1230,6 @@
|
||||
"components.Login.validationemailformat": "Изисква се валиден имейл адрес",
|
||||
"components.Login.username": "Потребителско име",
|
||||
"components.Login.validationhostformat": "Изисква се валиден URL адрес",
|
||||
"components.Login.validationHostnameRequired": "Трябва да въведете валидно име на хост или IP адрес",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "Базовият URL адрес не трябва да завършва с наклонена черта",
|
||||
"components.Login.validationhostrequired": "Изисква се {mediaServerName} URL адрес",
|
||||
"components.Login.description": "Тъй като това е първото Ви влизане в {applicationName}, трябва да добавите валиден имейл адрес.",
|
||||
@@ -1270,5 +1254,95 @@
|
||||
"components.Login.validationUrlTrailingSlash": "URL адресът не трябва да завършва с наклонена черта",
|
||||
"components.Login.validationservertyperequired": "Моля изберете тип на сървъра",
|
||||
"components.Login.validationusernamerequired": "Изисква се потребителско име",
|
||||
"components.Login.saving": "Добавяне…"
|
||||
"components.Login.saving": "Добавяне…",
|
||||
"components.MovieDetails.openradarr": "Отвори филма в Radarr",
|
||||
"components.Settings.OverrideRuleModal.qualityprofile": "Профил за качество",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionHoverTip": "НЕ активирайте тази настройка освен ако не знаете какво правите!",
|
||||
"components.MovieDetails.play": "Пусни на {mediaServerName}",
|
||||
"components.MovieDetails.watchlistDeleted": "<strong>{title}</strong> Успешно премахнат от листата за гледане!",
|
||||
"components.Selector.canceled": "Отказано",
|
||||
"components.Selector.searchUsers": "Избери потребители…",
|
||||
"components.Settings.OverrideRuleModal.serviceDescription": "Приложи това правило за избраната услуга.",
|
||||
"components.Settings.SettingsNetwork.toastSettingsFailure": "Нещо се обърка докато запаметявахте настройките.",
|
||||
"components.Settings.SettingsJobsCache.usersavatars": "Потребителски аватари",
|
||||
"components.Settings.apiKey": "API ключ",
|
||||
"components.Settings.SettingsNetwork.proxyBypassFilter": "Игнорирани прокси адреси",
|
||||
"components.MovieDetails.addtowatchlist": "Добави към листата за гледане",
|
||||
"components.PermissionEdit.blacklistedItems": "Черен списък за медия.",
|
||||
"components.Settings.OverrideRuleModal.genres": "Жанрове",
|
||||
"components.ManageSlideOver.removearr": "Премахни от {arr}",
|
||||
"components.ManageSlideOver.removearr4k": "Премахни от 4К {arr}",
|
||||
"components.MovieDetails.downloadstatus": "Статус на сваляне",
|
||||
"components.MovieDetails.openradarr4k": "Отвори филма в 4К Radarr",
|
||||
"components.MovieDetails.play4k": "Пусни 4К на {mediaServerName}",
|
||||
"components.MovieDetails.removefromwatchlist": "Премахни от листата за гледане",
|
||||
"components.MovieDetails.watchlistError": "Нещо се обърка.Моля опитайте отново.",
|
||||
"components.MovieDetails.watchlistSuccess": "<strong>{title}</strong> Успешно добавен към листата за гледане!",
|
||||
"components.RequestList.RequestItem.profileName": "Профил",
|
||||
"components.RequestList.RequestItem.removearr": "Премахване от {arr}",
|
||||
"components.Selector.inProduction": "В продукция",
|
||||
"components.Settings.OverrideRuleModal.conditions": "Състояние",
|
||||
"components.Settings.OverrideRuleModal.create": "Създайте правило",
|
||||
"components.Settings.OverrideRuleModal.keywords": "Ключови думи",
|
||||
"components.Settings.OverrideRuleModal.languages": "Езици",
|
||||
"components.Settings.OverrideRuleModal.notagoptions": "Без тагове.",
|
||||
"components.Settings.OverrideRuleModal.selectQualityProfile": "Изберете профил за капество",
|
||||
"components.Settings.OverrideRuleModal.selectService": "Изберете услуга",
|
||||
"components.Settings.OverrideRuleModal.selecttags": "Изберете тагове",
|
||||
"components.Settings.OverrideRuleModal.service": "Услуга",
|
||||
"components.Settings.OverrideRuleModal.settings": "Настройки",
|
||||
"components.Settings.OverrideRuleModal.tags": "Тагове",
|
||||
"components.Settings.OverrideRuleModal.users": "Потребители",
|
||||
"components.Settings.OverrideRuleTile.genre": "Жанр",
|
||||
"components.Settings.OverrideRuleTile.keywords": "Ключови думи",
|
||||
"components.Settings.OverrideRuleTile.language": "Език",
|
||||
"components.Settings.OverrideRuleTile.qualityprofile": "Профил за капество",
|
||||
"components.Settings.OverrideRuleTile.settings": "Настройки",
|
||||
"components.Settings.OverrideRuleTile.tags": "Тагове",
|
||||
"components.Settings.OverrideRuleTile.users": "Потребители",
|
||||
"components.Settings.SettingsJobsCache.jellyfin-full-scan": "Пълно сканиране на библиотеката Jellyfin",
|
||||
"components.Settings.SettingsMain.enableSpecialEpisodes": "Позволи искане за специални епизоди",
|
||||
"components.Settings.SettingsNetwork.docs": "Документация",
|
||||
"components.Settings.SettingsNetwork.network": "Мрежа",
|
||||
"components.Settings.SettingsNetwork.networksettings": "Мрежови настройки",
|
||||
"components.Settings.SettingsNetwork.proxyPassword": "Прокси парола",
|
||||
"components.Settings.SettingsNetwork.proxyPort": "Прокси порт",
|
||||
"components.Settings.SettingsNetwork.proxySsl": "Използвайте SSL за прокси",
|
||||
"components.Settings.SettingsNetwork.proxyUser": "Прокси потребител",
|
||||
"components.Settings.SettingsNetwork.toastSettingsSuccess": "Настройките са запаметени успешно!",
|
||||
"components.Settings.SettingsNetwork.trustProxy": "Активирай прокси поддръжка",
|
||||
"components.Settings.SettingsNetwork.validationProxyPort": "Трябва да предоставите валиден порт",
|
||||
"components.Settings.SettingsUsers.loginMethods": "Метод за влизане",
|
||||
"components.Settings.SettingsUsers.loginMethodsTip": "Настройте методи за влизане напотребителите",
|
||||
"components.Settings.SettingsUsers.mediaServerLoginTip": "Позволи на потребителите да се вписват с техния {mediaServerName} акаунт",
|
||||
"components.Settings.Notifications.userEmailRequired": "Изисква потребителски е-майл",
|
||||
"components.Settings.SettingsAbout.supportjellyseerr": "Поддръжка Jellyseerr",
|
||||
"components.Settings.jellyfinSettings": "{mediaServerName} Настройки",
|
||||
"components.Settings.jellyfinSettingsFailure": "Нещо се обърка докато запаметявахте {mediaServerName} настройките.",
|
||||
"components.Settings.jellyfinSettingsSuccess": "{mediaServerName} настройките са запазени успешно!",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmailEmpty": "Друг потребител вече използва това потребителско име. Трябва да въведете е-майл",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorExists": "Този акаунт вече е свързан с {applicationName} потребител",
|
||||
"components.TvDetails.removefromwatchlist": "Премахни от листата за гледане",
|
||||
"components.UserList.validationUsername": "Трябва да предоставите потребителско име",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.usernameRequired": "Трябва да предоставите потребителско име",
|
||||
"components.UserProfile.UserSettings.menuLinkedAccounts": "Свързани акаунти",
|
||||
"i18n.addToBlacklist": "Добави в черният списък",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmail": "Този е-майл вече се използва!",
|
||||
"components.UserProfile.localWatchlist": "Списък за гледане на {username}",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorUnknown": "Появи се непозната грешка",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.password": "Парола",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.passwordRequired": "Трябва да предоставите парола",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.saving": "Добавяне…",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.username": "Потребителско име",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.email": "Е-майл",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.mediaServerUser": "{mediaServerName} Потребител",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.save": "Запамети промените",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.saving": "Запазване…",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.errorUnknown": "Появи се непозната грешка",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.linkedAccounts": "Свързани акаунти",
|
||||
"i18n.blacklist": "Черен списък",
|
||||
"i18n.blacklistError": "Нещо се обърка. Моля опитайте отново.",
|
||||
"i18n.removeFromBlacklistSuccess": "<strong>{title}</strong> е успешно премахнат от Черния списък.",
|
||||
"i18n.removefromBlacklist": "Премахни ит Черния списък",
|
||||
"i18n.specials": "Специални"
|
||||
}
|
||||
|
||||
@@ -463,7 +463,6 @@
|
||||
"components.Settings.email": "Adreça electrònica",
|
||||
"components.Settings.default4k": "4K predeterminat",
|
||||
"components.Settings.default": "Predeterminat",
|
||||
"components.Settings.copied": "S'ha copiat la clau API al porta-retalls.",
|
||||
"components.Settings.address": "Adreça",
|
||||
"components.Settings.addradarr": "Afegeix un servidor Radarr",
|
||||
"components.Settings.SonarrModal.validationRootFolderRequired": "Heu de seleccionar una carpeta arrel",
|
||||
@@ -712,11 +711,7 @@
|
||||
"components.RequestList.RequestItem.editrequest": "Edita la sol·licitud",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.languageDefault": "Predeterminat ({language})",
|
||||
"components.Settings.Notifications.toastTelegramTestFailed": "No s'ha pogut enviar la notificació de prova de Telegram.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "No s'ha pogut enviar la notificació de prova de LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "No s'ha pogut desar la configuració de notificacions de LunaSea.",
|
||||
"components.DownloadBlock.estimatedtime": "{time} de temps estimat",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "La configuració de notificacions de Push Web s'ha desat correctament!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "No s'ha pogut desar la configuració de notificacions de Push Web.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Web Push",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.applanguage": "Idioma de visualització",
|
||||
"components.Settings.webpush": "Web Push",
|
||||
@@ -750,19 +745,10 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "S'ha enviat la notificació de prova Pushbullet!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "S'està enviant la notificació de prova de Pushbullet…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "No s'ha pogut enviar la notificació de prova Pushbullet.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL del Webhook",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Has de proporcionar un URL vàlid",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "S'ha enviat la notificació de prova de LunaSea!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "S'està enviant la notificació de prova de LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "La configuració de les notificacions de LunaSea s'ha desat correctament!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Només és necessari si no s'utilitza el perfil <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Nom de perfil",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Activa l'agent",
|
||||
"components.PermissionEdit.requestTvDescription": "Concedeix permís per sol·licitar sèries no 4K.",
|
||||
"components.PermissionEdit.requestTv": "Sol·licita sèries",
|
||||
"components.PermissionEdit.requestMoviesDescription": "Concedeix permís per sol·licitar pel·lícules no 4K.",
|
||||
"components.PermissionEdit.requestMovies": "Sol·liciteu pel·lícules",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "El vostre <LunaSeaLink>URL del webhook de notificació</LunaSeaLink> basat en l'usuari o el dispositiu",
|
||||
"components.UserList.localLoginDisabled": "El paràmetre <strong>Activa l'inici de sessió local</strong> està desactivat actualment.",
|
||||
"components.Settings.webAppUrlTip": "Opcionalment, dirigiu els usuaris a l'aplicació web del vostre servidor en lloc de l'aplicació web \"allotjada\"",
|
||||
"components.Settings.webAppUrl": "<WebAppLink>URL de l'aplicació web</WebAppLink>",
|
||||
@@ -790,7 +776,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "Heu de seleccionar com a mínim un tipus de notificació",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "Heu de seleccionar com a mínim un tipus de notificació",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Heu de seleccionar com a mínim un tipus de notificació",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Heu de seleccionar com a mínim un tipus de notificació",
|
||||
"components.QuotaSelector.tvRequests": "{quotaLimit} <quotaUnits>{temporades} per {quotaDays} {dies}</quotaUnits>",
|
||||
"components.QuotaSelector.seasons": "{count, plural, one {temporada} other {temporades}}",
|
||||
"components.QuotaSelector.movies": "{count, plural, one {pel·lícula} other {pel·lícules}}",
|
||||
|
||||
@@ -79,9 +79,6 @@
|
||||
"components.Settings.Notifications.NotificationsPushover.agentenabled": "Povolit agenta",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "Povolit agenta",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Přístupový token",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Jméno profilu",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Povolit agenta",
|
||||
"components.Search.searchresults": "Výsledky vyhledávání",
|
||||
"components.ResetPassword.passwordreset": "Obnovení hesla",
|
||||
"components.ResetPassword.email": "E-mailová adresa",
|
||||
@@ -597,11 +594,9 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSuccess": "Oznámení o testu Gotify odesláno!",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "Adresa URL nesmí končit koncovým lomítkem",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "Musíte vybrat alespoň jeden typ oznámení",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Oznámení o testu LunaSea odesláno!",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlRequired": "Musíte zadat platnou adresu URL",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Testovací oznámení Pushbullet odesláno!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationAccessTokenRequired": "Musíte zadat přístupový token",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Musíte vybrat alespoň jeden typ oznámení",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Odeslání testovacího oznámení Pushbullet…",
|
||||
"components.Settings.RadarrModal.validationApplicationUrl": "Musíte zadat platnou adresu URL",
|
||||
"components.Settings.RadarrModal.validationApplicationUrlTrailingSlash": "Adresa URL nesmí končit koncovým lomítkem",
|
||||
@@ -702,7 +697,6 @@
|
||||
"components.RequestModal.QuotaDisplay.requiredquota": "Abyste mohli zažádat o tento seriál, musíte mít alespoň <strong>{seasons}</strong> {seasons, plural, one {zbývající žádost o sezónu} few {zbývající žádosti o sezónu} other {zbývajících žádostí o sezónu}}.",
|
||||
"components.RequestModal.requestfrom": "Žádost od {username} čeká na schválení.",
|
||||
"components.RequestModal.requesterror": "Při odesílání žádosti se něco pokazilo.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Vaše adresa URL <LunaSeaLink>notification webhook</LunaSeaLink> pro uživatele nebo zařízení",
|
||||
"components.Settings.Notifications.toastEmailTestSuccess": "E-mailové oznámení o testu odesláno!",
|
||||
"components.Settings.RadarrModal.baseUrl": "Základní adresa URL",
|
||||
"components.Settings.RadarrModal.default4kserver": "Výchozí server 4K",
|
||||
@@ -731,8 +725,6 @@
|
||||
"components.RequestBlock.languageprofile": "Jazykový profil",
|
||||
"components.RequestModal.QuotaDisplay.quotaLinkUser": "Souhrn limitů požadavků tohoto uživatele můžete zobrazit na jeho <ProfileLink>profilové stránce</ProfileLink>.",
|
||||
"components.Settings.Notifications.NotificationsGotify.token": "Token aplikace",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Testovací oznámení LunaSea se nepodařilo odeslat.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Musíte zadat platnou adresu URL",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.channelTag": "Označení kanálu",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsFailed": "Nastavení oznámení Pushbullet se nepodařilo uložit.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Musíte vybrat alespoň jeden typ oznámení",
|
||||
@@ -775,7 +767,6 @@
|
||||
"components.Settings.SonarrModal.validationApplicationUrlTrailingSlash": "Adresa URL nesmí končit koncovým lomítkem",
|
||||
"components.Settings.addradarr": "Přidání serveru Radarr",
|
||||
"components.Settings.addsonarr": "Adding a Radarr server",
|
||||
"components.Settings.copied": "Zkopírování klíče API do schránky.",
|
||||
"components.Settings.externalUrl": "Externí adresa URL",
|
||||
"components.Settings.hostname": "Název hostitele nebo IP adresa",
|
||||
"components.Settings.manualscan": "Manuální skenování knihovny",
|
||||
@@ -853,7 +844,6 @@
|
||||
"components.RequestModal.AdvancedRequester.animenote": "* Tento seriál je anime.",
|
||||
"components.Settings.Notifications.NotificationsPushover.userToken": "Klíč uživatele nebo skupiny",
|
||||
"components.RequestCard.failedretry": "Při opakovaném pokusu o zadání požadavku se něco pokazilo.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Vyžaduje se pouze v případě, že nepoužíváte profil <code>default</code>",
|
||||
"components.RequestCard.mediaerror": "{mediaType} Nenalezeno",
|
||||
"components.RequestList.RequestItem.mediaerror": "{mediaType} Nenalezeno",
|
||||
"components.RequestModal.QuotaDisplay.allowedRequests": "Můžete požádat o <strong>{limit}</strong> {type} každé <strong>{days}</strong> dny.",
|
||||
@@ -866,7 +856,6 @@
|
||||
"components.Settings.SonarrModal.selectRootFolder": "Vyberte kořenovou složku",
|
||||
"components.ResetPassword.requestresetlinksuccessmessage": "Na zadanou e-mailovou adresu bude zaslán odkaz pro obnovení hesla, pokud je spojena s platným uživatelem.",
|
||||
"components.RequestModal.pendingrequest": "Čekající žádost",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Nastavení oznámení LunaSea úspěšně uloženo!",
|
||||
"components.Settings.SonarrModal.default4kserver": "Výchozí server 4K",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoverUserKeyTip": "Váš 30znakový <UsersGroupsLink>identifikátor uživatele nebo skupiny</UsersGroupsLink>",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoversettingssaved": "Nastavení oznámení Pushover úspěšně uloženo!",
|
||||
@@ -878,7 +867,6 @@
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSuccess": "Oznámení o testu Pushover odesláno!",
|
||||
"components.Settings.Notifications.NotificationsSlack.slacksettingsfailed": "Nastavení oznámení služby Slack se nepodařilo uložit.",
|
||||
"components.Settings.toastPlexConnectingSuccess": "Připojení k systému Plex úspěšně navázáno!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Odeslání oznámení o testu LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Vytvořte token ze svého <PushbulletSettingsLink>Nastavení účtu</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.encryptionTip": "Ve většině případů používá implicitní TLS port 465 a STARTTLS port 587",
|
||||
"components.Settings.Notifications.toastDiscordTestFailed": "Oznámení o testu Discord se nepodařilo odeslat.",
|
||||
@@ -887,7 +875,6 @@
|
||||
"components.TvDetails.firstAirDate": "Datum prvního vysílání",
|
||||
"components.Settings.RadarrModal.validationApiKeyRequired": "Musíte zadat klíč API",
|
||||
"components.Settings.toastPlexConnectingFailure": "Nepodařilo se připojit k systému Plex.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Nastavení oznámení LunaSea se nepodařilo uložit.",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Registrace aplikace</ApplicationRegistrationLink> pro použití s aplikací Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationAccessTokenRequired": "Musíte zadat platný token aplikace",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestFailed": "Testovací oznámení Pushover se nepodařilo odeslat.",
|
||||
@@ -949,7 +936,6 @@
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationDiscordId": "Musíte zadat platné ID uživatele služby Discord",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pgpPublicKey": "Veřejný klíč PGP",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pgpPublicKeyTip": "Šifrování e-mailových zpráv pomocí <OpenPgpLink>OpenPGP</OpenPgpLink>",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Nastavení webových oznámení push bylo úspěšně uloženo!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.discordIdTip": "<FindDiscordIdLink>vícemístné identifikační číslo</FindDiscordIdLink> spojené s vaším uživatelským účtem",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushbulletAccessToken": "Přístupový token",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoverUserKey": "Klíč uživatele nebo skupiny",
|
||||
@@ -958,7 +944,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoversettingsfailed": "Nastavení oznámení Pushover se nepodařilo uložit.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoverApplicationTokenTip": "<ApplicationRegistrationLink>Registrace aplikace</ApplicationRegistrationLink> pro použití s {applicationTitle}",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramsettingssaved": "Nastavení oznámení Telegramu úspěšně uloženo!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Nastavení webových push oznámení se nepodařilo uložit.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSet": "Tento uživatelský účet v současné době nemá nastavené heslo. Níže nastavte heslo, aby se tento účet mohl přihlašovat jako \"místní uživatel.\"",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSetOwnAccount": "Váš účet v současné době nemá nastavené heslo. Níže nastavte heslo, abyste se mohli přihlásit jako \"místní uživatel\" pomocí své e-mailové adresy.",
|
||||
"i18n.importing": "Importování…",
|
||||
@@ -1250,7 +1235,6 @@
|
||||
"components.Settings.Notifications.validationWebhookRoleId": "Musíte poskytnout platné ID Discord role",
|
||||
"components.Blacklist.blacklistedby": "{date} uživatelem {user}",
|
||||
"components.Layout.UserWarnings.passwordRequired": "Heslo je povinné.",
|
||||
"components.Login.validationHostnameRequired": "Musíte poskytnout platné hostitelské jméno nebo IP adresu",
|
||||
"components.Selector.searchStatus": "Vyberte status…",
|
||||
"components.TvDetails.watchlistSuccess": "<strong>{title}</strong> úspěšně přidáno na seznam sledování!",
|
||||
"components.Blacklist.blacklistNotFoundError": "<strong>{title}</strong> není na černé listině.",
|
||||
|
||||
@@ -258,7 +258,6 @@
|
||||
"components.RegionSelector.regionDefault": "Alle Regioner",
|
||||
"components.RequestBlock.rootfolder": "Rodmappe",
|
||||
"components.RequestButton.viewrequest4k": "Vis 4K Forespørgsel",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Aktivér Agent",
|
||||
"components.RequestModal.seasonnumber": "Sæson {number}",
|
||||
"components.NotificationTypeSelector.mediadeclinedDescription": "Send notifikationer når medieforespørgsler afvises.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "For at kunne modtage web push-notifikationer skal Jellyseerr benytte HTTPS.",
|
||||
@@ -286,9 +285,6 @@
|
||||
"components.RequestModal.pending4krequest": "Afventende 4K Forespørgsler",
|
||||
"components.RequestModal.pendingapproval": "Din forespørgsel afventer godkendelse.",
|
||||
"components.ResetPassword.resetpasswordsuccessmessage": "Kodeord er nulstillet!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Profilnavn",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea testnotifikation er afsendt!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Du skal vælge mindst én notifikationstype",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Pushbullet testnotifikation kunne ikke sendes.",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Registrér en applikation</ApplicationRegistrationLink> til brug med Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushover.pushoversettingssaved": "Pushover notifikationsindstillinger er blevet gemt!",
|
||||
@@ -334,14 +330,6 @@
|
||||
"components.ResetPassword.validationpasswordminchars": "Kodeordet er for kort; det skal være mindst 8 tegn",
|
||||
"components.ResetPassword.validationpasswordrequired": "Du skal angive et kodeord",
|
||||
"components.Search.search": "Søg",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Kun påkrævet hvis du benytter en anden profil end <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "LunaSea notifikationsindstillinger kunne ikke gemmes.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea notifikationsindstillinger er blevet gemt!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea testnotifikation kunne ikke afsendes.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Sender LunaSea testnotifikation…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Du skal angive en gyldig URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Din bruger- eller enhedsbaserede <LunaSeaLink>webhook URL for notifikationer</LunaSeaLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Adgangstoken",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Opret en token fra dine <PushbulletSettingsLink>Kontoindstillinger</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "Aktivér Agent",
|
||||
@@ -595,7 +583,6 @@
|
||||
"components.Settings.SonarrModal.validationRootFolderRequired": "Du skal angive en rodmappe",
|
||||
"components.Settings.address": "Adresse",
|
||||
"components.Settings.addsonarr": "Tilføj Sonarr Server",
|
||||
"components.Settings.copied": "API-nøgle er kopieret til udklipsholder.",
|
||||
"components.Settings.currentlibrary": "Nuværende Bibliotek: {name}",
|
||||
"components.Settings.email": "Email",
|
||||
"components.Settings.enablessl": "Benyt SSL",
|
||||
@@ -843,8 +830,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "Du skal angive et gyldigt chat-ID",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationDiscordId": "Du skal angive et bruger-ID",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPgpPublicKey": "Du skal angive en gyldig offentlig PGP-nøgle",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Notifikationsindstillingerne for web push kunne ikke gemmes.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Notifikationsindstillingerne for web push er blevet gemt!",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Bekræft Kodeord",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Nyt Kodeord",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSet": "Denne brugerkonto har i øjeblikket ikke et kodeord. Konfigurér et kodeord nedenfor så denne konto kan logge ind som en \"lokal bruger.\"",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"components.Discover.DiscoverWatchlist.watchlist": "Plex Merkliste",
|
||||
"components.Discover.MovieGenreList.moviegenres": "Film-Genres",
|
||||
"components.Discover.MovieGenreSlider.moviegenres": "Film-Genres",
|
||||
"components.Discover.NetworkSlider.networks": "Sender",
|
||||
"components.Discover.NetworkSlider.networks": "Dienste",
|
||||
"components.Discover.StudioSlider.studios": "Filmstudio",
|
||||
"components.Discover.TvGenreList.seriesgenres": "Serien-Genres",
|
||||
"components.Discover.TvGenreSlider.tvgenres": "Serien-Genres",
|
||||
@@ -28,17 +28,17 @@
|
||||
"components.Discover.populartv": "Beliebte Serien",
|
||||
"components.Discover.recentlyAdded": "Kürzlich hinzugefügt",
|
||||
"components.Discover.recentrequests": "Bisherige Anfragen",
|
||||
"components.Discover.trending": "Trends",
|
||||
"components.Discover.trending": "Im Trend",
|
||||
"components.Discover.upcoming": "Demnächst erscheinende Filme",
|
||||
"components.Discover.upcomingmovies": "Demnächst erscheinende Filme",
|
||||
"components.Discover.upcomingtv": "Demnächst erscheinende Serien",
|
||||
"components.DownloadBlock.estimatedtime": "Geschätzte {time}",
|
||||
"components.DownloadBlock.formattedTitle": "{title}: Staffel {seasonNumber} Episode {episodeNumber}",
|
||||
"components.DownloadBlock.estimatedtime": "Geschätzt {time}",
|
||||
"components.DownloadBlock.formattedTitle": "{title}: Staffel {seasonNumber} Folge {episodeNumber}",
|
||||
"components.IssueDetails.IssueComment.areyousuredelete": "Soll dieser Kommentar wirklich gelöscht werden?",
|
||||
"components.IssueDetails.IssueComment.delete": "Kommentar löschen",
|
||||
"components.IssueDetails.IssueComment.edit": "Kommentar bearbeiten",
|
||||
"components.IssueDetails.IssueComment.postedby": "Gepostet {relativeTime} von {username}",
|
||||
"components.IssueDetails.IssueComment.postedbyedited": "Gepostet {relativeTime} von {username} (Bearbeitet)",
|
||||
"components.IssueDetails.IssueComment.postedby": "Verfasst {relativeTime} von {username}",
|
||||
"components.IssueDetails.IssueComment.postedbyedited": "Verfasst {relativeTime} von {username} (Bearbeitet)",
|
||||
"components.IssueDetails.IssueComment.validationComment": "Du musst eine Nachricht eingeben",
|
||||
"components.IssueDetails.IssueDescription.deleteissue": "Problem löschen",
|
||||
"components.IssueDetails.IssueDescription.description": "Beschreibung",
|
||||
@@ -54,9 +54,9 @@
|
||||
"components.IssueDetails.episode": "Folge {episodeNumber}",
|
||||
"components.IssueDetails.issuepagetitle": "Problem",
|
||||
"components.IssueDetails.issuetype": "Art",
|
||||
"components.IssueDetails.lastupdated": "Letzte Aktualisierung",
|
||||
"components.IssueDetails.lastupdated": "Letzte Änderung",
|
||||
"components.IssueDetails.leavecomment": "Kommentar",
|
||||
"components.IssueDetails.nocomments": "Keine Kommentare.",
|
||||
"components.IssueDetails.nocomments": "Es gibt keine Kommentare.",
|
||||
"components.IssueDetails.openedby": "#{issueId} geöffnet {relativeTime} von {username}",
|
||||
"components.IssueDetails.openin4karr": "In {arr} 4K öffnen",
|
||||
"components.IssueDetails.openinarr": "In {arr} öffnen",
|
||||
@@ -71,8 +71,8 @@
|
||||
"components.IssueDetails.toasteditdescriptionsuccess": "Problembeschreibung erfolgreich bearbeitet!",
|
||||
"components.IssueDetails.toastissuedeleted": "Problem erfolgreich gelöscht!",
|
||||
"components.IssueDetails.toastissuedeletefailed": "Beim Löschen des Problems ist ein Fehler aufgetreten.",
|
||||
"components.IssueDetails.toaststatusupdated": "Problemstatus erfolgreich aktualisiert!",
|
||||
"components.IssueDetails.toaststatusupdatefailed": "Beim Aktualisieren des Problemstatus ist ein Fehler aufgetreten.",
|
||||
"components.IssueDetails.toaststatusupdated": "Status des Problems erfolgreich aktualisiert!",
|
||||
"components.IssueDetails.toaststatusupdatefailed": "Beim Aktualisieren des Status des Problems ist ein Fehler aufgetreten.",
|
||||
"components.IssueDetails.unknownissuetype": "Unbekannt",
|
||||
"components.IssueList.IssueItem.episodes": "{episodeCount, plural, one {Folge} other {Folgen}}",
|
||||
"components.IssueList.IssueItem.issuestatus": "Status",
|
||||
@@ -103,29 +103,29 @@
|
||||
"components.IssueModal.CreateIssueModal.validationMessageRequired": "Du musst eine Beschreibung eingeben",
|
||||
"components.IssueModal.CreateIssueModal.whatswrong": "Was ist das Problem?",
|
||||
"components.IssueModal.issueAudio": "Ton",
|
||||
"components.IssueModal.issueOther": "Andere",
|
||||
"components.IssueModal.issueOther": "Sonstige",
|
||||
"components.IssueModal.issueSubtitles": "Untertitel",
|
||||
"components.IssueModal.issueVideo": "Video",
|
||||
"components.LanguageSelector.languageServerDefault": "Standard ({language})",
|
||||
"components.LanguageSelector.originalLanguageDefault": "Alle Sprachen",
|
||||
"components.Layout.LanguagePicker.displaylanguage": "Anzeigesprache",
|
||||
"components.Layout.SearchInput.searchPlaceholder": "Nach Filmen und Serien suchen",
|
||||
"components.Layout.SearchInput.searchPlaceholder": "Nach Filmen & Serien suchen",
|
||||
"components.Layout.Sidebar.dashboard": "Entdecken",
|
||||
"components.Layout.Sidebar.issues": "Probleme",
|
||||
"components.Layout.Sidebar.requests": "Anfragen",
|
||||
"components.Layout.Sidebar.settings": "Einstellungen",
|
||||
"components.Layout.Sidebar.users": "Benutzer",
|
||||
"components.Layout.UserDropdown.MiniQuotaDisplay.movierequests": "Film-Anfragen",
|
||||
"components.Layout.UserDropdown.MiniQuotaDisplay.seriesrequests": "Serien-Anfragen",
|
||||
"components.Layout.UserDropdown.MiniQuotaDisplay.movierequests": "Filmanfragen",
|
||||
"components.Layout.UserDropdown.MiniQuotaDisplay.seriesrequests": "Serienanfragen",
|
||||
"components.Layout.UserDropdown.myprofile": "Profil",
|
||||
"components.Layout.UserDropdown.requests": "Anfragen",
|
||||
"components.Layout.UserDropdown.settings": "Einstellungen",
|
||||
"components.Layout.UserDropdown.signout": "Abmelden",
|
||||
"components.Layout.VersionStatus.commitsbehind": "{commitsBehind} {commitsBehind, plural, one {Version} other {Versionen}} hinterher",
|
||||
"components.Layout.VersionStatus.outofdate": "Veraltet",
|
||||
"components.Layout.VersionStatus.streamdevelop": "Jellyseerr Entwicklung",
|
||||
"components.Layout.VersionStatus.streamstable": "Jellyseerr stabil",
|
||||
"components.Login.email": "E-Mail Adresse",
|
||||
"components.Layout.VersionStatus.streamdevelop": "Jellyseerr (Entwicklung)",
|
||||
"components.Layout.VersionStatus.streamstable": "Jellyseerr (Stabil)",
|
||||
"components.Login.email": "E-Mail-Adresse",
|
||||
"components.Login.forgotpassword": "Passwort vergessen?",
|
||||
"components.Login.loginerror": "Beim Anmelden ist etwas schief gelaufen.",
|
||||
"components.Login.password": "Passwort",
|
||||
@@ -172,60 +172,60 @@
|
||||
"components.MovieDetails.originaltitle": "Originaltitel",
|
||||
"components.MovieDetails.overview": "Übersicht",
|
||||
"components.MovieDetails.overviewunavailable": "Übersicht nicht verfügbar.",
|
||||
"components.MovieDetails.physicalrelease": "DVD/Bluray-Veröffentlichung",
|
||||
"components.MovieDetails.productioncountries": "Produktions {countryCount, plural, one {Land} other {Länder}}",
|
||||
"components.MovieDetails.physicalrelease": "Physische Veröffentlichung",
|
||||
"components.MovieDetails.productioncountries": "Produktions{countryCount, plural, one {land} other {länder}}",
|
||||
"components.MovieDetails.recommendations": "Empfehlungen",
|
||||
"components.MovieDetails.releasedate": "{releaseCount, plural, one {Veröffentlichungstermin} other {Veröffentlichungstermine}}",
|
||||
"components.MovieDetails.releasedate": "{releaseCount, plural, one {Erscheinungsdatum} other {Erscheinungsdatum}}",
|
||||
"components.MovieDetails.reportissue": "Problem melden",
|
||||
"components.MovieDetails.revenue": "Einnahmen",
|
||||
"components.MovieDetails.rtaudiencescore": "Rotten Tomatoes Publikumswertung",
|
||||
"components.MovieDetails.rtcriticsscore": "Rotten Tomatoes Tomatometer",
|
||||
"components.MovieDetails.rtaudiencescore": "Rotten Tomatoes - Nutzerwertung",
|
||||
"components.MovieDetails.rtcriticsscore": "Rotten Tomatoes - Tomatometer",
|
||||
"components.MovieDetails.runtime": "{minutes} Minuten",
|
||||
"components.MovieDetails.showless": "Weniger Anzeigen",
|
||||
"components.MovieDetails.showmore": "Mehr Anzeigen",
|
||||
"components.MovieDetails.similar": "Ähnliche Titel",
|
||||
"components.MovieDetails.streamingproviders": "Streamt derzeit auf",
|
||||
"components.MovieDetails.streamingproviders": "Derzeit verfügbar auf",
|
||||
"components.MovieDetails.studio": "{studioCount, plural, one {Studio} other {Studios}}",
|
||||
"components.MovieDetails.theatricalrelease": "Kinostart",
|
||||
"components.MovieDetails.tmdbuserscore": "TMDB-Nutzerwertung",
|
||||
"components.MovieDetails.tmdbuserscore": "TMDB - Nutzerwertung",
|
||||
"components.MovieDetails.viewfullcrew": "Komplette Crew anzeigen",
|
||||
"components.MovieDetails.watchtrailer": "Trailer ansehen",
|
||||
"components.NotificationTypeSelector.adminissuecommentDescription": "Sende eine Benachrichtigung, wenn andere Benutzer Kommentare zu Problemen abgeben.",
|
||||
"components.NotificationTypeSelector.adminissuereopenedDescription": "Sende eine Benachrichtigung, wenn Probleme von anderen Benutzern wieder geöffnet werden.",
|
||||
"components.NotificationTypeSelector.adminissueresolvedDescription": "Sende eine Benachrichtigung, wenn andere Benutzer Kommentare zu Themen abgeben.",
|
||||
"components.NotificationTypeSelector.adminissuecommentDescription": "Benachrichtigung erhalten, wenn andere Benutzer Kommentare zu Problemen verfassen.",
|
||||
"components.NotificationTypeSelector.adminissuereopenedDescription": "Benachrichtigung erhalten, wenn Probleme von anderen Benutzern wieder geöffnet werden.",
|
||||
"components.NotificationTypeSelector.adminissueresolvedDescription": "Benachrichtigung erhalten, wenn Probleme von anderen Benutzern gelöst werden.",
|
||||
"components.NotificationTypeSelector.issuecomment": "Problem Kommentar",
|
||||
"components.NotificationTypeSelector.issuecommentDescription": "Sende eine Benachrichtigungen, wenn Probleme neue Kommentare erhalten.",
|
||||
"components.NotificationTypeSelector.issuecommentDescription": "Benachrichtigung erhalten, wenn Probleme neue Kommentare erhalten.",
|
||||
"components.NotificationTypeSelector.issuecreated": "Problem gemeldet",
|
||||
"components.NotificationTypeSelector.issuecreatedDescription": "Senden eine Benachrichtigungen, wenn Probleme gemeldet werden.",
|
||||
"components.NotificationTypeSelector.issuecreatedDescription": "Benachrichtigung erhalten, wenn Probleme gemeldet werden.",
|
||||
"components.NotificationTypeSelector.issuereopened": "Problem wiedereröffnet",
|
||||
"components.NotificationTypeSelector.issuereopenedDescription": "Sende eine Benachrichtigung, wenn Probleme wieder geöffnet werden.",
|
||||
"components.NotificationTypeSelector.issuereopenedDescription": "Benachrichtigung erhalten, wenn Probleme wieder geöffnet werden.",
|
||||
"components.NotificationTypeSelector.issueresolved": "Problem gelöst",
|
||||
"components.NotificationTypeSelector.issueresolvedDescription": "Senden Benachrichtigungen, wenn Probleme gelöst sind.",
|
||||
"components.NotificationTypeSelector.issueresolvedDescription": "Benachrichtigung erhalten, wenn Probleme gelöst sind.",
|
||||
"components.NotificationTypeSelector.mediaAutoApproved": "Anfrage automatisch genehmigt",
|
||||
"components.NotificationTypeSelector.mediaAutoApprovedDescription": "Sende eine Benachrichtigung, wenn das angeforderte Medium automatisch genehmigt wird.",
|
||||
"components.NotificationTypeSelector.mediaAutoApprovedDescription": "Benachrichtigung erhalten, wenn das angeforderte Medium automatisch genehmigt wird.",
|
||||
"components.NotificationTypeSelector.mediaapproved": "Anfrage genehmigt",
|
||||
"components.NotificationTypeSelector.mediaapprovedDescription": "Sende Benachrichtigungen, wenn angeforderte Medien manuell genehmigt wurden.",
|
||||
"components.NotificationTypeSelector.mediaapprovedDescription": "Benachrichtigung erhalten, wenn angeforderte Medien manuell genehmigt wurden.",
|
||||
"components.NotificationTypeSelector.mediaautorequested": "Anfrage automatisch übermittelt",
|
||||
"components.NotificationTypeSelector.mediaautorequestedDescription": "Erhalten eine Benachrichtigung, wenn neue Medienanfragen für Objekte auf deiner Merkliste automatisch übermittelt werden.",
|
||||
"components.NotificationTypeSelector.mediaautorequestedDescription": "Benachrichtigung erhalten, wenn neue Medienanfragen für Objekte auf deiner Merkliste automatisch übermittelt werden.",
|
||||
"components.NotificationTypeSelector.mediaavailable": "Anfrage verfügbar",
|
||||
"components.NotificationTypeSelector.mediaavailableDescription": "Sendet Benachrichtigungen, wenn angeforderte Medien verfügbar werden.",
|
||||
"components.NotificationTypeSelector.mediaavailableDescription": "Benachrichtigung erhalten, wenn angeforderte Medien verfügbar werden.",
|
||||
"components.NotificationTypeSelector.mediadeclined": "Anfrage abgelehnt",
|
||||
"components.NotificationTypeSelector.mediadeclinedDescription": "Sende eine Benachrichtigungen, wenn Medienanfragen abgelehnt wurden.",
|
||||
"components.NotificationTypeSelector.mediadeclinedDescription": "Benachrichtigung erhalten, wenn Medienanfragen abgelehnt wurden.",
|
||||
"components.NotificationTypeSelector.mediafailed": "Anfrageverarbeitung fehlgeschlagen",
|
||||
"components.NotificationTypeSelector.mediafailedDescription": "Sende Benachrichtigungen, wenn angeforderte Medien nicht zu Radarr oder Sonarr hinzugefügt werden konnten.",
|
||||
"components.NotificationTypeSelector.mediafailedDescription": "Benachrichtigungen senden, wenn angeforderte Medien nicht zu Radarr oder Sonarr hinzugefügt werden konnten.",
|
||||
"components.NotificationTypeSelector.mediarequested": "Anfrage in Bearbeitung",
|
||||
"components.NotificationTypeSelector.mediarequestedDescription": "Sende Benachrichtigungen, wenn neue Medien angefordert wurden und auf Genehmigung warten.",
|
||||
"components.NotificationTypeSelector.mediarequestedDescription": "Benachrichtigungen senden, wenn neue Medien angefordert wurden und auf Genehmigung warten.",
|
||||
"components.NotificationTypeSelector.notificationTypes": "Benachrichtigungstypen",
|
||||
"components.NotificationTypeSelector.userissuecommentDescription": "Sende eine Benachrichtigung, wenn dein Problem neue Kommentare erhält.",
|
||||
"components.NotificationTypeSelector.userissuecreatedDescription": "Lassen dich benachrichtigen, wenn andere Benutzer Probleme melden.",
|
||||
"components.NotificationTypeSelector.userissuereopenedDescription": "Sende eine Benachrichtigung, wenn die von dir gemeldeten Probleme wieder geöffnet werden.",
|
||||
"components.NotificationTypeSelector.userissueresolvedDescription": "Sende eine Benachrichtigung, wenn dein Problem gelöst wurde.",
|
||||
"components.NotificationTypeSelector.usermediaAutoApprovedDescription": "Werde benachrichtigt, wenn andere Nutzer Medien anfordern, welche automatisch angenommen werden.",
|
||||
"components.NotificationTypeSelector.usermediaapprovedDescription": "Werde benachrichtigt, wenn deine Medienanfrage angenommen wurde.",
|
||||
"components.NotificationTypeSelector.usermediaavailableDescription": "Sende eine Benachrichtigung, wenn deine Medienanfragen verfügbar sind.",
|
||||
"components.NotificationTypeSelector.usermediadeclinedDescription": "Werde benachrichtigt, wenn deine Medienanfrage abgelehnt wurde.",
|
||||
"components.NotificationTypeSelector.usermediafailedDescription": "Werde benachrichtigt, wenn die angeforderten Medien bei der Hinzufügung zu Radarr oder Sonarr fehlschlagen.",
|
||||
"components.NotificationTypeSelector.usermediarequestedDescription": "Werde benachrichtigt, wenn andere Nutzer eine Medie anfordern, welches eine Genehmigung erfordert.",
|
||||
"components.NotificationTypeSelector.userissuecommentDescription": "Benachrichtigung erhalten, wenn dein Problem neue Kommentare erhält.",
|
||||
"components.NotificationTypeSelector.userissuecreatedDescription": "Benachrichtigung erhalten, wenn andere Benutzer Probleme melden.",
|
||||
"components.NotificationTypeSelector.userissuereopenedDescription": "Benachrichtigung erhalten, wenn von dir gemeldete Probleme wieder geöffnet werden.",
|
||||
"components.NotificationTypeSelector.userissueresolvedDescription": "Benachrichtigung erhalten, wenn dein Problem gelöst wurde.",
|
||||
"components.NotificationTypeSelector.usermediaAutoApprovedDescription": "Benachrichtigung erhalten, wenn andere Benutzer neue Medienanfragen stellen, die automatisch genehmigt werden.",
|
||||
"components.NotificationTypeSelector.usermediaapprovedDescription": "Benachrichtigung erhalten, wenn deine Medienanfragen genehmigt werden.",
|
||||
"components.NotificationTypeSelector.usermediaavailableDescription": "Benachrichtigung erhalten, wenn deine Medienanfragen verfügbar sind.",
|
||||
"components.NotificationTypeSelector.usermediadeclinedDescription": "Benachrichtigung erhalten, wenn deine Medienanfrage abgelehnt wurde.",
|
||||
"components.NotificationTypeSelector.usermediafailedDescription": "Benachrichtigung erhalten, wenn die angeforderten Medien bei der Hinzufügung zu Radarr oder Sonarr fehlschlagen.",
|
||||
"components.NotificationTypeSelector.usermediarequestedDescription": "Benachrichtigung erhalten, wenn andere Nutzer eine Medie anfordern, welches eine Genehmigung erfordert.",
|
||||
"components.PermissionEdit.admin": "Admin",
|
||||
"components.PermissionEdit.adminDescription": "Voller Administratorzugriff. Umgeht alle anderen Rechteabfragen.",
|
||||
"components.PermissionEdit.advancedrequest": "Erweiterte Anfragen",
|
||||
@@ -242,7 +242,7 @@
|
||||
"components.PermissionEdit.autoapproveMoviesDescription": "Autorisierung der automatischen Freigabe von Anfragen für nicht-4K-Filme.",
|
||||
"components.PermissionEdit.autoapproveSeries": "Automatische Genehmigung von Serien",
|
||||
"components.PermissionEdit.autoapproveSeriesDescription": "Autorisierung der automatischen Freigabe von Anfragen für nicht-4K-Serien.",
|
||||
"components.PermissionEdit.autorequest": "Automatische Anfrage aus Plex-Merkliste",
|
||||
"components.PermissionEdit.autorequest": "Automatische Anfrage aus Plex Merkliste",
|
||||
"components.PermissionEdit.autorequestDescription": "Autorisierung zur automatischen Anfrage von Nicht-4K-Medien über die Plex Merkliste.",
|
||||
"components.PermissionEdit.autorequestMovies": "Filme automatisch anfragen",
|
||||
"components.PermissionEdit.autorequestMoviesDescription": "Autorisierung zur automatischen Anfrage von Nicht-4K-Medien über die Plex Merkliste.",
|
||||
@@ -297,7 +297,7 @@
|
||||
"components.RequestBlock.languageprofile": "Sprachprofil",
|
||||
"components.RequestBlock.lastmodifiedby": "Zuletzt geändert von",
|
||||
"components.RequestBlock.profilechanged": "Qualitätsprofil",
|
||||
"components.RequestBlock.requestdate": "Anfrage-Datum",
|
||||
"components.RequestBlock.requestdate": "Anfragedatum",
|
||||
"components.RequestBlock.requestedby": "Angefragt von",
|
||||
"components.RequestBlock.requestoverrides": "Anfrage Überschreibungen",
|
||||
"components.RequestBlock.rootfolder": "Stammordner",
|
||||
@@ -323,7 +323,7 @@
|
||||
"components.RequestCard.failedretry": "Beim erneuten Versuch die Anfrage zu senden ist ein Fehler aufgetreten.",
|
||||
"components.RequestCard.mediaerror": "{mediaType} wurde nicht gefunden",
|
||||
"components.RequestCard.seasons": "{seasonCount, plural, one {Staffel} other {Staffeln}}",
|
||||
"components.RequestCard.tmdbid": "TMDB-ID",
|
||||
"components.RequestCard.tmdbid": "TMDB ID",
|
||||
"components.RequestCard.tvdbid": "TheTVDB-ID",
|
||||
"components.RequestCard.unknowntitle": "Unbekannter Titel",
|
||||
"components.RequestList.RequestItem.cancelRequest": "Anfrage abbrechen",
|
||||
@@ -336,11 +336,11 @@
|
||||
"components.RequestList.RequestItem.requested": "Angefragt",
|
||||
"components.RequestList.RequestItem.requesteddate": "Angefordert",
|
||||
"components.RequestList.RequestItem.seasons": "{seasonCount, plural, one {Staffel} other {Staffeln}}",
|
||||
"components.RequestList.RequestItem.tmdbid": "TMDB-ID",
|
||||
"components.RequestList.RequestItem.tmdbid": "TMDB ID",
|
||||
"components.RequestList.RequestItem.tvdbid": "TheTVDB-ID",
|
||||
"components.RequestList.RequestItem.unknowntitle": "Unbekannter Titel",
|
||||
"components.RequestList.requests": "Anfragen",
|
||||
"components.RequestList.showallrequests": "Zeige alle Anfragen",
|
||||
"components.RequestList.showallrequests": "Alle Anfragen anzeigen",
|
||||
"components.RequestList.sortAdded": "Zuletzt angefragt",
|
||||
"components.RequestList.sortModified": "Zuletzt geändert",
|
||||
"components.RequestModal.AdvancedRequester.advancedoptions": "Erweiterte Einstellungen",
|
||||
@@ -402,8 +402,8 @@
|
||||
"components.RequestModal.selectmovies": "Wähle Film(e)",
|
||||
"components.RequestModal.selectseason": "Staffel(n) Auswählen",
|
||||
"components.ResetPassword.confirmpassword": "Passwort bestätigen",
|
||||
"components.ResetPassword.email": "E-Mail Adresse",
|
||||
"components.ResetPassword.emailresetlink": "Wiederherstellungs-Link per E-Mail senden",
|
||||
"components.ResetPassword.email": "E-Mail-Adresse",
|
||||
"components.ResetPassword.emailresetlink": "Wiederherstellungs-Link an E-Mail-Adresse senden",
|
||||
"components.ResetPassword.gobacklogin": "Zurück zur Anmeldeseite",
|
||||
"components.ResetPassword.password": "Passwort",
|
||||
"components.ResetPassword.passwordreset": "Passwort zurücksetzen",
|
||||
@@ -412,7 +412,7 @@
|
||||
"components.ResetPassword.resetpasswordsuccessmessage": "Passwort wurde erfolgreich zurückgesetzt!",
|
||||
"components.ResetPassword.validationemailrequired": "Du musst eine gültige E-Mail Adresse angeben",
|
||||
"components.ResetPassword.validationpasswordmatch": "Passwörter müssen übereinstimmen",
|
||||
"components.ResetPassword.validationpasswordminchars": "Passwort ist zu kurz; es sollte mindestens 8 Zeichen lang sein",
|
||||
"components.ResetPassword.validationpasswordminchars": "Das Passwort ist zu kurz, es sollte mindestens 8 Zeichen lang sein",
|
||||
"components.ResetPassword.validationpasswordrequired": "Du musst ein Passwort angeben",
|
||||
"components.Search.search": "Suchen",
|
||||
"components.Search.searchresults": "Suchergebnisse",
|
||||
@@ -428,37 +428,25 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "Es muss mindestens eine Benachrichtigungsart ausgewählt werden",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlRequired": "Es muss eine gültige URL angegeben werden",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL darf nicht mit einem abschließenden Schrägstrich enden",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Dienst aktivieren",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Profil Name",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Wird nur benötigt wenn <code>default</code> Profil nicht verwendet wird",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "LunaSea Benachrichtigungseinstellungen konnten nicht gespeichert werden.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea Benachrichtigungseinstellungen wurden gespeichert!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea Test Benachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "LunaSea Test Benachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea Test Benachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Sie müssen mindestens einen Benachrichtigungstypen auswählen",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Geben sie eine gültige URL an",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Deine Benutzer oder Geräte basierende <LunaSeaLink>Benachrichtigungs-Webhook URL</LunaSeaLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Zugangstoken",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Erstellen Sie einen Token in Ihren <PushbulletSettingsLink>Account Einstellungen</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Erstelle ein Token in deinen <PushbulletSettingsLink>Kontoeinstellungen</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "Agent aktivieren",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.channelTag": "Channel Tag",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsFailed": "Pushbullet-Benachrichtigungseinstellungen konnten nicht gespeichert werden.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsSaved": "Pushbullet-Benachrichtigungseinstellungen erfolgreich gespeichert!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Pushbullet Test Benachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Pushbullet Test Benachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Pushbullet Test Benachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Pushbullet Testbenachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Pushbullet Testbenachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Pushbullet Testbenachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationAccessTokenRequired": "Du musst ein Zugangstoken angeben",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Sie müssen mindestens einen Benachrichtigungstypen auswählen",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Es muss mindestens ein Benachrichtigungstyp ausgewählt sein",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessToken": "Anwendungs API-Token",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Registriere eine Anwendung</ApplicationRegistrationLink> , um diese mit Jellyseerr benutzen zu können",
|
||||
"components.Settings.Notifications.NotificationsPushover.agentenabled": "Agent aktivieren",
|
||||
"components.Settings.Notifications.NotificationsPushover.pushoversettingsfailed": "Pushover-Benachrichtigungseinstellungen konnten nicht gespeichert werden.",
|
||||
"components.Settings.Notifications.NotificationsPushover.pushoversettingssaved": "Pushover-Benachrichtigungseinstellungen erfolgreich gespeichert!",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestFailed": "Pushover Test Benachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSending": "Pushover Test Benachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSuccess": "Pushover Test Benachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestFailed": "Pushover Testbenachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSending": "Pushover Testbenachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSuccess": "Pushover Testbenachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsPushover.userToken": "Benutzer- oder Gruppenschlüssel",
|
||||
"components.Settings.Notifications.NotificationsPushover.userTokenTip": "Ihr 30-stelliger <UsersGroupsLink>Nutzer oder Gruppen Identifikator</UsersGroupsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationAccessTokenRequired": "Du musst ein gültiges Anwendungstoken angeben",
|
||||
@@ -467,18 +455,18 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.agentenabled": "Agent aktivieren",
|
||||
"components.Settings.Notifications.NotificationsSlack.slacksettingsfailed": "Slack-Benachrichtigungseinstellungen konnten nicht gespeichert werden.",
|
||||
"components.Settings.Notifications.NotificationsSlack.slacksettingssaved": "Slack-Benachrichtigungseinstellungen erfolgreich gespeichert!",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestFailed": "Slack Test Benachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSending": "Slack Test Benachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSuccess": "Slack Test Benachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestFailed": "Slack Testbenachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSending": "Slack Testbenachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSuccess": "Slack Testbenachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "Du musst mindestens einen Benachrichtigungstypen auswählen",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationWebhookUrl": "Du musst eine gültige URL angeben",
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrl": "Webhook URL",
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrlTip": "Erstelle eine <WebhookLink>Eingehende Webhook</WebhookLink> integration",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "Agent aktivieren",
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "Jellyseerr muss via HTTPS bereitgestellt werden, um Web-Push Benachrichtigungen empfangen zu können.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestFailed": "Web push Test Benachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSending": "Web push Test Benachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSuccess": "Web push Test Benachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestFailed": "Web push Testbenachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSending": "Web push Testbenachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSuccess": "Web push Testbenachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingsfailed": "Web push Benachrichtigungseinstellungen konnten nicht gespeichert werden.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingssaved": "Web push Benachrichtigungseinstellungen erfolgreich gespeichert!",
|
||||
"components.Settings.Notifications.NotificationsWebhook.agentenabled": "Dienst aktivieren",
|
||||
@@ -487,9 +475,9 @@
|
||||
"components.Settings.Notifications.NotificationsWebhook.resetPayload": "Auf Standard zurücksetzen",
|
||||
"components.Settings.Notifications.NotificationsWebhook.resetPayloadSuccess": "JSON-Inhalt erfolgreich zurückgesetzt!",
|
||||
"components.Settings.Notifications.NotificationsWebhook.templatevariablehelp": "Hilfe zu Vorlagenvariablen",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestFailed": "Webhook Test Benachrichtigung konnte nicht gesendet werden.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSending": "Webhook Test Benachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSuccess": "Webhook Test Benachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestFailed": "Webhook Testbenachrichtigung konnte nicht gesendet werden.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSending": "Webhook Testbenachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSuccess": "Webhook Testbenachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationJsonPayloadRequired": "Du musst einen gültigen JSON-Inhalt angeben",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationTypes": "Du musst mindestens einen Benachrichtigungstypen auswählen",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationWebhookUrl": "Du musst eine gültige URL angeben",
|
||||
@@ -523,22 +511,22 @@
|
||||
"components.Settings.Notifications.pgpPasswordTip": "Signiere verschlüsselte E-Mail-Nachrichten mit <OpenPgpLink>OpenPGP</OpenPgpLink>",
|
||||
"components.Settings.Notifications.pgpPrivateKey": "PGP Privater Schlüssel",
|
||||
"components.Settings.Notifications.pgpPrivateKeyTip": "Signiere verschlüsselte E-Mail-Nachrichten mit <OpenPgpLink>OpenPGP</OpenPgpLink>",
|
||||
"components.Settings.Notifications.sendSilently": "Sende stumm",
|
||||
"components.Settings.Notifications.sendSilently": "Lautlos senden",
|
||||
"components.Settings.Notifications.sendSilentlyTip": "Sende Benachrichtigungen ohne Ton",
|
||||
"components.Settings.Notifications.senderName": "Absendername",
|
||||
"components.Settings.Notifications.smtpHost": "SMTP-Host",
|
||||
"components.Settings.Notifications.smtpPort": "SMTP-Port",
|
||||
"components.Settings.Notifications.telegramsettingsfailed": "Telegram-Benachrichtigungseinstellungen konnten nicht gespeichert werden.",
|
||||
"components.Settings.Notifications.telegramsettingssaved": "Telegram-Benachrichtigungseinstellungen erfolgreich gespeichert!",
|
||||
"components.Settings.Notifications.toastDiscordTestFailed": "Discord Test Benachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.toastDiscordTestSending": "Discord Test Benachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.toastDiscordTestSuccess": "Discord Test Benachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.toastEmailTestFailed": "E-Mail Test Benachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.toastEmailTestSending": "Email Test Benachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.toastEmailTestSuccess": "Email Test Benachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.toastTelegramTestFailed": "Telegram Test Benachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.toastTelegramTestSending": "Telegram Test Benachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.toastTelegramTestSuccess": "Telegram Test Benachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.toastDiscordTestFailed": "Discord Testbenachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.toastDiscordTestSending": "Discord Testbenachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.toastDiscordTestSuccess": "Discord Testbenachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.toastEmailTestFailed": "E-Mail Testbenachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.toastEmailTestSending": "Email Testbenachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.toastEmailTestSuccess": "Email Testbenachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.toastTelegramTestFailed": "Telegram Testbenachrichtigung fehlgeschlagen.",
|
||||
"components.Settings.Notifications.toastTelegramTestSending": "Telegram Testbenachrichtigung wird gesendet…",
|
||||
"components.Settings.Notifications.toastTelegramTestSuccess": "Telegram Testbenachrichtigung gesendet!",
|
||||
"components.Settings.Notifications.validationBotAPIRequired": "Du musst ein Bot-Autorisierungstoken angeben",
|
||||
"components.Settings.Notifications.validationChatIdRequired": "Du musst eine gültige Chat-ID angeben",
|
||||
"components.Settings.Notifications.validationEmail": "Du musst eine gültige E-Mail-Adresse angeben",
|
||||
@@ -579,13 +567,13 @@
|
||||
"components.Settings.RadarrModal.selecttags": "Tags auswählen",
|
||||
"components.Settings.RadarrModal.server4k": "4K-Server",
|
||||
"components.Settings.RadarrModal.servername": "Servername",
|
||||
"components.Settings.RadarrModal.ssl": "SSL aktivieren",
|
||||
"components.Settings.RadarrModal.ssl": "SSL verwenden",
|
||||
"components.Settings.RadarrModal.syncEnabled": "Scannen aktivieren",
|
||||
"components.Settings.RadarrModal.tags": "Tags",
|
||||
"components.Settings.RadarrModal.testFirstQualityProfiles": "Teste die Verbindung, um Qualitätsprofile zu laden",
|
||||
"components.Settings.RadarrModal.testFirstRootFolders": "Teste die Verbindung, um Stammordner zu laden",
|
||||
"components.Settings.RadarrModal.testFirstTags": "Teste Verbindung, um Tags zu laden",
|
||||
"components.Settings.RadarrModal.toastRadarrTestFailure": "Verbindung zu Radarr fehlgeschlagen.",
|
||||
"components.Settings.RadarrModal.testFirstTags": "Teste die Verbindung, um Tags zu laden",
|
||||
"components.Settings.RadarrModal.toastRadarrTestFailure": "Die Verbindung zu Radarr fehlgeschlagen.",
|
||||
"components.Settings.RadarrModal.toastRadarrTestSuccess": "Radarr-Verbindung erfolgreich hergestellt!",
|
||||
"components.Settings.RadarrModal.validationApiKeyRequired": "Du musst einen API-Schlüssel angeben",
|
||||
"components.Settings.RadarrModal.validationApplicationUrl": "Du musst eine gültige URL angeben",
|
||||
@@ -607,7 +595,7 @@
|
||||
"components.Settings.SettingsAbout.Releases.viewongithub": "Auf GitHub anzeigen",
|
||||
"components.Settings.SettingsAbout.about": "Über",
|
||||
"components.Settings.SettingsAbout.appDataPath": "Datenverzeichnis",
|
||||
"components.Settings.SettingsAbout.betawarning": "Das ist eine BETA Software. Einige Funktionen könnten nicht richtig/stabil funktionieren. Bitte sämtliche Fehler auf GitHub melden!",
|
||||
"components.Settings.SettingsAbout.betawarning": "BETA-Software: Funktionen können fehlerhaft oder instabil sein. Probleme bitte auf GitHub melden!",
|
||||
"components.Settings.SettingsAbout.documentation": "Dokumentation",
|
||||
"components.Settings.SettingsAbout.gettingsupport": "Hilfe erhalten",
|
||||
"components.Settings.SettingsAbout.githubdiscussions": "GitHub-Diskussionen",
|
||||
@@ -615,8 +603,8 @@
|
||||
"components.Settings.SettingsAbout.outofdate": "Veraltet",
|
||||
"components.Settings.SettingsAbout.overseerrinformation": "Über Jellyseerr",
|
||||
"components.Settings.SettingsAbout.preferredmethod": "Bevorzugt",
|
||||
"components.Settings.SettingsAbout.runningDevelop": "Sie benutzen den Branch<code>develop</code> von Jellyseerr, welcher nur für Entwickler, bzw. \"Bleeding-Edge\" Tests empfohlen wird.",
|
||||
"components.Settings.SettingsAbout.supportoverseerr": "Unterstütze Overseerr",
|
||||
"components.Settings.SettingsAbout.runningDevelop": "Es wird der <code>develop</code>-Branch von Jellyseerr verwendet, der nur für Mitwirkende an der Entwicklung oder für Tests der neuesten Funktionen empfohlen wird.",
|
||||
"components.Settings.SettingsAbout.supportoverseerr": "Overseerr unterstützen",
|
||||
"components.Settings.SettingsAbout.timezone": "Zeitzone",
|
||||
"components.Settings.SettingsAbout.totalmedia": "Medien insgesamt",
|
||||
"components.Settings.SettingsAbout.totalrequests": "Anfragen insgesamt",
|
||||
@@ -729,14 +717,14 @@
|
||||
"components.Settings.SonarrModal.selecttags": "Wähle Tags",
|
||||
"components.Settings.SonarrModal.server4k": "4K-Server",
|
||||
"components.Settings.SonarrModal.servername": "Servername",
|
||||
"components.Settings.SonarrModal.ssl": "SSL aktivieren",
|
||||
"components.Settings.SonarrModal.ssl": "SSL verwenden",
|
||||
"components.Settings.SonarrModal.syncEnabled": "Scannen aktivieren",
|
||||
"components.Settings.SonarrModal.tags": "Tags",
|
||||
"components.Settings.SonarrModal.testFirstLanguageProfiles": "Teste die Verbindung zum Laden von Sprachprofilen",
|
||||
"components.Settings.SonarrModal.testFirstQualityProfiles": "Teste die Verbindung, um Qualitätsprofile zu laden",
|
||||
"components.Settings.SonarrModal.testFirstRootFolders": "Teste die Verbindung, um Stammordner zu laden",
|
||||
"components.Settings.SonarrModal.testFirstTags": "Teste Verbindung, um Tags zu laden",
|
||||
"components.Settings.SonarrModal.toastSonarrTestFailure": "Verbindung zu Sonarr fehlgeschlagen.",
|
||||
"components.Settings.SonarrModal.testFirstTags": "Teste die Verbindung, um Tags zu laden",
|
||||
"components.Settings.SonarrModal.toastSonarrTestFailure": "Die Verbindung zu Sonarr ist fehlgeschlagen.",
|
||||
"components.Settings.SonarrModal.toastSonarrTestSuccess": "Sonarr-Verbindung erfolgreich hergestellt!",
|
||||
"components.Settings.SonarrModal.validationApiKeyRequired": "Du musst einen API-Schlüssel angeben",
|
||||
"components.Settings.SonarrModal.validationApplicationUrl": "Du musst eine gültige URL angeben",
|
||||
@@ -755,14 +743,13 @@
|
||||
"components.Settings.addsonarr": "Sonarr Server hinzufügen",
|
||||
"components.Settings.advancedTooltip": "Bei falscher Konfiguration dieser Einstellung, kann dies zu einer Funktionsstörung führen",
|
||||
"components.Settings.cancelscan": "Durchsuchung abbrechen",
|
||||
"components.Settings.copied": "API-Schlüssel in die Zwischenablage kopiert.",
|
||||
"components.Settings.currentlibrary": "Aktuelle Bibliothek: {name}",
|
||||
"components.Settings.default": "Standardmäßig",
|
||||
"components.Settings.default4k": "Standard-4K",
|
||||
"components.Settings.deleteServer": "{serverType} Server löschen",
|
||||
"components.Settings.deleteserverconfirm": "Bist du sicher, dass du diesen Server löschen möchtest?",
|
||||
"components.Settings.email": "E-Mail",
|
||||
"components.Settings.enablessl": "SSL aktivieren",
|
||||
"components.Settings.enablessl": "SSL verwenden",
|
||||
"components.Settings.experimentalTooltip": "Die Aktivierung dieser Einstellung kann zu einem unerwarteten Verhalten der Anwendung führen",
|
||||
"components.Settings.externalUrl": "Externe URL",
|
||||
"components.Settings.hostname": "Hostname oder IP-Adresse",
|
||||
@@ -853,16 +840,16 @@
|
||||
"components.StatusChecker.restartRequiredDescription": "Starte bitte den Server neu, um die aktualisierten Einstellungen zu übernehmen.",
|
||||
"components.TitleCard.cleardata": "Daten löschen",
|
||||
"components.TitleCard.mediaerror": "{mediaType} wurde nicht gefunden",
|
||||
"components.TitleCard.tmdbid": "TMDB-ID",
|
||||
"components.TitleCard.tmdbid": "TMDB ID",
|
||||
"components.TitleCard.tvdbid": "TheTVDB-ID",
|
||||
"components.TvDetails.Season.noepisodes": "Liste der Episoden nicht verfügbar.",
|
||||
"components.TvDetails.Season.noepisodes": "Liste der Folgen nicht verfügbar.",
|
||||
"components.TvDetails.Season.somethingwentwrong": "Beim Datenabruf der Staffel ist etwas schief gelaufen.",
|
||||
"components.TvDetails.TvCast.fullseriescast": "Komplette Serien Besetzung",
|
||||
"components.TvDetails.TvCrew.fullseriescrew": "Komplette Serien-Crew",
|
||||
"components.TvDetails.anime": "Anime",
|
||||
"components.TvDetails.cast": "Besetzung",
|
||||
"components.TvDetails.episodeCount": "{episodeCount, plural, one {# Episode} other {# Episoden}}",
|
||||
"components.TvDetails.episodeRuntime": "Episodenlaufzeit",
|
||||
"components.TvDetails.episodeCount": "{episodeCount, plural, one {# Folge} other {# Folgen}}",
|
||||
"components.TvDetails.episodeRuntime": "Laufzeit der Folge",
|
||||
"components.TvDetails.episodeRuntimeMinutes": "{runtime} Minuten",
|
||||
"components.TvDetails.firstAirDate": "Erstausstrahlung",
|
||||
"components.TvDetails.manageseries": "Serie verwalten",
|
||||
@@ -872,11 +859,11 @@
|
||||
"components.TvDetails.originaltitle": "Originaltitel",
|
||||
"components.TvDetails.overview": "Übersicht",
|
||||
"components.TvDetails.overviewunavailable": "Übersicht nicht verfügbar.",
|
||||
"components.TvDetails.productioncountries": "Produktions {countryCount, plural, one {Land} other {Länder}}",
|
||||
"components.TvDetails.productioncountries": "Produktions{countryCount, plural, one {land} other {länder}}",
|
||||
"components.TvDetails.recommendations": "Empfehlungen",
|
||||
"components.TvDetails.reportissue": "Problem melden",
|
||||
"components.TvDetails.rtaudiencescore": "Rotten Tomatoes Publikumswertung",
|
||||
"components.TvDetails.rtcriticsscore": "Rotten Tomatoes Tomatometer",
|
||||
"components.TvDetails.rtaudiencescore": "Rotten Tomatoes - Nutzerwertung",
|
||||
"components.TvDetails.rtcriticsscore": "Rotten Tomatoes - Tomatometer",
|
||||
"components.TvDetails.seasonnumber": "Staffel {seasonNumber}",
|
||||
"components.TvDetails.seasons": "{seasonCount, plural, one {# Staffel} other {# Staffeln}}",
|
||||
"components.TvDetails.seasonstitle": "Staffeln",
|
||||
@@ -884,7 +871,7 @@
|
||||
"components.TvDetails.similar": "Ähnliche Serien",
|
||||
"components.TvDetails.status4k": "4K {status}",
|
||||
"components.TvDetails.streamingproviders": "Streamt derzeit auf",
|
||||
"components.TvDetails.tmdbuserscore": "TMDB-Nutzerwertung",
|
||||
"components.TvDetails.tmdbuserscore": "TMDB - Nutzerwertung",
|
||||
"components.TvDetails.viewfullcrew": "Komplette Crew anzeigen",
|
||||
"components.TvDetails.watchtrailer": "Trailer ansehen",
|
||||
"components.UserList.accounttype": "Art",
|
||||
@@ -898,8 +885,8 @@
|
||||
"components.UserList.creating": "Erstelle…",
|
||||
"components.UserList.deleteconfirm": "Möchtest du diesen Benutzer wirklich löschen? Alle seine Anfragendaten werden dauerhaft entfernt.",
|
||||
"components.UserList.deleteuser": "Benutzer löschen",
|
||||
"components.UserList.edituser": "Benutzerberechtigungen Bearbeiten",
|
||||
"components.UserList.email": "E-Mail Adresse",
|
||||
"components.UserList.edituser": "Benutzerberechtigungen bearbeiten",
|
||||
"components.UserList.email": "E-Mail-Adresse",
|
||||
"components.UserList.importedfromplex": "<strong>{userCount}</strong> Plex {userCount, Plural, one {Benutzer} other {Benutzer}} erfolgreich importiert!",
|
||||
"components.UserList.importfrommediaserver": "{mediaServerName}-Benutzer importieren",
|
||||
"components.UserList.importfromplex": "Plex Benutzer importieren",
|
||||
@@ -933,7 +920,7 @@
|
||||
"components.UserProfile.UserSettings.UserPermissions.toastSettingsSuccess": "Berechtigungen erfolgreich gespeichert!",
|
||||
"components.UserProfile.UserSettings.UserPermissions.toastSettingsFailure": "Beim Speichern der Einstellungen ist etwas schief gelaufen.",
|
||||
"components.UserProfile.UserSettings.UserPermissions.permissions": "Berechtigungen",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.validationNewPasswordLength": "Passwort ist zu kurz; es sollte mindestens 8 Zeichen lang sein",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.validationNewPasswordLength": "Das Passwort ist zu kurz, es sollte mindestens 8 Zeichen lang sein",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.validationNewPassword": "Du musst ein neues Passwort angeben",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.validationCurrentPassword": "Du musst dein aktuelles Passwort angeben",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.validationConfirmPasswordSame": "Das Passwort muss übereinstimmen",
|
||||
@@ -961,7 +948,7 @@
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.region": "Region Entdecken",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.originallanguageTip": "Filtere Inhalte nach Originalsprache",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.originallanguage": "Sprache des Bereiches \"Entdecken\"",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.nopermissionDescription": "Sie haben keine Berechtigung, das Kennwort dieses Benutzers zu ändern.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.nopermissionDescription": "Es besteht keine Berechtigung, das Passwort dieses Benutzers zu ändern.",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.user": "Benutzer",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.role": "Rolle",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.owner": "Besitzer",
|
||||
@@ -1001,7 +988,7 @@
|
||||
"i18n.requesting": "Anfordern…",
|
||||
"i18n.request4k": "In 4K anfragen",
|
||||
"i18n.previous": "Zurück",
|
||||
"i18n.notrequested": "Nicht Angefragt",
|
||||
"i18n.notrequested": "Nicht angefragt",
|
||||
"i18n.noresults": "Keine Ergebnisse.",
|
||||
"i18n.next": "Weiter",
|
||||
"i18n.movie": "Film",
|
||||
@@ -1063,12 +1050,12 @@
|
||||
"components.UserProfile.emptywatchlist": "Hier erscheinen deine zur <PlexWatchlistSupportLink>Plex Merkliste</PlexWatchlistSupportLink> hinzugefügte Medien.",
|
||||
"components.UserProfile.plexwatchlist": "Plex Merkliste",
|
||||
"components.Discover.DiscoverTvKeyword.keywordSeries": "{keywordTitle} Serien",
|
||||
"components.Discover.moviegenres": "Film Genre",
|
||||
"components.Discover.moviegenres": "Film-Genres",
|
||||
"components.Discover.studios": "Studios",
|
||||
"components.Discover.tmdbmoviegenre": "TMDB Film Genre",
|
||||
"components.Discover.tmdbtvgenre": "TMDB Serien Genre",
|
||||
"components.Discover.tmdbmoviegenre": "TMDB Film-Genre",
|
||||
"components.Discover.tmdbtvgenre": "TMDB Serien-Genre",
|
||||
"components.Discover.tmdbtvkeyword": "TMDB Serien Stichwort",
|
||||
"components.Discover.tvgenres": "Serien Genre",
|
||||
"components.Discover.tvgenres": "Serien-Genres",
|
||||
"components.Settings.SettingsMain.apikey": "API-Schlüssel",
|
||||
"components.Settings.SettingsMain.applicationTitle": "Anwendungstitel",
|
||||
"components.Settings.SettingsMain.general": "Allgemein",
|
||||
@@ -1083,11 +1070,11 @@
|
||||
"components.Discover.tmdbsearch": "TMDB Suche",
|
||||
"components.Settings.SettingsMain.toastApiKeyFailure": "Etwas ist schiefgelaufen während der Generierung eines neuen API Schlüssels.",
|
||||
"components.Settings.SettingsMain.toastSettingsSuccess": "Einstellungen erfolgreich gespeichert!",
|
||||
"components.Discover.tmdbmoviekeyword": "TMDB Film Stichwort",
|
||||
"components.Discover.tmdbmoviekeyword": "TMDB Film-Stichwort",
|
||||
"components.Settings.SettingsMain.validationApplicationTitle": "Du musst einen Anwendungstitel angeben",
|
||||
"components.Discover.PlexWatchlistSlider.emptywatchlist": "Medien in deiner <PlexWatchlistSupportLink>Plex Merkliste</PlexWatchlistSupportLink> erscheinen hier.",
|
||||
"components.Settings.SettingsMain.cacheImagesTip": "Cache extern gehostete Bilder (erfordert eine beträchtliche Menge an Speicherplatz)",
|
||||
"components.Discover.networks": "Sender",
|
||||
"components.Discover.networks": "Dienste",
|
||||
"components.Discover.tmdbstudio": "TMDB Studio",
|
||||
"components.Settings.SettingsMain.applicationurl": "Anwendung URL",
|
||||
"components.Settings.SettingsMain.cacheImages": "Bild-Caching aktivieren",
|
||||
@@ -1095,27 +1082,27 @@
|
||||
"components.Settings.SettingsMain.originallanguage": "Sprache des Bereiches \"Entdecken\"",
|
||||
"components.Settings.SettingsMain.partialRequestsEnabled": "Teilweise Serienanfragen zulassen",
|
||||
"components.Settings.SettingsMain.toastSettingsFailure": "Beim Speichern der Einstellungen ist ein Fehler aufgetreten.",
|
||||
"components.Discover.tmdbnetwork": "TMDB Sender",
|
||||
"components.Discover.tmdbnetwork": "TMDB Netzwerk",
|
||||
"components.Settings.SettingsMain.originallanguageTip": "Inhalt nach Originalsprache filtern",
|
||||
"components.Discover.CreateSlider.addSlider": "Slider hinzufügen",
|
||||
"components.Discover.CreateSlider.addcustomslider": "Benutzerdefinierten Slider erstellen",
|
||||
"components.Discover.CreateSlider.addfail": "Neuer Slider konnte nicht erstellt werden.",
|
||||
"components.Discover.CreateSlider.addsuccess": "Ein neuer Slider wurde erstellt und die Einstellungen wurden gespeichert.",
|
||||
"components.Discover.CreateSlider.editSlider": "Slider bearbeiten",
|
||||
"components.Discover.CreateSlider.editfail": "Slider konnte nicht bearbeitet werden.",
|
||||
"components.Discover.CreateSlider.editsuccess": "Slider bearbeitet und Einstellung gespeichert.",
|
||||
"components.Discover.CreateSlider.addSlider": "Schieberegler hinzufügen",
|
||||
"components.Discover.CreateSlider.addcustomslider": "Benutzerdefinierten Schieberegler erstellen",
|
||||
"components.Discover.CreateSlider.addfail": "Neuer Schieberegler konnte nicht erstellt werden.",
|
||||
"components.Discover.CreateSlider.addsuccess": "Ein neuer Schieberegler wurde erstellt und die Einstellungen wurden gespeichert.",
|
||||
"components.Discover.CreateSlider.editSlider": "Schieberegler bearbeiten",
|
||||
"components.Discover.CreateSlider.editfail": "Schieberegler konnte nicht bearbeitet werden.",
|
||||
"components.Discover.CreateSlider.editsuccess": "Schieberegler bearbeitet und Einstellung gespeichert.",
|
||||
"components.Discover.CreateSlider.needresults": "Es muss mindestens 1 Ergebnis vorhanden sein.",
|
||||
"components.Layout.Sidebar.browsemovies": "Filme",
|
||||
"components.Layout.Sidebar.browsetv": "Serien",
|
||||
"components.Discover.CreateSlider.nooptions": "Keine Ergebnisse.",
|
||||
"components.Discover.CreateSlider.providetmdbgenreid": "Hinterlege eine TMDB Genre ID",
|
||||
"components.Discover.CreateSlider.providetmdbkeywordid": "Hinterlege eine TMDB Keyword ID",
|
||||
"components.Discover.CreateSlider.providetmdbkeywordid": "Hinterlege eine TMDB Schlüsselwort ID",
|
||||
"components.Discover.CreateSlider.providetmdbnetwork": "Hinterlege eine TMDB Netzwerk ID",
|
||||
"components.Discover.CreateSlider.providetmdbsearch": "Geben Sie eine Suchanfrage an",
|
||||
"components.Discover.CreateSlider.providetmdbsearch": "Gib eine Suchanfrage ein",
|
||||
"components.Discover.CreateSlider.validationTitlerequired": "Du musst einen Titel eingeben.",
|
||||
"components.Discover.DiscoverSliderEdit.remove": "Entfernen",
|
||||
"components.Discover.DiscoverSliderEdit.deletefail": "Slider konnte nicht gelöscht werden.",
|
||||
"components.Discover.DiscoverSliderEdit.deletesuccess": "Slider erfolgreich entfernt.",
|
||||
"components.Discover.DiscoverSliderEdit.deletefail": "Schieberegler konnte nicht gelöscht werden.",
|
||||
"components.Discover.DiscoverSliderEdit.deletesuccess": "Schieberegler erfolgreich entfernt.",
|
||||
"components.Discover.DiscoverMovies.discovermovies": "Filme",
|
||||
"components.Discover.DiscoverMovies.sortReleaseDateAsc": "Erscheinungsdatum (aufsteigend)",
|
||||
"components.Discover.DiscoverMovies.sortReleaseDateDesc": "Erscheinungsdatum (absteigend)",
|
||||
@@ -1126,9 +1113,9 @@
|
||||
"components.Discover.DiscoverTv.sortFirstAirDateAsc": "Erstausstrahlung (aufsteigend)",
|
||||
"components.Discover.DiscoverTv.sortPopularityAsc": "Beliebtheit (aufsteigend)",
|
||||
"components.Discover.DiscoverTv.sortPopularityDesc": "Beliebtheit (absteigend)",
|
||||
"components.Discover.CreateSlider.slidernameplaceholder": "Name des Slider",
|
||||
"components.Discover.CreateSlider.slidernameplaceholder": "Name des Schiebereglers",
|
||||
"components.Settings.SettingsJobsCache.availability-sync": "Medienverfügbarkeit Sync",
|
||||
"components.Discover.FilterSlideover.activefilters": "{count, plural, one {# Aktiver Filter} other {# Aktive Filter}}",
|
||||
"components.Discover.FilterSlideover.activefilters": "{count, plural, one {# aktiver Filter} other {# aktive Filter}}",
|
||||
"components.Discover.FilterSlideover.originalLanguage": "Originalsprache",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleSelectorSeconds": "Alle {jobScheduleSeconds, plural, one {Sekunde} other {{jobScheduleSeconds} Sekunden}}",
|
||||
"components.Discover.updatefailed": "Bei der Aktualisierung der Entdecken-Einstellungen ist ein Fehler aufgetreten.",
|
||||
@@ -1149,50 +1136,50 @@
|
||||
"components.Discover.resetsuccess": "Die Entdecken-Einstellungen wurden erfolgreich zurückgesetzt.",
|
||||
"components.Discover.stopediting": "Bearbeitung stoppen",
|
||||
"components.Discover.resettodefault": "Zurücksetzen auf Standard",
|
||||
"components.Discover.resetwarning": "Setzt alle Slider auf die Standardwerte zurück. Dadurch werden auch alle benutzerdefinierten Slider gelöscht!",
|
||||
"components.Discover.DiscoverMovies.activefilters": "{count, plural, one {# Aktiver Filter} other {# Aktive Filter}}",
|
||||
"components.Discover.resetwarning": "Setzt alle Schieberegler auf die Standardwerte zurück. Dadurch werden auch alle benutzerdefinierten Schieberegler gelöscht!",
|
||||
"components.Discover.DiscoverMovies.activefilters": "{count, plural, one {# aktiver Filter} other {# aktive Filter}}",
|
||||
"components.Discover.DiscoverMovies.sortPopularityAsc": "Beliebtheit (aufsteigend)",
|
||||
"components.Discover.DiscoverMovies.sortPopularityDesc": "Beliebtheit (absteigend)",
|
||||
"components.Discover.DiscoverMovies.sortTmdbRatingAsc": "TMDB-Bewertung (aufsteigend)",
|
||||
"components.Discover.DiscoverMovies.sortTmdbRatingDesc": "TMDB-Bewertung (absteigend)",
|
||||
"components.Discover.DiscoverTv.activefilters": "{count, plural, one {# Aktiver Filter} other {# Aktive Filter}}",
|
||||
"components.Discover.DiscoverMovies.sortTmdbRatingAsc": "TMDB Bewertung (aufsteigend)",
|
||||
"components.Discover.DiscoverMovies.sortTmdbRatingDesc": "TMDB Bewertung (absteigend)",
|
||||
"components.Discover.DiscoverTv.activefilters": "{count, plural, one {# aktiver Filter} other {# aktive Filter}}",
|
||||
"components.Discover.DiscoverTv.sortTitleAsc": "Titel (A-Z) (aufsteigend)",
|
||||
"components.Discover.DiscoverTv.sortTitleDesc": "Titel (Z-A) (absteigend)",
|
||||
"components.Discover.DiscoverTv.sortTmdbRatingAsc": "TMDB-Bewertung (aufsteigend)",
|
||||
"components.Discover.DiscoverTv.sortTmdbRatingDesc": "TMDB-Bewertung (absteigend)",
|
||||
"components.Discover.DiscoverTv.sortTmdbRatingAsc": "TMDB Bewertung (aufsteigend)",
|
||||
"components.Discover.DiscoverTv.sortTmdbRatingDesc": "TMDB Bewertung (absteigend)",
|
||||
"components.Discover.FilterSlideover.clearfilters": "Aktive Filter löschen",
|
||||
"components.Discover.FilterSlideover.filters": "Filter",
|
||||
"components.Discover.FilterSlideover.firstAirDate": "Datum der Erstausstrahlung",
|
||||
"components.Discover.FilterSlideover.from": "Vom",
|
||||
"components.Discover.FilterSlideover.from": "Von",
|
||||
"components.Discover.FilterSlideover.genres": "Genres",
|
||||
"components.Discover.FilterSlideover.keywords": "Stichwörter",
|
||||
"components.Discover.FilterSlideover.ratingText": "Bewertungen zwischen {minValue} und {maxValue}",
|
||||
"components.Discover.FilterSlideover.releaseDate": "Erscheinungsdatum",
|
||||
"components.Discover.FilterSlideover.runtime": "Laufzeit",
|
||||
"components.Discover.FilterSlideover.runtimeText": "{minValue}-{maxValue} Minuten Laufzeit",
|
||||
"components.Discover.FilterSlideover.tmdbuserscore": "TMDB-Benutzerbewertung",
|
||||
"components.Discover.FilterSlideover.tmdbuserscore": "TMDB - Nutzerwertung",
|
||||
"components.Discover.FilterSlideover.to": "Bis",
|
||||
"components.Discover.createnewslider": "Neuen Slider erstellen",
|
||||
"components.Discover.createnewslider": "Neuen Schieberegler erstellen",
|
||||
"components.Discover.FilterSlideover.studio": "Studio",
|
||||
"components.Discover.FilterSlideover.streamingservices": "Streaming-Dienste",
|
||||
"components.Discover.FilterSlideover.streamingservices": "Streamingdienste",
|
||||
"components.Selector.nooptions": "Keine Ergebnisse.",
|
||||
"components.Selector.searchKeywords": "Stichwörter suchen…",
|
||||
"components.Selector.searchStudios": "Studios suchen…",
|
||||
"components.Discover.tmdbmoviestreamingservices": "TMDB Film-Streaming-Dienste",
|
||||
"components.Discover.tmdbtvstreamingservices": "TMDB TV-Streaming-Dienste",
|
||||
"components.Discover.tmdbmoviestreamingservices": "TMDB Film-Streamingdienste",
|
||||
"components.Discover.tmdbtvstreamingservices": "TMDB TV-Streamingdienste",
|
||||
"i18n.collection": "Sammlung",
|
||||
"components.Discover.FilterSlideover.tmdbuservotecount": "Anzahl an TMDB-Benutzerbewertungen",
|
||||
"components.Discover.FilterSlideover.tmdbuservotecount": "Anzahl der TMDB-Nutzerwertungen",
|
||||
"components.Settings.RadarrModal.tagRequestsInfo": "Füge automatisch ein Tag hinzu mit der ID und dem Namen des anfordernden Nutzers",
|
||||
"components.MovieDetails.imdbuserscore": "IMDB Nutzer Bewertung",
|
||||
"components.MovieDetails.imdbuserscore": "IMDb - Nutzerwertung",
|
||||
"components.Settings.SonarrModal.tagRequests": "Tag Anforderungen",
|
||||
"components.Discover.FilterSlideover.voteCount": "Anzahl Abstimmungen zwischen {minValue} und {maxValue}",
|
||||
"components.Discover.FilterSlideover.voteCount": "Anzahl der Abstimmungen zwischen {minValue} und {maxValue}",
|
||||
"components.Settings.SonarrModal.tagRequestsInfo": "Füge automatisch einen zusätzlichen Tag mit der ID & Namen des anfordernden Nutzers",
|
||||
"components.Layout.UserWarnings.passwordRequired": "Ein Passwort ist erforderlich.",
|
||||
"components.Login.description": "Da du dich zum ersten Mal bei {applicationName} anmeldest, musst du eine gültige E-Mail-Adresse angeben.",
|
||||
"components.Layout.UserWarnings.emailRequired": "E-Mail Adresse ist erforderlich.",
|
||||
"components.Layout.UserWarnings.emailInvalid": "E-Mail Adresse ist nicht gültig.",
|
||||
"components.Layout.UserWarnings.emailRequired": "Eine E-Mail-Adresse ist erforderlich.",
|
||||
"components.Layout.UserWarnings.emailInvalid": "Die E-Mail-Adresse ist ungültig.",
|
||||
"components.Login.credentialerror": "Der Benutzername oder das Passwort ist falsch.",
|
||||
"components.Login.emailtooltip": "Die Adresse muss nicht mit Ihrer {mediaServerName}-Instanz verbunden sein.",
|
||||
"components.Login.emailtooltip": "Die Adresse muss nicht mit deiner {mediaServerName}-Instanz verbunden sein.",
|
||||
"components.Login.initialsignin": "Verbinde",
|
||||
"components.Login.initialsigningin": "Verbinden…",
|
||||
"components.Login.save": "Hinzufügen",
|
||||
@@ -1200,9 +1187,9 @@
|
||||
"components.Login.signinwithjellyfin": "Verwende dein {mediaServerName} Konto",
|
||||
"components.Login.title": "E-Mail hinzufügen",
|
||||
"components.Login.username": "Benutzername",
|
||||
"components.Login.validationEmailFormat": "Ungültige E-Mail",
|
||||
"components.Login.validationEmailRequired": "Du musst eine E-Mail angeben",
|
||||
"components.Login.validationemailformat": "Gültige E-Mail erforderlich",
|
||||
"components.Login.validationEmailFormat": "Ungültige E-Mail-Adresse",
|
||||
"components.Login.validationEmailRequired": "Du musst eine E-Mail-Adresse angeben",
|
||||
"components.Login.validationemailformat": "Gültige E-Mail-Adresse erforderlich",
|
||||
"components.Login.validationhostformat": "Gültige URL erforderlich",
|
||||
"components.Login.validationhostrequired": "{mediaServerName} URL erforderlich",
|
||||
"components.Login.validationusernamerequired": "Benutzername erforderlich",
|
||||
@@ -1210,7 +1197,7 @@
|
||||
"components.ManageSlideOver.removearr4k": "Aus 4K {arr} entfernen",
|
||||
"components.MovieDetails.downloadstatus": "Download-Status",
|
||||
"components.MovieDetails.openradarr4k": "Film in 4K Radarr öffnen",
|
||||
"components.MovieDetails.play": "Wiedergabe auf {mediaServerName}",
|
||||
"components.MovieDetails.play": "Auf {mediaServerName} wiedergeben",
|
||||
"components.MovieDetails.play4k": "4K abspielen auf {mediaServerName}",
|
||||
"components.Settings.SonarrModal.animeSeriesType": "Anime-Serien Typ",
|
||||
"components.Settings.jellyfinSettings": "{mediaServerName} Einstellungen",
|
||||
@@ -1229,7 +1216,7 @@
|
||||
"components.TitleCard.watchlistDeleted": "<strong>{title}</strong> Erfolgreich aus der Merkliste entfernt!",
|
||||
"components.TitleCard.watchlistError": "Ein Fehler ist aufgetreten. Bitte versuche es erneut.",
|
||||
"components.TitleCard.watchlistSuccess": "<strong>{title}</strong> erfolgreich zur Merkliste hinzugefügt!",
|
||||
"components.TvDetails.play": "Wiedergabe auf {mediaServerName}",
|
||||
"components.TvDetails.play": "Auf {mediaServerName} wiedergeben",
|
||||
"components.TvDetails.play4k": "4K abspielen auf {mediaServerName}",
|
||||
"components.UserList.importfromJellyfin": "Importieren von {mediaServerName} Benutzern",
|
||||
"components.UserList.mediaServerUser": "{mediaServerName} Benutzer",
|
||||
@@ -1240,7 +1227,6 @@
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.email": "E-Mail",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.mediaServerUser": "{mediaServerName} Benutzer",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.saving": "Speichern…",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Web-Push-Benachrichtigungseinstellungen erfolgreich gespeichert!",
|
||||
"i18n.close": "Schließen",
|
||||
"i18n.decline": "Ablehnen",
|
||||
"i18n.declined": "Abgelehnt",
|
||||
@@ -1250,7 +1236,7 @@
|
||||
"i18n.movies": "Filme",
|
||||
"i18n.open": "Offen",
|
||||
"i18n.pending": "Ausstehend",
|
||||
"i18n.processing": "Verarbeitung",
|
||||
"i18n.processing": "Verarbeiten",
|
||||
"i18n.request": "Anfrage senden",
|
||||
"i18n.requested": "Angefragt",
|
||||
"i18n.retry": "Wiederholen",
|
||||
@@ -1280,32 +1266,30 @@
|
||||
"components.UserList.usercreatedsuccess": "Benutzer erfolgreich angelegt!",
|
||||
"components.ManageSlideOver.manageModalRemoveMediaWarning": "* Dadurch wird dieser {mediaType} unwiderruflich aus {arr} entfernt, einschließlich aller Dateien.",
|
||||
"components.UserList.importedfromJellyfin": "<strong>{userCount}</strong> {mediaServerName} {userCount, plural, one {Benutzer} other {Benutzer}} erfolgreich importiert!",
|
||||
"components.UserList.validationpasswordminchars": "Das Passwort ist zu kurz; es sollte mindestens 8 Zeichen lang sein",
|
||||
"components.UserList.validationpasswordminchars": "Das Passwort ist zu kurz, es sollte mindestens 8 Zeichen lang sein",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.deviceDefault": "Gerätestandard",
|
||||
"i18n.approve": "Genehmigen",
|
||||
"i18n.partiallyavailable": "Teilweise verfügbar",
|
||||
"components.UserList.newJellyfinsigninenabled": "Die Einstellung <strong>Aktiviere neuen {mediaServerName} Sign-In</strong> ist derzeit aktiviert. {mediaServerName}-Benutzer mit Bibliothekszugang müssen nicht importiert werden, um sich anmelden zu können.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.sound": "Benachrichtigungston",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Die Einstellungen für Web-Push-Benachrichtigungen konnten nicht gespeichert werden.",
|
||||
"components.UserProfile.localWatchlist": "Merkliste von {username}",
|
||||
"i18n.approved": "Genehmigt",
|
||||
"pages.returnHome": "Zurück zur Startseite",
|
||||
"components.Discover.FilterSlideover.status": "Status",
|
||||
"components.UserList.username": "Benutzername",
|
||||
"components.Login.adminerror": "Du musst einen Adminaccount für den Zugang benutzen.",
|
||||
"components.MovieDetails.watchlistError": "Es ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.",
|
||||
"components.Login.adminerror": "Für die Anmeldung ist ein Administratorkonto erforderlich.",
|
||||
"components.MovieDetails.watchlistError": "Es ist ein Fehler aufgetreten. Bitte erneut versuchen.",
|
||||
"components.RequestList.RequestItem.profileName": "Profil",
|
||||
"components.Selector.searchStatus": "Status auswählen...",
|
||||
"components.Settings.invalidurlerror": "Es kann keine Verbindung zu {mediaServerName} hergestellt werden.",
|
||||
"components.Settings.jellyfinSyncFailedGenericError": "Es trat ein unbekannter Fehler während der Bibliothekssynchronisation auf",
|
||||
"components.UserList.validationUsername": "Du musst einen Benutzernamen angeben",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationemailrequired": "E-Mail Adresse benötigt",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationemailrequired": "E-Mail-Adresse benötigt",
|
||||
"components.Login.invalidurlerror": "Es kann keine Verbindung zu {mediaServerName} hergestellt werden.",
|
||||
"components.MovieDetails.removefromwatchlist": "Von der Merkliste entfernen",
|
||||
"components.TvDetails.watchlistDeleted": "<strong>{title}</strong> erfolgreich aus der Merkliste entfernt!",
|
||||
"components.Login.back": "Zurück",
|
||||
"components.Login.servertype": "Servertyp",
|
||||
"components.Login.validationHostnameRequired": "Du musst eine gültige IP-Adresse oder einen gültigen Hostnamen angeben",
|
||||
"components.Login.validationPortRequired": "Du musst einen gültigen Port angeben",
|
||||
"components.Login.validationUrlBaseLeadingSlash": "Der URL muss ein Slash vorangestellt sein",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "Die URL-Basis darf nicht auf einem Slash enden",
|
||||
@@ -1332,7 +1316,7 @@
|
||||
"components.TvDetails.removefromwatchlist": "Von der Merkliste entfernen",
|
||||
"components.TvDetails.watchlistError": "Ein Fehler ist aufgetreten. Bitte versuche es erneut.",
|
||||
"components.TvDetails.watchlistSuccess": "<strong>{title}</strong> erfolgreich zur Merkliste hinzugefügt!",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationemailformat": "Gültige E-Mail Adresse benötigt",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationemailformat": "Gültige E-Mail-Adresse benötigt",
|
||||
"components.Login.hostname": "{mediaServerName} URL",
|
||||
"components.Login.port": "Port",
|
||||
"components.Login.urlBase": "URL-Basis",
|
||||
@@ -1340,20 +1324,20 @@
|
||||
"components.Settings.jellyfinForgotPasswordUrl": "Passwort vergessen URL",
|
||||
"components.Settings.jellyfinSyncFailedAutomaticGroupedFolders": "Eine benutzerdefinierte Authentifizierung mit automatischer Bibliotheksbündelung wird nicht unterstützt",
|
||||
"components.Settings.jellyfinSyncFailedNoLibrariesFound": "Es wurden keine Bibliotheken gefunden",
|
||||
"components.Settings.scanbackground": "Der Scanvorgang wird im Hintergrund ausgeführt. Sie können in der Zwischenzeit den Einrichtungsprozess fortsetzen.",
|
||||
"components.Settings.scanbackground": "Der Scan läuft im Hintergrund. Die Einrichtung kann in der Zwischenzeit fortgesetzt werden.",
|
||||
"components.Blacklist.blacklistdate": "Datum",
|
||||
"components.PermissionEdit.viewblacklistedItems": "Medien auf der Sperrliste anzeigen.",
|
||||
"components.Settings.SettingsMain.discoverRegion": "Region entdecken",
|
||||
"components.Settings.SettingsMain.discoverRegion": "Region für \"Entdecken\"",
|
||||
"components.Blacklist.blacklistNotFoundError": "<strong>{title}</strong> ist nicht auf der Sperrliste.",
|
||||
"components.PermissionEdit.manageblacklist": "Sperrliste verwalten",
|
||||
"components.Settings.SettingsJobsCache.plex-refresh-token": "Plex Refresh Token",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.discoverRegion": "Region entdecken",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.discoverRegion": "Region für \"Entdecken\"",
|
||||
"i18n.blacklistDuplicateError": "<strong>{title}</strong> wurde bereits auf die Sperrliste gesetzt.",
|
||||
"components.Settings.Notifications.validationWebhookRoleId": "Du musst eine gültige Discord Rollen-ID angeben",
|
||||
"components.Settings.Notifications.webhookRoleIdTip": "Die Rollen ID, die in der Webhook Nachricht erwähnt werden soll. Leer lassen, um Erwähnungen zu deaktivieren",
|
||||
"i18n.addToBlacklist": "Zur Sperrliste hinzufügen",
|
||||
"components.PermissionEdit.blacklistedItemsDescription": "Autorisierung zum Sperren von Medien.",
|
||||
"components.Settings.SettingsMain.streamingRegion": "Streaming Region",
|
||||
"components.Settings.SettingsMain.streamingRegion": "Region des Streamings",
|
||||
"i18n.removeFromBlacklistSuccess": "<strong>{title}</strong> wurde erfolgreich von der Sperrliste entfernt.",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.streamingRegion": "Streaming Region",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.streamingRegionTip": "Streaming Seiten nach regionaler Verfügbarkeit anzeigen",
|
||||
@@ -1379,8 +1363,8 @@
|
||||
"components.Settings.apiKey": "API-Schlüssel",
|
||||
"components.Settings.tip": "Tipp",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.discoverRegionTip": "Inhalte nach regionaler Verfügbarkeit filtern",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmail": "Diese E-Mail ist bereits vergeben!",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmailEmpty": "Ein anderer Benutzer hat bereits diesen Benutzernamen. Sie müssen eine E-Mail festlegen",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmail": "Diese E-Mail-Adresse ist bereits vergeben!",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmailEmpty": "Dieser Benutzername ist bereits vergeben. Eine E-Mail-Adresse muss angegeben werden",
|
||||
"i18n.blacklist": "Sperrliste",
|
||||
"i18n.blacklistError": "Etwas ist schief gelaufen, versuche es noch einmal.",
|
||||
"i18n.blacklistSuccess": "<strong>{title}</strong> wurde erfolgreich auf die Sperrliste gesetzt.",
|
||||
@@ -1393,20 +1377,20 @@
|
||||
"components.Settings.OverrideRuleModal.rootfolder": "Stammverzeichnis",
|
||||
"components.UserProfile.UserSettings.menuLinkedAccounts": "Verknüpfte Konten",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.deleteFailed": "Verknüpftes Konto kann nicht gelöscht werden.",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.usernameRequired": "Sie müssen einen Benutzernamen angeben",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.usernameRequired": "Es muss ein Benutzername eingegeben werden",
|
||||
"components.Setup.librarieserror": "Validierung fehlgeschlagen. Bitte schalte die Bibliotheken erneut um, um fortzufahren.",
|
||||
"components.Settings.SettingsNetwork.proxyBypassFilterTip": "Verwende ',' als Trennzeichen und '*.' als Platzhalter für Subdomains",
|
||||
"components.Settings.OverrideRuleModal.settingsDescription": "Gibt an, welche Einstellungen geändert werden, wenn die oben genannten Bedingungen erfüllt sind.",
|
||||
"components.Settings.SettingsUsers.mediaServerLogin": "Aktiviere {mediaServerName} Anmeldung",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.plexErrorExists": "Dieses Konto ist bereits mit einem Plex Benutzer verknüpft",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.description": "Geben Sie Ihre {mediaServerName}-Anmeldeinformationen ein, um Ihr Konto mit {applicationName} zu verknüpfen.",
|
||||
"components.Settings.SettingsNetwork.networkDisclaimer": "Anstelle dieser Einstellungen sollten Netzwerkparameter aus Ihrem Container/System verwendet werden. Weitere Informationen finden Sie in den {docs}.",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.description": "Anmeldedaten von {mediaServerName} eingeben, um das Konto mit {applicationName} zu verbinden.",
|
||||
"components.Settings.SettingsNetwork.networkDisclaimer": "Netzwerkparameter des Containers bzw. Systems sollten statt dieser Einstellungen verwendet werden. Weitere Informationen in den {docs}.",
|
||||
"components.Selector.searchUsers": "Benutzer auswählen…",
|
||||
"components.Settings.overrideRules": "Override-Regeln",
|
||||
"components.Settings.Notifications.messageThreadId": "Thread-/Themen-ID",
|
||||
"components.Settings.OverrideRuleModal.conditions": "Bedingungen",
|
||||
"components.Settings.OverrideRuleTile.settings": "Einstellungen",
|
||||
"components.Login.noadminerror": "Kein Admin-Benutzer auf dem Server gefunden.",
|
||||
"components.Login.noadminerror": "Auf dem Server wurde kein Administrator gefunden.",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.plexErrorUnauthorized": "Mit Ihren Anmeldeinformationen kann keine Verbindung zu Plex hergestellt werden",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorUnknown": "Ein unbekannter Fehler ist aufgetreten",
|
||||
"components.Settings.addrule": "Neue Override-Regel",
|
||||
@@ -1435,15 +1419,14 @@
|
||||
"components.Settings.OverrideRuleModal.settings": "Einstellungen",
|
||||
"components.Settings.OverrideRuleModal.serviceDescription": "Wende diese Regel auf den ausgewählten Dienst an.",
|
||||
"components.Settings.OverrideRuleModal.service": "Dienst",
|
||||
"components.Settings.SettingsMain.enableSpecialEpisodes": "Anfragen zu Spezial-Episoden zulassen",
|
||||
"components.Settings.SettingsNetwork.advancedNetworkSettings": "Erweiterte Netzwerkeinstellungen",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionHoverTip": "Aktivieren Sie diese Einstellung NICHT, wenn Sie nicht wissen, was Sie tun!",
|
||||
"components.Settings.SettingsMain.enableSpecialEpisodes": "Anfragen zu Spezial-Folgen zulassen",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionHoverTip": "Diese Einstellung nur aktivieren, wenn die Auswirkungen bekannt sind!",
|
||||
"components.Settings.SettingsNetwork.docs": "Dokumentation/Hilfe",
|
||||
"components.Settings.SettingsNetwork.networksettings": "Netzwerkeinstellungen",
|
||||
"components.Settings.SettingsNetwork.networksettingsDescription": "Konfiguriere die Netzwerkeinstellungen deiner Jellyseerr-Instanz.",
|
||||
"components.Settings.SettingsNetwork.toastSettingsSuccess": "Einstellungen erfolgreich gespeichert!",
|
||||
"components.Settings.SettingsNetwork.trustProxy": "Aktiviere Proxy-Unterstützung",
|
||||
"components.Settings.SettingsNetwork.validationProxyPort": "Sie müssen einen gültigen Port angeben",
|
||||
"components.Settings.SettingsNetwork.validationProxyPort": "Es muss ein gültiger Port eingetragen werden",
|
||||
"components.Settings.SettingsUsers.atLeastOneAuth": "Es muss mindestens eine Authentifizierungsmethode ausgewählt werden.",
|
||||
"components.Settings.SettingsUsers.loginMethods": "Anmeldemethoden",
|
||||
"components.Settings.SettingsUsers.loginMethodsTip": "Anmeldemethoden für Benutzer konfigurieren.",
|
||||
@@ -1466,12 +1449,12 @@
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.username": "Benutzername",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.title": "{mediaServerName}-Konto verknüpfen",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.saving": "Hinzufügen…",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.passwordRequired": "Sie müssen ein Passwort angeben",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.passwordRequired": "Es muss ein Passwort eingegeben werden",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.password": "Passwort",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorUnauthorized": "Mit Ihren Anmeldeinformationen kann keine Verbindung zu {mediaServerName} hergestellt werden",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorExists": "Dieses Konto ist bereits mit einem {applicationName}-Benutzer verknüpft",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.noPermissionDescription": "Sie sind nicht berechtigt, die verknüpften Konten dieses Benutzers zu ändern.",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.noLinkedAccounts": "Sie haben keine externen Konten mit Ihrem Konto verknüpft.",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.noPermissionDescription": "Es besteht keine Berechtigung, die verknüpften Konten dieses Benutzers zu bearbeiten.",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.noLinkedAccounts": "Es sind keine externen Konten mit deinem Account verknüpft.",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.linkedAccountsHint": "Diese externen Konten sind mit Ihrem {applicationName}-Konto verknüpft.",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.linkedAccounts": "Verknüpfte Konten",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.errorUnknown": "Ein unbekannter Fehler ist aufgetreten",
|
||||
|
||||
@@ -110,16 +110,6 @@
|
||||
"components.Discover.recentrequests": "Πρόσφατα Αιτήματα",
|
||||
"components.Discover.recentlyAdded": "Προστέθηκαν πρόσφατα",
|
||||
"components.Discover.populartv": "Δημοφιλείς Σειρές",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Πρέπει να βάλεις μια έγκυρη διεύθυνση URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Η δοκιμαστική ειδοποίηση LunaSea εστάλη!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Αποστολή δοκιμαστικής ειδοποίησης LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Αποτυχία αποστολής δοκιμαστικής ειδοποίησης LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Οι ρυθμίσεις ειδοποιήσεων LunaSea αποθηκεύτηκαν με επιτυχία!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Οι ρυθμίσεις των ειδοποιήσεων LunaSea δεν κατάφεραν να αποθηκευτούν.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Χρειάζεται μόνο εφόσον δεν χρησιμοποιείται το <code>default</code> προφίλ",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Όνομα Προφίλ",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Ενεργοποίηση του Μεταφορέα",
|
||||
"components.Search.searchresults": "Αποτελέσματα αναζήτησης",
|
||||
"components.Search.search": "Αναζήτηση",
|
||||
"components.ResetPassword.validationpasswordrequired": "Πρέπει να βάλεις έναν κωδικό πρόσβασης",
|
||||
@@ -516,8 +506,6 @@
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Νέος κωδικός πρόσβασης",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "Τρέχων κωδικός πρόσβασης",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Επιβεβαίωση κωδικού πρόσβασης",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Οι ρυθμίσεις των ειδοποιήσεων push αποθηκεύτηκαν επιτυχώς!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Οι ρυθμίσεις των ειδοποιήσεων push δεν κατάφεραν να αποθηκευτούν.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Web Push",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "Πρέπει να δώσεις ένα έγκυρο αναγνωριστικό συνομιλίας",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPgpPublicKey": "Πρέπει να βάλεις ένα έγκυρο δημόσιο κλειδί PGP",
|
||||
@@ -693,7 +681,6 @@
|
||||
"components.Settings.default4k": "Προεπιλεγμένο 4K",
|
||||
"components.Settings.default": "Προκαθορισμένο",
|
||||
"components.Settings.currentlibrary": "Τρέχουσα βιβλιοθήκη: {name}",
|
||||
"components.Settings.copied": "Αντιγράφηκε το κλειδί API στο πρόχειρο.",
|
||||
"components.Settings.cancelscan": "Ακύρωση σάρωσης",
|
||||
"components.Settings.addsonarr": "Προσθήκη διακομιστή Sonarr",
|
||||
"components.Settings.address": "Διεύθυνση",
|
||||
@@ -761,7 +748,6 @@
|
||||
"components.Settings.SettingsUsers.newPlexLogin": "Ενεργοποίηση νέας σύνδεσης {mediaServerName}",
|
||||
"components.Settings.SettingsJobsCache.jobsDescription": "Το Jellyseerr εκτελεί ορισμένες εργασίες συντήρησης ως τακτικά προγραμματισμένες εργασίες, αλλά μπορούν επίσης να ενεργοποιηθούν χειροκίνητα παρακάτω. Η χειροκίνητη εκτέλεση μιας εργασίας δεν θα αλλάξει το χρονοδιάγραμμα του.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.templatevariablehelp": "Template Variable Help",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Ο χρήστης σου ή η συσκευή <LunaSeaLink>ειδοποίηση webhook URL</LunaSeaLink>",
|
||||
"components.RequestModal.numberofepisodes": "# Αριθμός Επεισοδίων",
|
||||
"components.MovieDetails.studio": "{studioCount, plural, one {Στούντιο} other {Στούντιο}}",
|
||||
"components.Layout.VersionStatus.commitsbehind": "{commitsBehind} {commitsBehind, plural, one {commit} other {commits}} πίσω",
|
||||
@@ -962,7 +948,6 @@
|
||||
"components.Selector.showmore": "Εμφάνιση περισσότερων",
|
||||
"components.Selector.starttyping": "Αρχίστε να πληκτρολογείτε για αναζήτηση.",
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSending": "Αποστολή δοκιμαστικής ειδοποίησης Gotify…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Πρέπει να επιλέξετε τουλάχιστον έναν τύπο ειδοποιήσεων",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.channelTag": "Ετικέτα καναλιού",
|
||||
"components.Settings.RadarrModal.announced": "Ανακοινώθηκε",
|
||||
"components.Settings.RadarrModal.inCinemas": "Στους Κινηματογράφους",
|
||||
|
||||
@@ -78,6 +78,7 @@
|
||||
"components.Discover.FilterSlideover.activefilters": "{count, plural, one {# Active Filter} other {# Active Filters}}",
|
||||
"components.Discover.FilterSlideover.certification": "Content Rating",
|
||||
"components.Discover.FilterSlideover.clearfilters": "Clear Active Filters",
|
||||
"components.Discover.FilterSlideover.excludeKeywords": "Exclude Keywords",
|
||||
"components.Discover.FilterSlideover.filters": "Filters",
|
||||
"components.Discover.FilterSlideover.firstAirDate": "First Air Date",
|
||||
"components.Discover.FilterSlideover.from": "From",
|
||||
@@ -683,6 +684,8 @@
|
||||
"components.Settings.Notifications.NotificationsWebhook.customJson": "JSON Payload",
|
||||
"components.Settings.Notifications.NotificationsWebhook.resetPayload": "Reset to Default",
|
||||
"components.Settings.Notifications.NotificationsWebhook.resetPayloadSuccess": "JSON payload reset successfully!",
|
||||
"components.Settings.Notifications.NotificationsWebhook.supportVariables": "Support URL Variables",
|
||||
"components.Settings.Notifications.NotificationsWebhook.supportVariablesTip": "Available variables are documented in the webhook template variables section",
|
||||
"components.Settings.Notifications.NotificationsWebhook.templatevariablehelp": "Template Variable Help",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestFailed": "Webhook test notification failed to send.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSending": "Sending webhook test notification…",
|
||||
@@ -691,6 +694,7 @@
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationTypes": "You must select at least one notification type",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationWebhookUrl": "You must provide a valid URL",
|
||||
"components.Settings.Notifications.NotificationsWebhook.webhookUrl": "Webhook URL",
|
||||
"components.Settings.Notifications.NotificationsWebhook.webhookUrlTip": "Test Notification URL is set to {testUrl} instead of the actual webhook URL.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.webhooksettingsfailed": "Webhook notification settings failed to save.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.webhooksettingssaved": "Webhook notification settings saved successfully!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "Enable Agent",
|
||||
|
||||
@@ -174,7 +174,6 @@
|
||||
"components.Settings.default4k": "4K predeterminado",
|
||||
"components.Settings.default": "Predeterminado",
|
||||
"components.Settings.currentlibrary": "Biblioteca actual: {name}",
|
||||
"components.Settings.copied": "Clave API copiada en el portapapeles.",
|
||||
"components.Settings.cancelscan": "Cancelar Escaneo",
|
||||
"i18n.deleting": "Eliminando…",
|
||||
"components.UserList.userdeleteerror": "Algo salió mal al eliminar al usuario.",
|
||||
@@ -707,8 +706,6 @@
|
||||
"components.Settings.RadarrModal.enableSearch": "Habilitar Búsqueda Automática",
|
||||
"components.RequestModal.edit": "Editar Solicitud",
|
||||
"components.RequestList.RequestItem.editrequest": "Editar Solicitud",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "¡Ajustes de notificacion de Web Push guardados con éxito!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Fallo al guardar los ajustes de notificaciones de Web Push.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Web Push",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.applanguage": "Mostrar Idioma",
|
||||
"components.Settings.webpush": "Web Push",
|
||||
@@ -743,22 +740,11 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "¡Notificación de prueba de Pushbullet enviada!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Enviando notificación de prueba de Pushbullet…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Fallo al enviar notificación de prueba de Pushbullet.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL del Webhook",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Debes indicar una URL válida",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "¡Notificación de LunaSea enviada!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Enviando notificación de prueba de LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Fallo al enviar la notificación de prueba de LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "¡Los ajustes de notificación se han guardado con éxito!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Fallo al guardar los ajustes de notificación de LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Requerido solo si no se usa el perfil por <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Nombre de Perfil",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Habilitar Agente",
|
||||
"components.PermissionEdit.requestTvDescription": "Conceder permisos para solicitar series que no sean 4k.",
|
||||
"components.PermissionEdit.requestTv": "Solicitar Series",
|
||||
"components.PermissionEdit.requestMoviesDescription": "Conceder permisos para solicitar películas que no sean 4K.",
|
||||
"components.PermissionEdit.requestMovies": "Solicitar películas",
|
||||
"components.Settings.SettingsAbout.betawarning": "¡Este es un software BETA. Algunas funcionalidades podrían fallar. Por favor, reporta cualquier problema en Github!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Debes seleccionar, al menos, un tipo de notificacion",
|
||||
"components.RequestList.RequestItem.requesteddate": "Solicitado",
|
||||
"components.RequestCard.failedretry": "Algo fue mal al reintentar la solicitud.",
|
||||
"components.NotificationTypeSelector.usermediarequestedDescription": "Notificar cuando otros usuarios envíen nuevas solicitudes que requieran aprobación.",
|
||||
@@ -782,7 +768,6 @@
|
||||
"components.Settings.Notifications.encryption": "Método de Encriptación",
|
||||
"components.Settings.Notifications.encryptionDefault": "Usa STARTTLS si está disponible",
|
||||
"components.Settings.Notifications.encryptionNone": "Ninguna",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Tu <LunaSeaLink>URL del webhook de notificación</LunaSeaLink> basado en tu usuario o dispositivo",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Crea un token desde tu <PushbulletSettingsLink>Opciones de Cuenta</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Registrar una aplicación</ApplicationRegistrationLink> para su uso con Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushover.userTokenTip": "Tu <UsersGroupsLink>identificador de usuario o grupo</UsersGroupsLink> de 30 caracteres",
|
||||
@@ -1305,7 +1290,6 @@
|
||||
"components.Login.noadminerror": "No se ha encontrado un usuario administrativo en el servidor.",
|
||||
"components.Login.orsigninwith": "O inicia sesión con",
|
||||
"components.Login.port": "Puerto",
|
||||
"components.Login.validationHostnameRequired": "Debes proveer un nombre de host o dirección IP válida",
|
||||
"components.Login.validationPortRequired": "Debes proveer un número de puerto válido",
|
||||
"components.Blacklist.blacklistSettingsDescription": "Gestionar contenido en la lista negra.",
|
||||
"components.Blacklist.blacklistdate": "Fecha",
|
||||
|
||||
@@ -174,7 +174,6 @@
|
||||
"components.Settings.default4k": "4K predeterminado",
|
||||
"components.Settings.default": "Predeterminado",
|
||||
"components.Settings.currentlibrary": "Biblioteca actual: {name}",
|
||||
"components.Settings.copied": "Clave API copiada en el portapapeles.",
|
||||
"components.Settings.cancelscan": "Cancelar Escaneo",
|
||||
"i18n.deleting": "Eliminando…",
|
||||
"components.UserList.userdeleteerror": "Algo salió mal al eliminar al usuario.",
|
||||
@@ -707,8 +706,6 @@
|
||||
"components.Settings.RadarrModal.enableSearch": "Habilitar Búsqueda Automática",
|
||||
"components.RequestModal.edit": "Editar Solicitud",
|
||||
"components.RequestList.RequestItem.editrequest": "Editar Solicitud",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "¡Ajustes de notificacion de Web Push guardados con éxito!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Fallo al guardar los ajustes de notificaciones de Web Push.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Web Push",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.applanguage": "Mostrar Idioma",
|
||||
"components.Settings.webpush": "Web Push",
|
||||
@@ -743,22 +740,11 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "¡Notificación de prueba de Pushbullet enviada!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Enviando notificación de prueba de Pushbullet…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Fallo al enviar notificación de prueba de Pushbullet.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL del Webhook",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Debes indicar una URL válida",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "¡Notificación de LunaSea enviada!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Enviando notificación de prueba de LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Fallo al enviar la notificación de prueba de LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "¡Los ajustes de notificación se han guardado con éxito!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Fallo al guardar los ajustes de notificación de LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Requerido solo si no se usa el perfil por <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Nombre de Perfil",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Habilitar Agente",
|
||||
"components.PermissionEdit.requestTvDescription": "Conceder permisos para solicitar series que no sean 4k.",
|
||||
"components.PermissionEdit.requestTv": "Solicitar Series",
|
||||
"components.PermissionEdit.requestMoviesDescription": "Conceder permisos para solicitar películas que no sean 4K.",
|
||||
"components.PermissionEdit.requestMovies": "Solicitar películas",
|
||||
"components.Settings.SettingsAbout.betawarning": "¡Este es un software BETA. Algunas funcionalidades podrían fallar. Por favor, reporta cualquier problema en Github!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Debes seleccionar, al menos, un tipo de notificacion",
|
||||
"components.RequestList.RequestItem.requesteddate": "Solicitado",
|
||||
"components.RequestCard.failedretry": "Algo fue mal al reintentar la solicitud.",
|
||||
"components.NotificationTypeSelector.usermediarequestedDescription": "Notificar cuando otros usuarios envíen nuevas solicitudes que requieran aprobación.",
|
||||
@@ -782,7 +768,6 @@
|
||||
"components.Settings.Notifications.encryption": "Método de Encriptación",
|
||||
"components.Settings.Notifications.encryptionDefault": "Usa STARTTLS si está disponible",
|
||||
"components.Settings.Notifications.encryptionNone": "Ninguna",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Tu <LunaSeaLink>URL del webhook de notificación</LunaSeaLink> basado en tu usuario o dispositivo",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Crea un token desde tu <PushbulletSettingsLink>Opciones de Cuenta</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Registrar una aplicación</ApplicationRegistrationLink> para su uso con Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushover.userTokenTip": "Tu <UsersGroupsLink>identificador de usuario o grupo</UsersGroupsLink> de 30 caracteres",
|
||||
|
||||
@@ -495,7 +495,6 @@
|
||||
"components.IssueDetails.IssueComment.areyousuredelete": "Ziur zaude iruzkin hau ezabatu nahi duzula?",
|
||||
"components.IssueDetails.deleteissueconfirm": "Ziur zaude intzidentzia hau ezabatu nahi duzula?",
|
||||
"components.Login.adminerror": "Administratzaile kontu bat erabili behar duzu saioa hasteko.",
|
||||
"components.Login.validationHostnameRequired": "Baliozko ostalari-izen edo IP helbide bat eman behar duzu",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "URLa ez du amaierako barra batean amaitu behar",
|
||||
"components.NotificationTypeSelector.adminissuereopenedDescription": "Jakinarazi beste erabiltzaile batzuek intzidentziak berriro irekitzen dituztenean.",
|
||||
"components.NotificationTypeSelector.adminissueresolvedDescription": "Jakinarazi beste erabiltzaile batzuek intzidentziak konpontzen dituztenean.",
|
||||
@@ -643,7 +642,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationDiscordId": "Baliozko erabiltzaile ID bat eman behar duzu",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushoverApplicationToken": "Baliozko aplikazio token bat eman behar duzu",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "Baliozko txat ID bat eman behar duzu",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Web push jakinarazpenen ezarpenak gordetzeak huts egin du.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.toastSettingsFailure": "Zerbait gaizki joan da pasahitza gordetzean.",
|
||||
"i18n.removeFromBlacklistSuccess": "<strong>{title}</strong> zerrenda beltzetik ondo kendu da.",
|
||||
"i18n.showingresults": "<strong>{total}</strong>(e)tik <strong>{from}</strong>(e)tik <strong>{to}</strong>(e)ra emaitza erakusten",
|
||||
@@ -652,17 +650,11 @@
|
||||
"components.IssueDetails.toastissuedeletefailed": "Zerbait gaizki joan da intzidentzia ezabatzean.",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.plexwatchlistsyncseriestip": "Automatikoki eskatu zure <PlexWatchlistSupportLink>Plex jarraipen zerrendan</PlexWatchlistSupportLink> dauden telesailak",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "Gutxienez jakinarazpen mota bat aukeratu behar duzu",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Ez da beharrezkoa profil <code>lehenetsia</code> erabiltzen ari bazara",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Gutxienez jakinarazpen mota bat aukeratu behar duzu",
|
||||
"components.RequestModal.QuotaDisplay.movielimit": "{limit, plural, one {film} other {film}}",
|
||||
"components.RequestModal.requestadmin": "Eskaera hau automatikoki onartuko da.",
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestFailed": "Gotify proba jakinarazpena bidaltzeak huts egin du.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea proba jakinarazpena bidaltzeak huts egin du.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Baliozko URL bat eman behar duzu",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsFailed": "Pushbullet jakinarazpen ezarpenak gordetzeak huts egin du.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Zure erabiltzaile edo gailuan oinarritutako <LunaSeaLink>jakinarazpen WebHook URLa</LunaSeaLink>",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTokenRequired": "Aplikazio token bat eman behar duzu",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "LunaSea jakinarazpen ezarpenak gordetzeak huts egin du.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoverApplicationTokenTip": "<ApplicationRegistrationLink>Erregistratu aplikazio bat</ApplicationRegistrationLink> {applicationTitle}-(r)ekin erabiltzeko",
|
||||
"components.Blacklist.blacklistNotFoundError": "<strong>{title}</strong> ez dago zerrenda beltzean.",
|
||||
"components.Blacklist.blacklistSettingsDescription": "Kudeatu zerrenda beltzean dagoen multimedia.",
|
||||
@@ -868,8 +860,6 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSuccess": "Gotify proba jakinarazpena bidalita!",
|
||||
"components.Settings.Notifications.NotificationsGotify.token": "Aplikazioaren tokena",
|
||||
"components.Settings.Notifications.NotificationsGotify.url": "Zerbitzariaren URLa",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Gaitu agentea",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URLa",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Sarbide tokena",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.channelTag": "Kanalaren etiketa",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Pushbullet proba jakinarazpena bidaltzen…",
|
||||
@@ -1105,7 +1095,6 @@
|
||||
"components.Settings.SonarrModal.validationRootFolderRequired": "Erro karpeta bat hautatu behar duzu",
|
||||
"components.Settings.SonarrModal.testFirstTags": "Probatu konexioa etiketak kargatzeko",
|
||||
"components.Settings.SonarrModal.toastSonarrTestFailure": "Sonarr-era konektatzeak huts egin du.",
|
||||
"components.Settings.copied": "API gakoa arbelera kopiatuta.",
|
||||
"components.Settings.hostname": "Ostalari-izena edo IP helbidea",
|
||||
"components.Settings.addradarr": "Gehitu Radarr zerbitzaria",
|
||||
"components.Settings.addsonarr": "Gehitu Sonarr zerbitzaria",
|
||||
@@ -1300,7 +1289,6 @@
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "Uneko pasahitza",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Pasahitz berria",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramsettingssaved": "Telegram jakinarazpenen ezarpenak ondo gorde dira!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Web push jakinarazpen ezarpenak ondo gorde dira!",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.toastSettingsSuccess": "Pasahitza ondo gorde da!",
|
||||
"components.UserProfile.UserSettings.UserPermissions.toastSettingsFailure": "Zerbait gaizki joan da ezarpenak gordetzean.",
|
||||
"components.UserProfile.UserSettings.UserPermissions.unauthorizedDescription": "Ezin dituzu zure baimenak aldatu.",
|
||||
@@ -1348,7 +1336,6 @@
|
||||
"components.RequestModal.QuotaDisplay.notenoughseasonrequests": "Ez dituzu denboraldi nahiko eskaerarik",
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrlTip": "Sortu <WebhookLink>Sarrera Webhook</WebhookLink> integrazio bat",
|
||||
"components.Discover.CreateSlider.providetmdbstudio": "Eman TMDB estudioaren IDa",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea proba jakinarazpena bidalita!",
|
||||
"components.Discover.DiscoverTv.sortTmdbRatingAsc": "TMDB puntuazioa gorantz",
|
||||
"components.Settings.RadarrModal.selectMinimumAvailability": "Hautatu gutxieneko erabilgarritasuna",
|
||||
"components.Settings.SonarrModal.editsonarr": "Editatu Sonarr zerbitzaria",
|
||||
@@ -1361,7 +1348,6 @@
|
||||
"components.Selector.searchGenres": "Hautatu generoak…",
|
||||
"components.Selector.searchStatus": "Hautatu egoera...",
|
||||
"components.Selector.showless": "Erakutsi gutxiago",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Profilaren izena",
|
||||
"components.Settings.RadarrModal.rootfolder": "Erro karpeta",
|
||||
"components.IssueDetails.toasteditdescriptionsuccess": "Intzidentziaren deskribapena ondo editatu da!",
|
||||
"components.RequestModal.requestedited": "<strong>{title}</strong>-(e)rako eskaera ondo editatu da!",
|
||||
@@ -1370,7 +1356,6 @@
|
||||
"components.RequestModal.requestApproved": "<strong>{title}</strong> eskaera onartuta!",
|
||||
"components.RequestModal.requestseries4ktitle": "Eskatu telesaila 4K-n",
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSending": "Gotify proba jakinarazpena bidaltzen…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "LunaSea proba jakinarazpena bidaltzen…",
|
||||
"components.Settings.RadarrModal.hostname": "Ostalari-izena edo IP helbidea",
|
||||
"components.Discover.DiscoverTv.sortTmdbRatingDesc": "TMDB puntuazioa beherantz",
|
||||
"components.TvDetails.addtowatchlist": "Gehitu jarraipen zerrendara",
|
||||
@@ -1386,7 +1371,6 @@
|
||||
"components.Settings.SettingsMain.toastApiKeySuccess": "API gako berria ondo sortu da!",
|
||||
"components.TvDetails.episodeRuntime": "Atalaren iraupena",
|
||||
"components.Settings.Notifications.NotificationsGotify.gotifysettingssaved": "Gotify jakinarazpenen ezarpenak ondo gorde dira!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea jakinarazpenen ezarpenak ondo gorde dira!",
|
||||
"components.Settings.OverrideRuleModal.qualityprofile": "Kalitate profila",
|
||||
"components.Settings.OverrideRuleModal.selectRootFolder": "Hautatu erro-karpeta",
|
||||
"components.DiscoverTvUpcoming.upcomingtv": "Hurrengo telesailak",
|
||||
@@ -1428,7 +1412,6 @@
|
||||
"components.Settings.SettingsNetwork.forceIpv4First": "Behartu IPv4 ebazpena lehen",
|
||||
"components.Settings.OverrideRuleModal.editrule": "Editatu gainidazte araua",
|
||||
"components.Settings.OverrideRuleModal.selectQualityProfile": "Hautatu kalitate profila",
|
||||
"components.Settings.SettingsNetwork.advancedNetworkSettings": "Sare ezarpen aurreratuak",
|
||||
"components.Settings.SettingsNetwork.csrfProtection": "Gaitu CSRF babesa",
|
||||
"components.Settings.OverrideRuleModal.create": "Sortu araua",
|
||||
"components.Settings.OverrideRuleModal.notagoptions": "Etiketarik ez.",
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
"components.Blacklist.blacklistsettings": "Estämisen Asetukset",
|
||||
"components.Blacklist.mediaName": "Nimi",
|
||||
"components.Blacklist.mediaType": "Tyyppi",
|
||||
"components.Blacklist.mediaTmdbId": "",
|
||||
"components.Blacklist.mediaTmdbId": "tmdb Id",
|
||||
"components.Discover.DiscoverMovies.sortReleaseDateAsc": "Julkaisupäivä nousevassa järjestyksessä",
|
||||
"components.Discover.DiscoverMovies.sortTitleAsc": "Otsikko (A-Z) nousevassa järjestyksessä",
|
||||
"components.Discover.DiscoverMovies.sortTitleDesc": "Otsikko (A-Z) laskevassa järjestyksessä",
|
||||
@@ -129,7 +129,7 @@
|
||||
"components.Discover.popularmovies": "Suositut Elokuvat",
|
||||
"components.Discover.populartv": "Suositut Sarjat",
|
||||
"components.Discover.recentlyAdded": "Viimeksi Lisätty",
|
||||
"components.Discover.recentrequests": "Viimeksi Pyydetty",
|
||||
"components.Discover.recentrequests": "Viimeaikaiset pyynnöt",
|
||||
"components.Discover.resetsuccess": "Tutustumisen mukautusasetukset tyhjennetty.",
|
||||
"components.Discover.resettodefault": "Palauta Oletusasetukset",
|
||||
"components.Discover.resetwarning": "Palauta liukusäätimet. Tämä poistaa myös mukautetut säätimet!",
|
||||
@@ -192,8 +192,8 @@
|
||||
"components.IssueList.IssueItem.viewissue": "Näytä ongelma",
|
||||
"components.IssueList.issues": "Ongelmat",
|
||||
"components.IssueList.showallissues": "Näytä kaikki ongelmat",
|
||||
"components.IssueList.sortAdded": "Viimeisin lisätty",
|
||||
"components.IssueList.sortModified": "Viimeisin muokattu",
|
||||
"components.IssueList.sortAdded": "Uusin",
|
||||
"components.IssueList.sortModified": "Viimeksi muokattu",
|
||||
"components.IssueModal.CreateIssueModal.allepisodes": "Kaikki jaksot",
|
||||
"components.IssueModal.CreateIssueModal.allseasons": "Kaikki kaudet",
|
||||
"components.IssueModal.CreateIssueModal.extras": "Ekstrat",
|
||||
@@ -245,5 +245,277 @@
|
||||
"i18n.requesting": "Pyydetään…",
|
||||
"i18n.requested": "Pyydetty",
|
||||
"i18n.request4k": "Pyydä 4K:na",
|
||||
"i18n.request": "Pyydä"
|
||||
"i18n.request": "Pyydä",
|
||||
"components.DiscoverTvUpcoming.upcomingtv": "Tulossa olevat sarjat",
|
||||
"components.ManageSlideOver.manageModalRequests": "Pyynnöt",
|
||||
"i18n.usersettings": "Käyttäjäasetukset",
|
||||
"i18n.view": "Näytä",
|
||||
"i18n.save": "Tallenna muutokset",
|
||||
"i18n.unavailable": "Ei saatavilla",
|
||||
"i18n.tvshows": "Sarjat",
|
||||
"i18n.tvshow": "Sarja",
|
||||
"i18n.testing": "Kokeillaan…",
|
||||
"i18n.test": "Kokeile",
|
||||
"i18n.status": "Tila",
|
||||
"i18n.specials": "Erikoisjaksot",
|
||||
"i18n.settings": "Asetukset",
|
||||
"i18n.saving": "Tallennetaan…",
|
||||
"i18n.movies": "Elokuvat",
|
||||
"components.MovieDetails.addtowatchlist": "Lisää katselulistalle",
|
||||
"i18n.loading": "Ladataan…",
|
||||
"i18n.available": "Saatavilla",
|
||||
"components.UserProfile.recentrequests": "Viimeaikaiset pyynnöt",
|
||||
"i18n.cancel": "Peruuta",
|
||||
"i18n.blacklist": "Estolista",
|
||||
"components.Discover.DiscoverTv.activefilters": "{count, plural, one {# Aktiivinen suodatin} other {# Aktiivista suodatinta}}",
|
||||
"components.Discover.DiscoverMovies.activefilters": "{count, plural, one {# Aktiivinen suodatin} other {# Aktiivista suodatinta}}",
|
||||
"components.MovieDetails.overviewunavailable": "Yhteenveto ei saatavilla.",
|
||||
"components.Login.signingin": "Kirjaudutaan sisään…",
|
||||
"components.MovieDetails.digitalrelease": "Digitaalinen julkaisu",
|
||||
"components.Login.description": "Koska tämä on ensimmäinen kirjautumisesi sovellukseen {applicationName}, sinun täytyy lisätä toimiva sähköpostiosoite.",
|
||||
"components.Login.noadminerror": "Järjestelmänvalvojan käyttäjää ei löytynyt palvelimelta.",
|
||||
"components.Login.username": "Käyttäjänimi",
|
||||
"components.ManageSlideOver.manageModalClearMediaWarning": "* Tämä poistaa peruuttamattomasti kaikki tämän {mediaType}-kohteen tiedot, mukaan lukien kaikki pyynnöt. Jos tämä kohde on {mediaServerName}-kirjastossasi, mediatiedot luodaan uudelleen seuraavan skannauksen aikana.",
|
||||
"components.ManageSlideOver.manageModalAdvanced": "Lisäasetukset",
|
||||
"components.Login.password": "Salasana",
|
||||
"components.Login.port": "Portti",
|
||||
"components.Login.save": "Lisää",
|
||||
"components.Login.saving": "Lisätään…",
|
||||
"components.Login.servertype": "Palvelimen tyyppi",
|
||||
"components.Login.signin": "Kirjaudu sisään",
|
||||
"components.Login.signinheader": "Kirjaudu sisään jatkaaksesi",
|
||||
"components.Login.email": "Sähköpostiosoite",
|
||||
"components.Login.emailtooltip": "Osoitteen ei tarvitse olla liitettynä {mediaServerName}-instanssiisi.",
|
||||
"components.Login.enablessl": "Käytä SSL",
|
||||
"components.Login.forgotpassword": "Unohtuiko salasana?",
|
||||
"components.Login.hostname": "{mediaServerName} URL-osoite",
|
||||
"components.Login.initialsignin": "Yhdistä",
|
||||
"components.Login.initialsigningin": "Yhdistetään…",
|
||||
"components.Login.invalidurlerror": "Yhdistäminen palvelimeen {mediaServerName} ei onnistunut.",
|
||||
"components.Login.loginerror": "Jotain meni pieleen kirjautumisessa.",
|
||||
"components.Login.loginwithapp": "Kirjaudu sisään sovelluksella {appName}",
|
||||
"components.Login.orsigninwith": "Tai kirjaudu sisään käyttäen",
|
||||
"components.Login.signinwithjellyfin": "Käytä palvelimesi {mediaServerName} tiliä",
|
||||
"components.Login.signinwithoverseerr": "Käytä {applicationTitle}-tiliä",
|
||||
"components.Login.signinwithplex": "Käytä Plex-tiliäsi",
|
||||
"components.Login.title": "Lisää sähköposti",
|
||||
"components.ManageSlideOver.downloadstatus": "Lataukset",
|
||||
"components.ManageSlideOver.manageModalMedia": "Media",
|
||||
"components.ManageSlideOver.manageModalNoRequests": "Ei pyyntöjä.",
|
||||
"components.ManageSlideOver.markavailable": "Merkitse saatavilla",
|
||||
"components.ManageSlideOver.openarr": "Avaa ohjelmassa {arr}",
|
||||
"components.ManageSlideOver.openarr4k": "Avaa ohjelmassa 4K {arr}",
|
||||
"components.ManageSlideOver.opentautulli": "Avaa Tautullissa",
|
||||
"components.ManageSlideOver.playedby": "Toistanut",
|
||||
"components.ManageSlideOver.tvshow": "sarja",
|
||||
"components.MediaSlider.ShowMoreCard.seemore": "Näytä lisää",
|
||||
"components.Login.urlBase": "URL-osoitteen pohja",
|
||||
"components.Login.validationEmailFormat": "Virheellinen sähköposti",
|
||||
"components.Login.validationEmailRequired": "Sinun täytyy antaa sähköposti",
|
||||
"components.Login.validationPortRequired": "Sinun täytyy antaa toimiva portin numero",
|
||||
"components.Login.validationemailformat": "Toimiva sähköposti vaaditaan",
|
||||
"components.Login.validationemailrequired": "Sinun täytyy antaa toimiva sähköpostiosoite",
|
||||
"components.Login.validationhostformat": "Toimiva URL-osoite vaaditaan",
|
||||
"components.Login.validationhostrequired": "{mediaServerName} URL vaaditaan",
|
||||
"components.Login.validationpasswordrequired": "Sinun täytyy antaa salasana",
|
||||
"components.Login.validationservertyperequired": "Valitse palvelimen tyyppi",
|
||||
"components.Login.validationusernamerequired": "Käyttäjänimi vaaditaan",
|
||||
"components.ManageSlideOver.alltime": "Koko ajan",
|
||||
"components.ManageSlideOver.manageModalClearMedia": "Tyhjennä Data",
|
||||
"components.ManageSlideOver.manageModalIssues": "Avoimet ongelmat",
|
||||
"components.ManageSlideOver.manageModalMedia4k": "4K Media",
|
||||
"components.ManageSlideOver.manageModalRemoveMediaWarning": "* Tämä poistaa tämän {mediaType}-tiedoston peruuttamattomasti ohjelmasta {arr}, kaikki tiedostot mukaan lukien.",
|
||||
"components.ManageSlideOver.manageModalTitle": "Hallinnoi {mediaType}",
|
||||
"components.ManageSlideOver.mark4kavailable": "Merkitse saatavilla olevaksi 4K-laadulla",
|
||||
"components.ManageSlideOver.markallseasons4kavailable": "Merkitse kaikki tuotantokaudet saataville 4K-laadulla",
|
||||
"components.ManageSlideOver.markallseasonsavailable": "Merkitse kaikki tuotantokaudet saataville",
|
||||
"components.ManageSlideOver.removearr": "Poista ohjelmasta {arr}",
|
||||
"components.MovieDetails.budget": "Budjetti",
|
||||
"components.MovieDetails.cast": "Näyttelijät",
|
||||
"components.MovieDetails.downloadstatus": "Latauksen tila",
|
||||
"components.MovieDetails.markavailable": "Merkitse saatavilla",
|
||||
"components.MovieDetails.openradarr": "Avaa elokuva ohjelmassa Radarr",
|
||||
"components.MovieDetails.openradarr4k": "Avaa elokuva ohjelmassa 4K Radarr",
|
||||
"components.MovieDetails.originallanguage": "Alkuperäinen kieli",
|
||||
"components.MovieDetails.originaltitle": "Alkuperäinen nimi",
|
||||
"components.MovieDetails.overview": "Yhteenveto",
|
||||
"components.MovieDetails.physicalrelease": "Fyysinen julkaisu",
|
||||
"i18n.areyousure": "Oletko varma?",
|
||||
"i18n.back": "Takaisin",
|
||||
"i18n.approve": "Hyväksy",
|
||||
"i18n.all": "Kaikki",
|
||||
"i18n.advanced": "Lisäasetukset",
|
||||
"i18n.addToBlacklist": "Lisää estolistalle",
|
||||
"i18n.approved": "Hyväksytty",
|
||||
"components.UserProfile.requestsperdays": "{limit} jäljellä",
|
||||
"i18n.movie": "Elokuva",
|
||||
"i18n.importing": "Tuodaan…",
|
||||
"i18n.import": "Tuo",
|
||||
"i18n.failed": "Epäonnistui",
|
||||
"i18n.experimental": "Kokeellinen",
|
||||
"i18n.edit": "Muokkaa",
|
||||
"i18n.deleting": "Poistetaan…",
|
||||
"i18n.delete": "Poista",
|
||||
"i18n.next": "Seuraava",
|
||||
"i18n.decline": "Hylkää",
|
||||
"i18n.collection": "Kokoelma",
|
||||
"i18n.close": "Sulje",
|
||||
"i18n.canceling": "Perutaan…",
|
||||
"i18n.declined": "Hylätty",
|
||||
"components.Discover.FilterSlideover.activefilters": "{count, plural, one {# Aktiivinen suodatin} other {# Aktiivista suodatinta}}",
|
||||
"components.IssueList.IssueItem.episodes": "{episodeCount, plural, one {Jakso} other {Jaksoa}}",
|
||||
"components.IssueList.IssueItem.seasons": "{seasonCount, plural, one {Tuotantokausi} other {Tuotantokautta}}",
|
||||
"components.ManageSlideOver.movie": "elokuva",
|
||||
"components.UserProfile.recentlywatched": "Viimeaikaiset katselut",
|
||||
"components.UserProfile.plexwatchlist": "Plex-katselulista",
|
||||
"components.NotificationTypeSelector.mediaapprovedDescription": "Lähetä ilmoituksia, kun mediapyyntöjä hyväksytään manuaalisesti.",
|
||||
"components.NotificationTypeSelector.mediaapproved": "Pyyntö hyväksytty",
|
||||
"i18n.pending": "Odottaa",
|
||||
"components.Layout.VersionStatus.streamdevelop": "Jellyseerr kehittäjä",
|
||||
"components.Layout.VersionStatus.streamstable": "Jellyseerr vakaa",
|
||||
"i18n.partiallyavailable": "Osittain saatavilla",
|
||||
"i18n.previous": "Edellinen",
|
||||
"i18n.processing": "Käsitellään",
|
||||
"i18n.removeFromBlacklistSuccess": "<strong>{title}</strong> poistettiin onnistuneesti estolistalta.",
|
||||
"i18n.removefromBlacklist": "Poista estolistalta",
|
||||
"components.Settings.SonarrModal.validationApplicationUrlTrailingSlash": "URL-osoite ei saa päättyä kauttaviivaan",
|
||||
"components.NotificationTypeSelector.mediaautorequestedDescription": "Saat ilmoituksen, kun seurantalistallasi oleville kohteille lähetetään automaattisesti uusia mediapyyntöjä.",
|
||||
"components.QuotaSelector.days": "{count, plural, one {päivä} other {päivää}}",
|
||||
"components.Settings.mediaTypeMovie": "elokuva",
|
||||
"components.TvDetails.recommendations": "Suositukset",
|
||||
"components.Selector.showmore": "Näytä lisää",
|
||||
"components.Settings.validationUrlBaseTrailingSlash": "URL-osoitteen pohja ei saa päättyä kauttaviivaan",
|
||||
"components.PersonDetails.alsoknownas": "Tunnetaan myös nimeltä: {names}",
|
||||
"components.Settings.RadarrModal.validationBaseUrlLeadingSlash": "URL-osoitteen pohjassa on oltava alussa kauttaviiva",
|
||||
"components.RequestCard.approverequest": "Hyväksy pyyntö",
|
||||
"components.RequestModal.cancel": "Peruuta pyyntö",
|
||||
"components.Settings.validationUrlBaseLeadingSlash": "URL-osoitteen pohjassa on oltava alussa kauttaviiva",
|
||||
"components.Settings.RadarrModal.validationApplicationUrlTrailingSlash": "URL-osoite ei saa päättyä kauttaviivaan",
|
||||
"components.QuotaSelector.unlimited": "Rajoittamaton",
|
||||
"components.RequestBlock.decline": "Hylkää pyyntö",
|
||||
"components.RequestModal.errorediting": "Pyyntöä muokattaessa tapahtui virhe.",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL-osoite ei saa päättyä kauttaviivaan",
|
||||
"components.RequestList.RequestItem.failedretry": "Jotain meni pieleen, kun pyyntöä yritettiin uudelleen.",
|
||||
"components.NotificationTypeSelector.mediaAutoApproved": "Pyyntö hyväksytään automaattisesti",
|
||||
"components.RequestCard.seasons": "{seasonCount, plural, one {Tuotantokausi} other {Tuotantokautta}}",
|
||||
"components.RequestBlock.seasons": "{seasonCount, plural, one {Tuotantokausi} other {Tuotantokautta}}",
|
||||
"components.RequestList.RequestItem.seasons": "{seasonCount, plural, one {Tuotantokausi} other {Tuotantokautta}}",
|
||||
"components.RequestButton.approve4krequests": "Hyväksy {requestCount, plural, one {4K Pyyntö} other {{requestCount} 4K Pyyntöä}}",
|
||||
"components.PersonDetails.lifespan": "{birthdate} – {deathdate}",
|
||||
"components.PermissionEdit.request": "Pyydä",
|
||||
"components.ManageSlideOver.removearr4k": "Poista ohjelmasta 4K {arr}",
|
||||
"components.Login.validationUrlBaseLeadingSlash": "URL-osoitteen pohjassa on oltava alussa kauttaviiva",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "URL-osoitteen pohja ei saa päättyä kauttaviivaan",
|
||||
"components.Login.validationUrlTrailingSlash": "URL-osoite ei saa päättyä kauttaviivaan",
|
||||
"components.ManageSlideOver.plays": "<strong>{playCount, number}</strong> {playCount, plural, one {toisto} other {toistoa}}",
|
||||
"components.MovieDetails.recommendations": "Suositukset",
|
||||
"components.MovieDetails.MovieCast.fullcast": "Kaikki näyttelijät",
|
||||
"components.MovieDetails.managemovie": "Hallinnoi elokuvaa",
|
||||
"components.MovieDetails.imdbuserscore": "IMDB-käyttäjän pisteet",
|
||||
"components.MovieDetails.mark4kavailable": "Merkitse saatavilla olevaksi 4K-laadulla",
|
||||
"components.MovieDetails.play": "Toista kohteessa {mediaServerName}",
|
||||
"components.MovieDetails.play4k": "Toista 4K kohteessa {mediaServerName}",
|
||||
"components.MovieDetails.productioncountries": "Tuotanto {countryCount, plural, one {Maa} other {Maata}}",
|
||||
"components.MovieDetails.releasedate": "{releaseCount, plural, one {Julkaisupäivä} other {Julkaisupäivää}}",
|
||||
"components.MovieDetails.removefromwatchlist": "Poista katselulistalta",
|
||||
"components.MovieDetails.reportissue": "Ilmoita ongelmasta",
|
||||
"components.MovieDetails.revenue": "Tulot",
|
||||
"components.MovieDetails.rtaudiencescore": "Rotten Tomatoesin yleisöpisteet",
|
||||
"components.MovieDetails.rtcriticsscore": "Rotten Tomatoes -tomaattimittari",
|
||||
"components.MovieDetails.runtime": "{minutes} minuuttia",
|
||||
"components.MovieDetails.showless": "Näytä vähemmän",
|
||||
"components.MovieDetails.showmore": "Näytä lisää",
|
||||
"components.MovieDetails.similar": "Samankaltaisia nimikkeitä",
|
||||
"components.MovieDetails.streamingproviders": "Suoratoistettavat palvelut",
|
||||
"components.MovieDetails.studio": "{studioCount, plural, one {Studio} other {Studiota}}",
|
||||
"components.MovieDetails.theatricalrelease": "Teatterijulkaisu",
|
||||
"components.MovieDetails.tmdbuserscore": "TMDB-käyttäjän pisteet",
|
||||
"components.MovieDetails.viewfullcrew": "Näytä koko ryhmä",
|
||||
"components.MovieDetails.MovieCrew.fullcrew": "Koko ryhmä",
|
||||
"components.MovieDetails.watchlistDeleted": "<strong>{title}</strong> Poistettiin katselulistalta onnistuneesti!",
|
||||
"components.MovieDetails.watchlistError": "Jotain meni pieleen. Yritä uudelleen.",
|
||||
"components.MovieDetails.watchlistSuccess": "<strong>{title}</strong> lisättiin katselulistalle onnistuneesti!",
|
||||
"components.MovieDetails.watchtrailer": "Katso traileri",
|
||||
"components.NotificationTypeSelector.adminissuecommentDescription": "Saat ilmoituksen, kun muut käyttäjät kommentoivat ongelmia.",
|
||||
"components.NotificationTypeSelector.adminissuereopenedDescription": "Saat ilmoituksen, kun muut käyttäjät avaavat ongelmia uudelleen.",
|
||||
"components.NotificationTypeSelector.adminissueresolvedDescription": "Saat ilmoituksen, kun muut käyttäjät ovat ratkaisseet ongelmia.",
|
||||
"components.NotificationTypeSelector.issuecomment": "Ongelman kommentti",
|
||||
"components.NotificationTypeSelector.issuecommentDescription": "Lähetä ilmoituksia, kun ongelmiin tulee uusia kommentteja.",
|
||||
"components.NotificationTypeSelector.issuecreated": "Ongelma ilmoitettu",
|
||||
"components.NotificationTypeSelector.issuecreatedDescription": "Lähetä ilmoituksia, kun ongelmista ilmoitetaan.",
|
||||
"components.NotificationTypeSelector.issuereopened": "Ongelma avattu uudelleen",
|
||||
"components.NotificationTypeSelector.issuereopenedDescription": "Lähetä ilmoituksia, kun ongelmia avataan uudelleen.",
|
||||
"components.NotificationTypeSelector.issueresolved": "Ongelma ratkaistu",
|
||||
"components.NotificationTypeSelector.issueresolvedDescription": "Lähetä ilmoituksia, kun ongelmat on ratkaistu.",
|
||||
"components.NotificationTypeSelector.mediaAutoApprovedDescription": "Lähetä ilmoituksia, kun käyttäjät lähettävät uusia mediapyyntöjä, jotka hyväksytään automaattisesti.",
|
||||
"components.NotificationTypeSelector.mediaautorequested": "Pyyntö lähetetty automaattisesti",
|
||||
"components.NotificationTypeSelector.mediaavailable": "Pyyntö saatavilla",
|
||||
"components.NotificationTypeSelector.mediaavailableDescription": "Lähetä ilmoituksia, kun mediapyyntöjä tulee saataville.",
|
||||
"components.NotificationTypeSelector.mediadeclined": "Pyyntö hylätty",
|
||||
"components.NotificationTypeSelector.mediadeclinedDescription": "Lähetä ilmoituksia, kun mediapyyntöjä hylätään.",
|
||||
"components.NotificationTypeSelector.notificationTypes": "Ilmoitustyypit",
|
||||
"components.PersonDetails.appearsin": "Esiintymiset",
|
||||
"components.PersonDetails.ascharacter": "hahmona {character}",
|
||||
"components.PersonDetails.birthdate": "Syntynyt {birthdate}",
|
||||
"components.PermissionEdit.request4k": "Pyydä 4K-laadulla",
|
||||
"components.RegionSelector.regionDefault": "Kaikki alueet",
|
||||
"components.RegionSelector.regionServerDefault": "Oletus ({region})",
|
||||
"components.RequestBlock.approve": "Hyväksy pyyntö",
|
||||
"components.RequestBlock.delete": "Poista pyyntö",
|
||||
"components.RequestBlock.edit": "Muokkaa pyyntöä",
|
||||
"components.RequestBlock.languageprofile": "Kieliprofiili",
|
||||
"components.RequestBlock.lastmodifiedby": "Viimeksi muokannut",
|
||||
"components.RequestBlock.profilechanged": "Laatuprofiili",
|
||||
"components.RequestBlock.requestdate": "Pyyntöpäivämäärä",
|
||||
"components.RequestBlock.requestedby": "Pyytäjä",
|
||||
"components.RequestBlock.requestoverrides": "Pyyntöjen ohitukset",
|
||||
"components.RequestBlock.rootfolder": "Juurikansio",
|
||||
"components.RequestBlock.server": "Kohdepalvelin",
|
||||
"components.RequestButton.approverequest": "Hyväksy pyyntö",
|
||||
"components.RequestButton.approverequest4k": "Hyväksy 4K Pyyntö",
|
||||
"components.RequestButton.declinerequest": "Hylkää pyyntö",
|
||||
"components.RequestButton.declinerequest4k": "Hylkää 4K Pyyntö",
|
||||
"components.RequestButton.requestmore": "Pyydä lisää",
|
||||
"components.RequestButton.requestmore4k": "Pyydä lisää 4K-laadulla",
|
||||
"components.RequestButton.viewrequest": "Näytä pyyntö",
|
||||
"components.RequestButton.viewrequest4k": "Näytä 4K Pyyntö",
|
||||
"components.RequestCard.cancelrequest": "Peruuta pyyntö",
|
||||
"components.RequestCard.declinerequest": "Hylkää pyyntö",
|
||||
"components.RequestCard.deleterequest": "Poista pyyntö",
|
||||
"components.RequestCard.editrequest": "Muokkaa pyyntöä",
|
||||
"components.RequestCard.failedretry": "Jotain meni pieleen uudelleenpyytäessä.",
|
||||
"components.RequestCard.mediaerror": "{mediaType} Ei löydy",
|
||||
"components.RequestCard.tmdbid": "TMDB ID",
|
||||
"components.RequestCard.tvdbid": "TheTVDB ID",
|
||||
"components.RequestCard.unknowntitle": "Tuntematon nimike",
|
||||
"components.RequestList.RequestItem.cancelRequest": "Peruuta pyyntö",
|
||||
"components.RequestList.RequestItem.deleterequest": "Poista pyyntö",
|
||||
"components.RequestList.RequestItem.editrequest": "Muokkaa pyyntöä",
|
||||
"components.RequestList.RequestItem.mediaerror": "{mediaType} Ei löydy",
|
||||
"components.RequestList.RequestItem.modified": "Muokattu",
|
||||
"components.RequestList.RequestItem.modifieduserdate": "{date} käyttäjältä {user}",
|
||||
"components.RequestList.RequestItem.profileName": "Profiili",
|
||||
"components.RequestList.RequestItem.removearr": "Poista ohjelmasta {arr}",
|
||||
"components.RequestList.RequestItem.requested": "Pyydetty",
|
||||
"components.RequestList.RequestItem.requesteddate": "Pyydetty",
|
||||
"components.RequestList.RequestItem.tmdbid": "TMDB ID",
|
||||
"components.RequestList.RequestItem.tvdbid": "TheTVDB ID",
|
||||
"components.RequestList.RequestItem.unknowntitle": "Tuntematon nimike",
|
||||
"components.RequestList.requests": "Pyynnöt",
|
||||
"components.RequestList.showallrequests": "Näytä kaikki pyynnöt",
|
||||
"components.RequestList.sortAdded": "Uusin",
|
||||
"components.RequestList.sortModified": "Viimeksi muokattu",
|
||||
"components.RequestModal.AdvancedRequester.advancedoptions": "Lisäasetukset",
|
||||
"components.RequestModal.QuotaDisplay.movie": "elokuva",
|
||||
"components.RequestModal.edit": "Muokkaa pyyntöä",
|
||||
"components.RequestModal.requestcollectiontitle": "Pyydä kokoelma",
|
||||
"components.RequestModal.pendingrequest": "Odottava pyyntö",
|
||||
"components.RequestModal.approve": "Hyväksy pyyntö",
|
||||
"components.RequestModal.autoapproval": "Automaattinen hyväksyntä",
|
||||
"components.RequestModal.alreadyrequested": "Pyydetty jo",
|
||||
"components.Settings.RadarrModal.validationBaseUrlTrailingSlash": "URL-osoitteen pohja ei saa päättyä kauttaviivaan",
|
||||
"components.Settings.SettingsAbout.about": "Tietoja",
|
||||
"components.Settings.SonarrModal.validationBaseUrlLeadingSlash": "URL-osoitteen alussa on oltava kauttaviiva",
|
||||
"components.Settings.mediaTypeSeries": "sarja",
|
||||
"components.Settings.menuAbout": "Tietoja"
|
||||
}
|
||||
|
||||
@@ -211,7 +211,6 @@
|
||||
"components.Settings.address": "Adresse",
|
||||
"components.Settings.addsonarr": "Ajouter un serveur Sonarr",
|
||||
"components.Settings.cancelscan": "Annuler le scan",
|
||||
"components.Settings.copied": "Clé d'API copiée dans le presse-papier.",
|
||||
"components.Settings.currentlibrary": "Bibliothèque actuelle : {name}",
|
||||
"components.Settings.default": "Par défaut",
|
||||
"components.Settings.default4k": "4K par défaut",
|
||||
@@ -807,21 +806,11 @@
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingssaved": "Les paramètres de la notification Web push ont été enregistrés avec succès !",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingsfailed": "Les paramètres de la notification Web push n'ont pas été enregistrés.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "Activer l'agent",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL de webhook",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Vous devez fournir une URL valide",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Paramètres de notification de LunaSea sauvegardés avec succès !",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Les paramètres de notification LunaSea n'ont pas pu être enregistrés.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Uniquement nécessaire si vous n'utilisez pas le profil <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Nom du Profil",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Activer l'agent",
|
||||
"components.PermissionEdit.requestMoviesDescription": "Autorise à demander des films non-4K.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestFailed": "La notification de test Web Push n’a pas été envoyée.",
|
||||
"components.PermissionEdit.requestMovies": "Demander des films",
|
||||
"components.PermissionEdit.requestTv": "Demander des séries",
|
||||
"components.PermissionEdit.requestTvDescription": "Autorise à demander des séries non-4K.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Notification test LunaSea envoyée !",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Envoi de la notification test LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "L'envoi de la notification test LunaSea a échoué.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Envoi de la notification test Pushbullet…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "L'envoi de la notification test Pushbullet a échoué.",
|
||||
"components.Settings.Notifications.toastTelegramTestFailed": "L'envoi de la notification test à Telegram a échoué.",
|
||||
@@ -840,7 +829,6 @@
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Enregistrer une application</ApplicationRegistrationLink> à utiliser avec Jellyseerr",
|
||||
"components.RequestList.RequestItem.requesteddate": "Demandé",
|
||||
"components.RequestCard.failedretry": "Une erreur s'est produite lors du renvoi de la demande.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Paramètres de notification Web Push enregistrés avec succès !",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSuccess": "Notification de test web push envoyée !",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSending": "Envoi d'une notification de test web push…",
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "Afin de recevoir des notifications push web, Jellyseerr doit fonctionner en HTTPS.",
|
||||
@@ -851,13 +839,11 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSending": "Envoi de la notification test Slack…",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestFailed": "L'envoi de la notification test Slack a échoué.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Créer un jeton à partir de vos <PushbulletSettingsLink>paramètres de compte</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Votre <LunaSeaLink>URL de webhook de notification</LunaSeaLink> basée sur l'utilisateur ou l'appareil",
|
||||
"components.QuotaSelector.seasons": "{count, plural, one {saison} other {saisons}}",
|
||||
"components.QuotaSelector.movies": "{count, plural, one {film} other {films}}",
|
||||
"components.QuotaSelector.movieRequests": "{quotaLimit} <quotaUnits>{movies} tous les {quotaDays} {days}</quotaUnits>",
|
||||
"components.QuotaSelector.days": "{count, plural, one {jour} other {jours}}",
|
||||
"components.Settings.SettingsAbout.betawarning": "Ceci est un logiciel BÊTA. Les fonctionnalités peuvent être non opérationnelles ou instables. Veuillez signaler tout problème sur GitHub !",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Échec de l'enregistrement des paramètres de notification Web push.",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.languageDefault": "Langage par défaut ({language})",
|
||||
"components.Settings.webAppUrlTip": "Dirigez éventuellement les utilisateurs vers l'application Web sur votre serveur au lieu de l'application Web « hébergée »",
|
||||
"components.Settings.webAppUrl": "URL <WebAppLink>Application Web</WebAppLink>",
|
||||
@@ -883,7 +869,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "Vous devez sélectionner au moins un type de notification",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "Vous devez sélectionner au moins un type de notification",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Vous devez sélectionner au moins un type de notification",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Vous devez sélectionner au moins un type de notification",
|
||||
"components.QuotaSelector.tvRequests": "{quotaLimit} <quotaUnits>{seasons} tous les {quotaDays} {days}</quotaUnits>",
|
||||
"components.NotificationTypeSelector.usermediarequestedDescription": "Être averti(e) lorsque d'autres utilisateurs soumettent une demande de média qui nécessite une validation.",
|
||||
"components.NotificationTypeSelector.usermediafailedDescription": "Être averti(e) lorsqu'une demande de média n'a pas pu être ajoutée à Radarr ou Sonarr.",
|
||||
@@ -1304,7 +1289,6 @@
|
||||
"components.Login.hostname": "URL de {mediaServerName}",
|
||||
"components.Login.port": "Port",
|
||||
"components.Login.urlBase": "URL de base",
|
||||
"components.Login.validationHostnameRequired": "Vous devez fournir un nom d'hôte ou une adresse IP valide",
|
||||
"components.Login.validationPortRequired": "Vous devez fournir un numéro de port valide",
|
||||
"components.Login.validationUrlBaseLeadingSlash": "L'URL de base doit avoir une barre oblique initiale",
|
||||
"components.Login.validationUrlTrailingSlash": "L'URL ne doit pas se terminer par une barre oblique finale",
|
||||
@@ -1330,7 +1314,7 @@
|
||||
"components.Selector.inProduction": "En production",
|
||||
"components.Selector.pilot": "Pilote",
|
||||
"components.Selector.planned": "Planifié(e)",
|
||||
"components.Selector.returningSeries": "Séries de retour",
|
||||
"components.Selector.returningSeries": "Série de retour",
|
||||
"components.Selector.searchStatus": "Sélectionner statut...",
|
||||
"components.Setup.back": "Retourner en arrière",
|
||||
"components.Setup.configemby": "Configurer Emby",
|
||||
@@ -1394,7 +1378,6 @@
|
||||
"components.Settings.OverrideRuleModal.selectQualityProfile": "Choisir le profil de qualité",
|
||||
"components.Settings.OverrideRuleModal.selectRootFolder": "Choisir le dossier racine",
|
||||
"components.Settings.SettingsNetwork.networksettings": "Paramètres réseau",
|
||||
"components.Settings.SettingsNetwork.advancedNetworkSettings": "Paramètres réseau avancés",
|
||||
"components.DiscoverTvUpcoming.upcomingtv": "Séries à venir",
|
||||
"components.Login.noadminerror": "Aucun compte administrateur trouvé sur ce serveur.",
|
||||
"components.Login.orsigninwith": "Ou se connecter avec",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"components.ManageSlideOver.alltime": "כל הזמנים",
|
||||
"components.Login.validationemailrequired": "יש לספק מייל חוקי",
|
||||
"components.Login.validationemailrequired": "יש לספק כתובת מייל תקינה",
|
||||
"components.NotificationTypeSelector.userissuereopenedDescription": "קבל התראה כשבעיות שפתחת נפתחות מחדש.",
|
||||
"components.AppDataWarning.dockerVolumeMissingDescription": "ה <code>{appDataPath}</code> אחסון לא הוגדר כראוי. כל המידע יוסר כאשר הקונטיינר יעצור או יותחל מחדש.",
|
||||
"components.CollectionDetails.overview": "תצוגה כללית",
|
||||
@@ -98,7 +98,7 @@
|
||||
"components.IssueDetails.toaststatusupdated": "סטאטוס המקרה עודכן בהצלחה!",
|
||||
"components.IssueDetails.toaststatusupdatefailed": "משהו השתבש בזמן עדכון סטאטוס המקרה.",
|
||||
"components.IssueDetails.unknownissuetype": "לא ידוע",
|
||||
"components.IssueList.IssueItem.issuestatus": "סטאטוס",
|
||||
"components.IssueList.IssueItem.issuestatus": "סטטוס",
|
||||
"components.IssueList.IssueItem.unknownissuetype": "לא ידוע",
|
||||
"components.IssueList.IssueItem.viewissue": "צפה במקרה",
|
||||
"components.IssueList.issues": "מקרים",
|
||||
@@ -148,8 +148,8 @@
|
||||
"components.Discover.CreateSlider.searchKeywords": "חפש מילות מפתח…",
|
||||
"components.Discover.CreateSlider.searchStudios": "חפש אולפנים…",
|
||||
"components.Discover.CreateSlider.slidernameplaceholder": "שם הסליידר",
|
||||
"components.Discover.CreateSlider.validationDatarequired": "עליך לספק ערך.",
|
||||
"components.Discover.CreateSlider.validationTitlerequired": "עליך לספק כותר.",
|
||||
"components.Discover.CreateSlider.validationDatarequired": "יש לספק ערך.",
|
||||
"components.Discover.CreateSlider.validationTitlerequired": "יש לספק כותרת.",
|
||||
"components.Discover.DiscoverMovieKeyword.keywordMovies": "סרטים {keywordTitle}",
|
||||
"components.Discover.DiscoverMovies.discovermovies": "סרטים",
|
||||
"components.Discover.DiscoverMovies.sortPopularityAsc": "פופולריות בסדר עולה",
|
||||
@@ -190,7 +190,7 @@
|
||||
"components.Discover.CreateSlider.addsuccess": "סליידר חדש נוצר בהצלחה ונשמרו הגדרות התאמה.",
|
||||
"components.Discover.CreateSlider.providetmdbnetwork": "ספק מזהה רשת TMDB",
|
||||
"components.Discover.DiscoverTv.sortFirstAirDateDesc": "תאריך שידור ראשון בסדר יורד",
|
||||
"components.Discover.CreateSlider.starttyping": "התחל להזין כדי לחפש.",
|
||||
"components.Discover.CreateSlider.starttyping": "התחל להקליד כדי לחפש.",
|
||||
"components.Discover.FilterSlideover.runtimeText": "זמן ריצה בין {minValue} ל {maxValue}",
|
||||
"components.Discover.DiscoverMovies.activefilters": "{count, plural, one {פילטר פעיל} other {# פילטרים פעילים}}",
|
||||
"components.Discover.DiscoverSliderEdit.deletefail": "כשל במחיקת סליידר.",
|
||||
@@ -357,7 +357,6 @@
|
||||
"components.PermissionEdit.autoapproveSeriesDescription": "אישור בקשות סדרות אוטומטי (ללא 4K).",
|
||||
"component.BlacklistBlock.blacklistdate": "תאריך חסימה",
|
||||
"components.Login.hostname": "{mediaServerName} כתובת URL",
|
||||
"components.Login.validationHostnameRequired": "עליך להזין שם מארח או כתובת IP תקינה",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "בסיס ה-URL לא יכול להסתיים בסלאש",
|
||||
"components.MovieDetails.watchlistSuccess": "<strong>{title}</strong> נוסף לרשימת הצפייה בהצלחה!",
|
||||
"components.NotificationTypeSelector.usermediaAutoApprovedDescription": "קבלת התראות כאשר משתמשים אחרים מגישים בקשות מדיה חדשות אשר מאושרות אוטומטית.",
|
||||
@@ -387,10 +386,9 @@
|
||||
"components.Selector.canceled": "בוטל",
|
||||
"components.Selector.ended": "נגמר",
|
||||
"components.Selector.searchStudios": "חיפוש אולפנים…",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTokenRequired": "עליך לספק אסימון יישום",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "הפעל סוכן",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTokenRequired": "יש לספק אסימון יישום",
|
||||
"components.Settings.Notifications.NotificationsSlack.slacksettingsfailed": "הגדרות ההתראות של Slack נכשלו להישמר.",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationWebhookUrl": "עליך לספק כתובת URL תקינה",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationWebhookUrl": "יש לספק כתובת URL תקינה",
|
||||
"components.Layout.Sidebar.blacklist": "רשימת חסימות",
|
||||
"components.Login.back": "חזרה",
|
||||
"components.PermissionEdit.viewissuesDescription": "הענקת גישה לראות בעיות מדיה שדווחו על ידי משתמשים אחרים.",
|
||||
@@ -400,10 +398,9 @@
|
||||
"components.RequestModal.pending4krequest": "בקשת 4K ממתינה",
|
||||
"components.RequestModal.requestedited": "בקשה עבור <strong>{title}</strong> נערכה בהצלחה!",
|
||||
"components.Settings.Notifications.NotificationsGotify.gotifysettingsfailed": "הגדרות ההתראות של Gotify נכשלו להישמר.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "עליך לספק כתובת URL תקינה",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "שולח התראת בדיקה של Pushbullet…",
|
||||
"components.Settings.Notifications.NotificationsPushover.userTokenTip": "<UsersGroupsLink>מזהה המשתמש או הקבוצה</UsersGroupsLink> בעל ה-30 תווים שלך",
|
||||
"components.Login.adminerror": "עליך להשתמש בחשבון מנהל בשביל להתחבר.",
|
||||
"components.Login.adminerror": "יש להשתמש בחשבון מנהל בשביל להתחבר.",
|
||||
"components.NotificationTypeSelector.userissueresolvedDescription": "קבלת התראות כאשר הבעיות שדיווחת נפתרות.",
|
||||
"components.Discover.FilterSlideover.status": "סטטוס",
|
||||
"components.PermissionEdit.blacklistedItemsDescription": "הענקת גישה לחסימת מדיה.",
|
||||
@@ -412,9 +409,8 @@
|
||||
"components.ResetPassword.validationpasswordrequired": "יש לספק סיסמה",
|
||||
"components.Selector.inProduction": "בהפקה",
|
||||
"components.Selector.pilot": "פרק דוגמה",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "הגדרות ההתראות של LunaSea נשמרו בהצלחה!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "יצירת אסימון מתוך <PushbulletSettingsLink>הגדרות המשתמש</PushbulletSettingsLink> שלך",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationAccessTokenRequired": "עליך לספק אסימון גישה",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationAccessTokenRequired": "יש לספק אסימון גישה",
|
||||
"components.PermissionEdit.manageblacklistDescription": "הענקת גישה לניהול מדיה חסומה.",
|
||||
"components.PersonDetails.appearsin": "מופעים",
|
||||
"components.RequestCard.tmdbid": "מזהה TMDB",
|
||||
@@ -427,7 +423,7 @@
|
||||
"components.Login.port": "פורט",
|
||||
"components.Login.servertype": "סוג שרת",
|
||||
"components.Login.urlBase": "בסיס URL",
|
||||
"components.Login.validationPortRequired": "עליך להזין מספר פורט תקין",
|
||||
"components.Login.validationPortRequired": "יש לספק מספר פורט תקין",
|
||||
"components.Login.validationUrlBaseLeadingSlash": "בסיס ה-URL חייב להתחיל בסלאש",
|
||||
"components.Login.validationUrlTrailingSlash": "ה-URL לא יכול להסתיים בסלאש",
|
||||
"components.Login.validationservertyperequired": "אנא בחר סוג שרת",
|
||||
@@ -594,14 +590,6 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestFailed": "התראת הבדיקה של Gotify נכשלה להשלח.",
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSending": "שולח התראת בדיקה של Gotify…",
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSuccess": "התראת הבדיקה של Gotify נשלחה!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "שם פרופיל",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "רק דרוש אם הפרופיל <code>default</code> לא בשימוש",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "הגדרות ההתראות של LunaSea נכשלו להישמר.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "התראת הבדיקה של LunaSea נכשלה להשלח.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "שולח התראת בדיקה של LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "התראת הבדיקה של LunaSea נשלחה!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "עליך לבחור לפחות סוג התראות אחד",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL של ה-Webhook",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "אסימון גישה",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "הפעל סוכן",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.channelTag": "תג ערוץ",
|
||||
@@ -609,23 +597,23 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsSaved": "הגדרות ההתראות של Pushbullet נשמרו בהצלחה!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "התראת הבדיקה של Pushbullet נכשלה להשלח.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "התראת הבדיקה של Pushbullet נשלחה!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "עליך לבחור לפחות סוג התראה אחד",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "יש לבחור לפחות סוג התראה אחד",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestFailed": "התראת הבדיקה של Pushover נכשלה להשלח.",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSending": "שולח התראת בדיקה של Pushover…",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSuccess": "התראת הבדיקה של Pushover נשלחה!",
|
||||
"components.Settings.Notifications.NotificationsPushover.userToken": "מפתח משתמש או קבוצה",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationAccessTokenRequired": "עליך לספק אסימון יישום תקין",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "עליך לבחור לפחות סוג התראה אחד",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationUserTokenRequired": "עליך לספק משתמש או מפתח קבוצה תקין",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationAccessTokenRequired": "יש לספק אסימון יישום תקין",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "יש לבחור לפחות סוג התראה אחד",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationUserTokenRequired": "יש לספק משתמש או מפתח קבוצה תקין",
|
||||
"components.Settings.Notifications.NotificationsSlack.agentenabled": "הפעל סוכן",
|
||||
"components.Settings.Notifications.NotificationsSlack.slacksettingssaved": "הגדרות ההתראות של Slack נשמרו בהצלחה!",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestFailed": "התראת הבדיקה של Slack נכשלה להשלח.",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSending": "שולח התראת בדיקה של Slack…",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSuccess": "התראת הבדיקה של Slack נשלחה!",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "עליך לבחור לפחות סוג התראה אחד",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "יש לבחור לפחות סוג התראה אחד",
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrl": "URL של ה-Webhook",
|
||||
"component.BlacklistModal.blacklisting": "חסימה",
|
||||
"components.Blacklist.blacklistNotFoundError": "<strong>{title}</strong> לא חסום.",
|
||||
"components.Blacklist.blacklistNotFoundError": "<strong>{title}</strong> לא ברשימת החסימה.",
|
||||
"components.Blacklist.blacklistSettingsDescription": "ניהול מדיה חסומה.",
|
||||
"components.Blacklist.blacklistdate": "תאריך",
|
||||
"components.Blacklist.blacklistedby": "{date} על ידי {user}",
|
||||
@@ -644,8 +632,8 @@
|
||||
"components.RequestModal.QuotaDisplay.movie": "סרט",
|
||||
"components.Settings.Notifications.NotificationsGotify.token": "אסימון יישום",
|
||||
"components.Settings.Notifications.NotificationsGotify.url": "כתובת URL של שרת",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "עליך לבחור לפחות סוג התראות אחד",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlRequired": "עליך לספק כתובת URL תקינה",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "יש לבחור לפחות סוג התראות אחד",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlRequired": "יש לספק כתובת URL תקינה",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "על כתובת ה-URL לא להסתיים בסלאש",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessToken": "אסימון API של היישום",
|
||||
"components.Settings.Notifications.NotificationsPushover.agentenabled": "הפעל סוכן",
|
||||
@@ -654,19 +642,119 @@
|
||||
"components.Settings.Notifications.NotificationsPushover.pushoversettingssaved": "הגדרות ההתראות של Pushover נשמרו בהצלחה!",
|
||||
"components.Settings.Notifications.NotificationsPushover.sound": "צליל התראה",
|
||||
"components.Settings.Notifications.NotificationsWebhook.resetPayload": "איפוס לברירת מחדל",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "<LunaSeaLink>קישור Webhook להתראות</LunaSeaLink> מבוסס מכשיר או משתמש",
|
||||
"components.Settings.Notifications.NotificationsWebhook.agentenabled": "הפעל סוכן",
|
||||
"components.Settings.Notifications.NotificationsWebhook.authheader": "כותרת עליונה של הרשאות",
|
||||
"components.Settings.Notifications.NotificationsWebhook.customJson": "מטען JSON",
|
||||
"components.Settings.Notifications.NotificationsWebhook.resetPayloadSuccess": "מטען JSON התאפס בהצלחה!",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSuccess": "התראת הבדיקה של ה-Webhook נשלחה!",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationJsonPayloadRequired": "עליך לספק מטען JSON תקין",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationTypes": "עליך לבחור לפחות סוג התראה אחד",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationWebhookUrl": "עליך לספק כתובת URL תקינה",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationJsonPayloadRequired": "יש לספק מטען JSON תקין",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationTypes": "יש לבחור לפחות סוג התראה אחד",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationWebhookUrl": "יש לספק כתובת URL תקינה",
|
||||
"components.Settings.Notifications.NotificationsWebhook.webhookUrl": "URL של ה-Webhook",
|
||||
"components.Settings.Notifications.NotificationsWebhook.webhooksettingsfailed": "הגדרות ההתראות של ה-Webhook נכשלו להשמר.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.webhooksettingssaved": "הגדרות ההתראות של ה-Webhook נשמרו בהצלחה!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "הפעל סוכן",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestFailed": "התראת הבדיקה של ה-Webhook נכשלה להשלח.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSending": "שולח התראת בדיקה של ה-Webhook…"
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSending": "שולח התראת בדיקה של ה-Webhook…",
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "על מנת לקבל התראות אינטרנט, על Jellyseerr להיות מוגש בעזרת HTTPS.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.templatevariablehelp": "תבנית משתנה עזרה",
|
||||
"i18n.noresults": "אין תוצאות.",
|
||||
"i18n.removefromBlacklist": "הסרה מרשימת החסימה",
|
||||
"i18n.removeFromBlacklistSuccess": "<strong>{title}</strong> הוסר בהצלחה מרשימת החסימה.",
|
||||
"i18n.requested": "התבקש",
|
||||
"i18n.notrequested": "לא נתבקש",
|
||||
"i18n.open": "פתוח",
|
||||
"i18n.partiallyavailable": "זמין חלקית",
|
||||
"i18n.pending": "ממתין",
|
||||
"i18n.previous": "קודם",
|
||||
"i18n.processing": "מעבד",
|
||||
"i18n.request": "בקשה",
|
||||
"i18n.request4k": "בקשה ב-4K",
|
||||
"i18n.requesting": "מבקש…",
|
||||
"i18n.resolved": "נפתר",
|
||||
"i18n.restartRequired": "נדרשת הפעלה מחדש",
|
||||
"i18n.resultsperpage": "הצג {pageSize} תוצאות בכל דף",
|
||||
"i18n.retry": "נסה שוב",
|
||||
"i18n.retrying": "מנסה שוב…",
|
||||
"i18n.save": "שמירת שינויים",
|
||||
"i18n.saving": "שומר…",
|
||||
"i18n.settings": "הגדרות",
|
||||
"i18n.showingresults": "מציג <strong>{from}</strong> ל-<strong>{to}</strong> מתוך <strong>{total}</strong> תוצאות",
|
||||
"i18n.specials": "פרקים מיוחדים",
|
||||
"i18n.status": "סטטוס",
|
||||
"i18n.test": "בדיקה",
|
||||
"i18n.testing": "בודק…",
|
||||
"i18n.tvshow": "סדרה",
|
||||
"i18n.tvshows": "סדרות",
|
||||
"i18n.unavailable": "לא זמין",
|
||||
"i18n.usersettings": "הגדרות משתמש",
|
||||
"pages.errormessagewithcode": "{statusCode} - {error}",
|
||||
"pages.internalservererror": "שגיאת שרת פנימית",
|
||||
"pages.oops": "אופס",
|
||||
"pages.pagenotfound": "דף לא נמצא",
|
||||
"pages.returnHome": "חזרה לדף הבית",
|
||||
"pages.serviceunavailable": "שירות לא זמין",
|
||||
"pages.somethingwentwrong": "משהו השתבש",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestFailed": "התראת הבדיקה דרך הרשת נכשלה להשלח.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingssaved": "הגדרות ההתראות דרך הרשת נשמרו בהצלחה!",
|
||||
"components.Settings.SonarrModal.hostname": "שם מארח או כתובת IP",
|
||||
"components.Settings.Notifications.validationSmtpPortRequired": "יש לספק מספר פורט תקין",
|
||||
"components.Settings.Notifications.botAvatarUrl": "כתובת URL של תמונת הבוט",
|
||||
"components.Settings.Notifications.botUsername": "שם משתמש של הבוט",
|
||||
"components.Settings.Notifications.pgpPasswordTip": "חתימת הודעות אי-מייל מוצפנות בעזרת <OpenPgpLink>OpenPGP</OpenPgpLink>",
|
||||
"components.Settings.RadarrModal.hostname": "שם מארח או כתובת IP",
|
||||
"components.Settings.Notifications.chatIdTip": "התחל שיחה עם הבוט שלך, הוסף <GetIdBotLink>@get_id_bot</GetIdBotLink>, ובצע את הפקודה <code>/my_id</code>",
|
||||
"components.Settings.Notifications.encryptionDefault": "שימוש ב-STARTTLS אם זמין",
|
||||
"components.Settings.Notifications.toastDiscordTestSuccess": "התראת בדיקה של Discord נשלחה!",
|
||||
"components.Settings.validationHostnameRequired": "יש לספק שם מארח או כתובת IP תקינה",
|
||||
"components.Settings.Notifications.encryptionTip": "ברוב המקרים, Implicit TLS משתמש בפורט 465 ו-STARTTLS משתמש בפורט 587",
|
||||
"components.Settings.SonarrModal.validationHostnameRequired": "יש לספק שם מארח או כתובת IP תקינה",
|
||||
"components.Settings.Notifications.toastDiscordTestSending": "שולח התראת בדיקה של Discord…",
|
||||
"components.Settings.Notifications.toastTelegramTestFailed": "התראת הבדיקה של Telegram נכשלה להשלח.",
|
||||
"components.Settings.Notifications.validationChatIdRequired": "יש לספק מזהה צ'אט תקין",
|
||||
"components.Settings.SettingsNetwork.proxyHostname": "שם מארח Proxy",
|
||||
"components.Settings.RadarrModal.validationHostnameRequired": "יש לספק שם מארח או כתובת IP תקינה",
|
||||
"components.Settings.hostname": "שם מארח או כתובת IP",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSending": "שולח התראת בדיקה דרך הרשת…",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSuccess": "התראת הבדיקה דרך הרשת נשלחה!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingsfailed": "הגדרות ההתראות דרך הרשת נכשלו להשמר.",
|
||||
"components.Settings.Notifications.agentenabled": "הפעל סוכן",
|
||||
"components.Settings.Notifications.authPass": "סיסמת SMTP",
|
||||
"components.Settings.Notifications.authUser": "שם משתמש SMTP",
|
||||
"components.Settings.Notifications.botAPI": "אסימון הרשאת בוט",
|
||||
"components.Settings.Notifications.botApiTip": "<CreateBotLink>יצירת בוט</CreateBotLink> לשימוש עם Jellyseerr",
|
||||
"components.Settings.Notifications.botUsernameTip": "אפשר למשתמשים גם להתחיל שיחה עם הבוט שלך ולהגדיר התראות אישיות",
|
||||
"components.Settings.Notifications.discordsettingsfailed": "הגדרות ההתראות של Discord נכשלו להשמר.",
|
||||
"components.Settings.Notifications.discordsettingssaved": "הגדרות ההתראות של Discord נשמרו בהצלחה!",
|
||||
"components.Settings.Notifications.emailsender": "כתובת מוען",
|
||||
"components.Settings.Notifications.emailsettingsfailed": "הגדרות התראות ה-Email נכשלו להשמר.",
|
||||
"components.Settings.Notifications.emailsettingssaved": "הגדרות התראות ה-Email נשמרו בהצלחה!",
|
||||
"components.Settings.Notifications.enableMentions": "הפעל תיוגים",
|
||||
"components.Settings.Notifications.encryption": "שיטת הצפנה",
|
||||
"components.Settings.Notifications.encryptionImplicitTls": "שימוש ב Implicit TLS",
|
||||
"components.Settings.Notifications.encryptionNone": "ללא",
|
||||
"components.Settings.Notifications.encryptionOpportunisticTls": "תמיד השתמש ב-STARTTLS",
|
||||
"components.Settings.Notifications.pgpPassword": "סיסמת PGP",
|
||||
"components.Settings.Notifications.pgpPrivateKey": "מפתח PGP פרטי",
|
||||
"components.Settings.Notifications.sendSilentlyTip": "שליחת התראות ללא קול",
|
||||
"components.Settings.Notifications.sendSilently": "שליחה בשקט",
|
||||
"components.Settings.Notifications.toastEmailTestFailed": "התראת הבדיקה דרך אימייל נכשלה להשלח.",
|
||||
"components.Settings.Notifications.toastEmailTestSending": "שולח התראת בדיקה דרך אימייל…",
|
||||
"components.Settings.Notifications.toastEmailTestSuccess": "התראת בדיקה דרך אימייל נשלחה בהצלחה!",
|
||||
"components.Settings.Notifications.toastTelegramTestSuccess": "התראת הבדיקה של Telegram נשלחה!",
|
||||
"components.Settings.Notifications.toastTelegramTestSending": "שולח התראת בדיקה של Telegram…",
|
||||
"components.Settings.Notifications.userEmailRequired": "דרוש אימייל משתמש",
|
||||
"components.Settings.Notifications.validationPgpPassword": "יש לספק סיסמת PGP",
|
||||
"components.Settings.Notifications.validationBotAPIRequired": "יש לספק אסימון הרשאת בוט",
|
||||
"components.Settings.Notifications.validationEmail": "יש לספק כתובת מייל תקינה",
|
||||
"components.Settings.Notifications.validationPgpPrivateKey": "יש לספק מפתח PGP פרטי תקין",
|
||||
"components.Settings.Notifications.validationSmtpHostRequired": "יש לספק שם מארח או כתובת IP תקינה",
|
||||
"components.Settings.Notifications.validationTypes": "יש לבחור לפחות סוג התראות אחד",
|
||||
"components.Settings.Notifications.validationUrl": "יש לספק כתובת URL תקינה",
|
||||
"components.Settings.Notifications.webhookUrl": "URL של ה-Webhook",
|
||||
"components.Settings.Notifications.chatId": "מזהה צ'אט",
|
||||
"i18n.addToBlacklist": "הוספה לרשימת החסימות",
|
||||
"i18n.blacklistDuplicateError": "<strong>{title}</strong> כבר נוסף לרשימת החסימה.",
|
||||
"i18n.blacklistSuccess": "<strong>{title}</strong> נוסף לרשימת החסימה בהצלחה.",
|
||||
"i18n.blacklisted": "חסום"
|
||||
}
|
||||
|
||||
@@ -340,7 +340,6 @@
|
||||
"components.Settings.addradarr": "Dodaj Radarr poslužitelj",
|
||||
"components.Settings.address": "Adresa",
|
||||
"components.Settings.addsonarr": "Dodaj Sonarr poslužitelj",
|
||||
"components.Settings.copied": "API ključ je kopiran u međuspremnik.",
|
||||
"components.Settings.currentlibrary": "Aktualna biblioteka: {name}",
|
||||
"components.Settings.default": "Zadano",
|
||||
"components.Settings.default4k": "Zadano 4K",
|
||||
@@ -598,15 +597,8 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSending": "Slanje Gotify obavijesti provjere …",
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSuccess": "Gotify obavijest provjere je poslana!",
|
||||
"components.Settings.Notifications.NotificationsGotify.token": "Token programa",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Aktiviraj agenta",
|
||||
"components.Settings.Notifications.NotificationsGotify.url": "URL poslužitelja",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL ne smije završiti s kosom crtom",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Ime profila",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Potrebno je samo ako se ne koristi <code>zadani</code> profil",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Neuspjelo slanje LunaSea obavijesti provjere.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Slanje LunaSea obavijesti provjere …",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea obavijest provjere je poslana!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URL",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Token za pristup",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsFailed": "Neuspjelo spremanje postavki Pushbullet obavijesti.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Neuspjelo slanje Pushbullet obavijesti provjere.",
|
||||
@@ -792,10 +784,6 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTokenRequired": "Moraš navesti token programa",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "Moraš odabrati barem jednu vrstu obavijesti",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlRequired": "Moraš navesti valjani URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Neuspjelo spremanje postavki LunaSea obavijesti.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea postavke obavijesti su uspješno spremljene!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Moraš odabrati barem jednu vrstu obavijesti",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Moraš navesti valjani URL",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Stvori token iz tvojih <PushbulletSettingsLink>postavki računa</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "Aktiviraj agenta",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.channelTag": "Oznaka kanala",
|
||||
@@ -992,8 +980,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushbulletAccessToken": "Moraš navesti valjani token za pristup",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushoverApplicationToken": "Moraš navesti valjani token programa",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushoverUserKey": "Moraš navesti valjani ključ korisnika ili grupe",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Neuspjelo spremanje Web push postavki obavijesti.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Web push postavke obavijesti su uspješno spremljene!",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Potvrdi lozinku",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Nova lozinka",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.validationConfirmPassword": "Moraš potvrditi novu lozinku",
|
||||
@@ -1057,7 +1043,6 @@
|
||||
"components.RequestModal.SearchByNameModal.notvdbiddescription": "Nismo uspjeli automatski naći odgovarajuću seriju. Dolje odaberi odgovarajuću seriju.",
|
||||
"components.RequestModal.requestadmin": "Ovaj će se zahtjev automatski odobriti.",
|
||||
"components.ResetPassword.emailresetlink": "E-mail poveznica za obnavljanje lozinke",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Tvoj korisničke ili na osnovi uređaja <LunaSeaLink>webhook URL obavijesti</LunaSeaLink>",
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "Za primanje web push obavijesti, Jellyseerr se mora posluživati putem HTTPS-a.",
|
||||
"components.Settings.Notifications.NotificationsWebhook.templatevariablehelp": "Pomoć za varijablu predloška",
|
||||
"components.Settings.Notifications.chatIdTip": "Započni chat s tvojim botom, dodaj <GetIdBotLink>@get_id_bot</GetIdBotLink> i zadaj naredbu <code>/my_id</code>",
|
||||
|
||||
@@ -217,8 +217,6 @@
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Új jelszó",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "Jelenlegi jelszó",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Jelszó megerősítése",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "A webes push értesítés beállításai sikeresen mentésre kerültek!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "A webes push-értesítés beállításait nem sikerült elmenteni.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Web Push",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "Meg kell adnia egy érvényes chat azonosítót",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPgpPublicKey": "Érvényes PGP- kulcsot kell megadnia",
|
||||
@@ -343,7 +341,6 @@
|
||||
"components.Settings.default4k": "Alapértelmezett 4K",
|
||||
"components.Settings.default": "Alapértelmezett",
|
||||
"components.Settings.currentlibrary": "Jelenlegi könyvtár: {name}",
|
||||
"components.Settings.copied": "API-kulcs másolva a vágólapra.",
|
||||
"components.Settings.cancelscan": "Beolvasás megszakítása",
|
||||
"components.Settings.addsonarr": "Sonarr szerver hozzáadása",
|
||||
"components.Settings.address": "Cím",
|
||||
@@ -755,7 +752,6 @@
|
||||
"components.Settings.SettingsUsers.newPlexLoginTip": "Lehetővé teszi a {mediaServerName} felhasználók számára, hogy első importálás nélkül jelentkezzenek be",
|
||||
"components.Settings.SettingsUsers.newPlexLogin": "Engedélyezze az új {mediaServerName} bejelentkezést",
|
||||
"components.QuotaSelector.tvRequests": "{quotaLimit} <quotaUnits>{seasons} per {quotaDays} {days}</quotaUnits>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URL-je",
|
||||
"components.RequestModal.QuotaDisplay.allowedRequests": "Napi <strong>{limit}</strong> {type} kérés engedélyezett minden <strong>{days}</strong> naponta.",
|
||||
"components.Settings.Notifications.NotificationsSlack.agentenabled": "\"ügynök\" engedélyezése",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationUserTokenRequired": "Meg kell adnia egy érvényes felhasználói vagy csoportos kulcsot",
|
||||
@@ -779,17 +775,6 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "Agent engedélyezése",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Hozzon létre egy Tokent a <PushbulletSettingsLink>Fiók beállításokba</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Hozzáférési Token (Access Token)",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Felhasználói vagy eszközalapú <LunaSeaLink>értesitési webhook URL</LunaSeaLink>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Érvényes URL-t kell megadnia",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Legalább egy értesítési típust ki kell választania",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "A LunaSea teszt értesítése elküldve!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "LunaSea teszt értesítés küldése …",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "A LunaSea teszt értesítését nem sikerült elküldeni.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "A LunaSea értesítési beállításainak mentése sikerült!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "A LunaSea értesítési beállításainak mentése nem sikerült.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Csak akkor szükséges, ha nem használja a <code>default</code> profil",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Profil név",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "\"Ügynök\" engedélyezése",
|
||||
"components.Search.search": "Keresés",
|
||||
"components.ResetPassword.validationpasswordrequired": "Meg kell adnia egy jelszót",
|
||||
"components.ResetPassword.validationpasswordminchars": "A jelszó túl rövid; minimum 8 karakter hosszú legyen",
|
||||
@@ -979,7 +964,7 @@
|
||||
"components.RequestCard.cancelrequest": "Kérés visszavonása",
|
||||
"components.RequestCard.declinerequest": "Kérelem elutasítása",
|
||||
"components.RequestCard.editrequest": "Kérelem szerkesztése",
|
||||
"components.Discover.DiscoverWatchlist.discoverwatchlist": "",
|
||||
"components.Discover.DiscoverWatchlist.discoverwatchlist": "Saját Watchlist",
|
||||
"components.PermissionEdit.autorequest": "Automatikus kérés",
|
||||
"components.NotificationTypeSelector.mediaautorequested": "A kérelem automatikusan elküldve",
|
||||
"components.MovieDetails.reportissue": "Probléma bejelentése",
|
||||
@@ -1145,5 +1130,58 @@
|
||||
"components.Discover.FilterSlideover.runtimeText": "{minValue}-{maxValue} percnyi műsoridő",
|
||||
"components.Discover.FilterSlideover.studio": "Stúdió",
|
||||
"components.Discover.FilterSlideover.tmdbuserscore": "TMDB Felhasználói Értékelés",
|
||||
"components.Discover.FilterSlideover.streamingservices": "Streaming Szolgáltatók"
|
||||
"components.Discover.FilterSlideover.streamingservices": "Streaming Szolgáltatók",
|
||||
"component.BlacklistBlock.blacklistdate": "Feketelistás dátum",
|
||||
"components.Discover.resetsuccess": "A felfedezés testreszabási beállításainak visszaállítása sikeresen megtörtént.",
|
||||
"components.DownloadBlock.formattedTitle": "{title}: {seasonNumber}. Évad {episodeNumber}. Rész",
|
||||
"components.Layout.Sidebar.blacklist": "Feketelista",
|
||||
"components.Login.username": "Felhasználónév",
|
||||
"components.Blacklist.blacklistNotFoundError": "<strong>{title}</strong> nincs feketelistán.",
|
||||
"components.DiscoverTvUpcoming.upcomingtv": "Soron következő Sorozatok",
|
||||
"components.Discover.createnewslider": "Új Csúszka Létrehozása",
|
||||
"components.Discover.FilterSlideover.status": "Státusz",
|
||||
"components.Layout.UserWarnings.emailInvalid": "Az email cím hibás.",
|
||||
"components.Login.invalidurlerror": "Nem lehet a {mediaServerName} szerverhez kapcsolódni.",
|
||||
"components.Discover.customizediscover": "Felfedezés Testreszabása",
|
||||
"components.Login.adminerror": "Egy adminisztrátor fiókot kell használnod a belépéshez.",
|
||||
"components.Login.back": "Ugorj Vissza",
|
||||
"components.Discover.studios": "Stúdiók",
|
||||
"components.Discover.FilterSlideover.from": "Től",
|
||||
"components.Discover.FilterSlideover.to": "Ig",
|
||||
"components.Discover.networks": "Hálózatok",
|
||||
"components.Layout.Sidebar.browsemovies": "Filmek",
|
||||
"components.Layout.Sidebar.browsetv": "Sorozatok",
|
||||
"components.Layout.UserWarnings.emailRequired": "Egy email cím szükséges.",
|
||||
"components.Layout.UserWarnings.passwordRequired": "Jelszó szükséges.",
|
||||
"components.Login.credentialerror": "A felhasználónév vagy a jelszó hibás.",
|
||||
"components.Login.description": "Mivel ez az első belépésed a {applicationName}-be meg kell adnod egy valós email címet.",
|
||||
"components.Login.enablessl": "SSL használata",
|
||||
"components.Login.initialsignin": "Csatlakozás",
|
||||
"components.Login.initialsigningin": "Csatlakozás folyamatban…",
|
||||
"components.Login.loginwithapp": "Belépés {appName}-el",
|
||||
"components.Login.noadminerror": "Nem található adminisztrátor a szerveren.",
|
||||
"components.Login.orsigninwith": "Vagy belépés ezzel:",
|
||||
"components.Login.port": "Port",
|
||||
"components.Login.save": "Hozzáadás",
|
||||
"components.Login.saving": "Hozzáadás folyamatban…",
|
||||
"components.Login.servertype": "Szerver Típus",
|
||||
"components.Login.signinwithjellyfin": "Használd a {mediaServerName} fiókodat",
|
||||
"components.Login.title": "Email hozzáadása",
|
||||
"components.Login.urlBase": "URL Törzs",
|
||||
"components.Login.validationEmailFormat": "Érvénytelen email",
|
||||
"components.Login.validationEmailRequired": "Meg kell adnod egy email címet",
|
||||
"component.BlacklistBlock.blacklistedby": "Feketelistára rakta",
|
||||
"component.BlacklistModal.blacklisting": "Feketelista",
|
||||
"components.Blacklist.blacklistSettingsDescription": "Feketelistás média kezelése.",
|
||||
"components.Blacklist.blacklistdate": "dátum",
|
||||
"components.Blacklist.blacklistedby": "{date}-kor {user} által",
|
||||
"components.Blacklist.blacklistsettings": "Feketelista beállítások",
|
||||
"components.Blacklist.mediaName": "Név",
|
||||
"components.Blacklist.mediaTmdbId": "tmdb Id",
|
||||
"components.Blacklist.mediaType": "Típus",
|
||||
"components.Discover.resetfailed": "Hiba történt a felfedezés testreszabási beállításainak visszaállításakor.",
|
||||
"components.Discover.resettodefault": "Visszaállítás Alapértelmezettre",
|
||||
"components.Discover.resetwarning": "Össze csőszka visszaállítása alapértelmezettre. Ez a saját csúszkákat is kitörli!",
|
||||
"components.Discover.stopediting": "Módosítás abbahagyása",
|
||||
"components.Discover.tmdbmoviegenre": "TMDB film műfaja"
|
||||
}
|
||||
|
||||
@@ -115,7 +115,6 @@
|
||||
"components.Settings.default4k": "4K predefinito",
|
||||
"components.Settings.default": "Predefinito",
|
||||
"components.Settings.currentlibrary": "Libreria corrente: {name}",
|
||||
"components.Settings.copied": "Chiave API copiata negli appunti.",
|
||||
"components.Settings.cancelscan": "Annulla l'analisi",
|
||||
"components.Settings.addsonarr": "Aggiungi un server Sonarr",
|
||||
"components.Settings.addradarr": "Aggiungi un server Radarr",
|
||||
@@ -185,7 +184,7 @@
|
||||
"components.TvDetails.network": "{networkCount, plural, one {Rete} other {Reti}}",
|
||||
"components.Setup.finishing": "Finalizzazione…",
|
||||
"components.Settings.menuJobs": "Processi & Cache",
|
||||
"components.Setup.signinMessage": "Comincia accedendo con il tuo account Plex",
|
||||
"components.Setup.signinMessage": "Comincia facendo l'accesso",
|
||||
"components.Settings.sonarrsettings": "Impostazioni Sonarr",
|
||||
"components.Settings.plexsettingsDescription": "Configura le impostazioni per il tuo server Plex. Jellyseerr scansiona le tue librerie Plex per determinare la disponibilità dei contenuti.",
|
||||
"components.Settings.plexlibrariesDescription": "Le librerie che Jellyseerr scansiona per i titoli. Configura e salva le impostazioni di connessione Plex, quindi fai clic sul pulsante qui sotto se non sono elencate librerie.",
|
||||
@@ -485,12 +484,12 @@
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Conferma la password",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationDiscordId": "È necessario fornire un ID utente valido",
|
||||
"components.CollectionDetails.requestcollection4k": "Richiedi Raccolta in 4K",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.region": "Regione da scoprire",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.region": "Ricerca per Regione",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.originallanguage": "Lingua da scoprire",
|
||||
"components.Settings.webhook": "Webhook",
|
||||
"components.Settings.email": "E-mail",
|
||||
"components.Settings.email": "Email",
|
||||
"components.RegionSelector.regionDefault": "Tutte le regioni",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.regionTip": "Filtra i contenuti per disponibilità regionale",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.regionTip": "Filtra i contenuti in base alla disponibilità della regione",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.originallanguageTip": "Filtra i contenuti per lingua originale",
|
||||
"components.Discover.upcomingtv": "Serie in uscita",
|
||||
"components.RegionSelector.regionServerDefault": "Predefinito ({region})",
|
||||
@@ -577,7 +576,7 @@
|
||||
"components.Settings.SettingsLogs.resumeLogs": "Riprendi",
|
||||
"components.Settings.SettingsLogs.pauseLogs": "Pausa",
|
||||
"components.Settings.SettingsLogs.message": "Messaggio",
|
||||
"components.Settings.SettingsLogs.logsDescription": "Puoi anche visualizzare questi registri direttamente tramite <code>stdout</code>, o in <code>{appDataPath}/logs/overseerr.log</code>.",
|
||||
"components.Settings.SettingsLogs.logsDescription": "Puoi anche visualizzare questi registri direttamente tramite <code>stdout</code>, o in <code>{appDataPath}/logs/jellyseerr.log</code>.",
|
||||
"components.Settings.SettingsLogs.level": "Gravità",
|
||||
"components.Settings.SettingsLogs.label": "Etichetta",
|
||||
"components.Settings.SettingsLogs.filterWarn": "Attenzione",
|
||||
@@ -592,7 +591,7 @@
|
||||
"components.Settings.SettingsLogs.extraData": "Dati aggiuntivi",
|
||||
"components.Settings.SettingsLogs.copyToClipboard": "Copia negli appunti",
|
||||
"components.Settings.SettingsLogs.copiedLogMessage": "Messaggio di registro copiato negli appunti.",
|
||||
"components.UserList.nouserstoimport": "Non ci sono utenti PLex da importare.",
|
||||
"components.UserList.nouserstoimport": "Non ci sono utenti Plex da importare.",
|
||||
"components.PersonDetails.lifespan": "{birthdate} – {deathdate}",
|
||||
"components.PersonDetails.birthdate": "Data di nascita {birthdate}",
|
||||
"components.PersonDetails.alsoknownas": "Altri nomi: {names}",
|
||||
@@ -605,7 +604,7 @@
|
||||
"i18n.status": "Stato",
|
||||
"i18n.showingresults": "Mostrando <strong>{from}</strong> a <strong>{to}</strong> di <strong>{total}</strong> risultati",
|
||||
"i18n.resultsperpage": "Mostra {pageSize} risultati per pagina",
|
||||
"i18n.saving": "Salvataggio…",
|
||||
"i18n.saving": "Salvando…",
|
||||
"i18n.save": "Salva Modifiche",
|
||||
"i18n.requesting": "Richiesta in corso…",
|
||||
"i18n.request4k": "Richiedi in 4K",
|
||||
@@ -713,17 +712,8 @@
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingssaved": "Impostazioni di notifica web salvate con successo!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingsfailed": "Impossibile salvare le impostazioni di notifica web.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "Abilita Agente",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Impostazioni di notifica Web push salvate correttamente!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Impossibile salvare le impostazioni di notifica via Web push.",
|
||||
"components.Settings.noDefault4kServer": "Un server 4K {serverType} deve essere contrassegnato come predefinito per permettere agli utenti di inviare richieste 4K {mediaType}.",
|
||||
"components.Settings.is4k": "4K",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "È necessario fornire un URL valido",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Impostazioni LunaSea salvate con successo!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Impossibile salvare le impostazioni di notifica LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Richiesto solo se non si usa il profilo <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Nome Profilo",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Abilita Agente",
|
||||
"components.PermissionEdit.requestTvDescription": "Concedere l'autorizzazione per richiedere serie non 4K.",
|
||||
"components.PermissionEdit.requestTv": "Richiedi Serie",
|
||||
"components.PermissionEdit.requestMoviesDescription": "Concedere il permesso di richiedere film non in 4K.",
|
||||
@@ -742,9 +732,6 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Notifica di prova Pushbullet inviata!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Invio notifica di prova Pushbullet …",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Invio della notifica di prova Pushbullet non riuscito.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Notifica di test LunaSea inviata!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Invio notifica di prova con LunaSea …",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Impossibile inviare notifica con LunaSea.",
|
||||
"components.DownloadBlock.estimatedtime": "Stimato {time}",
|
||||
"components.Settings.Notifications.encryptionImplicitTls": "Usa TLS Implicito",
|
||||
"components.Settings.Notifications.encryptionTip": "Solitamente, TLS Implicito usa la porta 465 e STARTTLS usa la porta 587",
|
||||
@@ -757,7 +744,7 @@
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSuccess": "Notifica Webhook di prova inviata!",
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrlTip": "Crea un'integrazione <WebhookLink>Incoming Webhook</WebhookLink>",
|
||||
"components.Settings.Notifications.NotificationsPushover.userTokenTip": "Il tuo identificatore <UsersGroupsLink>utente o gruppo</UsersGroupsLink> di 30 caratteri",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicazioneRegistrazioneLink>Registra un'applicazione</ApplicazioneRegistrazioneLink> per l'uso con Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Registra un'applicazione</ApplicationRegistrationLink> per l'uso con Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Crea un token dalle tue <PushbulletSettingsLink>Impostazioni account</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.toastDiscordTestFailed": "Invio della notifica di prova Discord non riuscito.",
|
||||
"components.Settings.Notifications.webhookUrlTip": "Crea un <DiscordWebhookLink>integrazione webhook</DiscordWebhookLink> nel server",
|
||||
@@ -772,14 +759,13 @@
|
||||
"components.UserList.localLoginDisabled": "L'impostazione <strong>Abilita Accesso Locale</strong> è attualmente disabilitata.",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.languageDefault": "Predefinito ({language})",
|
||||
"components.Settings.webAppUrlTip": "Indirizza opzionalmente gli utenti alla web app sul tuo server invece che alla web app \"ospitata\"",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "La tua <LunaSeaLink>notifica webhook URL</LunaSeaLink> basata su utente o dispositivo",
|
||||
"components.Settings.webAppUrl": "URL <WebAppLink>Web App</WebAppLink>",
|
||||
"components.Settings.SettingsUsers.newPlexLoginTip": "Permetti agli utenti di Plex di accedere senza essere prima importati",
|
||||
"components.Settings.SettingsUsers.newPlexLogin": "Abilita nuovo accesso con Plex",
|
||||
"components.Settings.SettingsUsers.newPlexLoginTip": "Permetti agli utenti di {mediaServerName} di accedere senza essere prima importati",
|
||||
"components.Settings.SettingsUsers.newPlexLogin": "Abilita nuovo accesso con {mediaServerName}",
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "Per ricevere notifiche push web, Jellyseerr deve essere servito tramite HTTPS.",
|
||||
"components.RequestList.RequestItem.requesteddate": "Richiesto",
|
||||
"components.RequestCard.failedretry": "Qualcosa è andato storto nel riprovare la richiesta.",
|
||||
"components.Settings.SettingsUsers.localLoginTip": "Consentire agli utenti di accedere utilizzando l'indirizzo di posta elettronica e la password, anziché Plex OAuth",
|
||||
"components.Settings.SettingsUsers.localLoginTip": "Consenti agli utenti di accedere utilizzando la mail e la password",
|
||||
"components.Settings.SettingsUsers.defaultPermissionsTip": "Permessi assegnati ai nuovi utenti",
|
||||
"components.QuotaSelector.movieRequests": "{quotaLimit} <quotaUnits>{movies} per {quotaDays} {days}</quotaUnits>",
|
||||
"components.QuotaSelector.tvRequests": "{quotaLimit} <quotaUnits>{seasons} per {quotaDays} {days}</quotaUnits>",
|
||||
@@ -789,7 +775,6 @@
|
||||
"components.Settings.Notifications.validationTypes": "È necessario selezionare almeno un tipo di notifica",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "È necessario selezionare almeno un tipo di notifica",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "È necessario selezionare almeno un tipo di notifica",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "È necessario selezionare almeno un tipo di notifica",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationTypes": "È necessario selezionare almeno un tipo di notifica",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "È necessario selezionare almeno un tipo di notifica",
|
||||
"components.Settings.SettingsAbout.betawarning": "Questo software è in BETA. Alcuni componenti potrebbero non funzionare correttamente. Aiutaci segnalando i problemi su GitHub!",
|
||||
@@ -877,7 +862,7 @@
|
||||
"components.ManageSlideOver.manageModalTitle": "Gestisci {mediaType}",
|
||||
"components.ManageSlideOver.mark4kavailable": "Segna come disponibile in 4K",
|
||||
"components.IssueDetails.openinarr": "Apri in {arr}",
|
||||
"components.IssueDetails.playonplex": "Guarda su Plex",
|
||||
"components.IssueDetails.playonplex": "Guarda su {mediaServerName}",
|
||||
"components.ManageSlideOver.openarr": "Apri in {arr}",
|
||||
"components.ManageSlideOver.openarr4k": "Apri in 4K {arr}",
|
||||
"components.IssueDetails.play4konplex": "Guarda in 4K su Plex",
|
||||
@@ -914,7 +899,7 @@
|
||||
"components.NotificationTypeSelector.issuecreatedDescription": "Invia una notifica quando un problema viene segnalato.",
|
||||
"components.NotificationTypeSelector.issueresolved": "Problema risolto",
|
||||
"components.NotificationTypeSelector.issueresolvedDescription": "Invia una notifica quando un problema viene risolto.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushbulletAccessToken": "Access Token",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushbulletAccessToken": "Token di accesso",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoverApplicationToken": "API Token applicazione",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushoverUserKey": "Chiave utente o di un gruppo",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushbulletAccessTokenTip": "Crea un token dalle tue <PushbulletSettingsLink>Impostazioni Account</PushbulletSettingsLink>",
|
||||
@@ -991,10 +976,10 @@
|
||||
"components.Settings.SettingsAbout.appDataPath": "Cartella applicazione",
|
||||
"components.RequestBlock.languageprofile": "Lingua Profilo",
|
||||
"components.MovieDetails.digitalrelease": "Uscita versione digitale",
|
||||
"components.Discover.DiscoverWatchlist.discoverwatchlist": "La tua lista da guardare Plex",
|
||||
"components.Discover.DiscoverWatchlist.discoverwatchlist": "La tua lista",
|
||||
"components.Discover.plexwatchlist": "La tua lista da guardare Plex",
|
||||
"components.PermissionEdit.autorequest": "Richiesta automatica",
|
||||
"components.Discover.DiscoverWatchlist.watchlist": "Lista da guardare Plex",
|
||||
"components.Discover.DiscoverWatchlist.watchlist": "Plex Watchlist",
|
||||
"components.MovieDetails.managemovie": "Gestisci Film",
|
||||
"components.MovieDetails.physicalrelease": "Uscita versione fisica",
|
||||
"components.MovieDetails.theatricalrelease": "Uscita nelle sale",
|
||||
@@ -1091,7 +1076,7 @@
|
||||
"components.Settings.SettingsMain.toastApiKeySuccess": "Nuova chiave API generata con successo!",
|
||||
"components.Settings.SettingsMain.toastSettingsFailure": "Qualcosa è andato storto durante il salvataggio delle impostazioni.",
|
||||
"components.StatusBadge.managemedia": "Gestisci {mediaType}",
|
||||
"components.StatusBadge.playonplex": "Riproduci su Plex",
|
||||
"components.StatusBadge.playonplex": "Riproduci su {mediaServerName}",
|
||||
"components.StatusBadge.seasonepisodenumber": "S{seasonNumber}E{episodeNumber}",
|
||||
"components.StatusChecker.appUpdated": "{applicationTitle} aggiornato",
|
||||
"components.TvDetails.Season.somethingwentwrong": "Qualcosa è andato storto durante il recupero dei dati della stagione.",
|
||||
@@ -1111,7 +1096,7 @@
|
||||
"components.Settings.SettingsMain.validationApplicationTitle": "Devi fornire un titolo dell'applicazione",
|
||||
"components.Settings.SettingsMain.validationApplicationUrl": "Devi fornire un URL valido",
|
||||
"components.Settings.restartrequiredTooltip": "Jellyseerr deve essere riavviato per rendere effettive le modifiche",
|
||||
"components.TitleCard.tvdbid": "TheTVDB ID",
|
||||
"components.TitleCard.tvdbid": "ID TheTVDB",
|
||||
"components.UserProfile.emptywatchlist": "I media aggiunti alla tua <PlexWatchlistSupportLink>Plex Watchlist</PlexWatchlistSupportLink> appariranno qui.",
|
||||
"components.TvDetails.status4k": "4K {status}",
|
||||
"i18n.restartRequired": "Riavvio necessario",
|
||||
@@ -1149,7 +1134,6 @@
|
||||
"components.Login.urlBase": "Base URL",
|
||||
"components.Login.username": "Nome utente",
|
||||
"components.Login.validationEmailRequired": "Devi fornire un'email",
|
||||
"components.Login.validationHostnameRequired": "Devi fornire un hostname o un indirizzo IP valido",
|
||||
"components.Login.validationPortRequired": "Devi fornire un numero di porta valido",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "L'URL di base non deve terminare con una barra finale",
|
||||
"components.Login.validationUrlTrailingSlash": "L'URL non deve terminare con una barra finale",
|
||||
@@ -1166,7 +1150,7 @@
|
||||
"components.MovieDetails.rtaudiencescore": "Punteggio del pubblico di Rotten Tomatoes",
|
||||
"components.MovieDetails.rtcriticsscore": "Tomatometro di Rotten Tomatoes",
|
||||
"components.MovieDetails.tmdbuserscore": "Punteggio Utente TMDB",
|
||||
"components.MovieDetails.watchlistError": "Qualcosa è andato storto, riprova.",
|
||||
"components.MovieDetails.watchlistError": "Qualcosa è andato storto. Riprova.",
|
||||
"components.MovieDetails.watchlistSuccess": "<strong>{title}</strong> aggiunto alla lista di visione con successo!",
|
||||
"components.PermissionEdit.autorequestMovies": "Richiesta automatica dei film",
|
||||
"components.PermissionEdit.autorequestSeries": "Richiesta automatica di serie",
|
||||
@@ -1190,7 +1174,7 @@
|
||||
"components.RequestList.RequestItem.unknowntitle": "Titolo sconosciuto",
|
||||
"components.RequestModal.requestcollection4ktitle": "Richiedi Collezione in 4K",
|
||||
"components.RequestModal.requestcollectiontitle": "Richiedi Collezione",
|
||||
"components.Settings.Notifications.NotificationsPushover.deviceDefault": "Predefinito dispositivo",
|
||||
"components.Settings.Notifications.NotificationsPushover.deviceDefault": "Predefinito del dispositivo",
|
||||
"components.Settings.SettingsAbout.supportjellyseerr": "Supporta Jellyseerr",
|
||||
"components.Settings.SettingsJobsCache.availability-sync": "Sincronizzazione della disponibilità dei media",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleCurrent": "Frequenza Attuale",
|
||||
@@ -1229,7 +1213,7 @@
|
||||
"components.RequestList.RequestItem.tmdbid": "ID TMDB",
|
||||
"components.Settings.Notifications.NotificationsPushover.sound": "Suono di notifica",
|
||||
"components.Settings.SettingsMain.cacheImagesTip": "Cache le immagini provenienti da fonti esterne (richiede una quantità significativa di spazio su disco)",
|
||||
"components.Settings.SettingsMain.generalsettingsDescription": "Configure global and default settings for Jellyseerr.",
|
||||
"components.Settings.SettingsMain.generalsettingsDescription": "Configura le impostazioni globali e predefinite per Jellyseerr.",
|
||||
"components.RequestModal.SearchByNameModal.nomatches": "Non siamo riusciti a trovare una corrispondenza per questa serie.",
|
||||
"components.Settings.RadarrModal.tagRequests": "Tagga richieste",
|
||||
"components.Settings.SettingsJobsCache.imagecacheDescription": "Quando abilitato nelle impostazioni, Jellyseerr farà da proxy e memorizzerà nella cache le immagini provenienti da fonti esterne preconfigurate. Le immagini memorizzate nella cache vengono salvate nella tua cartella di configurazione. Puoi trovare i file in `<code>{appDataPath}/cache/images</code>`.",
|
||||
@@ -1250,5 +1234,239 @@
|
||||
"components.Layout.UserWarnings.emailInvalid": "L'indirizzo email non è valido.",
|
||||
"components.Layout.UserWarnings.emailRequired": "È necessario un indirizzo email.",
|
||||
"components.Layout.UserWarnings.passwordRequired": "È richiesta una password.",
|
||||
"components.Settings.SettingsMain.partialRequestsEnabled": "Consenti richieste parziali di serie"
|
||||
"components.Settings.SettingsMain.partialRequestsEnabled": "Consenti richieste parziali di serie",
|
||||
"components.Login.back": "Torna Indietro",
|
||||
"components.Settings.Notifications.webhookRoleId": "ID ruolo di notifica",
|
||||
"components.Blacklist.blacklistSettingsDescription": "Gestisci i media esclusi.",
|
||||
"components.PermissionEdit.blacklistedItemsDescription": "Concedi l'autorizzazione per escludere i media.",
|
||||
"components.Settings.Notifications.messageThreadId": "Thread/ID Argomento",
|
||||
"components.Setup.configplex": "Configura Plex",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.plexErrorExists": "Questo account è già collegato ad un utente Plex",
|
||||
"components.Settings.Notifications.messageThreadIdTip": "Se nella tua chat di gruppo sono abilitati gli argomenti, puoi specificare qui l'ID di un thread/argomento",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.plexwatchlistsyncmovies": "Richiedi automaticamente i film",
|
||||
"components.Selector.canceled": "Cancellato",
|
||||
"components.Selector.inProduction": "In Produzione",
|
||||
"components.Discover.FilterSlideover.status": "Stato",
|
||||
"components.Layout.Sidebar.blacklist": "Esclusioni",
|
||||
"components.RequestList.RequestItem.removearr": "Rimuovi da {arr}",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.plexErrorUnauthorized": "Impossible connettersi a Plex usando le tue credenziali",
|
||||
"component.BlacklistBlock.blacklistdate": "Data esclusa",
|
||||
"components.DiscoverTvUpcoming.upcomingtv": "Serie in arrivo",
|
||||
"components.PermissionEdit.viewblacklistedItems": "Visualizza media esclusi.",
|
||||
"components.Settings.Notifications.webhookRoleIdTip": "L'ID del ruolo da menzionare nel messaggio webhook. Lasciare vuoto per disabilitare le menzioni",
|
||||
"components.Login.validationservertyperequired": "Seleziona un tipo di server",
|
||||
"components.Settings.Notifications.validationMessageThreadId": "L'ID del thread/argomento deve essere un numero intero positivo",
|
||||
"components.PermissionEdit.blacklistedItems": "Media esclusi.",
|
||||
"components.RequestList.sortDirection": "Cambia direzione di ordinamento",
|
||||
"components.Login.loginwithapp": "Login con {appName}",
|
||||
"components.Login.noadminerror": "Non è stato trovato nessun amministratore nel server.",
|
||||
"components.Login.orsigninwith": "O fai l'accesso con",
|
||||
"components.Login.servertype": "Tipo Server",
|
||||
"components.PermissionEdit.manageblacklist": "Gestisci le esclusioni",
|
||||
"components.PermissionEdit.manageblacklistDescription": "Concedi l'autorizzazione a gestire i media esclusi.",
|
||||
"components.PermissionEdit.viewblacklistedItemsDescription": "Concedi l'autorizzazione a visualizzare i media esclusi.",
|
||||
"components.Selector.ended": "Terminato",
|
||||
"components.Selector.pilot": "Pilota",
|
||||
"components.Selector.planned": "Pianificato",
|
||||
"components.Selector.returningSeries": "Serie Ricorrente",
|
||||
"components.Selector.searchStatus": "Seleziona stato...",
|
||||
"components.Selector.searchUsers": "Seleziona utenti…",
|
||||
"components.Settings.Notifications.validationWebhookRoleId": "È necessario fornire un ID ruolo Discord valido",
|
||||
"components.Settings.OverrideRuleModal.conditions": "Condizioni",
|
||||
"components.Setup.signinWithPlex": "Inserisci le tue credenziali di Plex",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.plexwatchlistsyncseries": "Richiedi automaticamente le serie",
|
||||
"component.BlacklistBlock.blacklistedby": "Escluso da",
|
||||
"component.BlacklistModal.blacklisting": "Aggiungendo alle esclusioni",
|
||||
"components.Blacklist.blacklistNotFoundError": "<strong>{title}</strong> non è escluso.",
|
||||
"components.Blacklist.blacklistdate": "data",
|
||||
"components.Blacklist.blacklistedby": "{date} di {user}",
|
||||
"components.Blacklist.blacklistsettings": "Impostazioni delle esclusioni",
|
||||
"components.Blacklist.mediaName": "Nome",
|
||||
"components.Blacklist.mediaTmdbId": "ID tmdb",
|
||||
"components.Blacklist.mediaType": "Tipo",
|
||||
"components.Settings.OverrideRuleModal.selectRootFolder": "Seleziona cartella principale",
|
||||
"components.Settings.OverrideRuleModal.conditionsDescription": "Specifica le condizioni prima di applicare le modifiche ai parametri. Ogni campo deve essere convalidato affinché le regole possano essere applicate (operazione AND). Un campo è considerato verificato se una qualsiasi delle sue proprietà corrisponde (operazione OR).",
|
||||
"components.Settings.OverrideRuleModal.selectQualityProfile": "Seleziona profilo di qualità",
|
||||
"components.Settings.OverrideRuleModal.ruleUpdated": "Regola di sostituzione aggiornata con successo!",
|
||||
"components.Settings.OverrideRuleModal.settingsDescription": "Specifica quali impostazioni verranno modificate quando saranno soddisfatte le condizioni sopra indicate.",
|
||||
"components.Settings.OverrideRuleModal.create": "Crea regola",
|
||||
"components.Settings.OverrideRuleModal.createrule": "Nuova regola di sostituzione",
|
||||
"components.Settings.OverrideRuleModal.editrule": "Modifica regola di sostituzione",
|
||||
"components.Settings.OverrideRuleModal.genres": "Generi",
|
||||
"components.Settings.OverrideRuleModal.keywords": "Parole Chiave",
|
||||
"components.Settings.OverrideRuleModal.languages": "Lingue",
|
||||
"components.Settings.OverrideRuleModal.notagoptions": "Nessun tag.",
|
||||
"components.Settings.OverrideRuleModal.qualityprofile": "Profilo di qualità",
|
||||
"components.Settings.OverrideRuleModal.rootfolder": "Cartella Principale",
|
||||
"components.Settings.OverrideRuleModal.ruleCreated": "Regola di sostituzione creata con successo!",
|
||||
"components.Settings.OverrideRuleModal.selectService": "Seleziona servizio",
|
||||
"components.Settings.OverrideRuleModal.selecttags": "Seleziona i tag",
|
||||
"components.Settings.OverrideRuleModal.service": "Servizio",
|
||||
"components.Settings.OverrideRuleModal.serviceDescription": "Applica questa regola al servizio selezionato.",
|
||||
"components.Settings.OverrideRuleModal.settings": "Impostazioni",
|
||||
"components.Settings.OverrideRuleModal.tags": "Tags",
|
||||
"components.Settings.OverrideRuleModal.users": "Utenti",
|
||||
"components.Settings.OverrideRuleTile.conditions": "Condizioni",
|
||||
"components.Settings.OverrideRuleTile.genre": "Genere",
|
||||
"components.Settings.OverrideRuleTile.keywords": "Parole chiave",
|
||||
"components.Settings.OverrideRuleTile.language": "Lingua",
|
||||
"components.Settings.OverrideRuleTile.qualityprofile": "Profilo di qualità",
|
||||
"components.Settings.OverrideRuleTile.rootfolder": "Cartella Principale",
|
||||
"components.Settings.OverrideRuleTile.settings": "Impostazioni",
|
||||
"components.Settings.OverrideRuleTile.tags": "Tags",
|
||||
"components.Settings.OverrideRuleTile.users": "Utenti",
|
||||
"components.Settings.SettingsJobsCache.plex-refresh-token": "Token di aggiornamento Plex",
|
||||
"components.Settings.SettingsMain.discoverRegionTip": "Filtra i contenuti in base alla disponibilità della regione",
|
||||
"components.Settings.SettingsMain.discoverRegion": "Ricerca per Regione",
|
||||
"components.Settings.SettingsMain.streamingRegionTip": "Mostra i siti di streaming in base alla disponibilità della regione",
|
||||
"components.Settings.SettingsMain.enableSpecialEpisodes": "Consenti richieste di episodi speciali",
|
||||
"components.Settings.SettingsJobsCache.usersavatars": "Avatar degli utenti",
|
||||
"components.Settings.SettingsMain.streamingRegion": "Regione di streaming",
|
||||
"components.Settings.SettingsNetwork.toastSettingsFailure": "Si è verificato un errore durante il salvataggio delle impostazioni.",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.discoverRegion": "Ricerca per Regione",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionHoverTip": "Non abilitare questa impostazione se non sei sicuro di ciò che stai facendo!",
|
||||
"components.TitleCard.watchlistSuccess": "<strong>{title}</strong> aggiunto alla lista con successo!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.sound": "Suono di notifica",
|
||||
"i18n.blacklistDuplicateError": "<strong>{title}</strong> è già stato inserito nelle esclusioni.",
|
||||
"components.Settings.jellyfinSettingsDescription": "Se vuoi, puoi configurare gli endpoint interni ed esterni per il tuo server {mediaServerName}. Di solito, l'URL esterno è diverso da quello interno. Puoi anche impostare un URL personalizzato per reimpostare la password di accesso a {mediaServerName}, se vuoi reindirizzare a una pagina diversa per reimpostare la password. Puoi anche cambiare la chiave API Jellyfin, che è stata generata automaticamente in precedenza.",
|
||||
"components.Settings.jellyfinsettings": "Impostazioni {mediaServerName}",
|
||||
"components.Settings.scanbackground": "La scansione verrà eseguita in background. Nel frattempo è possibile continuare con la procedura di configurazione.",
|
||||
"components.UserProfile.UserSettings.menuLinkedAccounts": "Account Collegati",
|
||||
"components.Settings.syncing": "Sincronizzando",
|
||||
"components.StatusChecker.restartRequiredDescription": "Riavvia il server per applicare le impostazioni aggiornate.",
|
||||
"components.TvDetails.rtaudiencescore": "Punteggio del pubblico su Rotten Tomatoes",
|
||||
"components.TvDetails.watchlistDeleted": "<strong>{title}</strong> rimosso dalla lista con successo!",
|
||||
"components.Settings.SettingsNetwork.networkDisclaimer": "È necessario utilizzare i parametri di rete del proprio container/sistema anziché queste impostazioni. Per ulteriori informazioni, consultare i {docs}.",
|
||||
"components.UserList.importedfromJellyfin": "<strong>{userCount}</strong> {mediaServerName} {userCount, plural, one {utente} other {utenti}} importati con successo!",
|
||||
"components.Settings.SonarrModal.tagRequestsInfo": "Aggiungi automaticamente un tag aggiuntivo con l'ID utente e il nome visualizzato del richiedente",
|
||||
"components.Settings.deleteServer": "Elimina Server {serverType}",
|
||||
"components.Settings.overrideRulesDescription": "Le regole di sostituzione consentono di specificare le proprietà che verranno sostituite se una richiesta corrisponde alla regola.",
|
||||
"components.UserList.newJellyfinsigninenabled": "L'impostazione <strong>Abilita nuovo accesso {mediaServerName}</strong> è attualmente abilitata. Gli utenti {mediaServerName} con accesso alla libreria non devono essere importati per poter effettuare l'accesso.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramMessageThreadId": "Thread/ID Argomento",
|
||||
"components.Settings.SettingsUsers.atLeastOneAuth": "È necessario selezionare almeno un metodo di autenticazione.",
|
||||
"components.Settings.SonarrModal.tagRequests": "Aggiungi tag alle richieste",
|
||||
"components.Settings.invalidurlerror": "Impossibile connettersi al server {mediaServerName}.",
|
||||
"components.Settings.jellyfinsettingsDescription": "Configura le impostazioni per il tuo server {mediaServerName}. {mediaServerName} esegue la scansione delle tue librerie {mediaServerName} per vedere quali contenuti sono disponibili.",
|
||||
"components.Setup.librarieserror": "Convalida non riuscita. Attivare nuovamente le librerie per continuare.",
|
||||
"components.TvDetails.episodeCount": "{episodeCount, plural, one {# Episodio} other {# Episodi}}",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorUnauthorized": "Impossibile connettersi a {mediaServerName} utilizzando le credenziali fornite",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.deleteFailed": "Impossibile eliminare l'account collegato.",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.noPermissionDescription": "Non hai il permesso di modificare gli account collegati a questo utente.",
|
||||
"i18n.removeFromBlacklistSuccess": "<strong>{title}</strong> è stato rimosso con successo dalle esclusioni.",
|
||||
"components.Settings.overrideRules": "Regole di sostituzione",
|
||||
"components.Settings.save": "Salva Modifiche",
|
||||
"components.Settings.saving": "Salvando…",
|
||||
"components.Setup.signinWithEmby": "Inserisci le tue credenziali Emby",
|
||||
"components.TitleCard.addToWatchList": "Aggiungi alla lista",
|
||||
"components.TvDetails.removefromwatchlist": "Rimuovi dalla Lista",
|
||||
"components.Setup.signin": "Accedi",
|
||||
"components.Settings.jellyfinSyncFailedNoLibrariesFound": "Nessuna libreria trovata",
|
||||
"components.Settings.SettingsNetwork.csrfProtection": "Abilita Protezione CSRF",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionTip": "Imposta l'accesso API esterno in sola lettura (richiede HTTPS)",
|
||||
"components.Settings.SettingsNetwork.docs": "documentazione",
|
||||
"components.Settings.SettingsNetwork.forceIpv4First": "Forza prima la risoluzione IPv4",
|
||||
"components.Settings.SettingsNetwork.forceIpv4FirstTip": "Forza Jellyseerr a risolvere prima gli indirizzi IPv4 invece di quelli IPv6",
|
||||
"components.Settings.SettingsNetwork.network": "Rete",
|
||||
"components.Settings.SettingsNetwork.networksettings": "Impostazioni di Rete",
|
||||
"components.Settings.SettingsNetwork.networksettingsDescription": "Configura le impostazioni di rete per la tua istanza Jellyseerr.",
|
||||
"components.Settings.SettingsNetwork.proxyBypassFilter": "Indirizzi Proxy Ignorati",
|
||||
"components.Settings.SettingsNetwork.proxyBypassFilterTip": "Utilizza “,” come separatore e “*.” come carattere jolly per i sottodomini",
|
||||
"components.Settings.SettingsNetwork.proxyBypassLocalAddresses": "Bypassare il Proxy per gli Indirizzi Locali",
|
||||
"components.Settings.SettingsNetwork.proxyEnabled": "Proxy HTTP(S)",
|
||||
"components.Settings.SettingsNetwork.proxyHostname": "Nome Host Proxy",
|
||||
"components.Settings.SettingsNetwork.proxyPassword": "Password del Proxy",
|
||||
"components.Settings.SettingsNetwork.proxyPort": "Porta del Proxy",
|
||||
"components.Settings.SettingsNetwork.proxySsl": "Usa SSL per il Proxy",
|
||||
"components.Settings.SettingsNetwork.proxyUser": "Username del Proxy",
|
||||
"components.Settings.SettingsNetwork.toastSettingsSuccess": "Impostazioni salvate con successo!",
|
||||
"components.Settings.SettingsNetwork.trustProxy": "Abilita Supporto Proxy",
|
||||
"components.Settings.SettingsNetwork.trustProxyTip": "Consenti a Jellyseerr di registrare correttamente gli indirizzi IP dei client dietro un proxy",
|
||||
"components.Settings.SettingsNetwork.validationProxyPort": "È necessario fornire una porta valida",
|
||||
"components.Settings.SettingsUsers.loginMethods": "Metodi di Login",
|
||||
"components.Settings.SettingsUsers.loginMethodsTip": "Configura i metodi di accesso per gli utenti.",
|
||||
"components.Settings.SettingsUsers.mediaServerLogin": "Abilita accesso tramite {mediaServerName}",
|
||||
"components.Settings.SettingsUsers.mediaServerLoginTip": "Consenti agli utenti di accedere utilizzando il proprio account {mediaServerName}",
|
||||
"components.Settings.addrule": "Nuova regola di sostituzione",
|
||||
"components.Settings.advancedTooltip": "Una configurazione errata di questa impostazione può causare dei malfunzionamenti",
|
||||
"components.Settings.apiKey": "Chiave API",
|
||||
"components.Settings.experimentalTooltip": "L'attivazione di questa impostazione può causare un comportamento imprevisto dell'applicazione",
|
||||
"components.Settings.jellyfinForgotPasswordUrl": "URL Password dimenticata",
|
||||
"components.Settings.jellyfinSettings": "Impostazioni {mediaServerName}",
|
||||
"components.Settings.jellyfinSettingsFailure": "Si è verificato un errore durante il salvataggio delle impostazioni di {mediaServerName}.",
|
||||
"components.Settings.jellyfinSettingsSuccess": "Impostazioni {mediaServerName} salvate con successo!",
|
||||
"components.Settings.jellyfinSyncFailedAutomaticGroupedFolders": "Autenticazione personalizzata con raggruppamento automatico delle librerie non supportata",
|
||||
"components.Settings.jellyfinSyncFailedGenericError": "Si è verificato un errore durante la sincronizzazione delle librerie",
|
||||
"components.Settings.jellyfinlibraries": "Librerie di {mediaServerName}",
|
||||
"components.Settings.jellyfinlibrariesDescription": "Le librerie {mediaServerName} cercano i titoli. Se non sono elencate librerie, fare clic sul pulsante sottostante.",
|
||||
"components.Settings.manualscanDescriptionJellyfin": "Normalmente, questa operazione viene eseguita una volta ogni 24 ore. Jellyseerr controllerà in modo più aggressivo gli elementi aggiunti di recente al tuo server {mediaServerName}. Se è la prima volta che configuri Jellyseerr, ti consigliamo di eseguire una scansione manuale completa della libreria!",
|
||||
"components.Settings.manualscanJellyfin": "Scansione Libreria Manuale",
|
||||
"components.Settings.menuJellyfinSettings": "{mediaServerName}",
|
||||
"components.Settings.menuNetwork": "Rete",
|
||||
"components.Settings.syncJellyfin": "Sincronizza Librerie",
|
||||
"components.Settings.timeout": "Tempo scaduto",
|
||||
"components.Settings.tip": "Suggerimento",
|
||||
"components.Setup.back": "Torna indietro",
|
||||
"components.Setup.configemby": "Configura Emby",
|
||||
"components.Setup.configjellyfin": "Configura Jellyfin",
|
||||
"components.Setup.configuremediaserver": "Configura Media Server",
|
||||
"components.Setup.servertype": "Scegli il tipo di server",
|
||||
"components.Setup.signinWithJellyfin": "Inserisci le tue credenziali Jellyfin",
|
||||
"components.Setup.subtitle": "Inizia scegliendo il tuo media server",
|
||||
"components.StatusBadge.seasonnumber": "S{seasonNumber}",
|
||||
"components.TitleCard.cleardata": "Cancella dati",
|
||||
"components.TitleCard.watchlistCancel": "Lista per <strong>{title}</strong> eliminata.",
|
||||
"components.TitleCard.watchlistError": "Qualcosa è andato storto. Riprova.",
|
||||
"components.TvDetails.Season.noepisodes": "Elenco episodi non disponibile.",
|
||||
"components.TvDetails.addtowatchlist": "Aggiungi alla Lista",
|
||||
"components.TvDetails.play": "Riproduci su {mediaServerName}",
|
||||
"components.TvDetails.play4k": "Riproduci in 4K su {mediaServerName}",
|
||||
"components.TitleCard.watchlistDeleted": "<strong>{title}</strong> rimosso dalla lista con successo!",
|
||||
"components.TvDetails.rtcriticsscore": "Tomatometer di Rotten Tomatoes",
|
||||
"components.TvDetails.tmdbuserscore": "Punteggio utente TMDB",
|
||||
"components.TvDetails.watchlistSuccess": "<strong>{title}</strong> aggiunto alla lista con successo!",
|
||||
"components.UserList.importfromJellyfin": "Importa utenti da {mediaServerName}",
|
||||
"components.UserList.importfromJellyfinerror": "Si è verificato un errore durante l'importazione degli utenti da {mediaServerName}.",
|
||||
"components.UserList.mediaServerUser": "Utente {mediaServerName}",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.password": "Password",
|
||||
"components.TvDetails.watchlistError": "Qualcosa è andato storto. Riprova.",
|
||||
"components.UserList.importfrommediaserver": "Importa utenti da {mediaServerName}",
|
||||
"components.UserList.noJellyfinuserstoimport": "Non ci sono utenti {mediaServerName} da importare.",
|
||||
"components.UserList.username": "Nome Utente",
|
||||
"components.UserList.validationUsername": "È necessario fornire un nome utente",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.description": "Inserisci le credenziali {mediaServerName} per collegare il tuo account a {applicationName}.",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorExists": "Questo account è già collegato a un utente {applicationName}",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorUnknown": "Si è verificato un errore sconosciuto",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.passwordRequired": "È necessario fornire una password",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.save": "Collega",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.saving": "Aggiungendo…",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.title": "Collega Account {mediaServerName}",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.username": "Nome Utente",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.usernameRequired": "È necessario fornire un nome utente",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.email": "Email",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.discoverRegionTip": "Filtra i contenuti in base alla disponibilità della regione",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.mediaServerUser": "Utente {mediaServerName}",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.save": "Salva Modifiche",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.saving": "Salvando…",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.streamingRegion": "Regione di streaming",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.streamingRegionTip": "Mostra i siti di streaming in base alla disponibilità della regione",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmail": "Questo indirizzo e-mail è già stato utilizzato!",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmailEmpty": "Un altro utente ha già questo nome utente. Devi impostare un indirizzo e-mail",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationemailformat": "È richiesta un'email valida",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationemailrequired": "Email richiesta",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.errorUnknown": "Si è verificato un errore sconosciuto",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.linkedAccounts": "Account Collegati",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.linkedAccountsHint": "Questi account esterni sono collegati al tuo account {applicationName}.",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.noLinkedAccounts": "Non hai alcun account esterno collegato al tuo account.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.deviceDefault": "Predefinito del dispositivo",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramMessageThreadIdTip": "Se nella tua chat di gruppo sono abilitati gli argomenti, puoi specificare qui l'ID di un thread/argomento",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramMessageThreadId": "L'ID del thread/argomento deve essere un numero intero positivo",
|
||||
"components.UserProfile.localWatchlist": "Lista di {username}",
|
||||
"i18n.addToBlacklist": "Aggiungi alle esclusioni",
|
||||
"i18n.blacklist": "Esclusioni",
|
||||
"i18n.blacklistError": "Qualcosa è andato storto. Riprova.",
|
||||
"i18n.blacklistSuccess": "<strong>{title}</strong> è stato inserito con successo nelle esclusioni.",
|
||||
"i18n.blacklisted": "Aggiunto alle esclusioni",
|
||||
"i18n.removefromBlacklist": "Rimuovi dalle esclusioni",
|
||||
"i18n.specials": "Speciali",
|
||||
"components.Settings.SettingsMain.validationApplicationUrlTrailingSlash": "L'URL non deve terminare con una barra \"/\" finale"
|
||||
}
|
||||
|
||||
@@ -99,7 +99,6 @@
|
||||
"components.Settings.address": "アドレス",
|
||||
"components.Settings.addsonarr": "Sonarr サーバーを追加",
|
||||
"components.Settings.cancelscan": "スキャンをキャンセル",
|
||||
"components.Settings.copied": "API キーをクリップボードにコピーされた。",
|
||||
"components.Settings.currentlibrary": "現在のライブラリー:{name}",
|
||||
"components.Settings.default": "デフォルト",
|
||||
"components.Settings.default4k": "デフォルト 4K",
|
||||
@@ -302,7 +301,6 @@
|
||||
"components.Settings.Notifications.toastTelegramTestSuccess": "Telegram のテスト通知が送信されました。",
|
||||
"components.Settings.Notifications.toastEmailTestSuccess": "メールテスト通知が送信されました。",
|
||||
"components.Settings.Notifications.toastDiscordTestSuccess": "Discord のテスト通知が送信されました。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea のテスト通知が送信されました。",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Pushbullet のテスト通知が送信されました。",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSuccess": "Pushover のテスト通知が送信されました。",
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSuccess": "Slack のテスト通知が送信されました。",
|
||||
@@ -310,14 +308,12 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.emailsettingsfailed": "メール通知設定の保存に失敗しました。",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.discordsettingsfailed": "Discord の通知設定の保存に失敗しました。",
|
||||
"components.Settings.Notifications.telegramsettingsfailed": "Telegram の通知設定の保存に失敗しました。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "LunaSea の通知設定の保存に失敗しました。",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsFailed": "Pushbullet の通知設定の保存に失敗しました。",
|
||||
"components.Settings.Notifications.NotificationsPushover.pushoversettingsfailed": "Pushover の通知設定の保存に失敗しました。",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramsettingssaved": "Telegram の通知設定が保存されました。",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.emailsettingssaved": "メール通知設定が保存されました。",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.discordsettingssaved": "Discord の通知設定が保存されました。",
|
||||
"components.Settings.Notifications.telegramsettingssaved": "Telegram の通知設定が保存されました。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea の通知設定が保存されました。",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsSaved": "Pushbullet の通知設定が保存されました。",
|
||||
"components.Settings.Notifications.NotificationsPushover.pushoversettingssaved": "Pushover の通知設定が保存されました。",
|
||||
"components.ResetPassword.validationpasswordrequired": "パスワードを入力してください",
|
||||
@@ -562,7 +558,6 @@
|
||||
"components.NotificationTypeSelector.issuecomment": "チケットのコメント",
|
||||
"components.NotificationTypeSelector.userissueresolvedDescription": "自分が報告したチケットが解決された際に通知を受ける",
|
||||
"components.PermissionEdit.viewissuesDescription": "他ユーザーが作成されたチケットを確認できる",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "エージェントを有効にする",
|
||||
"components.TvDetails.seasons": "{seasonCount, plural, one {#シーズン} other {#シーズン}}",
|
||||
"components.Search.search": "検索",
|
||||
"components.ManageSlideOver.opentautulli": "Tautulliで開く",
|
||||
@@ -578,7 +573,6 @@
|
||||
"components.NotificationTypeSelector.userissuereopenedDescription": "自ら報告したチケットが再度開いた際に通知を受ける",
|
||||
"components.PermissionEdit.manageissuesDescription": "メディアのチケットを管理する権限を付与する",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL の末尾にスラッシュ( / )を入力してないでください",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "プロフィール名",
|
||||
"components.IssueList.sortModified": "最終更新",
|
||||
"components.IssueModal.CreateIssueModal.allepisodes": "すべてのエピソード",
|
||||
"components.IssueModal.CreateIssueModal.problemepisode": "該当エピソード",
|
||||
@@ -637,13 +631,6 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSuccess": "Gotify のテスト通知を送信しました!",
|
||||
"components.Settings.Notifications.NotificationsGotify.token": "アプリケーショントークン",
|
||||
"components.Settings.Notifications.NotificationsGotify.url": "サーバーの URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "通知の種類は一つ以上を選択してください",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "ユーザーまたはデバイスベースの <LunaSeaLink>notification webhook URL</LunaSeaLink> を指定します。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "有効な URL を入力してください",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "<code>default</code> プロファイルを使用しない場合のみ必要です。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "LunaSea テスト通知送信中…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "ウェブフック URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea のテスト通知の送信に失敗しました。",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationWebhookUrl": "有効な URL を入力してください",
|
||||
"components.Settings.RadarrModal.validationApplicationUrl": "有効な URL を入力してください",
|
||||
"components.Settings.Notifications.validationUrl": "有効な URL を入力してください",
|
||||
|
||||
@@ -409,7 +409,6 @@
|
||||
"components.Settings.SonarrModal.validationRootFolderRequired": "루트 폴더를 선택해야 합니다",
|
||||
"components.Settings.advancedTooltip": "이 설정을 잘못 구성하면 기능이 제대로 작동하지 않을 수 있습니다",
|
||||
"components.Settings.cancelscan": "스캔 취소",
|
||||
"components.Settings.copied": "클립보드에 API 키를 복사했습니다.",
|
||||
"components.Settings.currentlibrary": "현재 라이브러리: {name}",
|
||||
"components.Settings.default4k": "기본 4K",
|
||||
"components.Settings.deleteServer": "{serverType} 서버 삭제",
|
||||
@@ -759,14 +758,7 @@
|
||||
"components.Selector.starttyping": "검색하시려면 입력해주세요.",
|
||||
"components.Settings.Notifications.NotificationsGotify.agentenabled": "에이전트 활성화",
|
||||
"components.Settings.Notifications.NotificationsGotify.toastGotifyTestSuccess": "Gotify 테스트 알림이 전송되었습니다!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "프로필을 사용하지 않는 경우 <code>default</code> 프로필이 필요",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "LunaSea 알림 설정을 저장하지 못했습니다.",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL은 슬래시로 끝나서는 안 됩니다",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "에이전트 활성화",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "프로필 이름",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea 테스트 알림이 전송되었습니다!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "적어도 하나 이상의 알림 유형을 선택해야 합니다",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "사용자 또는 장치 기반 <LunaSeaLink>notification webhook URL</LunaSeaLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.channelTag": "채널 태그",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Pushbullet 테스트 알림이 전송되었습니다!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Pushbullet 테스트 알림을 보내지 못했습니다.",
|
||||
@@ -1012,10 +1004,6 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.gotifysettingsfailed": "Gotify 알림 설정을 저장하지 못했습니다.",
|
||||
"components.Settings.Notifications.NotificationsGotify.token": "애플리케이션 토큰",
|
||||
"components.Settings.Notifications.NotificationsGotify.url": "서버 URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea 테스트 알림을 보내지 못했습니다.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea 알림 설정이 성공적으로 저장되었습니다!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "LunaSea 테스트 알림을 보내는 중…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "웹훅 URL",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "에이전트 활성화",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "액세스 토큰",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "사용자의 토큰 생성 <PushbulletSettingsLink>Account Settings</PushbulletSettingsLink>",
|
||||
@@ -1059,7 +1047,6 @@
|
||||
"components.Settings.RadarrModal.validationMinimumAvailabilityRequired": "최소 요구 사항을 선택해야 합니다",
|
||||
"components.ResetPassword.requestresetlinksuccessmessage": "만약 입력된 이메일 주소가 유효한 사용자와 연결되어 있다면, 비밀번호 재설정 링크가 해당 이메일 주소로 전송될 것입니다.",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTokenRequired": "애플리케이션 토큰을 입력해야 합니다",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "유효한 URL을 입력해야 합니다",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationUserTokenRequired": "유효한 사용자 또는 그룹 키를 입력해야 합니다",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationWebhookUrl": "유효한 URL을 입력해야 합니다",
|
||||
"components.Settings.Notifications.validationSmtpHostRequired": "유효한 호스트 네임 또는 IP 주소를 입력해야 합니다",
|
||||
@@ -1181,11 +1168,9 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPgpPublicKey": "유효한 PGP 공개 키를 입력해야 합니다",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushbulletAccessToken": "액세스 토큰을 입력해야 합니다",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSet": "이 사용자 계정에는 현재 암호가 설정되어 있지 않습니다. 이 계정이 \"로컬 사용자\"로 로그인할 수 있도록 하려면 아래 암호를 구성하세요",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "웹 푸시 알림 설정을 저장하지 못했습니다.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "새 암호",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.validationConfirmPassword": "새 비밀번호를 확인해야 합니다",
|
||||
"components.UserProfile.UserSettings.menuChangePass": "비밀번호",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "웹 푸시 알림 설정이 성공적으로 저장되었습니다!",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSetOwnAccount": "당신의 계정에는 현재 비밀번호가 설정되어 있지 않습니다. 이메일 주소를 사용하여 \"로컬 사용자\" 로 로그인하려면 아래 비밀번호를 구성하세요.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.nopermissionDescription": "이 사용자의 암호를 수정할 수 있는 권한이 없습니다.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.password": "비밀번호",
|
||||
|
||||
@@ -99,7 +99,6 @@
|
||||
"components.Settings.address": "Adresse",
|
||||
"components.Settings.addsonarr": "Legg til Sonarr-tjener",
|
||||
"components.Settings.cancelscan": "Avbryt skanning",
|
||||
"components.Settings.copied": "API-nøkkel kopiert til utklippstavle.",
|
||||
"components.Settings.currentlibrary": "Nåværende bibliotek: {name}",
|
||||
"components.Settings.default": "Standard",
|
||||
"components.Settings.default4k": "Standard 4K",
|
||||
@@ -564,18 +563,6 @@
|
||||
"components.UserProfile.ProfileHeader.userid": "BrukerID: {userid}",
|
||||
"components.UserProfile.unlimited": "Ubegrenset",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Gå til Pushbullet sine<PushbulletSettingsLink>kontoinnstillinger</PushbulletSettingsLink> for opprette en tilgangsnøkkel",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Ditt bruker- eller enhetsbaserte <LunaSeaLink>webhook-nettadresse for varsler</LunaSeaLink>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook-nettadresse",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Du må oppgi en gyldig nettadresse",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Du må velge minst én varseltype",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Test-varsel ble sendt med LunaSea!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "LunaSea sender test-varsel…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Kunne ikke lagre instillingene for LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Innstillingene for LunaSea ble lagret!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea mislykkes med å sende test-varsel.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Kun nødvendig dersom en annen profil enn <code>default</code> er i bruk",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Profilnavn",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Aktiver Tjeneste",
|
||||
"components.RequestModal.edit": "Rediger forespørsel",
|
||||
"components.RequestList.RequestItem.requesteddate": "Forespurt",
|
||||
"components.RequestList.RequestItem.editrequest": "Rediger forespørsel",
|
||||
@@ -857,8 +844,6 @@
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.password": "Passord",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Gjenta Passord",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.nopermissionDescription": "Du har ikke tillatelse til å endre denne brukerens passord.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Kunne ikke lagre instillingene for Web Push.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Innstillingene for Web Push ble lagret!",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Nytt Passord",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "Nåværende Passord",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.toastSettingsFailure": "Noe gikk galt under lagring av passordet.",
|
||||
@@ -1151,5 +1136,6 @@
|
||||
"components.Discover.FilterSlideover.firstAirDate": "Første Sendingsdato",
|
||||
"components.Discover.FilterSlideover.from": "Fra",
|
||||
"components.Discover.FilterSlideover.genres": "Sjangere",
|
||||
"components.Discover.PlexWatchlistSlider.plexwatchlist": "Din Visningsliste"
|
||||
"components.Discover.PlexWatchlistSlider.plexwatchlist": "Din Visningsliste",
|
||||
"components.Discover.FilterSlideover.ratingText": "Vurderinger mellom {minValue} og {maxValue}"
|
||||
}
|
||||
|
||||
@@ -99,7 +99,6 @@
|
||||
"components.Settings.address": "Adres",
|
||||
"components.Settings.addsonarr": "Sonarr-server toevoegen",
|
||||
"components.Settings.cancelscan": "Scan annuleren",
|
||||
"components.Settings.copied": "API-sleutel gekopieerd naar klembord.",
|
||||
"components.Settings.currentlibrary": "Huidige bibliotheek: {name}",
|
||||
"components.Settings.default": "Standaard",
|
||||
"components.Settings.default4k": "Standaard 4K",
|
||||
@@ -716,17 +715,8 @@
|
||||
"components.Settings.webpush": "Web-push",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingssaved": "Instellingen voor web-pushmeldingen opgeslagen!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingsfailed": "Instellingen voor web-pushmeldingen zijn niet opgeslagen.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Profielnaam",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Dienst inschakelen",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Instellingen voor web-pushmeldingen opgeslagen!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Instellingen voor web-pushmeldingen konden niet worden opgeslagen.",
|
||||
"components.Settings.noDefault4kServer": "Een 4K-{serverType}server moet als standaard worden gemarkeerd om gebruikers toe te laten om 4K-{mediaType} aan te vragen.",
|
||||
"components.Settings.is4k": "4K",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Alleen vereist als je niet het <code>default</code> profiel gebruikt",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook-URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Je moet een geldige URL opgeven",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Instellingen voor meldingen LunaSea opgeslagen!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Instellingen voor meldingen LunaSea niet opgeslagen.",
|
||||
"components.Settings.SettingsUsers.newPlexLoginTip": "{mediaServerName}-gebruikers toestaan zich aan te melden zonder eerst geïmporteerd te zijn",
|
||||
"components.Settings.SettingsUsers.newPlexLogin": "Nieuwe {mediaServerName}-aanmelding inschakelen",
|
||||
"components.Settings.Notifications.toastTelegramTestSuccess": "Testmelding Telegram verzonden!",
|
||||
@@ -751,11 +741,8 @@
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSending": "Testmelding Pushover verzenden…",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestFailed": "Testmelding Pushover niet verzonden.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Testmelding Pushbullet verzonden!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Testmelding LunaSea verzenden…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Testmelding Pushbullet verzenden…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Testmelding Pushbullet niet verzonden.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Testmelding LunaSea verzonden!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Testmelding LunaSea niet verzonden.",
|
||||
"components.PermissionEdit.requestMoviesDescription": "Toestemming geven om niet-4K-films aan te vragen.",
|
||||
"components.PermissionEdit.requestTvDescription": "Toestemming geven om niet-4K-series aan te vragen.",
|
||||
"components.PermissionEdit.requestTv": "Series aanvragen",
|
||||
@@ -769,7 +756,6 @@
|
||||
"components.Settings.Notifications.NotificationsPushover.userTokenTip": "Je <UsersGroupsLink>gebruikers- of groepsidentifier</UsersGroupsLink> van 30 tekens",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Een toepassing registreren</ApplicationRegistrationLink> om te gebruiken met Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Maak een token aan vanuit je <PushbulletSettingsLink>accountinstellingen</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Je 'User' of 'Device' <LunaSeaLink>meldingswebhook-URL</LunaSeaLink>",
|
||||
"components.Settings.Notifications.encryptionTip": "In de meeste gevallen gebruikt impliciete TLS poort 465 en STARTTLS poort 587",
|
||||
"components.Settings.Notifications.encryptionOpportunisticTls": "Altijd STARTTLS gebruiken",
|
||||
"components.Settings.Notifications.encryptionNone": "Geen",
|
||||
@@ -795,7 +781,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "Je moet ten minste één meldingstype selecteren",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "Je moet ten minste één meldingstype selecteren",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Je moet ten minste één meldingstype selecteren",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Je moet ten minste één meldingstype selecteren",
|
||||
"components.NotificationTypeSelector.usermediarequestedDescription": "Een melding ontvangen wanneer andere gebruikers nieuwe media-aanvragen indienen waarvoor goedkeuring vereist is.",
|
||||
"components.NotificationTypeSelector.usermediafailedDescription": "Een melding ontvangen wanneer media-aanvragen niet kunnen worden toegevoegd aan Radarr of Sonarr.",
|
||||
"components.NotificationTypeSelector.usermediadeclinedDescription": "Een melding ontvangen wanneer je media-aanvragen worden geweigerd.",
|
||||
@@ -1306,7 +1291,6 @@
|
||||
"components.Login.hostname": "{mediaServerName} URL",
|
||||
"components.Login.port": "Poort",
|
||||
"components.Login.servertype": "Servertype",
|
||||
"components.Login.validationHostnameRequired": "Je moet een geldige hostnaam of IP-adres opgeven",
|
||||
"components.Login.validationPortRequired": "Je moet een geldig poortnummer opgeven",
|
||||
"components.Login.validationUrlBaseLeadingSlash": "URL-basis moet beginnen met een schuine streep",
|
||||
"components.Login.validationUrlTrailingSlash": "URL mag niet eindigen met een schuine streep",
|
||||
@@ -1444,7 +1428,6 @@
|
||||
"components.Settings.OverrideRuleTile.qualityprofile": "Kwaliteitsprofiel",
|
||||
"components.Settings.OverrideRuleTile.rootfolder": "Hoofdmap",
|
||||
"components.Settings.OverrideRuleTile.settings": "Instellingen",
|
||||
"components.Settings.SettingsNetwork.advancedNetworkSettings": "Geavanceerde netwerkinstellingen",
|
||||
"components.Settings.SettingsNetwork.csrfProtection": "CSRF-bescherming inschakelen",
|
||||
"components.Settings.SettingsNetwork.docs": "documentatie",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionTip": "Stel externe API-toegang in op alleen-lezen (HTTPS vereist)",
|
||||
|
||||
@@ -274,15 +274,6 @@
|
||||
"components.ResetPassword.validationpasswordminchars": "Hasło jest zbyt krótkie; powinno mieć co najmniej 8 znaków",
|
||||
"components.ResetPassword.validationpasswordrequired": "Musisz podać hasło",
|
||||
"components.Search.search": "Szukaj",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Włącz agenta",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Wymagane tylko wtedy, gdy nie używasz profilu <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Nie udało się zapisać ustawień powiadomień LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Ustawienia powiadomień LunaSea zostały pomyślnie zapisane!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Nie udało się wysłać powiadomienia testowego LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Wysyłanie powiadomienia testowego LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Wysłano powiadomienie testowe LunaSea!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Musisz podać poprawny adres URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL Webhook",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Token dostępu (Access Token)",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink> Zarejestruj aplikację</ApplicationRegistrationLink> do użytku z Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushover.pushoversettingsfailed": "Nie udało się zapisać ustawień powiadomień Pushover.",
|
||||
@@ -329,7 +320,6 @@
|
||||
"components.Settings.SettingsAbout.Releases.versionChangelog": "{version} Lista zmian",
|
||||
"components.RequestModal.QuotaDisplay.season": "sezon",
|
||||
"components.RequestModal.requestcancelled": "Prośba o <strong>{title}</strong> została anulowana.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Musisz wybrać co najmniej jeden typ powiadomienia",
|
||||
"components.RequestModal.requestSuccess": "Prośba o <strong>{title}</strong> wysłana pomyślnie!",
|
||||
"components.RequestModal.season": "sezon",
|
||||
"components.ResetPassword.emailresetlink": "Link do odzyskiwania przez adres e-mail",
|
||||
@@ -340,10 +330,8 @@
|
||||
"components.ResetPassword.email": "Adres e-mail",
|
||||
"components.ResetPassword.password": "Hasło",
|
||||
"components.ResetPassword.resetpasswordsuccessmessage": "Hasło zostało zresetowane pomyślnie!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Nazwa profilu",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationAccessTokenRequired": "Musisz podać token dostępu",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Musisz wybrać co najmniej jeden typ powiadomienia",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "<LunaSeaLink>Twój adres URL obiektu webhook powiadomienia</LunaSeaLink> oparty na użytkowniku lub urządzeniu",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsSaved": "Ustawienia powiadomień pushbullet zostały pomyślnie zapisane!",
|
||||
"components.Settings.Notifications.NotificationsPushover.agentenabled": "Włącz agenta",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSuccess": "Powiadomienie testowe Pushover wysłane!",
|
||||
@@ -617,7 +605,6 @@
|
||||
"components.Settings.SonarrModal.validationNameRequired": "Musisz podać nazwę serwera",
|
||||
"components.Settings.SonarrModal.validationRootFolderRequired": "Musisz wybrać folder główny",
|
||||
"components.Settings.activeProfile": "Aktywny profil",
|
||||
"components.Settings.copied": "Skopiowano klucz API do schowka.",
|
||||
"components.Settings.default": "Domyślny",
|
||||
"components.Settings.default4k": "Domyślne 4K",
|
||||
"components.Settings.deleteserverconfirm": "Czy na pewno chcesz usunąć ten serwer?",
|
||||
@@ -679,7 +666,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.sendSilentlyDescription": "Wysyłaj powiadomienia bez dźwięku",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramChatId": "Identyfikator czatu",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Potwierdź hasło",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Ustawienia powiadomień web push zostały pomyślnie zapisane!",
|
||||
"i18n.noresults": "Brak wyników.",
|
||||
"i18n.notrequested": "Brak próśb",
|
||||
"i18n.partiallyavailable": "Częściowo dostępne",
|
||||
@@ -802,7 +788,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushoverUserKey": "Musisz podać prawidłowy klucz użytkownika lub grupy",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "Musisz podać prawidłowy identyfikator czatu",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Web Push",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Nie udało się zapisać ustawień powiadomień Web Push.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "Aktualne hasło",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Nowe hasło",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.toastSettingsSuccess": "Hasło zostało zapisane pomyślnie!",
|
||||
@@ -937,7 +922,7 @@
|
||||
"components.RequestModal.selectmovies": "Wybierz film(y)",
|
||||
"components.RequestModal.requestmovies": "Prośba o {count} {count, plural, one {film} other {filmów}}",
|
||||
"components.IssueDetails.commentplaceholder": "Dodaj komentarz…",
|
||||
"components.MovieDetails.productioncountries": "Produkcja {countryCount, plural, one {kraj} other {kraje}}",
|
||||
"components.MovieDetails.productioncountries": "{countryCount, plural, one {Kraj} other {Kraje}} produkcji",
|
||||
"components.RequestModal.requestseasons4k": "Prośba o {seasonCount} {seasonCount, plural, one {sezon} other {sezony}} w 4K",
|
||||
"components.TvDetails.productioncountries": "Produkcja {countryCount, plural, one {kraj} other {kraje}}",
|
||||
"components.RequestModal.approve": "Zatwierdź prośbę",
|
||||
@@ -1223,13 +1208,12 @@
|
||||
"components.Settings.manualscanDescriptionJellyfin": "Zwykle będzie to uruchamiane tylko raz na 24 godziny. Jellyseerr będzie bardziej agresywnie sprawdzać ostatnio dodane biblioteki serwera {mediaServerName}. Jeśli po raz pierwszy konfigurujesz Jellyseerr, zalecane jest jednorazowe pełne ręczne skanowanie biblioteki!",
|
||||
"components.Discover.DiscoverTv.activefilters": "{count, plural, one {# Aktywny filtr} other {# Aktywne filtry}}",
|
||||
"components.Login.back": "Wróć",
|
||||
"components.Login.validationHostnameRequired": "Musisz wprowadzić prawidłowy adres IP lub nazwę hosta",
|
||||
"components.MovieDetails.watchlistDeleted": "<strong>{title}</strong> został z powodzeniem usunięty z listy Do obejrzenia!",
|
||||
"components.MovieDetails.watchlistSuccess": "<strong>{title}</strong> został z powodzeniem dodany do listy Do obejrzenia!",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleSelectorSeconds": "Co {jobScheduleSeconds, plural, one {sekundę} other {{jobScheduleSeconds} sekundy}}",
|
||||
"components.Settings.SettingsJobsCache.image-cache-cleanup": "Czyszczenie pamięci podręcznej obrazów",
|
||||
"components.Settings.SettingsJobsCache.imagecache": "Pamięć podręczna obrazów",
|
||||
"components.Discover.DiscoverMovies.activefilters": "{count, plural, one {# Aktywny filtr} other {# Aktywne filtry}}",
|
||||
"components.Discover.DiscoverMovies.activefilters": "{count, plural, one {# aktywny filtr} few {# aktywne filtry} other {# aktywnych filtrów}}",
|
||||
"components.Login.enablessl": "Użyj SSL",
|
||||
"components.Login.invalidurlerror": "Niepowodzenie połączenia z serwerem {mediaServerName}.",
|
||||
"components.Login.port": "Port",
|
||||
|
||||
@@ -49,7 +49,6 @@
|
||||
"components.Settings.default4k": "Padrão 4K",
|
||||
"components.Settings.default": "Padrão",
|
||||
"components.Settings.currentlibrary": "Biblioteca Atual: {name}",
|
||||
"components.Settings.copied": "Chave de API copiada.",
|
||||
"components.Settings.cancelscan": "Cancelar Escaneamento",
|
||||
"components.Settings.addsonarr": "Adicionar Servidor Sonarr",
|
||||
"components.Settings.address": "Endereço",
|
||||
@@ -709,7 +708,6 @@
|
||||
"components.Settings.RadarrModal.enableSearch": "Habilitar Busca Automática",
|
||||
"components.PermissionEdit.requestMovies": "Solicitar Filmes",
|
||||
"components.DownloadBlock.estimatedtime": "Estimativa {time}",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Configurações de notificação via web push salvas com sucesso!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Web Push",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.languageDefault": "Padrão ({language})",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.applanguage": "Idioma da Interface",
|
||||
@@ -726,7 +724,6 @@
|
||||
"components.Settings.Notifications.encryption": "Método de Encriptação",
|
||||
"components.Settings.Notifications.botApiTip": "<CreateBotLink>Criar um bot</CreateBotLink> para usar com Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingssaved": "Configurações de notificação via web push salvas com sucesso!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Falha ao salvar configurações de notificação via web push.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingsfailed": "Falha ao salvar configurações de notificação via web push.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "Para receber notificações via web push, o Jellyseerr deve ser acessível via HTTPS.",
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrlTip": "Criar integração para um <WebhookLink>webhook de entrada</WebhookLink>",
|
||||
@@ -757,18 +754,7 @@
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestFailed": "Falha ao enviar notificação de teste via Pushover.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Falha ao enviar notificação de teste via Pushbullet.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Criar um token à partir de sua <PushbulletSettingsLink>Configuração de Conta</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Sua <LunaSeaLink>URL de webhook</LunaSeaLink> para notificação baseada em usuário ou dispositivo",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL de Webhook",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Você deve prover uma URL válida",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Notificação de teste via LunaSea enviada!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Enviando notificação de teste via LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Falha ao enviar notificação de teste via LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Configurações de notificação via LunaSea salvas com sucesso!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Falha ao salvar configurações de notificação via LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Necessário apenas quando não estiver usando o perfil <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Nome de Perfil",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "Habilitar Agente",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Habilitar Agente",
|
||||
"components.PermissionEdit.requestTvDescription": "Concede permissão para solicitar séries em não 4K.",
|
||||
"components.PermissionEdit.requestTv": "Solicitar Séries",
|
||||
"components.PermissionEdit.requestMoviesDescription": "Concede permissão para solicitar filmes em não 4K.",
|
||||
@@ -786,7 +772,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "Você deve selecionar ao menos um tipo de notificação",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "Você deve selecionar ao menos um tipo de notificação",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Você deve selecionar ao menos um tipo de notificação",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Você deve selecionar ao menos um tipo de notificação",
|
||||
"components.QuotaSelector.tvRequests": "{quotaLimit} <quotaUnits>{temporadas} a cada {quotaDays} {dias}</quotaUnits>",
|
||||
"components.QuotaSelector.seasons": "{count, plural, one {temporada} other {temporadas}}",
|
||||
"components.QuotaSelector.movies": "{count, plural, one {file} other {filmes}}",
|
||||
@@ -1254,7 +1239,6 @@
|
||||
"components.TitleCard.addToWatchList": "Adicionar a lista para assistir",
|
||||
"components.Login.port": "Porta",
|
||||
"components.Login.servertype": "Tipo de Servidor",
|
||||
"components.Login.validationHostnameRequired": "Você deve fornecer um nome de host ou endereço IP válido",
|
||||
"components.Login.validationPortRequired": "Você deve fornecer um número de porta válido",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "A URL base não deve terminar com uma barra",
|
||||
"components.Login.validationUrlTrailingSlash": "A URL não deve terminar com uma barra",
|
||||
|
||||
@@ -236,7 +236,6 @@
|
||||
"components.Settings.default4k": "Predefinição 4K",
|
||||
"components.Settings.default": "Predefinição",
|
||||
"components.Settings.currentlibrary": "Biblioteca Atual: {name}",
|
||||
"components.Settings.copied": "Chave API copiada.",
|
||||
"components.Settings.addsonarr": "Adicionar Servidor Sonarr",
|
||||
"components.Settings.address": "Endereço",
|
||||
"components.Settings.addradarr": "Adicionar Servidor Radarr",
|
||||
@@ -716,15 +715,6 @@
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingssaved": "Definições de notificação web push gravadas com sucesso!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingsfailed": "Falha ao gravar as definições de notificação web push.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "Ativar Agente",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Requerido apenas se não estiver a usar o perfil <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Definições de notificação LunaSea gravadas com sucesso!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Falha ao gravar as definições de notificação do LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL de Webhook",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Deve fornecer uma URL valido",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Nome do Perfil",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Ativar Agente",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Definições de notificação web push gravadas com sucesso!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Falha ao gravar as definições de notificação web push.",
|
||||
"components.Settings.noDefault4kServer": "Um servidor 4K {serverType} deve ser marcado como predefinido para permitir que os utilizador enviem pedidos 4K de {mediaType}.",
|
||||
"components.Settings.is4k": "4K",
|
||||
"components.Settings.SettingsUsers.newPlexLoginTip": "Permitir que Utilizadores do {mediaServerName} iniciem sessão sem primeiro serem importados",
|
||||
@@ -737,7 +727,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSuccess": "Notificação de teste Slack enviada!",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSuccess": "Notificação de teste Pushover enviada!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Notificação de teste Pushbullet enviada!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Notificação de teste LunaSea enviada!",
|
||||
"components.Settings.Notifications.toastTelegramTestSending": "A enviar notificação de teste Telegram…",
|
||||
"components.Settings.Notifications.toastEmailTestSending": "A enviar notificação de teste e-mail…",
|
||||
"components.Settings.Notifications.toastDiscordTestSending": "A enviar notificação de teste Discord…",
|
||||
@@ -745,7 +734,6 @@
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSending": "A enviar notificação de teste web push…",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSending": "A enviar notificação de teste Pushover…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "A enviar notificação de teste Pushbullet…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "A enviar notificação de teste ao LunaSea…",
|
||||
"components.Settings.Notifications.toastTelegramTestFailed": "Falha ao enviar notificação de teste Telegram.",
|
||||
"components.Settings.Notifications.toastEmailTestFailed": "Falha ao enviar notificação de teste e-mail.",
|
||||
"components.Settings.Notifications.toastDiscordTestFailed": "Falha ao enviar notificação de teste Discord.",
|
||||
@@ -755,7 +743,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestFailed": "Falha ao enviar notificação de teste Slack.",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestFailed": "Falha ao enviar notificação de teste Pushover.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Falha ao enviar notificação de teste Pushbullet.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Falha ao enviar notificação de teste ao LunaSea.",
|
||||
"components.PermissionEdit.requestTvDescription": "Conceder permissão para pedir séries não 4K.",
|
||||
"components.PermissionEdit.requestTv": "Pedir Séries",
|
||||
"components.PermissionEdit.requestMoviesDescription": "Conceder permissão para pedir filmes não 4K.",
|
||||
@@ -778,7 +765,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrlTip": "Criar integração para um <WebhookLink>Webhook de Entrada</WebhookLink>",
|
||||
"components.Settings.Notifications.NotificationsPushover.userTokenTip": "O seu <UsersGroupsLink>identificador de utilizador ou grupo</UsersGroupsLink> contendo 30 caractéres",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Criar um token a partir das suas <PushbulletSettingsLink>Definições de Conta</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Sua <LunaSeaLink>URL de webhook</LunaSeaLink> para notificação baseada em utilizador ou dispositivo",
|
||||
"components.RequestList.RequestItem.requesteddate": "Pedido",
|
||||
"components.RequestCard.failedretry": "Ocorreu um erro ao voltar a tentar o pedido.",
|
||||
"components.DownloadBlock.estimatedtime": "Estimativa {time}",
|
||||
@@ -795,7 +781,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "Deve selecionar pelo menos um tipo de notificação",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "Deve selecionar pelo menos um tipo de notificação",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Deve selecionar pelo menos um tipo de notificação",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Deve selecionar pelo menos um tipo de notificação",
|
||||
"components.NotificationTypeSelector.usermediarequestedDescription": "Notificar quando outros utilizadores enviarem novos pedidos de multimédia que requeiram aprovação.",
|
||||
"components.NotificationTypeSelector.usermediafailedDescription": "Notificar quando os pedidos de multimédia não forem adicionados ao Radarr ou Sonarr.",
|
||||
"components.NotificationTypeSelector.usermediadeclinedDescription": "Notificar quando seus pedidos de multimédia forem recusados.",
|
||||
|
||||
@@ -441,7 +441,6 @@
|
||||
"components.RequestModal.errorediting": "Ceva nu a funcționat în cursul editării solicitării.",
|
||||
"components.RequestModal.selectseason": "Selectați Sezoane",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "Trebuie să selectați cel puțin un tip de notificare",
|
||||
"components.Login.validationHostnameRequired": "Trebuie să introduceți un hostname sau o adresă IP valide",
|
||||
"components.RequestModal.AdvancedRequester.languageprofile": "Profil Limbă",
|
||||
"components.RequestModal.QuotaDisplay.requiredquota": "Trebuie să aveți cel puțin <strong>{seasons}</strong> {seasons, plural, one {season request} other {season requests}} rămase pentru a putea trimite o solicitare pentru această serie.",
|
||||
"components.RequestModal.requestmovies": "Solicitați {count} {count, plural, one {Movie} alte {Movies}}",
|
||||
@@ -456,10 +455,8 @@
|
||||
"components.RequestModal.SearchByNameModal.notvdbiddescription": "Nu am reușit să găsim automat un rezultat pentru aceast serial. Vă rugăm să selectați mai jos rezultatul corect.",
|
||||
"components.RequestModal.edit": "Editați Solicitare",
|
||||
"components.Settings.Notifications.NotificationsGotify.gotifysettingsfailed": "Setările de notificare Gotify nu au reușit să fie salvate.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Setările de notificare LunaSea au fost salvate cu success!",
|
||||
"components.RequestModal.QuotaDisplay.quotaLinkUser": "Puteți vizualiza un rezumat al limitelor de solicitare ale acestui utilizator pe pagina sa <ProfileLink>profile</ProfileLink>.",
|
||||
"components.Selector.showmore": "Afișează mai mult",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Testul de notificare LunaSea a fost trimis!",
|
||||
"components.RequestCard.tmdbid": "ID TMDB",
|
||||
"components.RequestCard.tvdbid": "ID TheTVDB",
|
||||
"components.ResetPassword.email": "Adresă Email",
|
||||
@@ -585,15 +582,6 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTokenRequired": "Trebuie să furnizați un token de aplicație",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlRequired": "Trebuie să furnizați un URL valid",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL-ul nu trebuie să se termine cu o bară oblică",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Activați Agentul",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Nume Profil",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Necesar doar dacă nu este folosit profilul <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Setările de notificare LunaSea nu au reușit să fie salvate.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Setările de notificare LunaSea nu au reușit să fie trimise.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Trimitere test notificare LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Trebuie să selectați cel puțin un tip de notificare",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Trebuie să furnizați un URL valid",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL Webhook",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Token Acces",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.channelTag": "Etichetă Canal",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsSaved": "Setările de notificare Pushbullet au fost salvate cu success!",
|
||||
@@ -618,5 +606,10 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.agentenabled": "Activați Agentul",
|
||||
"components.Settings.Notifications.NotificationsSlack.slacksettingsfailed": "Setările de notificare Slack nu au reușit să fie salvate.",
|
||||
"components.Settings.Notifications.NotificationsSlack.slacksettingssaved": "Setările de notificare Slack au fost salvate cu success!",
|
||||
"components.Discover.FilterSlideover.status": "Status"
|
||||
"components.Discover.FilterSlideover.status": "Status",
|
||||
"components.Blacklist.mediaName": "Nume",
|
||||
"components.Blacklist.mediaType": "Tip",
|
||||
"components.Blacklist.blacklistedby": "{date} de către {user}",
|
||||
"components.Blacklist.blacklistdate": "dată",
|
||||
"components.Blacklist.mediaTmdbId": "Id tmdb"
|
||||
}
|
||||
|
||||
@@ -99,7 +99,6 @@
|
||||
"components.Settings.address": "Адрес",
|
||||
"components.Settings.addsonarr": "Добавить сервер Sonarr",
|
||||
"components.Settings.cancelscan": "Отменить сканирование",
|
||||
"components.Settings.copied": "Ключ API скопирован в буфер обмена.",
|
||||
"components.Settings.currentlibrary": "Текущая библиотека: {name}",
|
||||
"components.Settings.default": "По умолчанию",
|
||||
"components.Settings.default4k": "4К по умолчанию",
|
||||
@@ -274,8 +273,6 @@
|
||||
"components.StatusBadge.status4k": "4K {status}",
|
||||
"pages.errormessagewithcode": "{statusCode} - {error}",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Токен доступа",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Вы должны указать действительный URL-адрес",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Название профиля",
|
||||
"components.ResetPassword.resetpasswordsuccessmessage": "Пароль сброшен успешно!",
|
||||
"components.ResetPassword.passwordreset": "Сбросить пароль",
|
||||
"components.RequestModal.edit": "Редактировать запрос",
|
||||
@@ -498,7 +495,6 @@
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationTypes": "Вы должны выбрать хотя бы один тип уведомлений",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "Вы должны выбрать хотя бы один тип уведомлений",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Вы должны выбрать хотя бы один тип уведомлений",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Вы должны выбрать хотя бы один тип уведомлений",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "Вы должны выбрать хотя бы один тип уведомлений",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationAccessTokenRequired": "Вы должны предоставить действительный токен приложения",
|
||||
"components.Settings.Notifications.NotificationsPushover.userTokenTip": "Ваш тридцатизначный <UsersGroupsLink>идентификатор пользователя или группы</UsersGroupsLink>",
|
||||
@@ -512,8 +508,6 @@
|
||||
"i18n.notrequested": "Не запрошен",
|
||||
"i18n.noresults": "Нет результатов.",
|
||||
"i18n.delimitedlist": "{a}, {b}",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL веб-перехватчика",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "<LunaSeaLink>URL веб-перехватчика для уведомлений</LunaSeaLink> на основе вашего пользователя или устройства",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessToken": "Токен API приложения",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationAccessTokenRequired": "Вы должны предоставить токен доступа",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Тестовое уведомление отправлено в Pushbullet!",
|
||||
@@ -522,15 +516,8 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsSaved": "Настройки уведомлений Pushbullet успешно сохранены!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsFailed": "Не удалось сохранить настройки уведомлений Pushbullet.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Создайте токен в <PushbulletSettingsLink>настройках учётной записи</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Тестовое уведомление отправлено в LunaSea!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Отправка тестового уведомления в LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Не удалось отправить тестовое уведомление в LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Настройки уведомлений LunaSea успешно сохранены!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Не удалось сохранить настройки уведомлений LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Требуется только в том случае, если не используется профиль <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "Активировать службу",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "Активировать службу",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Активировать службу",
|
||||
"components.Settings.notificationAgentSettingsDescription": "Настройте и активируйте службы уведомлений.",
|
||||
"components.ResetPassword.emailresetlink": "Отправить ссылку для восстановления по электронной почте",
|
||||
"pages.somethingwentwrong": "Что-то пошло не так",
|
||||
@@ -726,8 +713,6 @@
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.toastSettingsFailure": "Что-то пошло не так при сохранении пароля.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSet": "В настоящее время для этой учётной записи не установлен пароль. Установите пароль ниже, чтобы с этой учётной записью можно было войти в систему как \"локальный пользователь\".",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSetOwnAccount": "В настоящее время для вашей учётной записи не установлен пароль. Установите пароль ниже, чтобы иметь возможность войти в систему как \"локальный пользователь\", используя свой адрес электронной почты.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Настройки веб-push-уведомлений успешно сохранены!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Не удалось сохранить настройки веб-push-уведомлений.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Веб-push",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramsettingssaved": "Настройки уведомлений Telegram успешно сохранены!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramsettingsfailed": "Не удалось сохранить настройки уведомлений Telegram.",
|
||||
@@ -1304,7 +1289,6 @@
|
||||
"components.Login.port": "Порт",
|
||||
"components.Login.servertype": "Тип сервера",
|
||||
"components.Login.urlBase": "Базовый URL",
|
||||
"components.Login.validationHostnameRequired": "Вы должны указать корректный домен или IP адрес",
|
||||
"components.Login.validationPortRequired": "Вы должны указать корректный порт",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "Базовый URL не может оканчиваться слэшем",
|
||||
"components.Login.validationUrlTrailingSlash": "URL не может оканчиваться слэшем",
|
||||
@@ -1397,7 +1381,6 @@
|
||||
"i18n.blacklistDuplicateError": "<strong>{title}</strong> уже добавлен в черный список.",
|
||||
"components.Settings.SettingsJobsCache.usersavatars": "Аватары пользователей",
|
||||
"components.Settings.SettingsNetwork.toastSettingsFailure": "Что-то пошло не так при сохранении настроек.",
|
||||
"components.Settings.SettingsNetwork.advancedNetworkSettings": "Расширенные сетевые настройки",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionHoverTip": "НЕ включайте эту настройку, если не знаете, для чего она нужна!",
|
||||
"components.Settings.SettingsNetwork.docs": "документация",
|
||||
"components.Settings.SettingsNetwork.forceIpv4First": "Принудительно использовать сначала IPv4",
|
||||
|
||||
@@ -317,13 +317,6 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.url": "URL e serverit",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTokenRequired": "Duhet të japësh një token aplikacioni",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "Duhet të zgjedhësh të paktën një tip njoftimi",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Emri i profilit",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Kërkohet vetëm nëse nuk përdoret profili <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Cilësimet e njoftimit të LunaSea nuk u ruajtën.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Rregullimet e njoftimeve LunaSea u ruajtën me sukses!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Njoftimi i testit të LunaSea nuk u dërgua.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Duke dërguar njoftimin e testit LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Duhet të jepni një URL të vlefshme",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Token Aksesimi",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Krijo një token nga <PushbulletSettingsLink>Cilësimet e llogarisë</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "Aktivizo agjentin",
|
||||
@@ -419,8 +412,6 @@
|
||||
"components.RequestModal.AdvancedRequester.selecttags": "Zgjidh etiketat",
|
||||
"components.RequestModal.requestcancelled": "Kërkesa për <strong>{title}</strong> u anullua.",
|
||||
"components.ResetPassword.password": "Fjalëkalimi",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Aktivizo agjentin",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Duhet të zgjedhësh të paktën një tip njoftimi",
|
||||
"components.Settings.RadarrModal.released": "Lëshuar",
|
||||
"components.RequestModal.QuotaDisplay.allowedRequestsUser": "Ky përdorues lejohet të kërkojë <strong>{limit}</strong> {type} çdo <strong>{days}</strong> ditë.",
|
||||
"components.RequestModal.QuotaDisplay.movie": "film",
|
||||
@@ -438,7 +429,6 @@
|
||||
"components.ResetPassword.passwordreset": "Rivendos fjalëkalimin",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsSaved": "Cilësimet e njoftimit Pushbullet u ruajtën me sukses!",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlRequired": "Duhet të jepni një URL të vlefshme",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "U dërgua njoftimi i testit LunaSea!",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL nuk duhet të përfundojë me një slesh",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.pushbulletSettingsFailed": "Cilësimet e njoftimit Pushbullet nuk u ruajtën.",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Po dërgohet njoftimi i testit Pushbullet…",
|
||||
@@ -491,7 +481,6 @@
|
||||
"components.Settings.tautulliApiKey": "Çelësi API",
|
||||
"components.Settings.tautulliSettings": "Cilësimet e Tautulli",
|
||||
"components.Settings.toastPlexRefresh": "Duke marrë listën e serverave nga Plex…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL e Webhook",
|
||||
"components.Settings.notificationAgentSettingsDescription": "Konfiguro dhe aktivizo agjentët e njoftimit.",
|
||||
"components.Settings.plexlibrariesDescription": "Libraritë e Jellyseerr skanojnë për tituj. Vendos dhe ruaj cilësimet e lidhjes Plex, pastaj kliko në butonin më poshtë nëse nuk janë të listuara libraritë.",
|
||||
"components.Settings.plexsettingsDescription": "Konfiguro cilësimet për serverin tuaj Plex. Jellyseerr skanon libraritë tuaja Plex për të përcaktuar disponueshmërinë e përmbajtjes.",
|
||||
@@ -509,7 +498,6 @@
|
||||
"components.IssueList.IssueItem.episodes": "{episodeCount, plural, one {Episod} other {Episode}}",
|
||||
"components.RequestModal.requestseasons4k": "Kërko {seasonCount} {seasonCount, plural, one {Sezon} other {Sezone}} në 4K",
|
||||
"components.RequestModal.requestseasons": "Kërko {seasonCount} {seasonCount, plural, one {Sezon} other {Sezone}}",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "<LunaSeaLink>URL e Njoftimit Webhook</LunaSeaLink> të bazuar në përdorues ose paisje",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "Duhet të zgjidhni të paktën një lloj njoftimi",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessToken": "Token API i aplikacionit",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Regjistroni një aplikacion</ApplicationRegistrationLink> për ta përdorur me Jellyseerr",
|
||||
@@ -765,7 +753,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushoverUserKey": "Duhet të jepni një çelës të vlefshëm përdoruesi ose grupi",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "Duhet të jepni një ID të vlefshme bisede",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Web Push",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Cilësimet e njoftimit në ueb nuk u ruajtën.",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Konfirmo fjalëkalimin",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "Fjalëkalimi aktual",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Fjalëkalimi i ri",
|
||||
@@ -921,7 +908,6 @@
|
||||
"components.Settings.address": "Adresa",
|
||||
"components.Settings.addsonarr": "Shto Serverin Sonarr",
|
||||
"components.Settings.cancelscan": "Anullo skanimin",
|
||||
"components.Settings.copied": "Çelësi API u kopjua.",
|
||||
"components.Settings.currentlibrary": "Libraria aktuale: {name}",
|
||||
"components.Settings.default": "E paracaktuar",
|
||||
"components.Settings.default4k": "E Paracaktuar 4K",
|
||||
@@ -959,7 +945,6 @@
|
||||
"components.TvDetails.firstAirDate": "Data e parë e transmetimit",
|
||||
"components.UserList.email": "Adresa email",
|
||||
"components.UserList.importedfromplex": "<strong>{userCount}</strong> {userCount, plural, one {përdorues} other {përdorues}} nga Plex u importuan me sukses!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Cilësimet e njoftimit në ueb u ruajtën me sukses!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.discordIdTip": "<FindDiscordIdLink>Numri i identifikimit me shumë shifra</FindDiscordIdLink> i lidhur me llogarinë tuaj të përdoruesit",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPgpPublicKey": "Duhet të jepni një çelës publik të vlefshëm PGP",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushbulletAccessToken": "Duhet të japësh një Token hyrjeje",
|
||||
|
||||
@@ -71,7 +71,6 @@
|
||||
"components.Settings.default4k": "Podrazumevano 4K",
|
||||
"components.Settings.default": "Podrazumeno",
|
||||
"components.Settings.currentlibrary": "Trenutna biblioteka: {name}",
|
||||
"components.Settings.copied": "Kopiran API ključ.",
|
||||
"components.Settings.cancelscan": "Otkaži skeniranje",
|
||||
"components.Settings.addsonarr": "Dodaj Sonarr server",
|
||||
"components.Settings.address": "Adresa",
|
||||
@@ -494,7 +493,6 @@
|
||||
"i18n.notrequested": "Nije zahtevano",
|
||||
"components.Settings.Notifications.validationEmail": "Morate uneti validnu email adresu",
|
||||
"components.UserList.usercreatedfailedexisting": "Email adresa je već iskorišćena od strane drugog korisnika.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Šaljem LunaSea probno obaveštenje…",
|
||||
"components.CollectionDetails.requestcollection4k": "Zahtevaj kolekciju u 4K",
|
||||
"components.Login.signinheader": "Uloguj se za nastavak",
|
||||
"components.Login.signinwithoverseerr": "Iskoristi nalog od {applicationTitle}",
|
||||
|
||||
@@ -31,7 +31,6 @@
|
||||
"components.Settings.default4k": "Standard 4K",
|
||||
"components.Settings.default": "Standard",
|
||||
"components.Settings.currentlibrary": "Nuvarande bibliotek: {name}",
|
||||
"components.Settings.copied": "API-nyckel kopierad till urklipp.",
|
||||
"components.Settings.cancelscan": "Avbryt skanning",
|
||||
"components.Settings.addsonarr": "Lägg till Sonarr-instans",
|
||||
"components.Settings.address": "Adress",
|
||||
@@ -131,7 +130,7 @@
|
||||
"components.RequestBlock.seasons": "{seasonCount, plural, one {säsong} other {säsonger}}",
|
||||
"components.PersonDetails.ascharacter": "som {character}",
|
||||
"components.PersonDetails.appearsin": "Kan ses i",
|
||||
"components.MovieDetails.studio": "{studioCount, plural, one {studio} other {studior}}",
|
||||
"components.MovieDetails.studio": "{studioCount, plural, one {Studio} other {Studior}}",
|
||||
"components.MovieDetails.similar": "Liknande titlar",
|
||||
"components.MovieDetails.runtime": "{minutes} minuter",
|
||||
"components.MovieDetails.revenue": "Inkomster",
|
||||
@@ -152,7 +151,7 @@
|
||||
"components.Discover.upcomingmovies": "Kommande filmer",
|
||||
"components.Discover.upcoming": "Kommande filmer",
|
||||
"components.Discover.trending": "Trendande",
|
||||
"components.Discover.recentrequests": "Senaste förfrågningar",
|
||||
"components.Discover.recentrequests": "Senaste förfrågningarna",
|
||||
"components.Discover.recentlyAdded": "Nyligen tillagda",
|
||||
"components.Discover.populartv": "Populära serier",
|
||||
"components.Discover.popularmovies": "Populära filmer",
|
||||
@@ -160,7 +159,7 @@
|
||||
"components.TvDetails.TvCast.fullseriescast": "Rollista",
|
||||
"components.Setup.welcome": "Välkommen till Jellyseerr",
|
||||
"components.Setup.signinMessage": "Kom igång genom att logga in",
|
||||
"components.RequestModal.requestseasons": "Begär {seasonCount} {seasonCount, plural, one {säsong} other {säsonger}}",
|
||||
"components.RequestModal.requestseasons": "Begär {seasonCount} {seasonCount, plural, one {Säsong} other {Säsonger}}",
|
||||
"pages.returnHome": "Gå tillbaka till startsidan",
|
||||
"pages.oops": "Hoppsan",
|
||||
"i18n.unavailable": "Otillgänglig",
|
||||
@@ -194,7 +193,7 @@
|
||||
"components.TvDetails.overviewunavailable": "Beskrivning saknas.",
|
||||
"components.TvDetails.overview": "Beskrivning",
|
||||
"components.TvDetails.originallanguage": "Originalspråk",
|
||||
"components.TvDetails.network": "{networkCount, plural, one {nätverk} other {nätverk}}",
|
||||
"components.TvDetails.network": "{networkCount, plural, one {Nätverk} other {Nätverk}}",
|
||||
"components.TvDetails.cast": "Roller",
|
||||
"i18n.close": "Stäng",
|
||||
"components.Settings.SettingsAbout.timezone": "Tidszon",
|
||||
@@ -225,9 +224,9 @@
|
||||
"i18n.request": "Begär",
|
||||
"i18n.failed": "Misslyckades",
|
||||
"components.UserList.importedfromplex": "<strong>{userCount}</strong> Plex {userCount, plural, one {användare} other {användare}} importerades!",
|
||||
"components.TvDetails.viewfullcrew": "Visa hela rollistan",
|
||||
"components.TvDetails.viewfullcrew": "Visa hela teamet",
|
||||
"components.TvDetails.firstAirDate": "Första sändningsdatum",
|
||||
"components.TvDetails.TvCrew.fullseriescrew": "Hela rollistan",
|
||||
"components.TvDetails.TvCrew.fullseriescrew": "Hela teamet",
|
||||
"components.StatusBadge.status4k": "4K {status}",
|
||||
"components.Settings.SettingsAbout.documentation": "Dokumentation",
|
||||
"components.Settings.Notifications.validationChatIdRequired": "Du måste ange ett giltigt chatt-ID",
|
||||
@@ -279,10 +278,10 @@
|
||||
"components.NotificationTypeSelector.mediaavailable": "Förfrågan tillgänglig",
|
||||
"components.NotificationTypeSelector.mediaapprovedDescription": "Skicka meddelanden när medieförfrågningar godkänns manuellt.",
|
||||
"components.NotificationTypeSelector.mediaapproved": "Förfrågan godkänd",
|
||||
"components.MovieDetails.viewfullcrew": "Visa fullt filmteam",
|
||||
"components.MovieDetails.MovieCrew.fullcrew": "Filmteam",
|
||||
"components.MovieDetails.viewfullcrew": "Visa hela teamet",
|
||||
"components.MovieDetails.MovieCrew.fullcrew": "Team",
|
||||
"components.UserList.userssaved": "Användarbehörigheter sparade!",
|
||||
"components.UserList.bulkedit": "Mass-redigering",
|
||||
"components.UserList.bulkedit": "Massredigering",
|
||||
"components.PermissionEdit.usersDescription": "Ge behörighet att hantera användare. Användare med denna behörighet kan inte ändra eller lägga till användare med adminrättigheter.",
|
||||
"components.PermissionEdit.users": "Hantera användare",
|
||||
"components.PermissionEdit.requestDescription": "Ge behörighet att skicka in förfrågningar för media som inte är 4K.",
|
||||
@@ -325,7 +324,7 @@
|
||||
"components.UserList.createlocaluser": "Skapa lokal användare",
|
||||
"components.UserList.create": "Skapa",
|
||||
"components.UserList.autogeneratepassword": "Generera lösenord automatiskt",
|
||||
"components.PersonDetails.crewmember": "Crew",
|
||||
"components.PersonDetails.crewmember": "Teammedlem",
|
||||
"components.Login.validationemailrequired": "Du måste ange en giltig e-postadress",
|
||||
"components.Login.email": "E-postadress",
|
||||
"components.PermissionEdit.autoapproveSeriesDescription": "Ge automatiskt godkännande för serieförfrågningar som inte är 4K.",
|
||||
@@ -425,7 +424,7 @@
|
||||
"components.Settings.serverRemote": "fjärr",
|
||||
"components.Settings.serverLocal": "lokal",
|
||||
"i18n.loading": "Laddar…",
|
||||
"components.UserProfile.recentrequests": "Senaste förfrågningar",
|
||||
"components.UserProfile.recentrequests": "Senaste förfrågningarna",
|
||||
"components.UserProfile.UserSettings.menuPermissions": "Behörigheter",
|
||||
"components.UserProfile.UserSettings.menuNotifications": "Meddelanden",
|
||||
"components.UserProfile.UserSettings.menuGeneralSettings": "Allmänt",
|
||||
@@ -506,7 +505,7 @@
|
||||
"components.Settings.SettingsJobsCache.plex-full-scan": "Full biblioteksskanning för Plex",
|
||||
"components.Settings.SettingsJobsCache.jellyfin-full-scan": "Full Jellyfin-biblioteksskanning",
|
||||
"components.Settings.SettingsJobsCache.jellyfin-recently-added-scan": "Skanning av nyligen tillagda objekt i Jellyfin",
|
||||
"components.Settings.SettingsJobsCache.download-sync-reset": "Återställ nedladdningssynkronisering",
|
||||
"components.Settings.SettingsJobsCache.download-sync-reset": "Nollställ nedladdningssynkronisering",
|
||||
"components.Settings.SettingsJobsCache.download-sync": "Nedladdningssynkronisering",
|
||||
"components.Settings.SettingsAbout.preferredmethod": "Föredraget",
|
||||
"components.Settings.Notifications.validationUrl": "Du måste ange en giltig URL",
|
||||
@@ -554,7 +553,7 @@
|
||||
"components.Discover.TvGenreSlider.tvgenres": "Seriegenrer",
|
||||
"components.RequestModal.AdvancedRequester.folder": "{path} ({space})",
|
||||
"components.TvDetails.episodeRuntimeMinutes": "{runtime} minuter",
|
||||
"components.TvDetails.episodeRuntime": "Avsnittets speltid",
|
||||
"components.TvDetails.episodeRuntime": "Avsnittslängd",
|
||||
"components.Settings.Notifications.pgpPrivateKeyTip": "Signera krypterade e-postmeddelanden med <OpenPgpLink>OpenPGP</OpenPgpLink>",
|
||||
"components.Settings.Notifications.pgpPrivateKey": "Privat PGP-nyckel",
|
||||
"components.Settings.Notifications.pgpPasswordTip": "Signera krypterade e-postmeddelanden med <OpenPgpLink>OpenPGP</OpenPgpLink>",
|
||||
@@ -587,7 +586,7 @@
|
||||
"components.Settings.SettingsLogs.filterInfo": "Info",
|
||||
"components.Settings.SettingsLogs.filterError": "Fel",
|
||||
"components.Settings.SettingsLogs.filterDebug": "Felsök",
|
||||
"components.Settings.SettingsJobsCache.jobsandcache": "Jobb & Cache",
|
||||
"components.Settings.SettingsJobsCache.jobsandcache": "Jobb och cache",
|
||||
"components.Settings.SettingsAbout.about": "Om",
|
||||
"components.ResetPassword.passwordreset": "Återställning av lösenord",
|
||||
"components.Settings.SettingsLogs.logDetails": "Logginformation",
|
||||
@@ -716,27 +715,15 @@
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingssaved": "Webbpush-meddelandeinställningar har sparats!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingsfailed": "Webbpush-meddelandeinställningar kunde inte sparas.",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "Aktivera Webbpush",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook-URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Du måste ange en giltig URL",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea-meddelandeinställningar har sparats!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "LunaSea-meddelandeinställningar kunde inte sparas.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Endast nödvändigt om du inte använder <code>standard</code>-profilen",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Profilnamn",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Aktivera LunaSea",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "Skickar Pushbullet-testmeddelande…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Pushbullet-testmeddelande kunde inte skickas.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea-testmeddelande skickat!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Skickar LunaSea-testmeddelande…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea-testmeddelande kunde inte skickas.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Webbpush-meddelandeinställningar har sparats!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Webbpush-meddelandeinställningar kunde inte sparas.",
|
||||
"components.Settings.noDefault4kServer": "En 4K {serverType}-instans måste markeras som standard för att användare ska kunna skicka in 4K {mediaType}-förfrågningar.",
|
||||
"components.Settings.is4k": "4K",
|
||||
"components.Settings.Notifications.toastTelegramTestSuccess": "Telegram-testmeddelande skickat!",
|
||||
"components.Settings.Notifications.toastTelegramTestSending": "Skickar Telegram-testmeddelande…",
|
||||
"components.Settings.Notifications.toastTelegramTestFailed": "Telegram-testmeddelande kunde inte skickas.",
|
||||
"components.Settings.Notifications.toastEmailTestSuccess": "E-posttestmeddelande skickat!",
|
||||
"components.Settings.Notifications.toastEmailTestSending": "kickar e-posttestmeddelande…",
|
||||
"components.Settings.Notifications.toastEmailTestSending": "Skickar e-posttestmeddelande…",
|
||||
"components.Settings.Notifications.toastEmailTestFailed": "E-posttestmeddelande kunde inte skickas.",
|
||||
"components.Settings.Notifications.toastDiscordTestSuccess": "Discord-testmeddelande skickat!",
|
||||
"components.Settings.Notifications.toastDiscordTestSending": "Skickar Discord-testmeddelande…",
|
||||
@@ -774,7 +761,6 @@
|
||||
"components.Settings.Notifications.NotificationsPushover.userTokenTip": "Din <UsersGroupsLink>användare eller gruppidentifierare</UsersGroupsLink> (30 tecken)",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>Registrera en applikation</ApplicationRegistrationLink> för användning med Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Skapa en token från dina <PushbulletSettingsLink>kontoinställningar</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Din användar- eller enhetsbaserade <LunaSeaLink>webhook-URL för meddelanden</LunaSeaLink>",
|
||||
"components.DownloadBlock.estimatedtime": "Beräknad {time}",
|
||||
"components.Settings.webAppUrlTip": "Alternativt skicka användare till den lokala webbappen istället för den \"hostade\" webbappen",
|
||||
"components.Settings.webAppUrl": "<WebAppLink>Webbapp</WebAppLink>-URL",
|
||||
@@ -789,7 +775,6 @@
|
||||
"components.QuotaSelector.seasons": "{count, plural, one {säsong} other {säsonger}}",
|
||||
"components.QuotaSelector.movies": "{count, plural, one {film} other {filmer}}",
|
||||
"components.QuotaSelector.days": "{count, plural, one {dag} other {dagar}}",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Du måste välja minst en meddelandetyp",
|
||||
"components.Settings.Notifications.validationTypes": "Du måste välja minst en meddelandetyp",
|
||||
"components.Settings.Notifications.NotificationsWebhook.validationTypes": "Du måste välja minst en meddelandetyp",
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "Du måste välja minst en meddelandetyp",
|
||||
@@ -848,7 +833,7 @@
|
||||
"components.IssueDetails.reopenissueandcomment": "Återöppna med kommentar",
|
||||
"components.IssueDetails.season": "Säsong {seasonNumber}",
|
||||
"components.IssueDetails.toasteditdescriptionsuccess": "Ärendebeskrivning redigerad!",
|
||||
"components.IssueList.IssueItem.seasons": "{seasonCount, plural, one {säsong} other {säsonger}}",
|
||||
"components.IssueList.IssueItem.seasons": "{seasonCount, plural, one {Säsong} other {Säsonger}}",
|
||||
"components.IssueList.IssueItem.unknownissuetype": "Okänd",
|
||||
"components.IssueList.IssueItem.openeduserdate": "{date} av {user}",
|
||||
"components.IssueList.IssueItem.viewissue": "Visa ärende",
|
||||
@@ -943,7 +928,7 @@
|
||||
"components.RequestModal.requestApproved": "Förfrågan för <strong>{title}</strong> godkänd!",
|
||||
"components.RequestModal.requestmovies": "Begär {count} {count, plural, one {film} other {filmer}}",
|
||||
"components.RequestModal.requestmovies4k": "Begär {count} {count, plural, one {film} other {filmer}} i 4K",
|
||||
"components.RequestModal.requestseasons4k": "Begär {seasonCount} {seasonCount, plural, one {säsong} other {säsonger}} i 4K",
|
||||
"components.RequestModal.requestseasons4k": "Begär {seasonCount} {seasonCount, plural, one {Säsong} other {Säsonger}} i 4K",
|
||||
"components.Settings.RadarrModal.inCinemas": "På bio",
|
||||
"components.Settings.RadarrModal.released": "Släppt",
|
||||
"components.Settings.RadarrModal.announced": "Tillkännagiven",
|
||||
@@ -1052,7 +1037,7 @@
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.plexwatchlistsyncseriestip": "Begär automatiskt serier på din <PlexWatchlistSupportLink>Plex bevakningslista</PlexWatchlistSupportLink>",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.plexwatchlistsyncmoviestip": "Begär automatiskt filmer på din <PlexWatchlistSupportLink>Plex bevakningslista</PlexWatchlistSupportLink>",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleCurrent": "Aktuell frekvens",
|
||||
"components.PermissionEdit.viewrecentDescription": "Ge tillstånd till att visa listan över nyligen tillagd media.",
|
||||
"components.PermissionEdit.viewrecentDescription": "Ge behörighet att visa listan över nyligen tillagd media.",
|
||||
"components.StatusBadge.managemedia": "Hantera {mediaType}",
|
||||
"components.StatusBadge.playonplex": "Spela upp på {mediaServerName}",
|
||||
"components.TitleCard.tvdbid": "TheTVDB-ID",
|
||||
@@ -1081,7 +1066,7 @@
|
||||
"components.RequestModal.requestseriestitle": "Begär serie",
|
||||
"components.StatusBadge.openinarr": "Öppna i {arr}",
|
||||
"components.TvDetails.Season.somethingwentwrong": "Något gick fel när säsongsdata hämtades.",
|
||||
"components.TvDetails.manageseries": "Hantera serier",
|
||||
"components.TvDetails.manageseries": "Hantera serie",
|
||||
"components.TvDetails.rtaudiencescore": "Rotten Tomatoes Audience Score",
|
||||
"components.TvDetails.seasonnumber": "Säsong {seasonNumber}",
|
||||
"components.TvDetails.status4k": "4K {status}",
|
||||
@@ -1289,7 +1274,6 @@
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.email": "E-post",
|
||||
"components.Login.back": "Gå tillbaka",
|
||||
"components.Login.hostname": "{mediaServerName}-URL",
|
||||
"components.Login.validationHostnameRequired": "Du måste ange ett giltigt värdnamn eller en IP-adress",
|
||||
"components.Login.invalidurlerror": "Kunde inte ansluta till {mediaServerName} server.",
|
||||
"components.Login.port": "Port",
|
||||
"components.Login.servertype": "Typ av server",
|
||||
@@ -1408,7 +1392,6 @@
|
||||
"components.Settings.SettingsMain.enableSpecialEpisodes": "Tillåt förfrågningar om specialavsnitt",
|
||||
"components.Settings.SettingsMain.streamingRegion": "Streamingregion",
|
||||
"components.Settings.SettingsMain.streamingRegionTip": "Visa streamingtjänster efter regional tillgänglighet",
|
||||
"components.Settings.SettingsNetwork.advancedNetworkSettings": "Avancerade nätverksinställningar",
|
||||
"components.Settings.SettingsNetwork.csrfProtection": "Aktivera CSRF-skydd",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionHoverTip": "Aktivera INTE denna inställning om du inte vet vad du gör!",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionTip": "Ställ in skrivskyddad åtkomst till externt API (kräver HTTPS)",
|
||||
|
||||
@@ -554,16 +554,6 @@
|
||||
"components.ResetPassword.gobacklogin": "Oturum Açma Sayfasına Dön",
|
||||
"components.ResetPassword.requestresetlinksuccessmessage": "Eğer ki girilen e-mail adresi gerçek bir kişiyle ilişkiliyse şifre sıfırlama linki gönderilecektir.",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL'nizin sonunda slash (eğik çizgi) olmamalıdır",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Aracıyı Etkinleştir",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Profil İsmi",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Eğer ki <code>varsayılan</code> profil kullanılmıyorsa gereklidir",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "LunaSea bildirim ayarları kaydedilemedi.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea deneme bildirimi gönderilemedi.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "LunaSea deneme bildirimi gönderiliyor…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea deneme bildirimi gönderildi!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "En azından bir adet bildirim türü seçmelisiniz",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Geçerli bir URL girmelisiniz",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook URL'si",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Erişim Token'i",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "<PushbulletSettingsLink>Hesap Ayarlarınızdan</PushbulletSettingsLink> bir token oluşturun",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "Aracıyı Etkinleştir",
|
||||
@@ -575,9 +565,7 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationAccessTokenRequired": "Bir erişim token'i sağlamalısınız",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "En azından bir adet bildirim türü seçmelisiniz",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessToken": "Uygulama API'sinin Token'i",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea bildirim ayarları kaydedildi!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Pushbullet deneme bildirimi gönderilemedi.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "Kullanıcı ya da cihaz tabanlı <LunaSeaLink>webhook bildirimi URL'niz</LunaSeaLink>",
|
||||
"components.Settings.RadarrModal.released": "Yayınlandı",
|
||||
"components.Settings.RadarrModal.rootfolder": "Ana Klasör",
|
||||
"components.Settings.Notifications.NotificationsPushover.agentenabled": "Aracıyı Etkinleştir",
|
||||
@@ -864,7 +852,6 @@
|
||||
"components.Settings.address": "Adres",
|
||||
"components.Settings.addsonarr": "Sonarr Sunucusu Ekle",
|
||||
"components.Settings.cancelscan": "Taramayı İptal Et",
|
||||
"components.Settings.copied": "API Anahtarı panoya kopyalandı.",
|
||||
"components.Settings.currentlibrary": "Mevcut Kütüphane: {name}",
|
||||
"components.Settings.default": "Öntanımlı",
|
||||
"components.Settings.default4k": "Öntanımlı 4K",
|
||||
@@ -1179,8 +1166,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushoverUserKey": "Geçerli bir kullanıcı ya da grup kimliği sağlamalısınız",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "Geçerli bir sohbet ID'si sağlamalısın",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Web Bildirimi",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Web bildirim ayarları kaydedilemedi.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Web bildirim ayarları kaydedildi!",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Şifreyi Doğrula",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "Kullandığınız Şifre",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Yeni Şifre",
|
||||
@@ -1304,7 +1289,6 @@
|
||||
"components.Login.invalidurlerror": "{mediaServerName} sunucusuna bağlanılamıyor.",
|
||||
"components.Login.port": "Port",
|
||||
"components.Login.urlBase": "URL Tabanı",
|
||||
"components.Login.validationHostnameRequired": "Geçerli bir ana bilgisayar adı veya IP adresi sağlamalısınız",
|
||||
"components.Login.validationPortRequired": "Geçerli bir port numarası sağlamalısınız",
|
||||
"components.Login.validationUrlBaseLeadingSlash": "URL tabanının başında eğik çizgi olmalıdır",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "URL tabanı eğik çizgiyle bitmemelidir",
|
||||
@@ -1432,7 +1416,6 @@
|
||||
"components.Settings.OverrideRuleTile.tags": "Etiketler",
|
||||
"components.Settings.OverrideRuleTile.users": "Kullanıcılar",
|
||||
"components.Settings.SettingsMain.enableSpecialEpisodes": "Özel Bölüm Taleplerine İzin Ver",
|
||||
"components.Settings.SettingsNetwork.advancedNetworkSettings": "Gelişmiş Ağ Ayarları",
|
||||
"components.Settings.SettingsNetwork.csrfProtection": "CSRF Korumasını Etkinleştir",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionHoverTip": "Ne yaptığınızı bilmiyorsanız bu ayarı ETKİNLEŞTİRMEYİN!",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionTip": "Harici API erişimini salt okunur olarak ayarlayın (HTTPS gerektirir)",
|
||||
|
||||
@@ -427,18 +427,6 @@
|
||||
"components.Settings.Notifications.NotificationsGotify.validationTypes": "Необхідно вибрати принаймні один тип сповіщення",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlRequired": "Ви повинні надати дійсну URL-адресу",
|
||||
"components.Settings.Notifications.NotificationsGotify.validationUrlTrailingSlash": "URL-адреса не має закінчуватися косою рискою",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "Активувати службу",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "Назва профілю",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "Потрібно лише в тому випадку, якщо не використовується профіль <code>default</code>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "Не вдалося зберегти налаштування повідомлень LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "Налаштування повідомлень LunaSea успішно збережено!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "Не вдалося надіслати тестове повідомлення до LunaSea.",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "Надсилання тестового повідомлення в LunaSea…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "Тестове повідомлення надіслано до LunaSea!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "Ви повинні вибрати хоча б один тип повідомлень",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "Ви повинні вказати дійсну URL-адресу",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "URL веб-перехоплювача",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "<LunaSeaLink>URL веб-перехоплювача для повідомлень</LunaSeaLink> на основі користувача або пристрою",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "Токен доступу",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "Створіть токен у <PushbulletSettingsLink>налаштуваннях облікового запису</PushbulletSettingsLink>",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "Активувати службу",
|
||||
@@ -754,7 +742,6 @@
|
||||
"components.Settings.addsonarr": "Додати сервер Sonarr",
|
||||
"components.Settings.advancedTooltip": "Неправильне налаштування цього параметра може призвести до несправності функціональності",
|
||||
"components.Settings.cancelscan": "Скасувати сканування",
|
||||
"components.Settings.copied": "Ключ API скопійовано в буфер обміну.",
|
||||
"components.Settings.currentlibrary": "Поточна бібліотека: {name}",
|
||||
"components.Settings.default": "За замовчуванням",
|
||||
"components.Settings.default4k": "4К за замовчуванням",
|
||||
@@ -994,8 +981,6 @@
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPushoverUserKey": "Ви повинні надати дійсний ключ користувача або групи",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "Ви повинні надати дійсний ID чату",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "Веб-push",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "Не вдалося зберегти налаштування веб-повідомлень.",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "Налаштування веб-повідомлень успішно збережено!",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "Підтвердіть пароль",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "Поточний пароль",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "Новий пароль",
|
||||
@@ -1312,7 +1297,6 @@
|
||||
"components.Login.validationUrlBaseTrailingSlash": "Базова URL-адреса не має закінчуватися косою рискою",
|
||||
"components.Login.validationservertyperequired": "Виберіть тип сервера",
|
||||
"components.Login.urlBase": "Базова URL-адреса",
|
||||
"components.Login.validationHostnameRequired": "Ви повинні вказати дійсний домен або IP-адресу",
|
||||
"components.MovieDetails.watchlistDeleted": "<strong>{title}</strong> Видалено зі списку перегляду успішно!",
|
||||
"components.MovieDetails.watchlistError": "Щось пішло не так, повторіть спробу.",
|
||||
"components.Selector.ended": "Завершено",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"components.UserList.validationpasswordminchars": "密码必须至少包含八个字符",
|
||||
"components.UserList.validationEmail": "请输入有效的电子邮件地址",
|
||||
"components.UserList.validationEmail": "需要提供电子邮件",
|
||||
"components.UserList.userssaved": "用户权限保存成功!",
|
||||
"components.UserList.users": "用户",
|
||||
"components.UserList.userlist": "用户清单",
|
||||
@@ -50,7 +50,7 @@
|
||||
"components.TvDetails.originaltitle": "原始標題",
|
||||
"components.TvDetails.originallanguage": "原始语言",
|
||||
"components.TvDetails.nextAirDate": "下一次播出日期",
|
||||
"components.TvDetails.network": "电视网",
|
||||
"components.TvDetails.network": "{networkCount, plural, one {Network} other {Networks}}",
|
||||
"components.TvDetails.firstAirDate": "原始播出日期",
|
||||
"components.TvDetails.episodeRuntimeMinutes": "{runtime} 分钟",
|
||||
"components.TvDetails.episodeRuntime": "劇集片長",
|
||||
@@ -95,9 +95,9 @@
|
||||
"components.Settings.scan": "媒体库同步",
|
||||
"components.Settings.radarrsettings": "Radarr 设置",
|
||||
"components.Settings.port": "端口",
|
||||
"components.Settings.plexsettingsDescription": "关于 Plex 服务器的设置。Jellyseerr 将定时执行媒体库扫描。",
|
||||
"components.Settings.plexsettingsDescription": "配置您的 Plex 服务器设置。Jellyseerr 将通过扫描 Plex 媒体库来确定内容可用性。",
|
||||
"components.Settings.plexsettings": "Plex 设置",
|
||||
"components.Settings.plexlibrariesDescription": "Jellyseerr 将扫描的媒体库。",
|
||||
"components.Settings.plexlibrariesDescription": "Jellyseerr 扫描影片的媒体库。如果未列出任何媒体库,请先设置并保存您的 Plex 连接配置,然后点击下方按钮。",
|
||||
"components.Settings.plexlibraries": "Plex 媒体库",
|
||||
"components.Settings.plex": "Plex",
|
||||
"components.Settings.notrunning": "未运行",
|
||||
@@ -117,7 +117,7 @@
|
||||
"components.Settings.menuAbout": "关于 Jellyseerr",
|
||||
"components.Settings.mediaTypeSeries": "电视节目",
|
||||
"components.Settings.mediaTypeMovie": "电影",
|
||||
"components.Settings.manualscanDescription": "在正常情況下,Jellyseerr 会每24小时扫描你的 Plex 媒体库。最新添加的媒体将更频繁扫描。设置新的 Plex 服务器时,我们建议你执行一次手动扫描!",
|
||||
"components.Settings.manualscanDescription": "在正常情況下,Jellyseerr 会每24小时扫描一次你的 Plex 媒体库。Jellyseerr会更积极地检查你的Plex服务器最近添加的内容。如果这是你第一次配置Plex,我们建议你执行一次手动扫描!",
|
||||
"components.Settings.manualscan": "媒体库手动扫描",
|
||||
"components.Settings.librariesRemaining": "媒体库剩余数: {count}",
|
||||
"components.Settings.is4k": "4K",
|
||||
@@ -128,7 +128,6 @@
|
||||
"components.Settings.default4k": "设置 4K 为默认分辨率",
|
||||
"components.Settings.default": "默认",
|
||||
"components.Settings.currentlibrary": "当前媒体库: {name}",
|
||||
"components.Settings.copied": "应用程序密钥已复制到剪贴板。",
|
||||
"components.Settings.cancelscan": "取消扫描",
|
||||
"components.Settings.addsonarr": "添加 Sonarr 服务器",
|
||||
"components.Settings.address": "网址",
|
||||
@@ -262,7 +261,7 @@
|
||||
"components.Discover.TvGenreSlider.tvgenres": "电视节目类型",
|
||||
"components.Discover.TvGenreList.seriesgenres": "电视节目类型",
|
||||
"components.Discover.StudioSlider.studios": "制作公司",
|
||||
"components.Discover.NetworkSlider.networks": "电视网",
|
||||
"components.Discover.NetworkSlider.networks": "流媒体平台",
|
||||
"components.Discover.MovieGenreSlider.moviegenres": "电影类型",
|
||||
"components.Discover.MovieGenreList.moviegenres": "电影类型",
|
||||
"components.Discover.DiscoverTvLanguage.languageSeries": "{language}电视节目",
|
||||
@@ -275,7 +274,7 @@
|
||||
"components.CollectionDetails.requestcollection": "提交系列请求",
|
||||
"components.CollectionDetails.overview": "简介",
|
||||
"components.CollectionDetails.numberofmovies": "{count} 部电影",
|
||||
"components.AppDataWarning.dockerVolumeMissingDescription": "必须使用繫結掛载(bind mount)指定某个宿主机器的资料夹跟容器內的 <code>{appDataPath}</code> 资料夹連通,才能保存 Jellyseerr 的配置和数据。",
|
||||
"components.AppDataWarning.dockerVolumeMissingDescription": "<code>{appDataPath}</code> 卷挂载配置不正确。容器停止或重启时,所有数据将被清除。",
|
||||
"components.PersonDetails.ascharacter": "饰演 {character}",
|
||||
"pages.somethingwentwrong": "出了点问题",
|
||||
"pages.serviceunavailable": "服务器无法使用",
|
||||
@@ -359,12 +358,10 @@
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.password": "密码设置",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.nopermissionDescription": "你无权设置此用户的密码。",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSetOwnAccount": "你的帐户目前没有设置密码。在下方配置密码,使你能够作为“本地用户”登录。",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSet": "此用户帐户目前没有设置密码。配置下面的密码以使此帐户能够作为“本地用户”登录。",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.noPasswordSet": "该用户账户当前未设置密码。请在下方配置密码,以启用“本地用户”登录功能。",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.newpassword": "新密码",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.currentpassword": "当前的密码",
|
||||
"components.UserProfile.UserSettings.UserPasswordChange.confirmpassword": "确认密码",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingssaved": "网络推送知设置保存成功!",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpushsettingsfailed": "网络推送知设置保存失败。",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.webpush": "网络推送",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramChatId": "请输入聊天室 ID",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationPgpPublicKey": "请输入有效的 PGP 公钥",
|
||||
@@ -442,7 +439,7 @@
|
||||
"components.Settings.SettingsUsers.newPlexLoginTip": "让还没导入的 Plex 用户登录",
|
||||
"components.Settings.SettingsUsers.newPlexLogin": "允许新的 Plex 登录",
|
||||
"components.Settings.SettingsUsers.movieRequestLimitLabel": "电影请求全局限制",
|
||||
"components.Settings.SettingsUsers.localLoginTip": "让用户使用电子邮件地址和密码登录",
|
||||
"components.Settings.SettingsUsers.localLoginTip": "允许用户使用电子邮件地址和密码登录",
|
||||
"components.Settings.SettingsUsers.localLogin": "允许本地登录",
|
||||
"components.Settings.SettingsUsers.defaultPermissionsTip": "授予给新用户的权限",
|
||||
"components.Settings.SettingsUsers.defaultPermissions": "默认权限",
|
||||
@@ -451,7 +448,7 @@
|
||||
"components.Settings.SettingsLogs.resumeLogs": "恢复",
|
||||
"components.Settings.SettingsLogs.pauseLogs": "暫停",
|
||||
"components.Settings.SettingsLogs.message": "消息",
|
||||
"components.Settings.SettingsLogs.logsDescription": "你也可以直接查看这些日志,方法是借助 <code>stdout</code>, 或者打开 <code>{appDataPath}/logs/overseerr.log</code>。",
|
||||
"components.Settings.SettingsLogs.logsDescription": "您也可以通过<code>stdout</code>或<code>{appDataPath}/logs/ jellyserer .log</code>直接查看这些日志。",
|
||||
"components.Settings.SettingsLogs.logs": "日志",
|
||||
"components.Settings.SettingsLogs.logDetails": "日志详細信息",
|
||||
"components.Settings.SettingsLogs.level": "等級",
|
||||
@@ -474,7 +471,7 @@
|
||||
"components.Settings.SettingsJobsCache.jobtype": "作业类型",
|
||||
"components.Settings.SettingsJobsCache.jobstarted": "{jobname} 已开始运行。",
|
||||
"components.Settings.SettingsJobsCache.jobsandcache": "作业和缓存",
|
||||
"components.Settings.SettingsJobsCache.jobsDescription": "Jellyseerr 将定时运行以下的维护任务。手动执行工作不会影响它正常的时间表。",
|
||||
"components.Settings.SettingsJobsCache.jobsDescription": "Jellyseerr将某些维护任务作为定期计划的任务执行,但它们也可以在下面手动触发。手动运行任务不会改变它的时间表。",
|
||||
"components.Settings.SettingsJobsCache.jobs": "作业",
|
||||
"components.Settings.SettingsJobsCache.jobname": "作业名",
|
||||
"components.Settings.SettingsJobsCache.jobcancelled": "{jobname}已被取消。",
|
||||
@@ -490,7 +487,7 @@
|
||||
"components.Settings.SettingsJobsCache.cachekeys": "键数",
|
||||
"components.Settings.SettingsJobsCache.cachehits": "击中数",
|
||||
"components.Settings.SettingsJobsCache.cacheflushed": "{cachename} 缓存已清除。",
|
||||
"components.Settings.SettingsJobsCache.cacheDescription": "外部应用程序介面(external API)请求将存到缓存,以減少 API 呼叫次数。",
|
||||
"components.Settings.SettingsJobsCache.cacheDescription": "Jellyseerr将请求缓存到外部API端点,以优化性能,避免进行不必要的API调用。",
|
||||
"components.Settings.SettingsJobsCache.cache": "缓存",
|
||||
"components.Settings.SettingsAbout.version": "软件版本",
|
||||
"components.Settings.SettingsAbout.uptodate": "最新",
|
||||
@@ -598,7 +595,7 @@
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSuccess": "网络推送测试通知已发送!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSending": "发送网络推送测试通知中…",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestFailed": "网络推送测试通知发送失败。",
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "Jellyseerr 必须通過 HTTPS 投放才能使用网络推送通知。",
|
||||
"components.Settings.Notifications.NotificationsWebPush.httpsRequirement": "为了接收web推送通知,Jellyseerr必须通过HTTPS提供服务。",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "启用通知",
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrlTip": "创建一个 <WebhookLink>incoming webhook</WebhookLink> 集成",
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrl": "网络钩子网址(URL)",
|
||||
@@ -621,7 +618,7 @@
|
||||
"components.Settings.Notifications.NotificationsPushover.pushoversettingssaved": "Pushover 通知设置保存成功!",
|
||||
"components.Settings.Notifications.NotificationsPushover.pushoversettingsfailed": "Pushover 通知设置保存失败。",
|
||||
"components.Settings.Notifications.NotificationsPushover.agentenabled": "启用通知",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "建立一个 Jellyseerr 专用的<ApplicationRegistrationLink>应用程序</ApplicationRegistrationLink>",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "<ApplicationRegistrationLink>创建应用</ApplicationRegistrationLink> 并关联 Jellyseerr",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessToken": "应用程序 API 令牌",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "请选择通知类型",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationAccessTokenRequired": "请输入 API 令牌",
|
||||
@@ -633,18 +630,6 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.agentEnabled": "启用通知",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "从你的<PushbulletSettingsLink>账户设定</PushbulletSettingsLink>取得 API 令牌",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessToken": "API 令牌",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "用户或设備通知的<LunaSeaLink>网络钩子网址</LunaSeaLink>",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "网络钩子网址(URL)",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "请输入有效的网址",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "请选择通知类型",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea 测试通知已发送!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "发送 LunaSea 测试通知中…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea 测试通知发送失败。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea 通知设置保存成功!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "LunaSea 通知设置保存失败。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "不使用 <code>default</code> 默认设定档才必须输入",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "设定档名",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "启用通知",
|
||||
"components.Search.searchresults": "搜索結果",
|
||||
"components.Search.search": "搜索",
|
||||
"components.ResetPassword.validationpasswordrequired": "请输入密码",
|
||||
@@ -870,7 +855,7 @@
|
||||
"components.Settings.SettingsAbout.appDataPath": "数据目录",
|
||||
"components.Settings.SettingsJobsCache.editJobScheduleSelectorHours": "每 {jobScheduleHours, plural, one {hour} other {{jobScheduleHours} hours}}",
|
||||
"components.Settings.tautulliSettings": "Tautulli 设置",
|
||||
"components.Settings.tautulliSettingsDescription": "关于 Tautulli 服务器的设置。Jellyseerr 会从 Tautulli 获取 Plex 媒体的观看历史记录。",
|
||||
"components.Settings.tautulliSettingsDescription": "可选配置您的 Tautulli 服务器设置。Jellyseerr 会从 Tautulli 获取您的 Plex 媒体观看历史数据。",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.discordId": "Discord 用户ID",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.pushbulletsettingsfailed": "Pushbullet 通知设置保存失败。",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.discordIdTip": "您的<FindDiscordIdLink>Discord 用户 ID </FindDiscordIdLink>",
|
||||
@@ -1019,7 +1004,7 @@
|
||||
"components.RequestCard.tmdbid": "TMDB ID",
|
||||
"components.Settings.SettingsLogs.viewdetails": "查看详情",
|
||||
"components.Layout.UserDropdown.requests": "请求",
|
||||
"components.Settings.restartrequiredTooltip": "必须重新启动 Jellyseerr 才能使更改的设置生效",
|
||||
"components.Settings.restartrequiredTooltip": "需重启 Jellyseerr 服务才能使此设置生效",
|
||||
"components.TvDetails.manageseries": "管理电视节目",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.plexwatchlistsyncseriestip": "自动请求您的 <PlexWatchlistSupportLink>Plex 关注列表</PlexWatchlistSupportLink>的媒体",
|
||||
"components.AirDateBadge.airedrelative": "{relativeTime}播出",
|
||||
@@ -1089,7 +1074,7 @@
|
||||
"components.StatusBadge.seasonepisodenumber": "S{seasonNumber}E{episodeNumber}",
|
||||
"components.Discover.PlexWatchlistSlider.plexwatchlist": "您的 Plex 关注列表",
|
||||
"components.Discover.moviegenres": "电影类型",
|
||||
"components.Discover.networks": "电视网",
|
||||
"components.Discover.networks": "流媒体平台",
|
||||
"components.Discover.studios": "制作公司",
|
||||
"components.Discover.DiscoverMovieKeyword.keywordMovies": "{keywordTitle} 电影",
|
||||
"components.Settings.SettingsMain.apikey": "应用程序密钥",
|
||||
@@ -1138,7 +1123,7 @@
|
||||
"components.Discover.DiscoverMovies.sortReleaseDateDesc": "上映日期递减",
|
||||
"components.Discover.DiscoverTv.sortPopularityDesc": "人气递减",
|
||||
"components.Discover.DiscoverTv.sortTitleDesc": "标题 (Z-A) 递减",
|
||||
"components.Settings.SettingsMain.partialRequestsEnabled": "允许电视节目不完整请求",
|
||||
"components.Settings.SettingsMain.partialRequestsEnabled": "允许部分剧集请求",
|
||||
"components.Discover.DiscoverMovies.sortTitleDesc": "标题 (Z-A) 递减",
|
||||
"components.Discover.DiscoverTv.sortTmdbRatingDesc": "TMDB 评分递减",
|
||||
"components.Discover.DiscoverMovies.sortTitleAsc": "标题 (A-Z) 递增",
|
||||
@@ -1162,22 +1147,22 @@
|
||||
"components.Discover.updatefailed": "更新探索媒体设置时出了点问题。",
|
||||
"components.Settings.SettingsMain.originallanguageTip": "以原始语言筛选结果",
|
||||
"components.Settings.SettingsMain.originallanguage": "探索语言",
|
||||
"components.Discover.tmdbnetwork": "TMDB 电视网",
|
||||
"components.Discover.tmdbnetwork": "TMDB 平台",
|
||||
"components.Discover.tmdbsearch": "TMDB 搜索",
|
||||
"components.Discover.tmdbstudio": "TMDB 制作公司",
|
||||
"components.Discover.CreateSlider.editfail": "编辑滑动框失败。",
|
||||
"components.Discover.CreateSlider.editfail": "编辑滑块失败。",
|
||||
"components.Discover.CreateSlider.validationTitlerequired": "你必须提供滑动框的名称。",
|
||||
"components.Discover.DiscoverSliderEdit.deletesuccess": "成功删除滑动框。",
|
||||
"components.Discover.resettodefault": "重置为默认",
|
||||
"components.Discover.stopediting": "退出编辑",
|
||||
"components.Discover.resetwarning": "将所有滑动框重置为默认。这也将删除所有自定义滑动框!",
|
||||
"components.Discover.CreateSlider.editSlider": "编辑滑动框",
|
||||
"components.Discover.CreateSlider.editSlider": "编辑滑块",
|
||||
"components.Discover.CreateSlider.addSlider": "添加滑动框",
|
||||
"components.Discover.CreateSlider.addcustomslider": "创建自定义滑动框",
|
||||
"components.Discover.CreateSlider.addcustomslider": "创建自定义滑块",
|
||||
"components.Discover.DiscoverSliderEdit.deletefail": "删除滑动框失败。",
|
||||
"components.Discover.DiscoverSliderEdit.remove": "移除",
|
||||
"components.Discover.CreateSlider.addfail": "创建新滑动框失败。",
|
||||
"components.Discover.CreateSlider.addsuccess": "已创建新的滑动框并保存探索自定义设置。",
|
||||
"components.Discover.CreateSlider.addfail": "创建新滑块失败。",
|
||||
"components.Discover.CreateSlider.addsuccess": "已创建新滑块并保存探索页面的自定义设置。",
|
||||
"components.Discover.tmdbmoviegenre": "TMDB 电影类型",
|
||||
"components.Discover.tmdbtvgenre": "TMDB 电视节目类型",
|
||||
"components.Discover.tmdbtvkeyword": "TMDB 电视节目关键词",
|
||||
@@ -1196,10 +1181,10 @@
|
||||
"components.Discover.customizediscover": "自定义探索",
|
||||
"components.Discover.createnewslider": "创建新的滑动框",
|
||||
"components.Discover.tmdbmoviekeyword": "TMDB 电影关键词",
|
||||
"components.Discover.CreateSlider.editsuccess": "已编辑滑动框并保存探索自定义设置。",
|
||||
"components.Discover.CreateSlider.editsuccess": "已编辑滑块并保存探索页面的自定义设置。",
|
||||
"components.Discover.CreateSlider.validationDatarequired": "你必须提供一个供搜索的内容。",
|
||||
"components.Discover.CreateSlider.providetmdbstudio": "提供 TMDB 制作公司 ID",
|
||||
"components.Discover.CreateSlider.providetmdbnetwork": "提供一个 TMDB 电视网 ID",
|
||||
"components.Discover.CreateSlider.providetmdbnetwork": "请提供 TMDB 网络 ID",
|
||||
"components.Discover.CreateSlider.slidernameplaceholder": "滑动框名称",
|
||||
"components.Discover.resetsuccess": "成功重置探索自定义设置。",
|
||||
"components.Settings.SettingsJobsCache.availability-sync": "同步媒体可用性",
|
||||
@@ -1249,10 +1234,10 @@
|
||||
"components.Settings.syncing": "同步中",
|
||||
"components.Settings.timeout": "超时",
|
||||
"components.Setup.signin": "登录",
|
||||
"components.Setup.signinWithJellyfin": "使用您的{mediaServerName}帐户",
|
||||
"components.Setup.signinWithJellyfin": "输入您的 Jellyfin 详细信息",
|
||||
"components.TitleCard.addToWatchList": "添加到监视列表",
|
||||
"components.TitleCard.watchlistDeleted": "<strong>{title}</strong>从监视列表中删除成功!",
|
||||
"components.TitleCard.watchlistError": "出了问题,再试一次。",
|
||||
"components.TitleCard.watchlistError": "出现错误,请重试。",
|
||||
"components.TvDetails.play": "在 {mediaServerName} 播放",
|
||||
"components.TvDetails.play4k": "mediaServerName} 播放 4K",
|
||||
"components.UserList.importfrommediaserver": "导入{mediaServerName}用户",
|
||||
@@ -1274,12 +1259,12 @@
|
||||
"components.Settings.SettingsJobsCache.jellyfin-recently-added-scan": "Jellyfin最近新增扫描",
|
||||
"components.Settings.SonarrModal.animeSeriesType": "动漫系列",
|
||||
"components.Settings.jellyfinSettings": "{mediaServerName}设置",
|
||||
"components.Settings.jellyfinSettingsDescription": "可以为您的{mediaServerName}服务器配置内部和外部端点。在大多数情况下,外部URL与内部URL不同。如果你想重定向到不同的密码重置页面,也可以为{mediaServerName}登录设置自定义密码重置URL。",
|
||||
"components.Settings.jellyfinSettingsDescription": "可以为您的{mediaServerName}服务器配置内部和外部端点。在大多数情况下,外部URL与内部URL是不同的。如果你想重定向到不同的密码重置页面,也可以为{mediaServerName}登录设置自定义密码重置URL。你也可以修改之前自动生成的Jellyfin API密钥。",
|
||||
"components.Settings.jellyfinsettingsDescription": "配置{mediaServerName}服务器的设置。{mediaServerName}扫描{mediaServerName}库以查看可用的内容。",
|
||||
"components.Settings.manualscanDescriptionJellyfin": "正常情况下,每24小时只会运行一次。Jellyseerr将更积极地检查您的{mediaServerName}服务器最近添加的内容。如果这是您第一次配置Jellyseerr,建议您手动进行一次完整的库扫描!",
|
||||
"components.Settings.save": "保存更改",
|
||||
"components.Setup.configuremediaserver": "配置媒体服务器",
|
||||
"components.Setup.signinWithPlex": "使用您的 Plex 帐户",
|
||||
"components.Setup.signinWithPlex": "输入您的 Plex 详细信息",
|
||||
"components.TitleCard.watchlistCancel": "<strong>{title}</strong>的监视列表已取消。",
|
||||
"components.TitleCard.watchlistSuccess": "<strong>{title}</strong>添加到监视列表成功!",
|
||||
"components.UserList.importfromJellyfin": "导入{mediaServerName}用户",
|
||||
@@ -1291,22 +1276,20 @@
|
||||
"components.UserProfile.localWatchlist": "{username}的监视列表",
|
||||
"components.UserList.importedfromJellyfin": "<strong>{userCount}</strong> {mediaServerName} {userCount, plural, one {user} other {users}} 导入成功!",
|
||||
"components.Settings.SettingsNetwork.proxyBypassLocalAddresses": "代理绕过本地地址",
|
||||
"components.MovieDetails.addtowatchlist": "添加到监视列表",
|
||||
"components.MovieDetails.addtowatchlist": "加入监视列表",
|
||||
"components.MovieDetails.watchlistError": "出了点问题,请重试。",
|
||||
"components.PermissionEdit.manageblacklistDescription": "授予管理黑名单媒体的权限。",
|
||||
"components.Login.invalidurlerror": "无法连接到 {mediaServerName} 服务器。",
|
||||
"components.Login.enablessl": "使用 SSL",
|
||||
"components.PermissionEdit.manageblacklist": "管理黑名单",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "请删除结尾斜杠",
|
||||
"components.Login.validationUrlBaseTrailingSlash": "基础 URL 末尾不得包含斜杠",
|
||||
"components.Login.noadminerror": "没有在服务器上找到管理员账户。",
|
||||
"components.Login.port": "端口",
|
||||
"components.Login.validationHostnameRequired": "你必须提供有效的主机名或 IP 地址",
|
||||
"components.Login.validationPortRequired": "请输入有效的端口",
|
||||
"components.Login.validationUrlBaseLeadingSlash": "请添加前置斜杠",
|
||||
"components.Login.validationUrlTrailingSlash": "请删除结尾斜杠",
|
||||
"components.Login.validationPortRequired": "您必须提供一个有效的端口号",
|
||||
"components.Login.validationUrlBaseLeadingSlash": "基础 URL 开头必须包含斜杠",
|
||||
"components.Login.validationUrlTrailingSlash": "URL不能以斜杠结尾",
|
||||
"components.MovieDetails.removefromwatchlist": "从监视列表中移除",
|
||||
"components.Settings.SettingsNetwork.csrfProtection": "启用 CSRF 保护",
|
||||
"components.Settings.SettingsNetwork.advancedNetworkSettings": "高级网络设置",
|
||||
"components.Settings.SettingsMain.discoverRegion": "探索地区",
|
||||
"components.Settings.SettingsMain.enableSpecialEpisodes": "允许特别剧集请求",
|
||||
"components.Settings.SettingsNetwork.proxyEnabled": "HTTP(S) 代理",
|
||||
@@ -1319,5 +1302,171 @@
|
||||
"components.Settings.SettingsNetwork.validationProxyPort": "您必须提供有效端口",
|
||||
"components.Settings.SettingsUsers.loginMethods": "登录方式",
|
||||
"components.Settings.SettingsUsers.mediaServerLogin": "允许 {mediaServerName} 登录",
|
||||
"components.Settings.SettingsNetwork.networksettings": "网络设置"
|
||||
"components.Settings.SettingsNetwork.networksettings": "网络设置",
|
||||
"component.BlacklistBlock.blacklistdate": "黑名单日期",
|
||||
"components.PermissionEdit.viewblacklistedItemsDescription": "允许查看黑名单媒体。",
|
||||
"components.Settings.Notifications.validationMessageThreadId": "线程/话题ID必须为正的整数",
|
||||
"components.Settings.OverrideRuleModal.conditionsDescription": "指定应用参数更改前的条件。每个字段必须经过验证才能应用(和操作)规则。如果字段的任何属性(或操作)匹配,则认为该字段已验证。",
|
||||
"components.Settings.OverrideRuleModal.genres": "类型",
|
||||
"components.Settings.OverrideRuleModal.ruleCreated": "覆盖规则创建成功!",
|
||||
"components.TvDetails.watchlistDeleted": "<strong>{title}</strong>从监视列表中删除成功!",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.description": "输入您的{mediaServerName}凭据以将您的帐户与{applicationName}链接。",
|
||||
"components.UserProfile.UserSettings.menuLinkedAccounts": "关联账户",
|
||||
"components.Blacklist.blacklistNotFoundError": "<strong>{title}</strong>未被列入黑名单。",
|
||||
"components.Blacklist.blacklistdate": "日期",
|
||||
"components.DiscoverTvUpcoming.upcomingtv": "即将播出的电视剧",
|
||||
"components.Blacklist.blacklistedby": "{date} 来自 {user}",
|
||||
"components.Login.adminerror": "您必须使用管理员帐户登录。",
|
||||
"components.Selector.canceled": "已取消",
|
||||
"components.Settings.addrule": "新的覆盖规则",
|
||||
"components.Setup.signinWithEmby": "输入您的Emby详细信息",
|
||||
"components.TvDetails.addtowatchlist": "添加到监控列表",
|
||||
"components.UserList.validationUsername": "你必须提供一个用户名",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.streamingRegion": "流媒体区域",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramMessageThreadIdTip": "如果您的群聊启用了主题,您可以在这里指定线程/主题的ID",
|
||||
"components.Discover.FilterSlideover.status": "状态",
|
||||
"components.Login.back": "返回",
|
||||
"components.RequestList.RequestItem.removearr": "从{arr}中删除",
|
||||
"components.Layout.Sidebar.blacklist": "黑名单",
|
||||
"components.Settings.OverrideRuleModal.settingsDescription": "指定当满足上述条件时将更改哪些设置。",
|
||||
"components.PermissionEdit.viewblacklistedItems": "查看被列入黑名单的媒体。",
|
||||
"components.RequestList.sortDirection": "切换排序方向",
|
||||
"components.Settings.Notifications.webhookRoleIdTip": "要在webhook消息中提及的角色ID。留空以禁用提及",
|
||||
"components.UserList.username": "用户名",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmail": "这个邮箱已经被使用了!",
|
||||
"components.Settings.invalidurlerror": "无法连接到{mediaServerName}服务器。",
|
||||
"components.Settings.scanbackground": "扫描将在后台运行。在此期间,您可以继续安装过程。",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorExists": "这个帐户已经链接到一个{applicationName}用户",
|
||||
"i18n.blacklistSuccess": "<strong>{title}</strong> 被成功加入黑名单。",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.linkedAccountsHint": "这些外部帐户与您的{applicationName}帐户相关联。",
|
||||
"i18n.addToBlacklist": "添加到黑名单",
|
||||
"components.Selector.returningSeries": "回归剧集",
|
||||
"components.Blacklist.blacklistsettings": "黑名单设置",
|
||||
"components.Blacklist.mediaName": "名称",
|
||||
"components.Blacklist.mediaTmdbId": "tmdb Id",
|
||||
"components.Blacklist.mediaType": "类型",
|
||||
"component.BlacklistModal.blacklisting": "黑名单",
|
||||
"components.Blacklist.blacklistSettingsDescription": "管理黑名单媒体。",
|
||||
"component.BlacklistBlock.blacklistedby": "被列入黑名单",
|
||||
"i18n.blacklist": "黑名单",
|
||||
"components.Login.hostname": "{mediaServerName} URL",
|
||||
"components.Login.loginwithapp": "使用{appName}登录",
|
||||
"components.Login.orsigninwith": "或者登录",
|
||||
"components.Login.servertype": "服务器类型",
|
||||
"components.Login.validationservertyperequired": "请选择服务器类型",
|
||||
"components.Login.urlBase": "基础 URL",
|
||||
"components.MovieDetails.watchlistDeleted": "<strong>{title}</strong>从监视列表中删除成功!",
|
||||
"components.MovieDetails.watchlistSuccess": "<strong>{title}</strong>添加到监视列表成功!",
|
||||
"components.PermissionEdit.blacklistedItems": "黑名单媒体。",
|
||||
"components.PermissionEdit.blacklistedItemsDescription": "添加黑名单媒体权限。",
|
||||
"components.RequestList.RequestItem.profileName": "配置方案",
|
||||
"components.Selector.ended": "已结束",
|
||||
"components.Selector.inProduction": "在生产中",
|
||||
"components.Selector.pilot": "试播节目",
|
||||
"components.Selector.planned": "计划中",
|
||||
"components.Selector.searchStatus": "选择状态…",
|
||||
"components.Selector.searchUsers": "选择用户…",
|
||||
"components.Settings.Notifications.messageThreadIdTip": "如果您的群聊启用了主题,您可以在这里指定线程/主题的ID",
|
||||
"components.Settings.Notifications.messageThreadId": "主题/帖子 ID",
|
||||
"components.Settings.Notifications.validationWebhookRoleId": "您必须提供一个有效的Discord角色ID",
|
||||
"components.Settings.Notifications.webhookRoleId": "通知角色ID",
|
||||
"components.Settings.OverrideRuleModal.conditions": "条件",
|
||||
"components.Settings.OverrideRuleModal.create": "创建规则",
|
||||
"components.Settings.OverrideRuleModal.createrule": "新覆盖规则",
|
||||
"components.Settings.OverrideRuleModal.editrule": "编辑覆盖规则",
|
||||
"components.Settings.OverrideRuleTile.tags": "标签",
|
||||
"components.Settings.OverrideRuleModal.keywords": "关键字",
|
||||
"components.Settings.OverrideRuleModal.languages": "语言",
|
||||
"components.Settings.OverrideRuleModal.notagoptions": "没有标签。",
|
||||
"components.Settings.OverrideRuleModal.qualityprofile": "质量概况",
|
||||
"components.Settings.OverrideRuleModal.rootfolder": "根目录",
|
||||
"components.Settings.OverrideRuleModal.ruleUpdated": "覆盖规则更新成功!",
|
||||
"components.Settings.OverrideRuleModal.selectRootFolder": "选择根目录",
|
||||
"components.Settings.OverrideRuleModal.selecttags": "选择标签",
|
||||
"components.Settings.OverrideRuleModal.serviceDescription": "将此规则应用于所选服务。",
|
||||
"components.Settings.OverrideRuleModal.settings": "设置",
|
||||
"components.Settings.OverrideRuleModal.tags": "标签",
|
||||
"components.Settings.OverrideRuleModal.users": "用户",
|
||||
"components.Settings.OverrideRuleTile.conditions": "条件",
|
||||
"components.Settings.OverrideRuleTile.keywords": "关键字",
|
||||
"components.Settings.OverrideRuleTile.language": "语言",
|
||||
"components.Settings.OverrideRuleTile.qualityprofile": "质量档案",
|
||||
"components.Settings.OverrideRuleTile.rootfolder": "根目录",
|
||||
"components.Settings.OverrideRuleTile.settings": "设置",
|
||||
"components.Settings.OverrideRuleTile.users": "用户",
|
||||
"components.Settings.OverrideRuleModal.selectService": "选择服务",
|
||||
"components.Settings.OverrideRuleModal.service": "服务",
|
||||
"components.Settings.OverrideRuleTile.genre": "类型",
|
||||
"components.Settings.OverrideRuleModal.selectQualityProfile": "选择画质配置",
|
||||
"components.Settings.SettingsJobsCache.usersavatars": "用户头像",
|
||||
"components.Settings.SettingsJobsCache.plex-refresh-token": "Plex 刷新令牌",
|
||||
"components.Settings.SettingsMain.discoverRegionTip": "根据区域可用性过滤内容",
|
||||
"components.Settings.SettingsMain.streamingRegionTip": "按地区可用性显示流媒体网站",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionHoverTip": "不要启用这个设置,除非你明白你在做什么!",
|
||||
"components.Settings.SettingsMain.streamingRegion": "流媒体区域",
|
||||
"components.Settings.SettingsNetwork.csrfProtectionTip": "将外部API访问设置为只读(需要HTTPS)",
|
||||
"components.Settings.SettingsNetwork.docs": "文档",
|
||||
"components.Settings.SettingsNetwork.forceIpv4First": "强制IPv4优先解析",
|
||||
"components.Settings.SettingsNetwork.forceIpv4FirstTip": "强制Jellyseerr首先解析IPv4地址,而不是IPv6地址",
|
||||
"components.Settings.SettingsNetwork.network": "网络",
|
||||
"components.Settings.SettingsNetwork.networkDisclaimer": "应该使用来自容器/系统的网络参数,而不是这些设置。有关更多信息,请参阅{docs}。",
|
||||
"components.Settings.SettingsNetwork.networksettingsDescription": "为您的Jellyseerr实例配置网络设置。",
|
||||
"components.Settings.SettingsNetwork.proxyBypassFilter": "忽略的代理地址",
|
||||
"components.Settings.SettingsNetwork.proxyBypassFilterTip": "使用“,”和“*”作为分隔符。“*”作为子域的通配符",
|
||||
"components.Settings.SettingsNetwork.toastSettingsFailure": "在保存设置时出错了。",
|
||||
"components.Settings.SettingsNetwork.toastSettingsSuccess": "设置保存成功!",
|
||||
"components.Settings.SettingsNetwork.trustProxyTip": "允许Jellyseerr在代理后正确地注册客户端IP地址",
|
||||
"components.Settings.SettingsUsers.atLeastOneAuth": "必须选择至少一种身份验证方法。",
|
||||
"components.Settings.SettingsUsers.loginMethodsTip": "配置用户登录方式。",
|
||||
"components.Settings.SettingsUsers.mediaServerLoginTip": "允许用户使用他们的{mediaServerName}帐户登录",
|
||||
"components.Settings.jellyfinForgotPasswordUrl": "忘记密码URL",
|
||||
"components.Settings.apiKey": "API 密钥",
|
||||
"components.Settings.jellyfinSyncFailedGenericError": "同步库时出错了",
|
||||
"components.Settings.jellyfinSyncFailedNoLibrariesFound": "没有找到库",
|
||||
"components.Settings.menuNetwork": "网络",
|
||||
"components.Settings.overrideRules": "覆盖规则",
|
||||
"components.Settings.overrideRulesDescription": "覆盖规则允许您指定在请求与规则匹配时将被替换的属性。",
|
||||
"components.Settings.jellyfinSyncFailedAutomaticGroupedFolders": "不支持同时使用自定义认证和自动媒体库分组功能",
|
||||
"components.Settings.tip": "提示",
|
||||
"components.Setup.configemby": "配置Emby",
|
||||
"components.Setup.configjellyfin": "配置Jellyfin",
|
||||
"components.Setup.configplex": "配置Plex",
|
||||
"components.Setup.librarieserror": "验证失败。请再次切换库以继续。",
|
||||
"components.Setup.servertype": "选择服务器类型",
|
||||
"components.Setup.subtitle": "首先选择您的媒体服务器",
|
||||
"components.Setup.back": "返回",
|
||||
"components.StatusBadge.seasonnumber": "第 {seasonNumber} 季",
|
||||
"components.TvDetails.removefromwatchlist": "从监视列表中删除",
|
||||
"components.TvDetails.watchlistError": "发生了一些错误。请再试一次。",
|
||||
"components.TvDetails.watchlistSuccess": "<strong>{title}</strong>添加到监视列表成功!",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorUnauthorized": "无法使用您的凭据连接到{mediaServerName}",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.errorUnknown": "发生未知错误",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.password": "密码",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.passwordRequired": "你必须提供一个密码",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.save": "链接",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.saving": "添加中…",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.title": "链接{mediaServerName}帐户",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.username": "用户名",
|
||||
"components.UserProfile.UserSettings.LinkJellyfinModal.usernameRequired": "你必须提供一个用户名",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.discoverRegion": "发现区域",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.discoverRegionTip": "根据区域可用性筛选内容",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.streamingRegionTip": "按地区可用性显示流媒体网站",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.toastSettingsFailureEmailEmpty": "该用户名已被其他用户使用,你必须设置一个邮箱",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationemailformat": "需要有效的邮箱",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.validationemailrequired": "需要邮箱",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.errorUnknown": "发生未知错误",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.linkedAccounts": "关联账户",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.noLinkedAccounts": "您的账号没有绑定任何外部账号。",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.noPermissionDescription": "您没有权限修改此用户的关联帐户。",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.deleteFailed": "无法删除关联帐户。",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.plexErrorExists": "此帐户已关联到一个Plex用户",
|
||||
"components.UserProfile.UserSettings.UserLinkedAccountsSettings.plexErrorUnauthorized": "无法使用您的凭证连接Plex",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.telegramMessageThreadId": "线程/主题 ID",
|
||||
"components.UserProfile.UserSettings.UserNotificationSettings.validationTelegramMessageThreadId": "线程/主题ID必须是正的整数",
|
||||
"i18n.blacklistDuplicateError": "<strong>{title}</strong>已被列入黑名单。",
|
||||
"i18n.blacklistError": "出问题了。请再试一次。",
|
||||
"i18n.removefromBlacklist": "移出黑名单",
|
||||
"i18n.blacklisted": "已列入黑名单",
|
||||
"i18n.removeFromBlacklistSuccess": "<strong>{title}</strong> 已成功从黑名单中移除。",
|
||||
"i18n.specials": "特别篇"
|
||||
}
|
||||
|
||||
@@ -364,7 +364,6 @@
|
||||
"components.Settings.SettingsJobsCache.process": "程序",
|
||||
"components.Settings.SettingsAbout.preferredmethod": "首選",
|
||||
"i18n.advanced": "進階",
|
||||
"components.Settings.copied": "應用程式密鑰已複製到剪貼板。",
|
||||
"components.Settings.serverpresetLoad": "請點右邊的按鈕",
|
||||
"components.Settings.toastPlexRefreshSuccess": "獲取 Plex 伺服器列表成功!",
|
||||
"components.Settings.toastPlexRefreshFailure": "獲取 Plex 伺服器列表失敗。",
|
||||
@@ -713,11 +712,6 @@
|
||||
"components.Settings.Notifications.NotificationsWebPush.webpushsettingsfailed": "網路推送通知設定儲存失敗。",
|
||||
"components.UserProfile.UserSettings.UserGeneralSettings.applanguage": "顯示語言",
|
||||
"components.Settings.Notifications.NotificationsWebPush.agentenabled": "啟用通知",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsSaved": "LunaSea 通知設定儲存成功!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.settingsFailed": "LunaSea 通知設定儲存失敗。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrl": "Webhook 網址",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationWebhookUrl": "請輸入有效的網址",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.agentenabled": "啟用通知",
|
||||
"components.Settings.is4k": "4K",
|
||||
"components.Settings.Notifications.toastEmailTestSuccess": "電子郵件測試通知已發送!",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestSuccess": "網路推送測試通知已發送!",
|
||||
@@ -726,10 +720,7 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSuccess": "Slack 測試通知已發送!",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSuccess": "Pushover 測試通知已發送!",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSuccess": "Pushbullet 測試通知已發送!",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSuccess": "LunaSea 測試通知已發送!",
|
||||
"components.Settings.noDefault4kServer": "您必須指定一個 4K {serverType} 伺服器為預設,才能處理 4K 的{mediaType}請求。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileNameTip": "不使用 <code>default</code> 預設設定檔才必須輸入",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.profileName": "設定檔名稱",
|
||||
"components.Settings.Notifications.toastTelegramTestSending": "發送 Telegram 測試通知中…",
|
||||
"components.Settings.Notifications.toastEmailTestSending": "發送電子郵件測試通知中…",
|
||||
"components.Settings.Notifications.toastDiscordTestSending": "發送 Discord 測試通知中…",
|
||||
@@ -738,7 +729,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestSending": "發送 Slack 測試通知中…",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestSending": "發送 Pushover 測試通知中…",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestSending": "發送 Pushbullet 測試通知中…",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestSending": "發送 LunaSea 測試通知中…",
|
||||
"components.Settings.Notifications.NotificationsWebPush.toastWebPushTestFailed": "網路推送測試通知發送失敗。",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestFailed": "Webhook 測試通知發送失敗。",
|
||||
"components.Settings.Notifications.toastEmailTestFailed": "電子郵件測試通知發送失敗。",
|
||||
@@ -747,7 +737,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.toastSlackTestFailed": "Slack 測試通知發送失敗。",
|
||||
"components.Settings.Notifications.NotificationsPushover.toastPushoverTestFailed": "Pushover 測試通知發送失敗。",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.toastPushbulletTestFailed": "Pushbullet 測試通知發送失敗。",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.toastLunaSeaTestFailed": "LunaSea 測試通知發送失敗。",
|
||||
"components.Settings.Notifications.NotificationsWebhook.toastWebhookTestSuccess": "Webhook 測試通知已發送!",
|
||||
"components.Settings.SettingsUsers.newPlexLoginTip": "讓還沒匯入的 Plex 使用者登入",
|
||||
"components.Settings.SettingsUsers.newPlexLogin": "允許新的 Plex 登入",
|
||||
@@ -767,7 +756,6 @@
|
||||
"components.Settings.Notifications.NotificationsPushbullet.accessTokenTip": "從您的<PushbulletSettingsLink>帳號設定</PushbulletSettingsLink>取得 API 令牌",
|
||||
"components.Settings.Notifications.NotificationsPushover.accessTokenTip": "建立一個 Jellyseerr 專用的<ApplicationRegistrationLink>應用程式</ApplicationRegistrationLink>",
|
||||
"components.Settings.Notifications.NotificationsSlack.webhookUrlTip": "創建一個「<WebhookLink>Incoming Webhook</WebhookLink>」整合",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.webhookUrlTip": "使用者或設備通知的 <LunaSeaLink>webhook 網址</LunaSeaLink>",
|
||||
"components.Settings.Notifications.webhookUrlTip": "在您的伺服器裡建立一個 <DiscordWebhookLink>webhook</DiscordWebhookLink>",
|
||||
"components.Settings.Notifications.botApiTip": "建立一個 Jellyseerr 專用的<CreateBotLink>機器人</CreateBotLink>",
|
||||
"components.Settings.Notifications.chatIdTip": "先與您的機器人建立一個聊天室以及把 <GetIdBotLink>@get_id_bot</GetIdBotLink> 也加到聊天室,然後在聊天室裡發出 <code>/my_id</code> 命令",
|
||||
@@ -789,7 +777,6 @@
|
||||
"components.Settings.Notifications.NotificationsSlack.validationTypes": "請選擇通知類型",
|
||||
"components.Settings.Notifications.NotificationsPushover.validationTypes": "請選擇通知類型",
|
||||
"components.Settings.Notifications.NotificationsPushbullet.validationTypes": "請選擇通知類型",
|
||||
"components.Settings.Notifications.NotificationsLunaSea.validationTypes": "請選擇通知類型",
|
||||
"components.NotificationTypeSelector.usermediarequestedDescription": "當其他使用者提出需要管理員批准的請求時取得通知。",
|
||||
"components.NotificationTypeSelector.usermediafailedDescription": "當 Radarr 或 Sonarr 處理請求失敗時取得通知。",
|
||||
"components.NotificationTypeSelector.usermediadeclinedDescription": "當您的請求被拒絕時取得通知。",
|
||||
|
||||
Reference in New Issue
Block a user