Merge branch 'master' into fix/ldap-filter-generation

This commit is contained in:
Aaron Dewes 2023-09-20 15:38:52 +02:00 committed by GitHub
commit aefa366495
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
1899 changed files with 26891 additions and 18167 deletions

View file

@ -1591,126 +1591,6 @@ trigger:
- pull_request
- push
---
kind: pipeline
name: acceptance-app-files
steps:
- name: submodules
image: ghcr.io/nextcloud/continuous-integration-alpine-git:latest
commands:
- git submodule update --init
- name: acceptance-app-files
image: ghcr.io/nextcloud/continuous-integration-acceptance-php8.0:latest
commands:
- tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-files --selenium-server selenium:4444 allow-git-repository-modifications features/app-files.feature
services:
- name: selenium
image: ghcr.io/nextcloud/continuous-integration-selenium:3.141.59
environment:
# Reduce default log level for Selenium server (INFO) as it is too
# verbose.
JAVA_OPTS: -Dselenium.LOGGER.level=WARNING
trigger:
branch:
- master
- stable*
event:
- pull_request
- push
---
kind: pipeline
name: acceptance-app-files-sharing
steps:
- name: submodules
image: ghcr.io/nextcloud/continuous-integration-alpine-git:latest
commands:
- git submodule update --init
- name: acceptance-app-files-sharing
image: ghcr.io/nextcloud/continuous-integration-acceptance-php8.0:latest
commands:
- tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-files-sharing --selenium-server selenium:4444 allow-git-repository-modifications features/app-files-sharing.feature
services:
- name: selenium
image: ghcr.io/nextcloud/continuous-integration-selenium:3.141.59
environment:
# Reduce default log level for Selenium server (INFO) as it is too
# verbose.
JAVA_OPTS: -Dselenium.LOGGER.level=WARNING
trigger:
branch:
- master
- stable*
event:
- pull_request
- push
---
kind: pipeline
name: acceptance-app-files-sharing-link
steps:
- name: submodules
image: ghcr.io/nextcloud/continuous-integration-alpine-git:latest
commands:
- git submodule update --init
- name: acceptance-app-files-sharing-link
image: ghcr.io/nextcloud/continuous-integration-acceptance-php8.0:latest
commands:
- tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-files-sharing-link --selenium-server selenium:4444 allow-git-repository-modifications features/app-files-sharing-link.feature
services:
- name: selenium
image: ghcr.io/nextcloud/continuous-integration-selenium:3.141.59
environment:
# Reduce default log level for Selenium server (INFO) as it is too
# verbose.
JAVA_OPTS: -Dselenium.LOGGER.level=WARNING
trigger:
branch:
- master
- stable*
event:
- pull_request
- push
---
kind: pipeline
name: acceptance-app-files-tags
steps:
- name: submodules
image: ghcr.io/nextcloud/continuous-integration-alpine-git:latest
commands:
- git submodule update --init
- name: acceptance-app-files-tags
image: ghcr.io/nextcloud/continuous-integration-acceptance-php8.0:latest
commands:
- tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-files-tags --selenium-server selenium:4444 allow-git-repository-modifications features/app-files-tags.feature
services:
- name: selenium
image: ghcr.io/nextcloud/continuous-integration-selenium:3.141.59
environment:
# Reduce default log level for Selenium server (INFO) as it is too
# verbose.
JAVA_OPTS: -Dselenium.LOGGER.level=WARNING
trigger:
branch:
- master
- stable*
event:
- pull_request
- push
---
kind: pipeline
name: acceptance-header
@ -1998,4 +1878,4 @@ trigger:
- push
---
kind: signature
hmac: a5c0c1e40125b53ff88c617699710f3dc9685d80f06fd8f560b2662ccb1c3497
hmac: 6814dc276b076a391796f3639b27499592e974db8e5e7a4043a120ce215b78cd

6
.github/CODEOWNERS vendored
View file

@ -18,6 +18,7 @@
/apps/oauth2/appinfo/info.xml @julien-nc @ChristophWurst
/apps/provisioning_api/appinfo/info.xml @provokateurin @nickvergessen
/apps/settings/appinfo/info.xml @Pytal @JuliaKirschenheuter
/apps/sharebymail/appinfo/info.xml @Altahrim
/apps/systemtags/appinfo/info.xml @Antreesy @marcelklehr
/apps/theming/appinfo/info.xml @skjnldsv @juliushaertl
/apps/twofactor_backupcodes/appinfo/info.xml @st3iny @miaulalala @ChristophWurst
@ -29,6 +30,7 @@
# Security team
/resources/config/ca-bundle.crt @ChristophWurst @miaulalala @nickvergessen
/.drone.yml @nickvergessen
# Two-Factor Authentication
# https://github.com/nextcloud/wg-two-factor-authentication#members
@ -36,6 +38,10 @@
/apps/twofactor_backupcodes @ChristophWurst @miaulalala @nickvergessen @st3iny
/core/templates/twofactor* @ChristophWurst @miaulalala @nickvergessen @st3iny
# Limit login to IP
# Watch login routes for https://github.com/nextcloud/limit_login_to_ip
/core/routes.php @Altahrim
# OpenAPI
openapi.json @provokateurin
ResponseDefinitions.php @provokateurin

View file

