Merge branch 'master' into enhancement/noid/IURLGenerator-linkToDefaultPageUrl

This commit is contained in:
Daniel Rudolf 2021-08-04 18:52:55 +02:00
commit aa455e71d9
No known key found for this signature in database
GPG key ID: A061F02CD8DE4538
1412 changed files with 51558 additions and 21194 deletions

View file

@ -739,7 +739,7 @@ steps:
commands:
- git submodule update --init
- name: integration-capabilities_features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -764,7 +764,7 @@ steps:
commands:
- git submodule update --init
- name: integration-collaboration_features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -789,7 +789,7 @@ steps:
commands:
- git submodule update --init
- name: integration-federation_features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin
@ -814,7 +814,7 @@ steps:
commands:
- git submodule update --init
- name: integration-auth
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -839,7 +839,7 @@ steps:
commands:
- git submodule update --init
- name: integration-avatar
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -864,7 +864,7 @@ steps:
commands:
- git submodule update --init
- name: integration-maintenance-mode
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -889,7 +889,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ratelimiting
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -924,7 +924,7 @@ steps:
commands:
- git submodule update --init
- name: integration-carddav
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -949,7 +949,7 @@ steps:
commands:
- git submodule update --init
- name: integration-dav-v2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -974,7 +974,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ocs-v1
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -999,7 +999,7 @@ steps:
commands:
- git submodule update --init
- name: integration-checksums-v1
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1024,7 +1024,7 @@ steps:
commands:
- git submodule update --init
- name: integration-external-storage
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1049,7 +1049,7 @@ steps:
commands:
- git submodule update --init
- name: integration-provisioning-v1
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1074,7 +1074,7 @@ steps:
commands:
- git submodule update --init
- name: integration-tags
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1099,7 +1099,7 @@ steps:
commands:
- git submodule update --init
- name: integration-caldav
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1124,7 +1124,7 @@ steps:
commands:
- git submodule update --init
- name: integration-comments
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1149,7 +1149,7 @@ steps:
commands:
- git submodule update --init
- name: integration-comments-search
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1174,7 +1174,7 @@ steps:
commands:
- git submodule update --init
- name: integration-contacts-menu
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1199,7 +1199,7 @@ steps:
commands:
- git submodule update --init
- name: integration-favorites
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1224,7 +1224,7 @@ steps:
commands:
- git submodule update --init
- name: integration-provisioning-v2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1249,7 +1249,7 @@ steps:
commands:
- git submodule update --init
- name: integration-webdav-related
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1274,7 +1274,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharees-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1299,7 +1299,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharees-v2-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1324,7 +1324,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharing-v1
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1349,7 +1349,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharing-v1-part2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1374,7 +1374,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharing-v1-part3
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1405,7 +1405,7 @@ steps:
# build them.
- git clone --depth 1 https://github.com/nextcloud/spreed apps/spreed
- name: integration-sharing-v1-video-verification
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1430,7 +1430,7 @@ steps:
commands:
- git submodule update --init
- name: integration-setup-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- cd build/integration
@ -1454,7 +1454,7 @@ steps:
commands:
- git submodule update --init
- name: integration-filesdrop-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1479,7 +1479,7 @@ steps:
commands:
- git submodule update --init
- name: integration-transfer-ownership-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1504,7 +1504,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ldap-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1529,7 +1529,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ldap-openldap-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1570,7 +1570,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ldap-openldap-uid-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1612,7 +1612,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ldap-openldap-numerical-id-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1653,7 +1653,7 @@ steps:
commands:
- git submodule update --init
- name: integration-trashbin
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1678,7 +1678,7 @@ steps:
commands:
- git submodule update --init
- name: integration-remote-api
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -1703,7 +1703,7 @@ steps:
commands:
- git submodule update --init
- name: integration-download
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@ -2117,6 +2117,15 @@ kind: pipeline
name: object-store-s3
steps:
- name: minio
image: ghcr.io/nextcloud/continuous-integration-minio:latest
detach: true
commands:
- mkdir /s3data
- minio server /s3data
environment:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: nextcloud
- name: submodules
image: ghcr.io/nextcloud/continuous-integration-alpine-git:latest
commands:
@ -2124,6 +2133,7 @@ steps:
- name: object-store
image: ghcr.io/nextcloud/continuous-integration-php7.4:php7.4-3
environment:
OBJECT_STORE: s3
CODECOV_TOKEN:
from_secret: CODECOV_TOKEN
commands:
@ -2133,10 +2143,6 @@ steps:
- wget https://codecov.io/bash -O codecov.sh
- bash codecov.sh -C $DRONE_COMMIT -f tests/autotest-clover-sqlite.xml
services:
- name: fake-s3
image: ghcr.io/nextcloud/continuous-integration-fake-s3:latest
trigger:
branch:
- master
@ -2157,6 +2163,7 @@ steps:
- name: object-store
image: ghcr.io/nextcloud/continuous-integration-php7.4:php7.4-3
environment:
OBJECT_STORE: azure
CODECOV_TOKEN:
from_secret: CODECOV_TOKEN
commands:

View file

@ -13,5 +13,8 @@ module.exports = {
extends: ['@nextcloud'],
rules: {
'no-tabs': 'warn',
}
// TODO: make sure we fix this as this is bad vue coding style.
// Use proper sync modifier
'vue/no-mutating-props': 'warn',
},
}

105
.github/workflows/command-compile.yml vendored Normal file
View file

@ -0,0 +1,105 @@
name: Compile Command
on:
issue_comment:
types: [created]
jobs:
compile:
runs-on: ubuntu-latest
# On pull requests and if the comment starts with `/compile`
if: github.event.issue.pull_request != '' && startsWith(github.event.comment.body, '/compile')
steps:
- name: Add reaction on start
uses: peter-evans/create-or-update-comment@v1
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reaction-type: "+1"
- name: Init arguments
# Init arguments
run: |
command="${{ github.event.comment.body }}"
arguments=($command)
echo "arg1=${arguments[1]}" >> "$GITHUB_ENV"
echo "arg2=${arguments[2]}" >> "$GITHUB_ENV"
- name: Init path
# Init path depending on which command is run
run: |
if ${{ startsWith(env.arg1, '/') }}; then
echo "git_path=${{ github.workspace }}${{env.arg1}}" >> "$GITHUB_ENV"
else
echo "git_path=${{ github.workspace }}${{env.arg2}}" >> "$GITHUB_ENV"
fi
- name: Init branch
uses: xt0rted/pull-request-comment-branch@v1
id: comment-branch
- name: Checkout
uses: actions/checkout@v2
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
fetch-depth: 0
ref: ${{ steps.comment-branch.outputs.head_ref }}
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@v1
id: package-engines-versions
with:
fallbackNode: '^12'
fallbackNpm: '^6'
- name: Set up node ${{ steps.package-engines-versions.outputs.nodeVersion }}
uses: actions/setup-node@v2
with:
node-version: ${{ steps.package-engines-versions.outputs.nodeVersion }}
cache: npm
- name: Set up npm ${{ steps.package-engines-versions.outputs.npmVersion }}
run: npm i -g npm@"${{ steps.package-engines-versions.outputs.npmVersion }}"
- name: Install dependencies & build
run: |
npm ci
npm run build --if-present
- name: Setup git
run: |
git config --local user.email "npmbuildbot-nextcloud[bot]@users.noreply.github.com"
git config --local user.name "npmbuildbot-nextcloud[bot]"
- name: Commit and push default
# If the first argument starts with a /
if: ${{ startsWith(env.arg1, '/') }}
run: |
git add ${{ env.git_path }}
git commit --signoff -m 'Compile assets'
git push origin ${{ env.ref }}
- name: Commit and push fixup
if: ${{ env.arg1 == 'fixup' }}
run: |
git add ${{ env.git_path }}
git commit --fixup=HEAD --signoff
git push origin ${{ env.ref }}
- name: Commit and push amend
if: ${{ env.arg1 == 'amend' }}
run: |
git add ${{ env.git_path }}
git commit --amend --no-edit --signoff
git push --force origin ${{ env.ref }}
- name: Add reaction on failure
uses: peter-evans/create-or-update-comment@v1
if: failure()
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reaction-type: "-1"

View file

@ -3,24 +3,24 @@
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Rebase command
on:
issue_comment:
types: [ created ]
name: Automatic Rebase
types: created
jobs:
rebase:
name: Rebase
runs-on: ubuntu-latest
# On pull requests and if the comment starts with `/rebase`
if: github.event.issue.pull_request != '' && startsWith(github.event.comment.body, '/rebase')
runs-on: ubuntu-latest
steps:
- name: Add reaction on start
uses: peter-evans/create-or-update-comment@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reaction-type: "+1"
@ -29,8 +29,18 @@ jobs:
uses: actions/checkout@v2
with:
fetch-depth: 0
token: ${{ secrets.COMMAND_BOT_PAT }}
- name: Automatic Rebase
uses: cirrus-actions/rebase@1.5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.COMMAND_BOT_PAT }}
- name: Add reaction on failure
uses: peter-evans/create-or-update-comment@v1
if: failure()
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
repository: ${{ github.event.repository.full_name }}
comment-id: ${{ github.event.comment.id }}
reaction-type: "-1"

View file

@ -7,23 +7,23 @@ name: Dependabot
on:
pull_request_target:
branches:
branches:
- master
- stable*
jobs:
auto-merge:
auto-approve-merge:
if: github.actor == 'dependabot[bot]'
runs-on: ubuntu-latest
steps:
# Default github action approve
- uses: hmarr/auto-approve-action@v2.0.0
if: github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]'
# Github actions bot approve
- uses: hmarr/auto-approve-action@v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
# Nextcloud bot approve and merge request
- uses: ahmadnassri/action-dependabot-auto-merge@v1
if: github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]'
- uses: ahmadnassri/action-dependabot-auto-merge@v2
with:
target: minor
github-token: ${{ secrets.DEPENDABOT_AUTOMERGE_TOKEN }}

View file

@ -1,12 +1,20 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Pull request checks
on: pull_request
jobs:
commit-message-check:
name: Block fixup and squash commits
runs-on: ubuntu-latest
steps:
- name: Run check
uses: xt0rted/block-autosquash-commits-action@main
uses: xt0rted/block-autosquash-commits-action@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

44
.github/workflows/lint-eslint.yml vendored Normal file
View file

@ -0,0 +1,44 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Lint
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
lint:
runs-on: ubuntu-latest
name: eslint
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@v1.1
id: versions
with:
fallbackNode: '^12'
fallbackNpm: '^6'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@v2
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run lint

View file

@ -40,25 +40,3 @@ jobs:
composer run cs:check -- --format=checkstyle | cs2pr
composer run cs:check || ( echo 'Please run `composer run cs:fix` to format your code' && exit 1 )
shell: bash
node:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [12.x]
name: eslint node${{ matrix.node-version }}
steps:
- uses: actions/checkout@v2
- name: Set up node ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run lint

91
.github/workflows/node-tests.yml vendored Normal file
View file

@ -0,0 +1,91 @@
name: Node
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
versions:
runs-on: ubuntu-latest
outputs:
nodeVersion: ${{ steps.versions.outputs.nodeVersion }}
npmVersion: ${{ steps.versions.outputs.npmVersion }}
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@v1.1
id: versions
with:
fallbackNode: '^12'
fallbackNpm: '^6'
test:
runs-on: ubuntu-latest
needs: versions
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@v2
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Test
run: npm run test
jsunit:
runs-on: ubuntu-latest
needs: versions
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@v2
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
# This test requires npm6 for some reason
# TODO: fix this and/or move away from jsunit
- name: Set up npm 6
run: npm i -g npm@^6
- name: Test
run: ./autotest-js.sh
handlebars:
runs-on: ubuntu-latest
needs: versions
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@v2
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Run compile
run: ./build/compile-handlebars-templates.sh

View file

@ -1,3 +1,8 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Node
on:
@ -9,71 +14,39 @@ on:
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [12.x]
name: node
steps:
- uses: actions/checkout@v2
- name: Use node ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies & build
run: |
make clean
npm ci
npm run build --if-present
- name: Check webpack build changes
run: |
bash -c "[[ ! \"`git status --porcelain `\" ]] || ( echo 'Uncommited changes in webpack build' && git status && exit 1 )"
env:
CI: true
- name: Checkout
uses: actions/checkout@v2
test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [12.x]
steps:
- uses: actions/checkout@v2
- name: Use node ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
run: |
npm ci
- name: Test
run: npm run test
jsunit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Use node ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Test
run: ./autotest-js.sh
handlebars:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [12.x]
steps:
- uses: actions/checkout@v2
- name: Use node ${{ matrix.node-version }}
uses: actions/setup-node@v1
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@v1.1
id: versions
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
fallbackNode: '^12'
fallbackNpm: '^6'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@v2
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
- name: Install dependencies & build
run: |
npm ci
- name: Run compile
run: ./build/compile-handlebars-templates.sh
npm run build --if-present
- name: Check webpack build changes
run: |
bash -c "[[ ! \"`git status --porcelain `\" ]] || exit 1"
- name: Show changes on failure
if: failure()
run: |
git status
git --no-pager diff

View file

