Compare commits
2 Commits
v1.8.2
...
enh/create
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0949886348 | ||
|
|
e4ccf431a4 |
157
.drone.yml
Normal file
@@ -0,0 +1,157 @@
|
||||
kind: pipeline
|
||||
name: checkers
|
||||
steps:
|
||||
- name: compatibility
|
||||
image: nextcloudci/php7.2:php7.2-13
|
||||
environment:
|
||||
APP_NAME: deck
|
||||
CORE_BRANCH: master
|
||||
DB: sqlite
|
||||
commands:
|
||||
# Pre-setup steps
|
||||
- wget https://raw.githubusercontent.com/nextcloud/travis_ci/master/before_install.sh
|
||||
- bash ./before_install.sh $APP_NAME $CORE_BRANCH $DB
|
||||
- cd ../server
|
||||
# Code checker
|
||||
- ./occ app:check-code $APP_NAME -c strong-comparison
|
||||
- ./occ app:check-code $APP_NAME -c deprecation
|
||||
- cd apps/$APP_NAME/
|
||||
- name: syntax-php7.2
|
||||
image: nextcloudci/php7.2:php7.2-13
|
||||
environment:
|
||||
APP_NAME: deck
|
||||
CORE_BRANCH: master
|
||||
DB: sqlite
|
||||
commands:
|
||||
- composer install
|
||||
- ./vendor/bin/parallel-lint --exclude ./vendor/ .
|
||||
- name: syntax-php7.3
|
||||
image: nextcloudci/php7.3:php7.3-2
|
||||
environment:
|
||||
APP_NAME: deck
|
||||
CORE_BRANCH: master
|
||||
DB: sqlite
|
||||
commands:
|
||||
- composer install
|
||||
- ./vendor/bin/parallel-lint --exclude ./vendor/ .
|
||||
- name: syntax-php7.4
|
||||
image: nextcloudci/php7.4:2
|
||||
environment:
|
||||
APP_NAME: deck
|
||||
CORE_BRANCH: master
|
||||
DB: sqlite
|
||||
commands:
|
||||
- composer install
|
||||
- ./vendor/bin/parallel-lint --exclude ./vendor/ .
|
||||
trigger:
|
||||
branch:
|
||||
- master
|
||||
- stable*
|
||||
event:
|
||||
- pull_request
|
||||
- push
|
||||
---
|
||||
kind: pipeline
|
||||
name: unit-php7.2
|
||||
steps:
|
||||
- name: php7.2
|
||||
image: nextcloudci/php7.2:php7.2-13
|
||||
environment:
|
||||
APP_NAME: deck
|
||||
CORE_BRANCH: master
|
||||
DB: sqlite
|
||||
commands:
|
||||
# Pre-setup steps
|
||||
- wget https://raw.githubusercontent.com/nextcloud/travis_ci/master/before_install.sh
|
||||
- bash ./before_install.sh $APP_NAME $CORE_BRANCH $DB
|
||||
- cd ../server/
|
||||
- php occ app:enable deck
|
||||
- cd apps/$APP_NAME
|
||||
- composer install
|
||||
- phpunit -c tests/phpunit.xml --coverage-clover build/php-unit.coverage.xml
|
||||
- phpunit -c tests/phpunit.integration.xml --coverage-clover build/php-integration.coverage.xml
|
||||
trigger:
|
||||
branch:
|
||||
- master
|
||||
- stable*
|
||||
event:
|
||||
- pull_request
|
||||
- push
|
||||
---
|
||||
kind: pipeline
|
||||
name: unit-php7.3
|
||||
steps:
|
||||
- name: php7.3
|
||||
image: nextcloudci/php7.3:php7.3-5
|
||||
environment:
|
||||
APP_NAME: deck
|
||||
CORE_BRANCH: master
|
||||
DB: sqlite
|
||||
commands:
|
||||
# Pre-setup steps
|
||||
- wget https://raw.githubusercontent.com/nextcloud/travis_ci/master/before_install.sh
|
||||
- bash ./before_install.sh $APP_NAME $CORE_BRANCH $DB
|
||||
- cd ../server/
|
||||
- php occ app:enable deck
|
||||
- cd apps/$APP_NAME
|
||||
- composer install
|
||||
- phpunit -c tests/phpunit.xml --coverage-clover build/php-unit.coverage.xml
|
||||
- phpunit -c tests/phpunit.integration.xml --coverage-clover build/php-integration.coverage.xml
|
||||
trigger:
|
||||
branch:
|
||||
- master
|
||||
- stable*
|
||||
event:
|
||||
- pull_request
|
||||
- push
|
||||
---
|
||||
kind: pipeline
|
||||
name: integration
|
||||
steps:
|
||||
- name: integration
|
||||
image: nextcloudci/php7.2:php7.2-13
|
||||
environment:
|
||||
APP_NAME: deck
|
||||
CORE_BRANCH: master
|
||||
DB: sqlite
|
||||
commands:
|
||||
# Pre-setup steps
|
||||
- wget https://raw.githubusercontent.com/nextcloud/travis_ci/master/before_install.sh
|
||||
- bash ./before_install.sh $APP_NAME $CORE_BRANCH $DB
|
||||
- cd ../server/
|
||||
- php occ app:enable deck
|
||||
- cd apps/$APP_NAME
|
||||
- cd tests/integration
|
||||
- ./run.sh || true
|
||||
trigger:
|
||||
branch:
|
||||
- master
|
||||
- stable*
|
||||
event:
|
||||
- pull_request
|
||||
- push
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
name: frontend
|
||||
steps:
|
||||
- name: install
|
||||
image: node:lts-alpine
|
||||
commands:
|
||||
- npm install
|
||||
- name: eslint
|
||||
image: node:lts-alpine
|
||||
commands:
|
||||
- npm run lint
|
||||
- name: jsbuild
|
||||
image: node:lts-alpine
|
||||
commands:
|
||||
- npm run build
|
||||
trigger:
|
||||
branch:
|
||||
- master
|
||||
- stable*
|
||||
- vue
|
||||
event:
|
||||
- pull_request
|
||||
- push
|
||||
@@ -3,10 +3,7 @@ root = true
|
||||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
indent_size = tab
|
||||
indent_style = tab
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.{js,vue}]
|
||||
indent_style = tab
|
||||
|
||||
12
.eslintrc.js
@@ -1,14 +1,8 @@
|
||||
module.exports = {
|
||||
root: true,
|
||||
extends: [
|
||||
'@nextcloud',
|
||||
'nextcloud'
|
||||
],
|
||||
rules: {
|
||||
'jsdoc/require-param-description': ['off'],
|
||||
'jsdoc/require-param-type': ['off'],
|
||||
'jsdoc/check-param-names': ['off'],
|
||||
'jsdoc/no-undefined-types': ['off'],
|
||||
'jsdoc/require-property-description': ['off'],
|
||||
'import/no-named-as-default-member': ['off']
|
||||
},
|
||||
'valid-jsdoc': ['warn'],
|
||||
}
|
||||
}
|
||||
|
||||
23
.github/ISSUE_TEMPLATE/Bug_report.md
vendored
@@ -4,29 +4,6 @@ about: Create a report to help us improve
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Thanks for reporting issues back!
|
||||
|
||||
Guidelines for submitting issues:
|
||||
|
||||
* Please search the existing issues first, it's likely that your issue was already reported or even fixed.
|
||||
|
||||
* SECURITY: Report any potential security bug to us via our HackerOne page (https://hackerone.com/nextcloud) following our security policy (https://nextcloud.com/security/) instead of filing an issue in our bug tracker.
|
||||
|
||||
* The issues in other components should be reported in their respective repositories: You will find them in our GitHub Organization (https://github.com/nextcloud/)
|
||||
|
||||
* You can also use the Issue Template app to prefill most of the required information: https://apps.nextcloud.com/apps/issuetemplate
|
||||
-->
|
||||
|
||||
<!--- Please keep this note for other contributors -->
|
||||
|
||||
### How to use GitHub
|
||||
|
||||
* Please use the 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to show that you are affected by the same issue.
|
||||
* Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
|
||||
* Subscribe to receive notifications on status change and new comments.
|
||||
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is.
|
||||
|
||||
|
||||
22
.github/ISSUE_TEMPLATE/Feature_request.md
vendored
@@ -4,28 +4,6 @@ about: Suggest an idea for this project
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Thanks for reporting issues back!
|
||||
|
||||
Guidelines for submitting issues:
|
||||
|
||||
* Please search the existing issues first, it's likely that your issue was already reported or even fixed.
|
||||
|
||||
* SECURITY: Report any potential security bug to us via our HackerOne page (https://hackerone.com/nextcloud) following our security policy (https://nextcloud.com/security/) instead of filing an issue in our bug tracker.
|
||||
|
||||
* The issues in other components should be reported in their respective repositories: You will find them in our GitHub Organization (https://github.com/nextcloud/)
|
||||
|
||||
* You can also use the Issue Template app to prefill most of the required information: https://apps.nextcloud.com/apps/issuetemplate
|
||||
-->
|
||||
|
||||
<!--- Please keep this note for other contributors -->
|
||||
|
||||
### How to use GitHub
|
||||
|
||||
* Please use the 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to show that you are affected by the same issue.
|
||||
* Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
|
||||
* Subscribe to receive notifications on status change and new comments.
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||
|
||||
|
||||
43
.github/dependabot.yml
vendored
@@ -1,43 +0,0 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: npm
|
||||
directory: "/"
|
||||
target-branch: "master"
|
||||
schedule:
|
||||
interval: weekly
|
||||
day: saturday
|
||||
time: "03:00"
|
||||
timezone: Europe/Paris
|
||||
open-pull-requests-limit: 10
|
||||
reviewers:
|
||||
- juliushaertl
|
||||
- package-ecosystem: composer
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: weekly
|
||||
day: saturday
|
||||
time: "03:00"
|
||||
timezone: Europe/Paris
|
||||
open-pull-requests-limit: 10
|
||||
reviewers:
|
||||
- juliushaertl
|
||||
- package-ecosystem: composer
|
||||
directory: "/tests/integration"
|
||||
schedule:
|
||||
interval: weekly
|
||||
day: saturday
|
||||
time: "03:00"
|
||||
timezone: Europe/Paris
|
||||
open-pull-requests-limit: 10
|
||||
reviewers:
|
||||
- juliushaertl
|
||||
- package-ecosystem: github-actions
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: weekly
|
||||
day: saturday
|
||||
time: "03:00"
|
||||
timezone: Europe/Paris
|
||||
open-pull-requests-limit: 10
|
||||
reviewers:
|
||||
- juliushaertl
|
||||
25
.github/stale.yml
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
# Number of days of inactivity before an issue becomes stale
|
||||
daysUntilStale: 60
|
||||
# Number of days of inactivity before a stale issue is closed
|
||||
daysUntilClose: 7
|
||||
# Issues with these labels will never be considered stale
|
||||
exemptLabels:
|
||||
- "1. to develop"
|
||||
- "2. developing"
|
||||
- "3. to review"
|
||||
- "discussion"
|
||||
- "bounty"
|
||||
- "bug"
|
||||
- "enhancement"
|
||||
|
||||
# Limit the number of actions per hour, from 1-30. Default is 30
|
||||
limitPerRun: 30
|
||||
|
||||
# Label to use when marking an issue as stale
|
||||
staleLabel: stale
|
||||
|
||||
# Comment to post when marking an issue as stale. Set to `false` to disable
|
||||
markComment: >
|
||||
This issue has been automatically marked as stale because it has not had
|
||||
recent activity. It will be closed if no further activity occurs. Thank you
|
||||
for your contributions.
|
||||
43
.github/workflows/appbuild.yml
vendored
@@ -1,43 +0,0 @@
|
||||
name: Package build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
- master
|
||||
- stable*
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-18.04
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [14.x]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
- name: Set up npm7
|
||||
run: npm i -g npm@7
|
||||
- name: Setup PHP
|
||||
uses: shivammathur/setup-php@2.21.2
|
||||
with:
|
||||
php-version: '7.4'
|
||||
tools: composer
|
||||
- name: install dependencies
|
||||
run: |
|
||||
wget https://github.com/ChristophWurst/krankerl/releases/download/v0.12.2/krankerl_0.12.2_amd64.deb
|
||||
sudo dpkg -i krankerl_0.12.2_amd64.deb
|
||||
- name: package
|
||||
run: |
|
||||
uname -a
|
||||
RUST_BACKTRACE=1 krankerl --version
|
||||
RUST_BACKTRACE=1 krankerl package
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Deck app tarball
|
||||
path: build/artifacts/deck.tar.gz
|
||||
151
.github/workflows/appstore-build-publish.yml
vendored
@@ -1,151 +0,0 @@
|
||||
# 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: Build and publish app release
|
||||
|
||||
on:
|
||||
release:
|
||||
types: [published]
|
||||
|
||||
env:
|
||||
PHP_VERSION: 7.4
|
||||
|
||||
jobs:
|
||||
build_and_publish:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
# Only allowed to be run on nextcloud-releases repositories
|
||||
if: ${{ github.repository_owner == 'nextcloud-releases' }}
|
||||
|
||||
steps:
|
||||
- name: Check actor permission
|
||||
uses: skjnldsv/check-actor-permission@v2
|
||||
with:
|
||||
require: write
|
||||
|
||||
- name: Set app env
|
||||
run: |
|
||||
# Split and keep last
|
||||
echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV
|
||||
echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: ${{ env.APP_NAME }}
|
||||
|
||||
- name: Get appinfo data
|
||||
id: appinfo
|
||||
uses: skjnldsv/xpath-action@master
|
||||
with:
|
||||
filename: ${{ env.APP_NAME }}/appinfo/info.xml
|
||||
expression: "//info//dependencies//nextcloud/@min-version"
|
||||
|
||||
- name: Read package.json node and npm engines version
|
||||
uses: skjnldsv/read-package-engines-version-actions@v1.2
|
||||
id: versions
|
||||
# Continue if no package.json
|
||||
continue-on-error: true
|
||||
with:
|
||||
path: ${{ env.APP_NAME }}
|
||||
fallbackNode: "^12"
|
||||
fallbackNpm: "^6"
|
||||
|
||||
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
|
||||
# Skip if no package.json
|
||||
if: ${{ steps.versions.outputs.nodeVersion }}
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ steps.versions.outputs.nodeVersion }}
|
||||
|
||||
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
|
||||
# Skip if no package.json
|
||||
if: ${{ steps.versions.outputs.npmVersion }}
|
||||
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
|
||||
|
||||
- name: Set up php ${{ env.PHP_VERSION }}
|
||||
uses: shivammathur/setup-php@2.21.2
|
||||
with:
|
||||
php-version: ${{ env.PHP_VERSION }}
|
||||
coverage: none
|
||||
|
||||
- name: Check composer.json
|
||||
id: check_composer
|
||||
uses: andstor/file-existence-action@v1
|
||||
with:
|
||||
files: "${{ env.APP_NAME }}/composer.json"
|
||||
|
||||
- name: Install composer dependencies
|
||||
if: steps.check_composer.outputs.files_exists == 'true'
|
||||
run: |
|
||||
cd ${{ env.APP_NAME }}
|
||||
composer install --no-dev
|
||||
|
||||
- name: Build ${{ env.APP_NAME }}
|
||||
# Skip if no package.json
|
||||
if: ${{ steps.versions.outputs.nodeVersion }}
|
||||
run: |
|
||||
cd ${{ env.APP_NAME }}
|
||||
npm ci
|
||||
npm run build
|
||||
|
||||
- name: Install Krankerl
|
||||
run: |
|
||||
wget https://github.com/ChristophWurst/krankerl/releases/download/v0.13.0/krankerl_0.13.0_amd64.deb
|
||||
sudo dpkg -i krankerl_0.13.0_amd64.deb
|
||||
|
||||
- name: Package ${{ env.APP_NAME }} ${{ env.APP_VERSION }}
|
||||
# Try krankerl, fallback to makefile
|
||||
run: |
|
||||
cd ${{ env.APP_NAME }}
|
||||
krankerl package || make appstore
|
||||
|
||||
- name: Checkout server ${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }}
|
||||
continue-on-error: true
|
||||
id: server-checkout
|
||||
run: |
|
||||
NCVERSION=${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }}
|
||||
wget --quiet https://download.nextcloud.com/server/releases/latest-$NCVERSION.zip
|
||||
unzip latest-$NCVERSION.zip
|
||||
|
||||
- name: Checkout server master fallback
|
||||
uses: actions/checkout@v3
|
||||
if: ${{ steps.server-checkout.outcome != 'success' }}
|
||||
with:
|
||||
repository: nextcloud/server
|
||||
path: nextcloud
|
||||
|
||||
- name: Sign app
|
||||
run: |
|
||||
# Extracting release
|
||||
cd ${{ env.APP_NAME }}/build/artifacts
|
||||
tar -xvf ${{ env.APP_NAME }}.tar.gz
|
||||
cd ../../../
|
||||
# Setting up keys
|
||||
echo "${{ secrets.APP_PRIVATE_KEY }}" > ${{ env.APP_NAME }}.key
|
||||
wget --quiet "https://github.com/nextcloud/app-certificate-requests/raw/master/${{ env.APP_NAME }}/${{ env.APP_NAME }}.crt"
|
||||
# Signing
|
||||
php nextcloud/occ integrity:sign-app --privateKey=../${{ env.APP_NAME }}.key --certificate=../${{ env.APP_NAME }}.crt --path=../${{ env.APP_NAME }}/build/artifacts/${{ env.APP_NAME }}
|
||||
# Rebuilding archive
|
||||
cd ${{ env.APP_NAME }}/build/artifacts
|
||||
tar -zcvf ${{ env.APP_NAME }}.tar.gz ${{ env.APP_NAME }}
|
||||
|
||||
- name: Attach tarball to github release
|
||||
uses: svenstaro/upload-release-action@v2
|
||||
id: attach_to_release
|
||||
with:
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
file: ${{ env.APP_NAME }}/build/artifacts/${{ env.APP_NAME }}.tar.gz
|
||||
asset_name: ${{ env.APP_NAME }}-${{ env.APP_VERSION }}.tar.gz
|
||||
tag: ${{ github.ref }}
|
||||
overwrite: true
|
||||
|
||||
- name: Upload app to Nextcloud appstore
|
||||
uses: nextcloud-releases/nextcloud-appstore-push-action@v1
|
||||
with:
|
||||
app_name: ${{ env.APP_NAME }}
|
||||
appstore_token: ${{ secrets.APPSTORE_TOKEN }}
|
||||
download_url: ${{ steps.attach_to_release.outputs.browser_download_url }}
|
||||
app_private_key: ${{ secrets.APP_PRIVATE_KEY }}
|
||||
51
.github/workflows/command-rebase.yml
vendored
@@ -1,51 +0,0 @@
|
||||
# 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: Rebase command
|
||||
|
||||
on:
|
||||
issue_comment:
|
||||
types: created
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
rebase:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: none
|
||||
|
||||
# On pull requests and if the comment starts with `/rebase`
|
||||
if: github.event.issue.pull_request != '' && startsWith(github.event.comment.body, '/rebase')
|
||||
|
||||
steps:
|
||||
- name: Add reaction on start
|
||||
uses: peter-evans/create-or-update-comment@v2
|
||||
with:
|
||||
token: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
repository: ${{ github.event.repository.full_name }}
|
||||
comment-id: ${{ github.event.comment.id }}
|
||||
reaction-type: "+1"
|
||||
|
||||
- name: Checkout the latest code
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
|
||||
- name: Automatic Rebase
|
||||
uses: cirrus-actions/rebase@1.7
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
|
||||
- name: Add reaction on failure
|
||||
uses: peter-evans/create-or-update-comment@v2
|
||||
if: failure()
|
||||
with:
|
||||
token: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
repository: ${{ github.event.repository.full_name }}
|
||||
comment-id: ${{ github.event.comment.id }}
|
||||
reaction-type: "-1"
|
||||
112
.github/workflows/cypress.yml
vendored
@@ -1,112 +0,0 @@
|
||||
name: Cypress
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- stable*
|
||||
|
||||
env:
|
||||
APP_NAME: deck
|
||||
CYPRESS_baseUrl: http://localhost:8081/index.php
|
||||
|
||||
jobs:
|
||||
cypress:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
node-version: [14.x]
|
||||
# containers: [1, 2, 3]
|
||||
php-versions: [ '7.4' ]
|
||||
databases: [ 'sqlite' ]
|
||||
server-versions: [ 'stable25' ]
|
||||
|
||||
steps:
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
- name: Set up npm7
|
||||
run: npm i -g npm@7
|
||||
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: nextcloud/server
|
||||
ref: ${{ matrix.server-versions }}
|
||||
|
||||
- name: Checkout submodules
|
||||
shell: bash
|
||||
run: |
|
||||
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
|
||||
git submodule sync --recursive
|
||||
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
|
||||
|
||||
- name: Checkout ${{ env.APP_NAME }}
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: apps/${{ env.APP_NAME }}
|
||||
|
||||
- name: Set up php ${{ matrix.php-versions }}
|
||||
uses: shivammathur/setup-php@2.21.2
|
||||
with:
|
||||
php-version: ${{ matrix.php-versions }}
|
||||
extensions: mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite, zip, gd, apcu
|
||||
ini-values:
|
||||
apc.enable_cli=on
|
||||
coverage: none
|
||||
|
||||
- name: Set up Nextcloud
|
||||
env:
|
||||
DB_PORT: 4444
|
||||
PHP_CLI_SERVER_WORKERS: 10
|
||||
run: |
|
||||
mkdir data
|
||||
php occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
|
||||
php occ config:system:set memcache.local --value="\\OC\\Memcache\\APCu"
|
||||
php occ config:system:set debug --value=true --type=boolean
|
||||
php -f index.php
|
||||
php -S 0.0.0.0:8081 &
|
||||
export OC_PASS=1234561
|
||||
php occ user:add --password-from-env user1
|
||||
php occ user:add --password-from-env user2
|
||||
php occ app:enable deck
|
||||
php occ app:list
|
||||
cd apps/deck
|
||||
composer install --no-dev
|
||||
npm ci
|
||||
npm run build
|
||||
cd ../../
|
||||
curl -v http://localhost:8081/index.php/login
|
||||
|
||||
- name: Cypress run
|
||||
uses: cypress-io/github-action@v4
|
||||
with:
|
||||
record: true
|
||||
parallel: false
|
||||
wait-on: '${{ env.CYPRESS_baseUrl }}'
|
||||
working-directory: 'apps/${{ env.APP_NAME }}'
|
||||
config: defaultCommandTimeout=10000,video=false
|
||||
env:
|
||||
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
|
||||
npm_package_name: ${{ env.APP_NAME }}
|
||||
|
||||
- name: Upload test failure screenshots
|
||||
uses: actions/upload-artifact@v2
|
||||
if: failure()
|
||||
with:
|
||||
name: Upload screenshots
|
||||
path: apps/${{ env.APP_NAME }}/cypress/screenshots/
|
||||
retention-days: 5
|
||||
|
||||
- name: Upload nextcloud logs
|
||||
uses: actions/upload-artifact@v2
|
||||
if: failure()
|
||||
with:
|
||||
name: Upload nextcloud log
|
||||
path: data/nextcloud.log
|
||||
retention-days: 5
|
||||
36
.github/workflows/dependabot-approve-merge.yml
vendored
@@ -1,36 +0,0 @@
|
||||
# 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: Dependabot
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
branches:
|
||||
- main
|
||||
- master
|
||||
- stable*
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
auto-approve-merge:
|
||||
if: github.actor == 'dependabot[bot]'
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
# for hmarr/auto-approve-action to approve PRs
|
||||
pull-requests: write
|
||||
|
||||
steps:
|
||||
# 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@v2
|
||||
with:
|
||||
target: minor
|
||||
github-token: ${{ secrets.DEPENDABOT_AUTOMERGE_TOKEN }}
|
||||
20
.github/workflows/fixup.yml
vendored
@@ -1,20 +0,0 @@
|
||||
# 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@v2
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
100
.github/workflows/integration.yml
vendored
@@ -1,100 +0,0 @@
|
||||
name: Integration tests
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/workflows/integration.yml'
|
||||
- 'appinfo/**'
|
||||
- 'lib/**'
|
||||
- 'templates/**'
|
||||
- 'tests/**'
|
||||
- 'composer.json'
|
||||
- 'composer.lock'
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- stable*
|
||||
|
||||
env:
|
||||
APP_NAME: deck
|
||||
|
||||
jobs:
|
||||
integration:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
php-versions: ['7.4']
|
||||
databases: ['sqlite', 'mysql', 'pgsql']
|
||||
server-versions: ['stable25']
|
||||
|
||||
name: php${{ matrix.php-versions }}-${{ matrix.databases }}-${{ matrix.server-versions }}
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:14
|
||||
ports:
|
||||
- 4445:5432/tcp
|
||||
env:
|
||||
POSTGRES_USER: root
|
||||
POSTGRES_PASSWORD: rootpassword
|
||||
POSTGRES_DB: nextcloud
|
||||
options: --health-cmd pg_isready --health-interval 5s --health-timeout 2s --health-retries 5
|
||||
mysql:
|
||||
image: mariadb:10.5
|
||||
ports:
|
||||
- 4444:3306/tcp
|
||||
env:
|
||||
MYSQL_ROOT_PASSWORD: rootpassword
|
||||
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 5
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: nextcloud/server
|
||||
ref: ${{ matrix.server-versions }}
|
||||
|
||||
- name: Checkout submodules
|
||||
shell: bash
|
||||
run: |
|
||||
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
|
||||
git submodule sync --recursive
|
||||
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
|
||||
cd build/integration && composer require --dev phpunit/phpunit:~9
|
||||
|
||||
- name: Checkout app
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: apps/${{ env.APP_NAME }}
|
||||
|
||||
- name: Set up php ${{ matrix.php-versions }}
|
||||
uses: shivammathur/setup-php@2.21.2
|
||||
with:
|
||||
php-version: ${{ matrix.php-versions }}
|
||||
tools: phpunit
|
||||
extensions: mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite, mysql, pdo_mysql, pgsql, pdo_pgsql,
|
||||
coverage: none
|
||||
|
||||
- name: Set up PHPUnit
|
||||
working-directory: apps/${{ env.APP_NAME }}
|
||||
run: composer i
|
||||
|
||||
- name: Set up Nextcloud
|
||||
run: |
|
||||
if [ "${{ matrix.databases }}" = "mysql" ]; then
|
||||
export DB_PORT=4444
|
||||
elif [ "${{ matrix.databases }}" = "pgsql" ]; then
|
||||
export DB_PORT=4445
|
||||
fi
|
||||
mkdir data
|
||||
./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
|
||||
cat config/config.php
|
||||
./occ user:list
|
||||
./occ app:enable --force ${{ env.APP_NAME }}
|
||||
php -S localhost:8080 &
|
||||
|
||||
- name: Run behat
|
||||
working-directory: apps/${{ env.APP_NAME }}/tests/integration
|
||||
run: ./run.sh
|
||||
88
.github/workflows/lint.yml
vendored
@@ -1,88 +0,0 @@
|
||||
name: Lint
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- stable*
|
||||
|
||||
jobs:
|
||||
php:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
php-versions: ['7.4', '8.0', '8.1']
|
||||
|
||||
name: php${{ matrix.php-versions }} lint
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Set up php${{ matrix.php-versions }}
|
||||
uses: shivammathur/setup-php@2.21.2
|
||||
with:
|
||||
php-version: ${{ matrix.php-versions }}
|
||||
coverage: none
|
||||
- name: Lint
|
||||
run: composer run lint
|
||||
|
||||
php-cs-fixer:
|
||||
name: php-cs check
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- name: Set up php
|
||||
uses: shivammathur/setup-php@2.21.2
|
||||
with:
|
||||
php-version: 7.4
|
||||
coverage: none
|
||||
- name: Install dependencies
|
||||
run: composer i
|
||||
- name: Run coding standards check
|
||||
run: composer run cs:check
|
||||
|
||||
node:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [14.x]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Use node ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
- name: Set up npm7
|
||||
run: npm i -g npm@7
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- name: ESLint
|
||||
run: npm run lint
|
||||
|
||||
stylelint:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [14.x]
|
||||
|
||||
name: stylelint node${{ matrix.node-version }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up node ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
|
||||
- name: Set up npm7
|
||||
run: npm i -g npm@7
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
|
||||
- name: Lint
|
||||
run: npm run stylelint
|
||||
12
.github/workflows/nightly.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: Package nightly
|
||||
name: Nightly build
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -14,18 +14,16 @@ jobs:
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [14.x]
|
||||
node-version: [12.x]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v1
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
- name: Set up npm7
|
||||
run: npm i -g npm@7
|
||||
- name: Setup PHP
|
||||
uses: shivammathur/setup-php@2.21.2
|
||||
uses: shivammathur/setup-php@v1
|
||||
with:
|
||||
php-version: '7.4'
|
||||
tools: composer
|
||||
|
||||
21
.github/workflows/nodejs.yml
vendored
@@ -9,26 +9,23 @@ jobs:
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [14.x]
|
||||
node-version: [12.x]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v1
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
- name: Set up npm7
|
||||
run: npm i -g npm@7
|
||||
- name: install dependencies
|
||||
run: |
|
||||
npm ci
|
||||
- name: build
|
||||
env:
|
||||
RELATIVE_CI_KEY: ${{ secrets.RELATIVE_CI_KEY }}
|
||||
RELATIVE_CI_SLUG: nextcloud/deck
|
||||
run: |
|
||||
mkdir -p js
|
||||
npm run build --if-present -- --profile --json | tail -n +6 > js/webpack-stats.json
|
||||
npx relative-ci-agent
|
||||
|
||||
npm run build --if-present
|
||||
- name: eslint
|
||||
run: |
|
||||
npm run lint
|
||||
env:
|
||||
CI: true
|
||||
|
||||
|
||||
102
.github/workflows/phpunit.yml
vendored
@@ -1,102 +0,0 @@
|
||||
name: PHPUnit
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/workflows/phpunit.yml'
|
||||
- 'appinfo/**'
|
||||
- 'lib/**'
|
||||
- 'templates/**'
|
||||
- 'tests/**'
|
||||
- 'composer.json'
|
||||
- 'composer.lock'
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- stable*
|
||||
|
||||
env:
|
||||
APP_NAME: deck
|
||||
|
||||
|
||||
jobs:
|
||||
integration:
|
||||
runs-on: ubuntu-18.04
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
php-versions: ['7.4', '8.0', '8.1']
|
||||
databases: ['sqlite', 'mysql', 'pgsql']
|
||||
server-versions: ['stable25']
|
||||
|
||||
name: php${{ matrix.php-versions }}-${{ matrix.databases }}-${{ matrix.server-versions }}
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:14
|
||||
ports:
|
||||
- 4445:5432/tcp
|
||||
env:
|
||||
POSTGRES_USER: root
|
||||
POSTGRES_PASSWORD: rootpassword
|
||||
POSTGRES_DB: nextcloud
|
||||
options: --health-cmd pg_isready --health-interval 5s --health-timeout 2s --health-retries 5
|
||||
mysql:
|
||||
image: mariadb:10.5
|
||||
ports:
|
||||
- 4444:3306/tcp
|
||||
env:
|
||||
MYSQL_ROOT_PASSWORD: rootpassword
|
||||
options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 5
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: nextcloud/server
|
||||
ref: ${{ matrix.server-versions }}
|
||||
|
||||
- name: Checkout submodules
|
||||
shell: bash
|
||||
run: |
|
||||
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
|
||||
git submodule sync --recursive
|
||||
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
|
||||
|
||||
- name: Checkout app
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: apps/${{ env.APP_NAME }}
|
||||
|
||||
- name: Set up php ${{ matrix.php-versions }}
|
||||
uses: shivammathur/setup-php@2.21.2
|
||||
with:
|
||||
php-version: ${{ matrix.php-versions }}
|
||||
tools: phpunit
|
||||
extensions: zip, gd, mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite, mysql, pdo_mysql, pgsql, pdo_pgsql
|
||||
coverage: none
|
||||
|
||||
- name: Set up PHPUnit
|
||||
working-directory: apps/${{ env.APP_NAME }}
|
||||
run: composer i
|
||||
|
||||
- name: Set up Nextcloud
|
||||
run: |
|
||||
if [ "${{ matrix.databases }}" = "mysql" ]; then
|
||||
export DB_PORT=4444
|
||||
elif [ "${{ matrix.databases }}" = "pgsql" ]; then
|
||||
export DB_PORT=4445
|
||||
fi
|
||||
mkdir data
|
||||
./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
|
||||
./occ app:enable --force ${{ env.APP_NAME }}
|
||||
php -S localhost:8080 &
|
||||
|
||||
- name: PHPUnit
|
||||
working-directory: apps/${{ env.APP_NAME }}
|
||||
run: ./vendor/phpunit/phpunit/phpunit -c tests/phpunit.xml
|
||||
|
||||
- name: PHPUnit integration
|
||||
working-directory: apps/${{ env.APP_NAME }}
|
||||
run: ./vendor/phpunit/phpunit/phpunit -c tests/phpunit.integration.xml
|
||||
35
.github/workflows/psalm.yml
vendored
@@ -1,35 +0,0 @@
|
||||
# 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: Static analysis
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- main
|
||||
- stable*
|
||||
|
||||
jobs:
|
||||
static-analysis:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
name: Nextcloud
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Set up php
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
php-version: 7.4
|
||||
coverage: none
|
||||
|
||||
- name: Install dependencies
|
||||
run: composer i
|
||||
|
||||
- name: Run coding standards check
|
||||
run: composer run psalm
|
||||
65
.github/workflows/update-nextcloud-ocp.yml
vendored
@@ -1,65 +0,0 @@
|
||||
# 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: Update nextcloud/ocp
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: "5 2 * * 0"
|
||||
|
||||
jobs:
|
||||
update-nextcloud-ocp:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
branches: ["master", "stable25", "stable24", "stable23"]
|
||||
|
||||
name: update-nextcloud-ocp-${{ matrix.branches }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
ref: ${{ matrix.branches }}
|
||||
submodules: true
|
||||
|
||||
- name: Set up php7.4
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
php-version: 7.4
|
||||
extensions: ctype,curl,dom,fileinfo,gd,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
|
||||
coverage: none
|
||||
|
||||
- name: Composer install
|
||||
run: composer install
|
||||
|
||||
- name: Composer update nextcloud/ocp
|
||||
run: composer require --dev nextcloud/ocp:dev-${{ matrix.branches }}
|
||||
continue-on-error: true
|
||||
|
||||
- name: Reset checkout dirs
|
||||
run: |
|
||||
git clean -f 3rdparty
|
||||
git clean -f vendor
|
||||
git checkout 3rdparty vendor
|
||||
continue-on-error: true
|
||||
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v3
|
||||
with:
|
||||
token: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
commit-message: Update psalm baseline
|
||||
committer: GitHub <noreply@github.com>
|
||||
author: nextcloud-command <nextcloud-command@users.noreply.github.com>
|
||||
signoff: true
|
||||
branch: automated/noid/${{ matrix.branches }}-update-nextcloud-ocp
|
||||
title: "[${{ matrix.branches }}] Update nextcloud/ocp dependency"
|
||||
body: |
|
||||
Auto-generated update of [nextcloud/ocp](https://github.com/nextcloud-deps/ocp/) dependency
|
||||
labels: |
|
||||
dependencies
|
||||
3. to review
|
||||
4
.gitignore
vendored
@@ -5,7 +5,7 @@ css/style.css
|
||||
css/vendor.css
|
||||
tests/integration/vendor/
|
||||
tests/integration/composer.lock
|
||||
tests/.phpunit.result.cache
|
||||
vendor/
|
||||
.php_cs.cache
|
||||
*.lock
|
||||
|
||||
\.idea/
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
/build/
|
||||
/.git
|
||||
/.github
|
||||
/docs/
|
||||
/tests
|
||||
/babel.config.js
|
||||
/.editorconfig
|
||||
/.eslintrc.js
|
||||
/.nextcloudignore
|
||||
/webpack.*.js
|
||||
/.codecov.yml
|
||||
/composer.json
|
||||
/composer.lock
|
||||
/_config.yml
|
||||
/.drone.yml
|
||||
/.travis.yml
|
||||
/.eslintignore
|
||||
/.eslintrc.yml
|
||||
/.gitignore
|
||||
/issue_template.md
|
||||
/krankerl.toml
|
||||
/Makefile
|
||||
/mkdocs.yml
|
||||
/run-eslint.sh
|
||||
/package.json
|
||||
/package-lock.json
|
||||
/node_modules/
|
||||
/src/
|
||||
build/
|
||||
.git
|
||||
.github
|
||||
docs/
|
||||
tests
|
||||
babel.config.js
|
||||
.editorconfig
|
||||
.eslintrc.js
|
||||
.nextcloudignore
|
||||
webpack.*.js
|
||||
.codecov.yml
|
||||
composer.json
|
||||
composer.lock
|
||||
_config.yml
|
||||
.drone.yml
|
||||
.travis.yml
|
||||
.eslintignore
|
||||
.eslintrc.yml
|
||||
.gitignore
|
||||
issue_template.md
|
||||
krankerl.toml
|
||||
Makefile
|
||||
mkdocs.yml
|
||||
run-eslint.sh
|
||||
package.json
|
||||
package-lock.json
|
||||
node_modules/
|
||||
src/
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
require_once './vendor/autoload.php';
|
||||
|
||||
use Nextcloud\CodingStandard\Config;
|
||||
|
||||
$config = new Config();
|
||||
$config
|
||||
->getFinder()
|
||||
// ->ignoreVCSIgnored(true)
|
||||
->notPath('build')
|
||||
->notPath('l10n')
|
||||
->notPath('src')
|
||||
->notPath('node_modules')
|
||||
->notPath('vendor')
|
||||
->in(__DIR__);
|
||||
return $config;
|
||||
32
.travis.yml
Normal file
@@ -0,0 +1,32 @@
|
||||
language: php
|
||||
services:
|
||||
- mysql
|
||||
php:
|
||||
- 7.2
|
||||
- 7.3
|
||||
env:
|
||||
- CORE_BRANCH=master DB=mysql
|
||||
|
||||
before_install:
|
||||
- export PATH="$PWD/vendor/bin:$PATH"
|
||||
- phpunit --version
|
||||
- wget https://raw.githubusercontent.com/nextcloud/travis_ci/master/before_install.sh
|
||||
- bash ./before_install.sh deck $CORE_BRANCH $DB
|
||||
- cd ../server
|
||||
- ./occ app:enable deck
|
||||
|
||||
before_script:
|
||||
- cd apps/deck
|
||||
|
||||
script:
|
||||
- composer install
|
||||
- make test-unit
|
||||
|
||||
after_success:
|
||||
- bash <(curl -s https://codecov.io/bash)
|
||||
|
||||
after_failure:
|
||||
- cat ../../data/nextcloud.log
|
||||
|
||||
notifications:
|
||||
email: false
|
||||
@@ -1,10 +1,9 @@
|
||||
[main]
|
||||
host = https://www.transifex.com
|
||||
host = https://www.transifex.com
|
||||
lang_map = bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja
|
||||
|
||||
[o:nextcloud:p:nextcloud:r:deck]
|
||||
[nextcloud.deck]
|
||||
file_filter = translationfiles/<lang>/deck.po
|
||||
source_file = translationfiles/templates/deck.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
type = PO
|
||||
|
||||
421
CHANGELOG.md
@@ -1,417 +1,12 @@
|
||||
# Changelog
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
## 1.8.2
|
||||
|
||||
### Fixed
|
||||
|
||||
- minor style fixes [#4201](https://github.com/nextcloud/deck/pull/4201)
|
||||
- feat: add validators to check values in services [#4174](https://github.com/nextcloud/deck/pull/4174)
|
||||
- Add integration test for attachment handling on cards [#4179](https://github.com/nextcloud/deck/pull/4179)
|
||||
- Add missing userId property [#4198](https://github.com/nextcloud/deck/pull/4198)
|
||||
|
||||
## 1.8.1
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix Duedate activity @nickvergessen [#4155](https://github.com/nextcloud/deck/pull/4155)
|
||||
|
||||
## 1.8.0
|
||||
|
||||
### Added
|
||||
|
||||
- Nextcloud 25 compatibility
|
||||
- Performance improvements
|
||||
- Use capped memory cache for board permissions @juliushaertl [#3980](https://github.com/nextcloud/deck/pull/3980)
|
||||
- Improve CalDAV integration performance @juliushaertl [#3982](https://github.com/nextcloud/deck/pull/3982)
|
||||
- Simpify query for getting shared files @juliushaertl [#3983](https://github.com/nextcloud/deck/pull/3983)
|
||||
- Accessibility improvements
|
||||
- Add a11y label for sidebar button @marcelklehr [#3986](https://github.com/nextcloud/deck/pull/3986)
|
||||
- Improve filter popover accessibility @juliushaertl [#3820](https://github.com/nextcloud/deck/pull/3820)
|
||||
- Set ids to skip to content/navigation @juliushaertl [#3924](https://github.com/nextcloud/deck/pull/3924)
|
||||
- Invert icons properly in dark mode @juliushaertl [#3939](https://github.com/nextcloud/deck/pull/3939)
|
||||
- Implement card reference widget @eneiluj [#4031](https://github.com/nextcloud/deck/pull/4031)
|
||||
- Implement new dashboard widget interfaces @eneiluj [#4033](https://github.com/nextcloud/deck/pull/4033)
|
||||
- Add related resources panel to board sharing tab sidebar @Pytal [#4000](https://github.com/nextcloud/deck/pull/4000)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix sorting stacks [#4116](https://github.com/nextcloud/deck/pull/4116)
|
||||
- Fix issue with duedate format [#4140](https://github.com/nextcloud/deck/pull/4140)
|
||||
- Fix missing icon for activity rendering [#4090](https://github.com/nextcloud/deck/pull/4090)
|
||||
- disables autocomplete on card creation [#4142](https://github.com/nextcloud/deck/pull/4142)
|
||||
- Set event link also for notifications that get emitted from activities [#4117](https://github.com/nextcloud/deck/pull/4117)
|
||||
- Fix attachment creator name: show display name @eneiluj [#4036](https://github.com/nextcloud/deck/pull/4036)
|
||||
- Fix reference provider when caching @eneiluj [#4056](https://github.com/nextcloud/deck/pull/4056)
|
||||
- Use global import for nextcloud-vue [#4072](https://github.com/nextcloud/deck/pull/4072)
|
||||
- Disable Create card button while no stack is chosen @icewind1991 [#4014](https://github.com/nextcloud/deck/pull/4014)
|
||||
- Adjust testing matrix for Nextcloud 25 on stable25 @nickvergessen [#4068](https://github.com/nextcloud/deck/pull/4068)
|
||||
- Fix Card menu not displaying when description is not set @marcelklehr [#4105](https://github.com/nextcloud/deck/pull/4105)
|
||||
- Reference widget adjustments for Text [#4075](https://github.com/nextcloud/deck/pull/4075)
|
||||
- use OCP\Collaboration\Reference\Reference [#4078](https://github.com/nextcloud/deck/pull/4078)
|
||||
- Cache user membership for circles [#4141](https://github.com/nextcloud/deck/pull/4141)
|
||||
- set last modified when the card was found. Fixes #3763 @ylebre [#3796](https://github.com/nextcloud/deck/pull/3796)
|
||||
- Increase file count after sharing @luka-nextcloud [#3682](https://github.com/nextcloud/deck/pull/3682)
|
||||
- Align Duedate-delete icon properly - fixes nextcloud/deck#3791 @Ben-Ro [#3811](https://github.com/nextcloud/deck/pull/3811)
|
||||
- Fix for issue #3637 @flummer [#3833](https://github.com/nextcloud/deck/pull/3833)
|
||||
- Switch to 'markdown-it-task-checkbox' for rendering of task lists @q-wertz [#3898](https://github.com/nextcloud/deck/pull/3898)
|
||||
- Make rename functions accessibly by keyboard navigation @juliushaertl [#3813](https://github.com/nextcloud/deck/pull/3813)
|
||||
- Prevent opening card and applyLabelFilter on card drag end @eneiluj [#3916](https://github.com/nextcloud/deck/pull/3916)
|
||||
- Inserted required property in the rename list field, to prevent the l… @mstolf [#3862](https://github.com/nextcloud/deck/pull/3862)
|
||||
- Fix share provider for master changes @nickvergessen [#3942](https://github.com/nextcloud/deck/pull/3942)
|
||||
- Fetch attachment folder for the correct user during cron job @juliushaertl [#3952](https://github.com/nextcloud/deck/pull/3952)
|
||||
- Fix z-index for deck sidebar @Raudius [#3884](https://github.com/nextcloud/deck/pull/3884)
|
||||
|
||||
### Other
|
||||
|
||||
- Switch from OC::$server->get to OCP\Server::get @CarlSchwan [#3801](https://github.com/nextcloud/deck/pull/3801)
|
||||
- Add performance section in README @eneiluj [#3830](https://github.com/nextcloud/deck/pull/3830)
|
||||
- Fix static analysis by stubbing more circle methods @juliushaertl [#3900](https://github.com/nextcloud/deck/pull/3900)
|
||||
- fix(docs): fix links to JSON schemas for Trello @wiktor2200 [#3872](https://github.com/nextcloud/deck/pull/3872)
|
||||
- Move to OCP\Collaboration\Resources\LoadAdditionalScriptsEvent @juliushaertl [#3818](https://github.com/nextcloud/deck/pull/3818)
|
||||
- Rename settings to deck settings @PVince81 [#3928](https://github.com/nextcloud/deck/pull/3928)
|
||||
- SCSS cleanup @juliushaertl [#3803](https://github.com/nextcloud/deck/pull/3803)
|
||||
- Hide deprecated projects in sidebar and card details by default @Pytal [#3984](https://github.com/nextcloud/deck/pull/3984)
|
||||
|
||||
## 1.7.0
|
||||
|
||||
### Added
|
||||
|
||||
- Transfer ownership @matchish @luka-nextcloud @juliushaertl [#2496](https://github.com/nextcloud/deck/pull/2496)
|
||||
- Import from trello via CLI @vitormattos [#3182](https://github.com/nextcloud/deck/pull/3182)
|
||||
- Add app config to toggle the default calendar setting as an admin @juliushaertl [#3528](https://github.com/nextcloud/deck/pull/3528)
|
||||
- Show board name in browser title @luka-nextcloud [#3499](https://github.com/nextcloud/deck/pull/3499)
|
||||
- Move DeleteCron to be time insensitive @juliushaertl [#3599](https://github.com/nextcloud/deck/pull/3599)
|
||||
- 🚸 Shows error on board fetchData @vinicius73 [#3653](https://github.com/nextcloud/deck/pull/3653)
|
||||
- Add support for PHP 8.1 @juliushaertl [#3601](https://github.com/nextcloud/deck/pull/3601)
|
||||
- Nextcloud 24 compatibility
|
||||
|
||||
### Fixed
|
||||
|
||||
- CardApiController: Fix order of optional parameters @simonspa [#3512](https://github.com/nextcloud/deck/pull/3512)
|
||||
- Exclude deleted boards in the selection for target @luka-nextcloud [#3502](https://github.com/nextcloud/deck/pull/3502)
|
||||
- Fix CalDAV blocking and modernize circles API usage @juliushaertl [#3500](https://github.com/nextcloud/deck/pull/3500)
|
||||
- Timestamps on created and modified at values @luka-nextcloud [#3532](https://github.com/nextcloud/deck/pull/3532)
|
||||
- return the selector for collections @dartcafe [#3552](https://github.com/nextcloud/deck/pull/3552)
|
||||
- Generate fixed link for activity emails @luka-nextcloud [#3611](https://github.com/nextcloud/deck/pull/3611)
|
||||
- 🐛 Fix missing files sidebar @vinicius73 [#3635](https://github.com/nextcloud/deck/pull/3635)
|
||||
- Handle description shortening more gracefully @juliushaertl [#3650](https://github.com/nextcloud/deck/pull/3650)
|
||||
- Sort boards non case sensitive @Ben-Ro [#3560](https://github.com/nextcloud/deck/pull/3560)
|
||||
- Remove unused argument from transfer ownership @juliushaertl [#3712](https://github.com/nextcloud/deck/pull/3712)
|
||||
- Fix: Check all circle shares for permissions @bink [#3625](https://github.com/nextcloud/deck/pull/3625)
|
||||
- Extend API changelog @juliushaertl [#3522](https://github.com/nextcloud/deck/pull/3522)
|
||||
- Fix talk integration @nickvergessen [#3529](https://github.com/nextcloud/deck/pull/3529)
|
||||
- Fix confusion between stackId and boardId in StackService @eneiluj [#3541](https://github.com/nextcloud/deck/pull/3541)
|
||||
- Add horizontal scrollbar into the large table inside description @luka-nextcloud [#3531](https://github.com/nextcloud/deck/pull/3531)
|
||||
- Make links in markdown note bolder @luka-nextcloud [#3530](https://github.com/nextcloud/deck/pull/3530)
|
||||
- Update master php testing versions @nickvergessen [#3561](https://github.com/nextcloud/deck/pull/3561)
|
||||
- Update master php enviroment @nickvergessen [#3582](https://github.com/nextcloud/deck/pull/3582)
|
||||
- Make insert attachment buttom easy to click @luka-nextcloud [#3612](https://github.com/nextcloud/deck/pull/3612)
|
||||
- Remove extra bullet @elitejake [#3613](https://github.com/nextcloud/deck/pull/3613)
|
||||
- l10n: Delete space @Valdnet [#3666](https://github.com/nextcloud/deck/pull/3666)
|
||||
- Update master php testing versions @nickvergessen [#3688](https://github.com/nextcloud/deck/pull/3688)
|
||||
- Fix wording to represent the code behavior @q-wertz [#3685](https://github.com/nextcloud/deck/pull/3685)
|
||||
- Fix cron jobs @nickvergessen [#3689](https://github.com/nextcloud/deck/pull/3689)
|
||||
- Update master php testing versions @nickvergessen [#3695](https://github.com/nextcloud/deck/pull/3695)
|
||||
- Optimise queries when preparing card related notifications @Raudius [#3690](https://github.com/nextcloud/deck/pull/3690)
|
||||
- Properly check for the stack AND setting board permissions @juliushaertl [#3670](https://github.com/nextcloud/deck/pull/3670)
|
||||
- Replace deprecated String.prototype.substr() @CommanderRoot [#3669](https://github.com/nextcloud/deck/pull/3669)
|
||||
- Dependency updates
|
||||
- Show cards after moving into another list [#3736](https://github.com/nextcloud/deck/pull/3736)
|
||||
- Fix paramter replacements when creating deck cards from talk messages @nickvergessen [#3683](https://github.com/nextcloud/deck/pull/3683)
|
||||
- Fix hidden attachment icon on archived cards [#3733](https://github.com/nextcloud/deck/pull/3733)
|
||||
- Adapt the card modal to upstream changes [#3764](https://github.com/nextcloud/deck/pull/3764)
|
||||
- Fix text selection in dark mode and modal view [#3765](https://github.com/nextcloud/deck/pull/3765)
|
||||
- Add missing indices [#3754](https://github.com/nextcloud/deck/pull/3754)
|
||||
|
||||
|
||||
## 1.6.0-beta1
|
||||
|
||||
### Added
|
||||
|
||||
- #3177 Use async import for vue component on collections entrypoint @juliushaertl
|
||||
- #2791 Open description links in new tab @fm-sys
|
||||
- #3344 Improve combined search @eneiluj
|
||||
- #3362 Improve search performance @eneiluj
|
||||
- #2710 Due date shortcuts in the datepicker @jakobroehrl
|
||||
|
||||
### Fixed
|
||||
|
||||
- #3161 Reduce duplicate queries when fetching user boards an permissions @juliushaertl
|
||||
- #3151 Always log generic exceptions @juliushaertl
|
||||
- #3217 Move circle checks to a unified service and improve member checks @juliushaertl
|
||||
- #3225 Check for null value to avoid TypeError in the group manager @juliushaertl
|
||||
- #3263 Defer obtaining the user session in the config service @juliushaertl
|
||||
- #3294 Fix print style issues @weeman1337
|
||||
- #3299 Return false instead of throwing when getting calendar setting @juliushaertl
|
||||
- #3298 Delete file shares through attachments API @juliushaertl
|
||||
- #3343 Fix search pagination cursor @eneiluj
|
||||
- #3326 add autofocus on board edit @weeman1337
|
||||
- #3323 Extend drag-and-drop zone in card sidebar @old-green-frog
|
||||
- #3364 Fix optional parameter order @juliushaertl
|
||||
- #3324 Fix menu button position in card modal @valerydmitrieva
|
||||
- #3391 Use displayname instead of uid for mentions (reopened against master) @kffl
|
||||
- #3316 Additional check for stacks @juliushaertl
|
||||
- #3357 Revert "Fix search pagination cursor" @juliushaertl
|
||||
- #3327 Do not show both bullets and checkboxes for checklists @Themanwhosmellslikesugar
|
||||
- #3375 Show absolute dates when printing @weeman1337
|
||||
- #3376 Print assignee names @weeman1337
|
||||
- #3384 Keep exceptions http response generic @juliushaertl
|
||||
|
||||
|
||||
## 1.4.0 - 2021-04-13
|
||||
|
||||
### Added
|
||||
|
||||
* [#2934](https://github.com/nextcloud/deck/pull/2934) Advanced search queries (see [documentation](https://deck.readthedocs.io/en/latest/User_documentation_en/#search) for more details)
|
||||
* [#2933](https://github.com/nextcloud/deck/pull/2933) Move full text search to proper events
|
||||
|
||||
### Fixed
|
||||
* [#2964](https://github.com/nextcloud/deck/pull/2964) Fix navigating to board details
|
||||
|
||||
* Dependency updates
|
||||
|
||||
## 1.3.0
|
||||
|
||||
### Added
|
||||
* [#2638](https://github.com/nextcloud/deck/pull/2638) Sharing files to cards
|
||||
* [#2683](https://github.com/nextcloud/deck/pull/2683) Handle clicks on calendar entries
|
||||
* Nextcloud 21 compatiblity
|
||||
|
||||
### Fixed
|
||||
* [#2622](https://github.com/nextcloud/deck/pull/2622) Fix gradient and stack header spacing for safari
|
||||
* [#2626](https://github.com/nextcloud/deck/pull/2626) Adding a description icon to cards when they contain a description without any checkmarks @MonkeySon
|
||||
* [#2659](https://github.com/nextcloud/deck/pull/2659) Matching color of description cursor with text color @JonFStr
|
||||
* [#2676](https://github.com/nextcloud/deck/pull/2676) Only load filter view when shown
|
||||
* [#2680](https://github.com/nextcloud/deck/pull/2680) Do not try to add change data if it doesn't exist
|
||||
* [#2681](https://github.com/nextcloud/deck/pull/2681) Filter out deleted stacks from results
|
||||
* [#2685](https://github.com/nextcloud/deck/pull/2685) Show all boards in move card dialog @jakobroehrl
|
||||
* [#2687](https://github.com/nextcloud/deck/pull/2687) 3dots no opacity @jakobroehrl
|
||||
* [#2688](https://github.com/nextcloud/deck/pull/2688) Title > boardname @jakobroehrl
|
||||
* [#2689](https://github.com/nextcloud/deck/pull/2689) Modal > bigger view wording @jakobroehrl
|
||||
|
||||
## 1.3.0-beta2
|
||||
|
||||
### Fixed
|
||||
* [#2700](https://github.com/nextcloud/deck/pull/2700) Attempt to copy file on dropping it to deck @juliushaertl
|
||||
* [#2701](https://github.com/nextcloud/deck/pull/2701) Fix uploading files by drag and drop @juliushaertl
|
||||
* [#2707](https://github.com/nextcloud/deck/pull/2707) L10n: Change to a capital letter @Valdnet
|
||||
* [#2712](https://github.com/nextcloud/deck/pull/2712) Docs: Fix table in section "GET /api/v1.0/config" @das-g
|
||||
* [#2716](https://github.com/nextcloud/deck/pull/2716) Remove repair step which is no longer needed as we cleanup properly @juliushaertl
|
||||
* [#2723](https://github.com/nextcloud/deck/pull/2723) Pad random color with leading zeroes @PVince81
|
||||
* [#2729](https://github.com/nextcloud/deck/pull/2729) Remove invalid activity parameters @nickvergessen
|
||||
* [#2750](https://github.com/nextcloud/deck/pull/2750) Fix deck activity emails not being translated @nickvergessen
|
||||
* [#2751](https://github.com/nextcloud/deck/pull/2751) Properly set author for activity events that are triggered by cron @juliushaertl
|
||||
|
||||
|
||||
## 1.2.2 - 2020-11-24
|
||||
|
||||
### Fixed
|
||||
|
||||
* [#2584](https://github.com/nextcloud/deck/pull/2584) Fix updating checkbox state and avoid issues due to duplicate sidebar element
|
||||
* [#2586](https://github.com/nextcloud/deck/pull/2586) Fix card details button
|
||||
* [#2587](https://github.com/nextcloud/deck/pull/2587) Move modal top spacing to the header to avoid side-effect when scrolling
|
||||
* [#2588](https://github.com/nextcloud/deck/pull/2588) Do not render images in editor
|
||||
* [#2609](https://github.com/nextcloud/deck/pull/2609) Fix issue with depenendency causing newline comments to not show
|
||||
* [#2611](https://github.com/nextcloud/deck/pull/2611) Fix paragraph styling in comments
|
||||
|
||||
## 1.2.1 - 2020-11-18
|
||||
|
||||
### Fixed
|
||||
|
||||
* [#2570](https://github.com/nextcloud/deck/pull/2570) [#2571](https://github.com/nextcloud/deck/pull/2571) Fix error when deleting users @ksteinb
|
||||
* [#2573](https://github.com/nextcloud/deck/pull/2573) Fix issue where card description was changed on the wrong card when switching cards
|
||||
|
||||
## 1.2.0 - 2020-11-16
|
||||
|
||||
### Added
|
||||
|
||||
* [#2430](https://github.com/nextcloud/deck/pull/2430) Due date notification setting per board
|
||||
* [#2230](https://github.com/nextcloud/deck/pull/2230) Implement scrolling per stack
|
||||
* [#1396](https://github.com/nextcloud/deck/pull/1396) API: Expose canCreateBoards through capabilities
|
||||
* [#2245](https://github.com/nextcloud/deck/pull/2245) API: ETag support for API endpoints
|
||||
|
||||
### Fixed
|
||||
|
||||
* [#2330](https://github.com/nextcloud/deck/pull/2330) Enhanced undo handling for deletions @jakobroehrl
|
||||
* [#2336](https://github.com/nextcloud/deck/pull/2336) Run unit tests on github actions
|
||||
* [#2358](https://github.com/nextcloud/deck/pull/2358) Properly check if FTSEvent has an argument set
|
||||
* [#2359](https://github.com/nextcloud/deck/pull/2359) Also exclude deleted items from calendar boards
|
||||
* [#2361](https://github.com/nextcloud/deck/pull/2361) Comments do not depend on the comments app @jakobroehrl
|
||||
* [#2363](https://github.com/nextcloud/deck/pull/2363) Use uid instead of displayname for sharee results
|
||||
* [#2367](https://github.com/nextcloud/deck/pull/2367) Properly handle multiple shares in a row and refactor sharee loading
|
||||
* [#2404](https://github.com/nextcloud/deck/pull/2404) Update Controls.vue @Flamenco
|
||||
* [#2433](https://github.com/nextcloud/deck/pull/2433) Fix scrollable titles with Dyslexia font
|
||||
* [#2434](https://github.com/nextcloud/deck/pull/2434) Move most destructive actions in drop down menus to the bottom @Nienzu
|
||||
* [#2435](https://github.com/nextcloud/deck/pull/2435) Do not open the dialog automatically upon card creation, only upon click
|
||||
* [#2437](https://github.com/nextcloud/deck/pull/2437) Only remove card padding for editable cards
|
||||
* [#2440](https://github.com/nextcloud/deck/pull/2440) Move navigation toggle handling to @nextcloud/vue native one
|
||||
* [#2463](https://github.com/nextcloud/deck/pull/2463) Changed triple dots to ellipsis @rakekniven
|
||||
* [#2500](https://github.com/nextcloud/deck/pull/2500) Move details and description to dedicated component
|
||||
* [#2517](https://github.com/nextcloud/deck/pull/2517) Filter out duplicate cards in overview
|
||||
* [#2502](https://github.com/nextcloud/deck/pull/2502) Assignment code refactoring
|
||||
* [#2519](https://github.com/nextcloud/deck/pull/2519) Fix invisibility bug on modal component @wrox
|
||||
* [#2520](https://github.com/nextcloud/deck/pull/2520) Add placeholder for the description input
|
||||
* [#2521](https://github.com/nextcloud/deck/pull/2521) Add migration step to make table layout consistent
|
||||
* [#2524](https://github.com/nextcloud/deck/pull/2524) Only try to extract first part of the explode result
|
||||
* [#2531](https://github.com/nextcloud/deck/pull/2531) Add proper type to boolean parameter
|
||||
* [#2532](https://github.com/nextcloud/deck/pull/2532) Fix handling of notifications if a board does no longer exist
|
||||
* [#2536](https://github.com/nextcloud/deck/pull/2536) Only set flex layout on the active tab
|
||||
* [#2538](https://github.com/nextcloud/deck/pull/2538) Do not reset filter when staying on the same board
|
||||
* [#2539](https://github.com/nextcloud/deck/pull/2539) Apply proper checks for menu items
|
||||
* [#2540](https://github.com/nextcloud/deck/pull/2540) Only build one main bundle
|
||||
* [#2562](https://github.com/nextcloud/deck/pull/2562) Only try to extract first part of the explode result (Part 2)
|
||||
|
||||
|
||||
## 1.1.0 - 2020-10-03
|
||||
|
||||
### Features
|
||||
|
||||
* [#2115](https://github.com/nextcloud/deck/pull/2115) Dashboard widget for Nextcloud 20
|
||||
* [#1545](https://github.com/nextcloud/deck/pull/1545) Show cards in calendar/tasks app and make them available though CalDAV
|
||||
* [#2200](https://github.com/nextcloud/deck/pull/2200) Unified search implementation for Nextcloud 20
|
||||
* [#1934](https://github.com/nextcloud/deck/pull/1934) Upcoming cards overview @jakobroehrl
|
||||
* [#2047](https://github.com/nextcloud/deck/pull/2047) Show card details in modal @jakobroehrl
|
||||
* [#1853](https://github.com/nextcloud/deck/pull/1853) Archive all cards from stack @jakobroehrl
|
||||
* [#1865](https://github.com/nextcloud/deck/pull/1865) Add stack button on empty board @jakobroehrl
|
||||
* [#1926](https://github.com/nextcloud/deck/pull/1926) New filter: unassigned cards @jakobroehrl
|
||||
|
||||
### Bugfixes
|
||||
|
||||
* [#2035](https://github.com/nextcloud/deck/pull/2035) Attach files in description @jakobroehrl
|
||||
* [#2123](https://github.com/nextcloud/deck/pull/2123) Fix control tooltip @jakobroehrl
|
||||
* [#2144](https://github.com/nextcloud/deck/pull/2144) Fix nextcloud if install with dev dependencies @matchish
|
||||
* [#2158](https://github.com/nextcloud/deck/pull/2158) Fix description in dark mode
|
||||
* [#2188](https://github.com/nextcloud/deck/pull/2188) CardBadges: Count checkboxes started with "+ [ ]" @joreiff
|
||||
* [#2206](https://github.com/nextcloud/deck/pull/2206) Fix read-only sidebar (fixes #2033)
|
||||
* [#2208](https://github.com/nextcloud/deck/pull/2208) Fix design, dark mode and keyboard navigation of the board list
|
||||
* [#2210](https://github.com/nextcloud/deck/pull/2210) Fix an incorrect/misleading message in lib/Service/BoardService.php @jordanbancino
|
||||
* [#2243](https://github.com/nextcloud/deck/pull/2243) Various smaller styling fixes
|
||||
* [#2244](https://github.com/nextcloud/deck/pull/2244) Toggle filter on clicking card labels
|
||||
* [#2117](https://github.com/nextcloud/deck/pull/2117) Activity fixes
|
||||
* [#2255](https://github.com/nextcloud/deck/pull/2255) Use unified search events to apply on board filtering
|
||||
* [#2271](https://github.com/nextcloud/deck/pull/2271) Sort tags in filter @jakobroehrl
|
||||
* [#2318](https://github.com/nextcloud/deck/pull/2318) Card title: prevent space and no text @jakobroehrl
|
||||
* [#2319](https://github.com/nextcloud/deck/pull/2319) Move style loading to BeforeTemplateRenderedEvent
|
||||
* [#2320](https://github.com/nextcloud/deck/pull/2320) Consistent naming @jakobroehrl
|
||||
* [#2252](https://github.com/nextcloud/deck/pull/2252) Fix double slash in the deck activity links @baraksoa
|
||||
* [#2270](https://github.com/nextcloud/deck/pull/2270) Fix empty content view to align with other widgets
|
||||
* [#2275](https://github.com/nextcloud/deck/pull/2275) Wait for services to be registered before performing further setup that requires services
|
||||
* [#2278](https://github.com/nextcloud/deck/pull/2278) Fix wrong SQL queries @Chartman123
|
||||
* [#2279](https://github.com/nextcloud/deck/pull/2279) L10n:add translation to card placeholder @mjanssens
|
||||
* [#2282](https://github.com/nextcloud/deck/pull/2282) Duedate picker localization
|
||||
* [#2283](https://github.com/nextcloud/deck/pull/2283) Do not handle exceptions from page controller in the ExceptionMiddleware
|
||||
* [#2298](https://github.com/nextcloud/deck/pull/2298) Use absolute URLs for the search @nickvergessen
|
||||
|
||||
|
||||
|
||||
## 1.0.5 - 2020-07-15
|
||||
|
||||
### Fixed
|
||||
|
||||
|
||||
* [#2116](https://github.com/nextcloud/deck/pull/2116) Fix navigation layout issues @juliushaertl
|
||||
* [#2118](https://github.com/nextcloud/deck/pull/2118) Use proper parameter when handling attachments @juliushaertl
|
||||
|
||||
## 1.0.4 - 2020-06-26
|
||||
|
||||
### Fixed
|
||||
|
||||
* [#2062](https://github.com/nextcloud/deck/pull/2062) Fix saving card description after toggling checkboxes @juliushaertl
|
||||
* [#2065](https://github.com/nextcloud/deck/pull/2065) Adding CSS rule for Markdown Blockquotes @reox
|
||||
* [#2059](https://github.com/nextcloud/deck/pull/2059) Fix fetching attachments on card change @juliushaertl
|
||||
* [#2060](https://github.com/nextcloud/deck/pull/2060) Use mixing for relative date in card sidebar @juliushaertl
|
||||
|
||||
|
||||
## 1.0.3 - 2020-06-19
|
||||
|
||||
### Fixed
|
||||
|
||||
* [#2019](https://github.com/nextcloud/deck/pull/2019) Remove old global css rule @juliushaertl
|
||||
* [#2020](https://github.com/nextcloud/deck/pull/2020) Fix navigation issue with leftover nodes @juliushaertl
|
||||
* [#2021](https://github.com/nextcloud/deck/pull/2021) Fix description issues @juliushaertl
|
||||
* [#2022](https://github.com/nextcloud/deck/pull/2022) Fix replyto issues with the comments API @juliushaertl
|
||||
* [#2027](https://github.com/nextcloud/deck/pull/2027) Allow to unassign current user from card @juliushaertl
|
||||
* [#2029](https://github.com/nextcloud/deck/pull/2029) Fix wording : stack -> list @cloud2018
|
||||
* [#2032](https://github.com/nextcloud/deck/pull/2032) Force order by id as second sorting key @juliushaertl
|
||||
* [#2045](https://github.com/nextcloud/deck/pull/2045) Improve label styling @juliushaertl
|
||||
* [#2010](https://github.com/nextcloud/deck/pull/2010) User documentation fixes @Nyco
|
||||
* [#1998](https://github.com/nextcloud/deck/pull/1998) Add Checklist explaination to the doc @4rnoP
|
||||
|
||||
|
||||
## 1.0.2 - 2020-06-03
|
||||
|
||||
### Fixed
|
||||
|
||||
* [#1774](https://github.com/nextcloud/deck/pull/1774) Remove deprecated global API calls
|
||||
* [#1918](https://github.com/nextcloud/deck/pull/1918) Save compact mode on localstorage @jakobroehrl
|
||||
* [#1919](https://github.com/nextcloud/deck/pull/1919) Show sidebar after card creation @jakobroehrl
|
||||
* [#1924](https://github.com/nextcloud/deck/pull/1924) Boards ordered in main page @jakobroehrl
|
||||
* [#1925](https://github.com/nextcloud/deck/pull/1925) Fix generated fronted urls
|
||||
* [#1944](https://github.com/nextcloud/deck/pull/1944) Move navigation to @nextcloud/vue components
|
||||
* [#1945](https://github.com/nextcloud/deck/pull/1945) Fix datetime picker
|
||||
* [#1946](https://github.com/nextcloud/deck/pull/1946) Fix translations
|
||||
* [#1976](https://github.com/nextcloud/deck/pull/1976) Delete boards that users own once they are deleted
|
||||
* [#1977](https://github.com/nextcloud/deck/pull/1977) Redirect from previously used routes to the current ones
|
||||
|
||||
## 1.0.1 - 2020-05-15
|
||||
|
||||
### Fixed
|
||||
|
||||
* Removes debug filter output
|
||||
* Labels are now sorted
|
||||
* Stack title doesn't break up
|
||||
* Fix move card modal
|
||||
* Sort boards in navigation
|
||||
* Fixes the attachment modal
|
||||
* Handle deleted boards better
|
||||
* User can only clone a board on canManage permissions
|
||||
* Fix modal imports
|
||||
* Show menu in compact mode
|
||||
* Added a filter reset button
|
||||
* Add hover effect to board list
|
||||
* New filter icon
|
||||
* Improve hovering response in board
|
||||
* Enable linkify in description renderer @icewind1991
|
||||
* Enhance board selector
|
||||
* Fix issue if card description might be null
|
||||
* Revert markdown styles from old frontend
|
||||
* Do not scroll cards into view
|
||||
* Fix reodering performance
|
||||
|
||||
## 1.0.0 - 2020-05-06
|
||||
|
||||
### Added
|
||||
|
||||
- Completly rewritten frontend
|
||||
- Better maintainability
|
||||
- Various small fixes
|
||||
- Unified user interface with Nextcloud
|
||||
- Separate comment and activity timelines
|
||||
- Add ability to reply to comments #1537
|
||||
- Filter cards on board #1507 @jakobroehrl
|
||||
- Add cards to projects #1294 @jakobroehrl
|
||||
- Move cards to other boards #1242 @jakobroehrl
|
||||
- Clone boards with existing stacks and labels #1221 @jakobroehrl
|
||||
- Upload multiple files at once and in parallel
|
||||
|
||||
A huge thangs goes to our awesome community that put enourmous effort into the frontend migration:
|
||||
|
||||
Special thanks for contributing huge parts of the Vue.js migration:
|
||||
@jakobroehrl @weeman1337 @nicolad
|
||||
|
||||
Testers/reporters:
|
||||
@cloud2018 @putt1ck @bpcurse
|
||||
|
||||
Android app team for helping to improve our REST API:
|
||||
@desperateCoder @stefan-niedermann
|
||||
|
||||
## 0.8.0 - 2020-01-16
|
||||
|
||||
### Added
|
||||
## Added
|
||||
- Case insensitive search (@matchish)
|
||||
|
||||
### Fixed
|
||||
## Fixed
|
||||
- Fix reversed permissions for reordering stacks (@JLueke)
|
||||
- Fix reversed visibility of 'add stack' field (@JLueke)
|
||||
- Fix occ export command
|
||||
@@ -421,7 +16,7 @@ Android app team for helping to improve our REST API:
|
||||
|
||||
## 0.7.0 - 2019-08-20
|
||||
|
||||
### Added
|
||||
## Added
|
||||
- Make deck compatible to Nextcloud 17
|
||||
- Allow to set the description when creating cards though the REST API
|
||||
|
||||
@@ -494,7 +89,7 @@ Android app team for helping to improve our REST API:
|
||||
- Fix comment activities on Nextcloud 15
|
||||
- Fix issues with Edge
|
||||
- API: Fix numeric types that were returned as strings
|
||||
- API: Fix If-Modified-Since header parsing
|
||||
- API: Fix If-Modified-Since header parsing
|
||||
|
||||
|
||||
## 0.5.1 - 2018-12-05
|
||||
@@ -621,7 +216,7 @@ Android app team for helping to improve our REST API:
|
||||
### Fixed
|
||||
- Various frontend fixes
|
||||
- Fix sidebar drag issues
|
||||
- Improvements for IE11
|
||||
- Improvements for IE11
|
||||
- Fix bug when draging a card to an empty stack
|
||||
|
||||
## 0.2.1 - 2017-07-04
|
||||
@@ -695,7 +290,7 @@ Android app team for helping to improve our REST API:
|
||||
|
||||
### Fixed
|
||||
- Various styling improvements
|
||||
- Fix problems with MySQL and PostgreSQL
|
||||
- Fix problems with MySQL and PostgreSQL
|
||||
- Select first color by default when creating boards
|
||||
- Fix error when changing board permissions
|
||||
|
||||
@@ -703,9 +298,9 @@ Android app team for helping to improve our REST API:
|
||||
|
||||
### Added
|
||||
- Sharing boards with other users
|
||||
- Create and manage boards
|
||||
- Create and manage boards
|
||||
- Sort cards on stacks by drag-and-drop
|
||||
- Assign labels
|
||||
- Markdown notes for each card
|
||||
- Archive cards
|
||||
- Archive cards
|
||||
|
||||
|
||||
3
Makefile
@@ -50,7 +50,8 @@ ifeq (, $(shell which phpunit 2> /dev/null))
|
||||
php $(build_tools_directory)/phpunit.phar -c tests/phpunit.xml --coverage-clover build/php-unit.coverage.xml
|
||||
php $(build_tools_directory)/phpunit.phar -c tests/phpunit.integration.xml --coverage-clover build/php-integration.coverage.xml
|
||||
else
|
||||
phpunit -c tests/phpunit.integration.xml --testsuite=integration-database --coverage-clover build/php-integration.coverage.xml
|
||||
phpunit -c tests/phpunit.xml --coverage-clover build/php-unit.coverage.xml
|
||||
phpunit -c tests/phpunit.integration.xml --coverage-clover build/php-integration.coverage.xml
|
||||
endif
|
||||
|
||||
test-integration:
|
||||
|
||||
63
README.md
@@ -5,27 +5,18 @@
|
||||
|
||||
Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.
|
||||
|
||||
- Add your tasks to cards and put them in order
|
||||
- Write down additional notes in markdown
|
||||
- Assign labels for even better organization
|
||||
- Share with your team, friends or family
|
||||
- Integrates with the [Circles](https://github.com/nextcloud/circles) app!
|
||||
- Attach files and embed them in your markdown description
|
||||
- Discuss with your team using comments
|
||||
- Keep track of changes in the activity stream
|
||||
- Get your project organized
|
||||
- :inbox_tray: Add your tasks to cards and put them in order
|
||||
- :page_facing_up: Write down additional notes in markdown
|
||||
- :bookmark: Assign labels for even better organization
|
||||
- :busts_in_silhouette: Share with your team, friends or family
|
||||
- :family: Integrates with the [Circles](https://github.com/nextcloud/circles) app!
|
||||
- :paperclip: Attach files and embed them in your markdown description
|
||||
- :speech_balloon: Discuss with your team using comments
|
||||
- :zap: Keep track of changes in the activity stream
|
||||
- :rocket: Get your project organized
|
||||
|
||||

|
||||
|
||||
### Mobile apps
|
||||
|
||||
- [Nextcloud Deck app for Android](https://github.com/stefan-niedermann/nextcloud-deck) - It is available in [F-Droid](https://f-droid.org/de/packages/it.niedermann.nextcloud.deck/) and the [Google Play Store](https://play.google.com/store/apps/details?id=it.niedermann.nextcloud.deck.play)
|
||||
|
||||
### 3rd-Party Integrations
|
||||
|
||||
- [trello-to-deck](https://github.com/maxammann/trello-to-deck) - Migrates cards from Trello
|
||||
- [mail2deck](https://github.com/newroco/mail2deck) - Provides an "email in" solution
|
||||
- [A-deck](https://github.com/leoossa/A-deck) - Chrome Extension that allows to create new card in selected stack based on current tab
|
||||

|
||||
|
||||
## Installation/Update
|
||||
|
||||
@@ -52,17 +43,6 @@ Please make sure you have installed the following dependencies: `make, which, ta
|
||||
|
||||
Instead of setting everything up manually, you can just [download the nightly build](https://github.com/nextcloud/deck/releases/tag/nightly) instead. These builds are updated every 24 hours, and are pre-configured with all the needed dependencies.
|
||||
|
||||
## Performance limitations
|
||||
|
||||
Deck is not yet ready for intensive usage.
|
||||
A lot of database queries are generated when the number of boards, cards and attachments is high.
|
||||
For example, a user having access to 13 boards, with each board having on average 100 cards,
|
||||
and each card having on average 5 attachments,
|
||||
would generate 6500 database queries when doing the file related queries
|
||||
which would increase the page loading time significantly.
|
||||
|
||||
Improvements on Nextcloud server and Deck itself will improve the situation.
|
||||
|
||||
## Developing
|
||||
|
||||
### PHP
|
||||
@@ -71,31 +51,8 @@ Nothing to prepare, just dig into the code.
|
||||
|
||||
### JavaScript
|
||||
|
||||
This requires at least Node 14 and npm 7 to be installed.
|
||||
|
||||
Deck requires running a `make build-js` to install npm dependencies and build the JavaScript code using webpack. While developing you can also use `make watch` to rebuild everytime the code changes.
|
||||
|
||||
#### Hot reloading
|
||||
|
||||
Enable debug mode in your config.php `'debug' => true,`
|
||||
|
||||
Without SSL:
|
||||
```
|
||||
npx webpack-dev-server --config webpack.hot.js \
|
||||
--public localhost:3000 \
|
||||
--output-public-path 'http://localhost:3000/js/'
|
||||
```
|
||||
|
||||
With SSL:
|
||||
```
|
||||
npx webpack-dev-server --config webpack.dev.js --https \
|
||||
--cert ~/repos/nextcloud/nc-dev/data/ssl/nextcloud.local.crt \
|
||||
--key ~/repos/nextcloud/nc-dev/data/ssl/nextcloud.local.key \
|
||||
--public nextcloud.local:3000 \
|
||||
--output-public-path 'https://nextcloud.local:3000/js/'
|
||||
```
|
||||
|
||||
|
||||
### Running tests
|
||||
You can use the provided Makefile to run all tests by using:
|
||||
|
||||
|
||||
29
SECURITY.md
@@ -1,29 +0,0 @@
|
||||
# Security Policy
|
||||
|
||||
## Supported Versions
|
||||
|
||||
| Version | Nextcloud version | Supported |
|
||||
| ------- | ----------------- | ------------------ |
|
||||
| 1.0.x | 18, 19 | :white_check_mark: |
|
||||
| 0.8.x | 17 | :white_check_mark: |
|
||||
| <0.7.x | - | :x: |
|
||||
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
Security is very important to us. If you have discovered a security issue with Nextcloud,
|
||||
please read our responsible disclosure guidelines and contact us at [hackerone.com/nextcloud](https://hackerone.com/nextcloud).
|
||||
Your report should include:
|
||||
|
||||
- Product version
|
||||
- A vulnerability description
|
||||
- Reproduction steps
|
||||
|
||||
A member of the security team will confirm the vulnerability, determine its impact, and develop a fix.
|
||||
The fix will be applied to the master branch, tested, and packaged in the next security release.
|
||||
The vulnerability will be publicly announced after the release. Finally, your name will be added
|
||||
to the [hall of fame](https://hackerone.com/nextcloud/thanks) as a thank you from the entire Nextcloud community. Note our
|
||||
[threat model](https://nextcloud.com/security/threat-model) to know what is expected behavior.
|
||||
|
||||
|
||||
Please visit https://nextcloud.com/security/ for further information about security.
|
||||
@@ -3,8 +3,6 @@
|
||||
* @copyright Copyright (c) 2016 Julius Härtl <jus@bitgrid.net>
|
||||
*
|
||||
* @author Julius Härtl <jus@bitgrid.net>
|
||||
* @author Maxence Lange <maxence@artificial-owl.com>
|
||||
* @author Luka Trovic <luka.trovic@nextcloud.com>
|
||||
*
|
||||
* @license GNU AGPL version 3 or any later version
|
||||
*
|
||||
@@ -23,17 +21,19 @@
|
||||
*
|
||||
*/
|
||||
|
||||
declare(strict_types=1);
|
||||
use OCA\Deck\AppInfo\Application;
|
||||
use OCP\AppFramework\QueryException;
|
||||
|
||||
namespace OCA\Deck\Validators;
|
||||
|
||||
class StackServiceValidator extends BaseValidator {
|
||||
public function rules() {
|
||||
return [
|
||||
'id' => ['numeric'],
|
||||
'title' => ['not_empty', 'not_null', 'not_false', 'max:100'],
|
||||
'boardId' => ['numeric', 'not_null'],
|
||||
'order' => ['numeric', 'not_null']
|
||||
];
|
||||
}
|
||||
if ((@include_once __DIR__ . '/../vendor/autoload.php')=== false) {
|
||||
throw new Exception('Cannot include autoload. Did you run install dependencies using composer?');
|
||||
}
|
||||
|
||||
try {
|
||||
/** @var Application $app */
|
||||
$app = \OC::$server->query(Application::class);
|
||||
$app->register();
|
||||
} catch (QueryException $e) {
|
||||
}
|
||||
|
||||
/** Load activity style global so it is availabile in the activity app as well */
|
||||
\OC_Util::addStyle('deck', 'activity');
|
||||
@@ -23,6 +23,8 @@
|
||||
|
||||
namespace OCA\Deck\AppInfo;
|
||||
|
||||
use OCP\AppFramework\App;
|
||||
|
||||
/**
|
||||
* Additional autoloader registration, e.g. registering composer autoloaders
|
||||
*/
|
||||
|
||||
482
appinfo/database.xml
Normal file
@@ -0,0 +1,482 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<database>
|
||||
<name>*dbname*</name>
|
||||
<create>true</create>
|
||||
<overwrite>false</overwrite>
|
||||
<charset>utf8</charset>
|
||||
<table>
|
||||
<name>*dbprefix*deck_boards</name>
|
||||
<declaration>
|
||||
<field>
|
||||
<name>id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<autoincrement>1</autoincrement>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>title</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>100</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>owner</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>color</name>
|
||||
<type>text</type>
|
||||
<length>6</length>
|
||||
<notnull>false</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>archived</name>
|
||||
<type>boolean</type>
|
||||
<default>false</default>
|
||||
</field>
|
||||
<field>
|
||||
<name>deleted_at</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<length>8</length>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
<field>
|
||||
<name>last_modified</name>
|
||||
<type>integer</type>
|
||||
<default></default>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
</declaration>
|
||||
</table>
|
||||
<table>
|
||||
<name>*dbprefix*deck_stacks</name>
|
||||
<declaration>
|
||||
<field>
|
||||
<name>id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<autoincrement>1</autoincrement>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>title</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>100</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>board_id</name>
|
||||
<type>integer</type>
|
||||
<length>8</length>
|
||||
<notnull>true</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>order</name>
|
||||
<type>integer</type>
|
||||
<length>8</length>
|
||||
<notnull>false</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>deleted_at</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<length>8</length>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
<field>
|
||||
<name>last_modified</name>
|
||||
<type>integer</type>
|
||||
<default></default>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
<index>
|
||||
<name>deck_stacks_board_id_index</name>
|
||||
<field>
|
||||
<name>board_id</name>
|
||||
</field>
|
||||
</index>
|
||||
<index>
|
||||
<name>deck_stacks_order_index</name>
|
||||
<field>
|
||||
<name>order</name>
|
||||
</field>
|
||||
</index>
|
||||
</declaration>
|
||||
</table>
|
||||
<table>
|
||||
<name>*dbprefix*deck_cards</name>
|
||||
<declaration>
|
||||
<field>
|
||||
<name>id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<autoincrement>1</autoincrement>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>title</name>
|
||||
<type>text</type>
|
||||
<length>100</length>
|
||||
<notnull>true</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>description</name>
|
||||
<type>clob</type>
|
||||
<notnull>false</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>description_prev</name>
|
||||
<type>clob</type>
|
||||
<notnull>false</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>stack_id</name>
|
||||
<type>integer</type>
|
||||
<length>8</length>
|
||||
<notnull>true</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>type</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
<default>plain</default>
|
||||
</field>
|
||||
<field>
|
||||
<name>last_modified</name>
|
||||
<type>integer</type>
|
||||
<default></default>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
<field>
|
||||
<name>last_editor</name>
|
||||
<type>text</type>
|
||||
<notnull>false</notnull>
|
||||
<length>64</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>created_at</name>
|
||||
<type>integer</type>
|
||||
<default></default>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
<field>
|
||||
<name>owner</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>order</name>
|
||||
<type>integer</type>
|
||||
<length>8</length>
|
||||
<notnull>false</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>archived</name>
|
||||
<type>boolean</type>
|
||||
<default>false</default>
|
||||
</field>
|
||||
<field>
|
||||
<name>duedate</name>
|
||||
<type>timestamp</type>
|
||||
<default>0</default>
|
||||
</field>
|
||||
<field>
|
||||
<name>notified</name>
|
||||
<type>boolean</type>
|
||||
<default>false</default>
|
||||
</field>
|
||||
<field>
|
||||
<name>deleted_at</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<length>8</length>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
<index>
|
||||
<name>deck_cards_stack_id_index</name>
|
||||
<field>
|
||||
<name>stack_id</name>
|
||||
</field>
|
||||
</index>
|
||||
<index>
|
||||
<name>deck_cards_order_index</name>
|
||||
<field>
|
||||
<name>order</name>
|
||||
</field>
|
||||
</index>
|
||||
<index>
|
||||
<name>deck_cards_archived_index</name>
|
||||
<field>
|
||||
<name>archived</name>
|
||||
</field>
|
||||
</index>
|
||||
</declaration>
|
||||
</table>
|
||||
<table>
|
||||
<name>*dbprefix*deck_attachment</name>
|
||||
<declaration>
|
||||
<field>
|
||||
<name>id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<autoincrement>1</autoincrement>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>card_id</name>
|
||||
<type>integer</type>
|
||||
<length>8</length>
|
||||
<notnull>true</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>type</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>data</name>
|
||||
<type>text</type>
|
||||
</field>
|
||||
<field>
|
||||
<name>last_modified</name>
|
||||
<type>integer</type>
|
||||
<default/>
|
||||
<length>8</length>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
<field>
|
||||
<name>created_at</name>
|
||||
<type>integer</type>
|
||||
<default/>
|
||||
<length>8</length>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
<field>
|
||||
<name>created_by</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>deleted_at</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<length>8</length>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
</declaration>
|
||||
</table>
|
||||
|
||||
<table>
|
||||
<name>*dbprefix*deck_labels</name>
|
||||
<declaration>
|
||||
<field>
|
||||
<name>id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<autoincrement>1</autoincrement>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>title</name>
|
||||
<type>text</type>
|
||||
<notnull>false</notnull>
|
||||
<length>100</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>color</name>
|
||||
<type>text</type>
|
||||
<length>6</length>
|
||||
<notnull>false</notnull>
|
||||
</field>
|
||||
<field>
|
||||
<name>board_id</name>
|
||||
<type>integer</type>
|
||||
<notnull>true</notnull>
|
||||
<length>8</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>last_modified</name>
|
||||
<type>integer</type>
|
||||
<default></default>
|
||||
<notnull>false</notnull>
|
||||
<unsigned>true</unsigned>
|
||||
</field>
|
||||
<index>
|
||||
<name>deck_labels_board_id_index</name>
|
||||
<field>
|
||||
<name>board_id</name>
|
||||
</field>
|
||||
</index>
|
||||
</declaration>
|
||||
</table>
|
||||
|
||||
<table>
|
||||
<name>*dbprefix*deck_assigned_labels</name>
|
||||
<declaration>
|
||||
<field>
|
||||
<name>id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<autoincrement>1</autoincrement>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>label_id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>card_id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<index>
|
||||
<name>deck_assigned_labels_idx_i</name>
|
||||
<field>
|
||||
<name>label_id</name>
|
||||
</field>
|
||||
</index>
|
||||
<index>
|
||||
<name>deck_assigned_labels_idx_c</name>
|
||||
<field>
|
||||
<name>card_id</name>
|
||||
</field>
|
||||
</index>
|
||||
</declaration>
|
||||
</table>
|
||||
<table>
|
||||
<name>*dbprefix*deck_assigned_users</name>
|
||||
<declaration>
|
||||
<field>
|
||||
<name>id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<autoincrement>1</autoincrement>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>participant</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>card_id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<index>
|
||||
<name>deck_assigned_users_idx_p</name>
|
||||
<field>
|
||||
<name>participant</name>
|
||||
</field>
|
||||
</index>
|
||||
<index>
|
||||
<name>deck_assigned_users_idx_c</name>
|
||||
<field>
|
||||
<name>card_id</name>
|
||||
</field>
|
||||
</index>
|
||||
</declaration>
|
||||
</table>
|
||||
<table>
|
||||
<name>*dbprefix*deck_board_acl</name>
|
||||
<declaration>
|
||||
<field>
|
||||
<name>id</name>
|
||||
<type>integer</type>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<autoincrement>1</autoincrement>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>board_id</name>
|
||||
<type>integer</type>
|
||||
<notnull>true</notnull>
|
||||
<length>8</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>type</name>
|
||||
<type>integer</type>
|
||||
<notnull>true</notnull>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>participant</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>permission_edit</name>
|
||||
<type>boolean</type>
|
||||
<default>false</default>
|
||||
</field>
|
||||
<field>
|
||||
<name>permission_share</name>
|
||||
<type>boolean</type>
|
||||
<default>false</default>
|
||||
</field>
|
||||
<field>
|
||||
<name>permission_manage</name>
|
||||
<type>boolean</type>
|
||||
<default>false</default>
|
||||
</field>
|
||||
<index>
|
||||
<name>deck_board_acl_uq_i</name>
|
||||
<unique>true</unique>
|
||||
<field>
|
||||
<name>board_id</name>
|
||||
<sorting>ascending</sorting>
|
||||
</field>
|
||||
<field>
|
||||
<name>type</name>
|
||||
<sorting>ascending</sorting>
|
||||
</field>
|
||||
<field>
|
||||
<name>participant</name>
|
||||
<sorting>ascending</sorting>
|
||||
</field>
|
||||
</index>
|
||||
<index>
|
||||
<name>deck_board_acl_idx_i</name>
|
||||
<field>
|
||||
<name>board_id</name>
|
||||
</field>
|
||||
</index>
|
||||
</declaration>
|
||||
|
||||
</table>
|
||||
</database>
|
||||
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<info xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://apps.nextcloud.com/schema/apps/info.xsd">
|
||||
<?xml version="1.0"?>
|
||||
<info xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="https://apps.nextcloud.com/schema/apps/info.xsd">
|
||||
<id>deck</id>
|
||||
<name>Deck</name>
|
||||
<summary>Personal planning and team project organization</summary>
|
||||
@@ -7,44 +8,48 @@
|
||||
|
||||
|
||||
- 📥 Add your tasks to cards and put them in order
|
||||
- 📄 Write down additional notes in Markdown
|
||||
- 📄 Write down additional notes in markdown
|
||||
- 🔖 Assign labels for even better organization
|
||||
- 👥 Share with your team, friends or family
|
||||
- 📎 Attach files and embed them in your Markdown description
|
||||
- 📎 Attach files and embed them in your markdown description
|
||||
- 💬 Discuss with your team using comments
|
||||
- ⚡ Keep track of changes in the activity stream
|
||||
- 🚀 Get your project organized
|
||||
|
||||
</description>
|
||||
<version>1.8.2</version>
|
||||
<version>1.0.0-alpha1</version>
|
||||
<licence>agpl</licence>
|
||||
<author>Julius Härtl</author>
|
||||
<namespace>Deck</namespace>
|
||||
<types>
|
||||
<dav/>
|
||||
<dav />
|
||||
</types>
|
||||
<category>organization</category>
|
||||
<category>office</category>
|
||||
<website>https://github.com/nextcloud/deck</website>
|
||||
<bugs>https://github.com/nextcloud/deck/issues</bugs>
|
||||
<repository type="git">https://github.com/nextcloud/deck.git</repository>
|
||||
<screenshot>https://download.bitgrid.net/nextcloud/deck/screenshots/1.0/Deck-1.png</screenshot>
|
||||
<screenshot>https://download.bitgrid.net/nextcloud/deck/screenshots/1.0/Deck-2.png</screenshot>
|
||||
<screenshot>https://download.bitgrid.net/nextcloud/deck/screenshots/0.5/deck-notifications.png</screenshot>
|
||||
<screenshot>https://download.bitgrid.net/nextcloud/deck/screenshots/0.5/deck-comment2.png</screenshot>
|
||||
<dependencies>
|
||||
<php min-version="5.6"/>
|
||||
<database min-version="9.4">pgsql</database>
|
||||
<database>sqlite</database>
|
||||
<database min-version="8.0">mysql</database>
|
||||
<nextcloud min-version="25" max-version="25"/>
|
||||
<database min-version="5.5">mysql</database>
|
||||
<nextcloud min-version="17" max-version="19" />
|
||||
</dependencies>
|
||||
<background-jobs>
|
||||
<job>OCA\Deck\Cron\DeleteCron</job>
|
||||
<job>OCA\Deck\Cron\ScheduledNotifications</job>
|
||||
<job>OCA\Deck\Cron\CardDescriptionActivity</job>
|
||||
</background-jobs>
|
||||
<repair-steps>
|
||||
<post-migration>
|
||||
<step>OCA\Deck\Migration\UnknownUsers</step>
|
||||
</post-migration>
|
||||
</repair-steps>
|
||||
<commands>
|
||||
<command>OCA\Deck\Command\UserExport</command>
|
||||
<command>OCA\Deck\Command\BoardImport</command>
|
||||
<command>OCA\Deck\Command\TransferOwnership</command>
|
||||
</commands>
|
||||
<activity>
|
||||
<settings>
|
||||
@@ -59,20 +64,9 @@
|
||||
<provider>OCA\Deck\Activity\DeckProvider</provider>
|
||||
</providers>
|
||||
</activity>
|
||||
|
||||
<fulltextsearch>
|
||||
<provider min-version="16">OCA\Deck\Provider\DeckProvider</provider>
|
||||
</fulltextsearch>
|
||||
<navigations>
|
||||
<navigation>
|
||||
<name>Deck</name>
|
||||
<route>deck.page.index</route>
|
||||
<icon>deck.svg</icon>
|
||||
<order>10</order>
|
||||
</navigation>
|
||||
</navigations>
|
||||
<sabre>
|
||||
<calendar-plugins>
|
||||
<plugin>OCA\Deck\DAV\CalendarPlugin</plugin>
|
||||
</calendar-plugins>
|
||||
</sabre>
|
||||
|
||||
</info>
|
||||
|
||||
@@ -25,7 +25,9 @@
|
||||
return [
|
||||
'routes' => [
|
||||
['name' => 'page#index', 'url' => '/', 'verb' => 'GET'],
|
||||
['name' => 'page#redirectToCard', 'url' => '/card/{cardId}', 'verb' => 'GET'],
|
||||
|
||||
['name' => 'Config#get', 'url' => '/config', 'verb' => 'GET'],
|
||||
['name' => 'Config#setValue', 'url' => '/config/{key}', 'verb' => 'POST'],
|
||||
|
||||
// boards
|
||||
['name' => 'board#index', 'url' => '/boards', 'verb' => 'GET'],
|
||||
@@ -39,7 +41,6 @@ return [
|
||||
['name' => 'board#updateAcl', 'url' => '/boards/{boardId}/acl/{aclId}', 'verb' => 'PUT'],
|
||||
['name' => 'board#deleteAcl', 'url' => '/boards/{boardId}/acl/{aclId}', 'verb' => 'DELETE'],
|
||||
['name' => 'board#clone', 'url' => '/boards/{boardId}/clone', 'verb' => 'POST'],
|
||||
['name' => 'board#transferOwner', 'url' => '/boards/{boardId}/transferOwner', 'verb' => 'PUT'],
|
||||
|
||||
// stacks
|
||||
['name' => 'stack#index', 'url' => '/stacks/{boardId}', 'verb' => 'GET'],
|
||||
@@ -63,9 +64,8 @@ return [
|
||||
['name' => 'card#assignLabel', 'url' => '/cards/{cardId}/label/{labelId}', 'verb' => 'POST'],
|
||||
['name' => 'card#removeLabel', 'url' => '/cards/{cardId}/label/{labelId}', 'verb' => 'DELETE'],
|
||||
['name' => 'card#assignUser', 'url' => '/cards/{cardId}/assign', 'verb' => 'POST'],
|
||||
['name' => 'card#unassignUser', 'url' => '/cards/{cardId}/unassign', 'verb' => 'PUT'],
|
||||
['name' => 'card#unassignUser', 'url' => '/cards/{cardId}/assign/{userId}', 'verb' => 'DELETE'],
|
||||
|
||||
// attachments
|
||||
['name' => 'attachment#getAll', 'url' => '/cards/{cardId}/attachments', 'verb' => 'GET'],
|
||||
['name' => 'attachment#create', 'url' => '/cards/{cardId}/attachment', 'verb' => 'POST'],
|
||||
['name' => 'attachment#display', 'url' => '/cards/{cardId}/attachment/{attachmentId}', 'verb' => 'GET'],
|
||||
@@ -82,72 +82,46 @@ return [
|
||||
['name' => 'label#delete', 'url' => '/labels/{labelId}', 'verb' => 'DELETE'],
|
||||
|
||||
// api
|
||||
['name' => 'board_api#index', 'url' => '/api/v{apiVersion}/boards', 'verb' => 'GET'],
|
||||
['name' => 'board_api#get', 'url' => '/api/v{apiVersion}/boards/{boardId}', 'verb' => 'GET'],
|
||||
['name' => 'board_api#create', 'url' => '/api/v{apiVersion}/boards', 'verb' => 'POST'],
|
||||
['name' => 'board_api#delete', 'url' => '/api/v{apiVersion}/boards/{boardId}', 'verb' => 'DELETE'],
|
||||
['name' => 'board_api#update', 'url' => '/api/v{apiVersion}/boards/{boardId}', 'verb' => 'PUT'],
|
||||
['name' => 'board_api#undo_delete', 'url' => '/api/v{apiVersion}/boards/{boardId}/undo_delete', 'verb' => 'POST'],
|
||||
['name' => 'board_api#addAcl', 'url' => '/api/v{apiVersion}/boards/{boardId}/acl', 'verb' => 'POST'],
|
||||
['name' => 'board_api#deleteAcl', 'url' => '/api/v{apiVersion}/boards/{boardId}/acl/{aclId}', 'verb' => 'DELETE'],
|
||||
['name' => 'board_api#updateAcl', 'url' => '/api/v{apiVersion}/boards/{boardId}/acl/{aclId}', 'verb' => 'PUT'],
|
||||
|
||||
['name' => 'board_import_api#getAllowedSystems', 'url' => '/api/v{apiVersion}/boards/import/getSystems','verb' => 'GET'],
|
||||
['name' => 'board_import_api#getConfigSchema', 'url' => '/api/v{apiVersion}/boards/import/config/schema/{name}','verb' => 'GET'],
|
||||
['name' => 'board_import_api#import', 'url' => '/api/v{apiVersion}/boards/import','verb' => 'POST'],
|
||||
['name' => 'board_api#index', 'url' => '/api/v1.0/boards', 'verb' => 'GET'],
|
||||
['name' => 'board_api#get', 'url' => '/api/v1.0/boards/{boardId}', 'verb' => 'GET'],
|
||||
['name' => 'board_api#create', 'url' => '/api/v1.0/boards', 'verb' => 'POST'],
|
||||
['name' => 'board_api#delete', 'url' => '/api/v1.0/boards/{boardId}', 'verb' => 'DELETE'],
|
||||
['name' => 'board_api#update', 'url' => '/api/v1.0/boards/{boardId}', 'verb' => 'PUT'],
|
||||
['name' => 'board_api#undo_delete', 'url' => '/api/v1.0/boards/{boardId}/undo_delete', 'verb' => 'POST'],
|
||||
['name' => 'board_api#addAcl', 'url' => '/api/v1.0/boards/{boardId}/acl', 'verb' => 'POST'],
|
||||
['name' => 'board_api#deleteAcl', 'url' => '/api/v1.0/boards/{boardId}/acl/{aclId}', 'verb' => 'DELETE'],
|
||||
['name' => 'board_api#updateAcl', 'url' => '/api/v1.0/boards/{boardId}/acl/{aclId}', 'verb' => 'PUT'],
|
||||
|
||||
|
||||
['name' => 'stack_api#index', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks', 'verb' => 'GET'],
|
||||
['name' => 'stack_api#getArchived', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/archived', 'verb' => 'GET'],
|
||||
['name' => 'stack_api#get', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}', 'verb' => 'GET'],
|
||||
['name' => 'stack_api#create', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks', 'verb' => 'POST'],
|
||||
['name' => 'stack_api#update', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}', 'verb' => 'PUT'],
|
||||
['name' => 'stack_api#delete', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}', 'verb' => 'DELETE'],
|
||||
['name' => 'stack_api#index', 'url' => '/api/v1.0/boards/{boardId}/stacks', 'verb' => 'GET'],
|
||||
['name' => 'stack_api#getArchived', 'url' => '/api/v1.0/boards/{boardId}/stacks/archived', 'verb' => 'GET'],
|
||||
['name' => 'stack_api#get', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}', 'verb' => 'GET'],
|
||||
['name' => 'stack_api#create', 'url' => '/api/v1.0/boards/{boardId}/stacks', 'verb' => 'POST'],
|
||||
['name' => 'stack_api#update', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}', 'verb' => 'PUT'],
|
||||
['name' => 'stack_api#delete', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}', 'verb' => 'DELETE'],
|
||||
|
||||
['name' => 'card_api#get', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}', 'verb' => 'GET'],
|
||||
['name' => 'card_api#create', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards', 'verb' => 'POST'],
|
||||
['name' => 'card_api#update', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#assignLabel', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/assignLabel', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#removeLabel', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/removeLabel', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#assignUser', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/assignUser', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#unassignUser', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/unassignUser', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#reorder', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/reorder', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#delete', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}', 'verb' => 'DELETE'],
|
||||
['name' => 'card_api#get', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}', 'verb' => 'GET'],
|
||||
['name' => 'card_api#create', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards', 'verb' => 'POST'],
|
||||
['name' => 'card_api#update', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#assignLabel', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/assignLabel', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#removeLabel', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/removeLabel', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#assignUser', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/assignUser', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#unassignUser', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/unassignUser', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#reorder', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/reorder', 'verb' => 'PUT'],
|
||||
['name' => 'card_api#delete', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}', 'verb' => 'DELETE'],
|
||||
|
||||
['name' => 'card_api#findAllWithDue', 'url' => '/api/v{apiVersion}/dashboard/due', 'verb' => 'GET'],
|
||||
['name' => 'label_api#get', 'url' => '/api/v1.0/boards/{boardId}/labels/{labelId}', 'verb' => 'GET'],
|
||||
['name' => 'label_api#create', 'url' => '/api/v1.0/boards/{boardId}/labels', 'verb' => 'POST'],
|
||||
['name' => 'label_api#update', 'url' => '/api/v1.0/boards/{boardId}/labels/{labelId}', 'verb' => 'PUT'],
|
||||
['name' => 'label_api#delete', 'url' => '/api/v1.0/boards/{boardId}/labels/{labelId}', 'verb' => 'DELETE'],
|
||||
|
||||
['name' => 'label_api#get', 'url' => '/api/v{apiVersion}/boards/{boardId}/labels/{labelId}', 'verb' => 'GET'],
|
||||
['name' => 'label_api#create', 'url' => '/api/v{apiVersion}/boards/{boardId}/labels', 'verb' => 'POST'],
|
||||
['name' => 'label_api#update', 'url' => '/api/v{apiVersion}/boards/{boardId}/labels/{labelId}', 'verb' => 'PUT'],
|
||||
['name' => 'label_api#delete', 'url' => '/api/v{apiVersion}/boards/{boardId}/labels/{labelId}', 'verb' => 'DELETE'],
|
||||
['name' => 'attachment_api#getAll', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments', 'verb' => 'GET'],
|
||||
['name' => 'attachment_api#display', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{attachmentId}', 'verb' => 'GET'],
|
||||
['name' => 'attachment_api#create', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments', 'verb' => 'POST'],
|
||||
['name' => 'attachment_api#update', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{attachmentId}', 'verb' => 'PUT'],
|
||||
['name' => 'attachment_api#delete', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{attachmentId}', 'verb' => 'DELETE'],
|
||||
['name' => 'attachment_api#restore', 'url' => '/api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{attachmentId}/restore', 'verb' => 'PUT'],
|
||||
|
||||
['name' => 'attachment_api#getAll', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments', 'verb' => 'GET', 'requirements' => ['apiVersion' => '1.0']],
|
||||
['name' => 'attachment_api#display', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{attachmentId}', 'verb' => 'GET', 'requirements' => ['apiVersion' => '1.0']],
|
||||
['name' => 'attachment_api#create', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments', 'verb' => 'POST', 'requirements' => ['apiVersion' => '1.0']],
|
||||
['name' => 'attachment_api#update', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{attachmentId}', 'verb' => 'PUT', 'requirements' => ['apiVersion' => '1.0']],
|
||||
['name' => 'attachment_api#delete', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{attachmentId}', 'verb' => 'DELETE', 'requirements' => ['apiVersion' => '1.0']],
|
||||
['name' => 'attachment_api#restore', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{attachmentId}/restore', 'verb' => 'PUT', 'requirements' => ['apiVersion' => '1.0']],
|
||||
|
||||
['name' => 'attachment_api_v11#getAll', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments', 'verb' => 'GET', 'requirements' => ['apiVersion' => '1.1']],
|
||||
['name' => 'attachment_api_v11#display', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{type}/{attachmentId}', 'verb' => 'GET', 'requirements' => ['apiVersion' => '1.1']],
|
||||
['name' => 'attachment_api_v11#create', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments', 'verb' => 'POST', 'requirements' => ['apiVersion' => '1.1']],
|
||||
['name' => 'attachment_api_v11#update', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{type}/{attachmentId}', 'verb' => 'PUT', 'requirements' => ['apiVersion' => '1.1']],
|
||||
['name' => 'attachment_api_v11#delete', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{type}/{attachmentId}', 'verb' => 'DELETE', 'requirements' => ['apiVersion' => '1.1']],
|
||||
['name' => 'attachment_api_v11#restore', 'url' => '/api/v{apiVersion}/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{type}/{attachmentId}/restore', 'verb' => 'PUT', 'requirements' => ['apiVersion' => '1.1']],
|
||||
|
||||
['name' => 'board_api#preflighted_cors', 'url' => '/api/v{apiVersion}/{path}','verb' => 'OPTIONS', 'requirements' => ['path' => '.+']],
|
||||
],
|
||||
'ocs' => [
|
||||
['name' => 'Config#get', 'url' => '/api/v{apiVersion}/config', 'verb' => 'GET'],
|
||||
['name' => 'Config#setValue', 'url' => '/api/v{apiVersion}/config/{key}', 'verb' => 'POST'],
|
||||
|
||||
['name' => 'comments_api#list', 'url' => '/api/v{apiVersion}/cards/{cardId}/comments', 'verb' => 'GET'],
|
||||
['name' => 'comments_api#create', 'url' => '/api/v{apiVersion}/cards/{cardId}/comments', 'verb' => 'POST'],
|
||||
['name' => 'comments_api#update', 'url' => '/api/v{apiVersion}/cards/{cardId}/comments/{commentId}', 'verb' => 'PUT'],
|
||||
['name' => 'comments_api#delete', 'url' => '/api/v{apiVersion}/cards/{cardId}/comments/{commentId}', 'verb' => 'DELETE'],
|
||||
|
||||
['name' => 'overview_api#upcomingCards', 'url' => '/api/v{apiVersion}/overview/upcoming', 'verb' => 'GET'],
|
||||
|
||||
['name' => 'search#search', 'url' => '/api/v{apiVersion}/search', 'verb' => 'GET'],
|
||||
['name' => 'board_api#preflighted_cors', 'url' => '/api/v1.0/{path}','verb' => 'OPTIONS', 'requirements' => ['path' => '.+']],
|
||||
]
|
||||
];
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
const babelConfig = require('@nextcloud/babel-config')
|
||||
|
||||
module.exports = babelConfig
|
||||
module.exports = {
|
||||
plugins: ['@babel/plugin-syntax-dynamic-import'],
|
||||
presets: [
|
||||
[
|
||||
'@babel/preset-env',
|
||||
{
|
||||
modules: false
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,53 +1,20 @@
|
||||
{
|
||||
"name": "nextcloud/deck",
|
||||
"type": "project",
|
||||
"license": "AGPLv3",
|
||||
"authors": [
|
||||
{
|
||||
"name": "Julius Härtl",
|
||||
"email": "jus@bitgrid.net"
|
||||
}
|
||||
],
|
||||
"require": {
|
||||
"cogpowered/finediff": "0.3.*",
|
||||
"justinrainbow/json-schema": "^5.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"roave/security-advisories": "dev-master",
|
||||
"phpunit/phpunit": "^9",
|
||||
"nextcloud/coding-standard": "^1.0.0",
|
||||
"symfony/event-dispatcher": "^4.0",
|
||||
"vimeo/psalm": "^4.3",
|
||||
"php-parallel-lint/php-parallel-lint": "^1.2",
|
||||
"nextcloud/ocp": "dev-stable25"
|
||||
},
|
||||
"config": {
|
||||
"optimize-autoloader": true,
|
||||
"classmap-authoritative": true,
|
||||
"allow-plugins": {
|
||||
"composer/package-versions-deprecated": true
|
||||
},
|
||||
"platform": {
|
||||
"php": "7.4"
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
"lint": "find . -name \\*.php -not -path './vendor/*' -print0 | xargs -0 -n1 php -l",
|
||||
"cs:check": "php-cs-fixer fix --dry-run --diff",
|
||||
"cs:fix": "php-cs-fixer fix",
|
||||
"psalm": "psalm",
|
||||
"psalm:update-baseline": "psalm --update-baseline",
|
||||
"psalm:fix": "psalm --alter --issues=InvalidReturnType,InvalidNullableReturnType,MismatchingDocblockParamType,MismatchingDocblockReturnType,MissingParamType,InvalidFalsableReturnType",
|
||||
"test": [
|
||||
"@test:unit",
|
||||
"@test:integration"
|
||||
],
|
||||
"test:unit": "phpunit -c tests/phpunit.xml",
|
||||
"test:integration": "phpunit -c tests/phpunit.integration.xml && cd tests/integration && ./run.sh"
|
||||
},
|
||||
"autoload-dev": {
|
||||
"psr-4": {
|
||||
"OCP\\": "vendor/nextcloud/ocp/OCP"
|
||||
}
|
||||
}
|
||||
"name": "nextcloud/deck",
|
||||
"type": "project",
|
||||
"license": "AGPLv3",
|
||||
"authors": [
|
||||
{
|
||||
"name": "Julius Härtl",
|
||||
"email": "jus@bitgrid.net"
|
||||
}
|
||||
],
|
||||
"require": {
|
||||
"cogpowered/finediff": "0.3.*"
|
||||
},
|
||||
"require-dev": {
|
||||
"roave/security-advisories": "dev-master",
|
||||
"christophwurst/nextcloud": "^17",
|
||||
"jakub-onderka/php-parallel-lint": "^1.0.0",
|
||||
"phpunit/phpunit": "^8"
|
||||
}
|
||||
}
|
||||
|
||||
5404
composer.lock
generated
@@ -1,7 +1,10 @@
|
||||
.resource-type-deck img {
|
||||
opacity: 0.4 !important;
|
||||
.icon-deck {
|
||||
background-image: url('../img/deck-dark.svg');
|
||||
}
|
||||
|
||||
.resource-type-deck:hover img {
|
||||
opacity: 0.7 !important;
|
||||
.resource-type-deck img {
|
||||
opacity: 0.4 !important;
|
||||
}
|
||||
.resource-type-deck:hover img {
|
||||
opacity: 0.7 !important;
|
||||
}
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
.icon-deck {
|
||||
background-image: url(../img/deck-dark.svg);
|
||||
filter: var(--background-invert-if-dark);
|
||||
}
|
||||
|
||||
.icon-deck-white, .icon-deck.icon-white {
|
||||
background-image: url(../img/deck.svg);
|
||||
filter: var(--background-invert-if-dark);
|
||||
}
|
||||
@@ -1,7 +1,10 @@
|
||||
<?php
|
||||
/**
|
||||
* @copyright Copyright (c) 2018 Ryan Fletcher <ryan.fletcher@codepassion.ca>
|
||||
/*
|
||||
* @copyright Copyright (c) 2016 Julius Härtl <jus@bitgrid.net>
|
||||
*
|
||||
* @author Julius Härtl <jus@bitgrid.net>
|
||||
* @author Artem Anufrij <artem.anufrij@live.de>
|
||||
* @author Marin Treselj <marin@pixelipo.com>
|
||||
* @author Oskar Kurz <oskar.kurz@gmail.com>
|
||||
* @author Ryan Fletcher <ryan.fletcher@codepassion.ca>
|
||||
*
|
||||
* @license GNU AGPL version 3 or any later version
|
||||
@@ -20,7 +23,6 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
namespace OCA\Deck\Controller;
|
||||
|
||||
class AttachmentApiV11Controller extends AttachmentApiController {
|
||||
}
|
||||
@import 'icons';
|
||||
@import 'print';
|
||||
86
css/icons.scss
Normal file
@@ -0,0 +1,86 @@
|
||||
/**
|
||||
* Custom icons
|
||||
*/
|
||||
.icon-deck {
|
||||
background-image: url('../img/deck-dark.svg');
|
||||
}
|
||||
|
||||
.icon-help {
|
||||
background-image: url('../../../settings/img/help.svg');
|
||||
}
|
||||
|
||||
.icon-add-white {
|
||||
background-image: url('../img/add-white.svg');
|
||||
}
|
||||
|
||||
.icon-attach {
|
||||
background-image: url('../img/attach.svg');
|
||||
}
|
||||
|
||||
.icon-archive {
|
||||
background-image: url('../img/archive.svg');
|
||||
}
|
||||
|
||||
.icon-archive-white {
|
||||
background-image: url('../img/archive-white.svg');
|
||||
}
|
||||
|
||||
.icon-details {
|
||||
background-image: url('../img/details.svg');
|
||||
}
|
||||
|
||||
.icon-details-white {
|
||||
background-image: url('../img/details-white.svg');
|
||||
}
|
||||
|
||||
.icon-home {
|
||||
background-image: var(--icon-home-000, url('../../../core/img/places/home.svg'));
|
||||
}
|
||||
|
||||
.icon-description {
|
||||
background-image: var(--icon-text-000, url('../img/description.svg'));
|
||||
}
|
||||
|
||||
.icon-badge {
|
||||
background-image: url('../img/calendar-dark.svg');
|
||||
}
|
||||
|
||||
.icon-toggle-compact-collapsed {
|
||||
background-image: url('../img/toggle-view-expand.svg');
|
||||
}
|
||||
|
||||
.icon-toggle-compact-expanded {
|
||||
background-image: url('../img/toggle-view-collapse.svg');
|
||||
}
|
||||
|
||||
|
||||
@if mixin-exists('icon-black-white') {
|
||||
@include icon-black-white('deck', 'deck', 1);
|
||||
@include icon-black-white('archive', 'deck', 1);
|
||||
@include icon-black-white('circles', 'deck', 1);
|
||||
@include icon-black-white('clone', 'deck', 1);
|
||||
@include icon-black-white('attach', 'deck', 1);
|
||||
|
||||
.icon-toggle-compact-collapsed {
|
||||
@include icon-color('toggle-view-expand', 'deck', $color-black);
|
||||
}
|
||||
|
||||
.icon-toggle-compact-expanded {
|
||||
@include icon-color('toggle-view-collapse', 'deck', $color-black);
|
||||
}
|
||||
.icon-activity {
|
||||
@include icon-color('activity-dark', 'activity', $color-black);
|
||||
}
|
||||
}
|
||||
|
||||
.avatardiv.circles {
|
||||
background: var(--color-primary);
|
||||
}
|
||||
.icon-circles {
|
||||
opacity: 1;
|
||||
background-size: 20px;
|
||||
background-position: center center;
|
||||
}
|
||||
.icon-colorpicker {
|
||||
background-image: url('../img/color_picker.svg');
|
||||
}
|
||||
@@ -2,26 +2,21 @@
|
||||
/* hide stuff */
|
||||
#body-user {
|
||||
#header,
|
||||
.app-navigation,
|
||||
.app-sidebar,
|
||||
.board-header-controls,
|
||||
.board-actions,
|
||||
div#app-navigation,
|
||||
div.board-header-controls,
|
||||
#app-navigation-toggle,
|
||||
#app-navigation-toggle-custom,
|
||||
div#controls.ng-scope div.crumb:not(.title),
|
||||
div#controls.ng-scope div.crumb a.bullet,
|
||||
a.ng-binding + a,
|
||||
div.card.create,
|
||||
.stack__header .action-item,
|
||||
button.card-options {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
#content {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#app-content {
|
||||
margin: 0 !important;
|
||||
}
|
||||
@@ -64,6 +59,8 @@
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
span.due { }
|
||||
|
||||
div.card-assigned-users {
|
||||
margin-right:10px;
|
||||
}
|
||||
@@ -78,12 +75,7 @@
|
||||
@page {
|
||||
size: A4 landscape;
|
||||
margin: 2cm;
|
||||
}
|
||||
|
||||
.board {
|
||||
max-height: none !important;
|
||||
overflow: visible !important;
|
||||
}
|
||||
}
|
||||
|
||||
div#innerBoard {
|
||||
display:flex;
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
const { defineConfig } = require('cypress')
|
||||
|
||||
module.exports = defineConfig({
|
||||
projectId: '1s7wkc',
|
||||
viewportWidth: 1280,
|
||||
viewportHeight: 720,
|
||||
e2e: {
|
||||
// We've imported your old cypress plugins here.
|
||||
// You may want to clean this up later by importing these.
|
||||
setupNodeEvents(on, config) {
|
||||
return require('./cypress/plugins/index.js')(on, config)
|
||||
},
|
||||
baseUrl: 'http://nextcloud.local/index.php',
|
||||
experimentalSessionAndOrigin: true,
|
||||
specPattern: 'cypress/e2e/**/*.{js,jsx,ts,tsx}',
|
||||
},
|
||||
})
|
||||
@@ -1,41 +0,0 @@
|
||||
import { randHash } from '../utils'
|
||||
const randUser = randHash()
|
||||
|
||||
describe('Board', function() {
|
||||
const password = 'pass123'
|
||||
|
||||
before(function() {
|
||||
cy.nextcloudCreateUser(randUser, password)
|
||||
})
|
||||
|
||||
beforeEach(function() {
|
||||
cy.login(randUser, password)
|
||||
})
|
||||
|
||||
it('Can create a board', function() {
|
||||
const board = 'TestBoard'
|
||||
|
||||
cy.intercept({
|
||||
method: 'POST',
|
||||
url: '/index.php/apps/deck/boards',
|
||||
}).as('createBoardRequest')
|
||||
|
||||
// Click "Add board"
|
||||
cy.openLeftSidebar()
|
||||
cy.get('#app-navigation-vue .app-navigation__list .app-navigation-entry')
|
||||
.eq(3).find('a').first().click({ force: true })
|
||||
|
||||
// Type the board title
|
||||
cy.get('.board-create form input[type=text]')
|
||||
.type(board, { force: true })
|
||||
|
||||
// Submit
|
||||
cy.get('.board-create form input[type=submit]')
|
||||
.first().click({ force: true })
|
||||
|
||||
cy.wait('@createBoardRequest').its('response.statusCode').should('equal', 200)
|
||||
|
||||
cy.get('.app-navigation__list .app-navigation-entry__children .app-navigation-entry')
|
||||
.contains(board).should('be.visible')
|
||||
})
|
||||
})
|
||||
@@ -1,67 +0,0 @@
|
||||
import { randHash } from '../utils'
|
||||
const randUser = randHash()
|
||||
|
||||
const testBoardData = {
|
||||
title: 'MyBoardTest',
|
||||
color: '00ff00',
|
||||
stacks: [
|
||||
{
|
||||
title: 'TestList',
|
||||
cards: [
|
||||
{
|
||||
title: 'Hello world',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
describe('Card', function() {
|
||||
before(function() {
|
||||
cy.nextcloudCreateUser(randUser, randUser)
|
||||
cy.createExampleBoard({
|
||||
user: randUser,
|
||||
password: randUser,
|
||||
board: testBoardData,
|
||||
})
|
||||
})
|
||||
|
||||
beforeEach(function() {
|
||||
cy.login(randUser, randUser)
|
||||
})
|
||||
|
||||
it('Can show card details modal', function() {
|
||||
cy.openLeftSidebar()
|
||||
cy.getNavigationEntry(testBoardData.title)
|
||||
.first().click({ force: true })
|
||||
|
||||
cy.get('.board .stack').eq(0).within(() => {
|
||||
cy.get('.card:contains("Hello world")').should('be.visible').click()
|
||||
})
|
||||
|
||||
cy.get('.modal__card').should('be.visible')
|
||||
cy.get('.app-sidebar-header__maintitle').contains('Hello world')
|
||||
})
|
||||
|
||||
it('Can add a card', function() {
|
||||
const newCardTitle = 'Write some cypress tests'
|
||||
|
||||
cy.openLeftSidebar()
|
||||
cy.getNavigationEntry(testBoardData.title)
|
||||
.first().click({ force: true })
|
||||
|
||||
cy.get('.board .stack').eq(0).within(() => {
|
||||
cy.get('.card:contains("Hello world")').should('be.visible')
|
||||
|
||||
cy.get('.button-vue[aria-label*="Add card"]')
|
||||
.first().click()
|
||||
|
||||
cy.get('.stack__card-add form input#new-stack-input-main')
|
||||
.type(newCardTitle)
|
||||
cy.get('.stack__card-add form input[type=submit]')
|
||||
.first().click()
|
||||
cy.get(`.card:contains("${newCardTitle}")`).should('be.visible')
|
||||
})
|
||||
})
|
||||
|
||||
})
|
||||
@@ -1,31 +0,0 @@
|
||||
import { randHash } from '../utils'
|
||||
const randUser = randHash()
|
||||
|
||||
describe('Deck dashboard', function() {
|
||||
const password = 'pass123'
|
||||
|
||||
before(function() {
|
||||
cy.nextcloudCreateUser(randUser, password)
|
||||
})
|
||||
|
||||
beforeEach(function() {
|
||||
cy.login(randUser, password)
|
||||
})
|
||||
|
||||
it('Can show the right title on the dashboard', function() {
|
||||
cy.get('.board-title h2')
|
||||
.should('have.length', 1).first()
|
||||
.should('have.text', 'Upcoming cards')
|
||||
})
|
||||
|
||||
it('Can see the default "Personal Board" created for user by default', function() {
|
||||
const defaultBoard = 'Personal'
|
||||
|
||||
cy.openLeftSidebar()
|
||||
cy.get('.app-navigation-entry-wrapper[icon=icon-deck]')
|
||||
.find('ul.app-navigation-entry__children .app-navigation-entry:contains(' + defaultBoard + ')')
|
||||
.first()
|
||||
.contains(defaultBoard)
|
||||
.should('be.visible')
|
||||
})
|
||||
})
|
||||
@@ -1,30 +0,0 @@
|
||||
import { randHash } from '../utils'
|
||||
const randUser = randHash()
|
||||
|
||||
describe('Stack', function() {
|
||||
const board = 'TestBoard'
|
||||
const password = 'pass123'
|
||||
const stack = 'List 1'
|
||||
|
||||
before(function() {
|
||||
cy.nextcloudCreateUser(randUser, password)
|
||||
cy.deckCreateBoard({ user: randUser, password }, board)
|
||||
})
|
||||
|
||||
beforeEach(function() {
|
||||
cy.logout()
|
||||
cy.login(randUser, password)
|
||||
})
|
||||
|
||||
it('Can create a stack', function() {
|
||||
cy.openLeftSidebar()
|
||||
cy.getNavigationEntry(board)
|
||||
.click({ force: true })
|
||||
|
||||
cy.get('#stack-add button').first().click()
|
||||
cy.get('#stack-add form input#new-stack-input-main').type(stack)
|
||||
cy.get('#stack-add form input[type=submit]').first().click()
|
||||
|
||||
cy.get('.board .stack').eq(0).contains(stack).should('be.visible')
|
||||
})
|
||||
})
|
||||
@@ -1,5 +0,0 @@
|
||||
{
|
||||
"name": "Using fixtures to represent data",
|
||||
"email": "hello@cypress.io",
|
||||
"body": "Fixtures are a great way to mock data for responses to routes"
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
/// <reference types="cypress" />
|
||||
// ***********************************************************
|
||||
// This example plugins/index.js can be used to load plugins
|
||||
//
|
||||
// You can change the location of this file or turn off loading
|
||||
// the plugins file with the 'pluginsFile' configuration option.
|
||||
//
|
||||
// You can read more here:
|
||||
// https://on.cypress.io/plugins-guide
|
||||
// ***********************************************************
|
||||
|
||||
// This function is called when a project is opened or re-opened (e.g. due to
|
||||
// the project's config changing)
|
||||
|
||||
/**
|
||||
* @type {Cypress.PluginConfig}
|
||||
*/
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
module.exports = (on, config) => {
|
||||
// `on` is used to hook into various events Cypress emits
|
||||
// `config` is the resolved Cypress config
|
||||
}
|
||||
@@ -1,159 +0,0 @@
|
||||
/**
|
||||
* @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
|
||||
*
|
||||
* @author John Molakvoæ <skjnldsv@protonmail.com>
|
||||
*
|
||||
* @license GNU AGPL version 3 or any later version
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
const url = Cypress.config('baseUrl').replace(/\/index.php\/?$/g, '')
|
||||
Cypress.env('baseUrl', url)
|
||||
|
||||
Cypress.Commands.add('login', (user, password, route = '/apps/deck/') => {
|
||||
const session = `${user}-${Date.now()}`
|
||||
cy.session(session, function() {
|
||||
cy.visit(route)
|
||||
cy.get('input[name=user]').type(user)
|
||||
cy.get('input[name=password]').type(password)
|
||||
cy.get('form[name=login] [type=submit]').click()
|
||||
cy.url().should('include', route)
|
||||
})
|
||||
cy.visit(route)
|
||||
})
|
||||
|
||||
Cypress.Commands.add('logout', (route = '/') => {
|
||||
cy.session('_guest', function() {})
|
||||
})
|
||||
|
||||
Cypress.Commands.add('nextcloudCreateUser', (user, password) => {
|
||||
cy.clearCookies()
|
||||
cy.request({
|
||||
method: 'POST',
|
||||
url: `${Cypress.env('baseUrl')}/ocs/v1.php/cloud/users?format=json`,
|
||||
form: true,
|
||||
body: {
|
||||
userid: user,
|
||||
password,
|
||||
},
|
||||
auth: { user: 'admin', pass: 'admin' },
|
||||
headers: {
|
||||
'OCS-ApiRequest': 'true',
|
||||
'Content-Type': 'application/x-www-form-urlencoded',
|
||||
},
|
||||
}).then((response) => {
|
||||
cy.log(`Created user ${user}`, response.status)
|
||||
})
|
||||
})
|
||||
|
||||
Cypress.Commands.add('nextcloudUpdateUser', (user, password, key, value) => {
|
||||
cy.request({
|
||||
method: 'PUT',
|
||||
url: `${Cypress.env('baseUrl')}/ocs/v2.php/cloud/users/${user}`,
|
||||
form: true,
|
||||
body: { key, value },
|
||||
auth: { user, pass: password },
|
||||
headers: {
|
||||
'OCS-ApiRequest': 'true',
|
||||
'Content-Type': 'application/x-www-form-urlencoded',
|
||||
},
|
||||
}).then((response) => {
|
||||
cy.log(`Updated user ${user} ${key} to ${value}`, response.status)
|
||||
})
|
||||
})
|
||||
|
||||
Cypress.Commands.add('openLeftSidebar', () => {
|
||||
cy.get('.app-navigation button.app-navigation-toggle').click()
|
||||
})
|
||||
|
||||
Cypress.Commands.add('deckCreateBoard', ({ user, password }, title) => {
|
||||
cy.login(user, password)
|
||||
|
||||
cy.get('.app-navigation button.app-navigation-toggle').click()
|
||||
cy.get('#app-navigation-vue .app-navigation__list .app-navigation-entry')
|
||||
.eq(3)
|
||||
.find('a')
|
||||
.first()
|
||||
.click({ force: true })
|
||||
|
||||
cy.get('.board-create form input[type=text]').type(title, { force: true })
|
||||
|
||||
cy.get('.board-create form input[type=submit]')
|
||||
.first()
|
||||
.click({ force: true })
|
||||
})
|
||||
|
||||
Cypress.Commands.add('deckCreateList', ({ user, password }, title) => {
|
||||
cy.login(user, password)
|
||||
|
||||
cy.get('.app-navigation button.app-navigation-toggle').click()
|
||||
cy.get('#app-navigation-vue .app-navigation__list .app-navigation-entry')
|
||||
.eq(3)
|
||||
.find('a.app-navigation-entry-link')
|
||||
.first()
|
||||
.click({ force: true })
|
||||
|
||||
cy.get('#stack-add button').first().click()
|
||||
cy.get('#stack-add form input#new-stack-input-main').type(title)
|
||||
cy.get('#stack-add form input[type=submit]').first().click()
|
||||
})
|
||||
|
||||
Cypress.Commands.add('createExampleBoard', ({ user, password, board }) => {
|
||||
cy.request({
|
||||
method: 'POST',
|
||||
url: `${Cypress.env('baseUrl')}/index.php/apps/deck/api/v1.0/boards`,
|
||||
auth: {
|
||||
user,
|
||||
password,
|
||||
},
|
||||
body: { title: board.title, color: board.color ?? 'ff0000' },
|
||||
}).then((boardResponse) => {
|
||||
expect(boardResponse.status).to.eq(200)
|
||||
const boardData = boardResponse.body
|
||||
for (const stackIndex in board.stacks) {
|
||||
const stack = board.stacks[stackIndex]
|
||||
cy.request({
|
||||
method: 'POST',
|
||||
url: `${Cypress.env('baseUrl')}/index.php/apps/deck/api/v1.0/boards/${boardData.id}/stacks`,
|
||||
auth: {
|
||||
user,
|
||||
password,
|
||||
},
|
||||
body: { title: stack.title, order: 0 },
|
||||
}).then((stackResponse) => {
|
||||
const stackData = stackResponse.body
|
||||
for (const cardIndex in stack.cards) {
|
||||
const card = stack.cards[cardIndex]
|
||||
cy.request({
|
||||
method: 'POST',
|
||||
url: `${Cypress.env('baseUrl')}/index.php/apps/deck/api/v1.0/boards/${boardData.id}/stacks/${stackData.id}/cards`,
|
||||
auth: {
|
||||
user,
|
||||
password,
|
||||
},
|
||||
body: { title: card.title },
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
Cypress.Commands.add('getNavigationEntry', (boardTitle) => {
|
||||
return cy.get('.app-navigation-entry-wrapper[icon=icon-deck]')
|
||||
.find('ul.app-navigation-entry__children .app-navigation-entry:contains(' + boardTitle + ')')
|
||||
.find('a.app-navigation-entry-link')
|
||||
})
|
||||
@@ -1,20 +0,0 @@
|
||||
// ***********************************************************
|
||||
// This example support/index.js is processed and
|
||||
// loaded automatically before your test files.
|
||||
//
|
||||
// This is a great place to put global configuration and
|
||||
// behavior that modifies Cypress.
|
||||
//
|
||||
// You can change the location of this file or turn off
|
||||
// automatically serving support files with the
|
||||
// 'supportFile' configuration option.
|
||||
//
|
||||
// You can read more here:
|
||||
// https://on.cypress.io/configuration
|
||||
// ***********************************************************
|
||||
|
||||
// Import commands.js using ES2015 syntax:
|
||||
import './commands'
|
||||
|
||||
// Alternatively you can use CommonJS syntax:
|
||||
// require('./commands')
|
||||
@@ -1 +0,0 @@
|
||||
export const randHash = () => Math.random().toString(36).replace(/[^a-z]+/g, '').slice(0, 10)
|
||||
@@ -1,34 +1,5 @@
|
||||
# Nextcloud APIs
|
||||
|
||||
## Capabilities
|
||||
|
||||
The [Nextcloud Capabilities API](https://docs.nextcloud.com/server/latest/developer_manual/client_apis/OCS/ocs-api-overview.html#capabilities-api) provides the following information for the Deck app:
|
||||
|
||||
- `version` Current version of the Deck app running
|
||||
- `canCreateBoards` Ability of the current user to create new boards for themselves
|
||||
|
||||
```
|
||||
{
|
||||
"ocs": {
|
||||
"meta": {
|
||||
"status": "ok",
|
||||
"statuscode": 200,
|
||||
"message": "OK"
|
||||
},
|
||||
"data": {
|
||||
"capabilities": {
|
||||
"deck": {
|
||||
"version": "0.8.0",
|
||||
"canCreateBoards": true
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
|
||||
## Available sharees
|
||||
|
||||
When sharing a board to a user, group or circle, the possible sharees can be obtained though the files_sharing API.
|
||||
|
||||
495
docs/API.md
@@ -1,11 +1,10 @@
|
||||
|
||||
The REST API provides access for authenticated users to their data inside the Deck app. To get a better understanding of Decks data models and their relations, please have a look at the [data structure](structure.md) documentation.
|
||||
The REST API provides access for authenticated users to their data inside the Deck app. To get a better understand of Decks data models and their relations, please have a look at the [data structure](structure.md) documentation.
|
||||
|
||||
# Prequisited
|
||||
|
||||
- All requests require a `OCS-APIRequest` HTTP header to be set to `true` and a `Content-Type` of `application/json`.
|
||||
- The API is located at https://nextcloud.local/index.php/apps/deck/api/v1.0
|
||||
- All request parameters are required, unless otherwise specified
|
||||
|
||||
## Naming
|
||||
|
||||
@@ -21,7 +20,7 @@ The REST API provides access for authenticated users to their data inside the De
|
||||
|
||||
### 400 Bad request
|
||||
|
||||
In case the request is invalid, e.g. because a parameter is missing or an invalid value has been transmitted, a 400 error will be returned:
|
||||
In case the request is invalid, e.g. because a parameter is missing, a 400 error will be returned:
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -41,12 +40,6 @@ In any case a user doesn't have access to a requested entity, a 403 error will b
|
||||
}
|
||||
```
|
||||
|
||||
## Formats
|
||||
|
||||
### Date
|
||||
|
||||
Datetime values in request data need to be provided in ISO-8601. Example: 2020-01-20T09:52:43+00:00
|
||||
|
||||
## Headers
|
||||
|
||||
### If-Modified-Since
|
||||
@@ -58,7 +51,7 @@ The supported date formats are:
|
||||
* (obsolete) RFC 850: `Sunday, 03-Aug-19 10:34:12 GMT`
|
||||
* (obsolete) ANSI C asctime(): `Sun Aug 3 10:34:12 2019`
|
||||
|
||||
It is highly recommended to only use the IMF-fixdate format. Note that according to [RFC2616](https://tools.ietf.org/html/rfc2616#section-3.3) all HTTP date/time stamps MUST be represented in Greenwich Mean Time (GMT), without exception.
|
||||
It is highly recommended to only use the IMF-fixdate format.
|
||||
|
||||
Example curl request:
|
||||
|
||||
@@ -69,55 +62,6 @@ curl -u admin:admin -X GET \
|
||||
-H "If-Modified-Since: Mon, 05 Nov 2018 09:28:00 GMT"
|
||||
```
|
||||
|
||||
### ETag
|
||||
|
||||
An ETag header is returned in order to determine if further child elements have been updated for the following endpoints:
|
||||
|
||||
- Fetch all user board `GET /api/v1.0/boards`
|
||||
- Fetch a single board `GET /api/v1.0/boards/{boardId}`
|
||||
- Fetch all stacks of a board `GET /api/v1.0/boards/{boardId}/stacks`
|
||||
- Fetch a single stacks of a board `GET /api/v1.0/boards/{boardId}/stacks/{stackId}`
|
||||
- Fetch a single card of a board `GET /api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}`
|
||||
- Fetch attachments of a card `GET /api/v1.0/boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments`
|
||||
|
||||
If a `If-None-Match` header is provided and the requested element has not changed a `304` Not Modified response will be returned.
|
||||
|
||||
Changes of child elements will propagate to their parents and also cause an update of the ETag which will be useful for determining if a sync is necessary on any client integration side. As an example, if a label is added to a card, the ETag of all related entities (the card, stack and board) will change.
|
||||
|
||||
If available the ETag will also be part of JSON response objects as shown below for a card:
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 81,
|
||||
"ETag": "bdb10fa2d2aeda092a2b6b469454dc90",
|
||||
"title": "Test card"
|
||||
}
|
||||
```
|
||||
|
||||
# Changelog
|
||||
|
||||
## API version 1.0
|
||||
|
||||
- Deck >=1.0.0: The maximum length of the card title has been extended from 100 to 255 characters
|
||||
- Deck >=1.0.0: The API will now return a 400 Bad request response if the length limitation of a board, stack or card title is exceeded
|
||||
|
||||
## API version 1.1
|
||||
|
||||
This API version has become available with **Deck 1.3.0**.
|
||||
|
||||
- The maximum length of the card title has been extended from 100 to 255 characters
|
||||
- The API will now return a 400 Bad request response if the length limitation of a board, stack or card title is exceeded
|
||||
- The attachments API endpoints will return other attachment types than deck_file
|
||||
- Prior to Deck version v1.3.0 (API v1.0), attachments were stored within deck. For this type of attachments `deck_file` was used as the default type of attachments
|
||||
- Starting with Deck version 1.3.0 (API v1.1) files are stored within the users regular Nextcloud files and the type `file` has been introduced for that
|
||||
|
||||
## API version 1.2 (unreleased)
|
||||
|
||||
- Endpoints for the new import functionality have been added:
|
||||
- [GET /boards/import/getSystems - Import a board](#get-boardsimportgetsystems-import-a-board)
|
||||
- [GET /boards/import/config/system/{schema} - Import a board](#get-boardsimportconfigsystemschema-import-a-board)
|
||||
- [POST /boards/import - Import a board](#post-boardsimport-import-a-board)
|
||||
|
||||
# Endpoints
|
||||
|
||||
## Boards
|
||||
@@ -132,7 +76,7 @@ The board list endpoint supports setting an `If-Modified-Since` header to limit
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | ---------------------------- |
|
||||
| details | Bool | **Optional** Enhance boards with details about labels, stacks and users |
|
||||
| options | Bool | **Optional** Enhance boards with details about labels, stacks and users |
|
||||
|
||||
#### Response
|
||||
|
||||
@@ -162,12 +106,7 @@ Returns an array of board items
|
||||
"users": [],
|
||||
"shared": 0,
|
||||
"deletedAt": 0,
|
||||
"id": 10,
|
||||
"lastModified": 1586269585,
|
||||
"settings": {
|
||||
"notify-due": "off",
|
||||
"calendar": true
|
||||
}
|
||||
"id": 10
|
||||
}
|
||||
]
|
||||
```
|
||||
@@ -178,7 +117,7 @@ Returns an array of board items
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------ | ---------------------------------------------------- |
|
||||
| title | String | The title of the new board, maximum length is limited to 100 characters |
|
||||
| title | String | The title of the new board |
|
||||
| color | String | The hexadecimal color of the new board (e.g. FF0000) |
|
||||
|
||||
```json
|
||||
@@ -241,15 +180,10 @@ Returns an array of board items
|
||||
},
|
||||
"users": [],
|
||||
"deletedAt": 0,
|
||||
"id": 10,
|
||||
"lastModified": 1586269585
|
||||
"id": 10
|
||||
}
|
||||
```
|
||||
|
||||
##### 403 Forbidden
|
||||
|
||||
A 403 response might be returned if the users ability to create new boards has been disabled by the administrator. For checking this before, see the `canCreateBoards` value in the [Nextcloud capabilties](./API-Nextcloud.md).
|
||||
|
||||
### GET /boards/{boardId} - Get board details
|
||||
|
||||
#### Request parameters
|
||||
@@ -327,9 +261,9 @@ A 403 response might be returned if the users ability to create new boards has b
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------ | ---------------------------------------------------- |
|
||||
| title | String | The title of the board, maximum length is limited to 100 characters |
|
||||
| color | String | The hexadecimal color of the board (e.g. FF0000) |
|
||||
| archived | Bool | Whether or not this board should be archived. |
|
||||
| title | String | The title of the new board |
|
||||
| color | String | The hexadecimal color of the new board (e.g. FF0000) |
|
||||
| archived | Bool | The hexadecimal color of the new board (e.g. FF0000) |
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -503,7 +437,7 @@ The board list endpoint supports setting an `If-Modified-Since` header to limit
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | ---------------------------------------------------- |
|
||||
| title | String | The title of the new stack, maximum length is limited to 100 characters |
|
||||
| title | String | The title of the new stack |
|
||||
| order | Integer | Order for sorting the stacks |
|
||||
|
||||
#### Request parameters
|
||||
@@ -529,7 +463,7 @@ The board list endpoint supports setting an `If-Modified-Since` header to limit
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | ---------------------------------------------------- |
|
||||
| title | String | The title of the stack, maximum length is limited to 100 characters |
|
||||
| title | String | The title of the new stack |
|
||||
| order | Integer | Order for sorting the stacks |
|
||||
|
||||
#### Response
|
||||
@@ -578,11 +512,9 @@ The board list endpoint supports setting an `If-Modified-Since` header to limit
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | ---------------------------------------------------- |
|
||||
| title | String | The title of the card, maximum length is limited to 255 characters |
|
||||
| title | String | The title of the new stack |
|
||||
| type | String | Type of the card (for later use) use 'plain' for now |
|
||||
| order | Integer | Order for sorting the stacks |
|
||||
| description | String | _(optional)_ The markdown description of the card |
|
||||
| duedate | timestamp | _(optional)_ The duedate of the card or null |
|
||||
|
||||
#### Response
|
||||
|
||||
@@ -601,7 +533,7 @@ The board list endpoint supports setting an `If-Modified-Since` header to limit
|
||||
"owner":"admin",
|
||||
"order":999,
|
||||
"archived":false,
|
||||
"duedate": "2019-12-24T19:29:30+00:00",
|
||||
"duedate":null,
|
||||
"deletedAt":0,
|
||||
"commentsUnread":0,
|
||||
"id":10,
|
||||
@@ -625,11 +557,11 @@ The board list endpoint supports setting an `If-Modified-Since` header to limit
|
||||
|
||||
| Parameter | Type | Description |
|
||||
|-------------|-----------|------------------------------------------------------|
|
||||
| title | String | The title of the card, maximum length is limited to 255 characters |
|
||||
| title | String | The card title |
|
||||
| description | String | The markdown description of the card |
|
||||
| type | String | Type of the card (for later use) use 'plain' for now |
|
||||
| order | Integer | Order for sorting the stacks |
|
||||
| duedate | timestamp | The ISO-8601 formatted duedate of the card or null |
|
||||
| duedate | timestamp | The duedate of the card or null |
|
||||
|
||||
|
||||
```
|
||||
@@ -638,7 +570,7 @@ The board list endpoint supports setting an `If-Modified-Since` header to limit
|
||||
"description": "A card description",
|
||||
"type": "plain",
|
||||
"order": 999,
|
||||
"duedate": "2019-12-24T19:29:30+00:00",
|
||||
"duedate": null,
|
||||
}
|
||||
```
|
||||
|
||||
@@ -746,7 +678,7 @@ The request can fail with a bad request response for the following reasons:
|
||||
- The user is not part of the board
|
||||
|
||||
|
||||
### PUT /boards/{boardId}/stacks/{stackId}/cards/{cardId}/unassignUser - Unassign a user from a card
|
||||
### PUT /boards/{boardId}/stacks/{stackId}/cards/{cardId}/unassignUser - Assign a user to a card
|
||||
|
||||
#### Request parameters
|
||||
|
||||
@@ -760,7 +692,7 @@ The request can fail with a bad request response for the following reasons:
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | --------------------------------------- |
|
||||
| userId | String | The user id to unassign from the card |
|
||||
| userId | String | The user id to assign to the card |
|
||||
|
||||
#### Response
|
||||
|
||||
@@ -944,8 +876,7 @@ The request can fail with a bad request response for the following reasons:
|
||||
| type | String | The type of the attachement |
|
||||
| file | Binary | File data to add as an attachment |
|
||||
|
||||
- Prior to Deck version v1.3.0 (API v1.0), attachments were stored within deck. For this type of attachments `deck_file` was used as the default type of attachments
|
||||
- Starting with Deck version 1.3.0 (API v1.1) files are stored within the users regular Nextcloud files and the type `file` has been introduced for that
|
||||
For now only `deck_file` is supported as an attachment type.
|
||||
|
||||
#### Response
|
||||
|
||||
@@ -977,7 +908,6 @@ For now only `deck_file` is supported as an attachment type.
|
||||
|
||||
### DELETE /boards/{boardId}/stacks/{stackId}/cards/{cardId}/attachments/{attachmentId} - Delete an attachment
|
||||
|
||||
|
||||
#### Request parameters
|
||||
|
||||
| Parameter | Type | Description |
|
||||
@@ -1006,388 +936,3 @@ For now only `deck_file` is supported as an attachment type.
|
||||
|
||||
##### 200 Success
|
||||
|
||||
### GET /boards/import/getSystems - Import a board
|
||||
|
||||
#### Request parameters
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| ------------ | ------- | --------------------------------------------- |
|
||||
| system | Integer | The system name. Example: trello |
|
||||
|
||||
#### Response
|
||||
|
||||
Make a request to see the json schema of system
|
||||
|
||||
```json
|
||||
{
|
||||
}
|
||||
```
|
||||
|
||||
### GET /boards/import/config/system/{schema} - Import a board
|
||||
|
||||
#### Request parameters
|
||||
|
||||
#### Response
|
||||
|
||||
```json
|
||||
[
|
||||
"trello"
|
||||
]
|
||||
```
|
||||
|
||||
### POST /boards/import - Import a board
|
||||
|
||||
#### Request parameters
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| ------------ | ------- | --------------------------------------------- |
|
||||
| system | string | The allowed name of system to import from |
|
||||
| config | Object | The config object (JSON) |
|
||||
| data | Object | The data object to import (JSON) |
|
||||
|
||||
#### Response
|
||||
|
||||
##### 200 Success
|
||||
|
||||
# OCS API
|
||||
|
||||
The following endpoints are available through the Nextcloud OCS endpoint, which is available at `/ocs/v2.php/apps/deck/api/v1.0/`.
|
||||
This has the benefit that both the web UI as well as external integrations can use the same API.
|
||||
|
||||
## Config
|
||||
|
||||
Deck stores user and app configuration values globally and per board. The GET endpoint allows to fetch the current global configuration while board settings will be exposed through the board element on the regular API endpoints.
|
||||
|
||||
### GET /api/v1.0/config - Fetch app configuration values
|
||||
|
||||
#### Response
|
||||
|
||||
| Config key | Description |
|
||||
| --- | --- |
|
||||
| calendar | Determines if the calendar/tasks integration through the CalDAV backend is enabled for the user (boolean) |
|
||||
| cardDetailsInModal | Determines if the bigger view is used (boolean) |
|
||||
| groupLimit | Determines if creating new boards is limited to certain groups of the instance. The resulting output is an array of group objects with the id and the displayname (Admin only)|
|
||||
|
||||
```
|
||||
{
|
||||
"ocs": {
|
||||
"meta": {
|
||||
"status": "ok",
|
||||
"statuscode": 200,
|
||||
"message": "OK"
|
||||
},
|
||||
"data": {
|
||||
"calendar": true,
|
||||
"cardDetailsInModal": true,
|
||||
"groupLimit": [
|
||||
{
|
||||
"id": "admin",
|
||||
"displayname": "admin"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
### POST /api/v1.0/config/{id}/{key} - Set a config value
|
||||
|
||||
|
||||
#### Request parameters
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | --------------------------------------- |
|
||||
| id | Integer | The id of the board |
|
||||
| key | String | The config key to set, prefixed with `board:{boardId}:` for board specific settings |
|
||||
| value | String | The value that should be stored for the config key |
|
||||
|
||||
##### Board configuration
|
||||
|
||||
| Key | Value |
|
||||
| --- | ----- |
|
||||
| notify-due | `off`, `assigned` or `all` |
|
||||
| calendar | Boolean |
|
||||
| cardDetailsInModal | Boolean |
|
||||
|
||||
#### Example request
|
||||
|
||||
```
|
||||
curl -X POST 'https://admin:admin@nextcloud.local/ocs/v2.php/apps/deck/api/v1.0/config/calendar' -H 'Accept: application/json' -H "Content-Type: application/json" -H 'OCS-APIRequest: true' --data-raw '{"value":false}'
|
||||
|
||||
{
|
||||
"ocs": {
|
||||
"meta": {
|
||||
"status": "ok",
|
||||
"statuscode": 200,
|
||||
"message": "OK"
|
||||
},
|
||||
"data": false
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
## Comments
|
||||
|
||||
### GET /cards/{cardId}/comments - List comments
|
||||
|
||||
#### Request parameters
|
||||
|
||||
string $cardId, int $limit = 20, int $offset = 0
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | --------------------------------------- |
|
||||
| cardId | Integer | The id of the card |
|
||||
| limit | Integer | The maximum number of comments that should be returned, defaults to 20 |
|
||||
| offset | Integer | The start offset used for pagination, defaults to 0 |
|
||||
|
||||
```
|
||||
curl 'https://admin:admin@nextcloud/ocs/v2.php/apps/deck/api/v1.0/cards/12/comments' \
|
||||
-H 'Accept: application/json' -H 'OCS-APIRequest: true'
|
||||
```
|
||||
|
||||
#### Response
|
||||
|
||||
A list of comments will be provided under the `ocs.data` key. If no or no more comments are available the list will be empty.
|
||||
|
||||
##### 200 Success
|
||||
|
||||
```
|
||||
{
|
||||
"ocs": {
|
||||
"meta": {
|
||||
"status": "ok",
|
||||
"statuscode": 200,
|
||||
"message": "OK"
|
||||
},
|
||||
"data": [
|
||||
{
|
||||
"id": 175,
|
||||
"objectId": 12,
|
||||
"message": "This is a comment with a mention to @alice",
|
||||
"actorId": "admin",
|
||||
"actorType": "users",
|
||||
"actorDisplayName": "Administrator",
|
||||
"creationDateTime": "2020-03-10T10:23:07+00:00",
|
||||
"mentions": [
|
||||
{
|
||||
"mentionId": "alice",
|
||||
"mentionType": "user",
|
||||
"mentionDisplayName": "alice"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
In case a comment is marked as a reply to another comment object, the parent comment will be added as `replyTo` entry to the response. Only the next parent node is added, nested replies are not exposed directly.
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"id": 175,
|
||||
"objectId": 12,
|
||||
"message": "This is a comment with a mention to @alice",
|
||||
"actorId": "admin",
|
||||
"actorType": "users",
|
||||
"actorDisplayName": "Administrator",
|
||||
"creationDateTime": "2020-03-10T10:23:07+00:00",
|
||||
"mentions": [
|
||||
{
|
||||
"mentionId": "alice",
|
||||
"mentionType": "user",
|
||||
"mentionDisplayName": "alice"
|
||||
}
|
||||
],
|
||||
"replyTo": {
|
||||
"id": 175,
|
||||
"objectId": 12,
|
||||
"message": "This is a comment with a mention to @alice",
|
||||
"actorId": "admin",
|
||||
"actorType": "users",
|
||||
"actorDisplayName": "Administrator",
|
||||
"creationDateTime": "2020-03-10T10:23:07+00:00",
|
||||
"mentions": [
|
||||
{
|
||||
"mentionId": "alice",
|
||||
"mentionType": "user",
|
||||
"mentionDisplayName": "alice"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
|
||||
### POST /cards/{cardId}/comments - Create a new comment
|
||||
|
||||
#### Request parameters
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | --------------------------------------- |
|
||||
| cardId | Integer | The id of the card |
|
||||
| message | String | The message of the comment, maximum length is limited to 1000 characters |
|
||||
| parentId | Integer | _(optional)_ The start offset used for pagination, defaults to null |
|
||||
|
||||
Mentions will be parsed by the server. The server will return a list of mentions in the response to this request as shown below.
|
||||
|
||||
```
|
||||
curl -X POST 'https://admin:admin@nextcloud/ocs/v2.php/apps/deck/api/v1.0/cards/12/comments' \
|
||||
-H 'Accept: application/json' -H 'OCS-APIRequest: true'
|
||||
-H 'Content-Type: application/json;charset=utf-8'
|
||||
--data '{"message":"My message to @bob","parentId":null}'
|
||||
```
|
||||
|
||||
#### Response
|
||||
|
||||
A list of comments will be provided under the `ocs.data` key. If no or no more comments are available the list will be empty.
|
||||
|
||||
##### 200 Success
|
||||
|
||||
```
|
||||
{
|
||||
"ocs": {
|
||||
"meta": {
|
||||
"status": "ok",
|
||||
"statuscode": 200,
|
||||
"message": "OK"
|
||||
},
|
||||
"data": {
|
||||
"id": "177",
|
||||
"objectId": "13",
|
||||
"message": "My message to @bob",
|
||||
"actorId": "admin",
|
||||
"actorType": "users",
|
||||
"actorDisplayName": "Administrator",
|
||||
"creationDateTime": "2020-03-10T10:30:17+00:00",
|
||||
"mentions": [
|
||||
{
|
||||
"mentionId": "bob",
|
||||
"mentionType": "user",
|
||||
"mentionDisplayName": "bob"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
##### 400 Bad request
|
||||
|
||||
A bad request response is returned if invalid input values are provided. The response message will contain details about which part was not valid.
|
||||
|
||||
##### 404 Not found
|
||||
|
||||
A not found response might be returned if:
|
||||
- The card for the given cardId could not be found
|
||||
- The parent comment could not be found
|
||||
|
||||
|
||||
### PUT /cards/{cardId}/comments/{commentId} - Update a comment
|
||||
|
||||
#### Request parameters
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | --------------------------------------- |
|
||||
| cardId | Integer | The id of the card |
|
||||
| commentId | Integer | The id of the comment |
|
||||
| message | String | The message of the comment, maximum length is limited to 1000 characters |
|
||||
|
||||
Mentions will be parsed by the server. The server will return a list of mentions in the response to this request as shown below.
|
||||
|
||||
Updating comments is limited to the current user being the same as the comment author specified in the `actorId` of the comment.
|
||||
|
||||
```
|
||||
curl -X POST 'https://admin:admin@nextcloud/ocs/v2.php/apps/deck/api/v1.0/cards/12/comments' \
|
||||
-H 'Accept: application/json' -H 'OCS-APIRequest: true'
|
||||
-H 'Content-Type: application/json;charset=utf-8'
|
||||
--data '{"message":"My message"}'
|
||||
```
|
||||
|
||||
#### Response
|
||||
|
||||
A list of comments will be provided under the `ocs.data` key. If no or no more comments are available the list will be empty.
|
||||
|
||||
##### 200 Success
|
||||
|
||||
```
|
||||
{
|
||||
"ocs": {
|
||||
"meta": {
|
||||
"status": "ok",
|
||||
"statuscode": 200,
|
||||
"message": "OK"
|
||||
},
|
||||
"data": {
|
||||
"id": "177",
|
||||
"objectId": "13",
|
||||
"message": "My message",
|
||||
"actorId": "admin",
|
||||
"actorType": "users",
|
||||
"actorDisplayName": "Administrator",
|
||||
"creationDateTime": "2020-03-10T10:30:17+00:00",
|
||||
"mentions": []
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
##### 400 Bad request
|
||||
|
||||
A bad request response is returned if invalid input values are provided. The response message will contain details about which part was not valid.
|
||||
|
||||
##### 404 Not found
|
||||
|
||||
A not found response might be returned if:
|
||||
- The card for the given cardId could not be found
|
||||
- The comment could not be found
|
||||
|
||||
### DELETE /cards/{cardId}/comments/{commentId} - Delete a comment
|
||||
|
||||
#### Request parameters
|
||||
|
||||
| Parameter | Type | Description |
|
||||
| --------- | ------- | --------------------------------------- |
|
||||
| cardId | Integer | The id of the card |
|
||||
| commentId | Integer | The id of the comment |
|
||||
|
||||
Deleting comments is limited to the current user being the same as the comment author specified in the `actorId` of the comment.
|
||||
|
||||
```
|
||||
curl -X DELETE 'https://admin:admin@nextcloud/ocs/v2.php/apps/deck/api/v1.0/cards/12/comments' \
|
||||
-H 'Accept: application/json' -H 'OCS-APIRequest: true'
|
||||
-H 'Content-Type: application/json;charset=utf-8'
|
||||
```
|
||||
|
||||
#### Response
|
||||
|
||||
A list of comments will be provided under the `ocs.data` key. If no or no more comments are available the list will be empty.
|
||||
|
||||
##### 200 Success
|
||||
|
||||
```
|
||||
{
|
||||
"ocs": {
|
||||
"meta": {
|
||||
"status": "ok",
|
||||
"statuscode": 200,
|
||||
"message": "OK"
|
||||
},
|
||||
"data": []
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
##### 400 Bad request
|
||||
|
||||
A bad request response is returned if invalid input values are provided. The response message will contain details about which part was not valid.
|
||||
|
||||
##### 404 Not found
|
||||
|
||||
A not found response might be returned if:
|
||||
- The card for the given cardId could not be found
|
||||
- The comment could not be found
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
## What is Markdown
|
||||
|
||||
The [wikipedia markdown entry](https://en.wikipedia.org/wiki/Markdown) introduced markdown as :
|
||||
The [wikipedia markdown entry](https://en.wikipedia.org/wiki/Markdown) introduced markdown as :
|
||||
|
||||
> Markdown is a lightweight markup language with plain text formatting syntax. It is designed so that it can be converted to HTML and many other formats using a tool by the same name. Markdown is often used to format readme files, for writing messages in online discussion forums, and to create rich text using a plain text editor. As the initial description of Markdown contained ambiguities and unanswered questions, many implementations and extensions of Markdown appeared over the years to answer these issues.
|
||||
|
||||
@@ -14,18 +14,14 @@ That same link offers also a comprehensive list of what is supported, and what i
|
||||
|
||||
[CommonMark Markdown Reference](http://commonmark.org/help/)
|
||||
|
||||
## Note about checklists
|
||||
|
||||
It is possible to create checklists in Deck by writing it in Markdown, using the following syntax:
|
||||
```md
|
||||
- [ ] This is a not checked item
|
||||
- [x] This is a checked item
|
||||
```
|
||||
Then, the items can be checked and unchecked by clicking on the rendered checkbox.
|
||||
Also, a summary of the completed items will be visible at the bottom of the card element.
|
||||
|
||||
## Known Issues
|
||||
|
||||
As per [issue #127](https://github.com/nextcloud/deck/issues/127) Due to a known limitation of the current script to support markdown, Links that contain the `")"` character will not display well, or will break.
|
||||
As per [issue #127](https://github.com/nextcloud/deck/issues/127) Due to a known limitation of the current script to support markdown, Links that contain the `")"` character will not display well, or will break.
|
||||
The recommended solution is to use `"<"` and `">"` to wrap those links. It should assure their integrity.
|
||||
If you come by another case of broken link, or broken display of links, please report it by opening a new issue.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
## Introduction
|
||||
### What about Deck ?
|
||||
You may know Kanban website like Trello? Deck is about the same thing but secured and respectful of your privacy!
|
||||
You may know Kanban website like Trello ? Deck is about the same thing but secured and respectful of your privacy !
|
||||
Integrated in Nextcloud, you can easily manage your projects while having your data secured.
|
||||
|
||||
### Use cases
|
||||
@@ -14,9 +14,6 @@ Overall, Deck is easy to use. You can create boards, add users, share the Deck,
|
||||
3. [Handle cards options](#3-handle-cards-options)
|
||||
4. [Archive old tasks](#4-archive-old-tasks)
|
||||
5. [Manage your board](#5-manage-your-board)
|
||||
6. [Import boards](#6-import-boards)
|
||||
7. [Search](#7-search)
|
||||
8. [New owner for the deck entities](#8-new-owner-for-the-deck-entities)
|
||||
|
||||
### 1. Create my first board
|
||||
In this example, we're going to create a board and share it with an other nextcloud user.
|
||||
@@ -39,7 +36,6 @@ And all the magic of this software consists on moving your cards from a stack to
|
||||
|
||||
### 3. Handle cards options
|
||||
Once you have created your cards, you can modify them or add options by clicking on them. So, what are the options? Well, there are several of them:
|
||||
|
||||
- Tag Management
|
||||
- Assign a card to a user (s·he will receive a notification)
|
||||
- Render date, or deadline
|
||||
@@ -61,7 +57,6 @@ Once finished or obsolete, a task could be archived. The tasks is not deleted, i
|
||||
### 5. Manage your board
|
||||
You can manage the settings of your Deck once you are inside it, by clicking on the small wheel at the top right.
|
||||
Once in this menu, you have access to several things:
|
||||
|
||||
- Sharing
|
||||
- Tags
|
||||
- Deleted objects
|
||||
@@ -72,109 +67,3 @@ The **sharing tab** allows you to add users or even groups to your boards.
|
||||
**Deleted objects** allows you to return previously deleted stacks or cards.
|
||||
The **Timeline** allows you to see everything that happened in your boards. Everything!
|
||||
|
||||
### 6. Import boards
|
||||
|
||||
Importing can be done using the API or the `occ` `deck:import` command.
|
||||
|
||||
Comments with more than 1000 characters are placed as attached files to the card.
|
||||
|
||||
It is possible to import from the following sources:
|
||||
|
||||
#### Trello JSON
|
||||
|
||||
Steps:
|
||||
* Create the data file
|
||||
* Access Trello
|
||||
* go to the board you want to export
|
||||
* Follow the steps in [Trello documentation](https://help.trello.com/article/747-exporting-data-from-trello-1) and export as JSON
|
||||
* Create the configuration file
|
||||
* Execute the import informing the import file path, data file and source as `Trello JSON`
|
||||
|
||||
Create the configuration file respecting the [JSON Schema](https://github.com/nextcloud/deck/blob/master/lib/Service/Importer/fixtures/config-trelloJson-schema.json) for import `Trello JSON`
|
||||
|
||||
Example configuration file:
|
||||
```json
|
||||
{
|
||||
"owner": "admin",
|
||||
"color": "0800fd",
|
||||
"uidRelation": {
|
||||
"johndoe": "johndoe"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Limitations**:
|
||||
|
||||
Importing from a JSON file imports up to 1000 actions. To find out how many actions the board to be imported has, identify how many actions the JSON has.
|
||||
|
||||
#### Trello API
|
||||
|
||||
Import using API is recommended for boards with more than 1000 actions.
|
||||
|
||||
Trello makes it possible to attach links to a card. Deck does not have this feature. Attachments and attachment links are added in a markdown table at the end of the description for every imported card that has attachments in Trello.
|
||||
|
||||
* Get the API Key and API Token [here](https://developer.atlassian.com/cloud/trello/guides/rest-api/api-introduction/#authentication-and-authorization)
|
||||
* Get the ID of the board you want to import by making a request to:
|
||||
https://api.trello.com/1/members/me/boards?key={yourKey}&token={yourToken}&fields=id,name
|
||||
|
||||
This ID you will use in the configuration file in the `board` property
|
||||
* Create the configuration file
|
||||
|
||||
Create the configuration file respecting the [JSON Schema](https://github.com/nextcloud/deck/blob/master/lib/Service/Importer/fixtures/config-trelloApi-schema.json) for import `Trello JSON`
|
||||
|
||||
Example configuration file:
|
||||
```json
|
||||
{
|
||||
"owner": "admin",
|
||||
"color": "0800fd",
|
||||
"api": {
|
||||
"key": "0cc175b9c0f1b6a831c399e269772661",
|
||||
"token": "92eb5ffee6ae2fec3ad71c777531578f4a8a08f09d37b73795649038408b5f33"
|
||||
},
|
||||
"board": "8277e0910d750195b4487976",
|
||||
"uidRelation": {
|
||||
"johndoe": "johndoe"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 7. Search
|
||||
|
||||
Deck provides a global search either through the unified search in the Nextcloud header or with the inline search next to the board controls.
|
||||
This search allows advanced filtering of cards across all board of the logged in user.
|
||||
|
||||
For example the search `project tag:ToDo assigned:alice assigned:bob` will return all cards where the card title or description contains project **and** the tag ToDo is set **and** the user alice is assigned **and** the user bob is assigned.
|
||||
|
||||
#### Supported search filters
|
||||
|
||||
| Filter | Operators | Query |
|
||||
| ----------- | ----------------- | ------------------------------------------------------------ |
|
||||
| title | `:` | text token used for a case-insentitive search on the cards title |
|
||||
| description | `:` | text token used for a case-insentitive search on the cards description |
|
||||
| list | `:` | text token used for a case-insentitive search on the cards list name |
|
||||
| tag | `:` | text token used for a case-insentitive search on the assigned tags |
|
||||
| date | `:` | 'overdue', 'today', 'week', 'month', 'none' |
|
||||
| | `>` `<` `>=` `<=` | Compare the card due date to the passed date (see [supported date formats](https://www.php.net/manual/de/datetime.formats.php)) Card due dates are always considered UTC for comparison |
|
||||
| assigned | `:` | id or displayname of a user or group for a search on the assigned users or groups |
|
||||
|
||||
Other text tokens will be used to perform a case-insensitive search on the card title and description
|
||||
|
||||
In addition, quotes can be used to pass a query with spaces, e.g. `"Exact match with spaces"` or `title:"My card"`.
|
||||
|
||||
### 8. New owner for the deck entities
|
||||
You can transfer ownership of boards, cards, etc to a new user, using `occ` command `deck:transfer-ownership`
|
||||
|
||||
```bash
|
||||
php occ deck:transfer-ownership previousOwner newOwner
|
||||
```
|
||||
|
||||
The transfer will preserve card details linked to the old owner, which can also be remapped by using the `--remap` option on the occ command.
|
||||
```bash
|
||||
php occ deck:transfer-ownership --remap previousOwner newOwner
|
||||
```
|
||||
|
||||
Individual boards can be transferred by adding the id of the board to the command:
|
||||
|
||||
```bash
|
||||
php occ deck:transfer-ownership previousOwner newOwner 123
|
||||
```
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
.subnav ul {
|
||||
padding-left: 20px;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
## Implement import
|
||||
|
||||
* Create a new importer class extending `ABoardImportService`
|
||||
* Create a listener for event `BoardImportGetAllowedEvent` to enable your importer.
|
||||
> You can read more about listeners on [Nextcloud](https://docs.nextcloud.com/server/latest/developer_manual/basics/events.html?highlight=event#writing-a-listener) doc.
|
||||
|
||||
Example:
|
||||
|
||||
```php
|
||||
class YourCustomImporterListener {
|
||||
public function handle(Event $event): void {
|
||||
if (!($event instanceof BoardImportGetAllowedEvent)) {
|
||||
return;
|
||||
}
|
||||
|
||||
$event->getService()->addAllowedImportSystem([
|
||||
'name' => YourCustomImporterService::$name,
|
||||
'class' => YourCustomImporterService::class,
|
||||
'internalName' => 'YourCustomImporter'
|
||||
]);
|
||||
}
|
||||
}
|
||||
```
|
||||
* Register your listener on your `Application` class like this:
|
||||
```php
|
||||
$dispatcher = $this->getContainer()->query(IEventDispatcher::class);
|
||||
$dispatcher->registerEventListener(
|
||||
BoardImportGetAllowedEvent::class,
|
||||
YourCustomImporterListener::class
|
||||
);
|
||||
```
|
||||
* Use the `lib/Service/Importer/Systems/TrelloJsonService.php` class as inspiration
|
||||
@@ -1,7 +0,0 @@
|
||||
## Import class diagram
|
||||
|
||||
Importing boards to the Deck implements the class diagram below.
|
||||
|
||||
> **NOTE**: When making any changes to the structure of the classes or implementing import from other sources, edit the `BoardImport.yuml` file
|
||||
|
||||

|
||||
@@ -1,214 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.40.1 (20161225.0304)
|
||||
-->
|
||||
<!-- Title: G Pages: 1 -->
|
||||
<svg width="417pt" height="830pt"
|
||||
viewBox="0.00 0.00 417.01 830.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 826)">
|
||||
<title>G</title>
|
||||
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-826 413.012,-826 413.012,4 -4,4"/>
|
||||
<!-- A0 -->
|
||||
<g id="node1" class="node">
|
||||
<title>A0</title>
|
||||
<polygon fill="#fff8dc" stroke="#000000" points="165.909,-822 70.091,-822 70.091,-766 171.909,-766 171.909,-816 165.909,-822"/>
|
||||
<polyline fill="none" stroke="#000000" points="165.909,-822 165.909,-816 "/>
|
||||
<polyline fill="none" stroke="#000000" points="171.909,-816 165.909,-816 "/>
|
||||
<text text-anchor="middle" x="121" y="-809" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">Classes used on</text>
|
||||
<text text-anchor="middle" x="121" y="-797" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">board import.</text>
|
||||
<text text-anchor="middle" x="121" y="-785" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">Methods just to</text>
|
||||
<text text-anchor="middle" x="121" y="-773" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">illustrate.</text>
|
||||
</g>
|
||||
<!-- A1 -->
|
||||
<g id="node2" class="node">
|
||||
<title>A1</title>
|
||||
<polygon fill="none" stroke="#000000" points="108.7773,-680 23.2227,-680 23.2227,-644 108.7773,-644 108.7773,-680"/>
|
||||
<text text-anchor="middle" x="66" y="-659" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">ApiController</text>
|
||||
</g>
|
||||
<!-- A2 -->
|
||||
<g id="node3" class="node">
|
||||
<title>A2</title>
|
||||
<polygon fill="none" stroke="#000000" points="0,-514 0,-546 132,-546 132,-514 0,-514"/>
|
||||
<text text-anchor="start" x="9.607" y="-527" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">BoardImportApiController</text>
|
||||
<polygon fill="none" stroke="#000000" points="0,-458 0,-514 132,-514 132,-458 0,-458"/>
|
||||
<text text-anchor="start" x="45.8645" y="-495" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+import()</text>
|
||||
<text text-anchor="start" x="16.1335" y="-483" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+getAllowedSystems()</text>
|
||||
<text text-anchor="start" x="20.0185" y="-471" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+getConfigSchema()</text>
|
||||
</g>
|
||||
<!-- A1->A2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>A1->A2</title>
|
||||
<path fill="none" stroke="#000000" d="M66,-633.6693C66,-609.4424 66,-574.1663 66,-546.2238"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="66,-643.957 61.5001,-633.9569 66,-638.957 66.0001,-633.957 66.0001,-633.957 66.0001,-633.957 66,-638.957 70.5001,-633.957 66,-643.957 66,-643.957"/>
|
||||
</g>
|
||||
<!-- A3 -->
|
||||
<g id="node4" class="node">
|
||||
<title>A3</title>
|
||||
<polygon fill="none" stroke="#000000" points="92,-364 92,-396 200,-396 200,-364 92,-364"/>
|
||||
<text text-anchor="start" x="101.828" y="-377" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">BoardImportService</text>
|
||||
<polygon fill="none" stroke="#000000" points="92,-284 92,-364 200,-364 200,-284 92,-284"/>
|
||||
<text text-anchor="start" x="125.8645" y="-345" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+import()</text>
|
||||
<text text-anchor="start" x="118.9105" y="-333" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+bootstrap()</text>
|
||||
<text text-anchor="start" x="105.857" y="-321" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+validateSystem()</text>
|
||||
<text text-anchor="start" x="108.218" y="-309" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">#validateConfig()</text>
|
||||
<text text-anchor="start" x="112.107" y="-297" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">#validateData()</text>
|
||||
</g>
|
||||
<!-- A2->A3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>A2->A3</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M87.8604,-457.7328C95.8577,-441.5382 105.0823,-422.8583 113.7939,-405.2174"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="118.2935,-396.1057 117.9004,-407.0646 116.0795,-400.5889 113.8656,-405.072 113.8656,-405.072 113.8656,-405.072 116.0795,-400.5889 109.8308,-403.0795 118.2935,-396.1057 118.2935,-396.1057"/>
|
||||
<text text-anchor="middle" x="88.3076" y="-434.7378" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">uses</text>
|
||||
</g>
|
||||
<!-- A7 -->
|
||||
<g id="node8" class="node">
|
||||
<title>A7</title>
|
||||
<polygon fill="none" stroke="#000000" points="37,-196 37,-228 129,-228 129,-196 37,-196"/>
|
||||
<text text-anchor="start" x="46.612" y="-209" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">TrelloApiService</text>
|
||||
<polygon fill="none" stroke="#000000" points="37,-164 37,-196 129,-196 129,-164 37,-164"/>
|
||||
<text text-anchor="start" x="53.9655" y="-177" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+name:string</text>
|
||||
</g>
|
||||
<!-- A3->A7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>A3->A7</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M114.8609,-283.9135C107.8316,-268.5143 100.7854,-252.0928 95.0404,-237.6613"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="91.2872,-228.0253 99.1098,-235.7102 93.1019,-232.6844 94.9167,-237.3434 94.9167,-237.3434 94.9167,-237.3434 93.1019,-232.6844 90.7235,-238.9767 91.2872,-228.0253 91.2872,-228.0253"/>
|
||||
<text text-anchor="middle" x="99.6759" y="-267.8975" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">uses</text>
|
||||
</g>
|
||||
<!-- A9 -->
|
||||
<g id="node10" class="node">
|
||||
<title>A9</title>
|
||||
<polygon fill="none" stroke="#000000" points="148,-202 148,-234 273,-234 273,-202 148,-202"/>
|
||||
<text text-anchor="start" x="170.7765" y="-215" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">TrelloJsonService</text>
|
||||
<polygon fill="none" stroke="#000000" points="148,-158 148,-202 273,-202 273,-158 148,-158"/>
|
||||
<text text-anchor="start" x="181.4655" y="-183" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+name:string</text>
|
||||
<text text-anchor="start" x="157.981" y="-171" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">#needValidateData:true</text>
|
||||
</g>
|
||||
<!-- A3->A9 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>A3->A9</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M164.3261,-283.9135C170.0039,-270.5688 176.3462,-256.4563 182.4816,-243.5365"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="186.9002,-234.3677 186.6126,-245.3298 184.7295,-238.872 182.5588,-243.3762 182.5588,-243.3762 182.5588,-243.3762 184.7295,-238.872 178.505,-241.4226 186.9002,-234.3677 186.9002,-234.3677"/>
|
||||
<text text-anchor="middle" x="163.6874" y="-260.9237" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">uses</text>
|
||||
</g>
|
||||
<!-- A10 -->
|
||||
<g id="node11" class="node">
|
||||
<title>A10</title>
|
||||
<polygon fill="#fff8dc" stroke="#000000" points="317.7872,-362 218.2128,-362 218.2128,-318 323.7872,-318 323.7872,-356 317.7872,-362"/>
|
||||
<polyline fill="none" stroke="#000000" points="317.7872,-362 317.7872,-356 "/>
|
||||
<polyline fill="none" stroke="#000000" points="323.7872,-356 317.7872,-356 "/>
|
||||
<text text-anchor="middle" x="271" y="-349" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">validateSystem is</text>
|
||||
<text text-anchor="middle" x="271" y="-337" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">public because is</text>
|
||||
<text text-anchor="middle" x="271" y="-325" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">used on Api.</text>
|
||||
</g>
|
||||
<!-- A3->A10 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>A3->A10</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M200.1992,-340C206.1915,-340 212.1837,-340 218.176,-340"/>
|
||||
</g>
|
||||
<!-- A4 -->
|
||||
<g id="node5" class="node">
|
||||
<title>A4</title>
|
||||
<polygon fill="none" stroke="#000000" points="264.1131,-812 189.8869,-812 189.8869,-776 264.1131,-776 264.1131,-812"/>
|
||||
<text text-anchor="middle" x="227" y="-791" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">Command</text>
|
||||
</g>
|
||||
<!-- A5 -->
|
||||
<g id="node6" class="node">
|
||||
<title>A5</title>
|
||||
<polygon fill="none" stroke="#000000" points="148,-684 148,-716 307,-716 307,-684 148,-684"/>
|
||||
<text text-anchor="start" x="199.9955" y="-697" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">BoardImport</text>
|
||||
<polygon fill="none" stroke="#000000" points="148,-652 148,-684 307,-684 307,-652 148,-652"/>
|
||||
<text text-anchor="start" x="157.907" y="-665" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+boardImportCommandService</text>
|
||||
<polygon fill="none" stroke="#000000" points="148,-608 148,-652 307,-652 307,-608 148,-608"/>
|
||||
<text text-anchor="start" x="200.8305" y="-633" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">#configure()</text>
|
||||
<text text-anchor="start" x="177.76" y="-621" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">#execute(input,output)</text>
|
||||
</g>
|
||||
<!-- A4->A5 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>A4->A5</title>
|
||||
<path fill="none" stroke="#000000" d="M227,-765.6356C227,-751.1554 227,-733.0451 227,-716.0324"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="227,-775.9227 222.5001,-765.9227 227,-770.9227 227.0001,-765.9227 227.0001,-765.9227 227.0001,-765.9227 227,-770.9227 231.5001,-765.9228 227,-775.9227 227,-775.9227"/>
|
||||
</g>
|
||||
<!-- A6 -->
|
||||
<g id="node7" class="node">
|
||||
<title>A6</title>
|
||||
<polygon fill="none" stroke="#000000" points="150,-526 150,-558 304,-558 304,-526 150,-526"/>
|
||||
<text text-anchor="start" x="159.7715" y="-539" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">BoardImportCommandService</text>
|
||||
<polygon fill="none" stroke="#000000" points="150,-446 150,-526 304,-526 304,-446 150,-446"/>
|
||||
<text text-anchor="start" x="199.9105" y="-507" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+bootstrap()</text>
|
||||
<text text-anchor="start" x="206.8645" y="-495" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+import()</text>
|
||||
<text text-anchor="start" x="186.857" y="-483" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+validateSystem()</text>
|
||||
<text text-anchor="start" x="189.218" y="-471" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">#validateConfig()</text>
|
||||
<text text-anchor="start" x="193.107" y="-459" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">#validateData()</text>
|
||||
</g>
|
||||
<!-- A5->A6 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>A5->A6</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M227,-607.8313C227,-595.0442 227,-581.2707 227,-568.0248"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="227,-558.0234 231.5001,-568.0234 227,-563.0234 227.0001,-568.0234 227.0001,-568.0234 227.0001,-568.0234 227,-563.0234 222.5001,-568.0235 227,-558.0234 227,-558.0234"/>
|
||||
<text text-anchor="middle" x="218.5476" y="-586.7051" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">uses</text>
|
||||
</g>
|
||||
<!-- A6->A3 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>A6->A3</title>
|
||||
<path fill="none" stroke="#000000" d="M198.8975,-445.7949C192.3634,-432.7268 185.3528,-418.7057 178.6417,-405.2834"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="174.0529,-396.1057 182.55,-403.0375 176.289,-400.5779 178.5251,-405.05 178.5251,-405.05 178.5251,-405.05 176.289,-400.5779 174.5001,-407.0625 174.0529,-396.1057 174.0529,-396.1057"/>
|
||||
</g>
|
||||
<!-- A7->A3 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>A7->A3</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M102.735,-228.0253C109.5347,-241.763 117.1224,-258.3431 124.0627,-274.4849"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="128.0634,-283.9135 120.0148,-276.4657 126.1104,-279.3107 124.1573,-274.7079 124.1573,-274.7079 124.1573,-274.7079 126.1104,-279.3107 128.2998,-272.9502 128.0634,-283.9135 128.0634,-283.9135"/>
|
||||
<text text-anchor="middle" x="118.307" y="-237.5757" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">uses</text>
|
||||
</g>
|
||||
<!-- A8 -->
|
||||
<g id="node9" class="node">
|
||||
<title>A8</title>
|
||||
<polygon fill="none" stroke="#000000" points="80,-64 80,-108 213,-108 213,-64 80,-64"/>
|
||||
<text text-anchor="start" x="117.04" y="-89" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000"><<abstract>></text>
|
||||
<text text-anchor="start" x="98.9935" y="-77" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">ABoardImportService</text>
|
||||
<polygon fill="none" stroke="#000000" points="80,-32 80,-64 213,-64 213,-32 80,-32"/>
|
||||
<text text-anchor="start" x="92.036" y="-45" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">#needValidateData:false</text>
|
||||
<polygon fill="none" stroke="#000000" points="80,0 80,-32 213,-32 213,0 80,0"/>
|
||||
<text text-anchor="start" x="89.677" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">+needValidateData():bool</text>
|
||||
</g>
|
||||
<!-- A7->A8 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>A7->A8</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M97.2957,-163.778C103.3956,-150.029 110.7371,-133.4813 117.8485,-117.4527"/>
|
||||
<polygon fill="none" stroke="#000000" points="121.1416,-118.6605 121.9978,-108.1003 114.743,-115.8216 121.1416,-118.6605"/>
|
||||
<text text-anchor="middle" x="96.9205" y="-140.7815" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">implements</text>
|
||||
</g>
|
||||
<!-- A9->A3 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>A9->A3</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M198.9952,-234.3677C194.0646,-246.7117 188.0483,-260.7568 181.8434,-274.4849"/>
|
||||
<polygon fill="#000000" stroke="#000000" points="177.5286,-283.9135 177.598,-272.9478 179.6093,-279.367 181.6899,-274.8204 181.6899,-274.8204 181.6899,-274.8204 179.6093,-279.367 185.7818,-276.693 177.5286,-283.9135 177.5286,-283.9135"/>
|
||||
<text text-anchor="middle" x="200.0654" y="-251.3391" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">uses</text>
|
||||
</g>
|
||||
<!-- A9->A8 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>A9->A8</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M192.8492,-157.9466C187.2535,-145.5313 180.8796,-131.389 174.6742,-117.6209"/>
|
||||
<polygon fill="none" stroke="#000000" points="177.7167,-115.8534 170.4168,-108.1747 171.3349,-118.7297 177.7167,-115.8534"/>
|
||||
<text text-anchor="middle" x="177.6953" y="-141.8944" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">implements</text>
|
||||
</g>
|
||||
<!-- A11 -->
|
||||
<g id="node12" class="node">
|
||||
<title>A11</title>
|
||||
<polygon fill="#fff8dc" stroke="#000000" points="403.024,-224 290.976,-224 290.976,-168 409.024,-168 409.024,-218 403.024,-224"/>
|
||||
<polyline fill="none" stroke="#000000" points="403.024,-224 403.024,-218 "/>
|
||||
<polyline fill="none" stroke="#000000" points="409.024,-218 403.024,-218 "/>
|
||||
<text text-anchor="middle" x="350" y="-211" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">To create an import</text>
|
||||
<text text-anchor="middle" x="350" y="-199" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">to another system,</text>
|
||||
<text text-anchor="middle" x="350" y="-187" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">create another class</text>
|
||||
<text text-anchor="middle" x="350" y="-175" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#000000">similar to this.</text>
|
||||
</g>
|
||||
<!-- A9->A11 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>A9->A11</title>
|
||||
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M272.6172,-196C278.6627,-196 284.7083,-196 290.7538,-196"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 16 KiB |
@@ -1,24 +0,0 @@
|
||||
// Created using [yUML](https://github.com/jaime-olivares/vscode-yuml)
|
||||
|
||||
// {type:class}
|
||||
// {direction:topDown}
|
||||
// {generate:true}
|
||||
|
||||
[note: Classes used on board import. Methods just to illustrate. {bg:cornsilk}]
|
||||
|
||||
[ApiController]<-[BoardImportApiController|+import();+getAllowedSystems();+getConfigSchema()]
|
||||
[BoardImportApiController]uses-.->[BoardImportService|+import();+bootstrap();+validateSystem();#validateConfig();#validateData();]
|
||||
|
||||
[Command]<-[BoardImport|+boardImportCommandService|#configure();#execute(input,output)]
|
||||
[BoardImport]uses-.->[BoardImportCommandService|+bootstrap();+import();+validateSystem();#validateConfig();#validateData()]
|
||||
[BoardImportCommandService]->[BoardImportService]
|
||||
|
||||
[BoardImportService]uses-.->[TrelloApiService|+name:string]
|
||||
[TrelloApiService]uses-.->[BoardImportService]
|
||||
[TrelloApiService]implements-.-^[<<abstract>> ABoardImportService|#needValidateData:false|+needValidateData():bool]
|
||||
|
||||
[BoardImportService]uses-.->[TrelloJsonService|+name:string;#needValidateData:true]
|
||||
[TrelloJsonService]uses-.->[BoardImportService]
|
||||
[BoardImportService]-[note: validateSystem is public because is used on Api. {bg:cornsilk}]
|
||||
[TrelloJsonService]-[note: To create an import to another system, create another class similar to this. {bg:cornsilk}]
|
||||
[TrelloJsonService]implements-.-^[<<abstract>> ABoardImportService]
|
||||
@@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="32" width="32" version="1.0" viewbox="0 0 32 32">
|
||||
<path d="m16 1-10 18h11l-1 12 10-18h-11z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 205 B |
@@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="32" width="32" version="1.0" viewBox="0 0 32 32">
|
||||
<path d="m16 1-10 18h11l-1 12 10-18h-11z" fill="#FFF"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 217 B |
1
img/archive-white.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><g transform="translate(0 -1036.362)" fill="#fff"><path d="M1.93 1041.296c-.185 0-.336.138-.336.31v9.842c0 .172.15.313.336.313h12.517c.185 0 .333-.14.333-.313v-9.842c0-.172-.148-.31-.333-.31H1.93zm4.124 1.507h4.223c.39 0 .705.314.705.704v.43c0 .39-.315.705-.705.705H6.054a.703.703 0 0 1-.705-.705v-.43c0-.39.314-.704.705-.704z"/><rect width="15.742" height="2.296" x=".136" y="1037.543" ry="0"/></g></svg>
|
||||
|
After Width: | Height: | Size: 488 B |
@@ -1 +0,0 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 58 58" width="512" height="512"><g fill="#000"><path d="M54.319 37.839C54.762 35.918 55 33.96 55 32c0-9.095-4.631-17.377-12.389-22.153a1 1 0 1 0-1.049 1.703C48.724 15.96 53 23.604 53 32c0 1.726-.2 3.451-.573 5.147A6.992 6.992 0 0 0 51 37c-3.86 0-7 3.141-7 7s3.14 7 7 7 7-3.141 7-7a7.006 7.006 0 0 0-3.681-6.161zM38.171 54.182A23.867 23.867 0 0 1 29 56a24.047 24.047 0 0 1-17.017-7.092A6.974 6.974 0 0 0 14 44c0-3.859-3.14-7-7-7s-7 3.141-7 7 3.14 7 7 7a6.952 6.952 0 0 0 3.381-.875C15.26 55.136 21.994 58 29 58c3.435 0 6.778-.663 9.936-1.971.51-.211.753-.796.542-1.307a1.001 1.001 0 0 0-1.307-.54zM4 31.213a1 1 0 0 0 1.068-.927c.712-10.089 7.586-18.52 17.22-21.314C23.142 11.874 25.825 14 29 14c3.86 0 7-3.141 7-7s-3.14-7-7-7c-3.851 0-6.985 3.127-6.999 6.975C11.42 9.922 3.851 19.12 3.073 30.146A.999.999 0 0 0 4 31.213z"/></g></svg>
|
||||
|
Before Width: | Height: | Size: 885 B |
@@ -1 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 58 58" width="512" height="512"><g fill="#fff"><path d="M54.319 37.839C54.762 35.918 55 33.96 55 32c0-9.095-4.631-17.377-12.389-22.153a1 1 0 1 0-1.049 1.703C48.724 15.96 53 23.604 53 32c0 1.726-.2 3.451-.573 5.147A6.992 6.992 0 0 0 51 37c-3.86 0-7 3.141-7 7s3.14 7 7 7 7-3.141 7-7a7.006 7.006 0 0 0-3.681-6.161zM38.171 54.182A23.867 23.867 0 0 1 29 56a24.047 24.047 0 0 1-17.017-7.092A6.974 6.974 0 0 0 14 44c0-3.859-3.14-7-7-7s-7 3.141-7 7 3.14 7 7 7a6.952 6.952 0 0 0 3.381-.875C15.26 55.136 21.994 58 29 58c3.435 0 6.778-.663 9.936-1.971.51-.211.753-.796.542-1.307a1.001 1.001 0 0 0-1.307-.54zM4 31.213a1 1 0 0 0 1.068-.927c.712-10.089 7.586-18.52 17.22-21.314C23.142 11.874 25.825 14 29 14c3.86 0 7-3.141 7-7s-3.14-7-7-7c-3.851 0-6.985 3.127-6.999 6.975C11.42 9.922 3.851 19.12 3.073 30.146A.999.999 0 0 0 4 31.213z"/></g></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 58 58" width="512" height="512"><g fill="#000"><path d="M54.319 37.839C54.762 35.918 55 33.96 55 32c0-9.095-4.631-17.377-12.389-22.153a1 1 0 1 0-1.049 1.703C48.724 15.96 53 23.604 53 32c0 1.726-.2 3.451-.573 5.147A6.992 6.992 0 0 0 51 37c-3.86 0-7 3.141-7 7s3.14 7 7 7 7-3.141 7-7a7.006 7.006 0 0 0-3.681-6.161zM38.171 54.182A23.867 23.867 0 0 1 29 56a24.047 24.047 0 0 1-17.017-7.092A6.974 6.974 0 0 0 14 44c0-3.859-3.14-7-7-7s-7 3.141-7 7 3.14 7 7 7a6.952 6.952 0 0 0 3.381-.875C15.26 55.136 21.994 58 29 58c3.435 0 6.778-.663 9.936-1.971.51-.211.753-.796.542-1.307a1.001 1.001 0 0 0-1.307-.54zM4 31.213a1 1 0 0 0 1.068-.927c.712-10.089 7.586-18.52 17.22-21.314C23.142 11.874 25.825 14 29 14c3.86 0 7-3.141 7-7s-3.14-7-7-7c-3.851 0-6.985 3.127-6.999 6.975C11.42 9.922 3.851 19.12 3.073 30.146A.999.999 0 0 0 4 31.213z"/></g></svg>
|
||||
|
Before Width: | Height: | Size: 885 B After Width: | Height: | Size: 885 B |
1
img/clone.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg width="16" height="16" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M11.8 13.8H2.2V4.2h9.6m1.2 0c0-.67-.53-1.2-1.2-1.2H2.2C1.53 3 1 3.53 1 4.2v9.6c0 .67.53 1.2 1.2 1.2h9.6c.67 0 1.2-.53 1.2-1.2"/><path d="m4.2 1c-0.67 0-1.2 0.54-1.2 1.2h10.8v10.8c0.67 0 1.2-0.53 1.2-1.2v-9.6c0-0.67-0.53-1.2-1.2-1.2z"/></svg>
|
||||
|
After Width: | Height: | Size: 327 B |
@@ -1 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M14,17L4,17v2h10v-2zM20,9L4,9v2h16L20,9zM4,15h16v-2L4,13v2zM4,5v2h16L20,5L4,5z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" version="1.1" height="16"><path fill="#000" d="m2.5 1c-0.28 0-0.5 0.22-0.5 0.5v13c0 0.28 0.22 0.5 0.5 0.5h11c0.28 0 0.5-0.22 0.5-0.5v-10.5l-3-3h-8.5zm1.5 2h6v1h-6v-1zm0 3h5v1h-5v-1zm0 3h8v1h-8v-1zm0 3h4v1h-4v-1z"/></svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 180 B After Width: | Height: | Size: 292 B |
@@ -1 +0,0 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 4.233 4.233"><g paint-order="stroke fill markers"><path d="M.52.465h3.283L2.631 1.918h-.99zM1.642 1.918h.992v1.866l-.996-.455z"/></g></svg>
|
||||
|
Before Width: | Height: | Size: 216 B |
@@ -1 +0,0 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4.233 4.233" height="16" width="16"><path d="M.52.465h3.283L2.631 1.918h-.99zm1.122 1.453h.992v1.866l-.996-.455z" paint-order="stroke fill markers"/><ellipse ry=".691" rx=".674" cy="3.461" cx="3.45" fill="#000"/></svg>
|
||||
|
Before Width: | Height: | Size: 272 B |
@@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" version="1.1" viewBox="0 0 16 16">
|
||||
<path d="m8 2c-0.5523 0-1 0.4477-1 1 0 0.0472 0.021 0.0873 0.0273 0.1328-1.7366 0.4362-3.0273 1.9953-3.0273 3.8672v2l-1 1v1h10v-1l-1-1v-2c0-1.8719-1.291-3.431-3.0273-3.8672 0.0063-0.0455 0.0273-0.0856 0.0273-0.1328 0-0.5523-0.4477-1-1-1zm-2 10c0 1.1046 0.8954 2 2 2s2-0.8954 2-2z" fill="#000"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 456 B |
24
l10n/af.js
@@ -12,34 +12,20 @@ OC.L10N.register(
|
||||
"Missing a temporary folder" : "Ontbrekende tydelike gids",
|
||||
"A PHP extension stopped the file upload" : "’n PHP-uitbreiding het die oplaai gestaak",
|
||||
"Cancel" : "Kanselleer",
|
||||
"Close" : "Sluit",
|
||||
"File already exists" : "Lêer bestaan reeds",
|
||||
"Open details" : "Open besonderhede",
|
||||
"Details" : "Besonderhede",
|
||||
"Tags" : "Etikette",
|
||||
"No participants found" : "Geen deelnemers gevind",
|
||||
"Can edit" : "Kan redigeer",
|
||||
"Can share" : "Kan deel",
|
||||
"Owner" : "Eienaar",
|
||||
"Delete" : "Skrap",
|
||||
"Edit" : "Wysig",
|
||||
"Download" : "Laai af",
|
||||
"Details" : "Besonderhede",
|
||||
"Due date" : "Sperdatum",
|
||||
"Description" : "Beskrywing",
|
||||
"Comments" : "Kommentare",
|
||||
"Modified" : "Gewysig",
|
||||
"Created" : "Geskep",
|
||||
"Due date" : "Sperdatum",
|
||||
"Select Date" : "Kies Datum",
|
||||
"Today" : "Vandag",
|
||||
"Tomorrow" : "Môre",
|
||||
"Save" : "Stoor",
|
||||
"Reply" : "Antwoord",
|
||||
"Update" : "Werk by",
|
||||
"Description" : "Beskrywing",
|
||||
"seconds ago" : "sekondes gelede",
|
||||
"Shared with you" : "Met u gedeel",
|
||||
"No notifications" : "Geen kennisgewings",
|
||||
"An error occurred" : "'n Fout het voorgekom",
|
||||
"Share" : "Deel",
|
||||
"This week" : "Vandeesweek"
|
||||
"Settings" : "Instellings",
|
||||
"An error occurred" : "'n Fout het voorgekom"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
|
||||
24
l10n/af.json
@@ -10,34 +10,20 @@
|
||||
"Missing a temporary folder" : "Ontbrekende tydelike gids",
|
||||
"A PHP extension stopped the file upload" : "’n PHP-uitbreiding het die oplaai gestaak",
|
||||
"Cancel" : "Kanselleer",
|
||||
"Close" : "Sluit",
|
||||
"File already exists" : "Lêer bestaan reeds",
|
||||
"Open details" : "Open besonderhede",
|
||||
"Details" : "Besonderhede",
|
||||
"Tags" : "Etikette",
|
||||
"No participants found" : "Geen deelnemers gevind",
|
||||
"Can edit" : "Kan redigeer",
|
||||
"Can share" : "Kan deel",
|
||||
"Owner" : "Eienaar",
|
||||
"Delete" : "Skrap",
|
||||
"Edit" : "Wysig",
|
||||
"Download" : "Laai af",
|
||||
"Details" : "Besonderhede",
|
||||
"Due date" : "Sperdatum",
|
||||
"Description" : "Beskrywing",
|
||||
"Comments" : "Kommentare",
|
||||
"Modified" : "Gewysig",
|
||||
"Created" : "Geskep",
|
||||
"Due date" : "Sperdatum",
|
||||
"Select Date" : "Kies Datum",
|
||||
"Today" : "Vandag",
|
||||
"Tomorrow" : "Môre",
|
||||
"Save" : "Stoor",
|
||||
"Reply" : "Antwoord",
|
||||
"Update" : "Werk by",
|
||||
"Description" : "Beskrywing",
|
||||
"seconds ago" : "sekondes gelede",
|
||||
"Shared with you" : "Met u gedeel",
|
||||
"No notifications" : "Geen kennisgewings",
|
||||
"An error occurred" : "'n Fout het voorgekom",
|
||||
"Share" : "Deel",
|
||||
"This week" : "Vandeesweek"
|
||||
"Settings" : "Instellings",
|
||||
"An error occurred" : "'n Fout het voorgekom"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
23
l10n/an.js
@@ -1,23 +0,0 @@
|
||||
OC.L10N.register(
|
||||
"deck",
|
||||
{
|
||||
"Done" : "Feito",
|
||||
"The file was uploaded" : "O fichero estió puyato",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "O fichero puyato sobrexe a directiva upload_max_filesize en php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "O fichero cargau supera a directiva MAX_FILE_SIZE que s'espezificó en o formulario HTML",
|
||||
"The file was only partially uploaded" : "O fichero nomás s'ha cargau parzialmén",
|
||||
"No file was uploaded" : "No s'ha cargau garra fichero",
|
||||
"Missing a temporary folder" : "Falta una carpeta temporal",
|
||||
"Could not write file to disk" : "No se podió escribir o fichero en o disco",
|
||||
"A PHP extension stopped the file upload" : "Una estensión de PHP aturó a carga de fichers",
|
||||
"Cancel" : "Canzelar",
|
||||
"Close" : "Zarrar",
|
||||
"Details" : "Detalles",
|
||||
"Tags" : "Etiquetas",
|
||||
"Delete" : "Borrar",
|
||||
"Download" : "Escargar",
|
||||
"Modified" : "Modificau",
|
||||
"Today" : "Hue",
|
||||
"Share" : "Compartir"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
21
l10n/an.json
@@ -1,21 +0,0 @@
|
||||
{ "translations": {
|
||||
"Done" : "Feito",
|
||||
"The file was uploaded" : "O fichero estió puyato",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "O fichero puyato sobrexe a directiva upload_max_filesize en php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "O fichero cargau supera a directiva MAX_FILE_SIZE que s'espezificó en o formulario HTML",
|
||||
"The file was only partially uploaded" : "O fichero nomás s'ha cargau parzialmén",
|
||||
"No file was uploaded" : "No s'ha cargau garra fichero",
|
||||
"Missing a temporary folder" : "Falta una carpeta temporal",
|
||||
"Could not write file to disk" : "No se podió escribir o fichero en o disco",
|
||||
"A PHP extension stopped the file upload" : "Una estensión de PHP aturó a carga de fichers",
|
||||
"Cancel" : "Canzelar",
|
||||
"Close" : "Zarrar",
|
||||
"Details" : "Detalles",
|
||||
"Tags" : "Etiquetas",
|
||||
"Delete" : "Borrar",
|
||||
"Download" : "Escargar",
|
||||
"Modified" : "Modificau",
|
||||
"Today" : "Hue",
|
||||
"Share" : "Compartir"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
285
l10n/ar.js
@@ -1,291 +1,30 @@
|
||||
OC.L10N.register(
|
||||
"deck",
|
||||
{
|
||||
"You have created a new board {board}" : "لقد قمت بانشاء لوح جديد {board}",
|
||||
"{user} has created a new board {board}" : "{user} قام بانشاء لوح {board}",
|
||||
"You have deleted the board {board}" : "قمت بمسح اللوح {board}",
|
||||
"{user} has deleted the board {board}" : "{user} مَسحْ اللوح {board}",
|
||||
"You have restored the board {board}" : "لقد استعدت اللوح {board}",
|
||||
"{user} has restored the board {board}" : "{user} قام باسترجاع اللوح {board}",
|
||||
"You have shared the board {board} with {acl}" : "قمت بمشاركة اللوح {board} مع {acl}",
|
||||
"{user} has shared the board {board} with {acl}" : "{user} قام بمشاركة اللوح {board} مع {acl}",
|
||||
"You have removed {acl} from the board {board}" : "قمت بإزالة {acl} من اللوح {board}",
|
||||
"{user} has removed {acl} from the board {board}" : "{user} قام بازالة {acl} من اللوح {board}",
|
||||
"You have renamed the board {before} to {board}" : "قمت بإعادة تسمية اللوح من {before} الى {board}",
|
||||
"{user} has renamed the board {before} to {board}" : "{user} قام بإعادة تسمية اللوح من {before} الى {board}",
|
||||
"You have archived the board {board}" : "لقد ارشفت اللوح {board}",
|
||||
"{user} has archived the board {before}" : "{user} قام بأرشفة اللوح {before}",
|
||||
"You have unarchived the board {board}" : "قمت بالغاء ارشفة اللوح {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} قام بالغاء ارشفة اللوح {before}",
|
||||
"You have created a new list {stack} on board {board}" : "لقد قمت بانشاء قائمة جديدة {stack} على اللوح {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} قام بانشاء قائمة جديدة {stack} على اللوح {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "قمت باعادة تسمية القائمة من {before} إلى {stack} على اللوح {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} قام باعادة تسمية القائمة {before} إلى {stack} على اللوح {board}",
|
||||
"You have deleted list {stack} on board {board}" : "قمت بمسح القائمة {stack} على اللوح {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} قام بمسح القائمة {stack} على اللوح {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "لقد قمت بانشاء بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} قام بانشاء بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "قمت بمسح بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} قام بحذف بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have renamed the card {before} to {card}" : "قمت بإعادة تسمية اللوح من {before} إلى {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} قام بإعادة تسمية اللوح من {before} إلى {card}",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "قمت بإضافة وصف إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} قام بإضافة وصف إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "قمت بتحديث الوصف إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} قام بتحديث الوصف إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "لقد قمت بأرشفة بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} قام بأرشفة بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "لديك بطاقة غير مؤرشفة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} لديه بطاقة غير مؤرشفة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have removed the due date of card {card}" : "قمت بإزالة التاريخ المحدد من البطاقة {card}",
|
||||
"{user} has removed the due date of card {card}" : "{user} قام بإزالة التاريخ المحدد من البطاقة {card}",
|
||||
"You have set the due date of card {card} to {after}" : "قمت بتعيين التاريخ المحدد للبطاقة {card} إلى {after}",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} قام بتعيين التاريخ المحدد للبطاقة {card} إلى {after}",
|
||||
"You have updated the due date of card {card} to {after}" : "قمت بتحديث التاريخ المحدد للبطاقة {card} إلى {after}",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} قام بتحديث التاريخ المحدد للبطاقة {card} إلى {after}",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "قمت بإضافة وسم {label} إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} قام بإضافة وسم {label} إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "قمت بإزالة وسم {label} من البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} قام بإزالة وسم {label} من البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "قمت بتكليف {assigneduser} في بطاقة {card} على اللوح {board}",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} قام بتكليف {assigneduser} في بطاقة {card} على اللوح {board}",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "لقد إلغيت تكليف {assigneduser} من البطاقة {card} على اللوح {board}",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} الغى تكليف {assigneduser} من البطاقة {card} على اللوح {board}",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : " قمت بنقل البطاقة {card} من القائمة {stackBefore} إلى {stack}",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} قام بنقل البطاقة {card} من القائمة {stackBefore} إلى {stack}",
|
||||
"You have added the attachment {attachment} to card {card}" : "قمت بإضافة المرفق {attachment} إلى البطاقة {card}",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} قام بإضافة المرفق {attachment} إلى البطاقة {card}",
|
||||
"You have updated the attachment {attachment} on card {card}" : "قمت بتحديث المرفق {attachment} على البطاقة {card}",
|
||||
"{user} has updated the attachment {attachment} on card {card}" : "{user} قام بتحديث المرفق {attachment} على البطاقة {card}",
|
||||
"You have deleted the attachment {attachment} from card {card}" : "قمت بحذف المرفق {attachment} من البطاقة {card}",
|
||||
"{user} has deleted the attachment {attachment} from card {card}" : "{user} قام بحذف المرفق {attachment} من البطاقة {card}",
|
||||
"You have restored the attachment {attachment} to card {card}" : "قمت باسترجاع المرفق {attachment} إلى البطاقة {card}",
|
||||
"{user} has restored the attachment {attachment} to card {card}" : "{user} قام باسترجاع المرفق {attachment} إلى البطاقة {card}",
|
||||
"You have commented on card {card}" : "لقد علقت على البطاقة {بطاقة}",
|
||||
"{user} has commented on card {card}" : "{مستخدم} علق على بطاقة {بطاقة}",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "<strong>وصف البطاقة</strong>داخل تطبيق Deck قد تغيرت.",
|
||||
"Deck" : "Deck",
|
||||
"Changes in the <strong>Deck app</strong>" : "تغييرات في <strong>تطبيق Deck</strong> ",
|
||||
"A <strong>comment</strong> was created on a card" : "<strong>تعليق</strong> تم إنشاؤه على بطاقة",
|
||||
"Upcoming cards" : "البطاقات القادمة",
|
||||
"Personal" : "شخصي",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "البطاقة \"%s\" على \"%s\" كُلفت بها من قبل %s.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} قام بتكليف البطاقة {deck-board} على {deck-board} لك",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "وصلت بطاقة \"%s\" على %s\" الموعد المحدد ",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "تجاوزت البطاقة {deck-card} على {deck-board} التاريخ المحدد.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s أشار إليك في تعليق على \"%s\".",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} أشار إليك في تعليق على {deck-card}",
|
||||
"The board \"%s\" has been shared with you by %s." : "تمت مشاركة اللوح \"%s\" معك من قبل %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} قام بمشاركة {deck-board} معك.",
|
||||
"Card comments" : "تعليقات البطاقة ",
|
||||
"%s on %s" : "%s على %s",
|
||||
"No data was provided to create an attachment." : "لا بيانات تم تقديمها لانشاء مرفق",
|
||||
"Finished" : "اكتمل",
|
||||
"To review" : "لإعادة المراجعة",
|
||||
"Action needed" : "يحتاج إلى إجراء",
|
||||
"Later" : "لاحقا",
|
||||
"copy" : "نسخ",
|
||||
"To do" : "لفعله",
|
||||
"Doing" : "تحت العمل",
|
||||
"Done" : "أُنجز",
|
||||
"Example Task 3" : "مثال المهمة 3",
|
||||
"Example Task 2" : "مثال المهمة 2",
|
||||
"Example Task 1" : "مثال المهمة 1",
|
||||
"The file was uploaded" : "تم رفع الملف",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "حجم الملف المرفوع قد تجاوز upload_max_filesize الموجودة في ملف php.ini ",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "حجم الملف الذي تريد رفعه أعلى من الحد المسموح به في واجهة ال HTML.",
|
||||
"The file was only partially uploaded" : "الملف قد رُفع جزءا منه فقط",
|
||||
"Finished" : "مكتملة",
|
||||
"copy" : "أنسخ",
|
||||
"Done" : "تم",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "حجم الملف الذي تريد ترفيعه أعلى مما MAX_FILE_SIZE يسمح به في واجهة ال HTML.",
|
||||
"No file was uploaded" : "لم يتم رفع أي ملف",
|
||||
"Missing a temporary folder" : "المجلد المؤقت غير موجود",
|
||||
"Could not write file to disk" : "لم يستطع كتابة ملف للقرص",
|
||||
"A PHP extension stopped the file upload" : "إضافة البي اچ بي PHP أوقفت رفع الملف",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "لم يتم تحميل أي ملف أو أن يتجاوز حجم الملف الحد الأقصى %s",
|
||||
"Card not found" : "لم يتم العثور على البطاقة ",
|
||||
"Path is already shared with this card" : "تم مشاركة المسار بالفعل مع هذه البطاقة ",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "تاريخ غير صحيح, يجب أن يكون تنسيق التاريخ YYYY-MM-DD",
|
||||
"Personal planning and team project organization" : "التخطيط الشخصي و تنظيم مشروع الفريق",
|
||||
"Card details" : "تفاصيل البطاقة",
|
||||
"Add board" : "إضافة لوح",
|
||||
"Select the board to link to a project" : "تحديد اللوح لربطه بمشروع",
|
||||
"Search by board title" : "بحث بواسطة عنوان اللوح",
|
||||
"Select board" : "حدد لوح",
|
||||
"Create a new card" : "أنشى بطاقة جديدة ",
|
||||
"Select a board" : "حدد لوح",
|
||||
"Select a list" : "اختر قائمة ",
|
||||
"Card title" : "عنوان البطاقة ",
|
||||
"Cancel" : "إلغاء",
|
||||
"Creating the new card …" : "أنشى البطاقة الجديدة ",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "\"{بطاقة}\" تمت إضافتها في \"{اللوح}\"",
|
||||
"Open card" : "فتح البطاقة ",
|
||||
"Close" : "إغلاق",
|
||||
"Create card" : "أنشى بطاقة ",
|
||||
"Select a card" : "حدد بطاقة",
|
||||
"Select the card to link to a project" : "حدد البطاقة لربطها بمشروع",
|
||||
"Link to card" : "اربط بطاقة",
|
||||
"File already exists" : "الملف موجود مسبقاً",
|
||||
"A file with the name {filename} already exists." : "ملف باسم {اسم الملف} موجود مسبقًا ",
|
||||
"Do you want to overwrite it?" : "هل تريد تجاوزه؟",
|
||||
"Overwrite file" : "تجاوز ملف",
|
||||
"Keep existing file" : "ابقي الملف الموجود",
|
||||
"This board is read only" : "هذا اللوح بوضع القراءة فقط",
|
||||
"Drop your files to upload" : "افلت الملفات لرفعها",
|
||||
"Add card" : "إضافة بطاقة",
|
||||
"Archived cards" : "البطاقات المؤرشفة",
|
||||
"Add list" : "إضافة قائمة",
|
||||
"List name" : "قامة اسماء",
|
||||
"Apply filter" : "تطبيق التصفية",
|
||||
"Filter by tag" : "تصفية بواسطة الوسم",
|
||||
"Filter by assigned user" : "تصفية بواسطة المستخدم الموكل اليه",
|
||||
"Unassigned" : "غير معيين ",
|
||||
"Filter by due date" : "تصفية بواسطة تاريخ الإنجاز",
|
||||
"Overdue" : "تأخر",
|
||||
"Next 24 hours" : "ال 24 ساعة القادمة",
|
||||
"Next 7 days" : "ال 7 أيام القادمة",
|
||||
"Next 30 days" : "ال 30 يوم القادمة",
|
||||
"No due date" : "لا تاريخ إنجاز",
|
||||
"Clear filter" : "ازل التصفية",
|
||||
"Hide archived cards" : "إخفاء البطاقات المؤرشفة ",
|
||||
"Show archived cards" : "اظهر البطاقات المؤرشفة",
|
||||
"Toggle compact mode" : "تبديل النمط المضغوط",
|
||||
"Open details" : "افتح التفاصيل",
|
||||
"Details" : "التفاصيل",
|
||||
"Loading board" : "جارِ تحميل اللوح..",
|
||||
"No lists available" : "لا يوجد قائمة متاحه ",
|
||||
"Create a new list to add cards to this board" : "إنشاء قائمة جديدة لإضافة البطاقات على هذا اللوح",
|
||||
"Board not found" : "اللوح غير موجود",
|
||||
"Sharing" : "المشاركة",
|
||||
"Tags" : "الوسوم",
|
||||
"Deleted items" : "العناصر الممسوحة",
|
||||
"Timeline" : "الجدول الزمني",
|
||||
"Deleted lists" : "القوائم المحذوفة",
|
||||
"Timeline" : "الخيط الزمني",
|
||||
"Undo" : "تراجع",
|
||||
"Deleted cards" : "البطاقات المحذوفة",
|
||||
"Share board with a user, group or circle …" : "مشاركة اللوح مع مستخدم،مجموعة أو دائرة ..",
|
||||
"Searching for users, groups and circles …" : "ابحث عن أعضاء، مجموعات أو حلقات ...",
|
||||
"No participants found" : "لم يتم العثور على مشاركين",
|
||||
"Board owner" : "منشئ اللوح",
|
||||
"(Group)" : "(مجموعة)",
|
||||
"(Circle)" : "(دائرة)",
|
||||
"Can edit" : "يمكن تعديله",
|
||||
"Can share" : "يمكن مشاركته",
|
||||
"Can manage" : "يمكن إدارته",
|
||||
"Owner" : "المالك",
|
||||
"Can edit" : "يمكنه التغيير",
|
||||
"Can share" : "Can share",
|
||||
"Delete" : "حذف ",
|
||||
"Failed to create share with {displayName}" : "فشل في إنشاء المشاركة مع {displayName}",
|
||||
"Transfer" : "نقل",
|
||||
"Add a new list" : "اضف قائمة جديدة",
|
||||
"Archive all cards" : "أرشفة جميع البطاقات ",
|
||||
"Delete list" : "حذف القائمة",
|
||||
"Archive all cards in this list" : "أرشفة جميع البطاقات في القائمة ",
|
||||
"Add a new card" : "إضافة بطاقة جديدة",
|
||||
"Card name" : "اسم البطاقة ",
|
||||
"List deleted" : "القائمة حٌذفت ",
|
||||
"Edit" : "تعديل",
|
||||
"Add a new tag" : "إضافة وسم جديد",
|
||||
"title and color value must be provided" : "العنوان و قيمة اللون يجب تقديمها ",
|
||||
"Board name" : "اسم اللوح",
|
||||
"Members" : "الاعضاء",
|
||||
"Upload new files" : "رفع ملفات جديدة",
|
||||
"Share from Files" : "مشاركة من الملفات",
|
||||
"Add this attachment" : "إضافة هذا المرفق",
|
||||
"Show in Files" : "عرض في الملفات ",
|
||||
"Download" : "تنزيل",
|
||||
"Delete Attachment" : "مسح المرفق",
|
||||
"Restore Attachment" : "إستعادة المرفق",
|
||||
"File to share" : "ملف للمشاركة",
|
||||
"Invalid path selected" : "تم تحديد مسار غير صحيح",
|
||||
"Open in sidebar view" : "فتح في الشريط الجانبي ",
|
||||
"Open in bigger view" : "فتح في نافذة أكبر ",
|
||||
"Description" : "الوصف",
|
||||
"Attachments" : "المرفقات",
|
||||
"Comments" : "تعليقات",
|
||||
"Modified" : "عُدل",
|
||||
"Created" : "أُنشئ",
|
||||
"The title cannot be empty." : "لا يمكن ترك العنوان فارغًا.",
|
||||
"No comments yet. Begin the discussion!" : "لا يوجد تعليقات بعد, ابدأ النقاش الآن!",
|
||||
"Failed to load comments" : "فشل في تحميل التعليقات ",
|
||||
"Assign a tag to this card…" : "انسب وسم الى هذه البطاقة..",
|
||||
"Assign to users" : "انسب الى المتسخدمين",
|
||||
"Assign to users/groups/circles" : "انسب الى المستخدمين،المجموعات،الدوائر",
|
||||
"Assign a user to this card…" : "انسب مستخدم الى هذه البطاقة..",
|
||||
"Due date" : "تاريخ الانجاز",
|
||||
"Set a due date" : "تعيين تاريخ الانجاز",
|
||||
"Remove due date" : "ازالة تاريخ الانجاز",
|
||||
"Select Date" : "اختر التاريخ ",
|
||||
"Today" : "اليوم",
|
||||
"Tomorrow" : "غدا",
|
||||
"Next week" : "الاسبوع القادم",
|
||||
"Next month" : "الشهر القادم",
|
||||
"Modified" : "آخر تعديل",
|
||||
"Upload attachment" : "رفع المرفقات",
|
||||
"Save" : "حفظ",
|
||||
"The comment cannot be empty." : "التعليق لايمكن ان يكون فارغا.",
|
||||
"The comment cannot be longer than 1000 characters." : "التعليق لا يمكن ان يكون اطول من 1000 حرف.",
|
||||
"In reply to" : "يقوم بالرد على",
|
||||
"Cancel reply" : "إلغاء الرد",
|
||||
"Reply" : "رد",
|
||||
"Update" : "تحديث",
|
||||
"Description" : "الوصف",
|
||||
"(Unsaved)" : "(غير محفوظ)",
|
||||
"(Saving…)" : "(يُحفظ..)",
|
||||
"Formatting help" : "مساعدة التنسيق",
|
||||
"Edit description" : "تعديل الوصف",
|
||||
"View description" : "إظهار الوصف",
|
||||
"Add Attachment" : "أضف ملحق",
|
||||
"Write a description …" : "كتابة وصف...",
|
||||
"Choose attachment" : "اختيار مرفق",
|
||||
"(group)" : "(مجموعة)",
|
||||
"{count} comments, {unread} unread" : "{عدد} التعليقات، {غير مقروءة} غير مقروءة",
|
||||
"Assign to me" : "ينسب لي",
|
||||
"Unassign myself" : "إلغاء تعييني ",
|
||||
"Move card" : "حرك البطاقة",
|
||||
"Unarchive card" : "إلغاء أرشفة البطاقة ",
|
||||
"Archive card" : "أرشفة البطاقة",
|
||||
"Delete card" : "حذف البطاقة",
|
||||
"Move card to another board" : "حرك البطاقة الى لوح اخر",
|
||||
"Card deleted" : "البطاقة حٌذفت ",
|
||||
"seconds ago" : "ثوانٍ مضت",
|
||||
"All boards" : "جميع الالواح",
|
||||
"Archived boards" : "الالواح المؤرشفة",
|
||||
"Shared with you" : "تم مشاركتها معك",
|
||||
"Use bigger card view" : "استخدام بطاقة عرض أكبر ",
|
||||
"Show boards in calendar/tasks" : "إظهار اللوح في التقويم/المهام",
|
||||
"Limit deck usage of groups" : "تقييد استخدام Deck للمجموعات",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "سيؤدي تقييد Deck إلى منع المستخدمين الذين ليسوا جزءًا من تلك المجموعات من إنشاء لوحاتهم الخاصة. سيظل المستخدمون قادرين على العمل على اللوحات التي تمت مشاركتها معهم.",
|
||||
"Board details" : "تفاصيل لوح",
|
||||
"Edit board" : "تعديل اللوح",
|
||||
"Clone board" : "استنسخ اللوح",
|
||||
"Unarchive board" : "إلغاء أرشفة اللوح",
|
||||
"Archive board" : "أرشفة اللوح ",
|
||||
"Turn on due date reminders" : "تفعيل التذكيرات للموعد المحدد ",
|
||||
"Turn off due date reminders" : "إيقاف تشغيل التذكيرات للموعد المحددد",
|
||||
"Due date reminders" : "تذكيرات الموعد المحدد ",
|
||||
"All cards" : "جميع البطاقات ",
|
||||
"Assigned cards" : "البطاقات المخصصة",
|
||||
"No notifications" : "لا توجد إشعارات",
|
||||
"Delete board" : "مسح اللوح",
|
||||
"Board {0} deleted" : "اللوح {0} تم مسحه",
|
||||
"Only assigned cards" : "البطاقات المخصصة فقط",
|
||||
"No reminder" : "لا يوجد تذكير ",
|
||||
"An error occurred" : "حدث خطأ",
|
||||
"Delete the board?" : "مسح اللوح؟",
|
||||
"Loading filtered view" : "جارِ تحميل التصفية ",
|
||||
"No due" : "غير محدد",
|
||||
"Search for {searchQuery} in all boards" : "البحث عن {searchQuery} في جميع اللوح",
|
||||
"No results found" : "لا يتم العثور على أي نتائج ",
|
||||
"{stack} in {board}" : "{stack} في {board}",
|
||||
"No upcoming cards" : "لا يوجد بطاقات قادمة ",
|
||||
"upcoming cards" : "البطاقات القادمة",
|
||||
"Link to a board" : "ربط بلوح",
|
||||
"Link to a card" : "ربط ببطاقة",
|
||||
"Create a card" : "أنشى بطاقة ",
|
||||
"Message from {author} in {conversationName}" : "رسالة من {author} في {conversationName}",
|
||||
"Something went wrong" : "حدث خطأ ما",
|
||||
"Failed to upload {name}" : "فشل في رفع {اسم}",
|
||||
"Maximum file size of {size} exceeded" : " تجاوز الملف الحد الاقصى {size} بالحجم المسموح ",
|
||||
"Error creating the share" : "خطأ في إنشاء المشاركة",
|
||||
"Share with a Deck card" : "مشاركة مع بطاقة Deck",
|
||||
"Share {file} with a Deck card" : "مشاركة الملف {file} مع بطاقة Deck",
|
||||
"Share" : "مشاركة ",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "دك (Deck) هو أداة تنظيم باسلوب كانبان (kanban) تهدف إلى التخطيط الشخصي وتنظيم المشروع للفرق مع نيكست كلاود (Nextcloud).\n- 📥 إضافة مهامك إلى البطاقات وترتيبها\n- 📄 كتابة ملاحظات إضافية باستخدام مارك داون (markdown)\n- 🔖 تعيين تسميات لتنظيم أفضل\n- 👥 شارك مع فريقك أو أصدقائك أو عائلتك\n- 📎 إرفاق الملفات وتضمينها بالوصف المستخدم فيه مارك داون (markdown)\n- 💬 ناقش مع فريقك باستخدام التعليقات\n- ⚡ تتبع التغييرات في تيار النشاط\n- 🚀 اجعل مشروعك منظماً",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "هل انت متأكد تريد مسح اللوح {title}؟ هذا سوف يمسح جميع بيانات هذا اللوح.",
|
||||
"This week" : "هذا الأسبوع"
|
||||
"Settings" : "الإعدادات",
|
||||
"An error occurred" : "طرأ هناك خطأ"
|
||||
},
|
||||
"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;");
|
||||
|
||||
285
l10n/ar.json
@@ -1,289 +1,28 @@
|
||||
{ "translations": {
|
||||
"You have created a new board {board}" : "لقد قمت بانشاء لوح جديد {board}",
|
||||
"{user} has created a new board {board}" : "{user} قام بانشاء لوح {board}",
|
||||
"You have deleted the board {board}" : "قمت بمسح اللوح {board}",
|
||||
"{user} has deleted the board {board}" : "{user} مَسحْ اللوح {board}",
|
||||
"You have restored the board {board}" : "لقد استعدت اللوح {board}",
|
||||
"{user} has restored the board {board}" : "{user} قام باسترجاع اللوح {board}",
|
||||
"You have shared the board {board} with {acl}" : "قمت بمشاركة اللوح {board} مع {acl}",
|
||||
"{user} has shared the board {board} with {acl}" : "{user} قام بمشاركة اللوح {board} مع {acl}",
|
||||
"You have removed {acl} from the board {board}" : "قمت بإزالة {acl} من اللوح {board}",
|
||||
"{user} has removed {acl} from the board {board}" : "{user} قام بازالة {acl} من اللوح {board}",
|
||||
"You have renamed the board {before} to {board}" : "قمت بإعادة تسمية اللوح من {before} الى {board}",
|
||||
"{user} has renamed the board {before} to {board}" : "{user} قام بإعادة تسمية اللوح من {before} الى {board}",
|
||||
"You have archived the board {board}" : "لقد ارشفت اللوح {board}",
|
||||
"{user} has archived the board {before}" : "{user} قام بأرشفة اللوح {before}",
|
||||
"You have unarchived the board {board}" : "قمت بالغاء ارشفة اللوح {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} قام بالغاء ارشفة اللوح {before}",
|
||||
"You have created a new list {stack} on board {board}" : "لقد قمت بانشاء قائمة جديدة {stack} على اللوح {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} قام بانشاء قائمة جديدة {stack} على اللوح {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "قمت باعادة تسمية القائمة من {before} إلى {stack} على اللوح {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} قام باعادة تسمية القائمة {before} إلى {stack} على اللوح {board}",
|
||||
"You have deleted list {stack} on board {board}" : "قمت بمسح القائمة {stack} على اللوح {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} قام بمسح القائمة {stack} على اللوح {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "لقد قمت بانشاء بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} قام بانشاء بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "قمت بمسح بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} قام بحذف بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have renamed the card {before} to {card}" : "قمت بإعادة تسمية اللوح من {before} إلى {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} قام بإعادة تسمية اللوح من {before} إلى {card}",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "قمت بإضافة وصف إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} قام بإضافة وصف إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "قمت بتحديث الوصف إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} قام بتحديث الوصف إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "لقد قمت بأرشفة بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} قام بأرشفة بطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "لديك بطاقة غير مؤرشفة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} لديه بطاقة غير مؤرشفة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have removed the due date of card {card}" : "قمت بإزالة التاريخ المحدد من البطاقة {card}",
|
||||
"{user} has removed the due date of card {card}" : "{user} قام بإزالة التاريخ المحدد من البطاقة {card}",
|
||||
"You have set the due date of card {card} to {after}" : "قمت بتعيين التاريخ المحدد للبطاقة {card} إلى {after}",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} قام بتعيين التاريخ المحدد للبطاقة {card} إلى {after}",
|
||||
"You have updated the due date of card {card} to {after}" : "قمت بتحديث التاريخ المحدد للبطاقة {card} إلى {after}",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} قام بتحديث التاريخ المحدد للبطاقة {card} إلى {after}",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "قمت بإضافة وسم {label} إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} قام بإضافة وسم {label} إلى البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "قمت بإزالة وسم {label} من البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} قام بإزالة وسم {label} من البطاقة {card} في القائمة {stack} على اللوح {board}",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "قمت بتكليف {assigneduser} في بطاقة {card} على اللوح {board}",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} قام بتكليف {assigneduser} في بطاقة {card} على اللوح {board}",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "لقد إلغيت تكليف {assigneduser} من البطاقة {card} على اللوح {board}",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} الغى تكليف {assigneduser} من البطاقة {card} على اللوح {board}",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : " قمت بنقل البطاقة {card} من القائمة {stackBefore} إلى {stack}",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} قام بنقل البطاقة {card} من القائمة {stackBefore} إلى {stack}",
|
||||
"You have added the attachment {attachment} to card {card}" : "قمت بإضافة المرفق {attachment} إلى البطاقة {card}",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} قام بإضافة المرفق {attachment} إلى البطاقة {card}",
|
||||
"You have updated the attachment {attachment} on card {card}" : "قمت بتحديث المرفق {attachment} على البطاقة {card}",
|
||||
"{user} has updated the attachment {attachment} on card {card}" : "{user} قام بتحديث المرفق {attachment} على البطاقة {card}",
|
||||
"You have deleted the attachment {attachment} from card {card}" : "قمت بحذف المرفق {attachment} من البطاقة {card}",
|
||||
"{user} has deleted the attachment {attachment} from card {card}" : "{user} قام بحذف المرفق {attachment} من البطاقة {card}",
|
||||
"You have restored the attachment {attachment} to card {card}" : "قمت باسترجاع المرفق {attachment} إلى البطاقة {card}",
|
||||
"{user} has restored the attachment {attachment} to card {card}" : "{user} قام باسترجاع المرفق {attachment} إلى البطاقة {card}",
|
||||
"You have commented on card {card}" : "لقد علقت على البطاقة {بطاقة}",
|
||||
"{user} has commented on card {card}" : "{مستخدم} علق على بطاقة {بطاقة}",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "<strong>وصف البطاقة</strong>داخل تطبيق Deck قد تغيرت.",
|
||||
"Deck" : "Deck",
|
||||
"Changes in the <strong>Deck app</strong>" : "تغييرات في <strong>تطبيق Deck</strong> ",
|
||||
"A <strong>comment</strong> was created on a card" : "<strong>تعليق</strong> تم إنشاؤه على بطاقة",
|
||||
"Upcoming cards" : "البطاقات القادمة",
|
||||
"Personal" : "شخصي",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "البطاقة \"%s\" على \"%s\" كُلفت بها من قبل %s.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} قام بتكليف البطاقة {deck-board} على {deck-board} لك",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "وصلت بطاقة \"%s\" على %s\" الموعد المحدد ",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "تجاوزت البطاقة {deck-card} على {deck-board} التاريخ المحدد.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s أشار إليك في تعليق على \"%s\".",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} أشار إليك في تعليق على {deck-card}",
|
||||
"The board \"%s\" has been shared with you by %s." : "تمت مشاركة اللوح \"%s\" معك من قبل %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} قام بمشاركة {deck-board} معك.",
|
||||
"Card comments" : "تعليقات البطاقة ",
|
||||
"%s on %s" : "%s على %s",
|
||||
"No data was provided to create an attachment." : "لا بيانات تم تقديمها لانشاء مرفق",
|
||||
"Finished" : "اكتمل",
|
||||
"To review" : "لإعادة المراجعة",
|
||||
"Action needed" : "يحتاج إلى إجراء",
|
||||
"Later" : "لاحقا",
|
||||
"copy" : "نسخ",
|
||||
"To do" : "لفعله",
|
||||
"Doing" : "تحت العمل",
|
||||
"Done" : "أُنجز",
|
||||
"Example Task 3" : "مثال المهمة 3",
|
||||
"Example Task 2" : "مثال المهمة 2",
|
||||
"Example Task 1" : "مثال المهمة 1",
|
||||
"The file was uploaded" : "تم رفع الملف",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "حجم الملف المرفوع قد تجاوز upload_max_filesize الموجودة في ملف php.ini ",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "حجم الملف الذي تريد رفعه أعلى من الحد المسموح به في واجهة ال HTML.",
|
||||
"The file was only partially uploaded" : "الملف قد رُفع جزءا منه فقط",
|
||||
"Finished" : "مكتملة",
|
||||
"copy" : "أنسخ",
|
||||
"Done" : "تم",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "حجم الملف الذي تريد ترفيعه أعلى مما MAX_FILE_SIZE يسمح به في واجهة ال HTML.",
|
||||
"No file was uploaded" : "لم يتم رفع أي ملف",
|
||||
"Missing a temporary folder" : "المجلد المؤقت غير موجود",
|
||||
"Could not write file to disk" : "لم يستطع كتابة ملف للقرص",
|
||||
"A PHP extension stopped the file upload" : "إضافة البي اچ بي PHP أوقفت رفع الملف",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "لم يتم تحميل أي ملف أو أن يتجاوز حجم الملف الحد الأقصى %s",
|
||||
"Card not found" : "لم يتم العثور على البطاقة ",
|
||||
"Path is already shared with this card" : "تم مشاركة المسار بالفعل مع هذه البطاقة ",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "تاريخ غير صحيح, يجب أن يكون تنسيق التاريخ YYYY-MM-DD",
|
||||
"Personal planning and team project organization" : "التخطيط الشخصي و تنظيم مشروع الفريق",
|
||||
"Card details" : "تفاصيل البطاقة",
|
||||
"Add board" : "إضافة لوح",
|
||||
"Select the board to link to a project" : "تحديد اللوح لربطه بمشروع",
|
||||
"Search by board title" : "بحث بواسطة عنوان اللوح",
|
||||
"Select board" : "حدد لوح",
|
||||
"Create a new card" : "أنشى بطاقة جديدة ",
|
||||
"Select a board" : "حدد لوح",
|
||||
"Select a list" : "اختر قائمة ",
|
||||
"Card title" : "عنوان البطاقة ",
|
||||
"Cancel" : "إلغاء",
|
||||
"Creating the new card …" : "أنشى البطاقة الجديدة ",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "\"{بطاقة}\" تمت إضافتها في \"{اللوح}\"",
|
||||
"Open card" : "فتح البطاقة ",
|
||||
"Close" : "إغلاق",
|
||||
"Create card" : "أنشى بطاقة ",
|
||||
"Select a card" : "حدد بطاقة",
|
||||
"Select the card to link to a project" : "حدد البطاقة لربطها بمشروع",
|
||||
"Link to card" : "اربط بطاقة",
|
||||
"File already exists" : "الملف موجود مسبقاً",
|
||||
"A file with the name {filename} already exists." : "ملف باسم {اسم الملف} موجود مسبقًا ",
|
||||
"Do you want to overwrite it?" : "هل تريد تجاوزه؟",
|
||||
"Overwrite file" : "تجاوز ملف",
|
||||
"Keep existing file" : "ابقي الملف الموجود",
|
||||
"This board is read only" : "هذا اللوح بوضع القراءة فقط",
|
||||
"Drop your files to upload" : "افلت الملفات لرفعها",
|
||||
"Add card" : "إضافة بطاقة",
|
||||
"Archived cards" : "البطاقات المؤرشفة",
|
||||
"Add list" : "إضافة قائمة",
|
||||
"List name" : "قامة اسماء",
|
||||
"Apply filter" : "تطبيق التصفية",
|
||||
"Filter by tag" : "تصفية بواسطة الوسم",
|
||||
"Filter by assigned user" : "تصفية بواسطة المستخدم الموكل اليه",
|
||||
"Unassigned" : "غير معيين ",
|
||||
"Filter by due date" : "تصفية بواسطة تاريخ الإنجاز",
|
||||
"Overdue" : "تأخر",
|
||||
"Next 24 hours" : "ال 24 ساعة القادمة",
|
||||
"Next 7 days" : "ال 7 أيام القادمة",
|
||||
"Next 30 days" : "ال 30 يوم القادمة",
|
||||
"No due date" : "لا تاريخ إنجاز",
|
||||
"Clear filter" : "ازل التصفية",
|
||||
"Hide archived cards" : "إخفاء البطاقات المؤرشفة ",
|
||||
"Show archived cards" : "اظهر البطاقات المؤرشفة",
|
||||
"Toggle compact mode" : "تبديل النمط المضغوط",
|
||||
"Open details" : "افتح التفاصيل",
|
||||
"Details" : "التفاصيل",
|
||||
"Loading board" : "جارِ تحميل اللوح..",
|
||||
"No lists available" : "لا يوجد قائمة متاحه ",
|
||||
"Create a new list to add cards to this board" : "إنشاء قائمة جديدة لإضافة البطاقات على هذا اللوح",
|
||||
"Board not found" : "اللوح غير موجود",
|
||||
"Sharing" : "المشاركة",
|
||||
"Tags" : "الوسوم",
|
||||
"Deleted items" : "العناصر الممسوحة",
|
||||
"Timeline" : "الجدول الزمني",
|
||||
"Deleted lists" : "القوائم المحذوفة",
|
||||
"Timeline" : "الخيط الزمني",
|
||||
"Undo" : "تراجع",
|
||||
"Deleted cards" : "البطاقات المحذوفة",
|
||||
"Share board with a user, group or circle …" : "مشاركة اللوح مع مستخدم،مجموعة أو دائرة ..",
|
||||
"Searching for users, groups and circles …" : "ابحث عن أعضاء، مجموعات أو حلقات ...",
|
||||
"No participants found" : "لم يتم العثور على مشاركين",
|
||||
"Board owner" : "منشئ اللوح",
|
||||
"(Group)" : "(مجموعة)",
|
||||
"(Circle)" : "(دائرة)",
|
||||
"Can edit" : "يمكن تعديله",
|
||||
"Can share" : "يمكن مشاركته",
|
||||
"Can manage" : "يمكن إدارته",
|
||||
"Owner" : "المالك",
|
||||
"Can edit" : "يمكنه التغيير",
|
||||
"Can share" : "Can share",
|
||||
"Delete" : "حذف ",
|
||||
"Failed to create share with {displayName}" : "فشل في إنشاء المشاركة مع {displayName}",
|
||||
"Transfer" : "نقل",
|
||||
"Add a new list" : "اضف قائمة جديدة",
|
||||
"Archive all cards" : "أرشفة جميع البطاقات ",
|
||||
"Delete list" : "حذف القائمة",
|
||||
"Archive all cards in this list" : "أرشفة جميع البطاقات في القائمة ",
|
||||
"Add a new card" : "إضافة بطاقة جديدة",
|
||||
"Card name" : "اسم البطاقة ",
|
||||
"List deleted" : "القائمة حٌذفت ",
|
||||
"Edit" : "تعديل",
|
||||
"Add a new tag" : "إضافة وسم جديد",
|
||||
"title and color value must be provided" : "العنوان و قيمة اللون يجب تقديمها ",
|
||||
"Board name" : "اسم اللوح",
|
||||
"Members" : "الاعضاء",
|
||||
"Upload new files" : "رفع ملفات جديدة",
|
||||
"Share from Files" : "مشاركة من الملفات",
|
||||
"Add this attachment" : "إضافة هذا المرفق",
|
||||
"Show in Files" : "عرض في الملفات ",
|
||||
"Download" : "تنزيل",
|
||||
"Delete Attachment" : "مسح المرفق",
|
||||
"Restore Attachment" : "إستعادة المرفق",
|
||||
"File to share" : "ملف للمشاركة",
|
||||
"Invalid path selected" : "تم تحديد مسار غير صحيح",
|
||||
"Open in sidebar view" : "فتح في الشريط الجانبي ",
|
||||
"Open in bigger view" : "فتح في نافذة أكبر ",
|
||||
"Description" : "الوصف",
|
||||
"Attachments" : "المرفقات",
|
||||
"Comments" : "تعليقات",
|
||||
"Modified" : "عُدل",
|
||||
"Created" : "أُنشئ",
|
||||
"The title cannot be empty." : "لا يمكن ترك العنوان فارغًا.",
|
||||
"No comments yet. Begin the discussion!" : "لا يوجد تعليقات بعد, ابدأ النقاش الآن!",
|
||||
"Failed to load comments" : "فشل في تحميل التعليقات ",
|
||||
"Assign a tag to this card…" : "انسب وسم الى هذه البطاقة..",
|
||||
"Assign to users" : "انسب الى المتسخدمين",
|
||||
"Assign to users/groups/circles" : "انسب الى المستخدمين،المجموعات،الدوائر",
|
||||
"Assign a user to this card…" : "انسب مستخدم الى هذه البطاقة..",
|
||||
"Due date" : "تاريخ الانجاز",
|
||||
"Set a due date" : "تعيين تاريخ الانجاز",
|
||||
"Remove due date" : "ازالة تاريخ الانجاز",
|
||||
"Select Date" : "اختر التاريخ ",
|
||||
"Today" : "اليوم",
|
||||
"Tomorrow" : "غدا",
|
||||
"Next week" : "الاسبوع القادم",
|
||||
"Next month" : "الشهر القادم",
|
||||
"Modified" : "آخر تعديل",
|
||||
"Upload attachment" : "رفع المرفقات",
|
||||
"Save" : "حفظ",
|
||||
"The comment cannot be empty." : "التعليق لايمكن ان يكون فارغا.",
|
||||
"The comment cannot be longer than 1000 characters." : "التعليق لا يمكن ان يكون اطول من 1000 حرف.",
|
||||
"In reply to" : "يقوم بالرد على",
|
||||
"Cancel reply" : "إلغاء الرد",
|
||||
"Reply" : "رد",
|
||||
"Update" : "تحديث",
|
||||
"Description" : "الوصف",
|
||||
"(Unsaved)" : "(غير محفوظ)",
|
||||
"(Saving…)" : "(يُحفظ..)",
|
||||
"Formatting help" : "مساعدة التنسيق",
|
||||
"Edit description" : "تعديل الوصف",
|
||||
"View description" : "إظهار الوصف",
|
||||
"Add Attachment" : "أضف ملحق",
|
||||
"Write a description …" : "كتابة وصف...",
|
||||
"Choose attachment" : "اختيار مرفق",
|
||||
"(group)" : "(مجموعة)",
|
||||
"{count} comments, {unread} unread" : "{عدد} التعليقات، {غير مقروءة} غير مقروءة",
|
||||
"Assign to me" : "ينسب لي",
|
||||
"Unassign myself" : "إلغاء تعييني ",
|
||||
"Move card" : "حرك البطاقة",
|
||||
"Unarchive card" : "إلغاء أرشفة البطاقة ",
|
||||
"Archive card" : "أرشفة البطاقة",
|
||||
"Delete card" : "حذف البطاقة",
|
||||
"Move card to another board" : "حرك البطاقة الى لوح اخر",
|
||||
"Card deleted" : "البطاقة حٌذفت ",
|
||||
"seconds ago" : "ثوانٍ مضت",
|
||||
"All boards" : "جميع الالواح",
|
||||
"Archived boards" : "الالواح المؤرشفة",
|
||||
"Shared with you" : "تم مشاركتها معك",
|
||||
"Use bigger card view" : "استخدام بطاقة عرض أكبر ",
|
||||
"Show boards in calendar/tasks" : "إظهار اللوح في التقويم/المهام",
|
||||
"Limit deck usage of groups" : "تقييد استخدام Deck للمجموعات",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "سيؤدي تقييد Deck إلى منع المستخدمين الذين ليسوا جزءًا من تلك المجموعات من إنشاء لوحاتهم الخاصة. سيظل المستخدمون قادرين على العمل على اللوحات التي تمت مشاركتها معهم.",
|
||||
"Board details" : "تفاصيل لوح",
|
||||
"Edit board" : "تعديل اللوح",
|
||||
"Clone board" : "استنسخ اللوح",
|
||||
"Unarchive board" : "إلغاء أرشفة اللوح",
|
||||
"Archive board" : "أرشفة اللوح ",
|
||||
"Turn on due date reminders" : "تفعيل التذكيرات للموعد المحدد ",
|
||||
"Turn off due date reminders" : "إيقاف تشغيل التذكيرات للموعد المحددد",
|
||||
"Due date reminders" : "تذكيرات الموعد المحدد ",
|
||||
"All cards" : "جميع البطاقات ",
|
||||
"Assigned cards" : "البطاقات المخصصة",
|
||||
"No notifications" : "لا توجد إشعارات",
|
||||
"Delete board" : "مسح اللوح",
|
||||
"Board {0} deleted" : "اللوح {0} تم مسحه",
|
||||
"Only assigned cards" : "البطاقات المخصصة فقط",
|
||||
"No reminder" : "لا يوجد تذكير ",
|
||||
"An error occurred" : "حدث خطأ",
|
||||
"Delete the board?" : "مسح اللوح؟",
|
||||
"Loading filtered view" : "جارِ تحميل التصفية ",
|
||||
"No due" : "غير محدد",
|
||||
"Search for {searchQuery} in all boards" : "البحث عن {searchQuery} في جميع اللوح",
|
||||
"No results found" : "لا يتم العثور على أي نتائج ",
|
||||
"{stack} in {board}" : "{stack} في {board}",
|
||||
"No upcoming cards" : "لا يوجد بطاقات قادمة ",
|
||||
"upcoming cards" : "البطاقات القادمة",
|
||||
"Link to a board" : "ربط بلوح",
|
||||
"Link to a card" : "ربط ببطاقة",
|
||||
"Create a card" : "أنشى بطاقة ",
|
||||
"Message from {author} in {conversationName}" : "رسالة من {author} في {conversationName}",
|
||||
"Something went wrong" : "حدث خطأ ما",
|
||||
"Failed to upload {name}" : "فشل في رفع {اسم}",
|
||||
"Maximum file size of {size} exceeded" : " تجاوز الملف الحد الاقصى {size} بالحجم المسموح ",
|
||||
"Error creating the share" : "خطأ في إنشاء المشاركة",
|
||||
"Share with a Deck card" : "مشاركة مع بطاقة Deck",
|
||||
"Share {file} with a Deck card" : "مشاركة الملف {file} مع بطاقة Deck",
|
||||
"Share" : "مشاركة ",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "دك (Deck) هو أداة تنظيم باسلوب كانبان (kanban) تهدف إلى التخطيط الشخصي وتنظيم المشروع للفرق مع نيكست كلاود (Nextcloud).\n- 📥 إضافة مهامك إلى البطاقات وترتيبها\n- 📄 كتابة ملاحظات إضافية باستخدام مارك داون (markdown)\n- 🔖 تعيين تسميات لتنظيم أفضل\n- 👥 شارك مع فريقك أو أصدقائك أو عائلتك\n- 📎 إرفاق الملفات وتضمينها بالوصف المستخدم فيه مارك داون (markdown)\n- 💬 ناقش مع فريقك باستخدام التعليقات\n- ⚡ تتبع التغييرات في تيار النشاط\n- 🚀 اجعل مشروعك منظماً",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "هل انت متأكد تريد مسح اللوح {title}؟ هذا سوف يمسح جميع بيانات هذا اللوح.",
|
||||
"This week" : "هذا الأسبوع"
|
||||
"Settings" : "الإعدادات",
|
||||
"An error occurred" : "طرأ هناك خطأ"
|
||||
},"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;"
|
||||
}
|
||||
21
l10n/ast.js
@@ -3,7 +3,6 @@ OC.L10N.register(
|
||||
{
|
||||
"Deck" : "Deck",
|
||||
"Personal" : "Personal",
|
||||
"%s on %s" : "%s en %s",
|
||||
"Finished" : "Finó",
|
||||
"Action needed" : "Precísase aición",
|
||||
"Later" : "Más sero",
|
||||
@@ -15,37 +14,23 @@ OC.L10N.register(
|
||||
"Missing a temporary folder" : "Falta un direutoriu temporal",
|
||||
"Could not write file to disk" : "Nun pudo escribise nel discu'l ficheru",
|
||||
"A PHP extension stopped the file upload" : "Una estensión de PHP paró la xuba de ficheros",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Data non válida, el formatu ha ser AAAA-MM-DD",
|
||||
"Cancel" : "Encaboxar",
|
||||
"Close" : "Zarrar",
|
||||
"File already exists" : "Yá esiste'l ficheru",
|
||||
"Show archived cards" : "Amosar tarxetes archivaes",
|
||||
"Details" : "Detalles",
|
||||
"Sharing" : "Compartiendo",
|
||||
"Tags" : "Etiquetes",
|
||||
"Undo" : "Desfacer",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "Desaniciar",
|
||||
"Edit" : "Editar",
|
||||
"Members" : "Miembros",
|
||||
"Download" : "Baxar",
|
||||
"Details" : "Detalles",
|
||||
"Description" : "Descripción",
|
||||
"Attachments" : "Axuntos",
|
||||
"Comments" : "Comentarios",
|
||||
"Modified" : "Modificóse'l",
|
||||
"Created" : "Creóse",
|
||||
"Today" : "Güei",
|
||||
"Tomorrow" : "Mañana",
|
||||
"Save" : "Guardar",
|
||||
"Reply" : "Rempuesta",
|
||||
"Update" : "Anovar",
|
||||
"Description" : "Descripción",
|
||||
"(group)" : "(grupu)",
|
||||
"seconds ago" : "hai segundos",
|
||||
"Shared with you" : "Shared with you",
|
||||
"No notifications" : "Ensin avisos",
|
||||
"Share" : "Share",
|
||||
"This week" : "Esta selmana"
|
||||
"Settings" : "Settings"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{ "translations": {
|
||||
"Deck" : "Deck",
|
||||
"Personal" : "Personal",
|
||||
"%s on %s" : "%s en %s",
|
||||
"Finished" : "Finó",
|
||||
"Action needed" : "Precísase aición",
|
||||
"Later" : "Más sero",
|
||||
@@ -13,37 +12,23 @@
|
||||
"Missing a temporary folder" : "Falta un direutoriu temporal",
|
||||
"Could not write file to disk" : "Nun pudo escribise nel discu'l ficheru",
|
||||
"A PHP extension stopped the file upload" : "Una estensión de PHP paró la xuba de ficheros",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Data non válida, el formatu ha ser AAAA-MM-DD",
|
||||
"Cancel" : "Encaboxar",
|
||||
"Close" : "Zarrar",
|
||||
"File already exists" : "Yá esiste'l ficheru",
|
||||
"Show archived cards" : "Amosar tarxetes archivaes",
|
||||
"Details" : "Detalles",
|
||||
"Sharing" : "Compartiendo",
|
||||
"Tags" : "Etiquetes",
|
||||
"Undo" : "Desfacer",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "Desaniciar",
|
||||
"Edit" : "Editar",
|
||||
"Members" : "Miembros",
|
||||
"Download" : "Baxar",
|
||||
"Details" : "Detalles",
|
||||
"Description" : "Descripción",
|
||||
"Attachments" : "Axuntos",
|
||||
"Comments" : "Comentarios",
|
||||
"Modified" : "Modificóse'l",
|
||||
"Created" : "Creóse",
|
||||
"Today" : "Güei",
|
||||
"Tomorrow" : "Mañana",
|
||||
"Save" : "Guardar",
|
||||
"Reply" : "Rempuesta",
|
||||
"Update" : "Anovar",
|
||||
"Description" : "Descripción",
|
||||
"(group)" : "(grupu)",
|
||||
"seconds ago" : "hai segundos",
|
||||
"Shared with you" : "Shared with you",
|
||||
"No notifications" : "Ensin avisos",
|
||||
"Share" : "Share",
|
||||
"This week" : "Esta selmana"
|
||||
"Settings" : "Settings"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
19
l10n/az.js
@@ -7,26 +7,15 @@ OC.L10N.register(
|
||||
"No file was uploaded" : "Heç bir fayl yüklənilmədi",
|
||||
"Missing a temporary folder" : "Müvəqqəti qovluq çatışmır",
|
||||
"Cancel" : "Dayandır",
|
||||
"Close" : "Bağla",
|
||||
"Details" : "Detallar",
|
||||
"Sharing" : "Paylaşılır",
|
||||
"Tags" : "Işarələr",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "Sil",
|
||||
"Edit" : "Dəyişiklik et",
|
||||
"Download" : "Yüklə",
|
||||
"Modified" : "Dəyişdirildi",
|
||||
"Today" : "Bu gün",
|
||||
"Tomorrow" : "Sabah",
|
||||
"Save" : "Saxla",
|
||||
"Reply" : "Cavab",
|
||||
"Update" : "Yenilənmə",
|
||||
"Description" : "Açıqlanma",
|
||||
"(group)" : "(qrup)",
|
||||
"seconds ago" : "saniyələr öncə",
|
||||
"Shared with you" : "Shared with you",
|
||||
"Share" : "Paylaş"
|
||||
"Modified" : "Dəyişdirildi",
|
||||
"Save" : "Saxla",
|
||||
"Update" : "Yenilənmə",
|
||||
"Settings" : "Quraşdırmalar"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
|
||||
19
l10n/az.json
@@ -5,26 +5,15 @@
|
||||
"No file was uploaded" : "Heç bir fayl yüklənilmədi",
|
||||
"Missing a temporary folder" : "Müvəqqəti qovluq çatışmır",
|
||||
"Cancel" : "Dayandır",
|
||||
"Close" : "Bağla",
|
||||
"Details" : "Detallar",
|
||||
"Sharing" : "Paylaşılır",
|
||||
"Tags" : "Işarələr",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "Sil",
|
||||
"Edit" : "Dəyişiklik et",
|
||||
"Download" : "Yüklə",
|
||||
"Modified" : "Dəyişdirildi",
|
||||
"Today" : "Bu gün",
|
||||
"Tomorrow" : "Sabah",
|
||||
"Save" : "Saxla",
|
||||
"Reply" : "Cavab",
|
||||
"Update" : "Yenilənmə",
|
||||
"Description" : "Açıqlanma",
|
||||
"(group)" : "(qrup)",
|
||||
"seconds ago" : "saniyələr öncə",
|
||||
"Shared with you" : "Shared with you",
|
||||
"Share" : "Paylaş"
|
||||
"Modified" : "Dəyişdirildi",
|
||||
"Save" : "Saxla",
|
||||
"Update" : "Yenilənmə",
|
||||
"Settings" : "Quraşdırmalar"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
295
l10n/bg.js
@@ -1,317 +1,36 @@
|
||||
OC.L10N.register(
|
||||
"deck",
|
||||
{
|
||||
"You have created a new board {board}" : "Създадохте ново табло {board}",
|
||||
"{user} has created a new board {board}" : "{user} създаде ново табло {board}",
|
||||
"You have deleted the board {board}" : "Изтрихте таблото {board}",
|
||||
"{user} has deleted the board {board}" : "{user} изтри таблото {board}",
|
||||
"You have restored the board {board}" : "Възстановихте таблото {board}",
|
||||
"{user} has restored the board {board}" : "{user} възстанови таблото {board}",
|
||||
"You have shared the board {board} with {acl}" : "Споделихте таблото {board} с {acl}",
|
||||
"{user} has shared the board {board} with {acl}" : "{user} сподели таблото {board} с {acl}",
|
||||
"You have removed {acl} from the board {board}" : "Премахнахте {acl} от таблото {board}",
|
||||
"{user} has removed {acl} from the board {board}" : "{user} премахна {acl} от таблото {board}",
|
||||
"You have renamed the board {before} to {board}" : "Преименувахте таблото от {before} на {board}",
|
||||
"{user} has renamed the board {before} to {board}" : "{user} преименува таблото от {before} на {board}",
|
||||
"You have archived the board {board}" : "Архивирахте таблото {board}",
|
||||
"{user} has archived the board {before}" : "{user} архивира таблото {board}",
|
||||
"You have unarchived the board {board}" : "Разархивирали сте таблото {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} е разархивирал таблото {before}",
|
||||
"You have created a new list {stack} on board {board}" : "Създадохте нов списък {stack} на таблото {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} създаде нов списък {stack} на таблото {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Преименувахте списъка {before} на {stack} на таблото {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} преименува списъка {before} на {stack} на таблото {board}",
|
||||
"You have deleted list {stack} on board {board}" : "Изтрихте списък {stack} на таблото {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} изтри списък {stack} на таблото {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Създали сте карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} създаде карта {card} в списък {stack} на таблото {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Изтрили сте карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} изтри карта {card} в списък {stack} на таблото {board}",
|
||||
"You have renamed the card {before} to {card}" : "Преименувахте картата {before} на {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} преименува картата {before} на {card}",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "Добавили сте описание към карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} добави описание към карта {card} в списък {stack} на таблото {board}",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : " Актуализирали сте описанието към карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : " {user} актуализира описанието към карта {card} в списък {stack} на таблото {board}",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "Архивирали сте карта {card} в списък {stack} на борда {board}",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} архивира карта {card} в списък {stack} на борда {board}",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "Разархивирали сте карта {card} в списък {stack} на борда {board}",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} разархивира карта {card} в списък {stack} на борда {board}",
|
||||
"You have removed the due date of card {card}" : "Премахнахте датата на падежа на картата {card}",
|
||||
"{user} has removed the due date of card {card}" : "{user} премахна датата на падежа на картата {card}",
|
||||
"You have set the due date of card {card} to {after}" : "Задали сте датата на падежа на картата {card} на {after}",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} зададе дата на падежа на картата {card} на {after}",
|
||||
"You have updated the due date of card {card} to {after}" : "Актуализирали сте датата на падежа на картата {card} на {after}",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} актуализира датата на падежа на картата {card} на {after}",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Добавихте етикет {label} към карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} добави етикет {label} към карта {card} в списък {stack} натаблото {board}",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Премахнахте етикет {label} към карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} премахна етикет {label} към карта {card} в списък {stack} на таблото {board}",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Присвоили сте {assigneduser} на карта {card} на борда {board}",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} присвои {assigneduser} на карта {card} на борда {board}",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Имате неопределен {assigneduser} на карта {card} на борда {board}",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} има неопределен {assigneduser} на карта {card} на борда {board}",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : "Преместихте картата {card} от списък {stackBefore} в {stack}",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} премести картата {card} от списък {stackBefore} в {stack}",
|
||||
"You have added the attachment {attachment} to card {card}" : "Добавихте прикачения файл {attachment} към карта {card}",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} добави прикачения файл {attachment} към карта {card}",
|
||||
"You have updated the attachment {attachment} on card {card}" : " Актуализирали сте прикачения файл {attachment} към карта {card}",
|
||||
"{user} has updated the attachment {attachment} on card {card}" : "{user} актуализира прикачения файл {attachment} към карта {card}",
|
||||
"You have deleted the attachment {attachment} from card {card}" : "Изтрихте прикачения файл {attachment} от карта {card}",
|
||||
"{user} has deleted the attachment {attachment} from card {card}" : "{user} изтри прикачения файл {attachment} към карта {card}",
|
||||
"You have restored the attachment {attachment} to card {card}" : "Възстановили сте прикачения файл {attachment} към карта {card}",
|
||||
"{user} has restored the attachment {attachment} to card {card}" : "{user} възстанови прикачения файл {attachment} към карта {card}",
|
||||
"You have commented on card {card}" : "Коментирали сте карта {card}",
|
||||
"{user} has commented on card {card}" : "{user} коментира карта {card}",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "<strong>Описанието на картата</strong> в приложението Deck/набор/ е променено",
|
||||
"Deck" : "Набор",
|
||||
"Changes in the <strong>Deck app</strong>" : "Промени в <strong>приложението Deck</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "На картата е създаден <strong>коментар</strong>",
|
||||
"Upcoming cards" : "Предстоящи карти",
|
||||
"Load more" : "Зареждане на още",
|
||||
"Personal" : "Лични",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Картата \"%s\" на \"%s\" Ви е била възложена от %s.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} е възложил картата {deck-card} на {deck-board} на Вас.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Картата \"%s\" on \"%s\" е достигнала датата на падежа си.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "Картата {deck-card} на {deck-board} е достигнала датата на падежа си.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s те спомена в коментар за “%s”",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} те спомена в коментар за {deck-card}.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Таблото \"%s\" е споделено с вас от%s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} сподели {deck-board} с Вас.",
|
||||
"Card comments" : "Коментари на карти",
|
||||
"%s on %s" : "%s на %s",
|
||||
"No data was provided to create an attachment." : "Не бяха предоставени данни за създаване на прикачен файл.",
|
||||
"Finished" : "Готово",
|
||||
"To review" : "За преглед",
|
||||
"Action needed" : "Необходимо е действие",
|
||||
"Later" : "По-късно",
|
||||
"copy" : "Копиране",
|
||||
"To do" : "Задачи",
|
||||
"Doing" : "Задачи в процес на изпълнение",
|
||||
"Done" : "Завършено",
|
||||
"Example Task 3" : "Примерна задача 3",
|
||||
"Example Task 2" : "Примерна задача 2",
|
||||
"Example Task 1" : "Примерна задача 1",
|
||||
"Done" : "Готово",
|
||||
"The file was uploaded" : "Файлът е качен",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Размерът на каченият файл надвишава максималния размер определен от upload_max_filesize в php.ini:",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Размерът на файла надвишава максималния размер определен от MAX_FILE_SIZE в HTML формата.",
|
||||
"The file was only partially uploaded" : "Файлът е качен частично",
|
||||
"No file was uploaded" : "Нито един файл не е качен",
|
||||
"Missing a temporary folder" : "Липсва временна папка",
|
||||
"Could not write file to disk" : " Файлът не можа да бъде записан на диск",
|
||||
"A PHP extension stopped the file upload" : "PHP разширение спря качването на файла",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Няма качен файл или размерът на файла надвишава максимума от %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Този коментар има повече от %s знака.\nДобавено като прикачен файл към картата с име %s.\nДостъпно на URL: %s.",
|
||||
"Card not found" : "Катртата не е намерена",
|
||||
"Path is already shared with this card" : "Пътят вече е споделен с тази карта",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Невалидна дата, форматът е различен от ГГГГ-ММ-ДД",
|
||||
"Personal planning and team project organization" : "Лично планиране и организация на екипни проекти",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck е инструмент за организация в стил kanban, насочен към лично планиране и организация на проекти за екипи, интегрирани с Nextcloud.\n\n\n- 📥 Добавете задачите си към карти и ги подредете\n- 📄 Запишете допълнителни бележки в markdown формат\n- Присвояване на етикети за още по-добра организация\n- 👥 Споделете с вашия екип, приятели или семейство\n- 📎Прикачете файлове и ги вградете във вашето описание за маркиране\n- 💬Обсъдете с вашия екип, като използвате коментари\n- ⚡ Проследявайте промените в потока от дейности\n- 🚀 Организирайте проекта си",
|
||||
"Card details" : "Подробности за картата",
|
||||
"Add board" : "Добави табло",
|
||||
"Select the board to link to a project" : "Изберете таблото, което да свържете към проект",
|
||||
"Search by board title" : "Търсене по заглавие на таблото",
|
||||
"Select board" : "Избор на табло",
|
||||
"Create a new card" : "Създаване на нова карта",
|
||||
"Select a board" : "Избор на табло",
|
||||
"Select a list" : "Избор на списък",
|
||||
"Card title" : "Заглавие на карта",
|
||||
"Cancel" : "Отказ",
|
||||
"Creating the new card …" : "Създаване на новата карта ...",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "Карта \"{card}\" беше добавена към \"{board}\"",
|
||||
"Open card" : "Отваряне на карта",
|
||||
"Close" : "Затваряне",
|
||||
"Create card" : "Създаване на карта",
|
||||
"Select a card" : "Избор на карта",
|
||||
"Select the card to link to a project" : "Изберете картата, която да свържете към проект",
|
||||
"Link to card" : "Връзка към карта",
|
||||
"File already exists" : "Файлът вече съществува",
|
||||
"A file with the name {filename} already exists." : "Вече съществува файл с името {filename}.",
|
||||
"Do you want to overwrite it?" : "Искате ли да го презапишете?",
|
||||
"Overwrite file" : "Презапиши файла",
|
||||
"Keep existing file" : "Запазване на съществуващ файл",
|
||||
"This board is read only" : "Таблото е само за четене",
|
||||
"Drop your files to upload" : "Пуснете вашите файлове, за да ги качите",
|
||||
"Add card" : "Добави карта",
|
||||
"Archived cards" : "Архивирани карти",
|
||||
"Add list" : "Добави списък",
|
||||
"List name" : "Име на списък",
|
||||
"Active filters" : "Актижни филтри",
|
||||
"Apply filter" : "Приложи филтър",
|
||||
"Filter by tag" : "Филтрирай по маркер",
|
||||
"Filter by assigned user" : "Филтриране по назначен потребител",
|
||||
"Unassigned" : "Неприсвоен",
|
||||
"Filter by due date" : "Филтриране по крайна дата",
|
||||
"Overdue" : "Просрочен",
|
||||
"Next 24 hours" : "Следващите 24 часа",
|
||||
"Next 7 days" : "Следващите 7 дни",
|
||||
"Next 30 days" : "Следващите 30 дни",
|
||||
"No due date" : "Няма крайна дата",
|
||||
"Clear filter" : "Изчстиване на филтър",
|
||||
"Hide archived cards" : "Скриване на архивирани карти",
|
||||
"Show archived cards" : "Показване на архивирани карти",
|
||||
"Toggle compact mode" : "Превключване на компактен режим",
|
||||
"Open details" : "Отваряне на подробности",
|
||||
"Details" : "Подробности",
|
||||
"Loading board" : "Зареждане на табло",
|
||||
"No lists available" : "Няма налична списъци.",
|
||||
"Create a new list to add cards to this board" : "Създайте нов списък, за да добавите карти към това табло",
|
||||
"Board not found" : "Таблото не е намерено",
|
||||
"Sharing" : "Споделяне",
|
||||
"Tags" : "Етикети",
|
||||
"Deleted items" : "Изтрити елементи",
|
||||
"Timeline" : "Времева линия",
|
||||
"Deleted lists" : "Изтрити списъци",
|
||||
"Undo" : "Отмяна",
|
||||
"Deleted cards" : "Изтрити карти",
|
||||
"Share board with a user, group or circle …" : "Споделяне на таблото с потребител, група или кръг ...",
|
||||
"Searching for users, groups and circles …" : "Търсене за потребители, групи и кръгове ...",
|
||||
"No participants found" : "Няма намерени участници",
|
||||
"Board owner" : "Собственик на табло",
|
||||
"(Group)" : "(Група)",
|
||||
"(Circle)" : "(Кръг)",
|
||||
"Can edit" : "Може да редактира",
|
||||
"Can share" : "Може да споделя",
|
||||
"Can manage" : "Може да управлява",
|
||||
"Owner" : "Собственик",
|
||||
"Delete" : "Изтриване",
|
||||
"Failed to create share with {displayName}" : "Създаването на споделяне с {displayName} не бе успешно",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Сигурни ли сте че искате да прехвърлите таблото {title} на {user}?",
|
||||
"Transfer the board." : "Прехвърлете таблото.",
|
||||
"Transfer" : "Прехвърляне",
|
||||
"The board has been transferred to {user}" : "Таблото беше прехвърлено на {user}",
|
||||
"Failed to transfer the board to {user}" : "Неуспешно прехвърляне на таблото на {user}",
|
||||
"Add a new list" : "Добавяне на нов списък",
|
||||
"Archive all cards" : "Архивира всички карти",
|
||||
"Unarchive all cards" : "Разархивиране на всички карти",
|
||||
"Delete list" : "Изтрива списък",
|
||||
"Archive all cards in this list" : "Архивира всички карти в този списък",
|
||||
"Unarchive all cards in this list" : "Разархивиране всички карти в този списък",
|
||||
"Add a new card" : "Добави нова карта",
|
||||
"Card name" : "Име на карта",
|
||||
"List deleted" : "Списъкът е изтрит",
|
||||
"Edit" : "Редакция",
|
||||
"Add a new tag" : "Добавяне на нов етикет",
|
||||
"title and color value must be provided" : "трябва да се предоставят заглавие и стойност на цвета",
|
||||
"Board name" : "Име на табло",
|
||||
"Members" : "Членове",
|
||||
"Upload new files" : "Качи нови файлове",
|
||||
"Share from Files" : "Споделяне от Файлове",
|
||||
"Pending share" : "Чакащо споделяне",
|
||||
"Add this attachment" : "Добавете този прикачен файл",
|
||||
"Show in Files" : "Показване във файлове",
|
||||
"Download" : "Изтегляне",
|
||||
"Remove attachment" : "Премахване на прикачен файл",
|
||||
"Delete Attachment" : "Изтриване на прикачен файл",
|
||||
"Restore Attachment" : "Възстановяване на прикачен файл",
|
||||
"File to share" : "Файл за споделяне",
|
||||
"Invalid path selected" : "Избран е невалиден път ",
|
||||
"Open in sidebar view" : "Отваряне в изгледа на страничната лента",
|
||||
"Open in bigger view" : "Отваря се в по-голям изглед",
|
||||
"Due date" : "Крайна дата",
|
||||
"Remove due date" : "Премахни крайната дата",
|
||||
"Description" : "Описание",
|
||||
"Attachments" : "Прикачени файлове",
|
||||
"Comments" : "Коментари",
|
||||
"Modified" : "Промяна",
|
||||
"Created" : "Създаден",
|
||||
"The title cannot be empty." : "Заглавието не може да бъде празно.",
|
||||
"No comments yet. Begin the discussion!" : "Все още няма коментари. Започнете дискусията!",
|
||||
"Failed to load comments" : "Неуспешно зареждане на коментари",
|
||||
"Assign a tag to this card…" : "Присвояване на етикет на тази карта ...",
|
||||
"Assign to users" : "Зачисляване към потребители",
|
||||
"Assign to users/groups/circles" : "Зачисляване към потребители/групи/кръгове",
|
||||
"Assign a user to this card…" : "Зачисляване на потребител на тази карта ...",
|
||||
"Due date" : "Крайна дата",
|
||||
"Set a due date" : "Задаване на крайна дата",
|
||||
"Remove due date" : "Премахни крайната дата",
|
||||
"Select Date" : "Изберете дата",
|
||||
"Today" : "Днес",
|
||||
"Tomorrow" : "Утре",
|
||||
"Next week" : "Следваща седмица",
|
||||
"Next month" : "Следващия месец",
|
||||
"Upload attachment" : "Качване",
|
||||
"Save" : "Запазване",
|
||||
"The comment cannot be empty." : "Коментарът не може да бъде празен.",
|
||||
"The comment cannot be longer than 1000 characters." : "Коментарът не може да бъде по-дълъг от 1000 знака.",
|
||||
"In reply to" : "В отговор на",
|
||||
"Cancel reply" : "Отказ на отговор",
|
||||
"Reply" : "Отговори",
|
||||
"Update" : "Обновяване",
|
||||
"Description" : "Описание",
|
||||
"(Unsaved)" : " (Незаписан)",
|
||||
"(Saving…)" : "(Записване...)",
|
||||
"Formatting help" : "Помощ за форматиране",
|
||||
"Edit description" : "Редактиране на описанието",
|
||||
"View description" : "Преглед на описанието",
|
||||
"Add Attachment" : "Добавяне на прикачен файл",
|
||||
"Write a description …" : "Напишете описание ...",
|
||||
"Choose attachment" : "Избор на прикачен файл",
|
||||
"(group)" : "(група)",
|
||||
"Todo items" : "Елементи на задача за изпълнение",
|
||||
"{count} comments, {unread} unread" : "{count} коментари, {unread} непрочетени",
|
||||
"Edit card title" : "Редактиране на заглавието на карта",
|
||||
"Assign to me" : "Зачисляване към мен",
|
||||
"Unassign myself" : "Отмяна на зачисляването към мен",
|
||||
"Move card" : "Преместване на карта",
|
||||
"Unarchive card" : "Разархивиране на карта",
|
||||
"Archive card" : "Архивиране на карта",
|
||||
"Delete card" : "Изтриване на карта",
|
||||
"Move card to another board" : "Преместване на картата на друго табло",
|
||||
"List is empty" : "Списъкът е празен",
|
||||
"Card deleted" : "Картата е изтрита",
|
||||
"seconds ago" : "преди секунди",
|
||||
"All boards" : "Всички табла",
|
||||
"Archived boards" : "Архивирани табла",
|
||||
"Shared with you" : "Споделени с вас",
|
||||
"Deck settings" : "Настройки на платформата",
|
||||
"Use bigger card view" : "Използва по-голям изглед на картата",
|
||||
"Show card ID badge" : "Показване на обозначение за самоличност на картата",
|
||||
"Show boards in calendar/tasks" : "Показване на таблата в календар / задачи",
|
||||
"Limit deck usage of groups" : "Ограничава използването на набора от групи",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Ограничаването на приложението Deck/набор/ ще блокира потребителите, които не са част от тези групи, да създават свои собствени табла. Потребителите все още ще могат да работят на таблата, които са споделени с тях.",
|
||||
"Board details" : "Подробности за табло",
|
||||
"Edit board" : "Редактиране на табло",
|
||||
"Clone board" : " Клониране на табло",
|
||||
"Unarchive board" : "Разархивиране натабло",
|
||||
"Archive board" : "Архивиране на табло",
|
||||
"Turn on due date reminders" : "Включва напомнянията за краен срок",
|
||||
"Turn off due date reminders" : "Изключва напомнянията за краен срок",
|
||||
"Due date reminders" : " Напомняния за краен срок",
|
||||
"All cards" : "Всички карти",
|
||||
"Assigned cards" : "Зачислени карти",
|
||||
"No notifications" : "Няма известия",
|
||||
"Delete board" : "Изтриване на табло",
|
||||
"Board {0} deleted" : "Табло {0} изтрито",
|
||||
"Only assigned cards" : "Само зачислените карти",
|
||||
"No reminder" : "Няма напомняне",
|
||||
"An error occurred" : "Възникна грешка",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Сигурни ли сте, че искате да изтриете таблото {title}? Това ще изтрие всички данни на това табло, включително архивираните карти.",
|
||||
"Delete the board?" : "Изтриване на таблото?",
|
||||
"Loading filtered view" : "Зареждане на филтриран изглед",
|
||||
"No due" : "Не се дължи",
|
||||
"Search for {searchQuery} in all boards" : "Търсене на {searchQuery} във всички табла",
|
||||
"No results found" : "Няма намерени резултати",
|
||||
"{stack} in {board}" : "{stack} в {board}",
|
||||
"Click to expand description" : "Кликване за разширяване на описанието",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Създаден на {created}\n* Последна промяна на {lastMod} \n* {nbAttachments} прикачени файлове \n* {nbComments} коментара",
|
||||
"{nbCards} cards" : "{nbCards} карти",
|
||||
"No upcoming cards" : "Няма предстоящи карти",
|
||||
"upcoming cards" : "предстоящи карти",
|
||||
"Due on {date}" : "Краен срок до {date}",
|
||||
"Link to a board" : "Линк към табло",
|
||||
"Link to a card" : "Линк към карта",
|
||||
"Create a card" : "Създаване на карта",
|
||||
"Message from {author} in {conversationName}" : "Съобщение от {author} в {conversationName}",
|
||||
"Something went wrong" : "Нещо се обърка",
|
||||
"Failed to upload {name}" : " Неуспешно качване на {name}",
|
||||
"Maximum file size of {size} exceeded" : "Максималният размер на файла от {size} е надвишен",
|
||||
"Error creating the share" : "Грешка при създаване на споделяне",
|
||||
"Share with a Deck card" : "Споделяне с Deck карта",
|
||||
"Share {file} with a Deck card" : "Споделяне {file} с Deck карта",
|
||||
"Share" : "Споделяне",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck е инструмент за организация в стил kanban, насочен към лично планиране и организация на проекти за екипи, интегрирани с Nextcloud.\n\n\n- 📥 Добавете задачите си към карти и ги подредете\n- 📄 Запишете допълнителни бележки в markdown формат\n- Присвояване на етикети за още по-добра организация\n- 👥 Споделете с вашия екип, приятели или семейство\n- 📎Прикачете файлове и ги вградете във вашето описание за маркиране\n- 💬Обсъдете с вашия екип, като използвате коментари\n- ⚡ Проследявайте промените в потока от дейности\n- 🚀 Организирайте проекта си",
|
||||
"Are you sure you want to transfer the board {title} for {user} ?" : "Сигурни ли сте че искате да прехвърлите таблото {title} на {user}?",
|
||||
"Transfer the board for {user} successfully" : "Успешно прехвърляне на таблото към {user} ",
|
||||
"Failed to transfer the board for {user}" : "Неуспешно прехвърляне на таблото към {user}",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Сигурни ли сте, че искате да изтриете таблото {title}? Това ще изтрие всички данни на това табло.",
|
||||
"This week" : "Тази седмица",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Сигурни ли сте че искате да прехвърлите таблото {title} на {user}?"
|
||||
"Settings" : "Настройки",
|
||||
"An error occurred" : "Възникна грешка"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
|
||||
295
l10n/bg.json
@@ -1,315 +1,34 @@
|
||||
{ "translations": {
|
||||
"You have created a new board {board}" : "Създадохте ново табло {board}",
|
||||
"{user} has created a new board {board}" : "{user} създаде ново табло {board}",
|
||||
"You have deleted the board {board}" : "Изтрихте таблото {board}",
|
||||
"{user} has deleted the board {board}" : "{user} изтри таблото {board}",
|
||||
"You have restored the board {board}" : "Възстановихте таблото {board}",
|
||||
"{user} has restored the board {board}" : "{user} възстанови таблото {board}",
|
||||
"You have shared the board {board} with {acl}" : "Споделихте таблото {board} с {acl}",
|
||||
"{user} has shared the board {board} with {acl}" : "{user} сподели таблото {board} с {acl}",
|
||||
"You have removed {acl} from the board {board}" : "Премахнахте {acl} от таблото {board}",
|
||||
"{user} has removed {acl} from the board {board}" : "{user} премахна {acl} от таблото {board}",
|
||||
"You have renamed the board {before} to {board}" : "Преименувахте таблото от {before} на {board}",
|
||||
"{user} has renamed the board {before} to {board}" : "{user} преименува таблото от {before} на {board}",
|
||||
"You have archived the board {board}" : "Архивирахте таблото {board}",
|
||||
"{user} has archived the board {before}" : "{user} архивира таблото {board}",
|
||||
"You have unarchived the board {board}" : "Разархивирали сте таблото {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} е разархивирал таблото {before}",
|
||||
"You have created a new list {stack} on board {board}" : "Създадохте нов списък {stack} на таблото {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} създаде нов списък {stack} на таблото {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Преименувахте списъка {before} на {stack} на таблото {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} преименува списъка {before} на {stack} на таблото {board}",
|
||||
"You have deleted list {stack} on board {board}" : "Изтрихте списък {stack} на таблото {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} изтри списък {stack} на таблото {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Създали сте карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} създаде карта {card} в списък {stack} на таблото {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Изтрили сте карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} изтри карта {card} в списък {stack} на таблото {board}",
|
||||
"You have renamed the card {before} to {card}" : "Преименувахте картата {before} на {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} преименува картата {before} на {card}",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "Добавили сте описание към карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} добави описание към карта {card} в списък {stack} на таблото {board}",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : " Актуализирали сте описанието към карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : " {user} актуализира описанието към карта {card} в списък {stack} на таблото {board}",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "Архивирали сте карта {card} в списък {stack} на борда {board}",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} архивира карта {card} в списък {stack} на борда {board}",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "Разархивирали сте карта {card} в списък {stack} на борда {board}",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} разархивира карта {card} в списък {stack} на борда {board}",
|
||||
"You have removed the due date of card {card}" : "Премахнахте датата на падежа на картата {card}",
|
||||
"{user} has removed the due date of card {card}" : "{user} премахна датата на падежа на картата {card}",
|
||||
"You have set the due date of card {card} to {after}" : "Задали сте датата на падежа на картата {card} на {after}",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} зададе дата на падежа на картата {card} на {after}",
|
||||
"You have updated the due date of card {card} to {after}" : "Актуализирали сте датата на падежа на картата {card} на {after}",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} актуализира датата на падежа на картата {card} на {after}",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Добавихте етикет {label} към карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} добави етикет {label} към карта {card} в списък {stack} натаблото {board}",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Премахнахте етикет {label} към карта {card} в списък {stack} на таблото {board}",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} премахна етикет {label} към карта {card} в списък {stack} на таблото {board}",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Присвоили сте {assigneduser} на карта {card} на борда {board}",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} присвои {assigneduser} на карта {card} на борда {board}",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Имате неопределен {assigneduser} на карта {card} на борда {board}",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} има неопределен {assigneduser} на карта {card} на борда {board}",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : "Преместихте картата {card} от списък {stackBefore} в {stack}",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} премести картата {card} от списък {stackBefore} в {stack}",
|
||||
"You have added the attachment {attachment} to card {card}" : "Добавихте прикачения файл {attachment} към карта {card}",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} добави прикачения файл {attachment} към карта {card}",
|
||||
"You have updated the attachment {attachment} on card {card}" : " Актуализирали сте прикачения файл {attachment} към карта {card}",
|
||||
"{user} has updated the attachment {attachment} on card {card}" : "{user} актуализира прикачения файл {attachment} към карта {card}",
|
||||
"You have deleted the attachment {attachment} from card {card}" : "Изтрихте прикачения файл {attachment} от карта {card}",
|
||||
"{user} has deleted the attachment {attachment} from card {card}" : "{user} изтри прикачения файл {attachment} към карта {card}",
|
||||
"You have restored the attachment {attachment} to card {card}" : "Възстановили сте прикачения файл {attachment} към карта {card}",
|
||||
"{user} has restored the attachment {attachment} to card {card}" : "{user} възстанови прикачения файл {attachment} към карта {card}",
|
||||
"You have commented on card {card}" : "Коментирали сте карта {card}",
|
||||
"{user} has commented on card {card}" : "{user} коментира карта {card}",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "<strong>Описанието на картата</strong> в приложението Deck/набор/ е променено",
|
||||
"Deck" : "Набор",
|
||||
"Changes in the <strong>Deck app</strong>" : "Промени в <strong>приложението Deck</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "На картата е създаден <strong>коментар</strong>",
|
||||
"Upcoming cards" : "Предстоящи карти",
|
||||
"Load more" : "Зареждане на още",
|
||||
"Personal" : "Лични",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Картата \"%s\" на \"%s\" Ви е била възложена от %s.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} е възложил картата {deck-card} на {deck-board} на Вас.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Картата \"%s\" on \"%s\" е достигнала датата на падежа си.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "Картата {deck-card} на {deck-board} е достигнала датата на падежа си.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s те спомена в коментар за “%s”",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} те спомена в коментар за {deck-card}.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Таблото \"%s\" е споделено с вас от%s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} сподели {deck-board} с Вас.",
|
||||
"Card comments" : "Коментари на карти",
|
||||
"%s on %s" : "%s на %s",
|
||||
"No data was provided to create an attachment." : "Не бяха предоставени данни за създаване на прикачен файл.",
|
||||
"Finished" : "Готово",
|
||||
"To review" : "За преглед",
|
||||
"Action needed" : "Необходимо е действие",
|
||||
"Later" : "По-късно",
|
||||
"copy" : "Копиране",
|
||||
"To do" : "Задачи",
|
||||
"Doing" : "Задачи в процес на изпълнение",
|
||||
"Done" : "Завършено",
|
||||
"Example Task 3" : "Примерна задача 3",
|
||||
"Example Task 2" : "Примерна задача 2",
|
||||
"Example Task 1" : "Примерна задача 1",
|
||||
"Done" : "Готово",
|
||||
"The file was uploaded" : "Файлът е качен",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Размерът на каченият файл надвишава максималния размер определен от upload_max_filesize в php.ini:",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Размерът на файла надвишава максималния размер определен от MAX_FILE_SIZE в HTML формата.",
|
||||
"The file was only partially uploaded" : "Файлът е качен частично",
|
||||
"No file was uploaded" : "Нито един файл не е качен",
|
||||
"Missing a temporary folder" : "Липсва временна папка",
|
||||
"Could not write file to disk" : " Файлът не можа да бъде записан на диск",
|
||||
"A PHP extension stopped the file upload" : "PHP разширение спря качването на файла",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Няма качен файл или размерът на файла надвишава максимума от %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Този коментар има повече от %s знака.\nДобавено като прикачен файл към картата с име %s.\nДостъпно на URL: %s.",
|
||||
"Card not found" : "Катртата не е намерена",
|
||||
"Path is already shared with this card" : "Пътят вече е споделен с тази карта",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Невалидна дата, форматът е различен от ГГГГ-ММ-ДД",
|
||||
"Personal planning and team project organization" : "Лично планиране и организация на екипни проекти",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck е инструмент за организация в стил kanban, насочен към лично планиране и организация на проекти за екипи, интегрирани с Nextcloud.\n\n\n- 📥 Добавете задачите си към карти и ги подредете\n- 📄 Запишете допълнителни бележки в markdown формат\n- Присвояване на етикети за още по-добра организация\n- 👥 Споделете с вашия екип, приятели или семейство\n- 📎Прикачете файлове и ги вградете във вашето описание за маркиране\n- 💬Обсъдете с вашия екип, като използвате коментари\n- ⚡ Проследявайте промените в потока от дейности\n- 🚀 Организирайте проекта си",
|
||||
"Card details" : "Подробности за картата",
|
||||
"Add board" : "Добави табло",
|
||||
"Select the board to link to a project" : "Изберете таблото, което да свържете към проект",
|
||||
"Search by board title" : "Търсене по заглавие на таблото",
|
||||
"Select board" : "Избор на табло",
|
||||
"Create a new card" : "Създаване на нова карта",
|
||||
"Select a board" : "Избор на табло",
|
||||
"Select a list" : "Избор на списък",
|
||||
"Card title" : "Заглавие на карта",
|
||||
"Cancel" : "Отказ",
|
||||
"Creating the new card …" : "Създаване на новата карта ...",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "Карта \"{card}\" беше добавена към \"{board}\"",
|
||||
"Open card" : "Отваряне на карта",
|
||||
"Close" : "Затваряне",
|
||||
"Create card" : "Създаване на карта",
|
||||
"Select a card" : "Избор на карта",
|
||||
"Select the card to link to a project" : "Изберете картата, която да свържете към проект",
|
||||
"Link to card" : "Връзка към карта",
|
||||
"File already exists" : "Файлът вече съществува",
|
||||
"A file with the name {filename} already exists." : "Вече съществува файл с името {filename}.",
|
||||
"Do you want to overwrite it?" : "Искате ли да го презапишете?",
|
||||
"Overwrite file" : "Презапиши файла",
|
||||
"Keep existing file" : "Запазване на съществуващ файл",
|
||||
"This board is read only" : "Таблото е само за четене",
|
||||
"Drop your files to upload" : "Пуснете вашите файлове, за да ги качите",
|
||||
"Add card" : "Добави карта",
|
||||
"Archived cards" : "Архивирани карти",
|
||||
"Add list" : "Добави списък",
|
||||
"List name" : "Име на списък",
|
||||
"Active filters" : "Актижни филтри",
|
||||
"Apply filter" : "Приложи филтър",
|
||||
"Filter by tag" : "Филтрирай по маркер",
|
||||
"Filter by assigned user" : "Филтриране по назначен потребител",
|
||||
"Unassigned" : "Неприсвоен",
|
||||
"Filter by due date" : "Филтриране по крайна дата",
|
||||
"Overdue" : "Просрочен",
|
||||
"Next 24 hours" : "Следващите 24 часа",
|
||||
"Next 7 days" : "Следващите 7 дни",
|
||||
"Next 30 days" : "Следващите 30 дни",
|
||||
"No due date" : "Няма крайна дата",
|
||||
"Clear filter" : "Изчстиване на филтър",
|
||||
"Hide archived cards" : "Скриване на архивирани карти",
|
||||
"Show archived cards" : "Показване на архивирани карти",
|
||||
"Toggle compact mode" : "Превключване на компактен режим",
|
||||
"Open details" : "Отваряне на подробности",
|
||||
"Details" : "Подробности",
|
||||
"Loading board" : "Зареждане на табло",
|
||||
"No lists available" : "Няма налична списъци.",
|
||||
"Create a new list to add cards to this board" : "Създайте нов списък, за да добавите карти към това табло",
|
||||
"Board not found" : "Таблото не е намерено",
|
||||
"Sharing" : "Споделяне",
|
||||
"Tags" : "Етикети",
|
||||
"Deleted items" : "Изтрити елементи",
|
||||
"Timeline" : "Времева линия",
|
||||
"Deleted lists" : "Изтрити списъци",
|
||||
"Undo" : "Отмяна",
|
||||
"Deleted cards" : "Изтрити карти",
|
||||
"Share board with a user, group or circle …" : "Споделяне на таблото с потребител, група или кръг ...",
|
||||
"Searching for users, groups and circles …" : "Търсене за потребители, групи и кръгове ...",
|
||||
"No participants found" : "Няма намерени участници",
|
||||
"Board owner" : "Собственик на табло",
|
||||
"(Group)" : "(Група)",
|
||||
"(Circle)" : "(Кръг)",
|
||||
"Can edit" : "Може да редактира",
|
||||
"Can share" : "Може да споделя",
|
||||
"Can manage" : "Може да управлява",
|
||||
"Owner" : "Собственик",
|
||||
"Delete" : "Изтриване",
|
||||
"Failed to create share with {displayName}" : "Създаването на споделяне с {displayName} не бе успешно",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Сигурни ли сте че искате да прехвърлите таблото {title} на {user}?",
|
||||
"Transfer the board." : "Прехвърлете таблото.",
|
||||
"Transfer" : "Прехвърляне",
|
||||
"The board has been transferred to {user}" : "Таблото беше прехвърлено на {user}",
|
||||
"Failed to transfer the board to {user}" : "Неуспешно прехвърляне на таблото на {user}",
|
||||
"Add a new list" : "Добавяне на нов списък",
|
||||
"Archive all cards" : "Архивира всички карти",
|
||||
"Unarchive all cards" : "Разархивиране на всички карти",
|
||||
"Delete list" : "Изтрива списък",
|
||||
"Archive all cards in this list" : "Архивира всички карти в този списък",
|
||||
"Unarchive all cards in this list" : "Разархивиране всички карти в този списък",
|
||||
"Add a new card" : "Добави нова карта",
|
||||
"Card name" : "Име на карта",
|
||||
"List deleted" : "Списъкът е изтрит",
|
||||
"Edit" : "Редакция",
|
||||
"Add a new tag" : "Добавяне на нов етикет",
|
||||
"title and color value must be provided" : "трябва да се предоставят заглавие и стойност на цвета",
|
||||
"Board name" : "Име на табло",
|
||||
"Members" : "Членове",
|
||||
"Upload new files" : "Качи нови файлове",
|
||||
"Share from Files" : "Споделяне от Файлове",
|
||||
"Pending share" : "Чакащо споделяне",
|
||||
"Add this attachment" : "Добавете този прикачен файл",
|
||||
"Show in Files" : "Показване във файлове",
|
||||
"Download" : "Изтегляне",
|
||||
"Remove attachment" : "Премахване на прикачен файл",
|
||||
"Delete Attachment" : "Изтриване на прикачен файл",
|
||||
"Restore Attachment" : "Възстановяване на прикачен файл",
|
||||
"File to share" : "Файл за споделяне",
|
||||
"Invalid path selected" : "Избран е невалиден път ",
|
||||
"Open in sidebar view" : "Отваряне в изгледа на страничната лента",
|
||||
"Open in bigger view" : "Отваря се в по-голям изглед",
|
||||
"Due date" : "Крайна дата",
|
||||
"Remove due date" : "Премахни крайната дата",
|
||||
"Description" : "Описание",
|
||||
"Attachments" : "Прикачени файлове",
|
||||
"Comments" : "Коментари",
|
||||
"Modified" : "Промяна",
|
||||
"Created" : "Създаден",
|
||||
"The title cannot be empty." : "Заглавието не може да бъде празно.",
|
||||
"No comments yet. Begin the discussion!" : "Все още няма коментари. Започнете дискусията!",
|
||||
"Failed to load comments" : "Неуспешно зареждане на коментари",
|
||||
"Assign a tag to this card…" : "Присвояване на етикет на тази карта ...",
|
||||
"Assign to users" : "Зачисляване към потребители",
|
||||
"Assign to users/groups/circles" : "Зачисляване към потребители/групи/кръгове",
|
||||
"Assign a user to this card…" : "Зачисляване на потребител на тази карта ...",
|
||||
"Due date" : "Крайна дата",
|
||||
"Set a due date" : "Задаване на крайна дата",
|
||||
"Remove due date" : "Премахни крайната дата",
|
||||
"Select Date" : "Изберете дата",
|
||||
"Today" : "Днес",
|
||||
"Tomorrow" : "Утре",
|
||||
"Next week" : "Следваща седмица",
|
||||
"Next month" : "Следващия месец",
|
||||
"Upload attachment" : "Качване",
|
||||
"Save" : "Запазване",
|
||||
"The comment cannot be empty." : "Коментарът не може да бъде празен.",
|
||||
"The comment cannot be longer than 1000 characters." : "Коментарът не може да бъде по-дълъг от 1000 знака.",
|
||||
"In reply to" : "В отговор на",
|
||||
"Cancel reply" : "Отказ на отговор",
|
||||
"Reply" : "Отговори",
|
||||
"Update" : "Обновяване",
|
||||
"Description" : "Описание",
|
||||
"(Unsaved)" : " (Незаписан)",
|
||||
"(Saving…)" : "(Записване...)",
|
||||
"Formatting help" : "Помощ за форматиране",
|
||||
"Edit description" : "Редактиране на описанието",
|
||||
"View description" : "Преглед на описанието",
|
||||
"Add Attachment" : "Добавяне на прикачен файл",
|
||||
"Write a description …" : "Напишете описание ...",
|
||||
"Choose attachment" : "Избор на прикачен файл",
|
||||
"(group)" : "(група)",
|
||||
"Todo items" : "Елементи на задача за изпълнение",
|
||||
"{count} comments, {unread} unread" : "{count} коментари, {unread} непрочетени",
|
||||
"Edit card title" : "Редактиране на заглавието на карта",
|
||||
"Assign to me" : "Зачисляване към мен",
|
||||
"Unassign myself" : "Отмяна на зачисляването към мен",
|
||||
"Move card" : "Преместване на карта",
|
||||
"Unarchive card" : "Разархивиране на карта",
|
||||
"Archive card" : "Архивиране на карта",
|
||||
"Delete card" : "Изтриване на карта",
|
||||
"Move card to another board" : "Преместване на картата на друго табло",
|
||||
"List is empty" : "Списъкът е празен",
|
||||
"Card deleted" : "Картата е изтрита",
|
||||
"seconds ago" : "преди секунди",
|
||||
"All boards" : "Всички табла",
|
||||
"Archived boards" : "Архивирани табла",
|
||||
"Shared with you" : "Споделени с вас",
|
||||
"Deck settings" : "Настройки на платформата",
|
||||
"Use bigger card view" : "Използва по-голям изглед на картата",
|
||||
"Show card ID badge" : "Показване на обозначение за самоличност на картата",
|
||||
"Show boards in calendar/tasks" : "Показване на таблата в календар / задачи",
|
||||
"Limit deck usage of groups" : "Ограничава използването на набора от групи",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Ограничаването на приложението Deck/набор/ ще блокира потребителите, които не са част от тези групи, да създават свои собствени табла. Потребителите все още ще могат да работят на таблата, които са споделени с тях.",
|
||||
"Board details" : "Подробности за табло",
|
||||
"Edit board" : "Редактиране на табло",
|
||||
"Clone board" : " Клониране на табло",
|
||||
"Unarchive board" : "Разархивиране натабло",
|
||||
"Archive board" : "Архивиране на табло",
|
||||
"Turn on due date reminders" : "Включва напомнянията за краен срок",
|
||||
"Turn off due date reminders" : "Изключва напомнянията за краен срок",
|
||||
"Due date reminders" : " Напомняния за краен срок",
|
||||
"All cards" : "Всички карти",
|
||||
"Assigned cards" : "Зачислени карти",
|
||||
"No notifications" : "Няма известия",
|
||||
"Delete board" : "Изтриване на табло",
|
||||
"Board {0} deleted" : "Табло {0} изтрито",
|
||||
"Only assigned cards" : "Само зачислените карти",
|
||||
"No reminder" : "Няма напомняне",
|
||||
"An error occurred" : "Възникна грешка",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Сигурни ли сте, че искате да изтриете таблото {title}? Това ще изтрие всички данни на това табло, включително архивираните карти.",
|
||||
"Delete the board?" : "Изтриване на таблото?",
|
||||
"Loading filtered view" : "Зареждане на филтриран изглед",
|
||||
"No due" : "Не се дължи",
|
||||
"Search for {searchQuery} in all boards" : "Търсене на {searchQuery} във всички табла",
|
||||
"No results found" : "Няма намерени резултати",
|
||||
"{stack} in {board}" : "{stack} в {board}",
|
||||
"Click to expand description" : "Кликване за разширяване на описанието",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Създаден на {created}\n* Последна промяна на {lastMod} \n* {nbAttachments} прикачени файлове \n* {nbComments} коментара",
|
||||
"{nbCards} cards" : "{nbCards} карти",
|
||||
"No upcoming cards" : "Няма предстоящи карти",
|
||||
"upcoming cards" : "предстоящи карти",
|
||||
"Due on {date}" : "Краен срок до {date}",
|
||||
"Link to a board" : "Линк към табло",
|
||||
"Link to a card" : "Линк към карта",
|
||||
"Create a card" : "Създаване на карта",
|
||||
"Message from {author} in {conversationName}" : "Съобщение от {author} в {conversationName}",
|
||||
"Something went wrong" : "Нещо се обърка",
|
||||
"Failed to upload {name}" : " Неуспешно качване на {name}",
|
||||
"Maximum file size of {size} exceeded" : "Максималният размер на файла от {size} е надвишен",
|
||||
"Error creating the share" : "Грешка при създаване на споделяне",
|
||||
"Share with a Deck card" : "Споделяне с Deck карта",
|
||||
"Share {file} with a Deck card" : "Споделяне {file} с Deck карта",
|
||||
"Share" : "Споделяне",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck е инструмент за организация в стил kanban, насочен към лично планиране и организация на проекти за екипи, интегрирани с Nextcloud.\n\n\n- 📥 Добавете задачите си към карти и ги подредете\n- 📄 Запишете допълнителни бележки в markdown формат\n- Присвояване на етикети за още по-добра организация\n- 👥 Споделете с вашия екип, приятели или семейство\n- 📎Прикачете файлове и ги вградете във вашето описание за маркиране\n- 💬Обсъдете с вашия екип, като използвате коментари\n- ⚡ Проследявайте промените в потока от дейности\n- 🚀 Организирайте проекта си",
|
||||
"Are you sure you want to transfer the board {title} for {user} ?" : "Сигурни ли сте че искате да прехвърлите таблото {title} на {user}?",
|
||||
"Transfer the board for {user} successfully" : "Успешно прехвърляне на таблото към {user} ",
|
||||
"Failed to transfer the board for {user}" : "Неуспешно прехвърляне на таблото към {user}",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Сигурни ли сте, че искате да изтриете таблото {title}? Това ще изтрие всички данни на това табло.",
|
||||
"This week" : "Тази седмица",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Сигурни ли сте че искате да прехвърлите таблото {title} на {user}?"
|
||||
"Settings" : "Настройки",
|
||||
"An error occurred" : "Възникна грешка"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
@@ -7,26 +7,15 @@ OC.L10N.register(
|
||||
"No file was uploaded" : "কোন ফাইল আপলোড করা হয় নি",
|
||||
"Missing a temporary folder" : "অস্থায়ী ফোল্ডারটি হারানো গিয়েছে",
|
||||
"Cancel" : "বাতির",
|
||||
"Close" : "বন্ধ",
|
||||
"Details" : "বিসতারিত",
|
||||
"Sharing" : "ভাগাভাগিরত",
|
||||
"Tags" : "ট্যাগ",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "মুছে",
|
||||
"Edit" : "সম্পাদনা",
|
||||
"Download" : "ডাউনলোড",
|
||||
"Modified" : "পরিবর্তিত",
|
||||
"Today" : "আজ",
|
||||
"Tomorrow" : "আগামীকাল",
|
||||
"Save" : "সংরক্ষণ",
|
||||
"Reply" : "জবাব",
|
||||
"Update" : "পরিবর্ধন",
|
||||
"Description" : "বিবরণ",
|
||||
"(group)" : "(গোষ্ঠি)",
|
||||
"seconds ago" : "সেকেন্ড পূর্বে",
|
||||
"Shared with you" : "Shared with you",
|
||||
"Share" : "ভাগাভাগি কর"
|
||||
"Modified" : "পরিবর্তিত",
|
||||
"Save" : "সংরক্ষণ",
|
||||
"Update" : "পরিবর্ধন",
|
||||
"Settings" : "সেটিংস"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
|
||||
@@ -5,26 +5,15 @@
|
||||
"No file was uploaded" : "কোন ফাইল আপলোড করা হয় নি",
|
||||
"Missing a temporary folder" : "অস্থায়ী ফোল্ডারটি হারানো গিয়েছে",
|
||||
"Cancel" : "বাতির",
|
||||
"Close" : "বন্ধ",
|
||||
"Details" : "বিসতারিত",
|
||||
"Sharing" : "ভাগাভাগিরত",
|
||||
"Tags" : "ট্যাগ",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "মুছে",
|
||||
"Edit" : "সম্পাদনা",
|
||||
"Download" : "ডাউনলোড",
|
||||
"Modified" : "পরিবর্তিত",
|
||||
"Today" : "আজ",
|
||||
"Tomorrow" : "আগামীকাল",
|
||||
"Save" : "সংরক্ষণ",
|
||||
"Reply" : "জবাব",
|
||||
"Update" : "পরিবর্ধন",
|
||||
"Description" : "বিবরণ",
|
||||
"(group)" : "(গোষ্ঠি)",
|
||||
"seconds ago" : "সেকেন্ড পূর্বে",
|
||||
"Shared with you" : "Shared with you",
|
||||
"Share" : "ভাগাভাগি কর"
|
||||
"Modified" : "পরিবর্তিত",
|
||||
"Save" : "সংরক্ষণ",
|
||||
"Update" : "পরিবর্ধন",
|
||||
"Settings" : "সেটিংস"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
43
l10n/br.js
@@ -1,43 +0,0 @@
|
||||
OC.L10N.register(
|
||||
"deck",
|
||||
{
|
||||
"Personal" : "Personel",
|
||||
"Finished" : "Achuet",
|
||||
"copy" : "eil",
|
||||
"Done" : "Graet",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Deizat fall, stumm an deizat a zo ret bezhañ BBBB-MM-DD",
|
||||
"Cancel" : "Arrest",
|
||||
"Close" : "Seriñ",
|
||||
"Drop your files to upload" : "Laoskit ho restroù evit pellkas",
|
||||
"Details" : "Munudoù",
|
||||
"Sharing" : "Rannan",
|
||||
"Tags" : "Klavioù",
|
||||
"Can edit" : "Posuple eo embann",
|
||||
"Can share" : "Galout a ra rannañ",
|
||||
"Owner" : "Perc'henner",
|
||||
"Delete" : "Dilemel",
|
||||
"Transfer" : "Treuzkas",
|
||||
"Edit" : "Cheñch",
|
||||
"Upload new files" : "Pelkas ur restr nevez",
|
||||
"Share from Files" : "Rannañ diouzh Restroù",
|
||||
"Download" : "Pellgargañ",
|
||||
"File to share" : "Restr da rannañ",
|
||||
"Invalid path selected" : "An hent dibabet n'eus ket anezhañ",
|
||||
"Comments" : "Displegadennoù",
|
||||
"Modified" : "Cheñchet",
|
||||
"Today" : "Hiziv",
|
||||
"Tomorrow" : "Warc'hoaz",
|
||||
"Next week" : "Sizhun a zeu",
|
||||
"Next month" : "Miz a zeu",
|
||||
"Save" : "Enrollañ",
|
||||
"Reply" : "Respont",
|
||||
"Update" : "Adnevesaat",
|
||||
"Description" : "Diskrivadur",
|
||||
"(group)" : "(strollad)",
|
||||
"seconds ago" : "eilenn zo",
|
||||
"Shared with you" : "Rannet ganeoc'h",
|
||||
"No notifications" : "Kemenaden ebet",
|
||||
"Share" : "Rannan",
|
||||
"This week" : "Er sizhun-mañ"
|
||||
},
|
||||
"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);");
|
||||
41
l10n/br.json
@@ -1,41 +0,0 @@
|
||||
{ "translations": {
|
||||
"Personal" : "Personel",
|
||||
"Finished" : "Achuet",
|
||||
"copy" : "eil",
|
||||
"Done" : "Graet",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Deizat fall, stumm an deizat a zo ret bezhañ BBBB-MM-DD",
|
||||
"Cancel" : "Arrest",
|
||||
"Close" : "Seriñ",
|
||||
"Drop your files to upload" : "Laoskit ho restroù evit pellkas",
|
||||
"Details" : "Munudoù",
|
||||
"Sharing" : "Rannan",
|
||||
"Tags" : "Klavioù",
|
||||
"Can edit" : "Posuple eo embann",
|
||||
"Can share" : "Galout a ra rannañ",
|
||||
"Owner" : "Perc'henner",
|
||||
"Delete" : "Dilemel",
|
||||
"Transfer" : "Treuzkas",
|
||||
"Edit" : "Cheñch",
|
||||
"Upload new files" : "Pelkas ur restr nevez",
|
||||
"Share from Files" : "Rannañ diouzh Restroù",
|
||||
"Download" : "Pellgargañ",
|
||||
"File to share" : "Restr da rannañ",
|
||||
"Invalid path selected" : "An hent dibabet n'eus ket anezhañ",
|
||||
"Comments" : "Displegadennoù",
|
||||
"Modified" : "Cheñchet",
|
||||
"Today" : "Hiziv",
|
||||
"Tomorrow" : "Warc'hoaz",
|
||||
"Next week" : "Sizhun a zeu",
|
||||
"Next month" : "Miz a zeu",
|
||||
"Save" : "Enrollañ",
|
||||
"Reply" : "Respont",
|
||||
"Update" : "Adnevesaat",
|
||||
"Description" : "Diskrivadur",
|
||||
"(group)" : "(strollad)",
|
||||
"seconds ago" : "eilenn zo",
|
||||
"Shared with you" : "Rannet ganeoc'h",
|
||||
"No notifications" : "Kemenaden ebet",
|
||||
"Share" : "Rannan",
|
||||
"This week" : "Er sizhun-mañ"
|
||||
},"pluralForm" :"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"
|
||||
}
|
||||
12
l10n/bs.js
@@ -7,24 +7,16 @@ OC.L10N.register(
|
||||
"No file was uploaded" : "Nijedna datoteka nije učitana.",
|
||||
"Missing a temporary folder" : "Nedostaje privremeni direktorij.",
|
||||
"Cancel" : "Otkaži",
|
||||
"Close" : "Zatvori",
|
||||
"Sharing" : "Dijeljenje",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Vlasnik",
|
||||
"Delete" : "Obriši",
|
||||
"Edit" : "Izmjeni",
|
||||
"Members" : "Članovi",
|
||||
"Download" : "Preuzmi",
|
||||
"Description" : "Opis",
|
||||
"Comments" : "Komentari",
|
||||
"Modified" : "Izmijenjeno",
|
||||
"Today" : "Danas",
|
||||
"Tomorrow" : "Sutra",
|
||||
"Save" : "Spremi",
|
||||
"Update" : "Ažuriraj",
|
||||
"Description" : "Opis",
|
||||
"Shared with you" : "Shared with you",
|
||||
"Maximum file size of {size} exceeded" : "Maksimalna veličina datoteke prekoračena",
|
||||
"Share" : "Podjeli"
|
||||
"Settings" : "Podešavanje"
|
||||
},
|
||||
"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);");
|
||||
|
||||
12
l10n/bs.json
@@ -5,24 +5,16 @@
|
||||
"No file was uploaded" : "Nijedna datoteka nije učitana.",
|
||||
"Missing a temporary folder" : "Nedostaje privremeni direktorij.",
|
||||
"Cancel" : "Otkaži",
|
||||
"Close" : "Zatvori",
|
||||
"Sharing" : "Dijeljenje",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Vlasnik",
|
||||
"Delete" : "Obriši",
|
||||
"Edit" : "Izmjeni",
|
||||
"Members" : "Članovi",
|
||||
"Download" : "Preuzmi",
|
||||
"Description" : "Opis",
|
||||
"Comments" : "Komentari",
|
||||
"Modified" : "Izmijenjeno",
|
||||
"Today" : "Danas",
|
||||
"Tomorrow" : "Sutra",
|
||||
"Save" : "Spremi",
|
||||
"Update" : "Ažuriraj",
|
||||
"Description" : "Opis",
|
||||
"Shared with you" : "Shared with you",
|
||||
"Maximum file size of {size} exceeded" : "Maksimalna veličina datoteke prekoračena",
|
||||
"Share" : "Podjeli"
|
||||
"Settings" : "Podešavanje"
|
||||
},"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);"
|
||||
}
|
||||
278
l10n/ca.js
@@ -17,298 +17,130 @@ OC.L10N.register(
|
||||
"{user} has archived the board {before}" : "{user} ha arxivat el tauler {before}",
|
||||
"You have unarchived the board {board}" : "Heu desarxivat el tauler {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} ha desarxivat el tauler {before}",
|
||||
"You have created a new list {stack} on board {board}" : "Heu creat una llista nova {stack} al tauler {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} ha creat una nova llista {stack} al tauler {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Heu canviat el nom de la llista {before} a {stack} al tauler {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} ha canviat el nom de la llista {before} a {stack} al tauler {board}",
|
||||
"You have deleted list {stack} on board {board}" : "Heu suprimit la llista {stack} al tauler {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} ha suprimit la llista {stack} al tauler {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Heu creat la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} ha creat la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Heu suprimit la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} ha suprimit la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have created a new stack {stack} on board {board}" : "Heu creat una nova pila {stack} al tauler {board}",
|
||||
"{user} has created a new stack {stack} on board {board}" : "{user} ha creat una nova pila {stack} al tauler {board}",
|
||||
"You have renamed stack {before} to {stack} on board {board}" : "Heu reanomenat la pila {before} a {stack} al tauler {board}",
|
||||
"{user} has renamed stack {before} to {stack} on board {board}" : "{user} ha reanomenat la pila {before} a {stack} al tauler {board}",
|
||||
"You have deleted stack {stack} on board {board}" : "Heu suprimit la pila {stack} al tauler {board}",
|
||||
"{user} has deleted stack {stack} on board {board}" : "{user} ha suprimit la pila {stack} al tauler {board}",
|
||||
"You have created card {card} in stack {stack} on board {board}" : "Heu creat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has created card {card} in stack {stack} on board {board}" : "{user} ha creat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have deleted card {card} in stack {stack} on board {board}" : "Heu suprimit la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has deleted card {card} in stack {stack} on board {board}" : "{user} ha suprimit la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have renamed the card {before} to {card}" : "Heu reanomenat la targeta {before} a {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} ha reanomenat la targeta {before} a {card}",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "Heu afegit una descripció a la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} ha afegit una descripció a la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "Heu actualitzat la descripció de la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} ha actualitzat la descripció de la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "Teniu la targeta arxivada {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} té la targeta arxivada {card} a la llista {stack} al tauler {board}",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "Teniu una targeta no-arxchivada {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} té una targeta no-arxivada {card} a la llista {stack} al tauler {board}",
|
||||
"You have added a description to card {card} in stack {stack} on board {board}" : "Heu afegit una descripció a la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has added a description to card {card} in stack {stack} on board {board}" : "{user} ha afegit una descripció a la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have updated the description of card {card} in stack {stack} on board {board}" : "Heu actualitzat la descripció de la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has updated the description of the card {card} in stack {stack} on board {board}" : "{user} ha actualitzat la descripció de la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have archived card {card} in stack {stack} on board {board}" : "Heu arxivat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has archived card {card} in stack {stack} on board {board}" : "{user} ha arxivat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have unarchived card {card} in stack {stack} on board {board}" : "Heu desarxivat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has unarchived card {card} in stack {stack} on board {board}" : "{user} ha arxivat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have removed the due date of card {card}" : "Heu suprimit la data de venciment de la targeta {targeta}",
|
||||
"{user} has removed the due date of card {card}" : "{user} ha suprimit la data de venciment de la targeta {targeta}",
|
||||
"You have set the due date of card {card} to {after}" : "Heu establert la data de venciment de la targeta {card} a {after}",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} ha establert la data de venciment de la targeta {card} a {after}",
|
||||
"You have updated the due date of card {card} to {after}" : "Heu actualitzat la data de venciment de la targeta {card} a {after}",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} ha actualitzat la data de venciment de la targeta {card} a {after}",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Heu afegit l'etiqueta {label} a la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} ha afegit l'etiqueta {label} a la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Heu eliminat l'etiqueta {label} de la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} ha eliminat l'etiqueta {label} de la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have added the tag {label} to card {card} in stack {stack} on board {board}" : "Heu afegit l'etiqueta {label} a la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has added the tag {label} to card {card} in stack {stack} on board {board}" : "{user} ha afegit l'etiqueta {label} a la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have removed the tag {label} from card {card} in stack {stack} on board {board}" : "Heu suprimit l'etiqueta {label} de la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has removed the tag {label} from card {card} in stack {stack} on board {board}" : "{user} ha suprimit l'etiqueta {label} de la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Heu assignat a {assigneduser} a la targeta {card} al tauler {board}",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} ha assignat a {assigneduser} la targeta {card} del tauler {board}",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Heu desassignat {assigneduser} de la targeta {card} al tauler {board}",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} ha desassignat {assigneduser} de la targeta {card} al tauler {board}",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : "Heu mogut la targeta {card} de la llista {stackBefore} a {stack}",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} ha mogut la targeta {card} de la llista {stackBefore} a {stack}",
|
||||
"You have moved the card {card} from stack {stackBefore} to {stack}" : "Heu mogut la targeta {card} de la pila {stackBefore} a {stack}",
|
||||
"{user} has moved the card {card} from stack {stackBefore} to {stack}" : "{user} ha mogut la targeta {card} de la pila {stackBefore} a {stack}",
|
||||
"You have added the attachment {attachment} to card {card}" : "Heu afegit l'adjunt {attachment} a la targeta {card}",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} ha afegit l'adjunt {attachment} a la targeta {card}",
|
||||
"You have updated the attachment {attachment} on card {card}" : "Heu actualitzat l'adjunt {attachment} a la targeta {card}",
|
||||
"{user} has updated the attachment {attachment} on card {card}" : "{user} ha actualitzat l’adjunt {attachment} a la targeta {card}",
|
||||
"You have deleted the attachment {attachment} from card {card}" : "Heu suprimit l'adjunt {attachment} de la targeta {card}",
|
||||
"{user} has deleted the attachment {attachment} from card {card}" : "{user} ha suprimit l'adjunt {attachment} de la targeta {card}",
|
||||
"You have restored the attachment {attachment} to card {card}" : "Heu restaurat l'adjunt {attachment} a la targeta {card}",
|
||||
"{user} has restored the attachment {attachment} to card {card}" : "{user} ha restaurat l'adjunt {attachment} a la targeta {card}",
|
||||
"You have commented on card {card}" : "Heu comentat la targeta {card}",
|
||||
"{user} has commented on card {card}" : "{user} ha comentat la targeta {card}",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "S'ha canviat una <strong>descripció de targeta</strong> a l'aplicació Tauler",
|
||||
"Deck" : "Targetes",
|
||||
"Changes in the <strong>Deck app</strong>" : "Canvis a l'<strong>aplicació Targetes</strong>",
|
||||
"Deck" : "Tauler",
|
||||
"Changes in the <strong>Deck app</strong>" : "Hi ha canvis a l'<strong>aplicació Tauler</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "S'ha afegit un <strong>comentari</strong> a una targeta",
|
||||
"Upcoming cards" : "Pròximes targetes",
|
||||
"Load more" : "Carrega'n més",
|
||||
"Personal" : "Personal",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "La targeta \"%s\" sobre \"%s\" se us ha assignat per %s.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} us ha assignat la targeta {deck-card} a {deck-board}.",
|
||||
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} us ha assignat la targeta \"%s\" sobre \"%s\".",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "La targeta \"%s\" sobre \"%s\" ha assolit la seva data de venciment.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "La targeta {deck-card} a {deck-board} ha assolit la seva data de caducitat.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s us ha anomenat en un comentari sobre \"%s\".",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} us ha mencionat en un comentari a {deck-card}.",
|
||||
"{user} has mentioned you in a comment on \"%s\"." : "{user} us ha anomenat en un comentari sobre \"%s\".",
|
||||
"The board \"%s\" has been shared with you by %s." : "El tauler \"%s\" se us ha compartit per %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} us ha compartit {board}.",
|
||||
"Card comments" : "Comentaris de la targeta",
|
||||
"%s on %s" : "%s a %s",
|
||||
"{user} has shared the board %s with you." : "{user} us ha compartit el tauler %s.",
|
||||
"No data was provided to create an attachment." : "No s’ha proporcionat cap dada per crear un fitxer adjunt.",
|
||||
"Finished" : "Acabat",
|
||||
"To review" : "Per revisar",
|
||||
"Action needed" : "Acció necessària",
|
||||
"Later" : "Més tard",
|
||||
"copy" : "còpia",
|
||||
"To do" : "Pendent",
|
||||
"copy" : "copia",
|
||||
"To do" : "Pendents",
|
||||
"Doing" : "En procés",
|
||||
"Done" : "Finalitzat",
|
||||
"Done" : "Finalitzades",
|
||||
"Example Task 3" : "Tasca d'exemple 3",
|
||||
"Example Task 2" : "Tasca d'exemple 2",
|
||||
"Example Task 1" : "Tasca d'exemple 1",
|
||||
"The file was uploaded" : "S'ha pujat el fitxer",
|
||||
"The file was uploaded" : "S'ha carregat el fitxer",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "El fitxer carregat excedeix la directiva upload_max_filesize dins de php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "El fitxer carregat excedeix la directiva MAX_FILE_SIZE que hi ha especificada al formulari d'HTML",
|
||||
"The file was only partially uploaded" : "El fitxer s'ha carregat només parcialment",
|
||||
"No file was uploaded" : "No s'ha pujat cap fitxer",
|
||||
"No file was uploaded" : "No s'ha carregat cap fitxer",
|
||||
"Missing a temporary folder" : "Falta una carpeta temporal",
|
||||
"Could not write file to disk" : "No s’ha pogut escriure el fitxer al disc",
|
||||
"A PHP extension stopped the file upload" : "Una extensió del PHP ha aturat la carregada del fitxer",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "No s'ha carregat cap fitxer o la mida del fitxer sobrepassa el màxim de %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Aquest comentari té més de %s caràcters.\nS'ha afegit com a fitxer adjunt a la targeta amb el nom %s.\nAccessible a l'URL: %s.",
|
||||
"Card not found" : "No s'ha trobat la targeta",
|
||||
"Path is already shared with this card" : "Aquesta ruta ja ha estat compartida amb aquesta targeta",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "La data no és vàlida, el format de la data ha de ser YYYY-MM-DD",
|
||||
"Personal planning and team project organization" : "Planificació personal i organització de projectes en equip",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Tauler és una eina d'organització a l'estil kanban dirigida a la planificació personal i a l'organització de projectes per equips integrada a Nextcloud.\n\n\n- 📥 Afegiu les tasques en targetes i poseu-les en ordre\n- 📄 Apunteu notes addicionals en format Markdown\n- 🔖 Assigneu etiquetes per una millor organització\n- 👥 Compartiu amb el vostre equip, família o amics\n- 📎 Adjunteu fitxers i encasteu-los en la descripció en markdown\n- 💬 Converses amb el vostre equip fent servir comentaris\n- ⚡ Mantingueu el seguiment de canvis al flux d'activitat\n- 🚀 Tingueu el vostre projecte organitzat",
|
||||
"Card details" : "Detalls de la targeta",
|
||||
"Add board" : "Afegeix un tauler",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Tauler és una eina d'organització a l'estil kanban dirigida a la planificació personal i a l'organització de projectes per equips integrada a Nextcloud.\n\n\n- 📥 Afegiu les tasques en targetes i poseu-les en ordre\n- 📄 Apunteu notes addicionals en markdown\n- 🔖 Assigneu etiquetes per una organització encara millor\n- 👥 Compartiu amb el vostre equip, família o amics\n- 📎 Adjunteu fitxers i encasteu-los en la descripció en markdown\n- 💬 Debateu amb el vostre equip fent servir comentaris\n- ⚡ Mantingueu el seguiment de canvis al flux d'activitat\n- 🚀 Tingueu el vostre projecte organitzat",
|
||||
"Create new board" : "Crea un nou tauler",
|
||||
"Select the board to link to a project" : "Selecciona el tauler per enllaçar a un projecte",
|
||||
"Search by board title" : "Cerca per títol del tauler",
|
||||
"Select board" : "Selecciona un tauler",
|
||||
"Create a new card" : "Crea una nova targeta",
|
||||
"Select a board" : "Selecciona un tauler",
|
||||
"Select a list" : "Seleccioneu una llista",
|
||||
"Card title" : "Títol de la targeta",
|
||||
"Cancel" : "Cancel·la",
|
||||
"Creating the new card …" : "Creant la nova targeta …",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "La targeta \"{card}\" s'ha afegit a \"{board}\"",
|
||||
"Open card" : "Obre la targeta",
|
||||
"Close" : "Tanca",
|
||||
"Create card" : "Crea una targeta",
|
||||
"Select a card" : "Selecciona una targeta",
|
||||
"Select the card to link to a project" : "Selecciona la targeta per enllaçar a un projecte",
|
||||
"Link to card" : "Enllaç a la targeta",
|
||||
"File already exists" : "El fitxer ja existeix",
|
||||
"A file with the name {filename} already exists." : "Ja existeix un fitxer amb el nom {filename}.",
|
||||
"Do you want to overwrite it?" : "Voleu sobre-escriure'l?",
|
||||
"Overwrite file" : "Sobreescriu el fitxer",
|
||||
"Keep existing file" : "Mantén el fitxer existent",
|
||||
"This board is read only" : "Aquest tauler és només de lectura",
|
||||
"Drop your files to upload" : "Deixeu anar els fitxers per penjar-los",
|
||||
"Add card" : "Afegeix una targeta",
|
||||
"Archived cards" : "Targetes arxivades",
|
||||
"Add list" : "Afegeix una llista",
|
||||
"List name" : "Nom de la llista",
|
||||
"Active filters" : "Filtres actius",
|
||||
"Apply filter" : "Aplica el filtre",
|
||||
"Filter by tag" : "Filtra per etiqueta",
|
||||
"Filter by assigned user" : "Filtra per usuari assignat",
|
||||
"Unassigned" : "Sense assignar",
|
||||
"Filter by due date" : "Filtra per data de venciment",
|
||||
"Overdue" : "Endarrerit",
|
||||
"Next 24 hours" : "Pròximes 24 hores",
|
||||
"Next 7 days" : "Pròxims 7 dies",
|
||||
"Next 30 days" : "Pròxims 30 dies",
|
||||
"No due date" : "Sense venciment",
|
||||
"Clear filter" : "Esborra el filtre",
|
||||
"Hide archived cards" : "Amaga les targetes arxivades",
|
||||
"Show archived cards" : "Mostra les targetes arxivades",
|
||||
"Hide archived cards" : "Amaga les targetes arxivades",
|
||||
"Toggle compact mode" : "Commuta el mode compacte",
|
||||
"Open details" : "Obre els detalls",
|
||||
"Details" : "Detalls",
|
||||
"Loading board" : "S'està carregant el tauler",
|
||||
"No lists available" : "No hi ha cap llista disponible",
|
||||
"Create a new list to add cards to this board" : "Crea una llista nova per afegir targetes a aquest tauler",
|
||||
"Board not found" : "Tauler no trobat",
|
||||
"Sharing" : "Compartició",
|
||||
"Tags" : "Etiquetes",
|
||||
"Deleted items" : "Elements suprimits",
|
||||
"Timeline" : "Línia de temps",
|
||||
"Deleted lists" : "Llistes suprimides",
|
||||
"Deleted stacks" : "Piles suprimides",
|
||||
"Undo" : "Desfés",
|
||||
"Deleted cards" : "Targetes suprimides",
|
||||
"Share board with a user, group or circle …" : "Compartir tauler amb un usuari, grup o cercle …",
|
||||
"Searching for users, groups and circles …" : "Buscant usuaris, grups i cercles …",
|
||||
"No participants found" : "No s'han trobat participants",
|
||||
"Board owner" : "Propietari del tauler",
|
||||
"(Group)" : "(Grup)",
|
||||
"(Circle)" : "(Cercle)",
|
||||
"Can edit" : "Pot editar",
|
||||
"Can share" : "Pot compartir",
|
||||
"Can manage" : "Pot gestionar",
|
||||
"Owner" : "Propietari",
|
||||
"Delete" : "Eliminar",
|
||||
"Failed to create share with {displayName}" : "Ha fallat la creació de la compartició amb {displayName}",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Esteu segur que voleu transferir el tauler {title} a {user}?",
|
||||
"Transfer the board." : "Transfereix el tauler.",
|
||||
"Transfer" : "Transferència",
|
||||
"The board has been transferred to {user}" : "El tauler s'ha transferit a {user}",
|
||||
"Failed to transfer the board to {user}" : "No s'ha pogut transferir el tauler a {user}",
|
||||
"Add a new list" : "Afegir una llista nova",
|
||||
"Archive all cards" : "Arxiva totes les targetes",
|
||||
"Delete list" : "Suprimeix la llista",
|
||||
"Archive all cards in this list" : "Arxiva totes les targetes d'aquesta llista",
|
||||
"Add a new card" : "Afegir una nova targeta",
|
||||
"Card name" : "Nom de la targeta",
|
||||
"List deleted" : "Llista suprimida",
|
||||
"Add a new stack" : "Afegeix una nova pila",
|
||||
"Add card" : "Afegeix una targeta",
|
||||
"Edit" : "Edita",
|
||||
"Add a new tag" : "Afegir una etiqueta nova",
|
||||
"title and color value must be provided" : "s’ha de proporcionar el valor del títol i del color",
|
||||
"Board name" : "Nom del taulell",
|
||||
"Members" : "Membres",
|
||||
"Upload new files" : "Puja nous fitxers",
|
||||
"Share from Files" : "Comparteix des de Fitxers",
|
||||
"Pending share" : "Compartició pendent",
|
||||
"Add this attachment" : "Afegeix aquest adjunt",
|
||||
"Show in Files" : "Mostra a Fitxers",
|
||||
"Download" : "Baixa",
|
||||
"Remove attachment" : "Treu l'adjunt",
|
||||
"Delete Attachment" : "Suprimeix l’adjunt",
|
||||
"Restore Attachment" : "Restaura l'adjunt",
|
||||
"File to share" : "Fitxer a compartir",
|
||||
"Invalid path selected" : "S'ha seleccionat una ruta invàlida",
|
||||
"Open in sidebar view" : "Obre a la vista de la barra lateral",
|
||||
"Open in bigger view" : "Obre a la vista més gran",
|
||||
"Details" : "Detalls",
|
||||
"Due date" : "Per la data",
|
||||
"Remove due date" : "Elimina la data de venciment",
|
||||
"Description" : "Descripció",
|
||||
"Formatting help" : "Format d'ajuda",
|
||||
"Attachments" : "Adjunts",
|
||||
"Comments" : "Comentaris",
|
||||
"Modified" : "Darrera modificació",
|
||||
"Created" : "Creat",
|
||||
"The title cannot be empty." : "El títol no pot estar buit.",
|
||||
"No comments yet. Begin the discussion!" : "No hi ha comentaris encara. Començar la discussió!",
|
||||
"Failed to load comments" : "No s'han pogut carregar els comentaris",
|
||||
"Assign a tag to this card…" : "Assigna una etiqueta a aquesta targeta…",
|
||||
"Assign to users" : "Assigna als usuaris",
|
||||
"Assign to users/groups/circles" : "Assigna a usuaris/grups/cercles",
|
||||
"Assign a user to this card…" : "Assigneu un usuari a aquesta targeta…",
|
||||
"Due date" : "Per la data",
|
||||
"Set a due date" : "Definir una data de venciment",
|
||||
"Remove due date" : "Elimina la data de venciment",
|
||||
"Select Date" : "Selecciona la data",
|
||||
"Today" : "Avui",
|
||||
"Tomorrow" : "Demà",
|
||||
"Next week" : "Setmana següent",
|
||||
"Next month" : "Mes següent",
|
||||
"Upload attachment" : "Carrega l'adjunt",
|
||||
"Save" : "Desa",
|
||||
"The comment cannot be empty." : "El comentari no pot estar buit.",
|
||||
"The comment cannot be longer than 1000 characters." : "El comentari no pot ser més llarg que 1000 caràcters.",
|
||||
"In reply to" : "En resposta a",
|
||||
"Cancel reply" : "Cancel·la la resposta",
|
||||
"Reply" : "Respon",
|
||||
"Update" : "Actualitza",
|
||||
"Description" : "Descripció",
|
||||
"(Unsaved)" : "(No desat)",
|
||||
"(Saving…)" : "(Desant…)",
|
||||
"Formatting help" : "Format d'ajuda",
|
||||
"Edit description" : "Edita descripció",
|
||||
"View description" : "Veure descripció",
|
||||
"Add Attachment" : "Afegeix un adjunt",
|
||||
"Write a description …" : "Escriviu una descripció …",
|
||||
"Choose attachment" : "Triar adjunt",
|
||||
"(group)" : "(grup)",
|
||||
"Todo items" : "Elements pendents",
|
||||
"{count} comments, {unread} unread" : "{count} comentaris, {unread} no llegits",
|
||||
"Edit card title" : "Edita el títol de la targeta",
|
||||
"Assign to me" : "Assigna'm a mi",
|
||||
"Unassign myself" : "Desasignar a mi mateix",
|
||||
"Move card" : "Mou la targeta",
|
||||
"Unarchive card" : "Desarxiva targeta",
|
||||
"Archive card" : "Arxiva la targeta",
|
||||
"Delete card" : "Suprimeix targeta",
|
||||
"Move card to another board" : "Mou la targeta a un altre tauler",
|
||||
"List is empty" : "La llista és buida",
|
||||
"Card deleted" : "Targeta suprimida",
|
||||
"seconds ago" : "fa uns segons",
|
||||
"All boards" : "Tots els taulers",
|
||||
"Move card" : "Mou la targeta",
|
||||
"Archived boards" : "Taulers arxivats",
|
||||
"Shared with you" : "Us han compartit",
|
||||
"Deck settings" : "Configuració del Tauler",
|
||||
"Use bigger card view" : "Utilitza la visualització de targetes més gran",
|
||||
"Show boards in calendar/tasks" : "Mostra els taulers al calendari/tasques",
|
||||
"Limit deck usage of groups" : "Limitar l'ús del tauler de grups",
|
||||
"Shared boards" : "Taulers compartits",
|
||||
"Settings" : "Paràmetres",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Limitant el Tauler bloquejarà la creació de taulers als usuaris que no són part d'aquests grups. Els usuaris podran seguir treballant en els taulers que hagin estat compartits amb ells.",
|
||||
"Board details" : "Detalls del tauler",
|
||||
"New board title" : "Títol del nou tauler",
|
||||
"Edit board" : "Edita el tauler",
|
||||
"Clone board" : "Clonar tauler",
|
||||
"Unarchive board" : "Desarxiva el tauler",
|
||||
"Archive board" : "Arxiva el tauler",
|
||||
"Turn on due date reminders" : "Activa els recordatoris de data de venciment",
|
||||
"Turn off due date reminders" : "Desactiva els recordatoris de data de venciment",
|
||||
"Due date reminders" : "Recordatoris de data de venciment",
|
||||
"All cards" : "Totes les targetes",
|
||||
"Assigned cards" : "Targetes assignades",
|
||||
"No notifications" : "No hi ha notificacions",
|
||||
"Delete board" : "Suprimeix el tauler",
|
||||
"Board {0} deleted" : "S’ha suprimit el tauler {0}",
|
||||
"Only assigned cards" : "Només les targetes assignades",
|
||||
"No reminder" : "Sense recordatoris",
|
||||
"An error occurred" : "S'ha produït un error",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Esteu segur que voleu suprimir el tauler {title}? Això suprimirà totes les dades d'aquest tauler, incloses les targetes arxivades.",
|
||||
"Delete the board?" : "Voleu suprimir el tauler?",
|
||||
"Loading filtered view" : "S'està carregant la visualització filtrada",
|
||||
"No due" : "Sense venciment",
|
||||
"Search for {searchQuery} in all boards" : "Busca {searchQuery} a tots els taulers",
|
||||
"No results found" : "No s'han trobat resultats",
|
||||
"{stack} in {board}" : "{stack} a {board}",
|
||||
"Click to expand description" : "Feu clic per ampliar la descripció",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Creat el {created}\n* Última modificació el dia {lastMod}\n* {nbAttachments} fitxers adjunts\n* {nbComments} comentaris",
|
||||
"{nbCards} cards" : "{nbCards} targetes",
|
||||
"No upcoming cards" : "No hi ha pròximes targetes",
|
||||
"upcoming cards" : "pròximes targetes",
|
||||
"Due on {date}" : "Venciment el dia {date}",
|
||||
"Link to a board" : "Enllaça a un tauler",
|
||||
"Link to a card" : "Enllaç una targeta",
|
||||
"Create a card" : "Crea una targeta",
|
||||
"Message from {author} in {conversationName}" : "Missatge de {author} a {conversationName}",
|
||||
"Something went wrong" : "Alguna cosa ha anat malament",
|
||||
"Failed to upload {name}" : "No s'ha pogut pujar {name}",
|
||||
"Maximum file size of {size} exceeded" : "S'ha superat la mida màxima per fitxer de {size}",
|
||||
"Error creating the share" : "S'ha produït un error en crear la compartició",
|
||||
"Share with a Deck card" : "Compartir amb una targeta de Deck",
|
||||
"Share {file} with a Deck card" : "Compartir {file} amb una targeta de Deck",
|
||||
"Share" : "Compartir",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Tauler és una eina d'organització a l'estil kanban dirigida a la planificació personal i a l'organització de projectes per equips integrada a Nextcloud.\n\n\n- 📥 Afegiu les tasques en targetes i poseu-les en ordre\n- 📄 Apunteu notes addicionals en markdown\n- 🔖 Assigneu etiquetes per una organització encara millor\n- 👥 Compartiu amb el vostre equip, família o amics\n- 📎 Adjunteu fitxers i encasteu-los en la descripció en markdown\n- 💬 Debateu amb el vostre equip fent servir comentaris\n- ⚡ Mantingueu el seguiment de canvis al flux d'activitat\n- 🚀 Tingueu el vostre projecte organitzat",
|
||||
"Are you sure you want to transfer the board {title} for {user} ?" : "Esteu segur que voleu transferir el tauler {title} per a {user}?",
|
||||
"Transfer the board for {user} successfully" : "Transfereix el tauler per a {user} correctament",
|
||||
"Failed to transfer the board for {user}" : "No s'ha pogut transferir el tauler per a {user}",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Esteu segur que voleu suprimir el tauler {title}? Això eliminarà totes les dades d'aquest tauler.",
|
||||
"This week" : "Aquesta setmana",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Esteu segur que voleu transferir el tauler {title} per a {user}?"
|
||||
"Archive board" : "Arxiva tauler",
|
||||
"Unarchive board" : "Desarxiva tauler",
|
||||
"Delete board" : "Suprimeix tauler",
|
||||
"Board details" : "Detalls de la junta",
|
||||
"Link to a board" : "Enllaça a un tauler"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
|
||||
278
l10n/ca.json
@@ -15,298 +15,130 @@
|
||||
"{user} has archived the board {before}" : "{user} ha arxivat el tauler {before}",
|
||||
"You have unarchived the board {board}" : "Heu desarxivat el tauler {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} ha desarxivat el tauler {before}",
|
||||
"You have created a new list {stack} on board {board}" : "Heu creat una llista nova {stack} al tauler {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} ha creat una nova llista {stack} al tauler {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Heu canviat el nom de la llista {before} a {stack} al tauler {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} ha canviat el nom de la llista {before} a {stack} al tauler {board}",
|
||||
"You have deleted list {stack} on board {board}" : "Heu suprimit la llista {stack} al tauler {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} ha suprimit la llista {stack} al tauler {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Heu creat la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} ha creat la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Heu suprimit la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} ha suprimit la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have created a new stack {stack} on board {board}" : "Heu creat una nova pila {stack} al tauler {board}",
|
||||
"{user} has created a new stack {stack} on board {board}" : "{user} ha creat una nova pila {stack} al tauler {board}",
|
||||
"You have renamed stack {before} to {stack} on board {board}" : "Heu reanomenat la pila {before} a {stack} al tauler {board}",
|
||||
"{user} has renamed stack {before} to {stack} on board {board}" : "{user} ha reanomenat la pila {before} a {stack} al tauler {board}",
|
||||
"You have deleted stack {stack} on board {board}" : "Heu suprimit la pila {stack} al tauler {board}",
|
||||
"{user} has deleted stack {stack} on board {board}" : "{user} ha suprimit la pila {stack} al tauler {board}",
|
||||
"You have created card {card} in stack {stack} on board {board}" : "Heu creat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has created card {card} in stack {stack} on board {board}" : "{user} ha creat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have deleted card {card} in stack {stack} on board {board}" : "Heu suprimit la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has deleted card {card} in stack {stack} on board {board}" : "{user} ha suprimit la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have renamed the card {before} to {card}" : "Heu reanomenat la targeta {before} a {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} ha reanomenat la targeta {before} a {card}",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "Heu afegit una descripció a la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} ha afegit una descripció a la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "Heu actualitzat la descripció de la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} ha actualitzat la descripció de la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "Teniu la targeta arxivada {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} té la targeta arxivada {card} a la llista {stack} al tauler {board}",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "Teniu una targeta no-arxchivada {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} té una targeta no-arxivada {card} a la llista {stack} al tauler {board}",
|
||||
"You have added a description to card {card} in stack {stack} on board {board}" : "Heu afegit una descripció a la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has added a description to card {card} in stack {stack} on board {board}" : "{user} ha afegit una descripció a la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have updated the description of card {card} in stack {stack} on board {board}" : "Heu actualitzat la descripció de la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has updated the description of the card {card} in stack {stack} on board {board}" : "{user} ha actualitzat la descripció de la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have archived card {card} in stack {stack} on board {board}" : "Heu arxivat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has archived card {card} in stack {stack} on board {board}" : "{user} ha arxivat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have unarchived card {card} in stack {stack} on board {board}" : "Heu desarxivat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has unarchived card {card} in stack {stack} on board {board}" : "{user} ha arxivat la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have removed the due date of card {card}" : "Heu suprimit la data de venciment de la targeta {targeta}",
|
||||
"{user} has removed the due date of card {card}" : "{user} ha suprimit la data de venciment de la targeta {targeta}",
|
||||
"You have set the due date of card {card} to {after}" : "Heu establert la data de venciment de la targeta {card} a {after}",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} ha establert la data de venciment de la targeta {card} a {after}",
|
||||
"You have updated the due date of card {card} to {after}" : "Heu actualitzat la data de venciment de la targeta {card} a {after}",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} ha actualitzat la data de venciment de la targeta {card} a {after}",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Heu afegit l'etiqueta {label} a la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} ha afegit l'etiqueta {label} a la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Heu eliminat l'etiqueta {label} de la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} ha eliminat l'etiqueta {label} de la targeta {card} a la llista {stack} al tauler {board}",
|
||||
"You have added the tag {label} to card {card} in stack {stack} on board {board}" : "Heu afegit l'etiqueta {label} a la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has added the tag {label} to card {card} in stack {stack} on board {board}" : "{user} ha afegit l'etiqueta {label} a la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have removed the tag {label} from card {card} in stack {stack} on board {board}" : "Heu suprimit l'etiqueta {label} de la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"{user} has removed the tag {label} from card {card} in stack {stack} on board {board}" : "{user} ha suprimit l'etiqueta {label} de la targeta {card} a la pila {stack} al tauler {board}",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Heu assignat a {assigneduser} a la targeta {card} al tauler {board}",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} ha assignat a {assigneduser} la targeta {card} del tauler {board}",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Heu desassignat {assigneduser} de la targeta {card} al tauler {board}",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} ha desassignat {assigneduser} de la targeta {card} al tauler {board}",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : "Heu mogut la targeta {card} de la llista {stackBefore} a {stack}",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} ha mogut la targeta {card} de la llista {stackBefore} a {stack}",
|
||||
"You have moved the card {card} from stack {stackBefore} to {stack}" : "Heu mogut la targeta {card} de la pila {stackBefore} a {stack}",
|
||||
"{user} has moved the card {card} from stack {stackBefore} to {stack}" : "{user} ha mogut la targeta {card} de la pila {stackBefore} a {stack}",
|
||||
"You have added the attachment {attachment} to card {card}" : "Heu afegit l'adjunt {attachment} a la targeta {card}",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} ha afegit l'adjunt {attachment} a la targeta {card}",
|
||||
"You have updated the attachment {attachment} on card {card}" : "Heu actualitzat l'adjunt {attachment} a la targeta {card}",
|
||||
"{user} has updated the attachment {attachment} on card {card}" : "{user} ha actualitzat l’adjunt {attachment} a la targeta {card}",
|
||||
"You have deleted the attachment {attachment} from card {card}" : "Heu suprimit l'adjunt {attachment} de la targeta {card}",
|
||||
"{user} has deleted the attachment {attachment} from card {card}" : "{user} ha suprimit l'adjunt {attachment} de la targeta {card}",
|
||||
"You have restored the attachment {attachment} to card {card}" : "Heu restaurat l'adjunt {attachment} a la targeta {card}",
|
||||
"{user} has restored the attachment {attachment} to card {card}" : "{user} ha restaurat l'adjunt {attachment} a la targeta {card}",
|
||||
"You have commented on card {card}" : "Heu comentat la targeta {card}",
|
||||
"{user} has commented on card {card}" : "{user} ha comentat la targeta {card}",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "S'ha canviat una <strong>descripció de targeta</strong> a l'aplicació Tauler",
|
||||
"Deck" : "Targetes",
|
||||
"Changes in the <strong>Deck app</strong>" : "Canvis a l'<strong>aplicació Targetes</strong>",
|
||||
"Deck" : "Tauler",
|
||||
"Changes in the <strong>Deck app</strong>" : "Hi ha canvis a l'<strong>aplicació Tauler</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "S'ha afegit un <strong>comentari</strong> a una targeta",
|
||||
"Upcoming cards" : "Pròximes targetes",
|
||||
"Load more" : "Carrega'n més",
|
||||
"Personal" : "Personal",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "La targeta \"%s\" sobre \"%s\" se us ha assignat per %s.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} us ha assignat la targeta {deck-card} a {deck-board}.",
|
||||
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} us ha assignat la targeta \"%s\" sobre \"%s\".",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "La targeta \"%s\" sobre \"%s\" ha assolit la seva data de venciment.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "La targeta {deck-card} a {deck-board} ha assolit la seva data de caducitat.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s us ha anomenat en un comentari sobre \"%s\".",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} us ha mencionat en un comentari a {deck-card}.",
|
||||
"{user} has mentioned you in a comment on \"%s\"." : "{user} us ha anomenat en un comentari sobre \"%s\".",
|
||||
"The board \"%s\" has been shared with you by %s." : "El tauler \"%s\" se us ha compartit per %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} us ha compartit {board}.",
|
||||
"Card comments" : "Comentaris de la targeta",
|
||||
"%s on %s" : "%s a %s",
|
||||
"{user} has shared the board %s with you." : "{user} us ha compartit el tauler %s.",
|
||||
"No data was provided to create an attachment." : "No s’ha proporcionat cap dada per crear un fitxer adjunt.",
|
||||
"Finished" : "Acabat",
|
||||
"To review" : "Per revisar",
|
||||
"Action needed" : "Acció necessària",
|
||||
"Later" : "Més tard",
|
||||
"copy" : "còpia",
|
||||
"To do" : "Pendent",
|
||||
"copy" : "copia",
|
||||
"To do" : "Pendents",
|
||||
"Doing" : "En procés",
|
||||
"Done" : "Finalitzat",
|
||||
"Done" : "Finalitzades",
|
||||
"Example Task 3" : "Tasca d'exemple 3",
|
||||
"Example Task 2" : "Tasca d'exemple 2",
|
||||
"Example Task 1" : "Tasca d'exemple 1",
|
||||
"The file was uploaded" : "S'ha pujat el fitxer",
|
||||
"The file was uploaded" : "S'ha carregat el fitxer",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "El fitxer carregat excedeix la directiva upload_max_filesize dins de php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "El fitxer carregat excedeix la directiva MAX_FILE_SIZE que hi ha especificada al formulari d'HTML",
|
||||
"The file was only partially uploaded" : "El fitxer s'ha carregat només parcialment",
|
||||
"No file was uploaded" : "No s'ha pujat cap fitxer",
|
||||
"No file was uploaded" : "No s'ha carregat cap fitxer",
|
||||
"Missing a temporary folder" : "Falta una carpeta temporal",
|
||||
"Could not write file to disk" : "No s’ha pogut escriure el fitxer al disc",
|
||||
"A PHP extension stopped the file upload" : "Una extensió del PHP ha aturat la carregada del fitxer",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "No s'ha carregat cap fitxer o la mida del fitxer sobrepassa el màxim de %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Aquest comentari té més de %s caràcters.\nS'ha afegit com a fitxer adjunt a la targeta amb el nom %s.\nAccessible a l'URL: %s.",
|
||||
"Card not found" : "No s'ha trobat la targeta",
|
||||
"Path is already shared with this card" : "Aquesta ruta ja ha estat compartida amb aquesta targeta",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "La data no és vàlida, el format de la data ha de ser YYYY-MM-DD",
|
||||
"Personal planning and team project organization" : "Planificació personal i organització de projectes en equip",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Tauler és una eina d'organització a l'estil kanban dirigida a la planificació personal i a l'organització de projectes per equips integrada a Nextcloud.\n\n\n- 📥 Afegiu les tasques en targetes i poseu-les en ordre\n- 📄 Apunteu notes addicionals en format Markdown\n- 🔖 Assigneu etiquetes per una millor organització\n- 👥 Compartiu amb el vostre equip, família o amics\n- 📎 Adjunteu fitxers i encasteu-los en la descripció en markdown\n- 💬 Converses amb el vostre equip fent servir comentaris\n- ⚡ Mantingueu el seguiment de canvis al flux d'activitat\n- 🚀 Tingueu el vostre projecte organitzat",
|
||||
"Card details" : "Detalls de la targeta",
|
||||
"Add board" : "Afegeix un tauler",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Tauler és una eina d'organització a l'estil kanban dirigida a la planificació personal i a l'organització de projectes per equips integrada a Nextcloud.\n\n\n- 📥 Afegiu les tasques en targetes i poseu-les en ordre\n- 📄 Apunteu notes addicionals en markdown\n- 🔖 Assigneu etiquetes per una organització encara millor\n- 👥 Compartiu amb el vostre equip, família o amics\n- 📎 Adjunteu fitxers i encasteu-los en la descripció en markdown\n- 💬 Debateu amb el vostre equip fent servir comentaris\n- ⚡ Mantingueu el seguiment de canvis al flux d'activitat\n- 🚀 Tingueu el vostre projecte organitzat",
|
||||
"Create new board" : "Crea un nou tauler",
|
||||
"Select the board to link to a project" : "Selecciona el tauler per enllaçar a un projecte",
|
||||
"Search by board title" : "Cerca per títol del tauler",
|
||||
"Select board" : "Selecciona un tauler",
|
||||
"Create a new card" : "Crea una nova targeta",
|
||||
"Select a board" : "Selecciona un tauler",
|
||||
"Select a list" : "Seleccioneu una llista",
|
||||
"Card title" : "Títol de la targeta",
|
||||
"Cancel" : "Cancel·la",
|
||||
"Creating the new card …" : "Creant la nova targeta …",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "La targeta \"{card}\" s'ha afegit a \"{board}\"",
|
||||
"Open card" : "Obre la targeta",
|
||||
"Close" : "Tanca",
|
||||
"Create card" : "Crea una targeta",
|
||||
"Select a card" : "Selecciona una targeta",
|
||||
"Select the card to link to a project" : "Selecciona la targeta per enllaçar a un projecte",
|
||||
"Link to card" : "Enllaç a la targeta",
|
||||
"File already exists" : "El fitxer ja existeix",
|
||||
"A file with the name {filename} already exists." : "Ja existeix un fitxer amb el nom {filename}.",
|
||||
"Do you want to overwrite it?" : "Voleu sobre-escriure'l?",
|
||||
"Overwrite file" : "Sobreescriu el fitxer",
|
||||
"Keep existing file" : "Mantén el fitxer existent",
|
||||
"This board is read only" : "Aquest tauler és només de lectura",
|
||||
"Drop your files to upload" : "Deixeu anar els fitxers per penjar-los",
|
||||
"Add card" : "Afegeix una targeta",
|
||||
"Archived cards" : "Targetes arxivades",
|
||||
"Add list" : "Afegeix una llista",
|
||||
"List name" : "Nom de la llista",
|
||||
"Active filters" : "Filtres actius",
|
||||
"Apply filter" : "Aplica el filtre",
|
||||
"Filter by tag" : "Filtra per etiqueta",
|
||||
"Filter by assigned user" : "Filtra per usuari assignat",
|
||||
"Unassigned" : "Sense assignar",
|
||||
"Filter by due date" : "Filtra per data de venciment",
|
||||
"Overdue" : "Endarrerit",
|
||||
"Next 24 hours" : "Pròximes 24 hores",
|
||||
"Next 7 days" : "Pròxims 7 dies",
|
||||
"Next 30 days" : "Pròxims 30 dies",
|
||||
"No due date" : "Sense venciment",
|
||||
"Clear filter" : "Esborra el filtre",
|
||||
"Hide archived cards" : "Amaga les targetes arxivades",
|
||||
"Show archived cards" : "Mostra les targetes arxivades",
|
||||
"Hide archived cards" : "Amaga les targetes arxivades",
|
||||
"Toggle compact mode" : "Commuta el mode compacte",
|
||||
"Open details" : "Obre els detalls",
|
||||
"Details" : "Detalls",
|
||||
"Loading board" : "S'està carregant el tauler",
|
||||
"No lists available" : "No hi ha cap llista disponible",
|
||||
"Create a new list to add cards to this board" : "Crea una llista nova per afegir targetes a aquest tauler",
|
||||
"Board not found" : "Tauler no trobat",
|
||||
"Sharing" : "Compartició",
|
||||
"Tags" : "Etiquetes",
|
||||
"Deleted items" : "Elements suprimits",
|
||||
"Timeline" : "Línia de temps",
|
||||
"Deleted lists" : "Llistes suprimides",
|
||||
"Deleted stacks" : "Piles suprimides",
|
||||
"Undo" : "Desfés",
|
||||
"Deleted cards" : "Targetes suprimides",
|
||||
"Share board with a user, group or circle …" : "Compartir tauler amb un usuari, grup o cercle …",
|
||||
"Searching for users, groups and circles …" : "Buscant usuaris, grups i cercles …",
|
||||
"No participants found" : "No s'han trobat participants",
|
||||
"Board owner" : "Propietari del tauler",
|
||||
"(Group)" : "(Grup)",
|
||||
"(Circle)" : "(Cercle)",
|
||||
"Can edit" : "Pot editar",
|
||||
"Can share" : "Pot compartir",
|
||||
"Can manage" : "Pot gestionar",
|
||||
"Owner" : "Propietari",
|
||||
"Delete" : "Eliminar",
|
||||
"Failed to create share with {displayName}" : "Ha fallat la creació de la compartició amb {displayName}",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Esteu segur que voleu transferir el tauler {title} a {user}?",
|
||||
"Transfer the board." : "Transfereix el tauler.",
|
||||
"Transfer" : "Transferència",
|
||||
"The board has been transferred to {user}" : "El tauler s'ha transferit a {user}",
|
||||
"Failed to transfer the board to {user}" : "No s'ha pogut transferir el tauler a {user}",
|
||||
"Add a new list" : "Afegir una llista nova",
|
||||
"Archive all cards" : "Arxiva totes les targetes",
|
||||
"Delete list" : "Suprimeix la llista",
|
||||
"Archive all cards in this list" : "Arxiva totes les targetes d'aquesta llista",
|
||||
"Add a new card" : "Afegir una nova targeta",
|
||||
"Card name" : "Nom de la targeta",
|
||||
"List deleted" : "Llista suprimida",
|
||||
"Add a new stack" : "Afegeix una nova pila",
|
||||
"Add card" : "Afegeix una targeta",
|
||||
"Edit" : "Edita",
|
||||
"Add a new tag" : "Afegir una etiqueta nova",
|
||||
"title and color value must be provided" : "s’ha de proporcionar el valor del títol i del color",
|
||||
"Board name" : "Nom del taulell",
|
||||
"Members" : "Membres",
|
||||
"Upload new files" : "Puja nous fitxers",
|
||||
"Share from Files" : "Comparteix des de Fitxers",
|
||||
"Pending share" : "Compartició pendent",
|
||||
"Add this attachment" : "Afegeix aquest adjunt",
|
||||
"Show in Files" : "Mostra a Fitxers",
|
||||
"Download" : "Baixa",
|
||||
"Remove attachment" : "Treu l'adjunt",
|
||||
"Delete Attachment" : "Suprimeix l’adjunt",
|
||||
"Restore Attachment" : "Restaura l'adjunt",
|
||||
"File to share" : "Fitxer a compartir",
|
||||
"Invalid path selected" : "S'ha seleccionat una ruta invàlida",
|
||||
"Open in sidebar view" : "Obre a la vista de la barra lateral",
|
||||
"Open in bigger view" : "Obre a la vista més gran",
|
||||
"Details" : "Detalls",
|
||||
"Due date" : "Per la data",
|
||||
"Remove due date" : "Elimina la data de venciment",
|
||||
"Description" : "Descripció",
|
||||
"Formatting help" : "Format d'ajuda",
|
||||
"Attachments" : "Adjunts",
|
||||
"Comments" : "Comentaris",
|
||||
"Modified" : "Darrera modificació",
|
||||
"Created" : "Creat",
|
||||
"The title cannot be empty." : "El títol no pot estar buit.",
|
||||
"No comments yet. Begin the discussion!" : "No hi ha comentaris encara. Començar la discussió!",
|
||||
"Failed to load comments" : "No s'han pogut carregar els comentaris",
|
||||
"Assign a tag to this card…" : "Assigna una etiqueta a aquesta targeta…",
|
||||
"Assign to users" : "Assigna als usuaris",
|
||||
"Assign to users/groups/circles" : "Assigna a usuaris/grups/cercles",
|
||||
"Assign a user to this card…" : "Assigneu un usuari a aquesta targeta…",
|
||||
"Due date" : "Per la data",
|
||||
"Set a due date" : "Definir una data de venciment",
|
||||
"Remove due date" : "Elimina la data de venciment",
|
||||
"Select Date" : "Selecciona la data",
|
||||
"Today" : "Avui",
|
||||
"Tomorrow" : "Demà",
|
||||
"Next week" : "Setmana següent",
|
||||
"Next month" : "Mes següent",
|
||||
"Upload attachment" : "Carrega l'adjunt",
|
||||
"Save" : "Desa",
|
||||
"The comment cannot be empty." : "El comentari no pot estar buit.",
|
||||
"The comment cannot be longer than 1000 characters." : "El comentari no pot ser més llarg que 1000 caràcters.",
|
||||
"In reply to" : "En resposta a",
|
||||
"Cancel reply" : "Cancel·la la resposta",
|
||||
"Reply" : "Respon",
|
||||
"Update" : "Actualitza",
|
||||
"Description" : "Descripció",
|
||||
"(Unsaved)" : "(No desat)",
|
||||
"(Saving…)" : "(Desant…)",
|
||||
"Formatting help" : "Format d'ajuda",
|
||||
"Edit description" : "Edita descripció",
|
||||
"View description" : "Veure descripció",
|
||||
"Add Attachment" : "Afegeix un adjunt",
|
||||
"Write a description …" : "Escriviu una descripció …",
|
||||
"Choose attachment" : "Triar adjunt",
|
||||
"(group)" : "(grup)",
|
||||
"Todo items" : "Elements pendents",
|
||||
"{count} comments, {unread} unread" : "{count} comentaris, {unread} no llegits",
|
||||
"Edit card title" : "Edita el títol de la targeta",
|
||||
"Assign to me" : "Assigna'm a mi",
|
||||
"Unassign myself" : "Desasignar a mi mateix",
|
||||
"Move card" : "Mou la targeta",
|
||||
"Unarchive card" : "Desarxiva targeta",
|
||||
"Archive card" : "Arxiva la targeta",
|
||||
"Delete card" : "Suprimeix targeta",
|
||||
"Move card to another board" : "Mou la targeta a un altre tauler",
|
||||
"List is empty" : "La llista és buida",
|
||||
"Card deleted" : "Targeta suprimida",
|
||||
"seconds ago" : "fa uns segons",
|
||||
"All boards" : "Tots els taulers",
|
||||
"Move card" : "Mou la targeta",
|
||||
"Archived boards" : "Taulers arxivats",
|
||||
"Shared with you" : "Us han compartit",
|
||||
"Deck settings" : "Configuració del Tauler",
|
||||
"Use bigger card view" : "Utilitza la visualització de targetes més gran",
|
||||
"Show boards in calendar/tasks" : "Mostra els taulers al calendari/tasques",
|
||||
"Limit deck usage of groups" : "Limitar l'ús del tauler de grups",
|
||||
"Shared boards" : "Taulers compartits",
|
||||
"Settings" : "Paràmetres",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Limitant el Tauler bloquejarà la creació de taulers als usuaris que no són part d'aquests grups. Els usuaris podran seguir treballant en els taulers que hagin estat compartits amb ells.",
|
||||
"Board details" : "Detalls del tauler",
|
||||
"New board title" : "Títol del nou tauler",
|
||||
"Edit board" : "Edita el tauler",
|
||||
"Clone board" : "Clonar tauler",
|
||||
"Unarchive board" : "Desarxiva el tauler",
|
||||
"Archive board" : "Arxiva el tauler",
|
||||
"Turn on due date reminders" : "Activa els recordatoris de data de venciment",
|
||||
"Turn off due date reminders" : "Desactiva els recordatoris de data de venciment",
|
||||
"Due date reminders" : "Recordatoris de data de venciment",
|
||||
"All cards" : "Totes les targetes",
|
||||
"Assigned cards" : "Targetes assignades",
|
||||
"No notifications" : "No hi ha notificacions",
|
||||
"Delete board" : "Suprimeix el tauler",
|
||||
"Board {0} deleted" : "S’ha suprimit el tauler {0}",
|
||||
"Only assigned cards" : "Només les targetes assignades",
|
||||
"No reminder" : "Sense recordatoris",
|
||||
"An error occurred" : "S'ha produït un error",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Esteu segur que voleu suprimir el tauler {title}? Això suprimirà totes les dades d'aquest tauler, incloses les targetes arxivades.",
|
||||
"Delete the board?" : "Voleu suprimir el tauler?",
|
||||
"Loading filtered view" : "S'està carregant la visualització filtrada",
|
||||
"No due" : "Sense venciment",
|
||||
"Search for {searchQuery} in all boards" : "Busca {searchQuery} a tots els taulers",
|
||||
"No results found" : "No s'han trobat resultats",
|
||||
"{stack} in {board}" : "{stack} a {board}",
|
||||
"Click to expand description" : "Feu clic per ampliar la descripció",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Creat el {created}\n* Última modificació el dia {lastMod}\n* {nbAttachments} fitxers adjunts\n* {nbComments} comentaris",
|
||||
"{nbCards} cards" : "{nbCards} targetes",
|
||||
"No upcoming cards" : "No hi ha pròximes targetes",
|
||||
"upcoming cards" : "pròximes targetes",
|
||||
"Due on {date}" : "Venciment el dia {date}",
|
||||
"Link to a board" : "Enllaça a un tauler",
|
||||
"Link to a card" : "Enllaç una targeta",
|
||||
"Create a card" : "Crea una targeta",
|
||||
"Message from {author} in {conversationName}" : "Missatge de {author} a {conversationName}",
|
||||
"Something went wrong" : "Alguna cosa ha anat malament",
|
||||
"Failed to upload {name}" : "No s'ha pogut pujar {name}",
|
||||
"Maximum file size of {size} exceeded" : "S'ha superat la mida màxima per fitxer de {size}",
|
||||
"Error creating the share" : "S'ha produït un error en crear la compartició",
|
||||
"Share with a Deck card" : "Compartir amb una targeta de Deck",
|
||||
"Share {file} with a Deck card" : "Compartir {file} amb una targeta de Deck",
|
||||
"Share" : "Compartir",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Tauler és una eina d'organització a l'estil kanban dirigida a la planificació personal i a l'organització de projectes per equips integrada a Nextcloud.\n\n\n- 📥 Afegiu les tasques en targetes i poseu-les en ordre\n- 📄 Apunteu notes addicionals en markdown\n- 🔖 Assigneu etiquetes per una organització encara millor\n- 👥 Compartiu amb el vostre equip, família o amics\n- 📎 Adjunteu fitxers i encasteu-los en la descripció en markdown\n- 💬 Debateu amb el vostre equip fent servir comentaris\n- ⚡ Mantingueu el seguiment de canvis al flux d'activitat\n- 🚀 Tingueu el vostre projecte organitzat",
|
||||
"Are you sure you want to transfer the board {title} for {user} ?" : "Esteu segur que voleu transferir el tauler {title} per a {user}?",
|
||||
"Transfer the board for {user} successfully" : "Transfereix el tauler per a {user} correctament",
|
||||
"Failed to transfer the board for {user}" : "No s'ha pogut transferir el tauler per a {user}",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Esteu segur que voleu suprimir el tauler {title}? Això eliminarà totes les dades d'aquest tauler.",
|
||||
"This week" : "Aquesta setmana",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Esteu segur que voleu transferir el tauler {title} per a {user}?"
|
||||
"Archive board" : "Arxiva tauler",
|
||||
"Unarchive board" : "Desarxiva tauler",
|
||||
"Delete board" : "Suprimeix tauler",
|
||||
"Board details" : "Detalls de la junta",
|
||||
"Link to a board" : "Enllaça a un tauler"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
268
l10n/cs.js
@@ -17,42 +17,42 @@ OC.L10N.register(
|
||||
"{user} has archived the board {before}" : "{user} zaarchivoval(a) tabuli {before}",
|
||||
"You have unarchived the board {board}" : "Vrátili jste zpět z archivace tabuli {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} vrátil(a) tabuli {before} zpět z archivace",
|
||||
"You have created a new list {stack} on board {board}" : "Vytvořili jste nový sloupec {stack} na tabuli {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} vytvořil(a) nový sloupec {stack} na tabuli {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Přejmenovali jste sloupec {before} na {stack} na tabuli {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} přejmenoval(a) sloupec {before} na {stack} na tabuli {board}",
|
||||
"You have deleted list {stack} on board {board}" : "Smazali jste sloupec {stack} na tabuli {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} smazal(a) sloupec {stack} na tabuli {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Vytvořili jste kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} vytvořil(a) kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Smazali jste kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} smazal(a) kartu {card} ve sloupci {board} na tabuli {board}",
|
||||
"You have created a new stack {stack} on board {board}" : "Vytvořili jste nový sloupec {stack} na tabuli {board}",
|
||||
"{user} has created a new stack {stack} on board {board}" : "{user} vytvořil(a) nový sloupec {stack} na tabuli {board}",
|
||||
"You have renamed stack {before} to {stack} on board {board}" : "Přejmenovali jste sloupec {before} na {stack} na tabuli {board}",
|
||||
"{user} has renamed stack {before} to {stack} on board {board}" : "{user} přejmenoval(a) sloupec {before} na {stack} na tabuli {board}",
|
||||
"You have deleted stack {stack} on board {board}" : "Smazali jste sloupec {stack} na tabuli {board}",
|
||||
"{user} has deleted stack {stack} on board {board}" : "{user} smazal(a) sloupec {stack} na tabuli {board}",
|
||||
"You have created card {card} in stack {stack} on board {board}" : "Vytvořili jste kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has created card {card} in stack {stack} on board {board}" : "{user} vytvořil(a) kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have deleted card {card} in stack {stack} on board {board}" : "Smazali jste kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has deleted card {card} in stack {stack} on board {board}" : "{user} smazal(a) kartu {card} ve sloupci {board} na tabuli {board}",
|
||||
"You have renamed the card {before} to {card}" : "Přejmenovali jste kartu {before} na {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} přejmenoval(a) kartu {before} na {card}",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "Přidali jste popis ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} přidal(a) popis ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "Aktualizovali jste popis karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} aktualizoval(a) popis karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "Zaarchivovali kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} zaarchivoval(a) kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "Zrušili jste archivacii karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} zrušil(a) archivaci karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} přejmenoval(a) {before} na {card}",
|
||||
"You have added a description to card {card} in stack {stack} on board {board}" : "Přidali jste popis ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has added a description to card {card} in stack {stack} on board {board}" : "{user} přidal(a) popis ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have updated the description of card {card} in stack {stack} on board {board}" : "Aktualizovali jste popis karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has updated the description of the card {card} in stack {stack} on board {board}" : "{user} aktualizoval(a) popis karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have archived card {card} in stack {stack} on board {board}" : "Zaarchivovali kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has archived card {card} in stack {stack} on board {board}" : "{user} zaarchivoval(a) kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have unarchived card {card} in stack {stack} on board {board}" : "Zrušili jste archivaci karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has unarchived card {card} in stack {stack} on board {board}" : "{user} zrušil(a) archivaci karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have removed the due date of card {card}" : "Odebrali jste termín u karty {card}",
|
||||
"{user} has removed the due date of card {card}" : "{user} odebral(a) termín u karty {card}",
|
||||
"You have set the due date of card {card} to {after}" : "Nastavili jste termín u karty {card} na {after}",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} nastavil(a) termín u karty {card} na {after}",
|
||||
"You have updated the due date of card {card} to {after}" : "Změnili jste termín u karty {card} na {after}",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} aktualizoval(a) termín u karty {card} na {after}",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Přidali jste štítek {label} kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} přidal(a) štítek {label} ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Odebrali jste štítek {label} z karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} odebral(a) štítek {label} z karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have added the tag {label} to card {card} in stack {stack} on board {board}" : "Přidali jste štítek {label} kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has added the tag {label} to card {card} in stack {stack} on board {board}" : "{user} přidal(a) štítek {label} ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have removed the tag {label} from card {card} in stack {stack} on board {board}" : "Odebrali jste štítek {label} z karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has removed the tag {label} from card {card} in stack {stack} on board {board}" : "{user} odebral(a) štítek {label} z karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Přiřadili jste {assigneduser} ke kartě {card} na tabuli {board}",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} přiřadil(a) {assigneduser} ke kartě {card} na tabuli {board}",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Zrušili jste přiřazení {assigneduser} u karty {card} na tabuli {board}",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} zrušil(a) přiřazení {assigneduser} z karty {card} na tabuli {board}",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : "Přesunuli jste kartu {card} ze sloupce {stackBefore} do {stack}",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} přesunul(a) kartu {card} ze sloupce {stackBefore} do {stack}",
|
||||
"You have moved the card {card} from stack {stackBefore} to {stack}" : "Přesunuli jste kartu {card} ze sloupce {stackBefore} do {stack}",
|
||||
"{user} has moved the card {card} from stack {stackBefore} to {stack}" : "{user} přesunul(a) kartu {card} ze sloupce {stackBefore} do {stack}",
|
||||
"You have added the attachment {attachment} to card {card}" : "Přidali jste přílohu {attachment} ke kartě {card}",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} přidal(a) přílohu {attachment} ke kartě {card}",
|
||||
"You have updated the attachment {attachment} on card {card}" : "Aktualizovali jste přílohu {attachment} u karty {card}",
|
||||
@@ -67,26 +67,21 @@ OC.L10N.register(
|
||||
"Deck" : "Deck",
|
||||
"Changes in the <strong>Deck app</strong>" : "Změny v <strong>aplikaci Deck</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "Na kartě byl vytvořen <strong>komentář</strong>",
|
||||
"Upcoming cards" : "Nadcházející karty",
|
||||
"Load more" : "Načíst více",
|
||||
"Personal" : "Osobní",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Kartu „%s“ na „%s“ vám přiřadil(a) %s.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} vám přiřadil(a) kartu {deck-card} na tabuli {deck-board}.",
|
||||
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} vám přiřadil(a) kartu „%s“ na „%s“.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "U karty „%s“ z tabule „%s“ nastalo plánované datum dokončení.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "Karta {deck-card} na tabuli {deck-board} dosáhla data plánovaného dokončení.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s vás zmínil(a) v komentáři k „%s“.",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} vás zmínil(a) v komentáři na kartě {deck-card}.",
|
||||
"{user} has mentioned you in a comment on \"%s\"." : "{user} vás zmínil(a) v komentáři v „%s“.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Uživatel %s vám nasdílel(a) tabuli „%s“.",
|
||||
"{user} has shared {deck-board} with you." : "{user} vám nasdílel(a) tabuli {deck-board}.",
|
||||
"Card comments" : "Komentáře v kartách",
|
||||
"%s on %s" : "%s na %s",
|
||||
"{user} has shared the board %s with you." : "{user} vám nasdílel(a) tabuli %s.",
|
||||
"No data was provided to create an attachment." : "Nebyla poskytnuta žádná data pro vytvoření přílohy.",
|
||||
"Finished" : "Dokončeno",
|
||||
"To review" : "K revizi",
|
||||
"Action needed" : "Nutná akce",
|
||||
"Later" : "Později",
|
||||
"copy" : "kopie",
|
||||
"To do" : "Zbývá udělat",
|
||||
"To do" : "Udělat",
|
||||
"Doing" : "Provádí se",
|
||||
"Done" : "Hotovo",
|
||||
"Example Task 3" : "Třetí úkol pro ukázku",
|
||||
@@ -101,217 +96,82 @@ OC.L10N.register(
|
||||
"Could not write file to disk" : "Soubor se nedaří se zapsat na úložiště",
|
||||
"A PHP extension stopped the file upload" : "PHP rozšíření zastavilo nahrávání souboru.",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Nebyl nahrán žádný soubor nebo jeho velikost přesáhla %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Tento komentář je delší než %s znaků.\nPřidán jako příloha ke kartě nazvané %s.\nDostupné na URL: %s.",
|
||||
"Card not found" : "Karta nebyla nalezena",
|
||||
"Path is already shared with this card" : "Popis umístění už je touto kartou sdíleno",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Neplatné datum – je třeba, aby formát data byl RRRR-MM-DD",
|
||||
"Personal planning and team project organization" : "Osobní plánování a organizování týmového projektu",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck je nástroj cílený na osobní nebo projektové plánování týmů v Kanban stylu, napojený do Nextcloud.\n\n\n- 📥 Zadávejte a uspořádávejte své úkoly do karet\n- 📄 Zapisujte si dodatečné poznámky (v Markdown) \n- 🔖 Přiřazujte štítky pro ještě lepší uspořádání\n- 👥 Sdílejte se svým týmem, přáteli nebo rodinou\n- 📎 Připojte soubory a vložte je do (Markdown) popisu \n- 💬 Diskutujte se svým týmem prostřednictvím komentářů\n- ⚡ Udržte si přehled o změnách prostřednictvím sledování proudu aktivit\n- 🚀 Dostaňte svůj projekt pod kontrolu",
|
||||
"Card details" : "Podrobnosti o kartě",
|
||||
"Add board" : "Přidat tabuli",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck je nástroj cílený na osobní nebo projektové plánování týmů v Kanban stylu, vestavěný v Nextcloud.\n\n\n- 📥 Zadávejte a uspořádávejte své úkoly do karet\n- 📄 Zapisujte si dodatečné poznámky \n- 🔖 Přiřazujte štítky pro ještě lepší organizaci\n- 👥 Sdílejte se svým týmem, přáteli nebo rodinou\n- 🚀 Dostaňte svůj projekt pod kontrolu",
|
||||
"Create new board" : "Vytvořit novou tabuli",
|
||||
"new board" : "nová tabule",
|
||||
"Select the board to link to a project" : "Vyberte tabuli kterou propojit s projektem",
|
||||
"Search by board title" : "Hledat podle názvu tabule",
|
||||
"Select board" : "Vybrat tabuli",
|
||||
"Create a new card" : "Vytvořit novou kartu",
|
||||
"Select a board" : "Vybrat tabuli",
|
||||
"Select a list" : "Vyberte sloupec",
|
||||
"Card title" : "Název karty",
|
||||
"Cancel" : "Storno",
|
||||
"Creating the new card …" : "Vytváření nové karty…",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "Karta „{card}“ byla přidána na „{board}“",
|
||||
"Open card" : "Otevřít kartu",
|
||||
"Close" : "Zavřít",
|
||||
"Create card" : "Vytvořit kartu",
|
||||
"Select a card" : "Vybrat kartu",
|
||||
"Select the card to link to a project" : "Vyberte kartu kterou propojit s projektem",
|
||||
"Select a board" : "Vybrat tabuli",
|
||||
"Select a card" : "Vybrat tabuli",
|
||||
"Link to card" : "Propojit s kartou",
|
||||
"File already exists" : "Soubor už existuje",
|
||||
"A file with the name {filename} already exists." : "Soubor nazvaný {filename} už existuje.",
|
||||
"Do you want to overwrite it?" : "Chcete položku přepsat?",
|
||||
"Overwrite file" : "Přepsat soubor",
|
||||
"Keep existing file" : "Ponechat existující soubor",
|
||||
"This board is read only" : "Tato tabule je pouze pro čtení",
|
||||
"Drop your files to upload" : "Přetáhněte sem soubory, které chcete nahrát",
|
||||
"Add card" : "Přidat kartu",
|
||||
"Archived cards" : "Archivované karty",
|
||||
"Add list" : "Přidat seznam",
|
||||
"Cancel" : "Storno",
|
||||
"Add new list" : "Přidat nový seznam",
|
||||
"List name" : "Název seznamu",
|
||||
"Active filters" : "Zapnuté filtry",
|
||||
"Apply filter" : "Uplatnit filtr",
|
||||
"Filter by tag" : "Filtrovat podle štítku",
|
||||
"Filter by assigned user" : "Filtrovat podle uživatele, který je úkolem pověřen",
|
||||
"Unassigned" : "Nepřiřazeno",
|
||||
"Filter by due date" : "Filtrovat podle termínu",
|
||||
"Overdue" : "Po termínu",
|
||||
"Next 24 hours" : "Následujících 24 hodin",
|
||||
"Next 7 days" : "Příštích 7 dnů",
|
||||
"Next 30 days" : "Příštích 30 dnů",
|
||||
"No due date" : "Žádný termín",
|
||||
"Clear filter" : "Vyčistit filtr",
|
||||
"Hide archived cards" : "Skrýt archivované karty",
|
||||
"Show archived cards" : "Zobrazit archivované karty",
|
||||
"Hide archived cards" : "Skrýt archivované karty",
|
||||
"Toggle compact mode" : "Vyp/zap. kompaktní režim",
|
||||
"Open details" : "Otevřít podorobnosti",
|
||||
"Details" : "Podrobnosti",
|
||||
"Loading board" : "Načítání tabule",
|
||||
"No lists available" : "Nejsou k dispozici žádné seznamy",
|
||||
"Create a new list to add cards to this board" : "Pro přidání karet na tuto tabuli vytvořte nový seznam",
|
||||
"Board not found" : "Tabule nenalezena",
|
||||
"Sharing" : "Sdílení",
|
||||
"Tags" : "Štítky",
|
||||
"Deleted items" : "Smazané položky",
|
||||
"Timeline" : "Časová osa",
|
||||
"Deleted lists" : "Smazané seznamy",
|
||||
"Deleted stacks" : "Smazané sloupce",
|
||||
"Undo" : "Vrátit zpět",
|
||||
"Deleted cards" : "Smazané karty",
|
||||
"Share board with a user, group or circle …" : "Sdílet tabuli s uživatelem, skupinou nebo okruhem…",
|
||||
"Searching for users, groups and circles …" : "Hledání v uživatelích, skupinách a okruzích…",
|
||||
"No participants found" : "Nenalezeni žádní účastníci",
|
||||
"Board owner" : "Vlastník tabule",
|
||||
"(Group)" : "(Skupina)",
|
||||
"(Circle)" : "(Okruh)",
|
||||
"Can edit" : "Může upravovat",
|
||||
"Can share" : "Může sdílet",
|
||||
"Can manage" : "Může spravovat",
|
||||
"Owner" : "Vlastník",
|
||||
"Delete" : "Smazat",
|
||||
"Failed to create share with {displayName}" : "Nepodařilo se vytvořit sdílení s {displayName}",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Opravdu chcete předat vlastnictví tabule {title} uživateli {user}?",
|
||||
"Transfer the board." : "Předat vlastnictví tabule.",
|
||||
"Transfer" : "Předat vlastnictví",
|
||||
"The board has been transferred to {user}" : "Vlastnictví tabule bylo předáno uživateli {user}",
|
||||
"Failed to transfer the board to {user}" : "Nepodařilo se předat vlastnictví tabule uživateli {user}",
|
||||
"Add a new list" : "Přidat nový sloupec",
|
||||
"Archive all cards" : "Archivovat všechny karty",
|
||||
"Unarchive all cards" : "Zrušit archivaci všech karet",
|
||||
"Add a new stack" : "Přidat nový sloupec",
|
||||
"Delete list" : "Smazat seznam",
|
||||
"Archive all cards in this list" : "Archivovat všechny karty v tomto seznamu",
|
||||
"Unarchive all cards in this list" : "Zrušit archivaci všech karet v tomto seznamu",
|
||||
"Add card" : "Přidat kartu",
|
||||
"Add a new card" : "Přidat novou kartu",
|
||||
"Card name" : "Název karty",
|
||||
"List deleted" : "Seznam smazán",
|
||||
"Edit" : "Upravit",
|
||||
"Add a new tag" : "Přidat nový štítek",
|
||||
"Add a new label" : "Přidat nový popisek",
|
||||
"title and color value must be provided" : "je třeba zadat nadpis a zvolit barvu",
|
||||
"Board name" : "Název tabule",
|
||||
"Members" : "Členové",
|
||||
"Upload new files" : "Nahrát nové soubory",
|
||||
"Share from Files" : "Sdílet ze Souborů",
|
||||
"Pending share" : "Čekající sdílení",
|
||||
"Add this attachment" : "Přidat tuto přílohu",
|
||||
"Show in Files" : "Zobrazit v Souborech",
|
||||
"Download" : "Stáhnout",
|
||||
"Remove attachment" : "Odebrat přílohu",
|
||||
"Delete Attachment" : "Smazat přílohu",
|
||||
"Restore Attachment" : "Obnovit přílohu",
|
||||
"File to share" : "Soubor ke sdílení",
|
||||
"Invalid path selected" : "Je vybrán neplatný popis umístění",
|
||||
"Open in sidebar view" : "Otevřít v zobrazení v postranním panelu",
|
||||
"Open in bigger view" : "Otevřít ve větším zobrazení",
|
||||
"Attachments" : "Přílohy",
|
||||
"Comments" : "Komentáře",
|
||||
"Modified" : "Změněno",
|
||||
"Created" : "Vytvořeno",
|
||||
"The title cannot be empty." : "Nadpis je třeba vyplnit.",
|
||||
"No comments yet. Begin the discussion!" : "Zatím bez komentářů. Zahajte diskuzi!",
|
||||
"Failed to load comments" : "Načtení komentářů se nezdařilo",
|
||||
"Load More" : "Načíst více",
|
||||
"Assign a tag to this card…" : "Přiřadit této kartě štítek…",
|
||||
"Assign to users" : "Přiřadit k uživatelům",
|
||||
"Assign to users/groups/circles" : "Přiřadit uživatelům/skupinám/okruhům",
|
||||
"Assign a user to this card…" : "Přiřadit uživatele k této kartě…",
|
||||
"Due date" : "Termín",
|
||||
"Set a due date" : "Vybrat termín",
|
||||
"Remove due date" : "Odstranit termín",
|
||||
"Select Date" : "Vybrat datum",
|
||||
"Today" : "Dnes",
|
||||
"Tomorrow" : "Zítra",
|
||||
"Next week" : "Příští týden",
|
||||
"Next month" : "Příští měsíc",
|
||||
"Save" : "Uložit",
|
||||
"The comment cannot be empty." : "Komentář je třeba vyplnit.",
|
||||
"The comment cannot be longer than 1000 characters." : "Délka komentáře může být nejvýše 1 000 znaků.",
|
||||
"In reply to" : "V odpověď na",
|
||||
"Cancel reply" : "Zrušit odpověď",
|
||||
"Reply" : "Odpovědět",
|
||||
"Update" : "Aktualizovat",
|
||||
"Description" : "Popis",
|
||||
"(Unsaved)" : "(Neuloženo)",
|
||||
"(Saving…)" : "(Ukládání…)",
|
||||
"Formatting help" : "Nápověda k formátování",
|
||||
"Edit description" : "Upravit popis",
|
||||
"View description" : "Zobrazit popis",
|
||||
"Add Attachment" : "Přidat přílohu",
|
||||
"Write a description …" : "Zadejte popis…",
|
||||
"Choose attachment" : "Zvolte přílohu",
|
||||
"(group)" : "(skupina)",
|
||||
"Todo items" : "Položky k udělání",
|
||||
"{count} comments, {unread} unread" : "{count} komentářů, {unread} nepřečtených",
|
||||
"Edit card title" : "Upravit nadpis karty",
|
||||
"Attachments" : "Přílohy",
|
||||
"Comments" : "Komentáře",
|
||||
"Modified" : "Změněno",
|
||||
"Created" : "Vytvořeno",
|
||||
"Upload attachment" : "Nahrát přílohu",
|
||||
"New comment" : "Nový komentář",
|
||||
"Save" : "Uložit",
|
||||
"No users found" : "Nenalezení žádní uživatelé",
|
||||
"No comments yet. Begin the discussion!" : "Zatím bez komentářů. Zahajte diskuzi!",
|
||||
"Update" : "Aktualizovat",
|
||||
"Assign to me" : "Přiřadit mě",
|
||||
"Unassign myself" : "Zrušit přiřazení sobě",
|
||||
"Move card" : "Přesunout kartu",
|
||||
"Unarchive card" : "Zrušit archivaci karty",
|
||||
"Archive card" : "Archivovat kartu",
|
||||
"Delete card" : "Smazat kartu",
|
||||
"Move card to another board" : "Přesunout kartu na jinou tabuli",
|
||||
"List is empty" : "Seznam je prázdný",
|
||||
"Card deleted" : "Karta smazána",
|
||||
"seconds ago" : "před několika sekundami",
|
||||
"Move card" : "Přesunout kartu",
|
||||
"Card details" : "Podrobnosti o kartě",
|
||||
"Select a stack" : "Vybrat sloupec",
|
||||
"All boards" : "Všechny tabule",
|
||||
"Archived boards" : "Archivované tabule",
|
||||
"Shared with you" : "Sdíleno s vámi",
|
||||
"Deck settings" : "Nastavení pro Deck",
|
||||
"Use bigger card view" : "Použít větší zobrazení karet",
|
||||
"Show card ID badge" : "Zobrazit odznáček s identifikátorem karty",
|
||||
"Show boards in calendar/tasks" : "Zobrazit tabule v kalendáři/úkolech",
|
||||
"Limit deck usage of groups" : "Omezit využití deck na skupiny",
|
||||
"Shared boards" : "Sdílené tabule",
|
||||
"Settings" : "Nastavení",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Omezení nastavené pro Deck brání uživatelům, kteří nejsou součástí těchto skupin, ve vytváření vlastních tabulí. Nicméně i tak ale pořád budou moci pracovat na tabulích, které jsou jim nasdíleny.",
|
||||
"Board details" : "Podrobnosti o tabuli",
|
||||
"New board title" : "Název nové tabule",
|
||||
"Edit board" : "Upravit tabuli",
|
||||
"Clone board" : "Klonovat tabuli",
|
||||
"Unarchive board" : "Vrátit tabuli zpět z archivu",
|
||||
"Archive board" : "Archivovat tabuli",
|
||||
"Turn on due date reminders" : "Zapnout upomínky termínů",
|
||||
"Turn off due date reminders" : "Vypnout upomínky termínů",
|
||||
"Due date reminders" : "Upomínky termínů",
|
||||
"All cards" : "Všechny karty",
|
||||
"Assigned cards" : "Přiřazené karty",
|
||||
"No notifications" : "Žádná upozornění",
|
||||
"Delete board" : "Smazat tabuli",
|
||||
"Board {0} deleted" : "Tabule {0} smazána",
|
||||
"Only assigned cards" : "Pouze přiřazené karty",
|
||||
"No reminder" : "Bez připomínky",
|
||||
"An error occurred" : "Došlo k chybě",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Opravdu chcete tabuli {title} smazat? Toto smaže veškerá data této tabule, včetně archivovaných karet.",
|
||||
"Delete the board?" : "Smazat tabuli?",
|
||||
"Loading filtered view" : "Načítání filtrovaného pohledu",
|
||||
"No due" : "Žádný termín",
|
||||
"Search for {searchQuery} in all boards" : "Hledat {searchQuery} na všech tabulích",
|
||||
"No results found" : "Nenalezeny žádné výsledky",
|
||||
"{stack} in {board}" : "{stack} v {board}",
|
||||
"Click to expand description" : "Popis rozbalíte kliknutím",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Vytvořeno {created}\n* Naposledy upraveno {lastMod}\n* {nbAttachments} příloh\n* {nbComments} komentářů",
|
||||
"{nbCards} cards" : "{nbCards} karet",
|
||||
"No upcoming cards" : "Žádné nadcházející karty",
|
||||
"upcoming cards" : "nadcházející karty",
|
||||
"Due on {date}" : "Termín {date}",
|
||||
"Clone board" : "Klonovat tabuli",
|
||||
"Archive board" : "Archivovat tabuli",
|
||||
"Unarchive board" : "Vrátit tabuli zpět z archivu",
|
||||
"Delete board" : "Smazat tabuli",
|
||||
"Board details" : "Podrobnosti o desce",
|
||||
"Link to a board" : "Propojit s tabulí",
|
||||
"Link to a card" : "Propojit s kartou",
|
||||
"Create a card" : "Vytvořit kartu",
|
||||
"Message from {author} in {conversationName}" : "Zpráva od {author} v {conversationName}",
|
||||
"Something went wrong" : "Něco se pokazilo",
|
||||
"Failed to upload {name}" : "Nepodařilo se nahrát {name}",
|
||||
"Maximum file size of {size} exceeded" : "Překročena nejvyšší umožněná velikost souboru {size}",
|
||||
"Error creating the share" : "Chyba při vytváření sdílení",
|
||||
"Share with a Deck card" : "Sdílet s kartou aplikace Deck",
|
||||
"Share {file} with a Deck card" : "Sdílet {file} s kartou aplikace Deck",
|
||||
"Share" : "Sdílet",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck je nástroj cílený na osobní nebo projektové plánování týmů v Kanban stylu, vestavěný v Nextcloud.\n\n\n- 📥 Zadávejte a uspořádávejte své úkoly do karet\n- 📄 Zapisujte si dodatečné poznámky \n- 🔖 Přiřazujte štítky pro ještě lepší organizaci\n- 👥 Sdílejte se svým týmem, přáteli nebo rodinou\n- 🚀 Dostaňte svůj projekt pod kontrolu",
|
||||
"Are you sure you want to transfer the board {title} for {user} ?" : "Opravdu chcete předat vlastnictví tabule {title} uživateli {user}?",
|
||||
"Transfer the board for {user} successfully" : "Předání vlastnictví tabule uživateli {user} úspěšné",
|
||||
"Failed to transfer the board for {user}" : "Nepodařilo se předat vlastnictví tabule uživateli {user}",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Opravdu chcete tabuly {title} smazat? Toto smaže veškerá data této tabule.",
|
||||
"This week" : "Tento týden",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Opravdu chcete předat vlastnictví tabule {title} uživateli {user}?"
|
||||
"Link to a card" : "Propojit s kartou"
|
||||
},
|
||||
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
|
||||
|
||||
268
l10n/cs.json
@@ -15,42 +15,42 @@
|
||||
"{user} has archived the board {before}" : "{user} zaarchivoval(a) tabuli {before}",
|
||||
"You have unarchived the board {board}" : "Vrátili jste zpět z archivace tabuli {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} vrátil(a) tabuli {before} zpět z archivace",
|
||||
"You have created a new list {stack} on board {board}" : "Vytvořili jste nový sloupec {stack} na tabuli {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} vytvořil(a) nový sloupec {stack} na tabuli {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Přejmenovali jste sloupec {before} na {stack} na tabuli {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} přejmenoval(a) sloupec {before} na {stack} na tabuli {board}",
|
||||
"You have deleted list {stack} on board {board}" : "Smazali jste sloupec {stack} na tabuli {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} smazal(a) sloupec {stack} na tabuli {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Vytvořili jste kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} vytvořil(a) kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Smazali jste kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} smazal(a) kartu {card} ve sloupci {board} na tabuli {board}",
|
||||
"You have created a new stack {stack} on board {board}" : "Vytvořili jste nový sloupec {stack} na tabuli {board}",
|
||||
"{user} has created a new stack {stack} on board {board}" : "{user} vytvořil(a) nový sloupec {stack} na tabuli {board}",
|
||||
"You have renamed stack {before} to {stack} on board {board}" : "Přejmenovali jste sloupec {before} na {stack} na tabuli {board}",
|
||||
"{user} has renamed stack {before} to {stack} on board {board}" : "{user} přejmenoval(a) sloupec {before} na {stack} na tabuli {board}",
|
||||
"You have deleted stack {stack} on board {board}" : "Smazali jste sloupec {stack} na tabuli {board}",
|
||||
"{user} has deleted stack {stack} on board {board}" : "{user} smazal(a) sloupec {stack} na tabuli {board}",
|
||||
"You have created card {card} in stack {stack} on board {board}" : "Vytvořili jste kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has created card {card} in stack {stack} on board {board}" : "{user} vytvořil(a) kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have deleted card {card} in stack {stack} on board {board}" : "Smazali jste kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has deleted card {card} in stack {stack} on board {board}" : "{user} smazal(a) kartu {card} ve sloupci {board} na tabuli {board}",
|
||||
"You have renamed the card {before} to {card}" : "Přejmenovali jste kartu {before} na {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} přejmenoval(a) kartu {before} na {card}",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "Přidali jste popis ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} přidal(a) popis ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "Aktualizovali jste popis karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} aktualizoval(a) popis karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "Zaarchivovali kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} zaarchivoval(a) kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "Zrušili jste archivacii karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} zrušil(a) archivaci karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} přejmenoval(a) {before} na {card}",
|
||||
"You have added a description to card {card} in stack {stack} on board {board}" : "Přidali jste popis ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has added a description to card {card} in stack {stack} on board {board}" : "{user} přidal(a) popis ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have updated the description of card {card} in stack {stack} on board {board}" : "Aktualizovali jste popis karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has updated the description of the card {card} in stack {stack} on board {board}" : "{user} aktualizoval(a) popis karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have archived card {card} in stack {stack} on board {board}" : "Zaarchivovali kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has archived card {card} in stack {stack} on board {board}" : "{user} zaarchivoval(a) kartu {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have unarchived card {card} in stack {stack} on board {board}" : "Zrušili jste archivaci karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has unarchived card {card} in stack {stack} on board {board}" : "{user} zrušil(a) archivaci karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have removed the due date of card {card}" : "Odebrali jste termín u karty {card}",
|
||||
"{user} has removed the due date of card {card}" : "{user} odebral(a) termín u karty {card}",
|
||||
"You have set the due date of card {card} to {after}" : "Nastavili jste termín u karty {card} na {after}",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} nastavil(a) termín u karty {card} na {after}",
|
||||
"You have updated the due date of card {card} to {after}" : "Změnili jste termín u karty {card} na {after}",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} aktualizoval(a) termín u karty {card} na {after}",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Přidali jste štítek {label} kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} přidal(a) štítek {label} ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Odebrali jste štítek {label} z karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} odebral(a) štítek {label} z karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have added the tag {label} to card {card} in stack {stack} on board {board}" : "Přidali jste štítek {label} kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has added the tag {label} to card {card} in stack {stack} on board {board}" : "{user} přidal(a) štítek {label} ke kartě {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have removed the tag {label} from card {card} in stack {stack} on board {board}" : "Odebrali jste štítek {label} z karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"{user} has removed the tag {label} from card {card} in stack {stack} on board {board}" : "{user} odebral(a) štítek {label} z karty {card} ve sloupci {stack} na tabuli {board}",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Přiřadili jste {assigneduser} ke kartě {card} na tabuli {board}",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} přiřadil(a) {assigneduser} ke kartě {card} na tabuli {board}",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Zrušili jste přiřazení {assigneduser} u karty {card} na tabuli {board}",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} zrušil(a) přiřazení {assigneduser} z karty {card} na tabuli {board}",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : "Přesunuli jste kartu {card} ze sloupce {stackBefore} do {stack}",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} přesunul(a) kartu {card} ze sloupce {stackBefore} do {stack}",
|
||||
"You have moved the card {card} from stack {stackBefore} to {stack}" : "Přesunuli jste kartu {card} ze sloupce {stackBefore} do {stack}",
|
||||
"{user} has moved the card {card} from stack {stackBefore} to {stack}" : "{user} přesunul(a) kartu {card} ze sloupce {stackBefore} do {stack}",
|
||||
"You have added the attachment {attachment} to card {card}" : "Přidali jste přílohu {attachment} ke kartě {card}",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} přidal(a) přílohu {attachment} ke kartě {card}",
|
||||
"You have updated the attachment {attachment} on card {card}" : "Aktualizovali jste přílohu {attachment} u karty {card}",
|
||||
@@ -65,26 +65,21 @@
|
||||
"Deck" : "Deck",
|
||||
"Changes in the <strong>Deck app</strong>" : "Změny v <strong>aplikaci Deck</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "Na kartě byl vytvořen <strong>komentář</strong>",
|
||||
"Upcoming cards" : "Nadcházející karty",
|
||||
"Load more" : "Načíst více",
|
||||
"Personal" : "Osobní",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Kartu „%s“ na „%s“ vám přiřadil(a) %s.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} vám přiřadil(a) kartu {deck-card} na tabuli {deck-board}.",
|
||||
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} vám přiřadil(a) kartu „%s“ na „%s“.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "U karty „%s“ z tabule „%s“ nastalo plánované datum dokončení.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "Karta {deck-card} na tabuli {deck-board} dosáhla data plánovaného dokončení.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s vás zmínil(a) v komentáři k „%s“.",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} vás zmínil(a) v komentáři na kartě {deck-card}.",
|
||||
"{user} has mentioned you in a comment on \"%s\"." : "{user} vás zmínil(a) v komentáři v „%s“.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Uživatel %s vám nasdílel(a) tabuli „%s“.",
|
||||
"{user} has shared {deck-board} with you." : "{user} vám nasdílel(a) tabuli {deck-board}.",
|
||||
"Card comments" : "Komentáře v kartách",
|
||||
"%s on %s" : "%s na %s",
|
||||
"{user} has shared the board %s with you." : "{user} vám nasdílel(a) tabuli %s.",
|
||||
"No data was provided to create an attachment." : "Nebyla poskytnuta žádná data pro vytvoření přílohy.",
|
||||
"Finished" : "Dokončeno",
|
||||
"To review" : "K revizi",
|
||||
"Action needed" : "Nutná akce",
|
||||
"Later" : "Později",
|
||||
"copy" : "kopie",
|
||||
"To do" : "Zbývá udělat",
|
||||
"To do" : "Udělat",
|
||||
"Doing" : "Provádí se",
|
||||
"Done" : "Hotovo",
|
||||
"Example Task 3" : "Třetí úkol pro ukázku",
|
||||
@@ -99,217 +94,82 @@
|
||||
"Could not write file to disk" : "Soubor se nedaří se zapsat na úložiště",
|
||||
"A PHP extension stopped the file upload" : "PHP rozšíření zastavilo nahrávání souboru.",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Nebyl nahrán žádný soubor nebo jeho velikost přesáhla %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Tento komentář je delší než %s znaků.\nPřidán jako příloha ke kartě nazvané %s.\nDostupné na URL: %s.",
|
||||
"Card not found" : "Karta nebyla nalezena",
|
||||
"Path is already shared with this card" : "Popis umístění už je touto kartou sdíleno",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Neplatné datum – je třeba, aby formát data byl RRRR-MM-DD",
|
||||
"Personal planning and team project organization" : "Osobní plánování a organizování týmového projektu",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck je nástroj cílený na osobní nebo projektové plánování týmů v Kanban stylu, napojený do Nextcloud.\n\n\n- 📥 Zadávejte a uspořádávejte své úkoly do karet\n- 📄 Zapisujte si dodatečné poznámky (v Markdown) \n- 🔖 Přiřazujte štítky pro ještě lepší uspořádání\n- 👥 Sdílejte se svým týmem, přáteli nebo rodinou\n- 📎 Připojte soubory a vložte je do (Markdown) popisu \n- 💬 Diskutujte se svým týmem prostřednictvím komentářů\n- ⚡ Udržte si přehled o změnách prostřednictvím sledování proudu aktivit\n- 🚀 Dostaňte svůj projekt pod kontrolu",
|
||||
"Card details" : "Podrobnosti o kartě",
|
||||
"Add board" : "Přidat tabuli",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck je nástroj cílený na osobní nebo projektové plánování týmů v Kanban stylu, vestavěný v Nextcloud.\n\n\n- 📥 Zadávejte a uspořádávejte své úkoly do karet\n- 📄 Zapisujte si dodatečné poznámky \n- 🔖 Přiřazujte štítky pro ještě lepší organizaci\n- 👥 Sdílejte se svým týmem, přáteli nebo rodinou\n- 🚀 Dostaňte svůj projekt pod kontrolu",
|
||||
"Create new board" : "Vytvořit novou tabuli",
|
||||
"new board" : "nová tabule",
|
||||
"Select the board to link to a project" : "Vyberte tabuli kterou propojit s projektem",
|
||||
"Search by board title" : "Hledat podle názvu tabule",
|
||||
"Select board" : "Vybrat tabuli",
|
||||
"Create a new card" : "Vytvořit novou kartu",
|
||||
"Select a board" : "Vybrat tabuli",
|
||||
"Select a list" : "Vyberte sloupec",
|
||||
"Card title" : "Název karty",
|
||||
"Cancel" : "Storno",
|
||||
"Creating the new card …" : "Vytváření nové karty…",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "Karta „{card}“ byla přidána na „{board}“",
|
||||
"Open card" : "Otevřít kartu",
|
||||
"Close" : "Zavřít",
|
||||
"Create card" : "Vytvořit kartu",
|
||||
"Select a card" : "Vybrat kartu",
|
||||
"Select the card to link to a project" : "Vyberte kartu kterou propojit s projektem",
|
||||
"Select a board" : "Vybrat tabuli",
|
||||
"Select a card" : "Vybrat tabuli",
|
||||
"Link to card" : "Propojit s kartou",
|
||||
"File already exists" : "Soubor už existuje",
|
||||
"A file with the name {filename} already exists." : "Soubor nazvaný {filename} už existuje.",
|
||||
"Do you want to overwrite it?" : "Chcete položku přepsat?",
|
||||
"Overwrite file" : "Přepsat soubor",
|
||||
"Keep existing file" : "Ponechat existující soubor",
|
||||
"This board is read only" : "Tato tabule je pouze pro čtení",
|
||||
"Drop your files to upload" : "Přetáhněte sem soubory, které chcete nahrát",
|
||||
"Add card" : "Přidat kartu",
|
||||
"Archived cards" : "Archivované karty",
|
||||
"Add list" : "Přidat seznam",
|
||||
"Cancel" : "Storno",
|
||||
"Add new list" : "Přidat nový seznam",
|
||||
"List name" : "Název seznamu",
|
||||
"Active filters" : "Zapnuté filtry",
|
||||
"Apply filter" : "Uplatnit filtr",
|
||||
"Filter by tag" : "Filtrovat podle štítku",
|
||||
"Filter by assigned user" : "Filtrovat podle uživatele, který je úkolem pověřen",
|
||||
"Unassigned" : "Nepřiřazeno",
|
||||
"Filter by due date" : "Filtrovat podle termínu",
|
||||
"Overdue" : "Po termínu",
|
||||
"Next 24 hours" : "Následujících 24 hodin",
|
||||
"Next 7 days" : "Příštích 7 dnů",
|
||||
"Next 30 days" : "Příštích 30 dnů",
|
||||
"No due date" : "Žádný termín",
|
||||
"Clear filter" : "Vyčistit filtr",
|
||||
"Hide archived cards" : "Skrýt archivované karty",
|
||||
"Show archived cards" : "Zobrazit archivované karty",
|
||||
"Hide archived cards" : "Skrýt archivované karty",
|
||||
"Toggle compact mode" : "Vyp/zap. kompaktní režim",
|
||||
"Open details" : "Otevřít podorobnosti",
|
||||
"Details" : "Podrobnosti",
|
||||
"Loading board" : "Načítání tabule",
|
||||
"No lists available" : "Nejsou k dispozici žádné seznamy",
|
||||
"Create a new list to add cards to this board" : "Pro přidání karet na tuto tabuli vytvořte nový seznam",
|
||||
"Board not found" : "Tabule nenalezena",
|
||||
"Sharing" : "Sdílení",
|
||||
"Tags" : "Štítky",
|
||||
"Deleted items" : "Smazané položky",
|
||||
"Timeline" : "Časová osa",
|
||||
"Deleted lists" : "Smazané seznamy",
|
||||
"Deleted stacks" : "Smazané sloupce",
|
||||
"Undo" : "Vrátit zpět",
|
||||
"Deleted cards" : "Smazané karty",
|
||||
"Share board with a user, group or circle …" : "Sdílet tabuli s uživatelem, skupinou nebo okruhem…",
|
||||
"Searching for users, groups and circles …" : "Hledání v uživatelích, skupinách a okruzích…",
|
||||
"No participants found" : "Nenalezeni žádní účastníci",
|
||||
"Board owner" : "Vlastník tabule",
|
||||
"(Group)" : "(Skupina)",
|
||||
"(Circle)" : "(Okruh)",
|
||||
"Can edit" : "Může upravovat",
|
||||
"Can share" : "Může sdílet",
|
||||
"Can manage" : "Může spravovat",
|
||||
"Owner" : "Vlastník",
|
||||
"Delete" : "Smazat",
|
||||
"Failed to create share with {displayName}" : "Nepodařilo se vytvořit sdílení s {displayName}",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Opravdu chcete předat vlastnictví tabule {title} uživateli {user}?",
|
||||
"Transfer the board." : "Předat vlastnictví tabule.",
|
||||
"Transfer" : "Předat vlastnictví",
|
||||
"The board has been transferred to {user}" : "Vlastnictví tabule bylo předáno uživateli {user}",
|
||||
"Failed to transfer the board to {user}" : "Nepodařilo se předat vlastnictví tabule uživateli {user}",
|
||||
"Add a new list" : "Přidat nový sloupec",
|
||||
"Archive all cards" : "Archivovat všechny karty",
|
||||
"Unarchive all cards" : "Zrušit archivaci všech karet",
|
||||
"Add a new stack" : "Přidat nový sloupec",
|
||||
"Delete list" : "Smazat seznam",
|
||||
"Archive all cards in this list" : "Archivovat všechny karty v tomto seznamu",
|
||||
"Unarchive all cards in this list" : "Zrušit archivaci všech karet v tomto seznamu",
|
||||
"Add card" : "Přidat kartu",
|
||||
"Add a new card" : "Přidat novou kartu",
|
||||
"Card name" : "Název karty",
|
||||
"List deleted" : "Seznam smazán",
|
||||
"Edit" : "Upravit",
|
||||
"Add a new tag" : "Přidat nový štítek",
|
||||
"Add a new label" : "Přidat nový popisek",
|
||||
"title and color value must be provided" : "je třeba zadat nadpis a zvolit barvu",
|
||||
"Board name" : "Název tabule",
|
||||
"Members" : "Členové",
|
||||
"Upload new files" : "Nahrát nové soubory",
|
||||
"Share from Files" : "Sdílet ze Souborů",
|
||||
"Pending share" : "Čekající sdílení",
|
||||
"Add this attachment" : "Přidat tuto přílohu",
|
||||
"Show in Files" : "Zobrazit v Souborech",
|
||||
"Download" : "Stáhnout",
|
||||
"Remove attachment" : "Odebrat přílohu",
|
||||
"Delete Attachment" : "Smazat přílohu",
|
||||
"Restore Attachment" : "Obnovit přílohu",
|
||||
"File to share" : "Soubor ke sdílení",
|
||||
"Invalid path selected" : "Je vybrán neplatný popis umístění",
|
||||
"Open in sidebar view" : "Otevřít v zobrazení v postranním panelu",
|
||||
"Open in bigger view" : "Otevřít ve větším zobrazení",
|
||||
"Attachments" : "Přílohy",
|
||||
"Comments" : "Komentáře",
|
||||
"Modified" : "Změněno",
|
||||
"Created" : "Vytvořeno",
|
||||
"The title cannot be empty." : "Nadpis je třeba vyplnit.",
|
||||
"No comments yet. Begin the discussion!" : "Zatím bez komentářů. Zahajte diskuzi!",
|
||||
"Failed to load comments" : "Načtení komentářů se nezdařilo",
|
||||
"Load More" : "Načíst více",
|
||||
"Assign a tag to this card…" : "Přiřadit této kartě štítek…",
|
||||
"Assign to users" : "Přiřadit k uživatelům",
|
||||
"Assign to users/groups/circles" : "Přiřadit uživatelům/skupinám/okruhům",
|
||||
"Assign a user to this card…" : "Přiřadit uživatele k této kartě…",
|
||||
"Due date" : "Termín",
|
||||
"Set a due date" : "Vybrat termín",
|
||||
"Remove due date" : "Odstranit termín",
|
||||
"Select Date" : "Vybrat datum",
|
||||
"Today" : "Dnes",
|
||||
"Tomorrow" : "Zítra",
|
||||
"Next week" : "Příští týden",
|
||||
"Next month" : "Příští měsíc",
|
||||
"Save" : "Uložit",
|
||||
"The comment cannot be empty." : "Komentář je třeba vyplnit.",
|
||||
"The comment cannot be longer than 1000 characters." : "Délka komentáře může být nejvýše 1 000 znaků.",
|
||||
"In reply to" : "V odpověď na",
|
||||
"Cancel reply" : "Zrušit odpověď",
|
||||
"Reply" : "Odpovědět",
|
||||
"Update" : "Aktualizovat",
|
||||
"Description" : "Popis",
|
||||
"(Unsaved)" : "(Neuloženo)",
|
||||
"(Saving…)" : "(Ukládání…)",
|
||||
"Formatting help" : "Nápověda k formátování",
|
||||
"Edit description" : "Upravit popis",
|
||||
"View description" : "Zobrazit popis",
|
||||
"Add Attachment" : "Přidat přílohu",
|
||||
"Write a description …" : "Zadejte popis…",
|
||||
"Choose attachment" : "Zvolte přílohu",
|
||||
"(group)" : "(skupina)",
|
||||
"Todo items" : "Položky k udělání",
|
||||
"{count} comments, {unread} unread" : "{count} komentářů, {unread} nepřečtených",
|
||||
"Edit card title" : "Upravit nadpis karty",
|
||||
"Attachments" : "Přílohy",
|
||||
"Comments" : "Komentáře",
|
||||
"Modified" : "Změněno",
|
||||
"Created" : "Vytvořeno",
|
||||
"Upload attachment" : "Nahrát přílohu",
|
||||
"New comment" : "Nový komentář",
|
||||
"Save" : "Uložit",
|
||||
"No users found" : "Nenalezení žádní uživatelé",
|
||||
"No comments yet. Begin the discussion!" : "Zatím bez komentářů. Zahajte diskuzi!",
|
||||
"Update" : "Aktualizovat",
|
||||
"Assign to me" : "Přiřadit mě",
|
||||
"Unassign myself" : "Zrušit přiřazení sobě",
|
||||
"Move card" : "Přesunout kartu",
|
||||
"Unarchive card" : "Zrušit archivaci karty",
|
||||
"Archive card" : "Archivovat kartu",
|
||||
"Delete card" : "Smazat kartu",
|
||||
"Move card to another board" : "Přesunout kartu na jinou tabuli",
|
||||
"List is empty" : "Seznam je prázdný",
|
||||
"Card deleted" : "Karta smazána",
|
||||
"seconds ago" : "před několika sekundami",
|
||||
"Move card" : "Přesunout kartu",
|
||||
"Card details" : "Podrobnosti o kartě",
|
||||
"Select a stack" : "Vybrat sloupec",
|
||||
"All boards" : "Všechny tabule",
|
||||
"Archived boards" : "Archivované tabule",
|
||||
"Shared with you" : "Sdíleno s vámi",
|
||||
"Deck settings" : "Nastavení pro Deck",
|
||||
"Use bigger card view" : "Použít větší zobrazení karet",
|
||||
"Show card ID badge" : "Zobrazit odznáček s identifikátorem karty",
|
||||
"Show boards in calendar/tasks" : "Zobrazit tabule v kalendáři/úkolech",
|
||||
"Limit deck usage of groups" : "Omezit využití deck na skupiny",
|
||||
"Shared boards" : "Sdílené tabule",
|
||||
"Settings" : "Nastavení",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Omezení nastavené pro Deck brání uživatelům, kteří nejsou součástí těchto skupin, ve vytváření vlastních tabulí. Nicméně i tak ale pořád budou moci pracovat na tabulích, které jsou jim nasdíleny.",
|
||||
"Board details" : "Podrobnosti o tabuli",
|
||||
"New board title" : "Název nové tabule",
|
||||
"Edit board" : "Upravit tabuli",
|
||||
"Clone board" : "Klonovat tabuli",
|
||||
"Unarchive board" : "Vrátit tabuli zpět z archivu",
|
||||
"Archive board" : "Archivovat tabuli",
|
||||
"Turn on due date reminders" : "Zapnout upomínky termínů",
|
||||
"Turn off due date reminders" : "Vypnout upomínky termínů",
|
||||
"Due date reminders" : "Upomínky termínů",
|
||||
"All cards" : "Všechny karty",
|
||||
"Assigned cards" : "Přiřazené karty",
|
||||
"No notifications" : "Žádná upozornění",
|
||||
"Delete board" : "Smazat tabuli",
|
||||
"Board {0} deleted" : "Tabule {0} smazána",
|
||||
"Only assigned cards" : "Pouze přiřazené karty",
|
||||
"No reminder" : "Bez připomínky",
|
||||
"An error occurred" : "Došlo k chybě",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Opravdu chcete tabuli {title} smazat? Toto smaže veškerá data této tabule, včetně archivovaných karet.",
|
||||
"Delete the board?" : "Smazat tabuli?",
|
||||
"Loading filtered view" : "Načítání filtrovaného pohledu",
|
||||
"No due" : "Žádný termín",
|
||||
"Search for {searchQuery} in all boards" : "Hledat {searchQuery} na všech tabulích",
|
||||
"No results found" : "Nenalezeny žádné výsledky",
|
||||
"{stack} in {board}" : "{stack} v {board}",
|
||||
"Click to expand description" : "Popis rozbalíte kliknutím",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Vytvořeno {created}\n* Naposledy upraveno {lastMod}\n* {nbAttachments} příloh\n* {nbComments} komentářů",
|
||||
"{nbCards} cards" : "{nbCards} karet",
|
||||
"No upcoming cards" : "Žádné nadcházející karty",
|
||||
"upcoming cards" : "nadcházející karty",
|
||||
"Due on {date}" : "Termín {date}",
|
||||
"Clone board" : "Klonovat tabuli",
|
||||
"Archive board" : "Archivovat tabuli",
|
||||
"Unarchive board" : "Vrátit tabuli zpět z archivu",
|
||||
"Delete board" : "Smazat tabuli",
|
||||
"Board details" : "Podrobnosti o desce",
|
||||
"Link to a board" : "Propojit s tabulí",
|
||||
"Link to a card" : "Propojit s kartou",
|
||||
"Create a card" : "Vytvořit kartu",
|
||||
"Message from {author} in {conversationName}" : "Zpráva od {author} v {conversationName}",
|
||||
"Something went wrong" : "Něco se pokazilo",
|
||||
"Failed to upload {name}" : "Nepodařilo se nahrát {name}",
|
||||
"Maximum file size of {size} exceeded" : "Překročena nejvyšší umožněná velikost souboru {size}",
|
||||
"Error creating the share" : "Chyba při vytváření sdílení",
|
||||
"Share with a Deck card" : "Sdílet s kartou aplikace Deck",
|
||||
"Share {file} with a Deck card" : "Sdílet {file} s kartou aplikace Deck",
|
||||
"Share" : "Sdílet",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck je nástroj cílený na osobní nebo projektové plánování týmů v Kanban stylu, vestavěný v Nextcloud.\n\n\n- 📥 Zadávejte a uspořádávejte své úkoly do karet\n- 📄 Zapisujte si dodatečné poznámky \n- 🔖 Přiřazujte štítky pro ještě lepší organizaci\n- 👥 Sdílejte se svým týmem, přáteli nebo rodinou\n- 🚀 Dostaňte svůj projekt pod kontrolu",
|
||||
"Are you sure you want to transfer the board {title} for {user} ?" : "Opravdu chcete předat vlastnictví tabule {title} uživateli {user}?",
|
||||
"Transfer the board for {user} successfully" : "Předání vlastnictví tabule uživateli {user} úspěšné",
|
||||
"Failed to transfer the board for {user}" : "Nepodařilo se předat vlastnictví tabule uživateli {user}",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Opravdu chcete tabuly {title} smazat? Toto smaže veškerá data této tabule.",
|
||||
"This week" : "Tento týden",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Opravdu chcete předat vlastnictví tabule {title} uživateli {user}?"
|
||||
"Link to a card" : "Propojit s kartou"
|
||||
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
|
||||
}
|
||||
@@ -7,29 +7,19 @@ OC.L10N.register(
|
||||
"No file was uploaded" : "Ni lwythwyd ffeil i fyny",
|
||||
"Missing a temporary folder" : "Plygell dros dro yn eisiau",
|
||||
"Cancel" : "Diddymu",
|
||||
"Close" : "Cau",
|
||||
"Details" : "Manylion",
|
||||
"Tags" : "Tagiau",
|
||||
"Undo" : "Dadwneud",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "Dileu",
|
||||
"Edit" : "Golygu",
|
||||
"Download" : "Llwytho i lawr",
|
||||
"Details" : "Manylion",
|
||||
"Description" : "Disgrifiad",
|
||||
"Modified" : "Addaswyd",
|
||||
"Select Date" : "Dewis Dyddiad",
|
||||
"Today" : "Heddiw",
|
||||
"Next week" : "Wythnos nesaf",
|
||||
"Next month" : "Mis nesaf",
|
||||
"Upload attachment" : "Llwytho atodiad",
|
||||
"Save" : "Cadw",
|
||||
"Update" : "Diweddaru",
|
||||
"Description" : "Disgrifiad",
|
||||
"seconds ago" : "eiliad yn ôl",
|
||||
"Shared with you" : "Shared with you",
|
||||
"No reminder" : "Dim nodyn atgoffa",
|
||||
"An error occurred" : "Digwyddodd gwall",
|
||||
"Share" : "Rhannu",
|
||||
"This week" : "Wythnos yma"
|
||||
"Settings" : "Gosodiadau",
|
||||
"An error occurred" : "Digwyddodd gwall"
|
||||
},
|
||||
"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;");
|
||||
|
||||
@@ -5,29 +5,19 @@
|
||||
"No file was uploaded" : "Ni lwythwyd ffeil i fyny",
|
||||
"Missing a temporary folder" : "Plygell dros dro yn eisiau",
|
||||
"Cancel" : "Diddymu",
|
||||
"Close" : "Cau",
|
||||
"Details" : "Manylion",
|
||||
"Tags" : "Tagiau",
|
||||
"Undo" : "Dadwneud",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "Dileu",
|
||||
"Edit" : "Golygu",
|
||||
"Download" : "Llwytho i lawr",
|
||||
"Details" : "Manylion",
|
||||
"Description" : "Disgrifiad",
|
||||
"Modified" : "Addaswyd",
|
||||
"Select Date" : "Dewis Dyddiad",
|
||||
"Today" : "Heddiw",
|
||||
"Next week" : "Wythnos nesaf",
|
||||
"Next month" : "Mis nesaf",
|
||||
"Upload attachment" : "Llwytho atodiad",
|
||||
"Save" : "Cadw",
|
||||
"Update" : "Diweddaru",
|
||||
"Description" : "Disgrifiad",
|
||||
"seconds ago" : "eiliad yn ôl",
|
||||
"Shared with you" : "Shared with you",
|
||||
"No reminder" : "Dim nodyn atgoffa",
|
||||
"An error occurred" : "Digwyddodd gwall",
|
||||
"Share" : "Rhannu",
|
||||
"This week" : "Wythnos yma"
|
||||
"Settings" : "Gosodiadau",
|
||||
"An error occurred" : "Digwyddodd gwall"
|
||||
},"pluralForm" :"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"
|
||||
}
|
||||
229
l10n/da.js
@@ -1,237 +1,56 @@
|
||||
OC.L10N.register(
|
||||
"deck",
|
||||
{
|
||||
"You have created a new board {board}" : "Du har oprettet en ny tavle {board}",
|
||||
"{user} has created a new board {board}" : "{user} har oprettet en ny tavle {board}",
|
||||
"You have deleted the board {board}" : "Du har slettet tavlen {board}",
|
||||
"{user} has deleted the board {board}" : "{user} har slettet tavlen {board}",
|
||||
"You have restored the board {board}" : "Du har genskabt tavlen {board}",
|
||||
"{user} has restored the board {board}" : "{user} har genskabt tablen {board}",
|
||||
"You have shared the board {board} with {acl}" : "Du har delt tavlen {board} med {acl}",
|
||||
"{user} has shared the board {board} with {acl}" : "{user} har delt tavlen {board} med {acl}",
|
||||
"You have removed {acl} from the board {board}" : "Du har fjernet {acl} fra tavlen {board}",
|
||||
"{user} has removed {acl} from the board {board}" : "{user} har fjernet {acl} fra tavlen {board}",
|
||||
"You have renamed the board {before} to {board}" : "Du har omdøbt tavlen {before} til {board}",
|
||||
"{user} has renamed the board {before} to {board}" : "{suer} har omdøbt tavlen {before} til {board}",
|
||||
"You have archived the board {board}" : "Du har arkiveret tavlen {board}",
|
||||
"{user} has archived the board {before}" : "{user} har arkiveret tavlen {before}",
|
||||
"You have unarchived the board {board}" : "Du har genskabt tavlen {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} har genskabt tavlen {before}",
|
||||
"You have created a new list {stack} on board {board}" : "Du har oprettet en ny liste {stack} på tavlen {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} har oprettet en ny kolonne {stack} på tavlen {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Du har omdøbt kolonnen {before} til {stack} på tavlen {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} har omdøbt kolonnen{before} til {stack} på tavlen {board}",
|
||||
"You have deleted list {stack} on board {board}" : "Du har slettet kolonnen {stack} på tavlen {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} har slettet kolonnen {stack} på tavlen {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Du har oprettet kortet {card} i kolonnen {stack} på tavlen {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} har oprettet kortet {card} i kolonnen {stack} på tavlen {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Du har slettet kortet {card} i listen {stack} på tavlen {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} har slettet kortet {card} i listen {stack} på tavlen {board}",
|
||||
"You have renamed the card {before} to {card}" : "Du har omdøbt kortet {before} til {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} har omdøbt kortet {before} til {card}",
|
||||
"Deck" : "Deck",
|
||||
"Upcoming cards" : "Kommende kort",
|
||||
"Load more" : "Hent flere",
|
||||
"Personal" : "Personligt",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Kortet \"%s\" på \"%s\" er blevet tildelt dig af %s.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Kortet \"%s\" på \"%s\" har nået sin forfaldsdato.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : " %s har nævnt dig i en kommentar på \"%s\".",
|
||||
"The board \"%s\" has been shared with you by %s." : "Tavlen \"%s\" er blevet delt med dig af %s.",
|
||||
"No data was provided to create an attachment." : "Ingen data blev givet som kunne vedhæftes",
|
||||
"Personal" : "Personlig",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Kortet \"%s\" på \"%s\" har nået sin udløbsdato.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Brættet \"%s\" er blevet delt med dig af %s.",
|
||||
"{user} has shared the board %s with you." : "{user} har delt brættet %s med dig.",
|
||||
"Finished" : "Færdiggjort",
|
||||
"To review" : "Til gennemgang",
|
||||
"To review" : "Gennemse",
|
||||
"Action needed" : "Handling påkrævet",
|
||||
"Later" : "Senere",
|
||||
"copy" : "kopiér",
|
||||
"To do" : "To do",
|
||||
"Doing" : "Igang",
|
||||
"Done" : "Afsluttet",
|
||||
"Example Task 3" : "Eksempel opgave 3",
|
||||
"Example Task 2" : "Eksempel opgave 2",
|
||||
"Example Task 1" : "Eksempel opgave 1",
|
||||
"The file was uploaded" : "Filen blev uploadet",
|
||||
"Done" : "Færdig",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Den uploadede fil overstiger upload_max_filesize direktivet i php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Den uploadede fil overstiger MAX_FILE_SIZE indstilingen, som specificeret i HTML formularen",
|
||||
"The file was only partially uploaded" : "Filen blev kun delvist uploadet.",
|
||||
"No file was uploaded" : "Ingen fil uploadet",
|
||||
"Missing a temporary folder" : "Manglende midlertidig mappe.",
|
||||
"Could not write file to disk" : "Kunne ikke gemme filen",
|
||||
"A PHP extension stopped the file upload" : "En PHP udvidelse stoppede fil uploaden.",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Ingen fil blev uploadet eller fil størrelsen er større end det maksimale: %s.",
|
||||
"Card not found" : "Kort ikke fundet.",
|
||||
"Path is already shared with this card" : "Stien er allerede delt med dette kort.",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Ikke gyldig dato - dato formatet skal være YYYY-MM-DD",
|
||||
"Personal planning and team project organization" : "Personlig planlægning og organisering af team projekter",
|
||||
"Card details" : "Kort detaljer",
|
||||
"Add board" : "Tilføj tavle",
|
||||
"Select the board to link to a project" : "Vælg en tavle at linke til et projekt",
|
||||
"Search by board title" : "Søg efter tavle titel",
|
||||
"Select board" : "Vælg tavle",
|
||||
"Select a board" : "Vælg én tavle",
|
||||
"Select a list" : "Vælg en kolonne",
|
||||
"Create new board" : "Opret ny liste",
|
||||
"Cancel" : "Annullér",
|
||||
"Close" : "Luk",
|
||||
"Create card" : "Opret kort",
|
||||
"Select a card" : "Vælg et kort",
|
||||
"Select the card to link to a project" : "Vælg et kort at linke til et projekt",
|
||||
"Link to card" : "Link til kort",
|
||||
"File already exists" : "Filen findes allerede",
|
||||
"A file with the name {filename} already exists." : "En fil med navnet {filename} already exists.",
|
||||
"Do you want to overwrite it?" : "Vil du overskrive?",
|
||||
"Overwrite file" : "Overskriv fil",
|
||||
"Keep existing file" : "Behold den eksisterende fil",
|
||||
"This board is read only" : "Denne tavle er skrivebeskyttet",
|
||||
"Drop your files to upload" : "Slip dine filer for at uploade",
|
||||
"Add card" : "Tilføj kort",
|
||||
"Archived cards" : "Arkiverede kort",
|
||||
"Add list" : "Tilføj kolonne",
|
||||
"List name" : "Kolonne navn",
|
||||
"Apply filter" : "Aktivér filter",
|
||||
"Filter by tag" : "Filtrer vha. mærkat",
|
||||
"Filter by assigned user" : "Filtrer vha. tildelt bruger",
|
||||
"Unassigned" : "Ikke tildelt",
|
||||
"Filter by due date" : "Filtrer vha. forfaldsdato",
|
||||
"Overdue" : "Overskredet",
|
||||
"Next 24 hours" : "De næste 24 timer",
|
||||
"Next 7 days" : "De næste 7 dage",
|
||||
"Next 30 days" : "De næste 30 dage",
|
||||
"No due date" : "Ingen forfaldsdato",
|
||||
"Clear filter" : "Ryd filter",
|
||||
"Hide archived cards" : "Skjul arkiverede kort",
|
||||
"Show archived cards" : "Vis arkiverede kort",
|
||||
"Toggle compact mode" : "Slå kompakt tilstand til/fra",
|
||||
"Open details" : "Mere information",
|
||||
"Details" : "Detaljer",
|
||||
"Loading board" : "Indlæser tavle",
|
||||
"No lists available" : "Ingen kolonner tilgængelige",
|
||||
"Create a new list to add cards to this board" : "Opret en ny kolonne for at tilføje kort til denne tavle ",
|
||||
"Board not found" : "Tavle ikke fundet.",
|
||||
"Hide archived cards" : "Skjul arkiverede kort",
|
||||
"Sharing" : "Deling",
|
||||
"Tags" : "Mærkat",
|
||||
"Deleted items" : "Slettede objekter",
|
||||
"Timeline" : "Tidslinje",
|
||||
"Deleted lists" : "Slettede kolonner",
|
||||
"Undo" : "Fortryd",
|
||||
"Deleted cards" : "Sletttede kort",
|
||||
"Share board with a user, group or circle …" : "Del tavle med en bruger, gruppe eller cirkel ...",
|
||||
"Searching for users, groups and circles …" : "Leder efter brugere, grupper og cirkler ...",
|
||||
"No participants found" : "Ingen deltagere fundet",
|
||||
"Board owner" : "Ejer af tavlen",
|
||||
"(Group)" : "(Gruppe)",
|
||||
"(Circle)" : "(Cirkel)",
|
||||
"Can edit" : "Kan redigere",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Kan dele",
|
||||
"Can manage" : "Kan administrere",
|
||||
"Owner" : "Ejer",
|
||||
"Delete" : "Slet",
|
||||
"Failed to create share with {displayName}" : "Oprettelse af delt drev med {displayName} fejlede",
|
||||
"Transfer" : "Overførsel",
|
||||
"Add a new list" : "Tilføj en ny kolonne",
|
||||
"Archive all cards" : "Arkivér alle kort",
|
||||
"Delete list" : "Slet liste",
|
||||
"Archive all cards in this list" : "Arkivér alle kort i denne kolonne",
|
||||
"Add a new card" : "Tilføj et nyt kort",
|
||||
"Card name" : "Kort navn",
|
||||
"List deleted" : "Kolonne slettet",
|
||||
"Add a new stack" : "Tilføj en ny stak",
|
||||
"Add card" : "Tilføj kort",
|
||||
"Edit" : "Redigér",
|
||||
"Add a new tag" : "Opret et nyt mærkat",
|
||||
"title and color value must be provided" : "Titel og farve skal angives.",
|
||||
"Board name" : "Tavle navn",
|
||||
"Members" : "Medlemmer",
|
||||
"Upload new files" : "Upload nye filer",
|
||||
"Share from Files" : "Del fra Filer",
|
||||
"Add this attachment" : "Tilføj denne vedhæftning",
|
||||
"Show in Files" : "Vis i Filer",
|
||||
"Download" : "Download",
|
||||
"Delete Attachment" : "Slet vedhæftning",
|
||||
"Restore Attachment" : "Genskab vedhæftning",
|
||||
"File to share" : "Vælg fil til deling",
|
||||
"Invalid path selected" : "Ugyldig sti valgt.",
|
||||
"Open in sidebar view" : "Åben i sidekolonne",
|
||||
"Open in bigger view" : "Åben i større visning",
|
||||
"Details" : "Detaljer",
|
||||
"Due date" : "Forfaldsdato",
|
||||
"Remove due date" : "Fjern forfaldsdato",
|
||||
"Description" : "Beskrivelse",
|
||||
"Formatting help" : "Hjælp til formatering",
|
||||
"Attachments" : "Vedhæftede filer",
|
||||
"Comments" : "Kommentarer",
|
||||
"Modified" : "Ændret",
|
||||
"Created" : "Oprettet",
|
||||
"The title cannot be empty." : "Titlen kan ikke være tom",
|
||||
"No comments yet. Begin the discussion!" : "Ingen kommentarer endnu. Begynd diskussionen!",
|
||||
"Assign a tag to this card…" : "Tilføj et mærkat til dette kort ...",
|
||||
"Assign to users" : "Tildel til brugere",
|
||||
"Assign to users/groups/circles" : "Tildel til brugere/grupper/cirkler",
|
||||
"Assign a user to this card…" : "Tildel en bruger til dette kort",
|
||||
"Due date" : "Forfaldsdato",
|
||||
"Set a due date" : "Sæt en forfaldsdato",
|
||||
"Remove due date" : "Fjern forfaldsdato",
|
||||
"Select Date" : "Vælg dato",
|
||||
"Today" : "I dag",
|
||||
"Tomorrow" : "I morgen",
|
||||
"Next week" : "Næste uge",
|
||||
"Next month" : "Næste måned",
|
||||
"Upload attachment" : "Upload vedhæftning",
|
||||
"Save" : "Gem",
|
||||
"The comment cannot be empty." : "Kommentaren kan ikke være tom.",
|
||||
"The comment cannot be longer than 1000 characters." : "Kommentaren kan ikke være længere end 1000 tegn.",
|
||||
"In reply to" : "som svar til",
|
||||
"Reply" : "Besvar",
|
||||
"Update" : "Opdatér",
|
||||
"Description" : "Beskrivelse",
|
||||
"(Unsaved)" : "(Ikke gemt)",
|
||||
"(Saving…)" : "(Gemmer...)",
|
||||
"Formatting help" : "Hjælp til formatering",
|
||||
"Edit description" : "Redigér beskrivelse",
|
||||
"View description" : "Se beskrivelse",
|
||||
"Add Attachment" : "Tilføj vedhæftning",
|
||||
"Write a description …" : "Tilføj en beskrivelse...",
|
||||
"Choose attachment" : "Vælg en vedhæftning",
|
||||
"(group)" : "(gruppe)",
|
||||
"Assign to me" : "Tildel til mig",
|
||||
"Unassign myself" : "Fjern mig selv",
|
||||
"Move card" : "Flyt kort",
|
||||
"Unarchive card" : "Gen-aktivér kort",
|
||||
"Archive card" : "Arkivér kort",
|
||||
"Delete card" : "Slet kort",
|
||||
"Move card to another board" : "Flyt kort til en anden tavle",
|
||||
"Card deleted" : "Kort slettet",
|
||||
"seconds ago" : "sekunder siden",
|
||||
"All boards" : "Alle tavler",
|
||||
"Archived boards" : "Arkiverede lister",
|
||||
"Shared with you" : "Shared with you",
|
||||
"Use bigger card view" : "Brug større kort visning",
|
||||
"Show boards in calendar/tasks" : "Vis tavler i kalender/opgaver",
|
||||
"Limit deck usage of groups" : "Begræns Deck brug til grupper",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Begrænsning af Deck vil blokere brugere som ikke er en del af de valgte grupper fra at oprette deres egne tavler. Brugere vil stadig kunne arbejde på tavler der er blevet delt med dem. ",
|
||||
"Board details" : "Liste detaljer",
|
||||
"Shared boards" : "Delte lister",
|
||||
"Settings" : "Indstillinger",
|
||||
"New board title" : "Ny titel på liste",
|
||||
"Edit board" : "Rediger liste",
|
||||
"Clone board" : "Klon tavle",
|
||||
"Unarchive board" : "Gen-aktivér tavle",
|
||||
"Archive board" : "Arkivér tavle",
|
||||
"Turn on due date reminders" : "Aktivér påmindelser om forfaldsdatoer",
|
||||
"Turn off due date reminders" : "Slå påmindelser om forfaldsdatoer fra",
|
||||
"Due date reminders" : "Påmindelser om forfaldsdatoer",
|
||||
"All cards" : "Alle kort",
|
||||
"Assigned cards" : "Tildelte kort",
|
||||
"No notifications" : "Ingen notifikationer",
|
||||
"Delete board" : "Slet tavle",
|
||||
"Board {0} deleted" : "Tavle {0} er slettet",
|
||||
"Only assigned cards" : "Kun tildelte kort",
|
||||
"No reminder" : "Ingen påmindelse",
|
||||
"An error occurred" : "Der var en fejl",
|
||||
"Delete the board?" : "Slet tavlen?",
|
||||
"Loading filtered view" : "Indlæser filtreret visning",
|
||||
"No due" : "Ikke forfalden",
|
||||
"No upcoming cards" : "Ingen kommende kort",
|
||||
"upcoming cards" : "kommende kort",
|
||||
"Link to a board" : "Link til tavle",
|
||||
"Link to a card" : "Link til et kort",
|
||||
"Message from {author} in {conversationName}" : "Besked fra {author} i {conversationName}",
|
||||
"Something went wrong" : "Noget gik galt",
|
||||
"Failed to upload {name}" : "Kunne ikke uploade {name}",
|
||||
"Maximum file size of {size} exceeded" : "Maksimal fil størrelse {size} overskredet",
|
||||
"Error creating the share" : "Fejl ved skabelse af delt drev",
|
||||
"Share with a Deck card" : "Del med et Deck kort",
|
||||
"Share {file} with a Deck card" : "Del {file} med et Deck kort",
|
||||
"Share" : "Del",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck er et kanban inspireret organisations værktøj rettet mod personlig planlægning og projekt organisering for teams integreret med Nextcloud.\n\n\n- 📥 Tilføj dine opgaver til kort og organisér dem\n- 📄 Tilføj noter til dine opgaver i markdown\n- 🔖 Tilføj mærkater for endnu bedre organisering\n- 👥 Del med dit team, dine venner eller familie\n- 📎 Vedhæft filer og indfør dem i din markdown beskrivelse\n- 💬 Diskutér med dit team ved hjælp af kommentarer\n- ⚡ Hold øje med ændringer i aktivitets strømmen\n- 🚀 Få dit projekt organiseret!",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Er du sikker på du vil slette tavlen {title}? Dette vil slette alt data på tavlen.",
|
||||
"This week" : "Denne uge"
|
||||
"Archive board" : "Arkivér liste",
|
||||
"Unarchive board" : "Annuller arkivering af liste",
|
||||
"Delete board" : "Slet liste",
|
||||
"Board details" : "Liste detaljer"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
|
||||
229
l10n/da.json
@@ -1,235 +1,54 @@
|
||||
{ "translations": {
|
||||
"You have created a new board {board}" : "Du har oprettet en ny tavle {board}",
|
||||
"{user} has created a new board {board}" : "{user} har oprettet en ny tavle {board}",
|
||||
"You have deleted the board {board}" : "Du har slettet tavlen {board}",
|
||||
"{user} has deleted the board {board}" : "{user} har slettet tavlen {board}",
|
||||
"You have restored the board {board}" : "Du har genskabt tavlen {board}",
|
||||
"{user} has restored the board {board}" : "{user} har genskabt tablen {board}",
|
||||
"You have shared the board {board} with {acl}" : "Du har delt tavlen {board} med {acl}",
|
||||
"{user} has shared the board {board} with {acl}" : "{user} har delt tavlen {board} med {acl}",
|
||||
"You have removed {acl} from the board {board}" : "Du har fjernet {acl} fra tavlen {board}",
|
||||
"{user} has removed {acl} from the board {board}" : "{user} har fjernet {acl} fra tavlen {board}",
|
||||
"You have renamed the board {before} to {board}" : "Du har omdøbt tavlen {before} til {board}",
|
||||
"{user} has renamed the board {before} to {board}" : "{suer} har omdøbt tavlen {before} til {board}",
|
||||
"You have archived the board {board}" : "Du har arkiveret tavlen {board}",
|
||||
"{user} has archived the board {before}" : "{user} har arkiveret tavlen {before}",
|
||||
"You have unarchived the board {board}" : "Du har genskabt tavlen {board}",
|
||||
"{user} has unarchived the board {before}" : "{user} har genskabt tavlen {before}",
|
||||
"You have created a new list {stack} on board {board}" : "Du har oprettet en ny liste {stack} på tavlen {board}",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} har oprettet en ny kolonne {stack} på tavlen {board}",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Du har omdøbt kolonnen {before} til {stack} på tavlen {board}",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} har omdøbt kolonnen{before} til {stack} på tavlen {board}",
|
||||
"You have deleted list {stack} on board {board}" : "Du har slettet kolonnen {stack} på tavlen {board}",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} har slettet kolonnen {stack} på tavlen {board}",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Du har oprettet kortet {card} i kolonnen {stack} på tavlen {board}",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} har oprettet kortet {card} i kolonnen {stack} på tavlen {board}",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Du har slettet kortet {card} i listen {stack} på tavlen {board}",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} har slettet kortet {card} i listen {stack} på tavlen {board}",
|
||||
"You have renamed the card {before} to {card}" : "Du har omdøbt kortet {before} til {card}",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} har omdøbt kortet {before} til {card}",
|
||||
"Deck" : "Deck",
|
||||
"Upcoming cards" : "Kommende kort",
|
||||
"Load more" : "Hent flere",
|
||||
"Personal" : "Personligt",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Kortet \"%s\" på \"%s\" er blevet tildelt dig af %s.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Kortet \"%s\" på \"%s\" har nået sin forfaldsdato.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : " %s har nævnt dig i en kommentar på \"%s\".",
|
||||
"The board \"%s\" has been shared with you by %s." : "Tavlen \"%s\" er blevet delt med dig af %s.",
|
||||
"No data was provided to create an attachment." : "Ingen data blev givet som kunne vedhæftes",
|
||||
"Personal" : "Personlig",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Kortet \"%s\" på \"%s\" har nået sin udløbsdato.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Brættet \"%s\" er blevet delt med dig af %s.",
|
||||
"{user} has shared the board %s with you." : "{user} har delt brættet %s med dig.",
|
||||
"Finished" : "Færdiggjort",
|
||||
"To review" : "Til gennemgang",
|
||||
"To review" : "Gennemse",
|
||||
"Action needed" : "Handling påkrævet",
|
||||
"Later" : "Senere",
|
||||
"copy" : "kopiér",
|
||||
"To do" : "To do",
|
||||
"Doing" : "Igang",
|
||||
"Done" : "Afsluttet",
|
||||
"Example Task 3" : "Eksempel opgave 3",
|
||||
"Example Task 2" : "Eksempel opgave 2",
|
||||
"Example Task 1" : "Eksempel opgave 1",
|
||||
"The file was uploaded" : "Filen blev uploadet",
|
||||
"Done" : "Færdig",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Den uploadede fil overstiger upload_max_filesize direktivet i php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Den uploadede fil overstiger MAX_FILE_SIZE indstilingen, som specificeret i HTML formularen",
|
||||
"The file was only partially uploaded" : "Filen blev kun delvist uploadet.",
|
||||
"No file was uploaded" : "Ingen fil uploadet",
|
||||
"Missing a temporary folder" : "Manglende midlertidig mappe.",
|
||||
"Could not write file to disk" : "Kunne ikke gemme filen",
|
||||
"A PHP extension stopped the file upload" : "En PHP udvidelse stoppede fil uploaden.",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Ingen fil blev uploadet eller fil størrelsen er større end det maksimale: %s.",
|
||||
"Card not found" : "Kort ikke fundet.",
|
||||
"Path is already shared with this card" : "Stien er allerede delt med dette kort.",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Ikke gyldig dato - dato formatet skal være YYYY-MM-DD",
|
||||
"Personal planning and team project organization" : "Personlig planlægning og organisering af team projekter",
|
||||
"Card details" : "Kort detaljer",
|
||||
"Add board" : "Tilføj tavle",
|
||||
"Select the board to link to a project" : "Vælg en tavle at linke til et projekt",
|
||||
"Search by board title" : "Søg efter tavle titel",
|
||||
"Select board" : "Vælg tavle",
|
||||
"Select a board" : "Vælg én tavle",
|
||||
"Select a list" : "Vælg en kolonne",
|
||||
"Create new board" : "Opret ny liste",
|
||||
"Cancel" : "Annullér",
|
||||
"Close" : "Luk",
|
||||
"Create card" : "Opret kort",
|
||||
"Select a card" : "Vælg et kort",
|
||||
"Select the card to link to a project" : "Vælg et kort at linke til et projekt",
|
||||
"Link to card" : "Link til kort",
|
||||
"File already exists" : "Filen findes allerede",
|
||||
"A file with the name {filename} already exists." : "En fil med navnet {filename} already exists.",
|
||||
"Do you want to overwrite it?" : "Vil du overskrive?",
|
||||
"Overwrite file" : "Overskriv fil",
|
||||
"Keep existing file" : "Behold den eksisterende fil",
|
||||
"This board is read only" : "Denne tavle er skrivebeskyttet",
|
||||
"Drop your files to upload" : "Slip dine filer for at uploade",
|
||||
"Add card" : "Tilføj kort",
|
||||
"Archived cards" : "Arkiverede kort",
|
||||
"Add list" : "Tilføj kolonne",
|
||||
"List name" : "Kolonne navn",
|
||||
"Apply filter" : "Aktivér filter",
|
||||
"Filter by tag" : "Filtrer vha. mærkat",
|
||||
"Filter by assigned user" : "Filtrer vha. tildelt bruger",
|
||||
"Unassigned" : "Ikke tildelt",
|
||||
"Filter by due date" : "Filtrer vha. forfaldsdato",
|
||||
"Overdue" : "Overskredet",
|
||||
"Next 24 hours" : "De næste 24 timer",
|
||||
"Next 7 days" : "De næste 7 dage",
|
||||
"Next 30 days" : "De næste 30 dage",
|
||||
"No due date" : "Ingen forfaldsdato",
|
||||
"Clear filter" : "Ryd filter",
|
||||
"Hide archived cards" : "Skjul arkiverede kort",
|
||||
"Show archived cards" : "Vis arkiverede kort",
|
||||
"Toggle compact mode" : "Slå kompakt tilstand til/fra",
|
||||
"Open details" : "Mere information",
|
||||
"Details" : "Detaljer",
|
||||
"Loading board" : "Indlæser tavle",
|
||||
"No lists available" : "Ingen kolonner tilgængelige",
|
||||
"Create a new list to add cards to this board" : "Opret en ny kolonne for at tilføje kort til denne tavle ",
|
||||
"Board not found" : "Tavle ikke fundet.",
|
||||
"Hide archived cards" : "Skjul arkiverede kort",
|
||||
"Sharing" : "Deling",
|
||||
"Tags" : "Mærkat",
|
||||
"Deleted items" : "Slettede objekter",
|
||||
"Timeline" : "Tidslinje",
|
||||
"Deleted lists" : "Slettede kolonner",
|
||||
"Undo" : "Fortryd",
|
||||
"Deleted cards" : "Sletttede kort",
|
||||
"Share board with a user, group or circle …" : "Del tavle med en bruger, gruppe eller cirkel ...",
|
||||
"Searching for users, groups and circles …" : "Leder efter brugere, grupper og cirkler ...",
|
||||
"No participants found" : "Ingen deltagere fundet",
|
||||
"Board owner" : "Ejer af tavlen",
|
||||
"(Group)" : "(Gruppe)",
|
||||
"(Circle)" : "(Cirkel)",
|
||||
"Can edit" : "Kan redigere",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Kan dele",
|
||||
"Can manage" : "Kan administrere",
|
||||
"Owner" : "Ejer",
|
||||
"Delete" : "Slet",
|
||||
"Failed to create share with {displayName}" : "Oprettelse af delt drev med {displayName} fejlede",
|
||||
"Transfer" : "Overførsel",
|
||||
"Add a new list" : "Tilføj en ny kolonne",
|
||||
"Archive all cards" : "Arkivér alle kort",
|
||||
"Delete list" : "Slet liste",
|
||||
"Archive all cards in this list" : "Arkivér alle kort i denne kolonne",
|
||||
"Add a new card" : "Tilføj et nyt kort",
|
||||
"Card name" : "Kort navn",
|
||||
"List deleted" : "Kolonne slettet",
|
||||
"Add a new stack" : "Tilføj en ny stak",
|
||||
"Add card" : "Tilføj kort",
|
||||
"Edit" : "Redigér",
|
||||
"Add a new tag" : "Opret et nyt mærkat",
|
||||
"title and color value must be provided" : "Titel og farve skal angives.",
|
||||
"Board name" : "Tavle navn",
|
||||
"Members" : "Medlemmer",
|
||||
"Upload new files" : "Upload nye filer",
|
||||
"Share from Files" : "Del fra Filer",
|
||||
"Add this attachment" : "Tilføj denne vedhæftning",
|
||||
"Show in Files" : "Vis i Filer",
|
||||
"Download" : "Download",
|
||||
"Delete Attachment" : "Slet vedhæftning",
|
||||
"Restore Attachment" : "Genskab vedhæftning",
|
||||
"File to share" : "Vælg fil til deling",
|
||||
"Invalid path selected" : "Ugyldig sti valgt.",
|
||||
"Open in sidebar view" : "Åben i sidekolonne",
|
||||
"Open in bigger view" : "Åben i større visning",
|
||||
"Details" : "Detaljer",
|
||||
"Due date" : "Forfaldsdato",
|
||||
"Remove due date" : "Fjern forfaldsdato",
|
||||
"Description" : "Beskrivelse",
|
||||
"Formatting help" : "Hjælp til formatering",
|
||||
"Attachments" : "Vedhæftede filer",
|
||||
"Comments" : "Kommentarer",
|
||||
"Modified" : "Ændret",
|
||||
"Created" : "Oprettet",
|
||||
"The title cannot be empty." : "Titlen kan ikke være tom",
|
||||
"No comments yet. Begin the discussion!" : "Ingen kommentarer endnu. Begynd diskussionen!",
|
||||
"Assign a tag to this card…" : "Tilføj et mærkat til dette kort ...",
|
||||
"Assign to users" : "Tildel til brugere",
|
||||
"Assign to users/groups/circles" : "Tildel til brugere/grupper/cirkler",
|
||||
"Assign a user to this card…" : "Tildel en bruger til dette kort",
|
||||
"Due date" : "Forfaldsdato",
|
||||
"Set a due date" : "Sæt en forfaldsdato",
|
||||
"Remove due date" : "Fjern forfaldsdato",
|
||||
"Select Date" : "Vælg dato",
|
||||
"Today" : "I dag",
|
||||
"Tomorrow" : "I morgen",
|
||||
"Next week" : "Næste uge",
|
||||
"Next month" : "Næste måned",
|
||||
"Upload attachment" : "Upload vedhæftning",
|
||||
"Save" : "Gem",
|
||||
"The comment cannot be empty." : "Kommentaren kan ikke være tom.",
|
||||
"The comment cannot be longer than 1000 characters." : "Kommentaren kan ikke være længere end 1000 tegn.",
|
||||
"In reply to" : "som svar til",
|
||||
"Reply" : "Besvar",
|
||||
"Update" : "Opdatér",
|
||||
"Description" : "Beskrivelse",
|
||||
"(Unsaved)" : "(Ikke gemt)",
|
||||
"(Saving…)" : "(Gemmer...)",
|
||||
"Formatting help" : "Hjælp til formatering",
|
||||
"Edit description" : "Redigér beskrivelse",
|
||||
"View description" : "Se beskrivelse",
|
||||
"Add Attachment" : "Tilføj vedhæftning",
|
||||
"Write a description …" : "Tilføj en beskrivelse...",
|
||||
"Choose attachment" : "Vælg en vedhæftning",
|
||||
"(group)" : "(gruppe)",
|
||||
"Assign to me" : "Tildel til mig",
|
||||
"Unassign myself" : "Fjern mig selv",
|
||||
"Move card" : "Flyt kort",
|
||||
"Unarchive card" : "Gen-aktivér kort",
|
||||
"Archive card" : "Arkivér kort",
|
||||
"Delete card" : "Slet kort",
|
||||
"Move card to another board" : "Flyt kort til en anden tavle",
|
||||
"Card deleted" : "Kort slettet",
|
||||
"seconds ago" : "sekunder siden",
|
||||
"All boards" : "Alle tavler",
|
||||
"Archived boards" : "Arkiverede lister",
|
||||
"Shared with you" : "Shared with you",
|
||||
"Use bigger card view" : "Brug større kort visning",
|
||||
"Show boards in calendar/tasks" : "Vis tavler i kalender/opgaver",
|
||||
"Limit deck usage of groups" : "Begræns Deck brug til grupper",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Begrænsning af Deck vil blokere brugere som ikke er en del af de valgte grupper fra at oprette deres egne tavler. Brugere vil stadig kunne arbejde på tavler der er blevet delt med dem. ",
|
||||
"Board details" : "Liste detaljer",
|
||||
"Shared boards" : "Delte lister",
|
||||
"Settings" : "Indstillinger",
|
||||
"New board title" : "Ny titel på liste",
|
||||
"Edit board" : "Rediger liste",
|
||||
"Clone board" : "Klon tavle",
|
||||
"Unarchive board" : "Gen-aktivér tavle",
|
||||
"Archive board" : "Arkivér tavle",
|
||||
"Turn on due date reminders" : "Aktivér påmindelser om forfaldsdatoer",
|
||||
"Turn off due date reminders" : "Slå påmindelser om forfaldsdatoer fra",
|
||||
"Due date reminders" : "Påmindelser om forfaldsdatoer",
|
||||
"All cards" : "Alle kort",
|
||||
"Assigned cards" : "Tildelte kort",
|
||||
"No notifications" : "Ingen notifikationer",
|
||||
"Delete board" : "Slet tavle",
|
||||
"Board {0} deleted" : "Tavle {0} er slettet",
|
||||
"Only assigned cards" : "Kun tildelte kort",
|
||||
"No reminder" : "Ingen påmindelse",
|
||||
"An error occurred" : "Der var en fejl",
|
||||
"Delete the board?" : "Slet tavlen?",
|
||||
"Loading filtered view" : "Indlæser filtreret visning",
|
||||
"No due" : "Ikke forfalden",
|
||||
"No upcoming cards" : "Ingen kommende kort",
|
||||
"upcoming cards" : "kommende kort",
|
||||
"Link to a board" : "Link til tavle",
|
||||
"Link to a card" : "Link til et kort",
|
||||
"Message from {author} in {conversationName}" : "Besked fra {author} i {conversationName}",
|
||||
"Something went wrong" : "Noget gik galt",
|
||||
"Failed to upload {name}" : "Kunne ikke uploade {name}",
|
||||
"Maximum file size of {size} exceeded" : "Maksimal fil størrelse {size} overskredet",
|
||||
"Error creating the share" : "Fejl ved skabelse af delt drev",
|
||||
"Share with a Deck card" : "Del med et Deck kort",
|
||||
"Share {file} with a Deck card" : "Del {file} med et Deck kort",
|
||||
"Share" : "Del",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck er et kanban inspireret organisations værktøj rettet mod personlig planlægning og projekt organisering for teams integreret med Nextcloud.\n\n\n- 📥 Tilføj dine opgaver til kort og organisér dem\n- 📄 Tilføj noter til dine opgaver i markdown\n- 🔖 Tilføj mærkater for endnu bedre organisering\n- 👥 Del med dit team, dine venner eller familie\n- 📎 Vedhæft filer og indfør dem i din markdown beskrivelse\n- 💬 Diskutér med dit team ved hjælp af kommentarer\n- ⚡ Hold øje med ændringer i aktivitets strømmen\n- 🚀 Få dit projekt organiseret!",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Er du sikker på du vil slette tavlen {title}? Dette vil slette alt data på tavlen.",
|
||||
"This week" : "Denne uge"
|
||||
"Archive board" : "Arkivér liste",
|
||||
"Unarchive board" : "Annuller arkivering af liste",
|
||||
"Delete board" : "Slet liste",
|
||||
"Board details" : "Liste detaljer"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
288
l10n/de.js
@@ -17,42 +17,42 @@ OC.L10N.register(
|
||||
"{user} has archived the board {before}" : "{user} hat das Board {before} archiviert",
|
||||
"You have unarchived the board {board}" : "Du hast das Board {board} dearchiviert",
|
||||
"{user} has unarchived the board {before}" : "{user} hat das Board {before} dearchiviert",
|
||||
"You have created a new list {stack} on board {board}" : "Du hast die neue Liste {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} hat die neue Liste {stack} auf dem Board {board} erstellt",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Du hast die Liste {before} auf dem Board {board} in {stack} umbenannt",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} hat die Liste {before} in {stack} auf dem Board {board} umbenannt",
|
||||
"You have deleted list {stack} on board {board}" : "Du hast die Liste {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} hat die Liste {stack} aus dem Board {board} entfernt",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Du hast die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Du hast die Karte {card} in der Liste {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} gelöscht",
|
||||
"You have created a new stack {stack} on board {board}" : "Du hast den neuen Stapel {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created a new stack {stack} on board {board}" : "{user} hat den neuen Stapel {stack} auf dem Board {board} erstellt",
|
||||
"You have renamed stack {before} to {stack} on board {board}" : "Du hast den Stapel {before} auf dem Board {board} in {stack} umbenannt",
|
||||
"{user} has renamed stack {before} to {stack} on board {board}" : "{user} hat den Stapel {before} in {stack} auf dem Board {board} umbenannt",
|
||||
"You have deleted stack {stack} on board {board}" : "Du hast den Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted stack {stack} on board {board}" : "{user} hat den Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"You have created card {card} in stack {stack} on board {board}" : "Du hast die Karte {card} im Stapel {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} erstellt",
|
||||
"You have deleted card {card} in stack {stack} on board {board}" : "Du hast die Karte {card} im Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"You have renamed the card {before} to {card}" : "Du hast die Karte {before} in {card} umbenannt",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} hat die Karte {before} in {card} umbenannt",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "Du hast der Karte {card} in der Liste {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} hat der Karte {card} in der Liste {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "Du hast die Beschreibung der Karte {card} in der Liste {stack} auf dem Board {board} aktualisiert",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} hat die Beschreibung der Karte {card} in der Liste {stack} auf dem Board {board} aktualisiert",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "Du hast die Karte {card} in der Liste {stack} auf dem Board {board} archiviert",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} archiviert",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "Du hast die Karte {card} in der Liste {stack} auf dem Board {board} dearchiviert",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} dearchiviert",
|
||||
"You have added a description to card {card} in stack {stack} on board {board}" : "Du hast der Karte {card} im Stapel {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"{user} has added a description to card {card} in stack {stack} on board {board}" : "{user} hat der Karte {card} im Stapel {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"You have updated the description of card {card} in stack {stack} on board {board}" : "Du hast die Beschreibung der Karte {card} im Stapel {stack} auf dem Board {board} aktualisiert",
|
||||
"{user} has updated the description of the card {card} in stack {stack} on board {board}" : "{user} hat die Beschreibung der Karte {card} im Stapel {stack} auf dem Board {board} aktualisiert",
|
||||
"You have archived card {card} in stack {stack} on board {board}" : "Du hast die Karte {card} im Stapel {stack} auf dem Board {board} archiviert",
|
||||
"{user} has archived card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} archiviert",
|
||||
"You have unarchived card {card} in stack {stack} on board {board}" : "Du hast die Karte {card} im Stapel {stack} auf dem Board {board} dearchiviert",
|
||||
"{user} has unarchived card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} dearchiviert",
|
||||
"You have removed the due date of card {card}" : "Du hast das Fälligkeitsdatum der Karte {card} entfernt",
|
||||
"{user} has removed the due date of card {card}" : "{user} hat das Fälligkeitsdatum der Karte {card} entfernt",
|
||||
"You have set the due date of card {card} to {after}" : "Du hast das Fälligkeitsdatum der Karte {card} auf {after} gesetzt",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} hat das Fälligkeitsdatum der Karte {card} auf {after} gesetzt",
|
||||
"You have updated the due date of card {card} to {after}" : "Du hast das Fälligkeitsdatum der Karte {card} auf {after} aktualisiert",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} hat das Fälligkeitsdatum der Karte {card} auf {after} aktualisiert",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Du hast der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} hat der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Du hast von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} hat von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"You have added the tag {label} to card {card} in stack {stack} on board {board}" : "Du hast der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"{user} has added the tag {label} to card {card} in stack {stack} on board {board}" : "{user} hat der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"You have removed the tag {label} from card {card} in stack {stack} on board {board}" : "Du hast von der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"{user} has removed the tag {label} from card {card} in stack {stack} on board {board}" : "{user} hat von der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Du hast {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} hat {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Du hast die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Du hast die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} hat die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : "Du hast die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} hat die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
|
||||
"You have moved the card {card} from stack {stackBefore} to {stack}" : "Du hast die Karte {card} vom Stapel {stackBefore} nach {stack} verschoben",
|
||||
"{user} has moved the card {card} from stack {stackBefore} to {stack}" : "{user} hat die Karte {card} vom Stapel {stackBefore} nach {stack} verschoben",
|
||||
"You have added the attachment {attachment} to card {card}" : "Du hast den Anhang {attachment} zur Karte {card} hinzugefügt",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} hat den Anhang {attachment} zur Karte {card} hinzugefügt",
|
||||
"You have updated the attachment {attachment} on card {card}" : "Du hast den Anhang {attachment} der Karte {card} aktualisiert",
|
||||
@@ -67,25 +67,20 @@ OC.L10N.register(
|
||||
"Deck" : "Deck",
|
||||
"Changes in the <strong>Deck app</strong>" : "Änderungen in der <strong>Deck-App</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "Ein <strong>Kommentar</strong> zu einer Karte wurde erstellt",
|
||||
"Upcoming cards" : "Anstehende Karten",
|
||||
"Load more" : "Mehr laden",
|
||||
"Personal" : "Persönlich",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Die Karte \"%s\" auf \"%s\" wurde dir von %s zugewiesen.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} hat dir die Karte {deck-card} auf {deck-board} zugewiesen.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Die Karte \"%s\" in \"%s\" ist überfällig.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "Die Karte {deck-card} in {deck-board} ist überfällig.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s hat dich in einem Kommentar zu \"%s\" erwähnt.",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} hat dich in einem Kommentar zu {deck-card} erwähnt.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Das Board \"%s\" wurde von %s mit dir geteilt.",
|
||||
"{user} has shared {deck-board} with you." : "{user} hat das Board {deck-board} mit dir geteilt.",
|
||||
"Card comments" : "Kommentare zur Karte",
|
||||
"%s on %s" : "%s von %s",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Die Karte \"%s\" auf \"%s\" wurde Dir von %s zugewiesen.",
|
||||
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} hat Dir die Karte \"%s\" auf \"%s\" zugewiesen.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Die Karte \"%s\" auf \"%s\" ist überfällig.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : " %s hat Dich in einem Kommentar zu \"%s\" erwähnt.",
|
||||
"{user} has mentioned you in a comment on \"%s\"." : "{user} hat Dich in einem Kommentar zu “%s” erwähnt.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Das Board \"%s\" wurde von %s mit Dir geteilt.",
|
||||
"{user} has shared the board %s with you." : "{user} hat das Board %s mit Dir geteilt.",
|
||||
"No data was provided to create an attachment." : "Es wurden keine Daten zum Erstellen eines Anhangs bereitgestellt.",
|
||||
"Finished" : "Abgeschlossen",
|
||||
"To review" : "Zu überprüfen",
|
||||
"Action needed" : "Handlung erforderlich",
|
||||
"Later" : "Später",
|
||||
"copy" : "Kopie",
|
||||
"copy" : "Kopieren",
|
||||
"To do" : "Offen",
|
||||
"Doing" : "In Arbeit",
|
||||
"Done" : "Erledigt",
|
||||
@@ -94,223 +89,92 @@ OC.L10N.register(
|
||||
"Example Task 1" : "Beispielaufgabe 1",
|
||||
"The file was uploaded" : "Die Datei wurde hochgeladen",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Die hochgeladene Datei überschreitet die upload_max_filesize-Vorgabe in php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist.",
|
||||
"The file was only partially uploaded" : "Die Datei konnte nur teilweise hochgeladen werden",
|
||||
"No file was uploaded" : "Es wurde keine Datei hochgeladen",
|
||||
"Missing a temporary folder" : "Kein temporärer Ordner vorhanden",
|
||||
"Could not write file to disk" : "Die Datei konnte nicht auf die Festplatte geschrieben werden",
|
||||
"A PHP extension stopped the file upload" : "Eine PHP-Erweiterung hat das Hochladen der Datei gestoppt",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Keine Datei hochgeladen oder die Dateigröße überschreitet %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Dieser Kommentar hat mehr als %s Zeichen.\nAls Anhang der Karte mit dem Namen %s hinzugefügt.\nZugriff über die URL: %s.",
|
||||
"Card not found" : "Karte nicht gefunden",
|
||||
"Path is already shared with this card" : "Pfad wurde bereits mit dieser Karte geteilt",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Ungültiges Datum, zulässiges Datumsformat: JJJJ-MM-TT",
|
||||
"Personal planning and team project organization" : "Persönliche Planung und Teamprojektorganisation",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teile mit deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit deinem Team mit Kommentaren\n- ⚡ Behalte den Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere dein Projekt",
|
||||
"Card details" : "Karten-Details",
|
||||
"Add board" : "Board hinzufügen",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge Deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Vergabe von Schlagworten für noch bessere Organisation\n- 👥 Teile mit Deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in Deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit Deinem Team mit Kommentaren\n- ⚡ Behalte Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere Dein Projekt",
|
||||
"Create new board" : "Neues Board",
|
||||
"new board" : "Neues Board",
|
||||
"Select the board to link to a project" : "Wähle ein Board aus, um dieses mit einem Projekt zu verknüpfen",
|
||||
"Search by board title" : "Nach einem Board suchen",
|
||||
"Select board" : "Board auswählen",
|
||||
"Create a new card" : "Neue Karte erstellen",
|
||||
"Select a board" : "Ein Board auswählen",
|
||||
"Select a list" : "Eine Liste auswählen",
|
||||
"Card title" : "Titel der Karte",
|
||||
"Cancel" : "Abbrechen",
|
||||
"Creating the new card …" : "Neue Karte wird erstellt …",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "Karte \"{card}\" wurde \"{board}\" hinzugefügt",
|
||||
"Open card" : "Karte öffnen",
|
||||
"Close" : "Schließen",
|
||||
"Create card" : "Karte erstellen",
|
||||
"Select a card" : "Eine Karte auswählen",
|
||||
"Select the card to link to a project" : "Wähle die Karte aus, um diese mit einem Projekt zu verknüpfen",
|
||||
"Link to card" : "Mit dieser Karte verknüpfen",
|
||||
"File already exists" : "Datei bereits vorhanden",
|
||||
"A file with the name {filename} already exists." : "Eine Datei mit diesem Namen {filename} existiert bereits.",
|
||||
"Do you want to overwrite it?" : "Möchtest du überschreiben?",
|
||||
"Overwrite file" : "Datei überschreiben",
|
||||
"Keep existing file" : "Existierende Datei behalten",
|
||||
"This board is read only" : "Dieses Board ist schreibgeschützt",
|
||||
"Drop your files to upload" : "Dateien zum Hochladen hineinziehen",
|
||||
"Add card" : "Karte hinzufügen",
|
||||
"Archived cards" : "Archivierte Karten",
|
||||
"Add list" : "Liste hinzufügen",
|
||||
"Select a board" : "Ein Board auswählen",
|
||||
"Select a card" : "Eine Karte auswählen",
|
||||
"Link to card" : "Mit einer Karte verknüpfen",
|
||||
"Cancel" : "Abbrechen",
|
||||
"Add new list" : "Neue Liste hinzufügen",
|
||||
"List name" : "Listenname",
|
||||
"Active filters" : "Aktive Filter",
|
||||
"Apply filter" : "Filter anwenden",
|
||||
"Filter by tag" : "Nach Schlagwort filtern",
|
||||
"Filter by assigned user" : "Nach zugewiesenem Benutzer filtern",
|
||||
"Unassigned" : "Nicht zugewiesen",
|
||||
"Filter by due date" : "Nach Fälligkeitsdatum filtern",
|
||||
"Overdue" : "Überfällig",
|
||||
"Next 24 hours" : "Die nächsten 24 Stunden",
|
||||
"Next 7 days" : "Die nächsten 7 Tage",
|
||||
"Next 30 days" : "Die nächsten 30 Tage",
|
||||
"No due date" : "Kein Fälligkeitsdatum",
|
||||
"Clear filter" : "Filter zurücksetzen",
|
||||
"Hide archived cards" : "Archivierte Karten ausblenden",
|
||||
"Show archived cards" : "Archivierte Karten anzeigen",
|
||||
"Hide archived cards" : "Archivierte Karten ausblenden",
|
||||
"Toggle compact mode" : "Kompaktmodus umschalten",
|
||||
"Open details" : "Details öffnen",
|
||||
"Details" : "Details",
|
||||
"Loading board" : "Lade Board",
|
||||
"No lists available" : "Keine Listen verfügbar",
|
||||
"Create a new list to add cards to this board" : "Erstelle eine neue Liste, um diesem Board Karten hinzuzufügen",
|
||||
"Loading board" : "Board laden",
|
||||
"Board not found" : "Board nicht gefunden",
|
||||
"Sharing" : "Teilen",
|
||||
"Tags" : "Schlagworte",
|
||||
"Deleted items" : "Gelöschte Objekte",
|
||||
"Timeline" : "Zeitachse",
|
||||
"Deleted lists" : "Gelöschte Listen",
|
||||
"Deleted stacks" : "Gelöschte Stapel",
|
||||
"Undo" : "Rückgängig",
|
||||
"Deleted cards" : "Gelöschte Karten",
|
||||
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen…",
|
||||
"Searching for users, groups and circles …" : "Suche nach Benutzern, Gruppen und Kreisen …",
|
||||
"No participants found" : "Keine Teilnehmer gefunden",
|
||||
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen …",
|
||||
"Board owner" : "Board-Besitzer",
|
||||
"(Group)" : "(Gruppe)",
|
||||
"(Circle)" : "(Kreis)",
|
||||
"Can edit" : "kann bearbeiten",
|
||||
"Can share" : "kann teilen",
|
||||
"Can manage" : "kann verwalten",
|
||||
"Owner" : "Besitzer",
|
||||
"Delete" : "Löschen",
|
||||
"Failed to create share with {displayName}" : "Fehler beim Erstellen der Freigabe mit dem Namen {displayName}",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Möchtest du wirklich das Board {title} an {user} übertragen?",
|
||||
"Transfer the board." : "Board übertragen",
|
||||
"Transfer" : "Übertragen",
|
||||
"The board has been transferred to {user}" : "Das Board wurde an {user} übertragen",
|
||||
"Failed to transfer the board to {user}" : "Das Board konnte nicht an {user} übertragen werden",
|
||||
"Add a new list" : "Eine neue Liste hinzufügen",
|
||||
"Archive all cards" : "Alle Karten archivieren",
|
||||
"Unarchive all cards" : "Alle Karten dearchivieren",
|
||||
"Add a new stack" : "Neuer Stapel",
|
||||
"Delete list" : "Liste löschen",
|
||||
"Archive all cards in this list" : "Alle Karten in dieser Liste archivieren",
|
||||
"Unarchive all cards in this list" : "Alle Karten dieser Liste dearchivieren",
|
||||
"Add card" : "Karte hinzufügen",
|
||||
"Add a new card" : "Neue Karte hinzufügen",
|
||||
"Card name" : "Kartenname",
|
||||
"List deleted" : "Liste gelöscht",
|
||||
"Edit" : "Bearbeiten",
|
||||
"Add a new tag" : "Neues Schlagwort hinzufügen",
|
||||
"Add a new label" : "Neues Schlagwort hinzufügen",
|
||||
"title and color value must be provided" : "Titel und Farbwert müssen angegeben werden",
|
||||
"Board name" : "Boardname",
|
||||
"Members" : "Mitglieder",
|
||||
"Upload new files" : "Neue Dateien hochladen",
|
||||
"Share from Files" : "Aus Dateien heraus teilen",
|
||||
"Pending share" : "Ausstehende Freigabe",
|
||||
"Add this attachment" : "Diesen Anhang anhängen",
|
||||
"Show in Files" : "In Dateien anzeigen",
|
||||
"Download" : "Herunterladen",
|
||||
"Remove attachment" : "Anhang entfernen",
|
||||
"Delete Attachment" : "Anhang löschen",
|
||||
"Restore Attachment" : "Anhang wiederherstellen",
|
||||
"File to share" : "Zu teilende Datei",
|
||||
"Invalid path selected" : "Ungültiger Pfad ausgewählt",
|
||||
"Open in sidebar view" : "In Seitenleiste öffnen",
|
||||
"Open in bigger view" : "In größerer Ansicht öffnen",
|
||||
"Load More" : "Mehr laden",
|
||||
"Details" : "Details",
|
||||
"Assign a tag to this card…" : "Dieser Karte ein Schlagwort zuweisen…",
|
||||
"Assign to users" : "Benutzern zuweisen",
|
||||
"Assign a user to this card…" : "Diese Karte einem Benutzer zuweisen…",
|
||||
"Due date" : "Fälligkeitsdatum",
|
||||
"Set a due date" : "Ein Ablaufdatum setzen",
|
||||
"Remove due date" : "Fälligkeitsdatum löschen",
|
||||
"Description" : "Beschreibung",
|
||||
"Formatting help" : "Formatierungshilfe",
|
||||
"Attachments" : "Anhänge",
|
||||
"Comments" : "Kommentare",
|
||||
"Modified" : "Geändert",
|
||||
"Created" : "Erstellt",
|
||||
"The title cannot be empty." : "Der Titel darf nicht leer sein.",
|
||||
"No comments yet. Begin the discussion!" : "Bislang keine Kommentare. Beginne die Diskussion!",
|
||||
"Failed to load comments" : "Das Laden der Kommentare ist fehlgeschlagen",
|
||||
"Assign a tag to this card…" : "Dieser Karte ein Schlagwort zuweisen …",
|
||||
"Assign to users" : "Benutzern zuweisen",
|
||||
"Assign to users/groups/circles" : "An Benutzer, Gruppen oder Kreise zuweisen",
|
||||
"Assign a user to this card…" : "Diese Karte einem Benutzer zuweisen …",
|
||||
"Due date" : "Fälligkeitsdatum",
|
||||
"Set a due date" : "Ein Ablaufdatum setzen",
|
||||
"Remove due date" : "Fälligkeitsdatum löschen",
|
||||
"Select Date" : "Datum auswählen",
|
||||
"Today" : "Heute",
|
||||
"Tomorrow" : "Morgen",
|
||||
"Next week" : "Nächste Woche",
|
||||
"Next month" : "Nächster Monat",
|
||||
"Upload attachment" : "Anhang hochladen",
|
||||
"New comment" : "Neuer Kommentar",
|
||||
"Save" : "Speichern",
|
||||
"The comment cannot be empty." : "Der Kommentar darf nicht leer sein.",
|
||||
"The comment cannot be longer than 1000 characters." : "Der Kommentar darf nicht länger als 1000 Zeichen sein.",
|
||||
"In reply to" : "Als Antwort auf",
|
||||
"Cancel reply" : "Antwort abbrechen",
|
||||
"Reply" : "Antworten",
|
||||
"No users found" : "Keine Nutzer gefunden",
|
||||
"No comments yet. Begin the discussion!" : "Bislang keine Kommentare. Beginne die Diskussion!",
|
||||
"Update" : "Aktualisieren",
|
||||
"Description" : "Beschreibung",
|
||||
"(Unsaved)" : "(nicht gespeichert)",
|
||||
"(Saving…)" : "(Speichere…)",
|
||||
"Formatting help" : "Hilfe zur Formatierung",
|
||||
"Edit description" : "Beschreibung bearbeiten",
|
||||
"View description" : "Beschreibung anzeigen",
|
||||
"Add Attachment" : "Anhang anhängen",
|
||||
"Write a description …" : "Beschreibung schreiben …",
|
||||
"Choose attachment" : "Anhang auswählen",
|
||||
"(group)" : "(Gruppe)",
|
||||
"Todo items" : "Aufgaben-Elemente",
|
||||
"{count} comments, {unread} unread" : "{count} Kommentare, {unread} ungelesen",
|
||||
"Edit card title" : "Kartentitel bearbeiten",
|
||||
"Assign to me" : "Mir zuweisen",
|
||||
"Unassign myself" : "Nicht mehr mir zuweisen",
|
||||
"Move card" : "Karte verschieben",
|
||||
"Unarchive card" : "Karte dearchivieren",
|
||||
"Archive card" : "Karte archivieren",
|
||||
"Delete card" : "Karte löschen",
|
||||
"Move card to another board" : "Karte auf ein anderes Board verschieben",
|
||||
"List is empty" : "Liste ist leer",
|
||||
"Card deleted" : "Karte gelöscht",
|
||||
"seconds ago" : "Gerade eben",
|
||||
"Move card" : "Karte verschieben",
|
||||
"Card details" : "Kartendetails",
|
||||
"Select a stack" : "Stapel auswählen",
|
||||
"All boards" : "Alle Boards",
|
||||
"Archived boards" : "Archivierte Boards",
|
||||
"Shared with you" : "Mit dir geteilt",
|
||||
"Deck settings" : "Deck-Einstellungen",
|
||||
"Use bigger card view" : "Größere Kartenansicht verwenden",
|
||||
"Show boards in calendar/tasks" : "Board in Kalender/Aufgaben anzeigen",
|
||||
"Limit deck usage of groups" : "Nutzung auf Gruppen einschränken",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Wenn du Deck einschränkst, können Benutzer, die nicht zu diesen Gruppen gehören, keine eigenen Boards erstellen. Die Benutzer können weiterhin an Boards arbeiten, die für sie freigegeben wurden.",
|
||||
"Board details" : "Board-Details",
|
||||
"Shared boards" : "Geteilte Boards",
|
||||
"Settings" : "Einstellungen",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Durch die Begrenzung von Deck werden Benutzer, die nicht Teil dieser Gruppen sind, daran gehindert, eigene Boards zu erstellen. Benutzer können weiterhin an Boards arbeiten, die für sie freigegeben wurden.",
|
||||
"New board title" : "Board-Titel",
|
||||
"Edit board" : "Board bearbeiten",
|
||||
"Clone board" : "Board klonen",
|
||||
"Unarchive board" : "Board dearchivieren",
|
||||
"Archive board" : "Board archivieren",
|
||||
"Turn on due date reminders" : "Fälligkeitserinnerungen einschalten",
|
||||
"Turn off due date reminders" : "Fälligkeitserinnerungen ausschalten",
|
||||
"Due date reminders" : "Fälligkeitserinnerungen",
|
||||
"All cards" : "Alle Karten",
|
||||
"Assigned cards" : "Zugewiesene Karten",
|
||||
"No notifications" : "Keine Benachrichtigungen",
|
||||
"Delete board" : "Board löschen",
|
||||
"Board {0} deleted" : "Board {0} gelöscht",
|
||||
"Only assigned cards" : "Nur zugewiesene Karten",
|
||||
"No reminder" : "Keine Erinnerung",
|
||||
"An error occurred" : "Es ist ein Fehler aufgetreten",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Möchtest du wirklich das Board {title} mit all seinen Daten einschließlich der archivierten Karten löschen?",
|
||||
"Delete the board?" : "Das Board löschen?",
|
||||
"Loading filtered view" : "Lade gefilterte Ansicht",
|
||||
"No due" : "Kein Fälligkeitsdatum",
|
||||
"Search for {searchQuery} in all boards" : "Suche nach {searchQuery} in allen Boards",
|
||||
"No results found" : "Keine Ergebnisse gefunden",
|
||||
"{stack} in {board}" : "{stack} in {board}",
|
||||
"Click to expand description" : "Klicken, um die Beschreibung zu erweitern",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Erstellt am {created}\n* Zuletzt geändert am {lastMod}\n* {nbAttachments} Anhänge\n* {nbComments} Kommentare",
|
||||
"{nbCards} cards" : "{nbCards} Karten",
|
||||
"No upcoming cards" : "Keine anstehenden Karten",
|
||||
"upcoming cards" : "Anstehende Karten",
|
||||
"Due on {date}" : "Fällig am {date}",
|
||||
"Clone board" : "Board klonen",
|
||||
"Archive board" : "Board archivieren",
|
||||
"Unarchive board" : "Board dearchivieren",
|
||||
"Delete board" : "Board löschen",
|
||||
"Board details" : "Board-Details",
|
||||
"Link to a board" : "Mit einem Board verknüpfen",
|
||||
"Link to a card" : "Mit einer Karte verknüpfen",
|
||||
"Create a card" : "Eine Karte erstellen",
|
||||
"Message from {author} in {conversationName}" : "Nachricht von {author} in {conversationName}",
|
||||
"Something went wrong" : "Etwas ist schiefgelaufen",
|
||||
"Failed to upload {name}" : "Fehler beim Hochladen von {name}",
|
||||
"Maximum file size of {size} exceeded" : "Maximale Dateigröße von {size} überschritten",
|
||||
"Error creating the share" : "Fehler beim Erstellen der Freigabe",
|
||||
"Share with a Deck card" : "Mit einer Deck-Karte teilen",
|
||||
"Share {file} with a Deck card" : "{file} mit einer Deck-Karte teilen",
|
||||
"Share" : "Freigeben",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teile mit deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit deinem Team mit Kommentaren\n- ⚡ Behalte den Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere dein Projekt",
|
||||
"Are you sure you want to transfer the board {title} for {user} ?" : "Möchtest du wirklich das Board {title} an {user} übertragen?",
|
||||
"Transfer the board for {user} successfully" : "Das Board wurde erfolgreich an {user} übertragen",
|
||||
"Failed to transfer the board for {user}" : "Board konnte nicht an {user} übertragen werden",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Möchtest du wirklich das Board {title} mit all seinen Daten löschen?",
|
||||
"This week" : "Diese Woche",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Möchtest du wirklich das Board {title} an {user} übertragen?"
|
||||
"Link to a card" : "Mit einer Karte verknüpfen"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
|
||||
288
l10n/de.json
@@ -15,42 +15,42 @@
|
||||
"{user} has archived the board {before}" : "{user} hat das Board {before} archiviert",
|
||||
"You have unarchived the board {board}" : "Du hast das Board {board} dearchiviert",
|
||||
"{user} has unarchived the board {before}" : "{user} hat das Board {before} dearchiviert",
|
||||
"You have created a new list {stack} on board {board}" : "Du hast die neue Liste {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} hat die neue Liste {stack} auf dem Board {board} erstellt",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Du hast die Liste {before} auf dem Board {board} in {stack} umbenannt",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} hat die Liste {before} in {stack} auf dem Board {board} umbenannt",
|
||||
"You have deleted list {stack} on board {board}" : "Du hast die Liste {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} hat die Liste {stack} aus dem Board {board} entfernt",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Du hast die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Du hast die Karte {card} in der Liste {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} gelöscht",
|
||||
"You have created a new stack {stack} on board {board}" : "Du hast den neuen Stapel {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created a new stack {stack} on board {board}" : "{user} hat den neuen Stapel {stack} auf dem Board {board} erstellt",
|
||||
"You have renamed stack {before} to {stack} on board {board}" : "Du hast den Stapel {before} auf dem Board {board} in {stack} umbenannt",
|
||||
"{user} has renamed stack {before} to {stack} on board {board}" : "{user} hat den Stapel {before} in {stack} auf dem Board {board} umbenannt",
|
||||
"You have deleted stack {stack} on board {board}" : "Du hast den Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted stack {stack} on board {board}" : "{user} hat den Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"You have created card {card} in stack {stack} on board {board}" : "Du hast die Karte {card} im Stapel {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} erstellt",
|
||||
"You have deleted card {card} in stack {stack} on board {board}" : "Du hast die Karte {card} im Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"You have renamed the card {before} to {card}" : "Du hast die Karte {before} in {card} umbenannt",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} hat die Karte {before} in {card} umbenannt",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "Du hast der Karte {card} in der Liste {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} hat der Karte {card} in der Liste {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "Du hast die Beschreibung der Karte {card} in der Liste {stack} auf dem Board {board} aktualisiert",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} hat die Beschreibung der Karte {card} in der Liste {stack} auf dem Board {board} aktualisiert",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "Du hast die Karte {card} in der Liste {stack} auf dem Board {board} archiviert",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} archiviert",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "Du hast die Karte {card} in der Liste {stack} auf dem Board {board} dearchiviert",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} dearchiviert",
|
||||
"You have added a description to card {card} in stack {stack} on board {board}" : "Du hast der Karte {card} im Stapel {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"{user} has added a description to card {card} in stack {stack} on board {board}" : "{user} hat der Karte {card} im Stapel {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"You have updated the description of card {card} in stack {stack} on board {board}" : "Du hast die Beschreibung der Karte {card} im Stapel {stack} auf dem Board {board} aktualisiert",
|
||||
"{user} has updated the description of the card {card} in stack {stack} on board {board}" : "{user} hat die Beschreibung der Karte {card} im Stapel {stack} auf dem Board {board} aktualisiert",
|
||||
"You have archived card {card} in stack {stack} on board {board}" : "Du hast die Karte {card} im Stapel {stack} auf dem Board {board} archiviert",
|
||||
"{user} has archived card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} archiviert",
|
||||
"You have unarchived card {card} in stack {stack} on board {board}" : "Du hast die Karte {card} im Stapel {stack} auf dem Board {board} dearchiviert",
|
||||
"{user} has unarchived card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} dearchiviert",
|
||||
"You have removed the due date of card {card}" : "Du hast das Fälligkeitsdatum der Karte {card} entfernt",
|
||||
"{user} has removed the due date of card {card}" : "{user} hat das Fälligkeitsdatum der Karte {card} entfernt",
|
||||
"You have set the due date of card {card} to {after}" : "Du hast das Fälligkeitsdatum der Karte {card} auf {after} gesetzt",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} hat das Fälligkeitsdatum der Karte {card} auf {after} gesetzt",
|
||||
"You have updated the due date of card {card} to {after}" : "Du hast das Fälligkeitsdatum der Karte {card} auf {after} aktualisiert",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} hat das Fälligkeitsdatum der Karte {card} auf {after} aktualisiert",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Du hast der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} hat der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Du hast von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} hat von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"You have added the tag {label} to card {card} in stack {stack} on board {board}" : "Du hast der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"{user} has added the tag {label} to card {card} in stack {stack} on board {board}" : "{user} hat der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"You have removed the tag {label} from card {card} in stack {stack} on board {board}" : "Du hast von der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"{user} has removed the tag {label} from card {card} in stack {stack} on board {board}" : "{user} hat von der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Du hast {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} hat {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Du hast die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Du hast die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} hat die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : "Du hast die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} hat die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
|
||||
"You have moved the card {card} from stack {stackBefore} to {stack}" : "Du hast die Karte {card} vom Stapel {stackBefore} nach {stack} verschoben",
|
||||
"{user} has moved the card {card} from stack {stackBefore} to {stack}" : "{user} hat die Karte {card} vom Stapel {stackBefore} nach {stack} verschoben",
|
||||
"You have added the attachment {attachment} to card {card}" : "Du hast den Anhang {attachment} zur Karte {card} hinzugefügt",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} hat den Anhang {attachment} zur Karte {card} hinzugefügt",
|
||||
"You have updated the attachment {attachment} on card {card}" : "Du hast den Anhang {attachment} der Karte {card} aktualisiert",
|
||||
@@ -65,25 +65,20 @@
|
||||
"Deck" : "Deck",
|
||||
"Changes in the <strong>Deck app</strong>" : "Änderungen in der <strong>Deck-App</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "Ein <strong>Kommentar</strong> zu einer Karte wurde erstellt",
|
||||
"Upcoming cards" : "Anstehende Karten",
|
||||
"Load more" : "Mehr laden",
|
||||
"Personal" : "Persönlich",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Die Karte \"%s\" auf \"%s\" wurde dir von %s zugewiesen.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} hat dir die Karte {deck-card} auf {deck-board} zugewiesen.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Die Karte \"%s\" in \"%s\" ist überfällig.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "Die Karte {deck-card} in {deck-board} ist überfällig.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s hat dich in einem Kommentar zu \"%s\" erwähnt.",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} hat dich in einem Kommentar zu {deck-card} erwähnt.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Das Board \"%s\" wurde von %s mit dir geteilt.",
|
||||
"{user} has shared {deck-board} with you." : "{user} hat das Board {deck-board} mit dir geteilt.",
|
||||
"Card comments" : "Kommentare zur Karte",
|
||||
"%s on %s" : "%s von %s",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Die Karte \"%s\" auf \"%s\" wurde Dir von %s zugewiesen.",
|
||||
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} hat Dir die Karte \"%s\" auf \"%s\" zugewiesen.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Die Karte \"%s\" auf \"%s\" ist überfällig.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : " %s hat Dich in einem Kommentar zu \"%s\" erwähnt.",
|
||||
"{user} has mentioned you in a comment on \"%s\"." : "{user} hat Dich in einem Kommentar zu “%s” erwähnt.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Das Board \"%s\" wurde von %s mit Dir geteilt.",
|
||||
"{user} has shared the board %s with you." : "{user} hat das Board %s mit Dir geteilt.",
|
||||
"No data was provided to create an attachment." : "Es wurden keine Daten zum Erstellen eines Anhangs bereitgestellt.",
|
||||
"Finished" : "Abgeschlossen",
|
||||
"To review" : "Zu überprüfen",
|
||||
"Action needed" : "Handlung erforderlich",
|
||||
"Later" : "Später",
|
||||
"copy" : "Kopie",
|
||||
"copy" : "Kopieren",
|
||||
"To do" : "Offen",
|
||||
"Doing" : "In Arbeit",
|
||||
"Done" : "Erledigt",
|
||||
@@ -92,223 +87,92 @@
|
||||
"Example Task 1" : "Beispielaufgabe 1",
|
||||
"The file was uploaded" : "Die Datei wurde hochgeladen",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Die hochgeladene Datei überschreitet die upload_max_filesize-Vorgabe in php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist.",
|
||||
"The file was only partially uploaded" : "Die Datei konnte nur teilweise hochgeladen werden",
|
||||
"No file was uploaded" : "Es wurde keine Datei hochgeladen",
|
||||
"Missing a temporary folder" : "Kein temporärer Ordner vorhanden",
|
||||
"Could not write file to disk" : "Die Datei konnte nicht auf die Festplatte geschrieben werden",
|
||||
"A PHP extension stopped the file upload" : "Eine PHP-Erweiterung hat das Hochladen der Datei gestoppt",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Keine Datei hochgeladen oder die Dateigröße überschreitet %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Dieser Kommentar hat mehr als %s Zeichen.\nAls Anhang der Karte mit dem Namen %s hinzugefügt.\nZugriff über die URL: %s.",
|
||||
"Card not found" : "Karte nicht gefunden",
|
||||
"Path is already shared with this card" : "Pfad wurde bereits mit dieser Karte geteilt",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Ungültiges Datum, zulässiges Datumsformat: JJJJ-MM-TT",
|
||||
"Personal planning and team project organization" : "Persönliche Planung und Teamprojektorganisation",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teile mit deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit deinem Team mit Kommentaren\n- ⚡ Behalte den Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere dein Projekt",
|
||||
"Card details" : "Karten-Details",
|
||||
"Add board" : "Board hinzufügen",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge Deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Vergabe von Schlagworten für noch bessere Organisation\n- 👥 Teile mit Deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in Deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit Deinem Team mit Kommentaren\n- ⚡ Behalte Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere Dein Projekt",
|
||||
"Create new board" : "Neues Board",
|
||||
"new board" : "Neues Board",
|
||||
"Select the board to link to a project" : "Wähle ein Board aus, um dieses mit einem Projekt zu verknüpfen",
|
||||
"Search by board title" : "Nach einem Board suchen",
|
||||
"Select board" : "Board auswählen",
|
||||
"Create a new card" : "Neue Karte erstellen",
|
||||
"Select a board" : "Ein Board auswählen",
|
||||
"Select a list" : "Eine Liste auswählen",
|
||||
"Card title" : "Titel der Karte",
|
||||
"Cancel" : "Abbrechen",
|
||||
"Creating the new card …" : "Neue Karte wird erstellt …",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "Karte \"{card}\" wurde \"{board}\" hinzugefügt",
|
||||
"Open card" : "Karte öffnen",
|
||||
"Close" : "Schließen",
|
||||
"Create card" : "Karte erstellen",
|
||||
"Select a card" : "Eine Karte auswählen",
|
||||
"Select the card to link to a project" : "Wähle die Karte aus, um diese mit einem Projekt zu verknüpfen",
|
||||
"Link to card" : "Mit dieser Karte verknüpfen",
|
||||
"File already exists" : "Datei bereits vorhanden",
|
||||
"A file with the name {filename} already exists." : "Eine Datei mit diesem Namen {filename} existiert bereits.",
|
||||
"Do you want to overwrite it?" : "Möchtest du überschreiben?",
|
||||
"Overwrite file" : "Datei überschreiben",
|
||||
"Keep existing file" : "Existierende Datei behalten",
|
||||
"This board is read only" : "Dieses Board ist schreibgeschützt",
|
||||
"Drop your files to upload" : "Dateien zum Hochladen hineinziehen",
|
||||
"Add card" : "Karte hinzufügen",
|
||||
"Archived cards" : "Archivierte Karten",
|
||||
"Add list" : "Liste hinzufügen",
|
||||
"Select a board" : "Ein Board auswählen",
|
||||
"Select a card" : "Eine Karte auswählen",
|
||||
"Link to card" : "Mit einer Karte verknüpfen",
|
||||
"Cancel" : "Abbrechen",
|
||||
"Add new list" : "Neue Liste hinzufügen",
|
||||
"List name" : "Listenname",
|
||||
"Active filters" : "Aktive Filter",
|
||||
"Apply filter" : "Filter anwenden",
|
||||
"Filter by tag" : "Nach Schlagwort filtern",
|
||||
"Filter by assigned user" : "Nach zugewiesenem Benutzer filtern",
|
||||
"Unassigned" : "Nicht zugewiesen",
|
||||
"Filter by due date" : "Nach Fälligkeitsdatum filtern",
|
||||
"Overdue" : "Überfällig",
|
||||
"Next 24 hours" : "Die nächsten 24 Stunden",
|
||||
"Next 7 days" : "Die nächsten 7 Tage",
|
||||
"Next 30 days" : "Die nächsten 30 Tage",
|
||||
"No due date" : "Kein Fälligkeitsdatum",
|
||||
"Clear filter" : "Filter zurücksetzen",
|
||||
"Hide archived cards" : "Archivierte Karten ausblenden",
|
||||
"Show archived cards" : "Archivierte Karten anzeigen",
|
||||
"Hide archived cards" : "Archivierte Karten ausblenden",
|
||||
"Toggle compact mode" : "Kompaktmodus umschalten",
|
||||
"Open details" : "Details öffnen",
|
||||
"Details" : "Details",
|
||||
"Loading board" : "Lade Board",
|
||||
"No lists available" : "Keine Listen verfügbar",
|
||||
"Create a new list to add cards to this board" : "Erstelle eine neue Liste, um diesem Board Karten hinzuzufügen",
|
||||
"Loading board" : "Board laden",
|
||||
"Board not found" : "Board nicht gefunden",
|
||||
"Sharing" : "Teilen",
|
||||
"Tags" : "Schlagworte",
|
||||
"Deleted items" : "Gelöschte Objekte",
|
||||
"Timeline" : "Zeitachse",
|
||||
"Deleted lists" : "Gelöschte Listen",
|
||||
"Deleted stacks" : "Gelöschte Stapel",
|
||||
"Undo" : "Rückgängig",
|
||||
"Deleted cards" : "Gelöschte Karten",
|
||||
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen…",
|
||||
"Searching for users, groups and circles …" : "Suche nach Benutzern, Gruppen und Kreisen …",
|
||||
"No participants found" : "Keine Teilnehmer gefunden",
|
||||
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen …",
|
||||
"Board owner" : "Board-Besitzer",
|
||||
"(Group)" : "(Gruppe)",
|
||||
"(Circle)" : "(Kreis)",
|
||||
"Can edit" : "kann bearbeiten",
|
||||
"Can share" : "kann teilen",
|
||||
"Can manage" : "kann verwalten",
|
||||
"Owner" : "Besitzer",
|
||||
"Delete" : "Löschen",
|
||||
"Failed to create share with {displayName}" : "Fehler beim Erstellen der Freigabe mit dem Namen {displayName}",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Möchtest du wirklich das Board {title} an {user} übertragen?",
|
||||
"Transfer the board." : "Board übertragen",
|
||||
"Transfer" : "Übertragen",
|
||||
"The board has been transferred to {user}" : "Das Board wurde an {user} übertragen",
|
||||
"Failed to transfer the board to {user}" : "Das Board konnte nicht an {user} übertragen werden",
|
||||
"Add a new list" : "Eine neue Liste hinzufügen",
|
||||
"Archive all cards" : "Alle Karten archivieren",
|
||||
"Unarchive all cards" : "Alle Karten dearchivieren",
|
||||
"Add a new stack" : "Neuer Stapel",
|
||||
"Delete list" : "Liste löschen",
|
||||
"Archive all cards in this list" : "Alle Karten in dieser Liste archivieren",
|
||||
"Unarchive all cards in this list" : "Alle Karten dieser Liste dearchivieren",
|
||||
"Add card" : "Karte hinzufügen",
|
||||
"Add a new card" : "Neue Karte hinzufügen",
|
||||
"Card name" : "Kartenname",
|
||||
"List deleted" : "Liste gelöscht",
|
||||
"Edit" : "Bearbeiten",
|
||||
"Add a new tag" : "Neues Schlagwort hinzufügen",
|
||||
"Add a new label" : "Neues Schlagwort hinzufügen",
|
||||
"title and color value must be provided" : "Titel und Farbwert müssen angegeben werden",
|
||||
"Board name" : "Boardname",
|
||||
"Members" : "Mitglieder",
|
||||
"Upload new files" : "Neue Dateien hochladen",
|
||||
"Share from Files" : "Aus Dateien heraus teilen",
|
||||
"Pending share" : "Ausstehende Freigabe",
|
||||
"Add this attachment" : "Diesen Anhang anhängen",
|
||||
"Show in Files" : "In Dateien anzeigen",
|
||||
"Download" : "Herunterladen",
|
||||
"Remove attachment" : "Anhang entfernen",
|
||||
"Delete Attachment" : "Anhang löschen",
|
||||
"Restore Attachment" : "Anhang wiederherstellen",
|
||||
"File to share" : "Zu teilende Datei",
|
||||
"Invalid path selected" : "Ungültiger Pfad ausgewählt",
|
||||
"Open in sidebar view" : "In Seitenleiste öffnen",
|
||||
"Open in bigger view" : "In größerer Ansicht öffnen",
|
||||
"Load More" : "Mehr laden",
|
||||
"Details" : "Details",
|
||||
"Assign a tag to this card…" : "Dieser Karte ein Schlagwort zuweisen…",
|
||||
"Assign to users" : "Benutzern zuweisen",
|
||||
"Assign a user to this card…" : "Diese Karte einem Benutzer zuweisen…",
|
||||
"Due date" : "Fälligkeitsdatum",
|
||||
"Set a due date" : "Ein Ablaufdatum setzen",
|
||||
"Remove due date" : "Fälligkeitsdatum löschen",
|
||||
"Description" : "Beschreibung",
|
||||
"Formatting help" : "Formatierungshilfe",
|
||||
"Attachments" : "Anhänge",
|
||||
"Comments" : "Kommentare",
|
||||
"Modified" : "Geändert",
|
||||
"Created" : "Erstellt",
|
||||
"The title cannot be empty." : "Der Titel darf nicht leer sein.",
|
||||
"No comments yet. Begin the discussion!" : "Bislang keine Kommentare. Beginne die Diskussion!",
|
||||
"Failed to load comments" : "Das Laden der Kommentare ist fehlgeschlagen",
|
||||
"Assign a tag to this card…" : "Dieser Karte ein Schlagwort zuweisen …",
|
||||
"Assign to users" : "Benutzern zuweisen",
|
||||
"Assign to users/groups/circles" : "An Benutzer, Gruppen oder Kreise zuweisen",
|
||||
"Assign a user to this card…" : "Diese Karte einem Benutzer zuweisen …",
|
||||
"Due date" : "Fälligkeitsdatum",
|
||||
"Set a due date" : "Ein Ablaufdatum setzen",
|
||||
"Remove due date" : "Fälligkeitsdatum löschen",
|
||||
"Select Date" : "Datum auswählen",
|
||||
"Today" : "Heute",
|
||||
"Tomorrow" : "Morgen",
|
||||
"Next week" : "Nächste Woche",
|
||||
"Next month" : "Nächster Monat",
|
||||
"Upload attachment" : "Anhang hochladen",
|
||||
"New comment" : "Neuer Kommentar",
|
||||
"Save" : "Speichern",
|
||||
"The comment cannot be empty." : "Der Kommentar darf nicht leer sein.",
|
||||
"The comment cannot be longer than 1000 characters." : "Der Kommentar darf nicht länger als 1000 Zeichen sein.",
|
||||
"In reply to" : "Als Antwort auf",
|
||||
"Cancel reply" : "Antwort abbrechen",
|
||||
"Reply" : "Antworten",
|
||||
"No users found" : "Keine Nutzer gefunden",
|
||||
"No comments yet. Begin the discussion!" : "Bislang keine Kommentare. Beginne die Diskussion!",
|
||||
"Update" : "Aktualisieren",
|
||||
"Description" : "Beschreibung",
|
||||
"(Unsaved)" : "(nicht gespeichert)",
|
||||
"(Saving…)" : "(Speichere…)",
|
||||
"Formatting help" : "Hilfe zur Formatierung",
|
||||
"Edit description" : "Beschreibung bearbeiten",
|
||||
"View description" : "Beschreibung anzeigen",
|
||||
"Add Attachment" : "Anhang anhängen",
|
||||
"Write a description …" : "Beschreibung schreiben …",
|
||||
"Choose attachment" : "Anhang auswählen",
|
||||
"(group)" : "(Gruppe)",
|
||||
"Todo items" : "Aufgaben-Elemente",
|
||||
"{count} comments, {unread} unread" : "{count} Kommentare, {unread} ungelesen",
|
||||
"Edit card title" : "Kartentitel bearbeiten",
|
||||
"Assign to me" : "Mir zuweisen",
|
||||
"Unassign myself" : "Nicht mehr mir zuweisen",
|
||||
"Move card" : "Karte verschieben",
|
||||
"Unarchive card" : "Karte dearchivieren",
|
||||
"Archive card" : "Karte archivieren",
|
||||
"Delete card" : "Karte löschen",
|
||||
"Move card to another board" : "Karte auf ein anderes Board verschieben",
|
||||
"List is empty" : "Liste ist leer",
|
||||
"Card deleted" : "Karte gelöscht",
|
||||
"seconds ago" : "Gerade eben",
|
||||
"Move card" : "Karte verschieben",
|
||||
"Card details" : "Kartendetails",
|
||||
"Select a stack" : "Stapel auswählen",
|
||||
"All boards" : "Alle Boards",
|
||||
"Archived boards" : "Archivierte Boards",
|
||||
"Shared with you" : "Mit dir geteilt",
|
||||
"Deck settings" : "Deck-Einstellungen",
|
||||
"Use bigger card view" : "Größere Kartenansicht verwenden",
|
||||
"Show boards in calendar/tasks" : "Board in Kalender/Aufgaben anzeigen",
|
||||
"Limit deck usage of groups" : "Nutzung auf Gruppen einschränken",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Wenn du Deck einschränkst, können Benutzer, die nicht zu diesen Gruppen gehören, keine eigenen Boards erstellen. Die Benutzer können weiterhin an Boards arbeiten, die für sie freigegeben wurden.",
|
||||
"Board details" : "Board-Details",
|
||||
"Shared boards" : "Geteilte Boards",
|
||||
"Settings" : "Einstellungen",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Durch die Begrenzung von Deck werden Benutzer, die nicht Teil dieser Gruppen sind, daran gehindert, eigene Boards zu erstellen. Benutzer können weiterhin an Boards arbeiten, die für sie freigegeben wurden.",
|
||||
"New board title" : "Board-Titel",
|
||||
"Edit board" : "Board bearbeiten",
|
||||
"Clone board" : "Board klonen",
|
||||
"Unarchive board" : "Board dearchivieren",
|
||||
"Archive board" : "Board archivieren",
|
||||
"Turn on due date reminders" : "Fälligkeitserinnerungen einschalten",
|
||||
"Turn off due date reminders" : "Fälligkeitserinnerungen ausschalten",
|
||||
"Due date reminders" : "Fälligkeitserinnerungen",
|
||||
"All cards" : "Alle Karten",
|
||||
"Assigned cards" : "Zugewiesene Karten",
|
||||
"No notifications" : "Keine Benachrichtigungen",
|
||||
"Delete board" : "Board löschen",
|
||||
"Board {0} deleted" : "Board {0} gelöscht",
|
||||
"Only assigned cards" : "Nur zugewiesene Karten",
|
||||
"No reminder" : "Keine Erinnerung",
|
||||
"An error occurred" : "Es ist ein Fehler aufgetreten",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Möchtest du wirklich das Board {title} mit all seinen Daten einschließlich der archivierten Karten löschen?",
|
||||
"Delete the board?" : "Das Board löschen?",
|
||||
"Loading filtered view" : "Lade gefilterte Ansicht",
|
||||
"No due" : "Kein Fälligkeitsdatum",
|
||||
"Search for {searchQuery} in all boards" : "Suche nach {searchQuery} in allen Boards",
|
||||
"No results found" : "Keine Ergebnisse gefunden",
|
||||
"{stack} in {board}" : "{stack} in {board}",
|
||||
"Click to expand description" : "Klicken, um die Beschreibung zu erweitern",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Erstellt am {created}\n* Zuletzt geändert am {lastMod}\n* {nbAttachments} Anhänge\n* {nbComments} Kommentare",
|
||||
"{nbCards} cards" : "{nbCards} Karten",
|
||||
"No upcoming cards" : "Keine anstehenden Karten",
|
||||
"upcoming cards" : "Anstehende Karten",
|
||||
"Due on {date}" : "Fällig am {date}",
|
||||
"Clone board" : "Board klonen",
|
||||
"Archive board" : "Board archivieren",
|
||||
"Unarchive board" : "Board dearchivieren",
|
||||
"Delete board" : "Board löschen",
|
||||
"Board details" : "Board-Details",
|
||||
"Link to a board" : "Mit einem Board verknüpfen",
|
||||
"Link to a card" : "Mit einer Karte verknüpfen",
|
||||
"Create a card" : "Eine Karte erstellen",
|
||||
"Message from {author} in {conversationName}" : "Nachricht von {author} in {conversationName}",
|
||||
"Something went wrong" : "Etwas ist schiefgelaufen",
|
||||
"Failed to upload {name}" : "Fehler beim Hochladen von {name}",
|
||||
"Maximum file size of {size} exceeded" : "Maximale Dateigröße von {size} überschritten",
|
||||
"Error creating the share" : "Fehler beim Erstellen der Freigabe",
|
||||
"Share with a Deck card" : "Mit einer Deck-Karte teilen",
|
||||
"Share {file} with a Deck card" : "{file} mit einer Deck-Karte teilen",
|
||||
"Share" : "Freigeben",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teile mit deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit deinem Team mit Kommentaren\n- ⚡ Behalte den Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere dein Projekt",
|
||||
"Are you sure you want to transfer the board {title} for {user} ?" : "Möchtest du wirklich das Board {title} an {user} übertragen?",
|
||||
"Transfer the board for {user} successfully" : "Das Board wurde erfolgreich an {user} übertragen",
|
||||
"Failed to transfer the board for {user}" : "Board konnte nicht an {user} übertragen werden",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Möchtest du wirklich das Board {title} mit all seinen Daten löschen?",
|
||||
"This week" : "Diese Woche",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Möchtest du wirklich das Board {title} an {user} übertragen?"
|
||||
"Link to a card" : "Mit einer Karte verknüpfen"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
291
l10n/de_DE.js
@@ -17,42 +17,42 @@ OC.L10N.register(
|
||||
"{user} has archived the board {before}" : "{user} hat das Board {before} archiviert",
|
||||
"You have unarchived the board {board}" : "Sie haben das Board {board} dearchiviert",
|
||||
"{user} has unarchived the board {before}" : "{user} hat das Board {before} dearchiviert",
|
||||
"You have created a new list {stack} on board {board}" : "Sie haben die neue Liste {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created a new list {stack} on board {board}" : "{user} hat die neue Liste {stack} auf dem Board {board} erstellt",
|
||||
"You have renamed list {before} to {stack} on board {board}" : "Sie haben die Liste {before} auf dem Board {board} in {stack} umbenannt",
|
||||
"{user} has renamed list {before} to {stack} on board {board}" : "{user} hat die Liste {before} in {stack} auf dem Board {board} umbenannt",
|
||||
"You have deleted list {stack} on board {board}" : "Sie haben die Liste {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted list {stack} on board {board}" : "{user} hat die Liste {stack} aus dem Board {board} entfernt",
|
||||
"You have created card {card} in list {stack} on board {board}" : "Sie haben die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
|
||||
"You have deleted card {card} in list {stack} on board {board}" : "Sie haben die Karte {card} in der Liste {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} gelöscht",
|
||||
"You have created a new stack {stack} on board {board}" : "Sie haben den neuen Stapel {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created a new stack {stack} on board {board}" : "{user} hat den neuen Stapel {stack} auf dem Board {board} erstellt",
|
||||
"You have renamed stack {before} to {stack} on board {board}" : "Sie haben den Stapel {before} auf dem Board {board} in {stack} umbenannt",
|
||||
"{user} has renamed stack {before} to {stack} on board {board}" : "{user} hat den Stapel {before} in {stack} auf dem Board {board} umbenannt",
|
||||
"You have deleted stack {stack} on board {board}" : "Sie haben den Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted stack {stack} on board {board}" : "{user} hat den Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"You have created card {card} in stack {stack} on board {board}" : "Sie haben die Karte {card} im Stapel {stack} auf dem Board {board} erstellt",
|
||||
"{user} has created card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} erstellt",
|
||||
"You have deleted card {card} in stack {stack} on board {board}" : "Sie haben die Karte {card} im Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"{user} has deleted card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} gelöscht",
|
||||
"You have renamed the card {before} to {card}" : "Sie haben die Karte {before} in {card} umbenannt",
|
||||
"{user} has renamed the card {before} to {card}" : "{user} hat die Karte {before} in {card} umbenannt",
|
||||
"You have added a description to card {card} in list {stack} on board {board}" : "Sie haben der Karte {card} in der Liste {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} hat der Karte {card} in der Liste {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "Sie haben die Beschreibung der Karte {card} in der Liste {stack} auf dem Board {board} aktualisiert",
|
||||
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} hat die Beschreibung der Karte {card} in der Liste {stack} auf dem Board {board} aktualisiert",
|
||||
"You have archived card {card} in list {stack} on board {board}" : "Sie haben die Karte {card} in der Liste {stack} auf dem Board {board} archiviert",
|
||||
"{user} has archived card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} archiviert",
|
||||
"You have unarchived card {card} in list {stack} on board {board}" : "Sie haben die Karte {card} in der Liste {stack} auf dem Board {board} dearchiviert",
|
||||
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} dearchiviert",
|
||||
"You have added a description to card {card} in stack {stack} on board {board}" : "Sie haben der Karte {card} im Stapel {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"{user} has added a description to card {card} in stack {stack} on board {board}" : "{user} hat der Karte {card} im Stapel {stack} auf dem Board {board} eine Beschreibung hinzugefügt",
|
||||
"You have updated the description of card {card} in stack {stack} on board {board}" : "Sie haben die Beschreibung der Karte {card} im Stapel {stack} auf dem Board {board} aktualisiert",
|
||||
"{user} has updated the description of the card {card} in stack {stack} on board {board}" : "{user} hat die Beschreibung der Karte {card} im Stapel {stack} auf dem Board {board} aktualisiert",
|
||||
"You have archived card {card} in stack {stack} on board {board}" : "Sie haben die Karte {card} im Stapel {stack} auf dem Board {board} archiviert",
|
||||
"{user} has archived card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} archiviert",
|
||||
"You have unarchived card {card} in stack {stack} on board {board}" : "Sie haben die Karte {card} im Stapel {stack} auf dem Board {board} dearchiviert",
|
||||
"{user} has unarchived card {card} in stack {stack} on board {board}" : "{user} hat die Karte {card} im Stapel {stack} auf dem Board {board} dearchiviert",
|
||||
"You have removed the due date of card {card}" : "Sie haben das Fälligkeitsdatum der Karte {card} entfernt",
|
||||
"{user} has removed the due date of card {card}" : "{user} hat das Fälligkeitsdatum der Karte {card} entfernt",
|
||||
"You have set the due date of card {card} to {after}" : "Sie haben das Fälligkeitsdatum der Karte {card} auf {after} gesetzt",
|
||||
"{user} has set the due date of card {card} to {after}" : "{user} hat das Fälligkeitsdatum der Karte {card} auf {after} gesetzt",
|
||||
"You have updated the due date of card {card} to {after}" : "Sie haben das Fälligkeitsdatum der Karte {card} auf {after} aktualisiert",
|
||||
"{user} has updated the due date of card {card} to {after}" : "{user} hat das Fälligkeitsdatum der Karte {card} auf {after} aktualisiert",
|
||||
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Sie haben der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} hat der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Sie haben von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} hat von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Sie haben {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
|
||||
"You have added the tag {label} to card {card} in stack {stack} on board {board}" : "Sie haben der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"{user} has added the tag {label} to card {card} in stack {stack} on board {board}" : "{user} hat der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
|
||||
"You have removed the tag {label} from card {card} in stack {stack} on board {board}" : "Sie haben von der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"{user} has removed the tag {label} from card {card} in stack {stack} on board {board}" : "{user} hat von der Karte {card} im Stapel {stack} auf dem Board {board} das Schlagwort {label} entfernt",
|
||||
"You have assigned {assigneduser} to card {card} on board {board}" : "Sie haben {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
|
||||
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} hat {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Sie haben die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
|
||||
"You have unassigned {assigneduser} from card {card} on board {board}" : "Sie haben die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
|
||||
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} hat die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
|
||||
"You have moved the card {card} from list {stackBefore} to {stack}" : "Sie haben die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
|
||||
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} hat die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
|
||||
"You have moved the card {card} from stack {stackBefore} to {stack}" : "Sie haben die Karte {card} vom Stapel {stackBefore} nach {stack} verschoben",
|
||||
"{user} has moved the card {card} from stack {stackBefore} to {stack}" : "{user} hat die Karte {card} vom Stapel {stackBefore} nach {stack} verschoben",
|
||||
"You have added the attachment {attachment} to card {card}" : "Sie haben den Anhang {attachment} zur Karte {card} hinzugefügt",
|
||||
"{user} has added the attachment {attachment} to card {card}" : "{user} hat den Anhang {attachment} zur Karte {card} hinzugefügt",
|
||||
"You have updated the attachment {attachment} on card {card}" : "Sie haben den Anhang {attachment} der Karte {card} aktualisiert",
|
||||
@@ -67,251 +67,114 @@ OC.L10N.register(
|
||||
"Deck" : "Deck",
|
||||
"Changes in the <strong>Deck app</strong>" : "Änderungen in der <strong>Deck-App</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "Ein <strong>Kommentar</strong> zu einer Karte wurde erstellt",
|
||||
"Upcoming cards" : "Anstehende Karten",
|
||||
"Load more" : "Mehr laden",
|
||||
"Personal" : "Persönlich",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Die Karte \"%s\" auf \"%s\" wurde Ihnen von %s zugewiesen.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} hat Ihnen die Karte {deck-card} auf {deck-board} zugewiesen.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Die Karte \"%s\" in \"%s\" ist überfällig.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "Die Karte {deck-card} in {deck-board} ist überfällig.",
|
||||
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} hat Ihnen die Karte \"%s\" auf \"%s\" zugewiesen.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Die Karte \"%s\" auf \"%s\" ist überfällig.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s hat Sie in einem Kommentar zu \"%s\" erwähnt.",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} hat Sie in einem Kommentar zu {deck-card} erwähnt.",
|
||||
"{user} has mentioned you in a comment on \"%s\"." : "{user} hat Sie in einem Kommentar zu \"%s\" erwähnt.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Das Board \"%s\" wurde von %s mit Ihnen geteilt.",
|
||||
"{user} has shared {deck-board} with you." : "{user} hat das Board {deck-board} mit Ihnen geteilt.",
|
||||
"Card comments" : "Kartenkommentare",
|
||||
"%s on %s" : "%s von %s",
|
||||
"{user} has shared the board %s with you." : "{user} hat das Board %s mit Ihnen geteilt.",
|
||||
"No data was provided to create an attachment." : "Es wurden keine Daten zum Erstellen eines Anhangs bereitgestellt.",
|
||||
"Finished" : "Abgeschlossen",
|
||||
"To review" : "Zu überprüfen",
|
||||
"Action needed" : "Handlung erforderlich",
|
||||
"Later" : "Später",
|
||||
"copy" : "Kopie",
|
||||
"copy" : "kopieren",
|
||||
"To do" : "Offen",
|
||||
"Doing" : "In Arbeit",
|
||||
"Done" : "Erledigt",
|
||||
"Example Task 3" : "Beispielaufgabe 3",
|
||||
"Example Task 2" : "Beispielaufgabe 2",
|
||||
"Example Task 1" : "Beispielaufgabe 1",
|
||||
"Example Task 3" : "Beispielsaufgabe 3",
|
||||
"Example Task 2" : "Beispielsaufgabe 2",
|
||||
"Example Task 1" : "Beispielsaufgabe 1",
|
||||
"The file was uploaded" : "Die Datei wurde hochgeladen",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Die hochgeladene Datei überschreitet die upload_max_filesize-Vorgabe in php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer, als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist.",
|
||||
"The file was only partially uploaded" : "Die Datei konnte nur teilweise hochgeladen werden",
|
||||
"No file was uploaded" : "Es wurde keine Datei hochgeladen",
|
||||
"Missing a temporary folder" : "Kein temporärer Ordner vorhanden",
|
||||
"Could not write file to disk" : "Die Datei konnte nicht auf die Festplatte geschrieben werden",
|
||||
"A PHP extension stopped the file upload" : "Eine PHP-Erweiterung hat das Hochladen der Datei gestoppt",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Keine Datei hochgeladen oder die Dateigröße überschreitet %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Dieser Kommentar hat mehr als %s Zeichen.\nAls Anhang der Karte mit dem Namen %s hinzugefügt.\nZugriff über die URL: %s.",
|
||||
"Card not found" : "Karte nicht gefunden",
|
||||
"Path is already shared with this card" : "Pfad wurde bereits mit dieser Karte geteilt",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Ungültiges Datum, zulässiges Datumsformat: JJJJ-MM-TT",
|
||||
"Personal planning and team project organization" : "Persönliche Planung und Teamprojektorganisation",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Fügen Sie Ihre Aufgaben zu den Karten hinzu und ordnen Sie diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teilen Sie mit Ihrem Team, Ihren Freunden oder Ihrer Familie\n- 📎 Fügen Sie Dateien hinzu und verwende diese in Ihren Markdown-Beschreibungen\n- 💬 Diskutieren Sie mit Ihrem Team mit Kommentaren\n- ⚡ Behalten Sie Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisieren Sie Ihr Projekt",
|
||||
"Card details" : "Karten-Details",
|
||||
"Add board" : "Board hinzufügen",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Fügen Sie Ihre Aufgaben zu den Karten hinzu und ordnen Sie diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisung von Schlagworten für noch bessere Organisation\n- 👥 Teilen Sie mit Ihrem Team, Ihren Freunden oder Ihrer Familie\n- 📎 Fügen Sie Dateien hinzu und verwende diese in Ihren Markdown-Beschreibungen\n- 💬 Diskutieren Sie mit Ihrem Team mit Kommentaren\n- ⚡ Behalten Sie Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisieren Sie Ihr Projekt",
|
||||
"Create new board" : "Neues Board",
|
||||
"new board" : "Neues Board",
|
||||
"Select the board to link to a project" : "Wählen Sie ein Board aus, um dieses mit einem Projekt zu verknüpfen",
|
||||
"Search by board title" : "Nach einem Board suchen",
|
||||
"Select board" : "Board auswählen",
|
||||
"Create a new card" : "Neue Karte erstellen",
|
||||
"Select a board" : "Ein Board auswählen",
|
||||
"Select a list" : "Eine Liste auswählen",
|
||||
"Card title" : "Titel der Karte",
|
||||
"Cancel" : "Abbrechen",
|
||||
"Creating the new card …" : "Neue Karte wird erstellt …",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "Karte \"{card}\" wurde \"{board}\" hinzugefügt",
|
||||
"Open card" : "Karte öffnen",
|
||||
"Close" : "Schließen",
|
||||
"Create card" : "Karte erstellen",
|
||||
"Select a card" : "Eine Karte auswählen",
|
||||
"Select the card to link to a project" : "Wählen Sie die Karte aus, um diese mit einem Projekt zu verknüpfen",
|
||||
"Select a board" : "Ein Board auswählen",
|
||||
"Select a card" : "Eine Karte auswählen",
|
||||
"Link to card" : "Mit einer Karte verknüpfen",
|
||||
"File already exists" : "Datei bereits vorhanden",
|
||||
"A file with the name {filename} already exists." : "Eine Datei mit diesem Namen {filename} existiert bereits.",
|
||||
"Do you want to overwrite it?" : "Möchten Sie überschreiben?",
|
||||
"Overwrite file" : "Datei überschreiben",
|
||||
"Keep existing file" : "Existierende Datei behalten",
|
||||
"This board is read only" : "Dieses Board ist schreibgeschützt",
|
||||
"Drop your files to upload" : "Dateien zum Hochladen hineinziehen",
|
||||
"Add card" : "Karte hinzufügen",
|
||||
"Archived cards" : "Archivierte Karten",
|
||||
"Add list" : "Liste hinzufügen",
|
||||
"Cancel" : "Abbrechen",
|
||||
"Add new list" : "Neue Liste hinzufügen",
|
||||
"List name" : "Listenname",
|
||||
"Active filters" : "Aktive Filter",
|
||||
"Apply filter" : "Filter anwenden",
|
||||
"Filter by tag" : "Nach Schlagwort filtern",
|
||||
"Filter by assigned user" : "Nach zugewiesenem Benutzer filtern",
|
||||
"Unassigned" : "Nicht zugewiesen",
|
||||
"Filter by due date" : "Nach Fälligkeitsdatum filtern",
|
||||
"Overdue" : "Überfällig",
|
||||
"Next 24 hours" : "Die nächsten 24 Stunden",
|
||||
"Next 7 days" : "Die nächsten 7 Tage",
|
||||
"Next 30 days" : "Die nächsten 30 Tage",
|
||||
"No due date" : "Kein Fälligkeitsdatum",
|
||||
"Clear filter" : "Filter zurücksetzen",
|
||||
"Hide archived cards" : "Archivierte Karten ausblenden",
|
||||
"Show archived cards" : "Archivierte Karten anzeigen",
|
||||
"Hide archived cards" : "Archivierte Karten ausblenden",
|
||||
"Toggle compact mode" : "Kompaktmodus umschalten",
|
||||
"Open details" : "Details öffnen",
|
||||
"Details" : "Details",
|
||||
"Loading board" : "Lade Board",
|
||||
"No lists available" : "Keine Listen verfügbar",
|
||||
"Create a new list to add cards to this board" : "Erstellen Sie eine neue Liste, um diesem Board Karten hinzuzufügen",
|
||||
"Loading board" : "Board laden",
|
||||
"Board not found" : "Board nicht gefunden",
|
||||
"Sharing" : "Teilen",
|
||||
"Tags" : "Schlagworte",
|
||||
"Deleted items" : "Gelöschte Objekte",
|
||||
"Timeline" : "Zeitachse",
|
||||
"Deleted lists" : "Gelöschte Listen",
|
||||
"Deleted stacks" : "Gelöschte Stapel",
|
||||
"Undo" : "Rückgängig",
|
||||
"Deleted cards" : "Gelöschte Karten",
|
||||
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen…",
|
||||
"Searching for users, groups and circles …" : "Suche nach Benutzern, Gruppen und Kreisen …",
|
||||
"No participants found" : "Keine Teilnehmer gefunden",
|
||||
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen …",
|
||||
"Board owner" : "Board-Besitzer",
|
||||
"(Group)" : "(Gruppe)",
|
||||
"(Circle)" : "(Kreis)",
|
||||
"Can edit" : "kann bearbeiten",
|
||||
"Can edit" : "Kann bearbeiten",
|
||||
"Can share" : "kann teilen",
|
||||
"Can manage" : "kann verwalten",
|
||||
"Owner" : "Besitzer",
|
||||
"Delete" : "Löschen",
|
||||
"Failed to create share with {displayName}" : "Fehler beim Erstellen der Freigabe mit dem Namen {displayName}",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Möchten Sie wirklich das Board {title} auf {user} übertragen?",
|
||||
"Transfer the board." : "Board übertragen.",
|
||||
"Transfer" : "Übertragen",
|
||||
"The board has been transferred to {user}" : "Das Board wurde auf {user} übertragen",
|
||||
"Failed to transfer the board to {user}" : "Das Board konnte nicht auf {user} übertragen werden",
|
||||
"Add a new list" : "Eine neue Liste hinzufügen",
|
||||
"Archive all cards" : "Alle Karten archivieren",
|
||||
"Unarchive all cards" : "Alle Karten dearchivieren",
|
||||
"Add a new stack" : "Neuer Stapel",
|
||||
"Delete list" : "Liste löschen",
|
||||
"Archive all cards in this list" : "Alle Karten in dieser Liste archivieren",
|
||||
"Unarchive all cards in this list" : "Alle Karten in dieser Liste dearchivieren",
|
||||
"Add card" : "Karte hinzufügen",
|
||||
"Add a new card" : "Neue Karte hinzufügen",
|
||||
"Card name" : "Kartenname",
|
||||
"List deleted" : "Liste gelöscht",
|
||||
"Edit" : "Bearbeiten",
|
||||
"Add a new tag" : "Neues Schlagwort hinzufügen",
|
||||
"Add a new label" : "Neues Schlagwort hinzufügen",
|
||||
"title and color value must be provided" : "Titel und Farbwert müssen angegeben werden",
|
||||
"Board name" : "Boardname",
|
||||
"Members" : "Mitglieder",
|
||||
"Upload new files" : "Neue Dateien hochladen",
|
||||
"Share from Files" : "Aus Dateien heraus teilen",
|
||||
"Pending share" : "Ausstehende Freigabe",
|
||||
"Add this attachment" : "Diesen Anhang anhängen",
|
||||
"Show in Files" : "In Dateien anzeigen",
|
||||
"Download" : "Herunterladen",
|
||||
"Remove attachment" : "Anhang entfernen",
|
||||
"Delete Attachment" : "Anhang löschen",
|
||||
"Restore Attachment" : "Anhang wiederherstellen",
|
||||
"File to share" : "Zu teilende Datei",
|
||||
"Invalid path selected" : "Ungültiger Pfad ausgewählt",
|
||||
"Open in sidebar view" : "In Seitenleiste öffnen",
|
||||
"Open in bigger view" : "In größerer Ansicht öffnen",
|
||||
"Load More" : "Mehr laden",
|
||||
"Details" : "Details",
|
||||
"Assign a tag to this card…" : "Dieser Karte ein Schlagwort zuweisen…",
|
||||
"Assign to users" : "Benutzern zuweisen",
|
||||
"Assign a user to this card…" : "Diese Karte einem Benutzer zuweisen…",
|
||||
"Due date" : "Fälligkeitsdatum",
|
||||
"Set a due date" : "Ein Ablaufdatum setzen",
|
||||
"Remove due date" : "Fälligkeitsdatum entfernen",
|
||||
"Description" : "Beschreibung",
|
||||
"Formatting help" : "Formatierungshilfe",
|
||||
"Attachments" : "Anhänge",
|
||||
"Comments" : "Kommentare",
|
||||
"Modified" : "Geändert",
|
||||
"Created" : "Erstellt",
|
||||
"The title cannot be empty." : "Der Titel darf nicht leer sein.",
|
||||
"No comments yet. Begin the discussion!" : "Bislang keine Kommentare. Beginnen Sie die Diskussion!",
|
||||
"Failed to load comments" : "Das Laden der Kommentare ist fehlgeschlagen",
|
||||
"Assign a tag to this card…" : "Dieser Karte ein Schlagwort zuweisen…",
|
||||
"Assign to users" : "Benutzern zuweisen",
|
||||
"Assign to users/groups/circles" : "An Benutzer, Gruppen oder Kreise zuweisen",
|
||||
"Assign a user to this card…" : "Diese Karte einem Benutzer zuweisen…",
|
||||
"Due date" : "Fälligkeitsdatum",
|
||||
"Set a due date" : "Ein Ablaufdatum setzen",
|
||||
"Remove due date" : "Fälligkeitsdatum löschen",
|
||||
"Select Date" : "Datum auswählen",
|
||||
"Today" : "Heute",
|
||||
"Tomorrow" : "Morgen",
|
||||
"Next week" : "Nächste Woche",
|
||||
"Next month" : "Nächsten Monat",
|
||||
"Upload attachment" : "Anhang hochladen",
|
||||
"New comment" : "Neuer Kommentar",
|
||||
"Save" : "Speichern",
|
||||
"The comment cannot be empty." : "Der Kommentar darf nicht leer sein.",
|
||||
"The comment cannot be longer than 1000 characters." : "Der Kommentar darf nicht länger als 1000 Zeichen sein.",
|
||||
"In reply to" : "Als Antwort auf",
|
||||
"Cancel reply" : "Antwort abbrechen",
|
||||
"Reply" : "Antworten",
|
||||
"No users found" : "Keine Nutzer gefunden",
|
||||
"No comments yet. Begin the discussion!" : "Bislang keine Kommentare. Beginnen Sie die Diskussion!",
|
||||
"Update" : "Aktualisieren",
|
||||
"Description" : "Beschreibung",
|
||||
"(Unsaved)" : "(nicht gespeichert)",
|
||||
"(Saving…)" : "(Speichere…)",
|
||||
"Formatting help" : "Formatierungshilfe",
|
||||
"Edit description" : "Beschreibung bearbeiten",
|
||||
"View description" : "Beschreibung anzeigen",
|
||||
"Add Attachment" : "Anhang anhängen",
|
||||
"Write a description …" : "Beschreibung schreiben …",
|
||||
"Choose attachment" : "Anhang auswählen",
|
||||
"(group)" : "(Gruppe)",
|
||||
"Todo items" : "Aufgaben-Elemente",
|
||||
"{count} comments, {unread} unread" : "{count} Kommentare, {unread} ungelesen",
|
||||
"Edit card title" : "Kartentitel bearbeiten",
|
||||
"Assign to me" : "Mir zuweisen",
|
||||
"Unassign myself" : "Nicht mehr mir zuweisen",
|
||||
"Move card" : "Karte verschieben",
|
||||
"Unarchive card" : "Karte dearchivieren",
|
||||
"Archive card" : "Karte archivieren",
|
||||
"Delete card" : "Karte löschen",
|
||||
"Move card to another board" : "Karte auf ein anderes Board verschieben",
|
||||
"List is empty" : "Liste ist leer",
|
||||
"Card deleted" : "Karte gelöscht",
|
||||
"seconds ago" : "Gerade eben",
|
||||
"Move card" : "Karte verschieben",
|
||||
"Card details" : "Kartendetails",
|
||||
"Select a stack" : "Stapel auswählen",
|
||||
"All boards" : "Alle Boards",
|
||||
"Archived boards" : "Archivierte Boards",
|
||||
"Shared with you" : "Mit Ihnen geteilt",
|
||||
"Deck settings" : "Deck-Einstellungen",
|
||||
"Use bigger card view" : "Größere Kartenansicht verwenden",
|
||||
"Show card ID badge" : "Abzeichen mit Karten-ID zeigen",
|
||||
"Show boards in calendar/tasks" : "Board in Kalender/Aufgaben anzeigen",
|
||||
"Limit deck usage of groups" : "Nutzung auf Gruppen einschränken",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Wenn Sie Deck einschränken, können Benutzer, die nicht zu diesen Gruppen gehören, keine eigenen Boards erstellen. Die Benutzer können weiterhin an Boards arbeiten, die für sie freigegeben wurden.",
|
||||
"Board details" : "Board-Details",
|
||||
"Shared boards" : "Geteilte Boards",
|
||||
"Settings" : "Einstellungen",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Durch die Begrenzung von Deck werden Benutzer, die nicht Teil dieser Gruppen sind, daran gehindert, eigene Boards zu erstellen. Benutzer können weiterhin an Boards arbeiten, die für sie freigegeben wurden.",
|
||||
"New board title" : "Board-Titel",
|
||||
"Edit board" : "Board bearbeiten",
|
||||
"Clone board" : "Board klonen",
|
||||
"Unarchive board" : "Board dearchivieren",
|
||||
"Archive board" : "Board archivieren",
|
||||
"Turn on due date reminders" : "Fälligkeitserinnerungen einschalten",
|
||||
"Turn off due date reminders" : "Fälligkeitserinnerungen ausschalten",
|
||||
"Due date reminders" : "Fälligkeitserinnerungen",
|
||||
"All cards" : "Alle Karten",
|
||||
"Assigned cards" : "Zugewiesene Karten",
|
||||
"No notifications" : "Keine Benachrichtigungen",
|
||||
"Delete board" : "Board löschen",
|
||||
"Board {0} deleted" : "Board {0} gelöscht",
|
||||
"Only assigned cards" : "Nur zugewiesene Karten",
|
||||
"No reminder" : "Keine Erinnerung",
|
||||
"An error occurred" : "Es ist ein Fehler aufgetreten",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Möchten Sie das Board {title} wirklich löschen? Dadurch werden alle Daten dieses Boards einschließlich archivierter Karten gelöscht.",
|
||||
"Delete the board?" : "Das Board löschen?",
|
||||
"Loading filtered view" : "Lade gefilterte Ansicht",
|
||||
"No due" : "Kein Fälligkeitsdatum",
|
||||
"Search for {searchQuery} in all boards" : "Suche nach {searchQuery} in allen Boards",
|
||||
"No results found" : "Keine Ergebnisse gefunden",
|
||||
"{stack} in {board}" : "{stack} auf {board}",
|
||||
"Click to expand description" : "Klicken, um die Beschreibung zu erweitern",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Erstellt am {created}\n* Zuletzt geändert am {lastMod}\n* {nbAttachments} Anhänge\n* {nbComments} Kommentare",
|
||||
"{nbCards} cards" : "{nbCards} Karten",
|
||||
"No upcoming cards" : "Keine anstehenden Karten",
|
||||
"upcoming cards" : "Anstehende Karten",
|
||||
"Due on {date}" : "Fällig am {date}",
|
||||
"Clone board" : "Board klonen",
|
||||
"Archive board" : "Board archivieren",
|
||||
"Unarchive board" : "Board dearchivieren",
|
||||
"Delete board" : "Board löschen",
|
||||
"Board details" : "Board-Details",
|
||||
"Link to a board" : "Mit einem Board verknüpfen",
|
||||
"Link to a card" : "Mit einer Karte verknüpfen",
|
||||
"Create a card" : "Eine Karte erstellen",
|
||||
"Message from {author} in {conversationName}" : "Nachricht von {author} in {conversationName}",
|
||||
"Something went wrong" : "Etwas ist schiefgelaufen",
|
||||
"Failed to upload {name}" : "Fehler beim Hochladen von {name}",
|
||||
"Maximum file size of {size} exceeded" : "Maximale Dateigröße von {size} überschritten",
|
||||
"Error creating the share" : "Fehler beim Erstellen der Freigabe",
|
||||
"Share with a Deck card" : "Mit einer Deck-Karte teilen",
|
||||
"Share {file} with a Deck card" : "{file} mit einer Deck-Karte teilen",
|
||||
"Share" : "Freigeben",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Fügen Sie Ihre Aufgaben zu den Karten hinzu und ordnen Sie diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teilen Sie mit Ihrem Team, Ihren Freunden oder Ihrer Familie\n- 📎 Fügen Sie Dateien hinzu und verwende diese in Ihren Markdown-Beschreibungen\n- 💬 Diskutieren Sie mit Ihrem Team mit Kommentaren\n- ⚡ Behalten Sie Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisieren Sie Ihr Projekt",
|
||||
"Are you sure you want to transfer the board {title} for {user} ?" : "Möchten Sie wirklich das Board {title} an {user} übertragen?",
|
||||
"Transfer the board for {user} successfully" : "Das Board wurde an {user} übertragen",
|
||||
"Failed to transfer the board for {user}" : "Board konnte nicht an {user} übertragen werden",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Möchten Sie wirklich dieses Board {title} mit all seinen Daten löschen?",
|
||||
"This week" : "Diese Woche",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Möchten Sie wirklich das Board {title} an {user} übertragen?"
|
||||
"Link to a card" : "Mit einer Karte verknüpfen"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
|
||||