Signed-off-by: Julius Härtl <jus@bitgrid.net>
fix: Enrich on update
Signed-off-by: Julius Knorr <jus@bitgrid.net>
fix: Enrich on create
Signed-off-by: Julius Knorr <jus@bitgrid.net>
Signed-off-by: Max Bachhuber <max.bachhuber@bahuma.io>
Adjust BoardServiceTest to new dependencies
Signed-off-by: Max Bachhuber <max.bachhuber@bahuma.io>
Add BoardCloneModal vue component to frontend. Adjust BoardApi and store to support clone options
Signed-off-by: Max Bachhuber <max.bachhuber@bahuma.io>
Add license and credits
Signed-off-by: Max Bachhuber <max.bachhuber@bahuma.io>
Fix PHP code style
Signed-off-by: Max Bachhuber <max.bachhuber@bahuma.io>
Change default clone settings
Signed-off-by: Max Bachhuber <max.bachhuber@bahuma.io>
Add accordion for advanced settings
Signed-off-by: Max Bachhuber <max.bachhuber@bahuma.io>
Fix bug which caused board to be cloned when clicking out of the modal
Signed-off-by: Max Bachhuber <max.bachhuber@bahuma.io>
Change wording of clone options
Signed-off-by: Max Bachhuber <max.bachhuber@bahuma.io>
fix: Rebase failures
Signed-off-by: Julius Härtl <jus@bitgrid.net>
update cloneBoards phpdoc
make error message clear
SPDX Header BoardCloneModal.vue
Signed-off-by: grnd-alt <salimbelakkaf@outlook.de>
* Show users with matches in the email address.
* List email addresses in sharing dialog.
`NcSelect` filters the options based on matches in `label` and `subname`.
By using the email address as a subname we ensure
options with a matching email address are shown.
Signed-off-by: Max <max@nextcloud.com>
Added a more or less step for step guide on how to export import from deck to deck, and corrected a command.
Signed-off-by: paskalito <paskalito@users.noreply.github.com>
Mostly replace `ILogger` with `LoggerInterface` and some minor cleanup (constructor property promotion).
Some places used the deprecated `logException` this is easy to migrate by simply use the appropriate loglevel on the logger
and place the exception under the `exception` key in the context.
Also the manual checking of the configured log level is not needed, as this is already done by the logger.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
The order of the entries is fixed in the `info.xsd`,
so to make it validate correctly we need to reorder some attributes (`namespace` and `types`).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Fixes the following issue: https://github.com/nextcloud/deck/issues/5136
By fixing the following error when running 'php occ deck:import --system=TrelloJson'
Error: Call to a member function getUID() on string in /home/sites/site100028002/web/nextcloud.enklaave.org/apps/deck/lib/Service/Importer/Systems/TrelloJsonService.php:136
and
Error: Call to a member function getUID() on string in /home/sites/site100028002/web/nextcloud.enklaave.org/apps/deck/lib/Service/Importer/Systems/TrelloJsonService.php:364
Signed-off-by: mulles <com.github@emu.lu>
2024-05-09 13:02:59 +02:00
475 changed files with 13016 additions and 7884 deletions
@@ -25,7 +25,6 @@ Deck is a kanban style organization tool aimed at personal planning and project
- [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)
- [Nextcloud Deck app for iOS](https://github.com/StCyr/deck-react-native) - It is available in [Apple App store](https://apps.apple.com/ml/app/nextcloud-deck/id1570892788)
- [deck NG for Android and iOS](https://github.com/meltzow/deck-ng) - It is available in [Google Play Store](https://play.google.com/store/apps/details?id=net.meltzow.deckng) and [Apple App Store](https://apps.apple.com/us/app/deck-ng/id6443334702)
| withCards | Bool | Setting if the cards should be copied (Default: false) |
| withAssignments | Bool | Setting if the card assignments should be cloned (Default: false) |
| withLabels | Bool | Setting if the card labels should be cloned (Default: false) |
| withDueDate | Bool | Setting if the card due dates should be cloned (Default: false) |
| moveCardsToLeftStack | Bool | Setting if all cards should be moved to the most left column (useful for To-Do / Doing / Done boards) (Default: false) |
| restoreArchivedCards | Bool | Setting if the archived cards should be unarchived (Default: false) |
#### Response
##### 200 Success
### DELETE /boards/{boardId}/acl/{aclId} - Delete an acl rule
@@ -13,7 +13,7 @@ The Deck application plugin uses the [markdown-it](https://github.com/markdown-i
## Supported Markdown
Markdown comes in may flavors. The best way to learn markdown and understand how to use it, is simply to [try it](https://markdown-it.github.io) on the original script official playground.
Markdown comes in many flavors. The best way to learn markdown and understand how to use it, is simply to [try it](https://markdown-it.github.io) on the original script official playground.
That same link offers also a comprehensive list of what is supported, and what is not - rendering it unnecessary to duplicate that content in here.
@@ -105,17 +105,21 @@ 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`
**Limitations:**
* Comments with more than 1000 characters are placed as attached files to the card.
Create the configuration file respecting the [JSON Schema](https://github.com/nextcloud/deck/blob/main/lib/Service/Importer/fixtures/config-trelloJson-schema.json) for import `Trello JSON`
**Steps:**
1. 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.
2. Create the configuration file.
3. Execute the import, specifying 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/main/lib/Service/Importer/fixtures/config-trelloJson-schema.json) for importing `Trello JSON`.
Example configuration file:
```json
{
"owner":"admin",
@@ -126,26 +130,22 @@ Example configuration file:
}
```
**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.
**Additional Limitations**:
* Importing from a JSON file imports up to 1000 actions. To find out how many actions the board to be imported has, check the number of actions in the JSON.
#### Trello API
Import using API is recommended for boards with more than 1000 actions.
Importing via API is recommended for boards with more than 1000 actions. Trello allows attaching links to a card, but Deck does not support this feature. Attachment links are instead added in a markdown table at the end of the description for each imported card.
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:
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/main/lib/Service/Importer/fixtures/config-trelloApi-schema.json) for import `Trello JSON`
1. Get the API Key and Token [here](https://developer.atlassian.com/cloud/trello/guides/rest-api/api-introduction/#authentication-and-authorization).
2. Obtain the ID of the board you want to import by making a request to:
3. Create the configuration file, ensuring it follows the [JSON Schema](https://github.com/nextcloud/deck/blob/main/lib/Service/Importer/fixtures/config-trelloApi-schema.json) for `Trello JSON`.
Deck currently supports exporting all boards a user owns in a single JSON file. The format is based on the database schema that deck uses. It can be used to re-import boards on the same or other instances.
Deck currently supports exporting all boards a user owns in a single JSON file. The format is based on the database schema that Deck uses. It can be used to re-import boards on the same or other instances.
The export currently has some kown limitations in terms of specific data not included:
The export currently has some known limitations in terms of specific data not included:
- Activity information
- File attachments to deck cards
- File attachments to Deck cards
- Comments
-
```
occ deck:export > my-file.json
```
## Import boards
```
occ deck:export userid > userid-deck-export.json
```
*(`userid` = username as seen in the admin user accounts page)*
## Import Boards
Importing can be done using the API or the `occ``deck:import` command.
@@ -23,39 +24,57 @@ It is possible to import from the following sources:
### Deck JSON
A json file that has been obtained from the abovedescribed `occ deck:export [userid]` command can be imported.
A JSON file that has been obtained from the above-described `occ deck:export [userid] > userid-deck-export.json` command can be imported.
```
occ deck:import my-file.json
occ deck:import userid-deck-export.json
```
In case you are importing from a different instance you may use an additional config file to provide custom user id mapping in case users have different identifiers.
You will be asked to provide a path to a config file.
```
To know what to put in there:
- Have a look at your `userid-deck-export.json`
- Near the top, you will see `"uid"` with a username.
- Search for additional `"uid"` entries to find all the usernames involved and note them.
- Search for `"acl"`, where `"uid"`s of groups are also present; note them too.
If you are importing from a different instance, you must provide custom user ID mapping in case users have different identifiers.
Create a config file, e.g., `deck-import-config-file-userid.json`, and adjust the content of this example as described above. User IDs on the new instance can be seen in the admin user accounts page.
```json
{
"owner": "admin",
"owner":"useridofnewownerofallboards",
"uidRelation":{
"johndoe": "test-user-1"
"userid1onoldinstance":"userid1onnewinstance",
"userid2onoldinstance":"userid2onnewinstance",
"groupid1onoldinstance":"groupid1onnewinstance"
}
}
```
After pressing enter, everything will be imported.
Additional info:
- If you export a user’s boards, all boards that the user has access to will be exported (including those shared with that user).
#### Trello JSON
Limitations:
**Limitations:**
* Comments with more than 1000 characters are placed as attached files to the card.
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`
**Steps:**
1. 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.
2. Create the configuration file.
3. Execute the import, specifying 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/main/lib/Service/Importer/fixtures/config-trelloJson-schema.json) for import`Trello JSON`
Create the configuration file respecting the [JSON Schema](https://github.com/nextcloud/deck/blob/main/lib/Service/Importer/fixtures/config-trelloJson-schema.json) for importing `Trello JSON`.
Example configuration file:
```json
{
"owner":"admin",
@@ -66,26 +85,22 @@ Example configuration file:
}
```
**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.
**Additional Limitations**:
* Importing from a JSON file imports up to 1000 actions. To find out how many actions the board to be imported has, check the number of actions in the JSON.
#### Trello API
Import using API is recommended for boards with more than 1000 actions.
Importing via API is recommended for boards with more than 1000 actions. Trello allows attaching links to a card, but Deck does not support this feature. Attachment links are instead added in a markdown table at the end of the description for each imported card.
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:
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/main/lib/Service/Importer/fixtures/config-trelloApi-schema.json) for import `Trello JSON`
1. Get the API Key and Token [here](https://developer.atlassian.com/cloud/trello/guides/rest-api/api-introduction/#authentication-and-authorization).
2. Obtain the ID of the board you want to import by making a request to:
3. Create the configuration file, ensuring it follows the [JSON Schema](https://github.com/nextcloud/deck/blob/main/lib/Service/Importer/fixtures/config-trelloApi-schema.json) for `Trello JSON`.
"4. Share, comment and collaborate!":"4. مشاركات، و ملاحظات، وتعاون!",
"Create your first card!":"أنشِئ بطاقتك الأولى!",
"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 الموجودة على الرابط %s.",
"Attachments":"المرفقات",
"File":"File",
"Card not found":"لم يتم العثور على البطاقة ",
"Path is already shared with this card":"تم مشاركة المسار بالفعل مع هذه البطاقة ",
"Invalid date, date format must be YYYY-MM-DD":"تاريخ غير صحيح, يجب أن يكون تنسيق التاريخ YYYY-MM-DD",
@@ -236,7 +238,6 @@ OC.L10N.register(
"The title cannot be empty.":"لا يمكن ترك العنوان فارغًا.",
"Open in sidebar view":"فتح في الشريط الجانبي ",
"Open in bigger view":"فتح في نافذة أكبر ",
"Attachments":"المرفقات",
"Comments":"تعليقات",
"Failed to load comments":"فشل في تحميل التعليقات ",
"No comments yet. Begin the discussion!":"لا يوجد تعليقات بعد, ابدأ النقاش الآن!",
"4. Share, comment and collaborate!":"4. مشاركات، و ملاحظات، وتعاون!",
"Create your first card!":"أنشِئ بطاقتك الأولى!",
"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 الموجودة على الرابط %s.",
"Attachments":"المرفقات",
"File":"File",
"Card not found":"لم يتم العثور على البطاقة ",
"Path is already shared with this card":"تم مشاركة المسار بالفعل مع هذه البطاقة ",
"Invalid date, date format must be YYYY-MM-DD":"تاريخ غير صحيح, يجب أن يكون تنسيق التاريخ YYYY-MM-DD",
@@ -234,7 +236,6 @@
"The title cannot be empty.":"لا يمكن ترك العنوان فارغًا.",
"Open in sidebar view":"فتح في الشريط الجانبي ",
"Open in bigger view":"فتح في نافذة أكبر ",
"Attachments":"المرفقات",
"Comments":"تعليقات",
"Failed to load comments":"فشل في تحميل التعليقات ",
"No comments yet. Begin the discussion!":"لا يوجد تعليقات بعد, ابدأ النقاش الآن!",
"{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}",
"Deck":"Набор",
"Deck":"Deck",
"Changes in the <strong>Deck app</strong>":"Промени в <strong>приложението Deck</strong>",
"A <strong>comment</strong> was created on a card":"На картата е създаден <strong>коментар</strong>",
"The file was uploaded":"Файлът е качен",
@@ -75,8 +75,11 @@ OC.L10N.register(
"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",
"Cards due today":"Карти изтичащи днес",
"Cards due tomorrow":"Карти изтичащи утре",
"Upcoming cards":"Предстоящи карти",
"Load more":"Зареждане на още",
"Welcome to Nextcloud Deck!":"Добре дошли в Nextcloud Deck!",
"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\" е достигнала датата на падежа си.",
@@ -101,6 +104,8 @@ OC.L10N.register(
"To Do":"Задачи",
"Done":"Завършено",
"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.",
"Attachments":"Прикачени файлове",
"File":"Файл",
"Card not found":"Катртата не е намерена",
"Path is already shared with this card":"Пътят вече е споделен с тази карта",
"Invalid date, date format must be YYYY-MM-DD":"Невалидна дата, форматът е различен от ГГГГ-ММ-ДД",
@@ -205,7 +210,6 @@ OC.L10N.register(
"The title cannot be empty.":"Заглавието не може да бъде празно.",
"Open in sidebar view":"Отваряне в изгледа на страничната лента",
"Open in bigger view":"Отваря се в по-голям изглед",
"Attachments":"Прикачени файлове",
"Comments":"Коментари",
"Failed to load comments":"Неуспешно зареждане на коментари",
"No comments yet. Begin the discussion!":"Все още няма коментари. Започнете дискусията!",
@@ -227,9 +231,14 @@ OC.L10N.register(
"Add Attachment":"Добавяне на прикачен файл",
"Choose attachment":"Избор на прикачен файл",
"Select Date":"Изберете дата",
"Later today – {timeLocale}":"По-късно днес - {timeLocale}",
"{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}",
"Deck":"Набор",
"Deck":"Deck",
"Changes in the <strong>Deck app</strong>":"Промени в <strong>приложението Deck</strong>",
"A <strong>comment</strong> was created on a card":"На картата е създаден <strong>коментар</strong>",
"The file was uploaded":"Файлът е качен",
@@ -73,8 +73,11 @@
"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",
"Cards due today":"Карти изтичащи днес",
"Cards due tomorrow":"Карти изтичащи утре",
"Upcoming cards":"Предстоящи карти",
"Load more":"Зареждане на още",
"Welcome to Nextcloud Deck!":"Добре дошли в Nextcloud Deck!",
"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\" е достигнала датата на падежа си.",
@@ -99,6 +102,8 @@
"To Do":"Задачи",
"Done":"Завършено",
"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.",
"Attachments":"Прикачени файлове",
"File":"Файл",
"Card not found":"Катртата не е намерена",
"Path is already shared with this card":"Пътят вече е споделен с тази карта",
"Invalid date, date format must be YYYY-MM-DD":"Невалидна дата, форматът е различен от ГГГГ-ММ-ДД",
@@ -203,7 +208,6 @@
"The title cannot be empty.":"Заглавието не може да бъде празно.",
"Open in sidebar view":"Отваряне в изгледа на страничната лента",
"Open in bigger view":"Отваря се в по-голям изглед",
"Attachments":"Прикачени файлове",
"Comments":"Коментари",
"Failed to load comments":"Неуспешно зареждане на коментари",
"No comments yet. Begin the discussion!":"Все още няма коментари. Започнете дискусията!",
@@ -225,9 +229,14 @@
"Add Attachment":"Добавяне на прикачен файл",
"Choose attachment":"Избор на прикачен файл",
"Select Date":"Изберете дата",
"Later today – {timeLocale}":"По-късно днес - {timeLocale}",
"4. Share, comment and collaborate!":"4. Comparteix, comenta i col·labora!",
"Create your first card!":"Crea la teva primera targeta!",
"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.",
"Attachments":"Adjunts",
"File":"Fitxer",
"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",
@@ -236,7 +238,6 @@ OC.L10N.register(
"The title cannot be empty.":"El títol no pot estar buit.",
"Open in sidebar view":"Obre a la vista de la barra lateral",
"Open in bigger view":"Obre a la vista més gran",
"Attachments":"Adjunts",
"Comments":"Comentaris",
"Failed to load comments":"No s'han pogut carregar els comentaris",
"No comments yet. Begin the discussion!":"No hi ha comentaris encara. Començar la discussió!",
"4. Share, comment and collaborate!":"4. Comparteix, comenta i col·labora!",
"Create your first card!":"Crea la teva primera targeta!",
"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.",
"Attachments":"Adjunts",
"File":"Fitxer",
"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",
@@ -234,7 +236,6 @@
"The title cannot be empty.":"El títol no pot estar buit.",
"Open in sidebar view":"Obre a la vista de la barra lateral",
"Open in bigger view":"Obre a la vista més gran",
"Attachments":"Adjunts",
"Comments":"Comentaris",
"Failed to load comments":"No s'han pogut carregar els comentaris",
"No comments yet. Begin the discussion!":"No hi ha comentaris encara. Començar la discussió!",
"4. Share, comment and collaborate!":"4. Sdílejte, komentujte a spolupracujte!",
"Create your first card!":"Vytvořte svou první kartu!",
"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.",
"Attachments":"Přílohy",
"File":"Soubor",
"date":"datum",
"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",
@@ -237,9 +240,9 @@ OC.L10N.register(
"Modified":"Změněno",
"Created":"Vytvořeno",
"The title cannot be empty.":"Nadpis je třeba vyplnit.",
"Cannot close unsaved card!":"Nebylo možné zavřít neuloženou kartu!",
"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",
"Failed to load comments":"Načtení komentářů se nezdařilo",
"No comments yet. Begin the discussion!":"Zatím bez komentářů. Zahajte diskuzi!",
@@ -252,6 +255,7 @@ OC.L10N.register(
"Reply":"Odpovědět",
"Update":"Aktualizovat",
"Write a description …":"Zadejte popis…",
"Could not save description":"Nebylo možné uložit popis",
"4. Share, comment and collaborate!":"4. Sdílejte, komentujte a spolupracujte!",
"Create your first card!":"Vytvořte svou první kartu!",
"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.",
"Attachments":"Přílohy",
"File":"Soubor",
"date":"datum",
"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",
@@ -235,9 +238,9 @@
"Modified":"Změněno",
"Created":"Vytvořeno",
"The title cannot be empty.":"Nadpis je třeba vyplnit.",
"Cannot close unsaved card!":"Nebylo možné zavřít neuloženou kartu!",
"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",
"Failed to load comments":"Načtení komentářů se nezdařilo",
"No comments yet. Begin the discussion!":"Zatím bez komentářů. Zahajte diskuzi!",
@@ -250,6 +253,7 @@
"Reply":"Odpovědět",
"Update":"Aktualizovat",
"Write a description …":"Zadejte popis…",
"Could not save description":"Nebylo možné uložit popis",
"4. Share, comment and collaborate!":"4. Teilen, kommentieren und mitarbeiten!",
"Create your first card!":"Erstelle Deine erste Karte!",
"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.",
"Attachments":"Anhänge",
"File":"Datei",
"date":"Datum",
"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",
@@ -237,9 +240,9 @@ OC.L10N.register(
"Modified":"Geändert",
"Created":"Erstellt",
"The title cannot be empty.":"Der Titel darf nicht leer sein.",
"Cannot close unsaved card!":"Nicht gespeicherte Karte kann nicht geschlossen werden!",
"Open in sidebar view":"In Seitenleiste öffnen",
"Open in bigger view":"In größerer Ansicht öffnen",
"Attachments":"Anhänge",
"Comments":"Kommentare",
"Failed to load comments":"Laden der Kommentare ist fehlgeschlagen",
"No comments yet. Begin the discussion!":"Bislang keine Kommentare. Beginne die Diskussion!",
@@ -252,6 +255,7 @@ OC.L10N.register(
"Reply":"Antworten",
"Update":"Aktualisieren",
"Write a description …":"Beschreibung schreiben …",
"Could not save description":"Beschreibung konnte nicht gespeichert werden",
"4. Share, comment and collaborate!":"4. Teilen, kommentieren und mitarbeiten!",
"Create your first card!":"Erstelle Deine erste Karte!",
"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.",
"Attachments":"Anhänge",
"File":"Datei",
"date":"Datum",
"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",
@@ -235,9 +238,9 @@
"Modified":"Geändert",
"Created":"Erstellt",
"The title cannot be empty.":"Der Titel darf nicht leer sein.",
"Cannot close unsaved card!":"Nicht gespeicherte Karte kann nicht geschlossen werden!",
"Open in sidebar view":"In Seitenleiste öffnen",
"Open in bigger view":"In größerer Ansicht öffnen",
"Attachments":"Anhänge",
"Comments":"Kommentare",
"Failed to load comments":"Laden der Kommentare ist fehlgeschlagen",
"No comments yet. Begin the discussion!":"Bislang keine Kommentare. Beginne die Diskussion!",
@@ -250,6 +253,7 @@
"Reply":"Antworten",
"Update":"Aktualisieren",
"Write a description …":"Beschreibung schreiben …",
"Could not save description":"Beschreibung konnte nicht gespeichert werden",
"4. Share, comment and collaborate!":"4. Teilen, kommentieren und mitarbeiten!",
"Create your first card!":"Erstellen Sie Ihre erste Karte!",
"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.",
"Attachments":"Anhänge",
"File":"Datei",
"date":"Datum",
"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",
@@ -237,9 +240,9 @@ OC.L10N.register(
"Modified":"Geändert",
"Created":"Erstellt",
"The title cannot be empty.":"Der Titel darf nicht leer sein.",
"Cannot close unsaved card!":"Nicht gespeicherte Karte kann nicht geschlossen werden!",
"Open in sidebar view":"In Seitenleiste öffnen",
"Open in bigger view":"In größerer Ansicht öffnen",
"Attachments":"Anhänge",
"Comments":"Kommentare",
"Failed to load comments":"Kommentare konnten nicht geladen werden",
"No comments yet. Begin the discussion!":"Bislang keine Kommentare. Beginnen Sie die Diskussion!",
@@ -252,6 +255,7 @@ OC.L10N.register(
"Reply":"Antworten",
"Update":"Aktualisieren",
"Write a description …":"Beschreibung schreiben …",
"Could not save description":"Beschreibung konnte nicht gespeichert werden",
"4. Share, comment and collaborate!":"4. Teilen, kommentieren und mitarbeiten!",
"Create your first card!":"Erstellen Sie Ihre erste Karte!",
"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.",
"Attachments":"Anhänge",
"File":"Datei",
"date":"Datum",
"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",
@@ -235,9 +238,9 @@
"Modified":"Geändert",
"Created":"Erstellt",
"The title cannot be empty.":"Der Titel darf nicht leer sein.",
"Cannot close unsaved card!":"Nicht gespeicherte Karte kann nicht geschlossen werden!",
"Open in sidebar view":"In Seitenleiste öffnen",
"Open in bigger view":"In größerer Ansicht öffnen",
"Attachments":"Anhänge",
"Comments":"Kommentare",
"Failed to load comments":"Kommentare konnten nicht geladen werden",
"No comments yet. Begin the discussion!":"Bislang keine Kommentare. Beginnen Sie die Diskussion!",
@@ -250,6 +253,7 @@
"Reply":"Antworten",
"Update":"Aktualisieren",
"Write a description …":"Beschreibung schreiben …",
"Could not save description":"Beschreibung konnte nicht gespeichert werden",
"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.",
"Attachments":"Συνημμένα",
"File":"Αρχείο",
"Card not found":"Η καρτέλα δεν βρέθηκε",
"Path is already shared with this card":"Η διαδρομή κοινοποιείται ήδη σε αυτήν την καρτέλα",
"Invalid date, date format must be YYYY-MM-DD":"Μη έγκυρη ημερομηνία, η μορφή ημερομηνίας πρέπει να είναι ΕΕΕΕ-ΜΜ-ΗΗ",
@@ -224,7 +226,6 @@ OC.L10N.register(
"The title cannot be empty.":"Ο τίτλος δεν μπορεί να είναι κενός.",
"Open in sidebar view":"Άνοιγμα σε προβολή πλευρικής στήλης",
"Open in bigger view":"Άνοιγμα σε μεγαλύτερη προβολή",
"Attachments":"Συνημμένα",
"Comments":"Σχόλια",
"Failed to load comments":"Αποτυχία φόρτωσης σχολίων",
"No comments yet. Begin the discussion!":"Χωρίς σχόλια ακόμη. Ξεκινήστε την συζήτηση!",
"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.",
"Attachments":"Συνημμένα",
"File":"Αρχείο",
"Card not found":"Η καρτέλα δεν βρέθηκε",
"Path is already shared with this card":"Η διαδρομή κοινοποιείται ήδη σε αυτήν την καρτέλα",
"Invalid date, date format must be YYYY-MM-DD":"Μη έγκυρη ημερομηνία, η μορφή ημερομηνίας πρέπει να είναι ΕΕΕΕ-ΜΜ-ΗΗ",
@@ -222,7 +224,6 @@
"The title cannot be empty.":"Ο τίτλος δεν μπορεί να είναι κενός.",
"Open in sidebar view":"Άνοιγμα σε προβολή πλευρικής στήλης",
"Open in bigger view":"Άνοιγμα σε μεγαλύτερη προβολή",
"Attachments":"Συνημμένα",
"Comments":"Σχόλια",
"Failed to load comments":"Αποτυχία φόρτωσης σχολίων",
"No comments yet. Begin the discussion!":"Χωρίς σχόλια ακόμη. Ξεκινήστε την συζήτηση!",
"4. Share, comment and collaborate!":"4. Share, comment and collaborate!",
"Create your first card!":"Create your first card!",
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s.":"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s.",
"Attachments":"Attachments",
"File":"File",
"date":"date",
"Card not found":"Card not found",
"Path is already shared with this card":"Path is already shared with this card",
"Invalid date, date format must be YYYY-MM-DD":"Invalid date, date format must be YYYY-MM-DD",
@@ -237,9 +240,9 @@ OC.L10N.register(
"Modified":"Modified",
"Created":"Created",
"The title cannot be empty.":"The title cannot be empty.",
"Cannot close unsaved card!":"Cannot close unsaved card!",
"Open in sidebar view":"Open in sidebar view",
"Open in bigger view":"Open in bigger view",
"Attachments":"Attachments",
"Comments":"Comments",
"Failed to load comments":"Failed to load comments",
"No comments yet. Begin the discussion!":"No comments yet. Begin the discussion!",
@@ -252,6 +255,7 @@ OC.L10N.register(
"Reply":"Reply",
"Update":"Update",
"Write a description …":"Write a description …",
"Could not save description":"Could not save description",
"4. Share, comment and collaborate!":"4. Share, comment and collaborate!",
"Create your first card!":"Create your first card!",
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s.":"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s.",
"Attachments":"Attachments",
"File":"File",
"date":"date",
"Card not found":"Card not found",
"Path is already shared with this card":"Path is already shared with this card",
"Invalid date, date format must be YYYY-MM-DD":"Invalid date, date format must be YYYY-MM-DD",
@@ -235,9 +238,9 @@
"Modified":"Modified",
"Created":"Created",
"The title cannot be empty.":"The title cannot be empty.",
"Cannot close unsaved card!":"Cannot close unsaved card!",
"Open in sidebar view":"Open in sidebar view",
"Open in bigger view":"Open in bigger view",
"Attachments":"Attachments",
"Comments":"Comments",
"Failed to load comments":"Failed to load comments",
"No comments yet. Begin the discussion!":"No comments yet. Begin the discussion!",
@@ -250,6 +253,7 @@
"Reply":"Reply",
"Update":"Update",
"Write a description …":"Write a description …",
"Could not save description":"Could not save description",
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s.":"Este comentario tiene más de %s caracteres.\nAñadido como adjunto a la tarjeta con el nombre %s.\nAccesible en la URL: %s.",
"Attachments":"Adjuntos",
"File":"Archivo",
"Card not found":"Tarjeta no encontrada",
"Path is already shared with this card":"La ruta ya se ha compartido con esta tarjeta",
"Invalid date, date format must be YYYY-MM-DD":"Fecha no válida, el formato de las fechas debe ser AAAA-MM-DD",
@@ -228,7 +230,6 @@ OC.L10N.register(
"The title cannot be empty.":"El título no puede estar vacío.",
"Open in sidebar view":"Abrir en vista de barra lateral",
"Open in bigger view":"Abrir en vista más grande",
"Attachments":"Adjuntos",
"Comments":"Comentarios",
"Failed to load comments":"Fallo al cargar los comentarios",
"No comments yet. Begin the discussion!":"Todavía no hay comentarios. ¡Comienza la discusión!",
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s.":"Este comentario tiene más de %s caracteres.\nAñadido como adjunto a la tarjeta con el nombre %s.\nAccesible en la URL: %s.",
"Attachments":"Adjuntos",
"File":"Archivo",
"Card not found":"Tarjeta no encontrada",
"Path is already shared with this card":"La ruta ya se ha compartido con esta tarjeta",
"Invalid date, date format must be YYYY-MM-DD":"Fecha no válida, el formato de las fechas debe ser AAAA-MM-DD",
@@ -226,7 +228,6 @@
"The title cannot be empty.":"El título no puede estar vacío.",
"Open in sidebar view":"Abrir en vista de barra lateral",
"Open in bigger view":"Abrir en vista más grande",
"Attachments":"Adjuntos",
"Comments":"Comentarios",
"Failed to load comments":"Fallo al cargar los comentarios",
"No comments yet. Begin the discussion!":"Todavía no hay comentarios. ¡Comienza la discusión!",
"Invalid date, date format must be YYYY-MM-DD":"La fecha es inválida, favor de seguir el formato AAAA-MM-DD",
"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 es una herramienta de organización de estilo kanban dirigida a la planificación personal y la organización de proyectos para equipos integrados con Nextcloud.\n\n\n- 📥 Agrega tus tareas a las tarjetas y ordénalas.\n- 📄 Escriba notas adicionales\n- 🔖 Asignar etiquetas para una organización mejor\n- 👥 Comparte con tu equipo, amigos o familia.\n- 📎 Adjuntar archivos e incrustarlos en su descripción\n- 💬 Discuta con su equipo usando comentarios.\n- ⚡ Mantenga un registro de los cambios en el flujo de actividad\n- 🚀 Organiza tu proyecto",
"Invalid date, date format must be YYYY-MM-DD":"La fecha es inválida, favor de seguir el formato AAAA-MM-DD",
"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 es una herramienta de organización de estilo kanban dirigida a la planificación personal y la organización de proyectos para equipos integrados con Nextcloud.\n\n\n- 📥 Agrega tus tareas a las tarjetas y ordénalas.\n- 📄 Escriba notas adicionales\n- 🔖 Asignar etiquetas para una organización mejor\n- 👥 Comparte con tu equipo, amigos o familia.\n- 📎 Adjuntar archivos e incrustarlos en su descripción\n- 💬 Discuta con su equipo usando comentarios.\n- ⚡ Mantenga un registro de los cambios en el flujo de actividad\n- 🚀 Organiza tu proyecto",
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s.":"Este comentario tiene más de %s caracteres.\n Añadido como un archivo adjunto a la tarjeta con el nombre %s.\n Accesible en la URL: %s.",
"Attachments":"Adjuntos",
"File":"Archivo",
"Card not found":"No se encontró la tarjeta",
"Path is already shared with this card":"La ruta ya está compartida con esta tarjeta",
"Invalid date, date format must be YYYY-MM-DD":"La fecha es inválida, por favor sigue el formato AAAA-MM-DD",
@@ -205,7 +207,6 @@ OC.L10N.register(
"The title cannot be empty.":"El título no puede estar vacío.",
"Open in sidebar view":"Abrir en vista de barra lateral",
"Open in bigger view":"Abrir en vista más grande",
"Attachments":"Adjuntos",
"Comments":"Comentarios",
"Failed to load comments":"Error al cargar los comentarios",
"No comments yet. Begin the discussion!":"Aún no hay comentarios. ¡Inicia la discusión!",
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s.":"Este comentario tiene más de %s caracteres.\n Añadido como un archivo adjunto a la tarjeta con el nombre %s.\n Accesible en la URL: %s.",
"Attachments":"Adjuntos",
"File":"Archivo",
"Card not found":"No se encontró la tarjeta",
"Path is already shared with this card":"La ruta ya está compartida con esta tarjeta",
"Invalid date, date format must be YYYY-MM-DD":"La fecha es inválida, por favor sigue el formato AAAA-MM-DD",
@@ -203,7 +205,6 @@
"The title cannot be empty.":"El título no puede estar vacío.",
"Open in sidebar view":"Abrir en vista de barra lateral",
"Open in bigger view":"Abrir en vista más grande",
"Attachments":"Adjuntos",
"Comments":"Comentarios",
"Failed to load comments":"Error al cargar los comentarios",
"No comments yet. Begin the discussion!":"Aún no hay comentarios. ¡Inicia la discusión!",
"Invalid date, date format must be YYYY-MM-DD":"La fecha es inválida, por favor sigue el formato AAAA-MM-DD",
"Cancel":"Cancelar",
"File already exists":"El archivo ya existe",
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.