@ -32,7 +32,7 @@ jobs:
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
with:
token: ${{ secrets.MACHINE_USER_PAT }}
token: ${{ secrets.COMMAND_BOT_PAT }}
push-to-fork: nextcloud-pr-bot/server
commit-message: Update psalm baseline
committer: GitHub <noreply@github.com>

View file

@ -39,7 +39,7 @@
</IfModule>
# Add cache control for static resources
<FilesMatch "\.(css|js|svg|gif)$">
<FilesMatch "\.(css|js|svg|gif|png|jpg|ico)$">
Header set Cache-Control "max-age=15778463"
</FilesMatch>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -9,8 +9,11 @@ OC.L10N.register(
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Modo de alto contraste para facilitar tu navegación. La calidad visual puede ser menor pero incrementa la claridad.",
"Dyslexia font" : "Fuente para dislexia",
"Enable dyslexia font" : "Habilitar fuente para dislexia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic es una tipografía/fuente diseñada para mitigar algunos de los errores comunes de lectura causados por dislexia.",
"Accessibility" : "Accesibilidad",
"Accessibility options for nextcloud" : "Opciones de accesibilidad para nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Provee múltiples opciones de accesibilidad para facilitar su uso de Nextcloud"
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Provee múltiples opciones de accesibilidad para facilitar tu uso de Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "El acceso universal es muy importante para nosotros. Seguimos los estándares web y verificamos que todo sea utilizable inclusive sin ratón, y con software de asistencia como lectores de pantalla. Buscamos cumplir con las {guidelines}Guías de Accesibilidad de Contenido Web{linkend} 2.1 sobre nivel AA, incluso sobre nivel AAA para el tema de alto contraste.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Si encuentras cualquier problema, no dudes en reportarlo en {issuetracker}nuestra lista de errores{linkend}. Y si deseas involucrarte, ¡únete a {designteam}nuestro equipo de diseño{linkend}!"
},
"nplurals=2; plural=(n != 1);");

View file

@ -7,8 +7,11 @@
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Modo de alto contraste para facilitar tu navegación. La calidad visual puede ser menor pero incrementa la claridad.",
"Dyslexia font" : "Fuente para dislexia",
"Enable dyslexia font" : "Habilitar fuente para dislexia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic es una tipografía/fuente diseñada para mitigar algunos de los errores comunes de lectura causados por dislexia.",
"Accessibility" : "Accesibilidad",
"Accessibility options for nextcloud" : "Opciones de accesibilidad para nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Provee múltiples opciones de accesibilidad para facilitar su uso de Nextcloud"
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Provee múltiples opciones de accesibilidad para facilitar tu uso de Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "El acceso universal es muy importante para nosotros. Seguimos los estándares web y verificamos que todo sea utilizable inclusive sin ratón, y con software de asistencia como lectores de pantalla. Buscamos cumplir con las {guidelines}Guías de Accesibilidad de Contenido Web{linkend} 2.1 sobre nivel AA, incluso sobre nivel AAA para el tema de alto contraste.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Si encuentras cualquier problema, no dudes en reportarlo en {issuetracker}nuestra lista de errores{linkend}. Y si deseas involucrarte, ¡únete a {designteam}nuestro equipo de diseño{linkend}!"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -3,17 +3,17 @@ OC.L10N.register(
{
"Dark theme" : "Gai iluna",
"Enable dark theme" : "Gaitu gai iluna",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Arindu begietako kaltea gai ilunaz argitasuna eta distira murriztuz. Garapenean dagoen aukera da, beraz aurkitu zenezakeen edozein arazoren berri eman.",
"High contrast mode" : "Kontraste altuko modua",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Arindu begietako kaltea gai ilunaz argitasuna eta distira murriztuz. Garapenean dagoen aukera da, beraz, eman aurkitu zenezakeen edozein arazoren berri mesedez.",
"High contrast mode" : "Kontraste handiko modua",
"Enable high contrast mode" : "Gaitu kontraste handiko modua",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Kontraste altuko modua zuri nabigazioa errazteko. Kalitate bisuala murriztuko da baina argitasuna handiagotu.",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Kontraste handiko modua zuri nabigazioa errazteko. Kalitate bisuala murriztuko da baina argitasuna handiagotu.",
"Dyslexia font" : "Dislexia letra-tipoa",
"Enable dyslexia font" : "Gaitu dislexia letra-tipoa",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic letra-tipo librea da dislexiak eragindako ohiko irakurketa akats batzuk leuntzeko diseinatua.",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic letra-tipo librea da, dislexiak eragindako ohiko irakurketa akats batzuk leuntzeko diseinatua.",
"Accessibility" : "Erabilerraztasuna",
"Accessibility options for nextcloud" : "Erabilerraztasun aukerak nextcloudentzat",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Nextcloud-en erabilera errazteko hainbat aukera eskaintzen ditu.",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Sarbide unibertsala oso garrantzitsua da guretzat. Web estadandarrak jarraitu eta sagu gabeko erabiltasuna egiaztatzen ditugu, pantaila-irakurle moduko software laguntzaileak barne. Helburu bezala jartzen dugu {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 AA mailan betetzea, kontraste altuko modua AAA mailaraino lortuz.",
"Accessibility options for nextcloud" : "Erabilerraztasun aukerak Nextcloudentzat",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Nextclouden erabilera errazteko hainbat aukera eskaintzen ditu.",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Sarbide unibertsala izatea oso garrantzitsua da guretzat. Web estadandarrak jarraitu eta guztia sagurik gabe erabili ahal izatea bermatzen dugu, pantaila-irakurle moduko software laguntzaileak barne. Helburu bezala jartzen dugu {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 AA mailan betetzea, kontraste altuko modua AAA mailaraino betez.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Arazorik aurkitzen baduzu, bidali ezazu lasai {issuetracker}gure arazo-kontrolatzailera{linkend}. Eta parte hartu nahi baduzu, elkartu zaitez gurekin {designteam}gure diseinu taldera{linkend}!"
},
"nplurals=2; plural=(n != 1);");

View file