@ -54,7 +54,7 @@ jobs:
steps:
- name: Checkout ${{ needs.init.outputs.head_ref }}
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v3.5.2
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
fetch-depth: 0
@ -73,7 +73,7 @@ jobs:
fallbackNpm: '^7'
- name: Set up node ${{ steps.package-engines-versions.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3
with:
node-version: ${{ steps.package-engines-versions.outputs.nodeVersion }}
cache: npm

View file

@ -30,7 +30,7 @@ jobs:
id: comment-branch
- name: Checkout ${{ steps.comment-branch.outputs.head_ref }}
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
fetch-depth: 0
token: ${{ secrets.COMMAND_BOT_PAT }}

View file

@ -31,7 +31,7 @@ jobs:
reaction-type: "+1"
- name: Checkout the latest code
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v3.5.2
with:
fetch-depth: 0
token: ${{ secrets.COMMAND_BOT_PAT }}

View file

@ -23,7 +23,7 @@ jobs:
steps:
- name: Checkout app
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v3.5.2
- name: Check composer.json
id: check_composer
@ -36,14 +36,14 @@ jobs:
run: composer install --no-dev
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@0ce2ed60f6df073a62a77c0a4958dd0fc68e32e7 # v2.1
uses: skjnldsv/read-package-engines-version-actions@8205673bab74a63eb9b8093402fd9e0e018663a1 # v2.2
id: versions
with:
fallbackNode: "^14"
fallbackNpm: "^7"
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
@ -83,7 +83,7 @@ jobs:
path: ./
- name: Set up node ${{ needs.init.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1
with:
node-version: ${{ needs.init.outputs.nodeVersion }}
@ -91,7 +91,7 @@ jobs:
run: npm i -g npm@"${{ needs.init.outputs.npmVersion }}"
- name: Run ${{ matrix.containers == 'component' && 'component' || 'E2E' }} cypress tests
uses: cypress-io/github-action@d69252d52b9a31bad4f418f05ba2bc83687a02eb # v5.8.3
uses: cypress-io/github-action@59810ebfa5a5ac6fcfdcfdf036d1cd4d083a88f2 # v6.5.0
with:
record: true
parallel: true
@ -112,7 +112,7 @@ jobs:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
- name: Upload snapshots
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
if: always()
with:
name: snapshots_${{ matrix.containers }}
@ -123,7 +123,7 @@ jobs:
run: docker logs nextcloud-cypress-tests-${{ env.APP_NAME }} > nextcloud.log
- name: Upload NC logs
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
if: failure() && matrix.containers != 'component'
with:
name: nc_logs_${{ matrix.containers }}
@ -134,7 +134,7 @@ jobs:
run: docker exec nextcloud-cypress-tests-server tar -cvjf - data > data.tar
- name: Upload data dir archive
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
if: failure() && matrix.containers != 'component'
with:
name: nc_data_${{ matrix.containers }}

View file

@ -5,9 +5,11 @@ on:
- master
- stable*
paths:
- '.github/**'
- 'apps/files_external/**'
pull_request:
paths:
- '.github/**'
- 'apps/files_external/**'
env:
@ -30,17 +32,19 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true
- name: Set up ftpd
run: |
sudo mkdir /tmp/ftp
sudo chown -R 0777 /tmp/ftp
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then docker run --name ftp -d --net host -e FTP_USERNAME=test -e FTP_PASSWORD=test -v /tmp/ftp:/home/test hauptmedia/proftpd; fi
sudo chmod -R 0777 /tmp/ftp
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then echo '$6$Q7V2n3q2GRVv5YeQ$/AhLu07H76Asojy7bxGXMY1caKLAbp5Vt82LOZYMkD/8uDzyMAEXwk0c1Bdz1DkBsk2Vh/9SF130mOPavRGMo.' > /tmp/secret.txt; fi
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then echo 'FTP_ROOT=/home/test' > $GITHUB_ENV; fi
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then docker run --name ftp -d --net host -e PASV_ADDRESS=127.0.0.1 -e FTPUSER_NAME=test -v /tmp/secret.txt:/run/secrets/ftp-user-password-secret -v /tmp/ftp:/home/test instantlinux/proftpd; fi
if [[ "${{ matrix.ftpd }}" == 'vsftpd' ]]; then docker run --name ftp -d --net host -e FTP_USER=test -e FTP_PASS=test -e PASV_ADDRESS=127.0.0.1 -v /tmp/ftp:/home/vsftpd/test fauria/vsftpd; fi
if [[ "${{ matrix.ftpd }}" == 'pure-ftpd' ]]; then docker run --name ftp -d --net host -e "PUBLICHOST=localhost" -e FTP_USER_NAME=test -e FTP_USER_PASS=test -e FTP_USER_HOME=/home/test -v /tmp/ftp2:/home/test -v /tmp/ftp2:/etc/pure-ftpd/passwd stilliard/pure-ftpd; fi
if [[ "${{ matrix.ftpd }}" == 'pure-ftpd' ]]; then docker run --name ftp -d --net host -e "PUBLICHOST=localhost" -e FTP_USER_NAME=test -e FTP_USER_PASS=test -e FTP_USER_HOME=/home/test -v /tmp/ftp:/home/test -v /tmp/ftp:/etc/pure-ftpd/passwd stilliard/pure-ftpd; fi
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d #v2.25.2
with:
@ -58,13 +62,14 @@ jobs:
php -S localhost:8080 &
- name: smoketest ftp
run: |
php -r 'var_dump(file_put_contents("ftp://test:test@localhost/ftp.txt", "asd"));'
php -r 'var_dump(file_get_contents("ftp://test:test@localhost/ftp.txt"));'
php -r 'var_dump(mkdir("ftp://test:test@localhost/asdads"));'
php -r 'var_dump(file_put_contents("ftp://test:test@localhost${{ env.FTP_ROOT }}/ftp.txt", "asd"));'
php -r 'var_dump(file_get_contents("ftp://test:test@localhost${{ env.FTP_ROOT }}/ftp.txt"));'
php -r 'var_dump(mkdir("ftp://test:test@localhost${{ env.FTP_ROOT }}/asdads"));'
ls -l /tmp/ftp
[ -f /tmp/ftp/ftp.txt ]
- name: PHPUnit
run: |
echo "<?php return ['run' => true,'host' => 'localhost','user' => 'test','password' => 'test', 'root' => ''];" > apps/${{ env.APP_NAME }}/tests/config.ftp.php
echo "<?php return ['run' => true,'host' => 'localhost','user' => 'test','password' => 'test', 'root' => '${{ env.FTP_ROOT }}'];" > apps/${{ env.APP_NAME }}/tests/config.ftp.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/FtpTest.php
- name: ftpd logs
if: always()

View file

@ -38,7 +38,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v3.5.2
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@8205673bab74a63eb9b8093402fd9e0e018663a1 # v2.1
@ -48,7 +48,7 @@ jobs:
fallbackNpm: '^7'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}

View file

@ -22,7 +22,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v3.5.2
- name: Set up php
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2

View file

@ -31,7 +31,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v3.5.2
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2

View file

@ -19,7 +19,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@8205673bab74a63eb9b8093402fd9e0e018663a1
@ -34,10 +34,10 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
@ -61,10 +61,10 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
@ -83,10 +83,10 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}

View file

@ -37,7 +37,7 @@ jobs:
name: node
steps:
- name: Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v3.5.2
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@8205673bab74a63eb9b8093402fd9e0e018663a1 # v2.1
@ -47,7 +47,7 @@ jobs:
fallbackNpm: '^7'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}

View file

@ -24,7 +24,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v3.5.2
with:
ref: ${{ matrix.branches }}
@ -36,7 +36,7 @@ jobs:
fallbackNpm: '^7'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
@ -55,7 +55,7 @@ jobs:
- name: Create Pull Request
if: always()
uses: peter-evans/create-pull-request@284f54f989303d2699d373481a0cfa13ad5a6666 # v5
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38 # v5
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: "chore(deps): fix npm audit"

View file

@ -42,7 +42,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true

View file

@ -15,7 +15,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- name: Set up php
uses: shivammathur/setup-php@v2

View file

@ -17,7 +17,7 @@ jobs:
steps:
- name: Checkout server before PR
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true
ref: ${{ github.event.pull_request.base.ref }}
@ -79,14 +79,14 @@ jobs:
- name: Upload profiles
if: always()
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32
with:
name: profiles
path: |
before.json
after.json
- uses: actions/github-script@v5
- uses: actions/github-script@v6
if: failure() && steps.compare.outcome == 'failure'
with:
github-token: ${{secrets.GITHUB_TOKEN}}

View file

@ -30,7 +30,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true

View file

@ -38,7 +38,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true
@ -91,7 +91,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true

View file

@ -36,7 +36,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true

View file

@ -32,7 +32,7 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true

75
.github/workflows/sftp.yml vendored Normal file
View file

@ -0,0 +1,75 @@
name: SFTP unit tests
on:
push:
branches:
- master
- stable*
paths:
- 'apps/files_external/**'
pull_request:
paths:
- 'apps/files_external/**'
env:
APP_NAME: files_external
jobs:
sftp-tests:
runs-on: ubuntu-latest
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
strategy:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['8.0']
sftpd: ['openssh']
name: php${{ matrix.php-versions }}-${{ matrix.sftpd }}
steps:
- name: Checkout server
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true
- name: Set up sftpd
run: |
sudo mkdir /tmp/sftp
sudo chown -R 0777 /tmp/sftp
if [[ "${{ matrix.sftpd }}" == 'openssh' ]]; then docker run -p 2222:22 --name sftp -d -v /tmp/sftp:/home/test atmoz/sftp "test:test:::data"; fi
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d #v2.25.2
with:
php-version: ${{ matrix.php-versions }}
tools: phpunit:9
extensions: mbstring, fileinfo, intl, sqlite, pdo_sqlite, zip, gd
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force ${{ env.APP_NAME }}
php -S localhost:8080 &
- name: PHPUnit
run: |
echo "<?php return ['run' => true, 'host' => 'localhost:2222','user' => 'test','password' => 'test', 'root' => 'data'];" > apps/${{ env.APP_NAME }}/tests/config.sftp.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/SftpTest.php
- name: sftpd logs
if: always()
run: |
ls -l /tmp/sftp
docker logs sftp
sftp-summary:
runs-on: ubuntu-latest
needs: sftp-tests
if: always()
steps:
- name: Summary status
run: if ${{ needs.sftp-tests.result != 'success' }}; then exit 1; fi

View file

@ -22,53 +22,36 @@ jobs:
steps:
- name: Checkout server
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true
- name: Checkout user_saml
uses: actions/checkout@v3
with:
repository: nextcloud/user_saml
path: apps/user_saml
- name: Pull images
run: |
docker pull icewind1991/samba-krb-test-dc
docker pull icewind1991/samba-krb-test-apache
docker pull icewind1991/samba-krb-test-client
docker pull ghcr.io/icewind1991/samba-krb-test-dc
docker pull ghcr.io/icewind1991/samba-krb-test-apache
docker pull ghcr.io/icewind1991/samba-krb-test-client
docker tag ghcr.io/icewind1991/samba-krb-test-dc icewind1991/samba-krb-test-dc
docker tag ghcr.io/icewind1991/samba-krb-test-apache icewind1991/samba-krb-test-apache
docker tag ghcr.io/icewind1991/samba-krb-test-client icewind1991/samba-krb-test-client
- name: Setup AD-DC
run: |
cp apps/files_external/tests/*.sh .
mkdir data
sudo chown -R 33 data apps config
DC_IP=$(./start-dc.sh)
./start-apache.sh $DC_IP $PWD
DC_IP=$(apps/files_external/tests/sso-setup/start-dc.sh)
apps/files_external/tests/sso-setup/start-apache.sh $DC_IP $PWD
echo "DC_IP=$DC_IP" >> $GITHUB_ENV
- name: Set up Nextcloud
run: |
docker exec --user 33 apache ./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
docker exec --user 33 apache ./occ config:system:set trusted_domains 1 --value 'httpd.domain.test'
# setup user_saml
docker exec --user 33 apache ./occ app:enable user_saml --force
docker exec --user 33 apache ./occ config:app:set user_saml type --value 'environment-variable'
docker exec --user 33 apache ./occ saml:config:create
docker exec --user 33 apache ./occ saml:config:set 1 --general-uid_mapping=REMOTE_USER
# setup external storage
docker exec --user 33 apache ./occ app:enable files_external --force
docker exec --user 33 apache ./occ files_external:create smb smb smb::kerberosapache
docker exec --user 33 apache ./occ files_external:config 1 host krb.domain.test
docker exec --user 33 apache ./occ files_external:config 1 share netlogon
docker exec --user 33 apache ./occ files_external:list
apps/files_external/tests/sso-setup/setup-sso-nc.sh
- name: Test SSO
run: |
mkdir /tmp/shared/cookies
chmod 0777 /tmp/shared/cookies
echo "SAML login"
./client-cmd.sh ${{ env.DC_IP }} curl -c /shared/cookies/jar -s --negotiate -u testuser@DOMAIN.TEST: --delegation always http://httpd.domain.test/index.php/apps/user_saml/saml/login
echo "Check we are logged in"
CONTENT=$(./client-cmd.sh ${{ env.DC_IP }} curl -b /shared/cookies/jar -s --negotiate -u testuser@DOMAIN.TEST: --delegation always http://httpd.domain.test/remote.php/webdav/smb/test.txt)
CONTENT=$(echo $CONTENT | head -n 1 | tr -d '[:space:]')
[[ $CONTENT == "testfile" ]]
apps/files_external/tests/sso-setup/test-sso-smb.sh ${{ env.DC_IP }}
- name: Show logs
if: failure()
run: |
docker exec --user 33 apache ./occ log:file
FILEPATH=$(docker exec --user 33 apache ./occ log:file | grep "Log file:" | cut -d' ' -f3)
echo "$FILEPATH:"
docker exec --user 33 apache cat $FILEPATH

View file

@ -15,7 +15,7 @@ jobs:
issues: write
steps:
- uses: actions/stale@v5
- uses: actions/stale@v8
with:
repo-token: ${{ secrets.COMMAND_BOT_PAT }}
stale-issue-message: >

View file

@ -15,7 +15,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true
@ -49,7 +49,7 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true
@ -77,7 +77,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
submodules: true

View file

@ -17,7 +17,7 @@ jobs:
name: update-ca-certificate-bundle-${{ matrix.branches }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
ref: ${{ matrix.branches }}
submodules: true
@ -26,7 +26,7 @@ jobs:
run: curl --etag-compare build/ca-bundle-etag.txt --etag-save build/ca-bundle-etag.txt --output resources/config/ca-bundle.crt https://curl.se/ca/cacert.pem
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: "fix(security): Update CA certificate bundle"

View file

@ -19,7 +19,7 @@ jobs:
name: update-psalm-baseline-${{ matrix.branches }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
with:
ref: ${{ matrix.branches }}
submodules: true
@ -50,7 +50,7 @@ jobs:
git checkout composer.json composer.lock lib/composer
- name: Create Pull Request
uses: peter-evans/create-pull-request@v4
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: Update psalm baseline

View file

@ -21,4 +21,17 @@ $config
->notPath('node_modules')
->notPath('vendor')
->in(__DIR__);
// Ignore additional app directories
$rootDir = new \DirectoryIterator(__DIR__);
foreach ($rootDir as $node) {
if (str_starts_with($node->getFilename(), 'apps')) {
$return = shell_exec('git check-ignore ' . escapeshellarg($node->getFilename() . '/'));
if ($return !== null) {
$config->getFinder()->exclude($node->getFilename());
}
}
}
return $config;

View file

@ -74,6 +74,12 @@ source_file = translationfiles/templates/files_external.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:files_reminders]
file_filter = translationfiles/<lang>/files_reminders.po
source_file = translationfiles/templates/files_reminders.pot
source_lang = en
type = PO
[o:nextcloud:p:nextcloud:r:files_sharing]
file_filter = translationfiles/<lang>/files_sharing.po
source_file = translationfiles/templates/files_sharing.pot
@ -175,4 +181,3 @@ file_filter = translationfiles/<lang>/workflowengine.po
source_file = translationfiles/templates/workflowengine.pot
source_lang = en
type = PO

@ -1 +1 @@
Subproject commit 7293b4ffe86c0b48c3172bd8f180a12e0907fd60
Subproject commit ed6ea207de9e7649d5f7321497a27f5612d6e100

View file

@ -1,11 +1,7 @@
/*! For license information please see NcDashboardWidget.js.LICENSE.txt */
/*! For license information please see NcDashboardWidgetItem.js.LICENSE.txt */
/**
* @copyright Copyright (c) 2020 Georg Ehrke
* @copyright Copyright (c) 2023 Lucas Azevedo <lhs_azevedo@hotmail.com>
*
* @author Georg Ehrke <oc.list@georgehrke.com>
* @author Lucas Azevedo <lhs_azevedo@hotmail.com>
*
* @license AGPL-3.0-or-later
*
@ -23,3 +19,4 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
export default {}

View file

@ -24,3 +24,6 @@ import '@testing-library/jest-dom'
// Mock `window.location` with Jest spies and extend expect
import 'jest-location-mock'
// Mock `window.fetch` with Jest
import 'jest-fetch-mock'

View file

@ -14,8 +14,8 @@ OC.L10N.register(
"Delete comment" : "Skrap kommentaar",
"No comments yet, start the conversation!" : "Nog geen kommentaar, begin die gesprek!",
"Retry" : "Herprobeer",
"_%n unread comment_::_%n unread comments_" : ["%n ongelese kommentaar","%n ongelese kommentare"],
"Comment" : "Kommentaar",
"%1$s commented" : "%1$s het kommentaar gelewer"
"%1$s commented" : "%1$s het kommentaar gelewer",
"_%n unread comment_::_%n unread comments_" : ["%n ongelese kommentaar","%n ongelese kommentare"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -12,8 +12,8 @@
"Delete comment" : "Skrap kommentaar",
"No comments yet, start the conversation!" : "Nog geen kommentaar, begin die gesprek!",
"Retry" : "Herprobeer",
"_%n unread comment_::_%n unread comments_" : ["%n ongelese kommentaar","%n ongelese kommentare"],
"Comment" : "Kommentaar",
"%1$s commented" : "%1$s het kommentaar gelewer"
"%1$s commented" : "%1$s het kommentaar gelewer",
"_%n unread comment_::_%n unread comments_" : ["%n ongelese kommentaar","%n ongelese kommentare"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "أعد المحاولة",
"Failed to mark comments as read" : "إخفاق في تعيين ملاحظات كمقرؤة",
"Unable to load the comments list" : "تعذر تحميل قائمة التعليقات",
"_%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" : "التعليق حُذف",
"An error occurred while trying to delete the comment" : "حدث خطأ أثناء محاولة حذف التعليق",
"An error occurred while trying to create the comment" : "حدث خطأ أثناء محاولة إنشاء التعليق",
"%1$s commented" : "%1$s كتب تعليق"
"%1$s commented" : "%1$s كتب تعليق",
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"]
},
"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;");

View file

@ -19,13 +19,13 @@
"Retry" : "أعد المحاولة",
"Failed to mark comments as read" : "إخفاق في تعيين ملاحظات كمقرؤة",
"Unable to load the comments list" : "تعذر تحميل قائمة التعليقات",
"_%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" : "التعليق حُذف",
"An error occurred while trying to delete the comment" : "حدث خطأ أثناء محاولة حذف التعليق",
"An error occurred while trying to create the comment" : "حدث خطأ أثناء محاولة إنشاء التعليق",
"%1$s commented" : "%1$s كتب تعليق"
"%1$s commented" : "%1$s كتب تعليق",
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"]
},"pluralForm" :"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"
}

View file

@ -20,13 +20,13 @@ OC.L10N.register(
"No more messages" : " Няма повече съобщения",
"Retry" : "Опитай отново",
"Unable to load the comments list" : "Списъкът с коментари не може да се зареди",
"_%n unread comment_::_%n unread comments_" : ["%n непрочетен коментар","%n непрочетени коментари"],
"_1 new comment_::_{unread} new comments_" : ["{unread} нови коментари","{unread} нови коментари"],
"Comment" : "Коментар",
"An error occurred while trying to edit the comment" : "Възникна грешка при опит за редактиране на коментара",
"Comment deleted" : " Изтрит е коментар",
"An error occurred while trying to delete the comment" : "Възникна грешка при опит за изтриване на коментара",
"An error occurred while trying to create the comment" : "Възникна грешка при опит за създаване на коментар",
"%1$s commented" : "%1$s коментира"
"%1$s commented" : "%1$s коментира",
"_%n unread comment_::_%n unread comments_" : ["%n непрочетен коментар","%n непрочетени коментари"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -18,13 +18,13 @@
"No more messages" : " Няма повече съобщения",
"Retry" : "Опитай отново",
"Unable to load the comments list" : "Списъкът с коментари не може да се зареди",
"_%n unread comment_::_%n unread comments_" : ["%n непрочетен коментар","%n непрочетени коментари"],
"_1 new comment_::_{unread} new comments_" : ["{unread} нови коментари","{unread} нови коментари"],
"Comment" : "Коментар",
"An error occurred while trying to edit the comment" : "Възникна грешка при опит за редактиране на коментара",
"Comment deleted" : " Изтрит е коментар",
"An error occurred while trying to delete the comment" : "Възникна грешка при опит за изтриване на коментара",
"An error occurred while trying to create the comment" : "Възникна грешка при опит за създаване на коментар",
"%1$s commented" : "%1$s коментира"
"%1$s commented" : "%1$s коментира",
"_%n unread comment_::_%n unread comments_" : ["%n непрочетен коментар","%n непрочетени коментари"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Torna-ho a provar",
"Failed to mark comments as read" : "No s'han pogut marcar els comentaris com a llegits",
"Unable to load the comments list" : "No s'ha pogut carregar la llista de comentaris",
"_%n unread comment_::_%n unread comments_" : ["%n comentari sense llegir","%n comentaris sense llegir"],
"_1 new comment_::_{unread} new comments_" : ["1 comentari nou","{unread} comentaris nous"],
"Comment" : "Comentari",
"An error occurred while trying to edit the comment" : "S'ha produït un error en intentar editar el comentari",
"Comment deleted" : "S'ha suprimit el comentari",
"An error occurred while trying to delete the comment" : "S'ha produït un error en intentar suprimir el comentari",
"An error occurred while trying to create the comment" : "S'ha produït un error en intentar crear el comentari",
"%1$s commented" : "%1$s ha escrit un comentari"
"%1$s commented" : "%1$s ha escrit un comentari",
"_%n unread comment_::_%n unread comments_" : ["%n comentari sense llegir","%n comentaris sense llegir"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -19,13 +19,13 @@
"Retry" : "Torna-ho a provar",
"Failed to mark comments as read" : "No s'han pogut marcar els comentaris com a llegits",
"Unable to load the comments list" : "No s'ha pogut carregar la llista de comentaris",
"_%n unread comment_::_%n unread comments_" : ["%n comentari sense llegir","%n comentaris sense llegir"],
"_1 new comment_::_{unread} new comments_" : ["1 comentari nou","{unread} comentaris nous"],
"Comment" : "Comentari",
"An error occurred while trying to edit the comment" : "S'ha produït un error en intentar editar el comentari",
"Comment deleted" : "S'ha suprimit el comentari",
"An error occurred while trying to delete the comment" : "S'ha produït un error en intentar suprimir el comentari",
"An error occurred while trying to create the comment" : "S'ha produït un error en intentar crear el comentari",
"%1$s commented" : "%1$s ha escrit un comentari"
"%1$s commented" : "%1$s ha escrit un comentari",
"_%n unread comment_::_%n unread comments_" : ["%n comentari sense llegir","%n comentaris sense llegir"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Zkusit znovu",
"Failed to mark comments as read" : "Nepodařilo se označit komentáře jako přečtené",
"Unable to load the comments list" : "Nedaří se načíst seznam komentářů",
"_%n unread comment_::_%n unread comments_" : ["%n nepřečtený komentář","%n nepřečtené komentáře","%n nepřečtených komentářů","%n nepřečtené komentáře"],
"_1 new comment_::_{unread} new comments_" : ["Jeden nový komentář","{unread} nové komentáře","{unread} nových komentářů","{unread} nové komentáře"],
"Comment" : "Komentář",
"An error occurred while trying to edit the comment" : "Došlo k chybě při pokusu o úpravu komentáře",
"Comment deleted" : "Komentář smazán",
"An error occurred while trying to delete the comment" : "Došlo k chybě při pokusu o smazání komentáře",
"An error occurred while trying to create the comment" : "Došlo k chybě při pokusu o vytvoření komentáře",
"%1$s commented" : "%1$s okomentováno"
"%1$s commented" : "%1$s okomentováno",
"_%n unread comment_::_%n unread comments_" : ["%n nepřečtený komentář","%n nepřečtené komentáře","%n nepřečtených komentářů","%n nepřečtené komentáře"]
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");

View file

@ -19,13 +19,13 @@
"Retry" : "Zkusit znovu",
"Failed to mark comments as read" : "Nepodařilo se označit komentáře jako přečtené",
"Unable to load the comments list" : "Nedaří se načíst seznam komentářů",
"_%n unread comment_::_%n unread comments_" : ["%n nepřečtený komentář","%n nepřečtené komentáře","%n nepřečtených komentářů","%n nepřečtené komentáře"],
"_1 new comment_::_{unread} new comments_" : ["Jeden nový komentář","{unread} nové komentáře","{unread} nových komentářů","{unread} nové komentáře"],
"Comment" : "Komentář",
"An error occurred while trying to edit the comment" : "Došlo k chybě při pokusu o úpravu komentáře",
"Comment deleted" : "Komentář smazán",
"An error occurred while trying to delete the comment" : "Došlo k chybě při pokusu o smazání komentáře",
"An error occurred while trying to create the comment" : "Došlo k chybě při pokusu o vytvoření komentáře",
"%1$s commented" : "%1$s okomentováno"
"%1$s commented" : "%1$s okomentováno",
"_%n unread comment_::_%n unread comments_" : ["%n nepřečtený komentář","%n nepřečtené komentáře","%n nepřečtených komentářů","%n nepřečtené komentáře"]
},"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

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Prøv igen",
"Failed to mark comments as read" : "Kunne ikke markere kommentarer som læst",
"Unable to load the comments list" : "Kan ikke indlæse kommentarlisten",
"_%n unread comment_::_%n unread comments_" : ["%n ulæst kommentar","%n ulæste kommentarer"],
"_1 new comment_::_{unread} new comments_" : ["1 ny kommentar","{unread} nye kommentarer"],
"Comment" : "Kommentér",
"An error occurred while trying to edit the comment" : "Der opstod en fejl under forsøget på at redigere kommentaren",
"Comment deleted" : "Kommentar slettet",
"An error occurred while trying to delete the comment" : "Der opstod en fejl under forsøget på at slette kommentaren",
"An error occurred while trying to create the comment" : "Der opstod en fejl under forsøget på at oprette kommentaren",
"%1$s commented" : "%1$s kommenterede"
"%1$s commented" : "%1$s kommenterede",
"_%n unread comment_::_%n unread comments_" : ["%n ulæst kommentar","%n ulæste kommentarer"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -19,13 +19,13 @@
"Retry" : "Prøv igen",
"Failed to mark comments as read" : "Kunne ikke markere kommentarer som læst",
"Unable to load the comments list" : "Kan ikke indlæse kommentarlisten",
"_%n unread comment_::_%n unread comments_" : ["%n ulæst kommentar","%n ulæste kommentarer"],
"_1 new comment_::_{unread} new comments_" : ["1 ny kommentar","{unread} nye kommentarer"],
"Comment" : "Kommentér",
"An error occurred while trying to edit the comment" : "Der opstod en fejl under forsøget på at redigere kommentaren",
"Comment deleted" : "Kommentar slettet",
"An error occurred while trying to delete the comment" : "Der opstod en fejl under forsøget på at slette kommentaren",
"An error occurred while trying to create the comment" : "Der opstod en fejl under forsøget på at oprette kommentaren",
"%1$s commented" : "%1$s kommenterede"
"%1$s commented" : "%1$s kommenterede",
"_%n unread comment_::_%n unread comments_" : ["%n ulæst kommentar","%n ulæste kommentarer"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -20,13 +20,13 @@ OC.L10N.register(
"No more messages" : "Keine weiteren Nachrichten",
"Retry" : "Wiederholen",
"Unable to load the comments list" : "Kommentarliste konnte nicht geladen werden",
"_%n unread comment_::_%n unread comments_" : ["%n ungelesener Kommentar","%n ungelesene Kommentare"],
"_1 new comment_::_{unread} new comments_" : ["1 neuer Kommentar","[unread] neue Kommentare"],
"Comment" : "Kommentar",
"An error occurred while trying to edit the comment" : "Es ist ein Fehler beim Bearbeiten des Kommentars aufgetreten",
"Comment deleted" : "Kommentar gelöscht",
"An error occurred while trying to delete the comment" : "Es ist ein Fehler beim Löschen des Kommentars aufgetreten",
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten",
"%1$s commented" : "%1$s kommentierte"
"%1$s commented" : "%1$s kommentierte",
"_%n unread comment_::_%n unread comments_" : ["%n ungelesener Kommentar","%n ungelesene Kommentare"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -18,13 +18,13 @@
"No more messages" : "Keine weiteren Nachrichten",
"Retry" : "Wiederholen",
"Unable to load the comments list" : "Kommentarliste konnte nicht geladen werden",
"_%n unread comment_::_%n unread comments_" : ["%n ungelesener Kommentar","%n ungelesene Kommentare"],
"_1 new comment_::_{unread} new comments_" : ["1 neuer Kommentar","[unread] neue Kommentare"],
"Comment" : "Kommentar",
"An error occurred while trying to edit the comment" : "Es ist ein Fehler beim Bearbeiten des Kommentars aufgetreten",
"Comment deleted" : "Kommentar gelöscht",
"An error occurred while trying to delete the comment" : "Es ist ein Fehler beim Löschen des Kommentars aufgetreten",
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten",
"%1$s commented" : "%1$s kommentierte"
"%1$s commented" : "%1$s kommentierte",
"_%n unread comment_::_%n unread comments_" : ["%n ungelesener Kommentar","%n ungelesene Kommentare"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Wiederholen",
"Failed to mark comments as read" : "Kommentare konnten nicht als gelesen markiert werden",
"Unable to load the comments list" : "Kommentarliste kann nicht geladen werden",
"_%n unread comment_::_%n unread comments_" : ["%n ungelesener Kommentar","%n ungelesene Kommentare"],
"_1 new comment_::_{unread} new comments_" : ["1 neuer Kommentar","[unread] neue Kommentare"],
"Comment" : "Kommentar",
"An error occurred while trying to edit the comment" : "Es ist ein Fehler beim Bearbeiten des Kommentars aufgetreten",
"Comment deleted" : "Kommentar gelöscht",
"An error occurred while trying to delete the comment" : "Es ist ein Fehler beim Löschen des Kommentars aufgetreten",
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten",
"%1$s commented" : "%1$s kommentierte"
"%1$s commented" : "%1$s kommentierte",
"_%n unread comment_::_%n unread comments_" : ["%n ungelesener Kommentar","%n ungelesene Kommentare"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -19,13 +19,13 @@
"Retry" : "Wiederholen",
"Failed to mark comments as read" : "Kommentare konnten nicht als gelesen markiert werden",
"Unable to load the comments list" : "Kommentarliste kann nicht geladen werden",
"_%n unread comment_::_%n unread comments_" : ["%n ungelesener Kommentar","%n ungelesene Kommentare"],
"_1 new comment_::_{unread} new comments_" : ["1 neuer Kommentar","[unread] neue Kommentare"],
"Comment" : "Kommentar",
"An error occurred while trying to edit the comment" : "Es ist ein Fehler beim Bearbeiten des Kommentars aufgetreten",
"Comment deleted" : "Kommentar gelöscht",
"An error occurred while trying to delete the comment" : "Es ist ein Fehler beim Löschen des Kommentars aufgetreten",
"An error occurred while trying to create the comment" : "Es ist ein Fehler beim Erstellen des Kommentars aufgetreten",
"%1$s commented" : "%1$s kommentierte"
"%1$s commented" : "%1$s kommentierte",
"_%n unread comment_::_%n unread comments_" : ["%n ungelesener Kommentar","%n ungelesene Kommentare"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -20,13 +20,13 @@ OC.L10N.register(
"No more messages" : "Δεν υπάρχουν άλλα μηνύματα",
"Retry" : "Δοκιμή ξανά",
"Unable to load the comments list" : "Δεν είναι δυνατή η μεταφόρτωση της λίστας σχολίων.",
"_%n unread comment_::_%n unread comments_" : ["%n αδιάβαστο σχόλιο","%n αδιάβαστα σχόλια"],
"_1 new comment_::_{unread} new comments_" : ["1 νέο σχόλιο","{unread} νέα σχόλια"],
"Comment" : "Σχόλιο",
"An error occurred while trying to edit the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια επεξεργασίας του σχολίου",
"Comment deleted" : "Το σχόλιο διαγράφηκε",
"An error occurred while trying to delete the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια διαγραφής του σχολίου",
"An error occurred while trying to create the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια δημιουργίας του σχολίου",
"%1$s commented" : "%1$s σχολίασε"
"%1$s commented" : "%1$s σχολίασε",
"_%n unread comment_::_%n unread comments_" : ["%n αδιάβαστο σχόλιο","%n αδιάβαστα σχόλια"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -18,13 +18,13 @@
"No more messages" : "Δεν υπάρχουν άλλα μηνύματα",
"Retry" : "Δοκιμή ξανά",
"Unable to load the comments list" : "Δεν είναι δυνατή η μεταφόρτωση της λίστας σχολίων.",
"_%n unread comment_::_%n unread comments_" : ["%n αδιάβαστο σχόλιο","%n αδιάβαστα σχόλια"],
"_1 new comment_::_{unread} new comments_" : ["1 νέο σχόλιο","{unread} νέα σχόλια"],
"Comment" : "Σχόλιο",
"An error occurred while trying to edit the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια επεξεργασίας του σχολίου",
"Comment deleted" : "Το σχόλιο διαγράφηκε",
"An error occurred while trying to delete the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια διαγραφής του σχολίου",
"An error occurred while trying to create the comment" : "Παρουσιάστηκε σφάλμα κατά την προσπάθεια δημιουργίας του σχολίου",
"%1$s commented" : "%1$s σχολίασε"
"%1$s commented" : "%1$s σχολίασε",
"_%n unread comment_::_%n unread comments_" : ["%n αδιάβαστο σχόλιο","%n αδιάβαστα σχόλια"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Retry",
"Failed to mark comments as read" : "Failed to mark comments as read",
"Unable to load the comments list" : "Unable to load the comments list",
"_%n unread comment_::_%n unread comments_" : ["%n unread comment","%n unread comments"],
"_1 new comment_::_{unread} new comments_" : ["1 new comment","{unread} new comments"],
"Comment" : "Comment",
"An error occurred while trying to edit the comment" : "An error occurred while trying to edit the comment",
"Comment deleted" : "Comment deleted",
"An error occurred while trying to delete the comment" : "An error occurred while trying to delete the comment",
"An error occurred while trying to create the comment" : "An error occurred while trying to create the comment",
"%1$s commented" : "%1$s commented"
"%1$s commented" : "%1$s commented",
"_%n unread comment_::_%n unread comments_" : ["%n unread comment","%n unread comments"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -19,13 +19,13 @@
"Retry" : "Retry",
"Failed to mark comments as read" : "Failed to mark comments as read",
"Unable to load the comments list" : "Unable to load the comments list",
"_%n unread comment_::_%n unread comments_" : ["%n unread comment","%n unread comments"],
"_1 new comment_::_{unread} new comments_" : ["1 new comment","{unread} new comments"],
"Comment" : "Comment",
"An error occurred while trying to edit the comment" : "An error occurred while trying to edit the comment",
"Comment deleted" : "Comment deleted",
"An error occurred while trying to delete the comment" : "An error occurred while trying to delete the comment",
"An error occurred while trying to create the comment" : "An error occurred while trying to create the comment",
"%1$s commented" : "%1$s commented"
"%1$s commented" : "%1$s commented",
"_%n unread comment_::_%n unread comments_" : ["%n unread comment","%n unread comments"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -14,9 +14,9 @@ OC.L10N.register(
"Delete comment" : "Forigi komenton",
"No comments yet, start the conversation!" : "Neniu komento, ekkonversaciu!",
"Retry" : "Reprovi",
"_%n unread comment_::_%n unread comments_" : ["%n nelegataj komentoj","%n nelegataj komentoj"],
"_1 new comment_::_{unread} new comments_" : ["1 nova komento","{unread} novaj komentoj"],
"Comment" : "Komento",
"%1$s commented" : "%1$s komentis"
"%1$s commented" : "%1$s komentis",
"_%n unread comment_::_%n unread comments_" : ["%n nelegataj komentoj","%n nelegataj komentoj"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -12,9 +12,9 @@
"Delete comment" : "Forigi komenton",
"No comments yet, start the conversation!" : "Neniu komento, ekkonversaciu!",
"Retry" : "Reprovi",
"_%n unread comment_::_%n unread comments_" : ["%n nelegataj komentoj","%n nelegataj komentoj"],
"_1 new comment_::_{unread} new comments_" : ["1 nova komento","{unread} novaj komentoj"],
"Comment" : "Komento",
"%1$s commented" : "%1$s komentis"
"%1$s commented" : "%1$s komentis",
"_%n unread comment_::_%n unread comments_" : ["%n nelegataj komentoj","%n nelegataj komentoj"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Reintentar",
"Failed to mark comments as read" : "Fallo al marcar los comentarios como leídos",
"Unable to load the comments list" : "No se pudo cargar la lista de comentarios",
"_%n unread comment_::_%n unread comments_" : ["%n comentario sin leer","%n comentarios no leídos","%n comentarios no leídos"],
"_1 new comment_::_{unread} new comments_" : ["1 comentario nuevo","{unread} comentarios nuevos","{unread} comentarios nuevos"],
"Comment" : "Comentar",
"An error occurred while trying to edit the comment" : "Ocurrió un error intentando editar el comentario",
"Comment deleted" : "Comentario borrado",
"An error occurred while trying to delete the comment" : "Ocurrió un error intentando borrar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error intentando crear el comentario",
"%1$s commented" : "%1$s comentados"
"%1$s commented" : "%1$s comentados",
"_%n unread comment_::_%n unread comments_" : ["%n comentario sin leer","%n comentarios no leídos","%n comentarios no leídos"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -19,13 +19,13 @@
"Retry" : "Reintentar",
"Failed to mark comments as read" : "Fallo al marcar los comentarios como leídos",
"Unable to load the comments list" : "No se pudo cargar la lista de comentarios",
"_%n unread comment_::_%n unread comments_" : ["%n comentario sin leer","%n comentarios no leídos","%n comentarios no leídos"],
"_1 new comment_::_{unread} new comments_" : ["1 comentario nuevo","{unread} comentarios nuevos","{unread} comentarios nuevos"],
"Comment" : "Comentar",
"An error occurred while trying to edit the comment" : "Ocurrió un error intentando editar el comentario",
"Comment deleted" : "Comentario borrado",
"An error occurred while trying to delete the comment" : "Ocurrió un error intentando borrar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error intentando crear el comentario",
"%1$s commented" : "%1$s comentados"
"%1$s commented" : "%1$s comentados",
"_%n unread comment_::_%n unread comments_" : ["%n comentario sin leer","%n comentarios no leídos","%n comentarios no leídos"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -14,8 +14,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "No hay comentarios aún, iniciar la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentar",
"%1$s commented" : "%1$s comentados"
"%1$s commented" : "%1$s comentados",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -12,8 +12,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "No hay comentarios aún, iniciar la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentar",
"%1$s commented" : "%1$s comentados"
"%1$s commented" : "%1$s comentados",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,9 +13,9 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"Comment deleted" : "Comentario borrado",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,9 +11,9 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"Comment deleted" : "Comentario borrado",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Reintentar",
"Failed to mark comments as read" : "Error al marcar los comentarios como leídos",
"Unable to load the comments list" : "No se puede cargar la lista de comentarios",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"_1 new comment_::_{unread} new comments_" : ["1 comentario nuevo","{unread} comentarios nuevos","{unread} comentarios nuevos"],
"Comment" : "Comentario",
"An error occurred while trying to edit the comment" : "Ocurrió un error al intentar editar el comentario",
"Comment deleted" : "Comentario eliminado",
"An error occurred while trying to delete the comment" : "Ocurrió un error al intentar eliminar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -19,13 +19,13 @@
"Retry" : "Reintentar",
"Failed to mark comments as read" : "Error al marcar los comentarios como leídos",
"Unable to load the comments list" : "No se puede cargar la lista de comentarios",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"_1 new comment_::_{unread} new comments_" : ["1 comentario nuevo","{unread} comentarios nuevos","{unread} comentarios nuevos"],
"Comment" : "Comentario",
"An error occurred while trying to edit the comment" : "Ocurrió un error al intentar editar el comentario",
"Comment deleted" : "Comentario eliminado",
"An error occurred while trying to delete the comment" : "Ocurrió un error al intentar eliminar el comentario",
"An error occurred while trying to create the comment" : "Ocurrió un error al intentar crear el comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -14,8 +14,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -12,8 +12,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -13,8 +13,8 @@ OC.L10N.register(
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -11,8 +11,8 @@
"Delete comment" : "Borrar comentario",
"No comments yet, start the conversation!" : "¡Aún no hay comentarios, inicia la conversación!",
"Retry" : "Reintentar",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"Comment" : "Comentario",
"%1$s commented" : "%1$s comentó"
"%1$s commented" : "%1$s comentó",
"_%n unread comment_::_%n unread comments_" : ["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"]
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Proovi uuesti",
"Failed to mark comments as read" : "Kommentaaride loetuks märkimine ebaõnnestus",
"Unable to load the comments list" : "Kommentaaride loendi laadimine ebaõnnestus",
"_%n unread comment_::_%n unread comments_" : ["%n lugemata kommentaar","%n lugemata kommentaari"],
"_1 new comment_::_{unread} new comments_" : ["1 uus kommentaar","{unread} uus kommentaar"],
"Comment" : "Kommentaar",
"An error occurred while trying to edit the comment" : "Kommentaari muutmisel tekkis tõrge",
"Comment deleted" : "Kommentaar kustutatud",
"An error occurred while trying to delete the comment" : "Kommentaari kustutamisel tekkis tõrge",
"An error occurred while trying to create the comment" : "Kommentaari lisamisel tekkis tõrge",
"%1$s commented" : "%1$s kommenteeris"
"%1$s commented" : "%1$s kommenteeris",
"_%n unread comment_::_%n unread comments_" : ["%n lugemata kommentaar","%n lugemata kommentaari"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -19,13 +19,13 @@
"Retry" : "Proovi uuesti",
"Failed to mark comments as read" : "Kommentaaride loetuks märkimine ebaõnnestus",
"Unable to load the comments list" : "Kommentaaride loendi laadimine ebaõnnestus",
"_%n unread comment_::_%n unread comments_" : ["%n lugemata kommentaar","%n lugemata kommentaari"],
"_1 new comment_::_{unread} new comments_" : ["1 uus kommentaar","{unread} uus kommentaar"],
"Comment" : "Kommentaar",
"An error occurred while trying to edit the comment" : "Kommentaari muutmisel tekkis tõrge",
"Comment deleted" : "Kommentaar kustutatud",
"An error occurred while trying to delete the comment" : "Kommentaari kustutamisel tekkis tõrge",
"An error occurred while trying to create the comment" : "Kommentaari lisamisel tekkis tõrge",
"%1$s commented" : "%1$s kommenteeris"
"%1$s commented" : "%1$s kommenteeris",
"_%n unread comment_::_%n unread comments_" : ["%n lugemata kommentaar","%n lugemata kommentaari"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Saiatu berriro",
"Failed to mark comments as read" : "Iruzkinak irakurritako gisa markatzeak huts egin du",
"Unable to load the comments list" : "Ezin da iruzkinen zerrenda kargatu",
"_%n unread comment_::_%n unread comments_" : ["iruzkin %n irakurri gabe","%n iruzkin irakurri gabe"],
"_1 new comment_::_{unread} new comments_" : ["Iruzkin berri 1","{unread} iruzkin berri"],
"Comment" : "Iruzkindu",
"An error occurred while trying to edit the comment" : "Errorea gertatu da iruzkina editatzen saiatzean",
"Comment deleted" : "Iruzkina ezabatu da",
"An error occurred while trying to delete the comment" : "Errorea gertatu da iruzkina ezabatzen saiatzean",
"An error occurred while trying to create the comment" : "Errorea gertatu da iruzkina sortzen saiatzean",
"%1$s commented" : "%1$s-(e)k iruzkindu du"
"%1$s commented" : "%1$s-(e)k iruzkindu du",
"_%n unread comment_::_%n unread comments_" : ["iruzkin %n irakurri gabe","%n iruzkin irakurri gabe"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -19,13 +19,13 @@
"Retry" : "Saiatu berriro",
"Failed to mark comments as read" : "Iruzkinak irakurritako gisa markatzeak huts egin du",
"Unable to load the comments list" : "Ezin da iruzkinen zerrenda kargatu",
"_%n unread comment_::_%n unread comments_" : ["iruzkin %n irakurri gabe","%n iruzkin irakurri gabe"],
"_1 new comment_::_{unread} new comments_" : ["Iruzkin berri 1","{unread} iruzkin berri"],
"Comment" : "Iruzkindu",
"An error occurred while trying to edit the comment" : "Errorea gertatu da iruzkina editatzen saiatzean",
"Comment deleted" : "Iruzkina ezabatu da",
"An error occurred while trying to delete the comment" : "Errorea gertatu da iruzkina ezabatzen saiatzean",
"An error occurred while trying to create the comment" : "Errorea gertatu da iruzkina sortzen saiatzean",
"%1$s commented" : "%1$s-(e)k iruzkindu du"
"%1$s commented" : "%1$s-(e)k iruzkindu du",
"_%n unread comment_::_%n unread comments_" : ["iruzkin %n irakurri gabe","%n iruzkin irakurri gabe"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "تلاش دوباره",
"Failed to mark comments as read" : "Failed to mark comments as read",
"Unable to load the comments list" : "Unable to load the comments list",
"_%n unread comment_::_%n unread comments_" : ["%n unread comment","%n unread comments"],
"_1 new comment_::_{unread} new comments_" : ["1 new comment","{unread} new comments"],
"Comment" : "نظر",
"An error occurred while trying to edit the comment" : "An error occurred while trying to edit the comment",
"Comment deleted" : "توضیح حذف",
"An error occurred while trying to delete the comment" : "An error occurred while trying to delete the comment",
"An error occurred while trying to create the comment" : "An error occurred while trying to create the comment",
"%1$s commented" : "%1$s commented"
"%1$s commented" : "%1$s commented",
"_%n unread comment_::_%n unread comments_" : ["%n unread comment","%n unread comments"]
},
"nplurals=2; plural=(n > 1);");

View file

@ -19,13 +19,13 @@
"Retry" : "تلاش دوباره",
"Failed to mark comments as read" : "Failed to mark comments as read",
"Unable to load the comments list" : "Unable to load the comments list",
"_%n unread comment_::_%n unread comments_" : ["%n unread comment","%n unread comments"],
"_1 new comment_::_{unread} new comments_" : ["1 new comment","{unread} new comments"],
"Comment" : "نظر",
"An error occurred while trying to edit the comment" : "An error occurred while trying to edit the comment",
"Comment deleted" : "توضیح حذف",
"An error occurred while trying to delete the comment" : "An error occurred while trying to delete the comment",
"An error occurred while trying to create the comment" : "An error occurred while trying to create the comment",
"%1$s commented" : "%1$s commented"
"%1$s commented" : "%1$s commented",
"_%n unread comment_::_%n unread comments_" : ["%n unread comment","%n unread comments"]
},"pluralForm" :"nplurals=2; plural=(n > 1);"
}

View file

@ -19,13 +19,13 @@ OC.L10N.register(
"Retry" : "Yritä uudelleen",
"Failed to mark comments as read" : "Kommenttien merkitseminen luetuksi epäonnistui",
"Unable to load the comments list" : "Kommenttilistaa ei voitu ladata",
"_%n unread comment_::_%n unread comments_" : ["%n lukematon kommentti","%n lukematonta kommenttia"],
"_1 new comment_::_{unread} new comments_" : ["1 uusi kommentti","{unread} uutta kommenttia"],
"Comment" : "Kommentti",
"An error occurred while trying to edit the comment" : "Kommenttia muokatessa tapahtui virhe",
"Comment deleted" : "Kommentti poistettu",
"An error occurred while trying to delete the comment" : "Kommenttia poistaessa tapahtui virhe",
"An error occurred while trying to create the comment" : "Kommenttia luodessa tapahtui virhe",
"%1$s commented" : "%1$s kommentoi"
"%1$s commented" : "%1$s kommentoi",
"_%n unread comment_::_%n unread comments_" : ["%n lukematon kommentti","%n lukematonta kommenttia"]
},
"nplurals=2; plural=(n != 1);");

View file

@ -17,13 +17,13 @@
"Retry" : "Yritä uudelleen",
"Failed to mark comments as read" : "Kommenttien merkitseminen luetuksi epäonnistui",
"Unable to load the comments list" : "Kommenttilistaa ei voitu ladata",
"_%n unread comment_::_%n unread comments_" : ["%n lukematon kommentti","%n lukematonta kommenttia"],
"_1 new comment_::_{unread} new comments_" : ["1 uusi kommentti","{unread} uutta kommenttia"],
"Comment" : "Kommentti",
"An error occurred while trying to edit the comment" : "Kommenttia muokatessa tapahtui virhe",
"Comment deleted" : "Kommentti poistettu",
"An error occurred while trying to delete the comment" : "Kommenttia poistaessa tapahtui virhe",
"An error occurred while trying to create the comment" : "Kommenttia luodessa tapahtui virhe",
"%1$s commented" : "%1$s kommentoi"
"%1$s commented" : "%1$s kommentoi",
"_%n unread comment_::_%n unread comments_" : ["%n lukematon kommentti","%n lukematonta kommenttia"]
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Réessayer",
"Failed to mark comments as read" : "Les commentaires n'ont pas été marqués comme lus",
"Unable to load the comments list" : "Impossible de charger la liste des commentaires",
"_%n unread comment_::_%n unread comments_" : ["%n commentaire non lu","%n commentaires non lus","%n commentaires non lus"],
"_1 new comment_::_{unread} new comments_" : ["1 nouveau commentaire","{unread} nouveaux commentaires","{unread} nouveaux commentaires"],
"Comment" : "Commenter",
"An error occurred while trying to edit the comment" : "Une erreur s'est produite lors de la tentative de modification du commentaire",
"Comment deleted" : "Commentaire supprimé",
"An error occurred while trying to delete the comment" : "Une erreur s'est produite lors de la tentative de suppression du commentaire",
"An error occurred while trying to create the comment" : "Une erreur s'est produite lors de la tentative de création du commentaire",
"%1$s commented" : "%1$s a commenté"
"%1$s commented" : "%1$s a commenté",
"_%n unread comment_::_%n unread comments_" : ["%n commentaire non lu","%n commentaires non lus","%n commentaires non lus"]
},
"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");

View file

@ -19,13 +19,13 @@
"Retry" : "Réessayer",
"Failed to mark comments as read" : "Les commentaires n'ont pas été marqués comme lus",
"Unable to load the comments list" : "Impossible de charger la liste des commentaires",
"_%n unread comment_::_%n unread comments_" : ["%n commentaire non lu","%n commentaires non lus","%n commentaires non lus"],
"_1 new comment_::_{unread} new comments_" : ["1 nouveau commentaire","{unread} nouveaux commentaires","{unread} nouveaux commentaires"],
"Comment" : "Commenter",
"An error occurred while trying to edit the comment" : "Une erreur s'est produite lors de la tentative de modification du commentaire",
"Comment deleted" : "Commentaire supprimé",
"An error occurred while trying to delete the comment" : "Une erreur s'est produite lors de la tentative de suppression du commentaire",
"An error occurred while trying to create the comment" : "Une erreur s'est produite lors de la tentative de création du commentaire",
"%1$s commented" : "%1$s a commenté"
"%1$s commented" : "%1$s a commenté",
"_%n unread comment_::_%n unread comments_" : ["%n commentaire non lu","%n commentaires non lus","%n commentaires non lus"]
},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}

View file

@ -21,13 +21,13 @@ OC.L10N.register(
"Retry" : "Tentar de novo",
"Failed to mark comments as read" : "Produciuse un fallo ao marcar os comentarios como lidos",
"Unable to load the comments list" : "Non é posíbel cargar a lista de comentarios",
"_%n unread comment_::_%n unread comments_" : ["%n comentario sen ler","%n comentarios sen ler"],
"_1 new comment_::_{unread} new comments_" : ["1 comentario novo","{unread} comentarios novos"],
"Comment" : "Comentario",
"An error occurred while trying to edit the comment" : "Produciuse un erro cando tentaba editar o comentario",
"Comment deleted" : "Comentario eliminado",
"An error occurred while trying to delete the comment" : "Produciuse un erro cando tentaba eliminar o comentario",
"An error occurred while trying to create the comment" : "Produciuse un erro cando tentaba crear o comentario",
"%1$s commented" : "%1$s comentados"
"%1$s commented" : "%1$s comentados",
"_%n unread comment_::_%n unread comments_" : ["%n comentario sen ler","%n comentarios sen ler"]
},
"nplurals=2; plural=(n != 1);");

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