@ -1,17 +1,17 @@
{ "translations": {
"Dark theme" : "Gai iluna",
"Enable dark theme" : "Gaitu gai iluna",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Arindu begietako kaltea gai ilunaz argitasuna eta distira murriztuz. Garapenean dagoen aukera da, beraz aurkitu zenezakeen edozein arazoren berri eman.",
"High contrast mode" : "Kontraste altuko modua",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Arindu begietako kaltea gai ilunaz argitasuna eta distira murriztuz. Garapenean dagoen aukera da, beraz, eman aurkitu zenezakeen edozein arazoren berri mesedez.",
"High contrast mode" : "Kontraste handiko modua",
"Enable high contrast mode" : "Gaitu kontraste handiko modua",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Kontraste altuko modua zuri nabigazioa errazteko. Kalitate bisuala murriztuko da baina argitasuna handiagotu.",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Kontraste handiko modua zuri nabigazioa errazteko. Kalitate bisuala murriztuko da baina argitasuna handiagotu.",
"Dyslexia font" : "Dislexia letra-tipoa",
"Enable dyslexia font" : "Gaitu dislexia letra-tipoa",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic letra-tipo librea da dislexiak eragindako ohiko irakurketa akats batzuk leuntzeko diseinatua.",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic letra-tipo librea da, dislexiak eragindako ohiko irakurketa akats batzuk leuntzeko diseinatua.",
"Accessibility" : "Erabilerraztasuna",
"Accessibility options for nextcloud" : "Erabilerraztasun aukerak nextcloudentzat",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Nextcloud-en erabilera errazteko hainbat aukera eskaintzen ditu.",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Sarbide unibertsala oso garrantzitsua da guretzat. Web estadandarrak jarraitu eta sagu gabeko erabiltasuna egiaztatzen ditugu, pantaila-irakurle moduko software laguntzaileak barne. Helburu bezala jartzen dugu {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 AA mailan betetzea, kontraste altuko modua AAA mailaraino lortuz.",
"Accessibility options for nextcloud" : "Erabilerraztasun aukerak Nextcloudentzat",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Nextclouden erabilera errazteko hainbat aukera eskaintzen ditu.",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Sarbide unibertsala izatea oso garrantzitsua da guretzat. Web estadandarrak jarraitu eta guztia sagurik gabe erabili ahal izatea bermatzen dugu, pantaila-irakurle moduko software laguntzaileak barne. Helburu bezala jartzen dugu {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 AA mailan betetzea, kontraste altuko modua AAA mailaraino betez.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Arazorik aurkitzen baduzu, bidali ezazu lasai {issuetracker}gure arazo-kontrolatzailera{linkend}. Eta parte hartu nahi baduzu, elkartu zaitez gurekin {designteam}gure diseinu taldera{linkend}!"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -3,7 +3,7 @@ OC.L10N.register(
{
"Dark theme" : "Thème sombre",
"Enable dark theme" : "Activer le thème sombre",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Un thème sombre pour soulager vos yeux en réduisant la luminosité et léclat général. Il est encore en cours de développement, veuillez donc nous signaler les problèmes que vous pourriez rencontrer.",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Un thème sombre pour soulager vos yeux en réduisant la luminosité générale. Il est encore en cours de développement, veuillez donc nous signaler les problèmes que vous pourriez rencontrer.",
"High contrast mode" : "Thème à contraste élevé",
"Enable high contrast mode" : "Activer le thème à contraste élevé",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Un thème au contraste élevé pour faciliter votre navigation. La qualité visuelle sera réduite, mais la clarté sera améliorée.",

View file

@ -1,7 +1,7 @@
{ "translations": {
"Dark theme" : "Thème sombre",
"Enable dark theme" : "Activer le thème sombre",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Un thème sombre pour soulager vos yeux en réduisant la luminosité et léclat général. Il est encore en cours de développement, veuillez donc nous signaler les problèmes que vous pourriez rencontrer.",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Un thème sombre pour soulager vos yeux en réduisant la luminosité générale. Il est encore en cours de développement, veuillez donc nous signaler les problèmes que vous pourriez rencontrer.",
"High contrast mode" : "Thème à contraste élevé",
"Enable high contrast mode" : "Activer le thème à contraste élevé",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Un thème au contraste élevé pour faciliter votre navigation. La qualité visuelle sera réduite, mais la clarté sera améliorée.",

View file

@ -2,7 +2,7 @@ OC.L10N.register(
"accessibility",
{
"Dark theme" : "Tema escuro",
"Enable dark theme" : "Ativar tema escuro",
"Enable dark theme" : "Enable dark theme",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Um tema escuro para aliviar os olhos, reduzindo a luminosidade e brilho geral. Ainda está em desenvolvimento, por isso, informe qualquer problema encontrado.",
"High contrast mode" : "Modo de alto contraste",
"Enable high contrast mode" : "Ativar modo de alto contraste",

View file

@ -1,6 +1,6 @@
{ "translations": {
"Dark theme" : "Tema escuro",
"Enable dark theme" : "Ativar tema escuro",
"Enable dark theme" : "Enable dark theme",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Um tema escuro para aliviar os olhos, reduzindo a luminosidade e brilho geral. Ainda está em desenvolvimento, por isso, informe qualquer problema encontrado.",
"High contrast mode" : "Modo de alto contraste",
"Enable high contrast mode" : "Ativar modo de alto contraste",

View file

@ -78,6 +78,7 @@ class Application extends App implements IBootstrap {
$hash = md5(implode('-', $userValues));
$linkToCSS = $urlGenerator->linkToRoute(self::APP_ID . '.accessibility.getCss', ['md5' => $hash]);
\OCP\Util::addHeader('link', ['rel' => 'stylesheet', 'media' => '(prefers-color-scheme: dark)', 'href' => $linkToCSS]);
\OCP\Util::addScript('accessibility', 'accessibilityoca');
}
}
}

View file

@ -60,6 +60,7 @@ class JSDataService extends InitialStateProvider {
}
return [
'checkMedia' => $user === null,
'theme' => $theme,
'highcontrast' => $highcontrast,
];

View file

@ -29,8 +29,6 @@ use OCA\Accessibility\AccessibilityProvider;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\AppFramework\Services\IInitialState;
use OCP\IConfig;
use OCP\IL10N;
use OCP\IURLGenerator;
use OCP\IUserSession;
use OCP\Settings\ISettings;
use OCP\Util;
@ -46,12 +44,6 @@ class Personal implements ISettings {
/** @var IUserSession */
private $userSession;
/** @var IL10N */
private $l;
/** @var IURLGenerator */
private $urlGenerator;
/** @var AccessibilityProvider */
private $accessibilityProvider;
@ -61,15 +53,11 @@ class Personal implements ISettings {
public function __construct(string $appName,
IConfig $config,
IUserSession $userSession,
IL10N $l,
IURLGenerator $urlGenerator,
AccessibilityProvider $accessibilityProvider,
IInitialState $initialStateService) {
$this->appName = $appName;
$this->config = $config;
$this->userSession = $userSession;
$this->l = $l;
$this->urlGenerator = $urlGenerator;
$this->accessibilityProvider = $accessibilityProvider;
$this->initialStateService = $initialStateService;
}

View file

@ -24,23 +24,27 @@
</template>
<script>
import ItemPreview from './components/ItemPreview'
import axios from '@nextcloud/axios'
import { generateUrl, generateOcsUrl } from '@nextcloud/router'
import { loadState } from '@nextcloud/initial-state'
import axios from '@nextcloud/axios'
import ItemPreview from './components/ItemPreview'
const availableConfig = loadState('accessibility', 'available-config')
const userConfig = loadState('accessibility', 'user-config')
export default {
name: 'Accessibility',
components: { ItemPreview },
props: {
availableConfig: {
type: Object,
required: true,
},
userConfig: {
type: Object,
required: true,
},
components: {
ItemPreview,
},
data() {
return {
availableConfig,
userConfig,
}
},
computed: {
themes() {
return this.availableConfig.themes
@ -121,7 +125,7 @@ export default {
try {
const isDelete = id === ''
await axios({
url: generateOcsUrl('apps/accessibility/api/v1/config', 2) + type,
url: generateOcsUrl('apps/accessibility/api/v1/config/{type}', { type }),
method: isDelete ? 'DELETE' : 'PUT',
data: {
value: id,

View file

@ -24,6 +24,11 @@
import { loadState } from '@nextcloud/initial-state'
OCA.Accessibility = loadState('accessibility', 'data')
if (OCA.Accessibility.checkMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
// Overwrite the theme for Guests based on the prefers-color-scheme
OCA.Accessibility.theme = 'dark'
}
if (OCA.Accessibility.theme !== false) {
document.body.classList.add(`theme--${OCA.Accessibility.theme}`)
} else {

View file

@ -21,21 +21,12 @@
*/
import Vue from 'vue'
import { loadState } from '@nextcloud/initial-state'
import App from './Accessibility.vue'
// bind to window
Vue.prototype.OC = OC
Vue.prototype.t = t
const availableConfig = loadState('accessibility', 'available-config')
const userConfig = loadState('accessibility', 'user-config')
const View = Vue.extend(App)
const accessibility = new View({
propsData: {
availableConfig,
userConfig,
},
})
const accessibility = new View()
accessibility.$mount('#accessibility')

View file

@ -0,0 +1,7 @@
OC.L10N.register(
"admin_audit",
{
"Auditing / Logging" : "Auditoría / Registros",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Habilita las opciones de bitácora de Nextcloud tales como registro de acceso a archivos o de acciones delicadas."
},
"nplurals=2; plural=(n != 1);");

View file

@ -0,0 +1,5 @@
{ "translations": {
"Auditing / Logging" : "Auditoría / Registros",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Habilita las opciones de bitácora de Nextcloud tales como registro de acceso a archivos o de acciones delicadas."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -0,0 +1,7 @@
OC.L10N.register(
"admin_audit",
{
"Auditing / Logging" : "Revisjon / Logging",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Tilbyr logg eigenskapar for Nextcloud, til dømes tilgang til loggfil eller andre følsame handlingar."
},
"nplurals=2; plural=(n != 1);");

View file

@ -0,0 +1,5 @@
{ "translations": {
"Auditing / Logging" : "Revisjon / Logging",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Tilbyr logg eigenskapar for Nextcloud, til dømes tilgang til loggfil eller andre følsame handlingar."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -50,7 +50,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'permissions',
'id',
@ -62,7 +62,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@ -75,7 +75,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@ -88,7 +88,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@ -101,7 +101,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@ -114,7 +114,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@ -127,7 +127,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@ -140,7 +140,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@ -153,7 +153,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',

View file

@ -1,8 +1,8 @@
OC.L10N.register(
"cloud_federation_api",
{
"Cloud Federation API" : "Cloud Federation API",
"Cloud Federation API" : "Cloud-Federation-API",
"Enable clouds to communicate with each other and exchange data" : "Erlaubt es, dass Server miteinander kommunizieren und Daten austauschen",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Die Cloud Federation API ermöglicht es Nextcloud-Instanzen miteinander zu kommunizieren und Daten auszutauschen."
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Die Cloud-Federation-API ermöglicht es Nextcloud-Instanzen miteinander zu kommunizieren und Daten auszutauschen."
},
"nplurals=2; plural=(n != 1);");

View file

@ -1,6 +1,6 @@
{ "translations": {
"Cloud Federation API" : "Cloud Federation API",
"Cloud Federation API" : "Cloud-Federation-API",
"Enable clouds to communicate with each other and exchange data" : "Erlaubt es, dass Server miteinander kommunizieren und Daten austauschen",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Die Cloud Federation API ermöglicht es Nextcloud-Instanzen miteinander zu kommunizieren und Daten auszutauschen."
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Die Cloud-Federation-API ermöglicht es Nextcloud-Instanzen miteinander zu kommunizieren und Daten auszutauschen."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -1,8 +1,8 @@
OC.L10N.register(
"cloud_federation_api",
{
"Cloud Federation API" : "Felhő együttműködési alkalmazás fejlesztői felület",
"Enable clouds to communicate with each other and exchange data" : "Kommunikáció és adatcsere engedélyezése a felhőszolgáltatások között",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A felhő együttműködési alkalmazás fejlesztői felület segítségével a különféle Nextcloud példányok képesek egymás között kommunikálni és adatokat cserélni."
"Cloud Federation API" : "Felhő föderációs API",
"Enable clouds to communicate with each other and exchange data" : "A felhőszolgáltatások egymás közti kommunikációjának és adatcseréjének lehetővé tétele",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A felhő föderációs API segítségével a különféle Nextcloud példányok képesek lesznek egymás között kommunikálni és adatokat cserélni."
},
"nplurals=2; plural=(n != 1);");

View file

@ -1,6 +1,6 @@
{ "translations": {
"Cloud Federation API" : "Felhő együttműködési alkalmazás fejlesztői felület",
"Enable clouds to communicate with each other and exchange data" : "Kommunikáció és adatcsere engedélyezése a felhőszolgáltatások között",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A felhő együttműködési alkalmazás fejlesztői felület segítségével a különféle Nextcloud példányok képesek egymás között kommunikálni és adatokat cserélni."
"Cloud Federation API" : "Felhő föderációs API",
"Enable clouds to communicate with each other and exchange data" : "A felhőszolgáltatások egymás közti kommunikációjának és adatcseréjének lehetővé tétele",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A felhő föderációs API segítségével a különféle Nextcloud példányok képesek lesznek egymás között kommunikálni és adatokat cserélni."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,4 @@
!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/js/",n(n.s=708)}({708:function(e,n){
!function(e){var n={};function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(t.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var o in e)t.d(r,o,function(n){return e[n]}.bind(null,o));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="/js/",t(t.s=626)}({626:function(e,n){function r(e,n,t,r,o,i,u){try{var c=e[i](u),a=c.value}catch(e){return void t(e)}c.done?n(a):Promise.resolve(a).then(r,o)}
/**
* @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>
*
@ -20,5 +20,5 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
let o=null;const r=new OCA.Files.Sidebar.Tab({id:"comments",name:t("comments","Comments"),icon:"icon-comment",async mount(e,t,n){o&&o.$destroy(),o=new OCA.Comments.View("files",{parent:n}),await o.update(t.id),o.$mount(e)},update(e){o.update(e.id)},destroy(){o.$destroy(),o=null},scrollBottomReached(){o.onScrollBottomReached()}});window.addEventListener("DOMContentLoaded",(function(){OCA.Files&&OCA.Files.Sidebar&&OCA.Files.Sidebar.registerTab(r)}))}});
var o=null,i=new OCA.Files.Sidebar.Tab({id:"comments",name:t("comments","Comments"),icon:"icon-comment",mount:function(e,n,t){return(i=regeneratorRuntime.mark((function r(){return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return o&&o.$destroy(),o=new OCA.Comments.View("files",{parent:t}),r.next=4,o.update(n.id);case 4:o.$mount(e);case 5:case"end":return r.stop()}}),r)})),function(){var e=this,n=arguments;return new Promise((function(t,o){var u=i.apply(e,n);function c(e){r(u,t,o,c,a,"next",e)}function a(e){r(u,t,o,c,a,"throw",e)}c(void 0)}))})();var i},update:function(e){o.update(e.id)},destroy:function(){o.$destroy(),o=null},scrollBottomReached:function(){o.onScrollBottomReached()}});window.addEventListener("DOMContentLoaded",(function(){OCA.Files&&OCA.Files.Sidebar&&OCA.Files.Sidebar.registerTab(i)}))}});
//# sourceMappingURL=comments-tab.js.map

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,4 @@
!function(e){var n={};function t(o){if(n[o])return n[o].exports;var i=n[o]={i:o,l:!1,exports:{}};return e[o].call(i.exports,i,i.exports,t),i.l=!0,i.exports}t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:o})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(t.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var i in e)t.d(o,i,function(n){return e[n]}.bind(null,i));return o},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="/js/",t(t.s=431)}({431:function(e,n,t){"use strict";t.r(n);t(432),t(433),t(434),t(435);
!function(e){var n={};function t(o){if(n[o])return n[o].exports;var i=n[o]={i:o,l:!1,exports:{}};return e[o].call(i.exports,i,i.exports,t),i.l=!0,i.exports}t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:o})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(t.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var i in e)t.d(o,i,function(n){return e[n]}.bind(null,i));return o},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="/js/",t(t.s=354)}({354:function(e,n,t){"use strict";t.r(n);t(355),t(356),t(357),t(358);
/**
* @copyright Copyright (c) 2016 Roeland Jago Douma <roeland@famdouma.nl>
*
@ -21,7 +21,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
window.OCA.Comments=OCA.Comments},432:function(e,n){
window.OCA.Comments=OCA.Comments},355:function(e,n){
/**
* Copyright (c) 2016 Vincent Petry <pvince81@owncloud.com>
*
@ -44,5 +44,5 @@ window.OCA.Comments=OCA.Comments},432:function(e,n){
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
OCA.Comments||(OCA.Comments={})},433:function(e,n){var t;t=Handlebars.template,(OCA.Comments.Templates=OCA.Comments.Templates||{}).filesplugin=t({compiler:[8,">= 4.3.0"],main:function(e,n,t,o,i){var s,r=null!=n?n:e.nullContext||{},a=e.hooks.helperMissing,l=e.escapeExpression,m=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'<a class="action action-comment permanent" title="'+l("function"==typeof(s=null!=(s=m(t,"countMessage")||(null!=n?m(n,"countMessage"):n))?s:a)?s.call(r,{name:"countMessage",hash:{},data:i,loc:{start:{line:1,column:50},end:{line:1,column:66}}}):s)+'" href="#">\n\t<img class="svg" src="'+l("function"==typeof(s=null!=(s=m(t,"iconUrl")||(null!=n?m(n,"iconUrl"):n))?s:a)?s.call(r,{name:"iconUrl",hash:{},data:i,loc:{start:{line:2,column:23},end:{line:2,column:34}}}):s)+'"/>\n</a>\n'},useData:!0})},434:function(e,o){_.extend(OC.Files.Client,{PROPERTY_COMMENTS_UNREAD:"{"+OC.Files.Client.NS_OWNCLOUD+"}comments-unread"}),OCA.Comments=_.extend({},OCA.Comments),OCA.Comments||(OCA.Comments={}),OCA.Comments.FilesPlugin={ignoreLists:["trashbin","files.public"],_formatCommentCount:e=>OCA.Comments.Templates.filesplugin({count:e,countMessage:n("comments","%n unread comment","%n unread comments",e),iconUrl:OC.imagePath("core","actions/comment")}),attach(e){const o=this;if(this.ignoreLists.indexOf(e.id)>=0)return;const i=e._getWebdavProperties;e._getWebdavProperties=function(){const e=i.apply(this,arguments);return e.push(OC.Files.Client.PROPERTY_COMMENTS_UNREAD),e},e.filesClient.addFileInfoParser((function(e){const n={},t=e.propStat[0].properties[OC.Files.Client.PROPERTY_COMMENTS_UNREAD];return _.isUndefined(t)||""===t||(n.commentsUnread=parseInt(t,10)),n})),e.$el.addClass("has-comments");const s=e._createRow;e._createRow=function(e){const n=s.apply(this,arguments);return e.commentsUnread&&n.attr("data-comments-unread",e.commentsUnread),n},e.fileActions.registerAction({name:"Comment",displayName(e){if(e&&e.$file){const t=parseInt(e.$file.data("comments-unread"),10);if(t>=0)return n("comments","1 new comment","{unread} new comments",t,{unread:t})}return t("comments","Comment")},mime:"all",order:-140,iconClass:"icon-comment",permissions:OC.PERMISSION_READ,type:OCA.Files.FileActions.TYPE_INLINE,render(e,n,t){const i=t.$file.data("comments-unread");if(i){const e=$(o._formatCommentCount(i));return t.$file.find("a.name>span.fileactions").append(e),e}return""},actionHandler(e,n){n.$file.find(".action-comment").tooltip("hide"),OCA.Files.Sidebar.setActiveTab("comments"),OCA.Files.Sidebar.open("/"+e)}});const r=e.elementToFile;e.elementToFile=function(e){const n=r.apply(this,arguments),t=e.data("comments-unread");return t&&(n.commentsUnread=t),n}}},OC.Plugins.register("OCA.Files.FileList",OCA.Comments.FilesPlugin)},435:function(e,n){OCA.Comments.ActivityTabViewPlugin={prepareModelForDisplay(e,n,t){if("comments"===e.get("app")&&"comments"===e.get("type")&&"ActivityTabView"===t&&(n.addClass("comment"),e.get("message")&&this._isLong(e.get("message")))){n.addClass("collapsed");const e=$("<div>").addClass("message-overlay");n.find(".activitymessage").after(e),n.on("click",this._onClickCollapsedComment)}},_onClickCollapsedComment(e){let n=$(e.target);n.is(".comment")||(n=n.closest(".comment")),n.removeClass("collapsed")},_isLong:e=>e.length>250||(e.match(/\n/g)||[]).length>1},OC.Plugins.register("OCA.Activity.RenderingPlugins",OCA.Comments.ActivityTabViewPlugin)}});
OCA.Comments||(OCA.Comments={})},356:function(e,n){function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o;o=Handlebars.template,(OCA.Comments.Templates=OCA.Comments.Templates||{}).filesplugin=o({compiler:[8,">= 4.3.0"],main:function(e,n,o,i,r){var s,a=null!=n?n:e.nullContext||{},l=e.hooks.helperMissing,m=e.escapeExpression,c=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'<a class="action action-comment permanent" title="'+m("function"===t(s=null!=(s=c(o,"countMessage")||(null!=n?c(n,"countMessage"):n))?s:l)?s.call(a,{name:"countMessage",hash:{},data:r,loc:{start:{line:1,column:50},end:{line:1,column:66}}}):s)+'" href="#">\n\t<img class="svg" src="'+m("function"===t(s=null!=(s=c(o,"iconUrl")||(null!=n?c(n,"iconUrl"):n))?s:l)?s.call(a,{name:"iconUrl",hash:{},data:r,loc:{start:{line:2,column:23},end:{line:2,column:34}}}):s)+'"/>\n</a>\n'},useData:!0})},357:function(e,o){_.extend(OC.Files.Client,{PROPERTY_COMMENTS_UNREAD:"{"+OC.Files.Client.NS_OWNCLOUD+"}comments-unread"}),OCA.Comments=_.extend({},OCA.Comments),OCA.Comments||(OCA.Comments={}),OCA.Comments.FilesPlugin={ignoreLists:["trashbin","files.public"],_formatCommentCount:function(e){return OCA.Comments.Templates.filesplugin({count:e,countMessage:n("comments","%n unread comment","%n unread comments",e),iconUrl:OC.imagePath("core","actions/comment")})},attach:function(e){var o=this;if(!(this.ignoreLists.indexOf(e.id)>=0)){var i=e._getWebdavProperties;e._getWebdavProperties=function(){var e=i.apply(this,arguments);return e.push(OC.Files.Client.PROPERTY_COMMENTS_UNREAD),e},e.filesClient.addFileInfoParser((function(e){var n={},t=e.propStat[0].properties[OC.Files.Client.PROPERTY_COMMENTS_UNREAD];return _.isUndefined(t)||""===t||(n.commentsUnread=parseInt(t,10)),n})),e.$el.addClass("has-comments");var r=e._createRow;e._createRow=function(e){var n=r.apply(this,arguments);return e.commentsUnread&&n.attr("data-comments-unread",e.commentsUnread),n},e.fileActions.registerAction({name:"Comment",displayName:function(e){if(e&&e.$file){var o=parseInt(e.$file.data("comments-unread"),10);if(o>=0)return n("comments","1 new comment","{unread} new comments",o,{unread:o})}return t("comments","Comment")},mime:"all",order:-140,iconClass:"icon-comment",permissions:OC.PERMISSION_READ,type:OCA.Files.FileActions.TYPE_INLINE,render:function(e,n,t){var i=t.$file.data("comments-unread");if(i){var r=$(o._formatCommentCount(i));return t.$file.find("a.name>span.fileactions").append(r),r}return""},actionHandler:function(e,n){n.$file.find(".action-comment").tooltip("hide"),OCA.Files.Sidebar.setActiveTab("comments"),OCA.Files.Sidebar.open(n.dir+"/"+e)}});var s=e.elementToFile;e.elementToFile=function(e){var n=s.apply(this,arguments),t=e.data("comments-unread");return t&&(n.commentsUnread=t),n}}}},OC.Plugins.register("OCA.Files.FileList",OCA.Comments.FilesPlugin)},358:function(e,n){OCA.Comments.ActivityTabViewPlugin={prepareModelForDisplay:function(e,n,t){if("comments"===e.get("app")&&"comments"===e.get("type")&&"ActivityTabView"===t&&(n.addClass("comment"),e.get("message")&&this._isLong(e.get("message")))){n.addClass("collapsed");var o=$("<div>").addClass("message-overlay");n.find(".activitymessage").after(o),n.on("click",this._onClickCollapsedComment)}},_onClickCollapsedComment:function(e){var n=$(e.target);n.is(".comment")||(n=n.closest(".comment")),n.removeClass("collapsed")},_isLong:function(e){return e.length>250||(e.match(/\n/g)||[]).length>1}},OC.Plugins.register("OCA.Activity.RenderingPlugins",OCA.Comments.ActivityTabViewPlugin)}});
//# sourceMappingURL=comments.js.map

File diff suppressed because one or more lines are too long

View file

@ -21,8 +21,8 @@ OC.L10N.register(
"No more messages" : "لامزيد من الرسائل",
"Retry" : "أعد المحاولة",
"Unable to load the comments list" : "تعذر تحميل قائمة التعليقات",
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_" : ["1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_" : ["1 تعليق جديد","1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"Comment" : "تعليق",
"An error occurred while trying to edit the comment" : "حدث خطأ أثناء محاولة تعديل التعليق",
"Comment deleted" : "التعليق حُذف",

View file

@ -19,8 +19,8 @@
"No more messages" : "لامزيد من الرسائل",
"Retry" : "أعد المحاولة",
"Unable to load the comments list" : "تعذر تحميل قائمة التعليقات",
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_" : ["1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_" : ["1 تعليق جديد","1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"Comment" : "تعليق",
"An error occurred while trying to edit the comment" : "حدث خطأ أثناء محاولة تعديل التعليق",
"Comment deleted" : "التعليق حُذف",

View file

@ -20,7 +20,7 @@ OC.L10N.register(
"No comments yet, start the conversation!" : "Még nincsenek hozzászólások, kezdje el a beszélgetést!",
"No more messages" : "Nincs több üzenet",
"Retry" : "Újra",
"Unable to load the comments list" : "A megjegyzések listájának betöltése sikertelen",
"Unable to load the comments list" : "A hozzászólások betöltése sikertelen",
"_%n unread comment_::_%n unread comments_" : ["%n olvasatlan hozzászólás","%n olvasatlan hozzászólás"],
"_1 new comment_::_{unread} new comments_" : ["1 új hozzászólás","{unread} új hozzászólás"],
"Comment" : "Hozzászólás",

View file

@ -18,7 +18,7 @@
"No comments yet, start the conversation!" : "Még nincsenek hozzászólások, kezdje el a beszélgetést!",
"No more messages" : "Nincs több üzenet",
"Retry" : "Újra",
"Unable to load the comments list" : "A megjegyzések listájának betöltése sikertelen",
"Unable to load the comments list" : "A hozzászólások betöltése sikertelen",
"_%n unread comment_::_%n unread comments_" : ["%n olvasatlan hozzászólás","%n olvasatlan hozzászólás"],
"_1 new comment_::_{unread} new comments_" : ["1 új hozzászólás","{unread} új hozzászólás"],
"Comment" : "Hozzászólás",

View file

@ -15,7 +15,7 @@ OC.L10N.register(
"Delete comment" : "Dzēst komentāru",
"No comments yet, start the conversation!" : "Vēl nav komentāru, uzsāciet sarunu!",
"Retry" : "Mēģināt vēlreiz",
"_%n unread comment_::_%n unread comments_" : ["%n nelasīti komentāri","%n nelasīti komentāri"],
"_%n unread comment_::_%n unread comments_" : ["%n nelasīti komentāri","%n nelasīti komentāri","%n nelasīti komentāri"],
"Comment" : "Komentārs",
"New comment …" : "Jauns komentārs...",
"Post" : "Pievienot",

View file

@ -13,7 +13,7 @@
"Delete comment" : "Dzēst komentāru",
"No comments yet, start the conversation!" : "Vēl nav komentāru, uzsāciet sarunu!",
"Retry" : "Mēģināt vēlreiz",
"_%n unread comment_::_%n unread comments_" : ["%n nelasīti komentāri","%n nelasīti komentāri"],
"_%n unread comment_::_%n unread comments_" : ["%n nelasīti komentāri","%n nelasīti komentāri","%n nelasīti komentāri"],
"Comment" : "Komentārs",
"New comment …" : "Jauns komentārs...",
"Post" : "Pievienot",

View file

@ -12,7 +12,7 @@ OC.L10N.register(
"<strong>Comments</strong> for files" : "<strong>Komentáre</strong> pre súbory",
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Boli ste spomenutý v \"{file}\", v komentári používateľom ktorý bol už vymazaný",
"{user} mentioned you in a comment on “{file}”" : "{user} vás spomenul v komentári k “{file}”",
"Files app plugin to add comments to files" : "Plugin súborovej aplikácie ktorý umožňuje pridávať komentáre k súborom",
"Files app plugin to add comments to files" : "Zásuvný modul aplikácie súborov, ktorý umožňuje súborom pridávať komentáre",
"Edit comment" : "Upraviť komentár",
"Delete comment" : "Zmazať komentár",
"Cancel edit" : "Zrušiť upravovanie",

View file

@ -10,7 +10,7 @@
"<strong>Comments</strong> for files" : "<strong>Komentáre</strong> pre súbory",
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Boli ste spomenutý v \"{file}\", v komentári používateľom ktorý bol už vymazaný",
"{user} mentioned you in a comment on “{file}”" : "{user} vás spomenul v komentári k “{file}”",
"Files app plugin to add comments to files" : "Plugin súborovej aplikácie ktorý umožňuje pridávať komentáre k súborom",
"Files app plugin to add comments to files" : "Zásuvný modul aplikácie súborov, ktorý umožňuje súborom pridávať komentáre",
"Edit comment" : "Upraviť komentár",
"Delete comment" : "Zmazať komentár",
"Cancel edit" : "Zrušiť upravovanie",

View file

@ -119,7 +119,7 @@
context.$file.find('.action-comment').tooltip('hide')
// open sidebar in comments section
OCA.Files.Sidebar.setActiveTab('comments')
OCA.Files.Sidebar.open('/' + fileName)
OCA.Files.Sidebar.open(context.dir + '/' + fileName)
},
})

View file

@ -221,7 +221,7 @@ export default {
* @param {Function} callback the callback to process the results with
*/
async autoComplete(search, callback) {
const results = await axios.get(generateOcsUrl('core', 2) + 'autocomplete/get', {
const results = await axios.get(generateOcsUrl('core/autocomplete/get'), {
params: {
search,
itemType: 'files',

View file

@ -89,7 +89,7 @@ describe('OCA.Comments.FilesPlugin tests', function() {
expect(sidebarTabStub.calledOnce).toEqual(true);
expect(sidebarTabStub.lastCall.args[0]).toEqual('comments');
expect(sidebarStub.calledOnce).toEqual(true);
expect(sidebarStub.lastCall.args[0]).toEqual('/One.txt');
expect(sidebarStub.lastCall.args[0]).toEqual('/subdir/One.txt');
});
});
describe('elementToFile', function() {

View file

@ -4,6 +4,6 @@ OC.L10N.register(
"Recently contacted" : "Legutóbbi kapcsolatfelvételek",
"Contacts Interaction" : "Kapcsolatfelvételek",
"Manages interaction between users and contacts" : "A felhasználók és a kapcsolataik közötti interakciót kezeli",
"Collect data about user and contacts interactions and provide an address book for the data" : "Adatokat gyűjt a felhasználók és kapcsolataik között interakciókról, és címjegyzéket biztosít az adatokhoz"
"Collect data about user and contacts interactions and provide an address book for the data" : "Adatokat gyűjt a felhasználók és kapcsolataik közötti interakciókról, és címjegyzéket biztosít az adatokhoz"
},
"nplurals=2; plural=(n != 1);");

View file

@ -2,6 +2,6 @@
"Recently contacted" : "Legutóbbi kapcsolatfelvételek",
"Contacts Interaction" : "Kapcsolatfelvételek",
"Manages interaction between users and contacts" : "A felhasználók és a kapcsolataik közötti interakciót kezeli",
"Collect data about user and contacts interactions and provide an address book for the data" : "Adatokat gyűjt a felhasználók és kapcsolataik között interakciókról, és címjegyzéket biztosít az adatokhoz"
"Collect data about user and contacts interactions and provide an address book for the data" : "Adatokat gyűjt a felhasználók és kapcsolataik közötti interakciókról, és címjegyzéket biztosít az adatokhoz"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -6,6 +6,7 @@ OC.L10N.register(
"Show something" : "Montre quelque chose",
"Customize" : "Personnaliser",
"Edit widgets" : "Modifier les widgets",
"Get more widgets from the App Store" : "Obtenez plus de widgets depuis l'App Store",
"Change background image" : "Modifier limage d'arrière-plan",
"Weather service" : "Service météo",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information." : "Pour votre vie privée, les données météorologiques sont demandées par votre serveur Nextcloud en votre nom afin que le service météo ne reçoive aucune information personnelle.",

View file

@ -4,6 +4,7 @@
"Show something" : "Montre quelque chose",
"Customize" : "Personnaliser",
"Edit widgets" : "Modifier les widgets",
"Get more widgets from the App Store" : "Obtenez plus de widgets depuis l'App Store",
"Change background image" : "Modifier limage d'arrière-plan",
"Weather service" : "Service météo",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information." : "Pour votre vie privée, les données météorologiques sont demandées par votre serveur Nextcloud en votre nom afin que le service météo ne reçoive aucune information personnelle.",

View file

@ -2,18 +2,32 @@ OC.L10N.register(
"dashboard",
{
"Dashboard" : "Informačný panel",
"Dashboard app" : "Applikácia Informačný panel",
"Show something" : "Ukáž niečo",
"Customize" : "Prispôsobiť",
"Edit widgets" : "Upraviť miniaplikácie",
"Get more widgets from the App Store" : "Získať viac miniaplikácií z Obchodu s aplikáciami",
"Change background image" : "Zmeniť obrázok pozadia",
"Weather service" : "Služba počasie",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information." : "V záujme vášho súkromia údaje o počasí vyžaduje váš server Nextcloud vo vašom mene, aby meteorologická služba nedostávala žiadne osobné informácie.",
"Weather data from Met.no" : "Dáta počasia z Met.no",
"geocoding with Nominatim" : "geokódovanie pomocou Nominatim",
"elevation data from OpenTopoData" : "dáta o nadmorskej výške z OpenTopoData",
"Weather" : "Počasie",
"Status" : "Stav",
"Good morning" : "Dobré ráno",
"Good morning, {name}" : "Dobré ráno, {name}",
"Good afternoon" : "Dobrý večer",
"Good afternoon, {name}" : "Dobrý večer, {name}",
"Good evening" : "Dobrý večer",
"Good evening, {name}" : "Dobrý večer, {name}",
"Hello" : "Ahoj",
"Hello, {name}" : "Ahoj, {name}",
"Pick from Files" : "Vybrať zo súborov",
"Default images" : "Predvolené obrázky",
"Plain background" : "Obyčajné pozadie",
"Insert from {productName}" : "Vložiť z {productName}",
"Get more widgets from the app store" : "Získať viac miniaplikácií z Obchodu s aplikáciami",
"Good night, {name}" : "Dobrý večer, {name}",
"Good night" : "Dobrý večer",
"Pick from files" : "Vybrať zo súborov"

View file

@ -1,17 +1,31 @@
{ "translations": {
"Dashboard" : "Informačný panel",
"Dashboard app" : "Applikácia Informačný panel",
"Show something" : "Ukáž niečo",
"Customize" : "Prispôsobiť",
"Edit widgets" : "Upraviť miniaplikácie",
"Get more widgets from the App Store" : "Získať viac miniaplikácií z Obchodu s aplikáciami",
"Change background image" : "Zmeniť obrázok pozadia",
"Weather service" : "Služba počasie",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information." : "V záujme vášho súkromia údaje o počasí vyžaduje váš server Nextcloud vo vašom mene, aby meteorologická služba nedostávala žiadne osobné informácie.",
"Weather data from Met.no" : "Dáta počasia z Met.no",
"geocoding with Nominatim" : "geokódovanie pomocou Nominatim",
"elevation data from OpenTopoData" : "dáta o nadmorskej výške z OpenTopoData",
"Weather" : "Počasie",
"Status" : "Stav",
"Good morning" : "Dobré ráno",
"Good morning, {name}" : "Dobré ráno, {name}",
"Good afternoon" : "Dobrý večer",
"Good afternoon, {name}" : "Dobrý večer, {name}",
"Good evening" : "Dobrý večer",
"Good evening, {name}" : "Dobrý večer, {name}",
"Hello" : "Ahoj",
"Hello, {name}" : "Ahoj, {name}",
"Pick from Files" : "Vybrať zo súborov",
"Default images" : "Predvolené obrázky",
"Plain background" : "Obyčajné pozadie",
"Insert from {productName}" : "Vložiť z {productName}",
"Get more widgets from the app store" : "Získať viac miniaplikácií z Obchodu s aplikáciami",
"Good night, {name}" : "Dobrý večer, {name}",
"Good night" : "Dobrý večer",
"Pick from files" : "Vybrať zo súborov"

View file

@ -6,6 +6,7 @@ OC.L10N.register(
"Show something" : "แสดงบางอย่าง",
"Customize" : "ปรับแต่ง",
"Edit widgets" : "แก้ไข วิดเจ็ต",
"Get more widgets from the App Store" : "เลือกวิดเจ็ดจาก App Store",
"Change background image" : "เปลี่ยน รูปภาพ พื้นหลัง",
"Weather service" : "บริการ สภาพอากาศ",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information." : "สำหรับความเป็นส่วนตัวของ ข้อมูลสภาพอากาศเป็นการร้องขอในนาม Nextcloud เซิร์ฟเวอร์ ของคุณ ดังนั้นบริการสภาพอากาศจึงไม่ได้รับ หรือจัดเก็บ ข้อมูลส่วนบุคคล",
@ -20,6 +21,9 @@ OC.L10N.register(
"Good afternoon, {name}" : "ทิวาสวัสดิ์ {name}",
"Good evening" : "สายัณห์สวัสดิ์",
"Good evening, {name}" : "สายัณห์สวัสดิ์ {name}",
"Hello" : "สวัสดี",
"Hello, {name}" : "สวัสดี, {name}",
"Pick from Files" : "เลือกจากไฟล์",
"Default images" : "รูปภาพเริ่มต้น",
"Plain background" : "พื้นหลังธรรมดา",
"Insert from {productName}" : "แทรกจาก {productName}",

View file

@ -4,6 +4,7 @@
"Show something" : "แสดงบางอย่าง",
"Customize" : "ปรับแต่ง",
"Edit widgets" : "แก้ไข วิดเจ็ต",
"Get more widgets from the App Store" : "เลือกวิดเจ็ดจาก App Store",
"Change background image" : "เปลี่ยน รูปภาพ พื้นหลัง",
"Weather service" : "บริการ สภาพอากาศ",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information." : "สำหรับความเป็นส่วนตัวของ ข้อมูลสภาพอากาศเป็นการร้องขอในนาม Nextcloud เซิร์ฟเวอร์ ของคุณ ดังนั้นบริการสภาพอากาศจึงไม่ได้รับ หรือจัดเก็บ ข้อมูลส่วนบุคคล",
@ -18,6 +19,9 @@
"Good afternoon, {name}" : "ทิวาสวัสดิ์ {name}",
"Good evening" : "สายัณห์สวัสดิ์",
"Good evening, {name}" : "สายัณห์สวัสดิ์ {name}",
"Hello" : "สวัสดี",
"Hello, {name}" : "สวัสดี, {name}",
"Pick from Files" : "เลือกจากไฟล์",
"Default images" : "รูปภาพเริ่มต้น",
"Plain background" : "พื้นหลังธรรมดา",
"Insert from {productName}" : "แทรกจาก {productName}",

View file

@ -180,20 +180,20 @@ export default {
const good = {
morning: {
generic: t('dashboard', 'Good morning'),
withName: t('dashboard', 'Good morning, {name}', { name: this.displayName }),
withName: t('dashboard', 'Good morning, {name}', { name: this.displayName }, undefined, { escape: false }),
},
afternoon: {
generic: t('dashboard', 'Good afternoon'),
withName: t('dashboard', 'Good afternoon, {name}', { name: this.displayName }),
withName: t('dashboard', 'Good afternoon, {name}', { name: this.displayName }, undefined, { escape: false }),
},
evening: {
generic: t('dashboard', 'Good evening'),
withName: t('dashboard', 'Good evening, {name}', { name: this.displayName }),
withName: t('dashboard', 'Good evening, {name}', { name: this.displayName }, undefined, { escape: false }),
},
night: {
// Don't use "Good night" as it's not a greeting
generic: t('dashboard', 'Hello'),
withName: t('dashboard', 'Hello, {name}', { name: this.displayName }),
withName: t('dashboard', 'Hello, {name}', { name: this.displayName }, undefined, { escape: false }),
},
}

2
apps/dav/.l10nignore Normal file
View file

@ -0,0 +1,2 @@
#webpack bundled files
js/

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -104,11 +104,6 @@ OC.L10N.register(
"Tentative" : "Provisional",
"Save" : "Desa",
"Your attendance was updated successfully." : "La vostra assistència ha estat actualitzada correctament.",
"Hello %s," : "Hola, %s,",
"The meeting »%1$s« with %2$s was canceled." : "La reunió »%1$s« amb %2$s ha estat cancel·lada.",
"The meeting »%1$s« with %2$s was updated." : "La reunió »%1$s« amb %2$s ha estat actualitzada.",
"%1$s invited you to »%2$s«" : "%1$s us ha convidat a »%2$s«",
"When:" : "Quan:",
"Calendar and tasks" : "Calendari i tasques"
},
"nplurals=2; plural=(n != 1);");

View file

@ -102,11 +102,6 @@
"Tentative" : "Provisional",
"Save" : "Desa",
"Your attendance was updated successfully." : "La vostra assistència ha estat actualitzada correctament.",
"Hello %s," : "Hola, %s,",
"The meeting »%1$s« with %2$s was canceled." : "La reunió »%1$s« amb %2$s ha estat cancel·lada.",
"The meeting »%1$s« with %2$s was updated." : "La reunió »%1$s« amb %2$s ha estat actualitzada.",
"%1$s invited you to »%2$s«" : "%1$s us ha convidat a »%2$s«",
"When:" : "Quan:",
"Calendar and tasks" : "Calendari i tasques"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -137,11 +137,7 @@ OC.L10N.register(
"Tentative" : "Nezávazně",
"Save" : "Uložit",
"Your attendance was updated successfully." : "Vaše účast byla úspěšně aktualizována.",
"Hello %s," : "Zdravím %s,",
"The meeting »%1$s« with %2$s was canceled." : "Setkání „%1$s“ sc%2$s bylo zrušeno.",
"The meeting »%1$s« with %2$s was updated." : "Setkání „%1$s“ s %2$s bylo zrušeno.",
"%1$s invited you to »%2$s«" : "%1$s vás pozval(a) na „%2$s“",
"When:" : "Kdy:",
"Calendar and tasks" : "Kalendář a úkoly"
"Calendar and tasks" : "Kalendář a úkoly",
"i" : "i"
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");

View file

@ -135,11 +135,7 @@
"Tentative" : "Nezávazně",
"Save" : "Uložit",
"Your attendance was updated successfully." : "Vaše účast byla úspěšně aktualizována.",
"Hello %s," : "Zdravím %s,",
"The meeting »%1$s« with %2$s was canceled." : "Setkání „%1$s“ sc%2$s bylo zrušeno.",
"The meeting »%1$s« with %2$s was updated." : "Setkání „%1$s“ s %2$s bylo zrušeno.",
"%1$s invited you to »%2$s«" : "%1$s vás pozval(a) na „%2$s“",
"When:" : "Kdy:",
"Calendar and tasks" : "Kalendář a úkoly"
"Calendar and tasks" : "Kalendář a úkoly",
"i" : "i"
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
}

View file

@ -79,11 +79,6 @@ OC.L10N.register(
"WebDAV endpoint" : "WebDAV endpoint",
"Are you accepting the invitation?" : "Accepter du invitationen?",
"Tentative" : "Foreløbig",
"Save" : "Gem",
"Hello %s," : "Goddag %s,",
"The meeting »%1$s« with %2$s was canceled." : "Mødet »%1$s« med %2$s blev annulleret.",
"The meeting »%1$s« with %2$s was updated." : "Mødet »%1$s« med %2$s blev opdateret.",
"%1$s invited you to »%2$s«" : "%1$s inviterede dig til »%2$s«",
"When:" : "Hvornår:"
"Save" : "Gem"
},
"nplurals=2; plural=(n != 1);");

View file

@ -77,11 +77,6 @@
"WebDAV endpoint" : "WebDAV endpoint",
"Are you accepting the invitation?" : "Accepter du invitationen?",
"Tentative" : "Foreløbig",
"Save" : "Gem",
"Hello %s," : "Goddag %s,",
"The meeting »%1$s« with %2$s was canceled." : "Mødet »%1$s« med %2$s blev annulleret.",
"The meeting »%1$s« with %2$s was updated." : "Mødet »%1$s« med %2$s blev opdateret.",
"%1$s invited you to »%2$s«" : "%1$s inviterede dig til »%2$s«",
"When:" : "Hvornår:"
"Save" : "Gem"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -20,6 +20,8 @@ OC.L10N.register(
"You deleted calendar {calendar}" : "Du hast den Kalender {calendar} gelöscht",
"{actor} updated calendar {calendar}" : "{actor} hat den Kalender {calendar} aktualisiert",
"You updated calendar {calendar}" : "Du hast den Kalender {calendar} aktualisiert",
"{actor} restored calendar {calendar}" : "{actor} hat den Kalender {calendar} wiederhergestellt",
"You restored calendar {calendar}" : "Du hast den Kalender {calendar} wiederhergestellt",
"You shared calendar {calendar} as public link" : "Du hast den Kalender {calendar} als öffentlichen Link geteilt",
"You removed public link for calendar {calendar}" : "Du hast den öffentlichen Link für Kalender {calendar} entfernt",
"{actor} shared calendar {calendar} with you" : "{actor} hat den Kalender {calendar} mit Dir geteilt",
@ -39,6 +41,8 @@ OC.L10N.register(
"You deleted event {event} from calendar {calendar}" : "Du hast den Termin {event} im Kalender {calendar} gelöscht",
"{actor} updated event {event} in calendar {calendar}" : "{actor} hat den Termin {event} im Kalender {calendar} aktualisiert",
"You updated event {event} in calendar {calendar}" : "Du hast den Termin {event} im Kalender {calendar} aktualisiert",
"{actor} restored event {event} of calendar {calendar}" : "{actor} hat das Adressbuch {addressbook} mit Dir geteilt",
"You restored event {event} of calendar {calendar}" : "Du hast den Termin {event} im Kalender {calendar} wiederhergestellt",
"Busy" : "Beschäftigt",
"{actor} created todo {todo} in list {calendar}" : "{actor} hat die Aufgabe {todo} in der Liste {calendar} erstellt",
"You created todo {todo} in list {calendar}" : "Du hast die Aufgabe {todo} in der Liste {calendar} erstellt",
@ -50,6 +54,7 @@ OC.L10N.register(
"You solved todo {todo} in list {calendar}" : "Du hast die Aufgabe {todo} in der Liste {calendar} erledigt",
"{actor} reopened todo {todo} in list {calendar}" : "{actor} hat die Aufgabe {todo} in der Liste {calendar} wiedereröffnet",
"You reopened todo {todo} in list {calendar}" : "Du hast die Aufgabe {todo} in der Liste {calendar} wiedereröffnet",
"Calendar, contacts and tasks" : "Kalender, Kontakte und Aufgaben",
"A <strong>calendar</strong> was modified" : "Ein <strong>Kalender</strong> wurde bearbeitet",
"A calendar <strong>event</strong> was modified" : "Ein Kalender-<strong>Termin</strong> wurde bearbeitet",
"A calendar <strong>todo</strong> was modified" : "Eine Kalender-<strong>Aufgabe</strong> wurde bearbeitet",
@ -72,8 +77,11 @@ OC.L10N.register(
"Description: %s" : "Beschreibung: %s",
"Where: %s" : "Ort: %s",
"%1$s via %2$s" : "%1$s über %2$s",
"Cancelled: %1$s" : "Abgesagt: %1$s",
"Invitation canceled" : "Einladung abgebrochen",
"Re: %1$s" : "Re: %1$s",
"Invitation updated" : "Einladung aktualisiert",
"Invitation: %1$s" : "Einladung: %1$s",
"Invitation" : "Einladung",
"Title:" : "Titel:",
"Time:" : "Zeit:",
@ -86,6 +94,30 @@ OC.L10N.register(
"More options …" : "Weitere Optionen …",
"More options at %s" : "Weitere Optionen unter %s",
"Contacts" : "Kontakte",
"{actor} created address book {addressbook}" : "{actor} hat das Adressbuch {addressbook} erstellt",
"You created address book {addressbook}" : "Du hast das Adressbuch {addressbook} erstellt",
"{actor} deleted address book {addressbook}" : "{actor} hat das Adressbuch {addressbook} gelöscht",
"You deleted address book {addressbook}" : "Du hast das Adressbuch {addressbook} gelöscht",
"{actor} updated address book {addressbook}" : "{actor} hat das Adressbuch {addressbook} aktualisiert",
"You updated address book {addressbook}" : "Du hast das Adressbuch {addressbook} aktualisiert",
"{actor} shared address book {addressbook} with you" : "{actor} hat das Adressbuch {addressbook} mit Dir geteilt",
"You shared address book {addressbook} with {user}" : "Du hast das Adressbuch {addressbook} geteilt",
"{actor} shared address book {addressbook} with {user}" : "{actor} hat das Adressbuch {addressbook} mit {user} geteilt",
"{actor} unshared address book {addressbook} from you" : "{actor} teilt das Adressbuch {addressbook} nicht mehr mit Dir",
"You unshared address book {addressbook} from {user}" : "Du teilst das Adressbuch {addressbook} nicht mehr mit {user}",
"{actor} unshared address book {addressbook} from {user}" : "{actor} teilt das Adressbuch {addressbook} nicht mehr mit {user}",
"{actor} unshared address book {addressbook} from themselves" : "{actor} teilt das Adressbuch {addressbook} nicht mehr mit Dir",
"You shared address book {addressbook} with group {group}" : "Du hast das Adressbuch {addressbook} mit der Gruppe {group} geteilt",
"{actor} shared address book {addressbook} with group {group}" : "{actor} hat das Adressbuch {addressbook} mit der Gruppe {group} geteilt",
"You unshared address book {addressbook} from group {group}" : "Du teilst das Adressbuch {addressbook} nicht mehr mit der Gruppe {group}",
"{actor} unshared address book {addressbook} from group {group}" : "{actor} teilt das Adressbuch {addressbook} nicht mehr mit der Gruppe {group}",
"{actor} created contact {card} in address book {addressbook}" : "{actor} hat den Kontakt {card} im Adressbuch {addressbook} erstellt",
"You created contact {card} in address book {addressbook}" : "Du hast den Kontakt {card} im Adressbuch {addressbook} erstellt",
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} hat den Kontakt {card} im Adressbuch {addressbook} gelöscht",
"You deleted contact {card} from address book {addressbook}" : "Du hast den Kontakt {card} im Adressbuch {addressbook} gelöscht",
"{actor} updated contact {card} in address book {addressbook}" : "{actor} hat den Kontakt {card} im Adressbuch {addressbook} aktualisiert",
"You updated contact {card} in address book {addressbook}" : "Du hast den Kontakt {card} im Adressbuch {addressbook} aktualisiert",
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Ein <strong>Kontakt</strong> oder ein <strong>Adressbuch</strong> wurde geändert",
"System is in maintenance mode." : "Das System befindet sich im Wartungsmodus.",
"Upgrade needed" : "Aktualisierung erforderlich",
"Your %s needs to be configured to use HTTPS in order to use CalDAV and CardDAV with iOS/macOS." : "Dein %s muss konfiguriert werden, um HTTPS zusammen mit CalDAV und CardDAV unter iOS/macOS nutzen zu können.",
@ -105,11 +137,6 @@ OC.L10N.register(
"Tentative" : "Vorläufig",
"Save" : "Speichern",
"Your attendance was updated successfully." : "Dein Teilnehmerstatus wurde aktualisiert.",
"Hello %s," : "Hallo %s,",
"The meeting »%1$s« with %2$s was canceled." : "Der Termin »%1$s« mit %2$s wurde abgesagt.",
"The meeting »%1$s« with %2$s was updated." : "Der Termin »%1$s« mit %2$s wurde aktualisiert.",
"%1$s invited you to »%2$s«" : "%1$s hat Dich zu »%2$s« eingeladen",
"When:" : "Wann:",
"Calendar and tasks" : "Kalender und Aufgaben"
},
"nplurals=2; plural=(n != 1);");

View file

@ -18,6 +18,8 @@
"You deleted calendar {calendar}" : "Du hast den Kalender {calendar} gelöscht",
"{actor} updated calendar {calendar}" : "{actor} hat den Kalender {calendar} aktualisiert",
"You updated calendar {calendar}" : "Du hast den Kalender {calendar} aktualisiert",
"{actor} restored calendar {calendar}" : "{actor} hat den Kalender {calendar} wiederhergestellt",
"You restored calendar {calendar}" : "Du hast den Kalender {calendar} wiederhergestellt",
"You shared calendar {calendar} as public link" : "Du hast den Kalender {calendar} als öffentlichen Link geteilt",
"You removed public link for calendar {calendar}" : "Du hast den öffentlichen Link für Kalender {calendar} entfernt",
"{actor} shared calendar {calendar} with you" : "{actor} hat den Kalender {calendar} mit Dir geteilt",
@ -37,6 +39,8 @@
"You deleted event {event} from calendar {calendar}" : "Du hast den Termin {event} im Kalender {calendar} gelöscht",
"{actor} updated event {event} in calendar {calendar}" : "{actor} hat den Termin {event} im Kalender {calendar} aktualisiert",
"You updated event {event} in calendar {calendar}" : "Du hast den Termin {event} im Kalender {calendar} aktualisiert",
"{actor} restored event {event} of calendar {calendar}" : "{actor} hat das Adressbuch {addressbook} mit Dir geteilt",
"You restored event {event} of calendar {calendar}" : "Du hast den Termin {event} im Kalender {calendar} wiederhergestellt",
"Busy" : "Beschäftigt",
"{actor} created todo {todo} in list {calendar}" : "{actor} hat die Aufgabe {todo} in der Liste {calendar} erstellt",
"You created todo {todo} in list {calendar}" : "Du hast die Aufgabe {todo} in der Liste {calendar} erstellt",
@ -48,6 +52,7 @@
"You solved todo {todo} in list {calendar}" : "Du hast die Aufgabe {todo} in der Liste {calendar} erledigt",
"{actor} reopened todo {todo} in list {calendar}" : "{actor} hat die Aufgabe {todo} in der Liste {calendar} wiedereröffnet",
"You reopened todo {todo} in list {calendar}" : "Du hast die Aufgabe {todo} in der Liste {calendar} wiedereröffnet",
"Calendar, contacts and tasks" : "Kalender, Kontakte und Aufgaben",
"A <strong>calendar</strong> was modified" : "Ein <strong>Kalender</strong> wurde bearbeitet",
"A calendar <strong>event</strong> was modified" : "Ein Kalender-<strong>Termin</strong> wurde bearbeitet",
"A calendar <strong>todo</strong> was modified" : "Eine Kalender-<strong>Aufgabe</strong> wurde bearbeitet",
@ -70,8 +75,11 @@
"Description: %s" : "Beschreibung: %s",
"Where: %s" : "Ort: %s",
"%1$s via %2$s" : "%1$s über %2$s",
"Cancelled: %1$s" : "Abgesagt: %1$s",
"Invitation canceled" : "Einladung abgebrochen",
"Re: %1$s" : "Re: %1$s",
"Invitation updated" : "Einladung aktualisiert",
"Invitation: %1$s" : "Einladung: %1$s",
"Invitation" : "Einladung",
"Title:" : "Titel:",
"Time:" : "Zeit:",
@ -84,6 +92,30 @@
"More options …" : "Weitere Optionen …",
"More options at %s" : "Weitere Optionen unter %s",
"Contacts" : "Kontakte",
"{actor} created address book {addressbook}" : "{actor} hat das Adressbuch {addressbook} erstellt",
"You created address book {addressbook}" : "Du hast das Adressbuch {addressbook} erstellt",
"{actor} deleted address book {addressbook}" : "{actor} hat das Adressbuch {addressbook} gelöscht",
"You deleted address book {addressbook}" : "Du hast das Adressbuch {addressbook} gelöscht",
"{actor} updated address book {addressbook}" : "{actor} hat das Adressbuch {addressbook} aktualisiert",
"You updated address book {addressbook}" : "Du hast das Adressbuch {addressbook} aktualisiert",
"{actor} shared address book {addressbook} with you" : "{actor} hat das Adressbuch {addressbook} mit Dir geteilt",
"You shared address book {addressbook} with {user}" : "Du hast das Adressbuch {addressbook} geteilt",
"{actor} shared address book {addressbook} with {user}" : "{actor} hat das Adressbuch {addressbook} mit {user} geteilt",
"{actor} unshared address book {addressbook} from you" : "{actor} teilt das Adressbuch {addressbook} nicht mehr mit Dir",
"You unshared address book {addressbook} from {user}" : "Du teilst das Adressbuch {addressbook} nicht mehr mit {user}",
"{actor} unshared address book {addressbook} from {user}" : "{actor} teilt das Adressbuch {addressbook} nicht mehr mit {user}",
"{actor} unshared address book {addressbook} from themselves" : "{actor} teilt das Adressbuch {addressbook} nicht mehr mit Dir",
"You shared address book {addressbook} with group {group}" : "Du hast das Adressbuch {addressbook} mit der Gruppe {group} geteilt",
"{actor} shared address book {addressbook} with group {group}" : "{actor} hat das Adressbuch {addressbook} mit der Gruppe {group} geteilt",
"You unshared address book {addressbook} from group {group}" : "Du teilst das Adressbuch {addressbook} nicht mehr mit der Gruppe {group}",
"{actor} unshared address book {addressbook} from group {group}" : "{actor} teilt das Adressbuch {addressbook} nicht mehr mit der Gruppe {group}",
"{actor} created contact {card} in address book {addressbook}" : "{actor} hat den Kontakt {card} im Adressbuch {addressbook} erstellt",
"You created contact {card} in address book {addressbook}" : "Du hast den Kontakt {card} im Adressbuch {addressbook} erstellt",
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} hat den Kontakt {card} im Adressbuch {addressbook} gelöscht",
"You deleted contact {card} from address book {addressbook}" : "Du hast den Kontakt {card} im Adressbuch {addressbook} gelöscht",
"{actor} updated contact {card} in address book {addressbook}" : "{actor} hat den Kontakt {card} im Adressbuch {addressbook} aktualisiert",
"You updated contact {card} in address book {addressbook}" : "Du hast den Kontakt {card} im Adressbuch {addressbook} aktualisiert",
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Ein <strong>Kontakt</strong> oder ein <strong>Adressbuch</strong> wurde geändert",
"System is in maintenance mode." : "Das System befindet sich im Wartungsmodus.",
"Upgrade needed" : "Aktualisierung erforderlich",
"Your %s needs to be configured to use HTTPS in order to use CalDAV and CardDAV with iOS/macOS." : "Dein %s muss konfiguriert werden, um HTTPS zusammen mit CalDAV und CardDAV unter iOS/macOS nutzen zu können.",
@ -103,11 +135,6 @@
"Tentative" : "Vorläufig",
"Save" : "Speichern",
"Your attendance was updated successfully." : "Dein Teilnehmerstatus wurde aktualisiert.",
"Hello %s," : "Hallo %s,",
"The meeting »%1$s« with %2$s was canceled." : "Der Termin »%1$s« mit %2$s wurde abgesagt.",
"The meeting »%1$s« with %2$s was updated." : "Der Termin »%1$s« mit %2$s wurde aktualisiert.",
"%1$s invited you to »%2$s«" : "%1$s hat Dich zu »%2$s« eingeladen",
"When:" : "Wann:",
"Calendar and tasks" : "Kalender und Aufgaben"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -137,11 +137,7 @@ OC.L10N.register(
"Tentative" : "Vorläufig",
"Save" : "Speichern",
"Your attendance was updated successfully." : "Ihr Teilnehmerstatus wurde aktualisiert.",
"Hello %s," : "Hallo %s,",
"The meeting »%1$s« with %2$s was canceled." : "Der Termin »%1$s« mit %2$s wurde abgesagt.",
"The meeting »%1$s« with %2$s was updated." : "Der Termin »%1$s« mit %2$s wurde aktualisiert.",
"%1$s invited you to »%2$s«" : "%1$s hat Sie zu »%2$s« eingeladen",
"When:" : "Wann:",
"Calendar and tasks" : "Kalender und Aufgaben"
"Calendar and tasks" : "Kalender und Aufgaben",
"i" : "i"
},
"nplurals=2; plural=(n != 1);");

View file

@ -135,11 +135,7 @@
"Tentative" : "Vorläufig",
"Save" : "Speichern",
"Your attendance was updated successfully." : "Ihr Teilnehmerstatus wurde aktualisiert.",
"Hello %s," : "Hallo %s,",
"The meeting »%1$s« with %2$s was canceled." : "Der Termin »%1$s« mit %2$s wurde abgesagt.",
"The meeting »%1$s« with %2$s was updated." : "Der Termin »%1$s« mit %2$s wurde aktualisiert.",
"%1$s invited you to »%2$s«" : "%1$s hat Sie zu »%2$s« eingeladen",
"When:" : "Wann:",
"Calendar and tasks" : "Kalender und Aufgaben"
"Calendar and tasks" : "Kalender und Aufgaben",
"i" : "i"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -104,11 +104,6 @@ OC.L10N.register(
"Tentative" : "Δοκιμαστικό",
"Save" : "Αποθήκευση",
"Your attendance was updated successfully." : "Η παρουσία σας ενημερώθηκε με επιτυχία.",
"Hello %s," : "Γεια σου %s,",
"The meeting »%1$s« with %2$s was canceled." : "Το meeting »%1$s« με τον/την %2$s ακυρώθηκε.",
"The meeting »%1$s« with %2$s was updated." : "Το meeting » %1$s« με τον/την %2$s ενημερώθηκε.",
"%1$s invited you to »%2$s«" : "Ο %1$s σας προσκάλεσε στο »%2$s«",
"When:" : "Πότε:",
"Calendar and tasks" : "Ημερολόγιο και εργασίες"
},
"nplurals=2; plural=(n != 1);");

View file

@ -102,11 +102,6 @@
"Tentative" : "Δοκιμαστικό",
"Save" : "Αποθήκευση",
"Your attendance was updated successfully." : "Η παρουσία σας ενημερώθηκε με επιτυχία.",
"Hello %s," : "Γεια σου %s,",
"The meeting »%1$s« with %2$s was canceled." : "Το meeting »%1$s« με τον/την %2$s ακυρώθηκε.",
"The meeting »%1$s« with %2$s was updated." : "Το meeting » %1$s« με τον/την %2$s ενημερώθηκε.",
"%1$s invited you to »%2$s«" : "Ο %1$s σας προσκάλεσε στο »%2$s«",
"When:" : "Πότε:",
"Calendar and tasks" : "Ημερολόγιο και εργασίες"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -91,11 +91,6 @@ OC.L10N.register(
"Are you accepting the invitation?" : "Ĉu vi akceptas la inviton?",
"Tentative" : "Nekonfirmita",
"Save" : "Konservi",
"Your attendance was updated successfully." : "Via ĉeesto sukcese ĝisdatiĝis.",
"Hello %s," : "Saluton %s,",
"The meeting »%1$s« with %2$s was canceled." : "La kunsido „%1$s“ kun %2$s estis nuligita.",
"The meeting »%1$s« with %2$s was updated." : "La kunsido „%1$s“ kun %2$s estis ĝisdatigita.",
"%1$s invited you to »%2$s«" : "%1$s invitis vin al „%2$s“",
"When:" : "Kiam:"
"Your attendance was updated successfully." : "Via ĉeesto sukcese ĝisdatiĝis."
},
"nplurals=2; plural=(n != 1);");

View file

@ -89,11 +89,6 @@
"Are you accepting the invitation?" : "Ĉu vi akceptas la inviton?",
"Tentative" : "Nekonfirmita",
"Save" : "Konservi",
"Your attendance was updated successfully." : "Via ĉeesto sukcese ĝisdatiĝis.",
"Hello %s," : "Saluton %s,",
"The meeting »%1$s« with %2$s was canceled." : "La kunsido „%1$s“ kun %2$s estis nuligita.",
"The meeting »%1$s« with %2$s was updated." : "La kunsido „%1$s“ kun %2$s estis ĝisdatigita.",
"%1$s invited you to »%2$s«" : "%1$s invitis vin al „%2$s“",
"When:" : "Kiam:"
"Your attendance was updated successfully." : "Via ĉeesto sukcese ĝisdatiĝis."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -105,11 +105,6 @@ OC.L10N.register(
"Tentative" : "Provisional",
"Save" : "Guardar",
"Your attendance was updated successfully." : "Tu asistencia se ha actualizado con éxito.",
"Hello %s," : "Hola, %s:",
"The meeting »%1$s« with %2$s was canceled." : "La reunión »%1$s« con %2$s se ha cancelado.",
"The meeting »%1$s« with %2$s was updated." : "La reunión »%1$s« con %2$s se ha actualizado.",
"%1$s invited you to »%2$s«" : "%1$s te ha invitado a »%2$s«",
"When:" : "Cuándo:",
"Calendar and tasks" : "Calendario y tareas"
},
"nplurals=2; plural=(n != 1);");

View file

@ -103,11 +103,6 @@
"Tentative" : "Provisional",
"Save" : "Guardar",
"Your attendance was updated successfully." : "Tu asistencia se ha actualizado con éxito.",
"Hello %s," : "Hola, %s:",
"The meeting »%1$s« with %2$s was canceled." : "La reunión »%1$s« con %2$s se ha cancelado.",
"The meeting »%1$s« with %2$s was updated." : "La reunión »%1$s« con %2$s se ha actualizado.",
"%1$s invited you to »%2$s«" : "%1$s te ha invitado a »%2$s«",
"When:" : "Cuándo:",
"Calendar and tasks" : "Calendario y tareas"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -77,8 +77,11 @@ OC.L10N.register(
"Description: %s" : "Deskripzioa: %s",
"Where: %s" : "Non: %s",
"%1$s via %2$s" : "%2$s bidez, %1$s",
"Cancelled: %1$s" : "Utzita: %1$s",
"Invitation canceled" : "Gonbidapena ezeztatua",
"Re: %1$s" : "Er: %1$s",
"Invitation updated" : "Gonbidapena eguneratu da",
"Invitation: %1$s" : "Gonbidapena: %1$s",
"Invitation" : "Gonbidapena",
"Title:" : "Izenburua:",
"Time:" : "Noiz:",
@ -134,11 +137,7 @@ OC.L10N.register(
"Tentative" : "Behin behinekoa",
"Save" : "Gorde",
"Your attendance was updated successfully." : "Zure parte-hartzea ondo eguneratu da.",
"Hello %s," : "Kaixo 1%s,",
"The meeting »%1$s« with %2$s was canceled." : "»%1$s« bilera %2$s(r)ekin bertan behera utzi da.",
"The meeting »%1$s« with %2$s was updated." : "»%1$s« bilera %2$s(r)ekin eguneratu egin da.",
"%1$s invited you to »%2$s«" : "%1$s(e)k »%2$s(e)ra« gonbidatu zaitu",
"When:" : "Noiz:",
"Calendar and tasks" : "Egutegia eta atazak"
"Calendar and tasks" : "Egutegia eta atazak",
"i" : "i"
},
"nplurals=2; plural=(n != 1);");

View file

@ -75,8 +75,11 @@
"Description: %s" : "Deskripzioa: %s",
"Where: %s" : "Non: %s",
"%1$s via %2$s" : "%2$s bidez, %1$s",
"Cancelled: %1$s" : "Utzita: %1$s",
"Invitation canceled" : "Gonbidapena ezeztatua",
"Re: %1$s" : "Er: %1$s",
"Invitation updated" : "Gonbidapena eguneratu da",
"Invitation: %1$s" : "Gonbidapena: %1$s",
"Invitation" : "Gonbidapena",
"Title:" : "Izenburua:",
"Time:" : "Noiz:",
@ -132,11 +135,7 @@
"Tentative" : "Behin behinekoa",
"Save" : "Gorde",
"Your attendance was updated successfully." : "Zure parte-hartzea ondo eguneratu da.",
"Hello %s," : "Kaixo 1%s,",
"The meeting »%1$s« with %2$s was canceled." : "»%1$s« bilera %2$s(r)ekin bertan behera utzi da.",
"The meeting »%1$s« with %2$s was updated." : "»%1$s« bilera %2$s(r)ekin eguneratu egin da.",
"%1$s invited you to »%2$s«" : "%1$s(e)k »%2$s(e)ra« gonbidatu zaitu",
"When:" : "Noiz:",
"Calendar and tasks" : "Egutegia eta atazak"
"Calendar and tasks" : "Egutegia eta atazak",
"i" : "i"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -97,8 +97,6 @@ OC.L10N.register(
"Tentative" : "Alustava",
"Save" : "Tallenna",
"Your attendance was updated successfully." : "Osallistumisesi päivitettiin onnistuneesti.",
"Hello %s," : "Hei %s",
"When:" : "Milloin:",
"Calendar and tasks" : "Kalenteri ja tehtävät"
},
"nplurals=2; plural=(n != 1);");

View file

@ -95,8 +95,6 @@
"Tentative" : "Alustava",
"Save" : "Tallenna",
"Your attendance was updated successfully." : "Osallistumisesi päivitettiin onnistuneesti.",
"Hello %s," : "Hei %s",
"When:" : "Milloin:",
"Calendar and tasks" : "Kalenteri ja tehtävät"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -77,8 +77,11 @@ OC.L10N.register(
"Description: %s" : "Description: %s",
"Where: %s" : "Où : %s",
"%1$s via %2$s" : "%1$s via %2$s",
"Cancelled: %1$s" : "Annulé : %1$s",
"Invitation canceled" : "Invitation annulée",
"Re: %1$s" : "Re : %1$s",
"Invitation updated" : "Invitation mise à jour",
"Invitation: %1$s" : "Invitation : %1$s",
"Invitation" : "Invitation",
"Title:" : "Titre :",
"Time:" : "Heure :",
@ -91,6 +94,30 @@ OC.L10N.register(
"More options …" : "Plus d'options …",
"More options at %s" : "Plus d'options à %s",
"Contacts" : "Contacts",
"{actor} created address book {addressbook}" : "{actor} a créé le carnet d'adresses {addressbook}",
"You created address book {addressbook}" : "Vous avez créé le carnet d'adresses {addressbook}",
"{actor} deleted address book {addressbook}" : "{actor} a supprimé le carnet d'adresses {addressbook}",
"You deleted address book {addressbook}" : "Vous avez supprimé le carnet d'adresses {addressbook}",
"{actor} updated address book {addressbook}" : "{actor} a mis à jour le carnet d'adresses {addressbook}",
"You updated address book {addressbook}" : "Vous avez mis à jour le carnet d'adresses {addressbook}",
"{actor} shared address book {addressbook} with you" : "{actor} a partagé le carnet d'adresses {addressbook} avec vous",
"You shared address book {addressbook} with {user}" : "Vous avez partagé le carnet d'adresses {addressbook} avec {user}",
"{actor} shared address book {addressbook} with {user}" : "{actor} a partagé le carnet d'adresses {addressbook} avec {user}",
"{actor} unshared address book {addressbook} from you" : "{actor} a cessé de partager le carnet d'adresses {addressbook} vous appartenant",
"You unshared address book {addressbook} from {user}" : "Vous avez cessé de partager le carnet d'adresses {addressbook} appartenant à {user}",
"{actor} unshared address book {addressbook} from {user}" : "{actor} a cessé de partager le carnet d'adresses {addressbook} appartenant à {user}",
"{actor} unshared address book {addressbook} from themselves" : "{actor} a cessé de partager le carnet d'adresses {addressbook} lui appartenant",
"You shared address book {addressbook} with group {group}" : "Vous avez partagé le carnet d'adresses {addressbook} avec le groupe {group}",
"{actor} shared address book {addressbook} with group {group}" : "{actor} a partagé le carnet d'adresses {addressbook} avec le groupe {group}",
"You unshared address book {addressbook} from group {group}" : "Vous avez cessé de partager le carnet d'adresses {addressbook} appartenant au groupe {group}",
"{actor} unshared address book {addressbook} from group {group}" : "{actor} a cessé de partager le carnet d'adresses {addressbook} appartenant au groupe {group}",
"{actor} created contact {card} in address book {addressbook}" : "{actor} a créé le contact {card} dans le carnet d'adresses {addressbook}",
"You created contact {card} in address book {addressbook}" : "Vous avez créé le contact {card} dans le carnet d'adresses {addressbook}",
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} a supprimé le contact {card} dans le carnet d'adresses {addressbook}",
"You deleted contact {card} from address book {addressbook}" : "Vous avez supprimé le contact {card} dans le carnet d'adresses {addressbook}",
"{actor} updated contact {card} in address book {addressbook}" : "{actor} a mis à jour le contact {card} dans le carnet d'adresses {addressbook}",
"You updated contact {card} in address book {addressbook}" : "Vous avez mis à jour le contact {card} dans le carnet d'adresses {addressbook}",
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Un <strong>contact</strong> ou <strong>carnet d'adresses</strong> a été modifié",
"System is in maintenance mode." : "Le système est en mode maintenance.",
"Upgrade needed" : "Mise à jour requise",
"Your %s needs to be configured to use HTTPS in order to use CalDAV and CardDAV with iOS/macOS." : "Votre %s a besoin d'être configuré pour utiliser le HTTPS dans le but d'utiliser CalDAV et CardDAV avec iOS/macOS.",
@ -110,11 +137,6 @@ OC.L10N.register(
"Tentative" : "Provisoire",
"Save" : "Enregistrer",
"Your attendance was updated successfully." : "Votre présence a été mise à jour avec succès.",
"Hello %s," : "Bonjour %s,",
"The meeting »%1$s« with %2$s was canceled." : "La réunion «%1$s» avec %2$s a été annulée.",
"The meeting »%1$s« with %2$s was updated." : "La réunion «%1$s» avec %2$s a été mise à jour.",
"%1$s invited you to »%2$s«" : "%1$s vous a invité à «%2$s»",
"When:" : "Quand :",
"Calendar and tasks" : "Agenda et tâches"
},
"nplurals=2; plural=(n > 1);");

View file

@ -75,8 +75,11 @@
"Description: %s" : "Description: %s",
"Where: %s" : "Où : %s",
"%1$s via %2$s" : "%1$s via %2$s",
"Cancelled: %1$s" : "Annulé : %1$s",
"Invitation canceled" : "Invitation annulée",
"Re: %1$s" : "Re : %1$s",
"Invitation updated" : "Invitation mise à jour",
"Invitation: %1$s" : "Invitation : %1$s",
"Invitation" : "Invitation",
"Title:" : "Titre :",
"Time:" : "Heure :",
@ -89,6 +92,30 @@
"More options …" : "Plus d'options …",
"More options at %s" : "Plus d'options à %s",
"Contacts" : "Contacts",
"{actor} created address book {addressbook}" : "{actor} a créé le carnet d'adresses {addressbook}",
"You created address book {addressbook}" : "Vous avez créé le carnet d'adresses {addressbook}",
"{actor} deleted address book {addressbook}" : "{actor} a supprimé le carnet d'adresses {addressbook}",
"You deleted address book {addressbook}" : "Vous avez supprimé le carnet d'adresses {addressbook}",
"{actor} updated address book {addressbook}" : "{actor} a mis à jour le carnet d'adresses {addressbook}",
"You updated address book {addressbook}" : "Vous avez mis à jour le carnet d'adresses {addressbook}",
"{actor} shared address book {addressbook} with you" : "{actor} a partagé le carnet d'adresses {addressbook} avec vous",
"You shared address book {addressbook} with {user}" : "Vous avez partagé le carnet d'adresses {addressbook} avec {user}",
"{actor} shared address book {addressbook} with {user}" : "{actor} a partagé le carnet d'adresses {addressbook} avec {user}",
"{actor} unshared address book {addressbook} from you" : "{actor} a cessé de partager le carnet d'adresses {addressbook} vous appartenant",
"You unshared address book {addressbook} from {user}" : "Vous avez cessé de partager le carnet d'adresses {addressbook} appartenant à {user}",
"{actor} unshared address book {addressbook} from {user}" : "{actor} a cessé de partager le carnet d'adresses {addressbook} appartenant à {user}",
"{actor} unshared address book {addressbook} from themselves" : "{actor} a cessé de partager le carnet d'adresses {addressbook} lui appartenant",
"You shared address book {addressbook} with group {group}" : "Vous avez partagé le carnet d'adresses {addressbook} avec le groupe {group}",
"{actor} shared address book {addressbook} with group {group}" : "{actor} a partagé le carnet d'adresses {addressbook} avec le groupe {group}",
"You unshared address book {addressbook} from group {group}" : "Vous avez cessé de partager le carnet d'adresses {addressbook} appartenant au groupe {group}",
"{actor} unshared address book {addressbook} from group {group}" : "{actor} a cessé de partager le carnet d'adresses {addressbook} appartenant au groupe {group}",
"{actor} created contact {card} in address book {addressbook}" : "{actor} a créé le contact {card} dans le carnet d'adresses {addressbook}",
"You created contact {card} in address book {addressbook}" : "Vous avez créé le contact {card} dans le carnet d'adresses {addressbook}",
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} a supprimé le contact {card} dans le carnet d'adresses {addressbook}",
"You deleted contact {card} from address book {addressbook}" : "Vous avez supprimé le contact {card} dans le carnet d'adresses {addressbook}",
"{actor} updated contact {card} in address book {addressbook}" : "{actor} a mis à jour le contact {card} dans le carnet d'adresses {addressbook}",
"You updated contact {card} in address book {addressbook}" : "Vous avez mis à jour le contact {card} dans le carnet d'adresses {addressbook}",
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Un <strong>contact</strong> ou <strong>carnet d'adresses</strong> a été modifié",
"System is in maintenance mode." : "Le système est en mode maintenance.",
"Upgrade needed" : "Mise à jour requise",
"Your %s needs to be configured to use HTTPS in order to use CalDAV and CardDAV with iOS/macOS." : "Votre %s a besoin d'être configuré pour utiliser le HTTPS dans le but d'utiliser CalDAV et CardDAV avec iOS/macOS.",
@ -108,11 +135,6 @@
"Tentative" : "Provisoire",
"Save" : "Enregistrer",
"Your attendance was updated successfully." : "Votre présence a été mise à jour avec succès.",
"Hello %s," : "Bonjour %s,",
"The meeting »%1$s« with %2$s was canceled." : "La réunion «%1$s» avec %2$s a été annulée.",
"The meeting »%1$s« with %2$s was updated." : "La réunion «%1$s» avec %2$s a été mise à jour.",
"%1$s invited you to »%2$s«" : "%1$s vous a invité à «%2$s»",
"When:" : "Quand :",
"Calendar and tasks" : "Agenda et tâches"
},"pluralForm" :"nplurals=2; plural=(n > 1);"
}

View file

@ -104,11 +104,6 @@ OC.L10N.register(
"Tentative" : "Tentativa",
"Save" : "Gardar",
"Your attendance was updated successfully." : "A súa asistencia foi actualizada satisfactoriamente.",
"Hello %s," : "Ola %s,",
"The meeting »%1$s« with %2$s was canceled." : "A xuntanza «%1$s» con %2$s foi cancelada.",
"The meeting »%1$s« with %2$s was updated." : "A xuntanza «%1$s» con %2$s foi actualizada.",
"%1$s invited you to »%2$s«" : "%1$s convidouno a «%2$s»",
"When:" : "Cando:",
"Calendar and tasks" : "Calendario e tarefas"
},
"nplurals=2; plural=(n != 1);");

View file

@ -102,11 +102,6 @@
"Tentative" : "Tentativa",
"Save" : "Gardar",
"Your attendance was updated successfully." : "A súa asistencia foi actualizada satisfactoriamente.",
"Hello %s," : "Ola %s,",
"The meeting »%1$s« with %2$s was canceled." : "A xuntanza «%1$s» con %2$s foi cancelada.",
"The meeting »%1$s« with %2$s was updated." : "A xuntanza «%1$s» con %2$s foi actualizada.",
"%1$s invited you to »%2$s«" : "%1$s convidouno a «%2$s»",
"When:" : "Cando:",
"Calendar and tasks" : "Calendario e tarefas"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -102,11 +102,6 @@ OC.L10N.register(
"Tentative" : "טנטטיבית",
"Save" : "שמירה",
"Your attendance was updated successfully." : "ההשתתפות שלך עודכנה בהצלחה.",
"Hello %s," : "שלום %s,",
"The meeting »%1$s« with %2$s was canceled." : "הפגישה »%1$s« עם %2$s בוטלה.",
"The meeting »%1$s« with %2$s was updated." : "הפגישה »%1$s« עם %2$s עודכנה.",
"%1$s invited you to »%2$s«" : "הוזמנת על ידי %1$s אל „%2$s”",
"When:" : "מתי:",
"Calendar and tasks" : "לוח שנה ומשימות"
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;");

View file

@ -100,11 +100,6 @@
"Tentative" : "טנטטיבית",
"Save" : "שמירה",
"Your attendance was updated successfully." : "ההשתתפות שלך עודכנה בהצלחה.",
"Hello %s," : "שלום %s,",
"The meeting »%1$s« with %2$s was canceled." : "הפגישה »%1$s« עם %2$s בוטלה.",
"The meeting »%1$s« with %2$s was updated." : "הפגישה »%1$s« עם %2$s עודכנה.",
"%1$s invited you to »%2$s«" : "הוזמנת על ידי %1$s אל „%2$s”",
"When:" : "מתי:",
"Calendar and tasks" : "לוח שנה ומשימות"
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"
}

View file

@ -104,11 +104,6 @@ OC.L10N.register(
"Tentative" : "Uvjetno",
"Save" : "Spremi",
"Your attendance was updated successfully." : "Vaša je prisutnost uspješno ažurirana.",
"Hello %s," : "Pozdrav %s,",
"The meeting »%1$s« with %2$s was canceled." : "Otkazan je sastanak »%1$s« s %2$s.",
"The meeting »%1$s« with %2$s was updated." : "Ažuriran je sastanak »%1$s« s %2$s.",
"%1$s invited you to »%2$s«" : "%1$s vas je pozvao na »%2$s«",
"When:" : "Kada:",
"Calendar and tasks" : "Kalendar i zadaci"
},
"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;");

View file

@ -102,11 +102,6 @@
"Tentative" : "Uvjetno",
"Save" : "Spremi",
"Your attendance was updated successfully." : "Vaša je prisutnost uspješno ažurirana.",
"Hello %s," : "Pozdrav %s,",
"The meeting »%1$s« with %2$s was canceled." : "Otkazan je sastanak »%1$s« s %2$s.",
"The meeting »%1$s« with %2$s was updated." : "Ažuriran je sastanak »%1$s« s %2$s.",
"%1$s invited you to »%2$s«" : "%1$s vas je pozvao na »%2$s«",
"When:" : "Kada:",
"Calendar and tasks" : "Kalendar i zadaci"
},"pluralForm" :"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"
}

View file

@ -103,11 +103,6 @@ OC.L10N.register(
"Tentative" : "Valószínűleg",
"Save" : "Mentés",
"Your attendance was updated successfully." : "A részvételed frissítése sikerült.",
"Hello %s," : "Üdv %s,",
"The meeting »%1$s« with %2$s was canceled." : "A »%1$s« találkozó vele: %2$s lemondásra került.",
"The meeting »%1$s« with %2$s was updated." : "A »%1$s« találkozó vele:%2$s módosult.",
"%1$s invited you to »%2$s«" : "%1$s meghívott ide: »%2$s«",
"When:" : "Mikor:",
"Calendar and tasks" : "Naptár és feladatok"
},
"nplurals=2; plural=(n != 1);");

View file

@ -101,11 +101,6 @@
"Tentative" : "Valószínűleg",
"Save" : "Mentés",
"Your attendance was updated successfully." : "A részvételed frissítése sikerült.",
"Hello %s," : "Üdv %s,",
"The meeting »%1$s« with %2$s was canceled." : "A »%1$s« találkozó vele: %2$s lemondásra került.",
"The meeting »%1$s« with %2$s was updated." : "A »%1$s« találkozó vele:%2$s módosult.",
"%1$s invited you to »%2$s«" : "%1$s meghívott ide: »%2$s«",
"When:" : "Mikor:",
"Calendar and tasks" : "Naptár és feladatok"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

Some files were not shown because too many files have changed in this diff Show more