Compare commits

...
144 Commits
Author SHA1 Message Date
Lauri Ojansivu 417fed8605 v3.47 2019-10-09 14:15:12 +03:00
Lauri Ojansivu 4eca27498c Update translations. 2019-10-09 14:01:39 +03:00
Lauri Ojansivu d962ecd77f Update ChangeLog. 2019-10-09 14:00:05 +03:00
Lauri Ojansivu 6feb35c079 Merge pull request #2751 from liske/fixes/rest-card-members
REST API: fix handling of members property on card creation
2019-10-09 13:56:11 +03:00
Thomas Liske ea90ce8784 REST API: fix handling of members property on card creation 2019-10-09 07:23:21 +02:00
Lauri Ojansivu 4a42d683af v3.46 2019-10-07 00:39:52 +03:00
Lauri Ojansivu 8faa48fe12 Update translations. 2019-10-07 00:30:08 +03:00
Lauri Ojansivu 67c4fae32b Update ChangeLog. 2019-10-07 00:28:00 +03:00
Lauri Ojansivu 42d31901b5 Merge pull request #2747 from liske/fixes/rest-create-checklist-2746
REST API: fix creation of Checklists (closes wekan/wekan#2746)
2019-10-07 00:22:49 +03:00
Thomas Liske 72b22a73b6 REST API: fix creation of Checklists (closes wekan/wekan#2746) 2019-10-06 22:53:43 +02:00
Lauri Ojansivu 4d30503cb5 Update translations. 2019-10-05 12:58:46 +03:00
Lauri Ojansivu 7b45a0fbfe Update ChangeLog. 2019-10-05 12:57:17 +03:00
Lauri Ojansivu 42dee10dbe Merge branch 'master' of github.com:wekan/wekan 2019-10-05 12:55:05 +03:00
Lauri Ojansivu 68be12d166 More black minicard badges.
Thanks to sfahrenholz and xet7 !

Closes #2745
2019-10-05 12:54:16 +03:00
Lauri Ojansivu fd896c29b5 More black minicard badges.
Thanks to sfahrenholz and xet7 !
2019-10-05 12:52:57 +03:00
Lauri Ojansivu 98a4be643e Update translation. 2019-10-04 23:01:57 +03:00
Lauri Ojansivu b650a89728 v3.45 2019-10-03 07:51:50 +03:00
Lauri Ojansivu 346dba4969 Update translations. 2019-10-03 07:46:50 +03:00
Lauri Ojansivu f3b858ca21 Revert drag handle changes. 2019-10-03 06:03:11 +03:00
Lauri Ojansivu 5bc355f9a5 Drag handles. In progress. 2019-10-03 04:23:33 +03:00
Lauri Ojansivu 21fa26a1be Update ChangeLog. 2019-10-01 21:09:27 +03:00
Lauri Ojansivu 66372271c2 Merge pull request #2740 from whowillcare/master
#2738 adding all pertinent help file for due days, plus modified the …
2019-10-01 18:41:01 +03:00
Sam X. Chen e60926f847 #2738 adding all pertinent help file for due days, plus modified the .list-header-name when in mobile mode 2019-10-01 10:39:36 -04:00
Lauri Ojansivu b04df1d54d Update translations. 2019-10-01 16:18:38 +03:00
Lauri Ojansivu 83f81f4586 Fix prettier. 2019-10-01 01:05:02 +03:00
Lauri Ojansivu 4785086e2f Fix lint. 2019-10-01 00:58:12 +03:00
Lauri Ojansivu 98c38fe58f Drag handles continue. In progress.
Thanks to xet7 !
2019-10-01 00:48:36 +03:00
Lauri Ojansivu 44378fe9d1 Update translations. 2019-09-30 21:31:49 +03:00
Lauri Ojansivu afcca947e3 Update translations. 2019-09-30 15:03:15 +03:00
Lauri Ojansivu 20526756db Update translations. 2019-09-28 15:15:23 +03:00
Lauri Ojansivu 58724f93c9 Update ChangeLog. 2019-09-28 15:05:53 +03:00
Lauri Ojansivu 5d6c68a9cf Merge branch 'master' of github.com:wekan/wekan 2019-09-28 14:56:51 +03:00
Lauri Ojansivu ed4c49090a Merge pull request #2738 from whowillcare/master
Add feature: Add due timeline into Calendar view
2019-09-28 14:57:00 +03:00
Lauri Ojansivu 75dc5f226c Merge branch 'feature-drag-handle' 2019-09-28 14:55:09 +03:00
Sam X. Chen 020b663836 Feature enhancement: Allow wekan master have more flexiblity on setting up due reminder 2019-09-26 12:24:40 -04:00
Sam X. Chen e5f0dd7dd8 Add feature: Add due timeline into Calendar view 2019-09-26 12:20:14 -04:00
Sam X. Chen 4f34adbd44 Merge remote-tracking branch 'upstream/master' 2019-09-26 10:53:58 -04:00
Sam X. Chen 62b72a03c4 Add feature: Add due timeline into Calendar view 2019-09-26 10:53:40 -04:00
Lauri Ojansivu 5696e4a4c6 Update translations. 2019-09-25 21:37:25 +03:00
Lauri Ojansivu 814e264521 Merge pull request #2720 from whowillcare/master
if username contains space, @ functions will fail at certain point
2019-09-25 20:51:51 +03:00
Lauri Ojansivu 872ed4b2f9 Drag handles continue. In progress. 2019-09-25 20:49:19 +03:00
Lauri Ojansivu 1d8633e7e6 Update translations. 2019-09-25 20:46:35 +03:00
Lauri Ojansivu b3637f2781 Merge branch 'master' of github.com:wekan/wekan 2019-09-25 20:44:46 +03:00
Lauri Ojansivu 68d3cdae58 Merge pull request #2734 from jernejh/patch-1
Update sl.i18n.json
2019-09-25 20:44:53 +03:00
jernejh 620a362244 Update sl.i18n.json 2019-09-25 19:08:18 +02:00
Sam X. Chen d5cff1ec48 Add feature: differentiating new due time and modified due time 2019-09-25 11:48:20 -04:00
Sam X. Chen 8d7714760c BUG FIX: archived cards still sent out notification 2019-09-25 11:26:46 -04:00
Sam X. Chen a37723f8a4 Fixing method in users.js didn't have check userId 2019-09-21 15:32:21 -04:00
Sam X. Chen e3a727edec Merge remote-tracking branch 'upstream/master' 2019-09-19 15:17:01 -04:00
Sam X. Chen 4ee88e026e Buxfixed: if username contains space, it will cause @ commment failed to send out email and other 2019-09-19 15:16:48 -04:00
Lauri Ojansivu 55a2473d81 Merge branch 'feature-drag-handle' 2019-09-19 01:12:04 +03:00
Lauri Ojansivu ba754cfaea v3.44 2019-09-17 23:54:31 +03:00
Lauri Ojansivu 7a8011f887 Update ChangeLog. 2019-09-17 22:19:01 +03:00
Lauri Ojansivu 125231beff Add language: Slovenian.
Thanks to translators!
2019-09-17 22:16:06 +03:00
Lauri Ojansivu f70e47a012 Update ChangeLog. 2019-09-17 20:28:39 +03:00
Lauri Ojansivu 0c34566aef Merge pull request #2717 from whowillcare/master
BugFix: in richer editor @ autocomplete doesn't really insert the username properly
2019-09-17 19:37:38 +03:00
Sam X. Chen f29d7daa1d BugFix: in richer editor @ autocomplete doesn't really insert the user name into comment properly 2019-09-17 09:30:26 -04:00
Sam X. Chen 0120c73a80 Merge remote-tracking branch 'upstream/master' 2019-09-17 09:27:36 -04:00
Sam X. Chen 194b6ad46e BugFix: in richer editor @ autocomplete doesn't really insert the user name into comment properly 2019-09-17 09:27:23 -04:00
Lauri Ojansivu 158ddadf54 v3.43 2019-09-17 03:06:01 +03:00
Lauri Ojansivu 9fb0ef7eb2 Update readme. 2019-09-17 02:51:44 +03:00
Lauri Ojansivu 503be10d36 Update Readme. 2019-09-17 02:49:38 +03:00
Lauri Ojansivu 3021f1cbe1 Update ChangeLog. 2019-09-17 02:39:21 +03:00
Lauri Ojansivu c66eba217b Update ChangeLog. 2019-09-17 02:36:49 +03:00
Lauri Ojansivu 8486ccbaa8 Update translations. 2019-09-17 01:43:26 +03:00
Lauri Ojansivu 03d7fc02ec Drag handles. In Progress. 2019-09-17 01:39:10 +03:00
Lauri Ojansivu ddd00a27a9 Merge pull request #2715 from whowillcare/master
fix some issues found
2019-09-17 01:34:55 +03:00
Sam X. Chen b31c42acc4 Merge remote-tracking branch 'upstream/master' 2019-09-16 14:43:51 -04:00
Sam X. Chen 616903114f Fix two-way webhooks - locking might fail sometime 2019-09-16 14:43:32 -04:00
Lauri Ojansivu 6e6e7ded82 Update translations. 2019-09-15 00:03:27 +03:00
Lauri Ojansivu 6c7e1ed3ae Add translation for "Show desktop drag handles".
Thanks to xet7 !
2019-09-14 23:53:56 +03:00
Lauri Ojansivu d896f6dbcf v3.42 2019-09-14 06:06:08 +03:00
Lauri Ojansivu 5e963375cb Update translations. 2019-09-14 06:00:05 +03:00
Lauri Ojansivu 57119868bb Revert drag handle changes.
Thanks to Keelan !

Related #2704
2019-09-14 05:55:32 +03:00
Lauri Ojansivu 7b445dfc93 v3.41 2019-09-13 03:59:51 +03:00
Lauri Ojansivu 5f27a76312 Update translations. 2019-09-13 03:56:37 +03:00
Lauri Ojansivu b34960d1bd Update ChangeLog. 2019-09-13 03:50:09 +03:00
Lauri Ojansivu ff550e9110 Mobile and Desktop drag handles part 1.
Thanks to xet7 !

Related #2081
2019-09-13 03:45:55 +03:00
Lauri Ojansivu 0fcfc3a340 Update readme. 2019-09-12 13:06:35 +03:00
Lauri Ojansivu f95d19ab49 Update readme. 2019-09-12 13:05:01 +03:00
Lauri Ojansivu 50744dead8 Update links at readme. 2019-09-12 12:59:27 +03:00
Lauri Ojansivu a0e5737e4c Anonymize data please. 2019-09-12 10:18:53 +03:00
Lauri Ojansivu ecd9b9b5f4 v3.40 2019-09-11 21:12:58 +03:00
Lauri Ojansivu 389ed2f1ad Update translations. 2019-09-11 21:07:54 +03:00
Lauri Ojansivu 273dc5223b Update ChangeLog. 2019-09-11 21:02:55 +03:00
Lauri Ojansivu db32f595fe Merge pull request #2697 from justinr1234/patch-7
Fix #2688 subcard selector
2019-09-11 19:18:32 +03:00
justinr1234 4d967360b2 Fix #2688 subcard selector 2019-09-11 10:54:32 -05:00
Lauri Ojansivu f14dce2f19 v3.39 2019-09-11 16:11:55 +03:00
Lauri Ojansivu 82f73ab58c Update translations. 2019-09-11 16:05:58 +03:00
Sam X. Chen 0b52ba4ded Merge remote-tracking branch 'upstream/master' 2019-09-11 09:05:28 -04:00
Sam X. Chen e0046032e8 Fixing @user in comments doesn't work if it's in a separate line 2019-09-11 09:05:16 -04:00
Lauri Ojansivu f094efa929 Update ChangeLog. 2019-09-11 16:04:26 +03:00
Lauri Ojansivu 6ce8eeee6c Revert Wekan v3.37 Fix Linked cards make load all cards of database.
Thanks to xet7!

Related #2688,
related #2693
2019-09-11 16:00:57 +03:00
Lauri Ojansivu be70c02922 v3.38 2019-09-11 04:47:56 +03:00
Lauri Ojansivu a61afda39e Update translations. 2019-09-11 04:30:38 +03:00
Lauri Ojansivu 126ab58e03 Create FUNDING.yml 2019-09-11 03:05:45 +03:00
Lauri Ojansivu ca95bba358 v3.37 2019-09-07 22:42:03 +03:00
Lauri Ojansivu 6407893aa6 Update translations. 2019-09-07 22:39:23 +03:00
Lauri Ojansivu 45ed9b426f [Fix Unable to drag select text without closing card details](https://github.com/wekan/wekan/pull/2690).
Thanks to justinr1234 !

Closes #2451
2019-09-07 22:35:15 +03:00
Lauri Ojansivu 11d6b77bb1 Merge pull request #2690 from justinr1234/fix-drag-select-on-card-details
Fix #2451 unable to drag select text without closing card details
2019-09-07 22:33:20 +03:00
Lauri Ojansivu f248dada3f Update ChangeLog. 2019-09-07 17:58:55 +03:00
Lauri Ojansivu a56988c487 Fix: Linked cards make load all cards of database.
Thanks to Akuket !

Closes #2688
2019-09-07 17:56:38 +03:00
Justin Reynolds 74b5bdf2aa Fix #2451 unable to drag select text without closing card details 2019-09-06 17:18:06 -05:00
Lauri Ojansivu 753d5b953d Fix prettier. 2019-09-06 21:27:06 +03:00
Lauri Ojansivu ea26f70669 Merge pull request #2683 from insertjokehere/fix_error_on_successful_webhook
Treat any 2xx webhook response status code as success
2019-09-06 19:22:36 +03:00
William Hughes 682c23e011 Treat any 2xx webhook response status code as success 2019-09-06 11:29:00 +12:00
Lauri Ojansivu d4a307f66d Update translations. 2019-09-06 01:28:43 +03:00
Lauri Ojansivu 7c9bf3ce0f Update ChangeLog. 2019-09-06 01:27:09 +03:00
Lauri Ojansivu 6cbd4cabc7 LDAP: Fix USERDN example, when parameters contain spaces:
LDAP_AUTHENTIFICATION_USERDN="CN=ldap admin,CN=users,DC=domainmatter,DC=lan"

Thanks to compumatter !
2019-09-06 01:22:15 +03:00
Lauri Ojansivu 10b953041f v3.36 2019-09-05 23:17:03 +03:00
Lauri Ojansivu 36fb31c138 Try to fix snap. 2019-09-05 23:05:50 +03:00
Lauri Ojansivu 3f2490e64d Update translations. 2019-09-05 22:58:53 +03:00
Lauri Ojansivu 37065c1d50 Update ChangeLog. 2019-09-05 22:54:37 +03:00
Lauri Ojansivu 9764e03a37 Merge branch 'justinr1234-fix-date-stamps' 2019-09-05 22:48:36 +03:00
Lauri Ojansivu 0f5226f814 Merge branch 'fix-date-stamps' of https://github.com/justinr1234/wekan into justinr1234-fix-date-stamps 2019-09-05 21:01:51 +03:00
Justin Reynolds 3b9f2ca7c2 Fixes #2596 incorrect date types for created & updated 2019-09-05 12:29:45 -05:00
Lauri Ojansivu 7953e5a52a Try to fix Snap. 2019-09-04 23:53:14 +03:00
Lauri Ojansivu 9617c78798 Update translations. 2019-09-04 22:48:17 +03:00
Lauri Ojansivu 28f21487b0 Add package-lock.json back. 2019-09-04 22:35:32 +03:00
Lauri Ojansivu 4567f08a0b Try to fix prettier. 2019-09-04 22:26:00 +03:00
Lauri Ojansivu b0281e1941 Try to fix rebuild script. 2019-09-04 22:25:30 +03:00
Lauri Ojansivu efed77b474 Update translations. 2019-09-04 22:14:44 +03:00
Lauri Ojansivu a70b97676a Remove package-lock.json 2019-09-04 22:09:22 +03:00
Lauri Ojansivu 7b54983ec2 Try to fix snap. 2019-09-04 22:05:51 +03:00
Lauri Ojansivu bc2fcef7c4 Update ChangeLog. 2019-09-04 21:54:27 +03:00
Lauri Ojansivu 750349053c Update translations. 2019-09-04 21:46:01 +03:00
Lauri Ojansivu bfbe32e1ec Merge pull request #2665 from whowillcare/master
Add Feature: complete the original author's webhook functions and add two-way webhook type
2019-09-04 21:11:41 +03:00
Lauri Ojansivu ccfaf879dd Merge pull request #2667 from Akuket/master
Patch admin search feature
2019-09-04 21:10:25 +03:00
Lauri Ojansivu ebd32af5c1 Merge pull request #2672 from Scherdel/master
Devcontainer: Removed MAIL-Vars, Add PATH with meteor to Envionment
2019-09-04 21:09:57 +03:00
Lauri Ojansivu 43ea7d761e Try to fix snap. 2019-09-04 21:07:17 +03:00
Christoph Jahn a715e30cba DevContainer: use docker extend file, fix PATH 2019-09-03 21:20:24 +02:00
Christoph Jahn 8633bd8974 Merge branch 'master' of https://github.com/scherdel/wekan 2019-09-02 20:28:48 +02:00
Christoph Jahn 9474bee7fa DevContainer: Updated node and mongodb 2019-09-02 20:28:39 +02:00
Christoph Jahn 92b86ada39 Merge branch 'master' of https://github.com/scherdel/wekan 2019-09-02 17:00:17 +00:00
Christoph Jahn 03bea6e406 Removed MAIL-Vars for DEV, Add PATH to ENV 2019-09-02 18:57:17 +02:00
guillaume 6183402754 Merge branch 'master' of https://github.com/wekan/wekan 2019-08-30 17:18:29 +02:00
guillaume 663ba26d4d Patch admin search feature 2019-08-30 17:17:25 +02:00
Sam X. Chen 510407467c Add Feature: enable two-way webhooks - add comments need userid 2019-08-30 10:36:17 -04:00
Sam X. Chen b477fc1b1c Add Feature: enable two-way webhooks - fixing lint error 2019-08-29 23:49:32 -04:00
Sam X. Chen 58155288fb Merge remote-tracking branch 'upstream/master' 2019-08-29 22:08:41 -04:00
Sam X. Chen dd0682328b Add Feature: enable two-way webhooks - stage two 2019-08-29 22:07:40 -04:00
Lauri Ojansivu d1ab787215 v3.35 2019-08-29 21:12:24 +03:00
Lauri Ojansivu 71d32c6bc8 Try to fix snap. 2019-08-29 21:08:14 +03:00
Sam X. Chen 3f0600fed7 Add Feature: enable two-way webhooks - stage one 2019-08-17 19:17:57 -04:00
117 changed files with 35937 additions and 34293 deletions

No files matched your search

+4 -2
View File
@@ -6,7 +6,7 @@ ENV DEBIAN_FRONTEND=noninteractive
ENV \
DEBUG=false \
NODE_VERSION=8.16.0 \
NODE_VERSION=8.16.1 \
METEOR_RELEASE=1.8.1 \
USE_EDGE=false \
METEOR_EDGE=1.5-beta.17 \
@@ -144,11 +144,13 @@ RUN set -o xtrace \
&& printf "\n[-] Installing Meteor $METEOR_VERSION...\n\n" \
&& sh /home/wekan/install-meteor.sh
ENV PATH=$PATH:$HOME/.meteor/
ENV PATH=$PATH:/home/wekan/.meteor/
# Copy source dir
USER root
RUN echo "export PATH=$PATH" >> /etc/environment
RUN set -o xtrace \
&& mkdir /home/wekan/app
+1 -1
View File
@@ -1,6 +1,6 @@
// See https://aka.ms/vscode-remote/devcontainer.json for format details.
{
"dockerComposeFile": "docker-compose.yml",
"dockerComposeFile": ["docker-compose.yml", "docker-compose.extend.yml"],
"service": "wekan-dev",
"workspaceFolder": "/home/wekan/app",
"extensions": [
+1 -4
View File
@@ -3,7 +3,7 @@ version: '3.7'
services:
wekandb-dev:
image: mongo:4.0.11
image: mongo:4.0.12
container_name: wekan-dev-db
restart: unless-stopped
command: mongod --smallfiles --oplogSize 128
@@ -29,9 +29,6 @@ services:
environment:
- MONGO_URL=mongodb://wekandb-dev:27017/wekan
- ROOT_URL=http://localhost:3000
#- MAIL_URL=smtp://user:pass@mailserver.example.com:25/
- MAIL_URL=smtp://<mail_url>:25/?ignoreTLS=true&tls={rejectUnauthorized:false}
- MAIL_FROM=Wekan Notifications <noreply.wekan@mydomain.com>
- WITH_API=true
- RICHER_CARD_COMMENT_EDITOR=true
- BROWSER_POLICY_ENABLED=true
+3
View File
@@ -0,0 +1,3 @@
# These are supported funding model platforms
custom: ['https://wekan.team/commercial-support/']
+4 -4
View File
@@ -7,8 +7,9 @@ Other Wekan issues can be added here.
**Server Setup Information**:
* Note: Please anonymize info, and do not add to this public issue any of your Wekan board URLs, passwords, API tokens etc, do you understand?:
* Did you test in newest Wekan?:
* For new Wekan install, did you configure root-url correctly https://github.com/wekan/wekan/wiki/Settings ?
* For new Wekan install, did you configure root-url correctly so Wekan cards open correctly https://github.com/wekan/wekan/wiki/Settings ?
* Wekan version:
* If this is about old version of Wekan, what upgrade problem you have?:
* Operating System:
@@ -16,13 +17,12 @@ Other Wekan issues can be added here.
* Http frontend if any (Caddy, Nginx, Apache, see config examples from Wekan GitHub wiki first):
* Node Version:
* MongoDB Version:
* ROOT_URL environment variable http(s)://(subdomain).example.com(/suburl):
* Wekan only works on newest desktop Firefox/Chromium/Chrome/Edge/Chromium Edge and mobile Chrome. What webbrowser version are you using?
**Problem description**:
- *REQUIRED: Add recorded animated gif about how it works currently, and screenshot mockups how it should work. Use peek to record animgif in Linux https://github.com/phw/peek*
- *Explain steps how to reproduce*
- *In webbrowser, what does show Right Click / Inspect / Console ? Chrome shows more detailed info than Firefox.*
- *If using Snap, what does show command `sudo snap logs wekan.wekan` ?*
- *If using Docker, what does show command `sudo docker logs wekan-app` ?*
- *If using Snap, what does show command `sudo snap logs wekan.wekan` ? Please anonymize logs.*
- *If using Docker, what does show command `sudo docker logs wekan-app` ? Please anonymize logs.*
- *If logs are very long, attach them in .zip file*
+1
View File
@@ -31,3 +31,4 @@ ehthumbs.db
.eslintcache
.meteor/local
.meteor-1.6-snap/.meteor/local
.devcontainer/docker-compose.extend.yml
+1 -1
View File
@@ -39,7 +39,7 @@ host = https://www.transifex.com
# tap:i18n requires us to use `-` separator in the language identifiers whereas
# Transifex uses a `_` separator, without an option to customize it on one side
# or the other, so we need to do a Manual mapping.
lang_map = bg_BG:bg, en_GB:en-GB, es_AR:es-AR, el_GR:el, fi_FI:fi, hu_HU:hu, id_ID:id, mn_MN:mn, no:nb, lv_LV:lv, pt_BR:pt-BR, ro_RO:ro, zh_CN:zh-CN, zh_TW:zh-TW, zh_HK:zh-HK
lang_map = bg_BG:bg, en_GB:en-GB, es_AR:es-AR, el_GR:el, fi_FI:fi, hu_HU:hu, id_ID:id, mn_MN:mn, no:nb, lv_LV:lv, pt_BR:pt-BR, ro_RO:ro, sl_SI:sl, zh_CN:zh-CN, zh_TW:zh-TW, zh_HK:zh-HK
[wekan.application]
file_filter = i18n/<lang>.i18n.json
+155
View File
@@ -1,3 +1,158 @@
# v3.47 2019-10-09 Wekan release
This release fixes the following bugs:
- [REST API: fix handling of members property on card creation](https://github.com/wekan/wekan/pull/2751).
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.46 2019-10-07 Wekan release
This release fixes the following bugs:
- [More black minicard badges](https://github.com/wekan/wekan/commit/68be12d166b21a41b4e2c4021b0966807e5ed1e6).
Thanks to sfahrenholz and xet7.
- [REST API: fix creation of Checklists](https://github.com/wekan/wekan/pull/2747).
Thanks to liske.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.45 2019-10-03 Wekan release
This release adds the following new features:
- [Cards due timeline will be shown in Calendar view](https://github.com/wekan/wekan/pull/2738).
Thanks to whowillcare.
- [Modified due day reminders in cards.js, so wekan server admin can control the reminder more flexibly](https://github.com/wekan/wekan/pull/2738).
i.e. NOTIFY_DUE_DAYS_BEFORE_AND_AFTER = 0 notification will be sent on due day only.
NOTIFY_DUE_DAYS_BEFORE_AND_AFTER = 2,0 it means notification will be sent on both due day and two days before.
Thanks to whowillcare.
- [Added modifications the help files, related to NOTIFY_DUE_DAYS_BEFORE_AND_AFTER](https://github.com/wekan/wekan/pull/2740).
Thanks to whowillcare.
and fixes the following bugs:
- [Modified list.style regarding .list-header-name when in mobile mode. It was too close to left arrow](https://github.com/wekan/wekan/pull/2740).
Thanks to whowillcare.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.44 2019-09-17 Wekan release
This release adds the following languages:
- [Add language: Slovenian](https://github.com/wekan/wekan/commit/125231beff0fb84a18a46fe246fa12e098246985).
Thanks to translators.
and fixes the following bugs:
- [Fix: in richer editor @ autocomplete doesn't really insert the username properly](https://github.com/wekan/wekan/pull/2717).
Thanks to whowillcare.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.43 2019-09-17 Wekan release
This release fixes the following bugs:
- [In richer editor, @user might not get pickup correctly, if it's formated](https://github.com/wekan/wekan/pull/2715).
Thanks to whowillcare.
- [Table content should have word-wrap](https://github.com/wekan/wekan/pull/2715).
Thanks to whowillcare.
- [Two-way hooks locking mechanism will fail sometime, therefore, change all comment insert or update to direct, which means it won't invoke any hook](https://github.com/wekan/wekan/pull/2715).
Thanks to whowillcare.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.42 2019-09-14 Wekan release
This release removed the following new features:
- [Revert drag handle changes of Wekan v3.41](https://github.com/wekan/wekan/commit/57119868bbb49f47c7d0b51b9952df9bd83d46f5).
Thanks to Keelan.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.41 2019-09-13 Wekan release
This release adds the following new features:
- [More Mobile and Desktop drag handles for Swimlanes/Lists/Cards. Part 1](https://github.com/wekan/wekan/commit/ff550e91103115e7b731dd80c4588b93b2d4c64f).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.40 2019-09-11 Wekan release
This release fixes the following bugs:
- [Fix subcard selector](https://github.com/wekan/wekan/pull/2697).
Thanks to justinr1234.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.39 2019-09-11 Wekan release
This release fixes the following bugs:
- [To load all boards, revert Wekan v3.37 Fix Linked cards make load all cards of database](https://github.com/wekan/wekan/commit/6ce8eeee6c477cd39b684c47bf122b5872818ada).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.38 2019-09-11 Wekan release
- Update translations. Thanks to translators.
# v3.37 2019-09-07 Wekan release
This release fixes the following bugs:
- LDAP: [Fix USERDN example, when parameters contain spaces](https://github.com/wekan/wekan/commit/6cbd4cabc716c755e547abb798f657fe5476ed04).
LDAP_AUTHENTIFICATION_USERDN="CN=ldap admin,CN=users,DC=domainmatter,DC=lan" .
Thanks to compumatter.
- [Fix: Linked cards make load all cards of database](https://github.com/wekan/wekan/commit/a56988c487745b2879cebe1943e7a987016e8bef).
Thanks to Akuket.
- [Fix Unable to drag select text without closing card details](https://github.com/wekan/wekan/pull/2690).
Thanks to justinr1234.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.36 2019-09-05 Wekan release
This release adds the following new features:
- [Complete the original author's webhook functions and add two-way webhook type](https://github.com/wekan/wekan/pull/2665):
1. Make webhook function more complete by allowing user to specify name and token of
a webhook to increase security.
1. Allow wekan admin to sepcify a global webhook.
3. Add new type of two-way webhook that can act on the JSON webhook return payload:
3.1. If the payload data contains cardId, boardId, and comment key words,
3.2. If it has commentId, an existing comment will be modified
3.3. If it doesn't have commentId, then a new comment will be added, otherwise, does nothing.
Thanks to whowillcare.
- [Patch admin search feature to Search in all users, not just "loaded" users
in the client](https://github.com/wekan/wekan/pull/2667).
Thanks to Akuket.
- [Devcontainer: Moved MAIL-Vars to not-committed file, and added PATH with meteor to
Environment](https://github.com/wekan/wekan/pull/2672).
Thanks to road42.
and fixes the following bugs:
- [Fix incorrect date types for created and updated, so now newest card comments are at top](https://github.com/wekan/wekan/pull/2679).
Thanks to justinr1234.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.35 2019-08-29 Wekan release
This release fixes the following bugs:
- [Try to fix Snap](https://github.com/wekan/wekan/commit/71d32c6bc8e6affd345026797ff31e94a0a10d77).
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.34 2019-08-29 Wekan release
This release fixes the following bugs:
+8 -28
View File
@@ -54,13 +54,12 @@ that by providing one-click installation on various platforms.
- [Features][features]: Wekan has real-time user interface.
- [Platforms][platforms]: Wekan supports many platforms.
Wekan is critical part of new platforms Wekan is currently being integrated to.
- [Integrations][integrations]: Current possible integrations and future plans.
## Requirements
- 64bit: Linux [Snap](https://github.com/wekan/wekan-snap/wiki/Install) or [Sandstorm](https://sandstorm.io) /
[Mac](https://github.com/wekan/wekan/wiki/Mac) / [Windows](https://github.com/wekan/wekan/wiki/Install-Wekan-from-source-on-Windows).
[More Platforms](https://github.com/wekan/wekan/wiki/Platforms). [ARM progress](https://github.com/wekan/wekan/issues/1053#issuecomment-410919264).
[More Platforms](https://github.com/wekan/wekan/wiki/Platforms), bundle for RasPi3 ARM and other CPUs where Node.js and MongoDB exists.
- 1 GB RAM minimum free for Wekan. Production server should have minimum total 4 GB RAM.
For thousands of users, for example with [Docker](https://github.com/wekan/wekan/blob/devel/docker-compose.yml): 3 frontend servers,
each having 2 CPU and 2 wekan-app containers. One backend wekan-db server with many CPUs.
@@ -74,41 +73,25 @@ that by providing one-click installation on various platforms.
Bugs, updates, users deleting list or card, harddrive full, harddrive crash etc can eat your data. There is no undo yet.
Some bug can cause Wekan board to not load at all, requiring manual fixing of database content.
## Roadmap
## Roadmap and Demo
[Roadmap Milestones](https://github.com/wekan/wekan/milestones)
[Roadmap][roadmap_wekan] - Public read-only board at Wekan demo.
[Developer Documentation][dev_docs]
- There is many companies and individuals contributing code to Wekan, to add features and bugfixes
[many times a day](https://github.com/wekan/wekan/blob/devel/CHANGELOG.md).
- [Please add Add new Feature Requests and Bug Reports immediately](https://github.com/wekan/wekan/issues).
- [Commercial Support](https://wekan.team).
- [Bounties](https://wekan.team/bounties/index.html).
- [Commercial Support](https://wekan.team/commercial-support/).
We also welcome sponsors for features and bugfixes.
By working directly with Wekan you get the benefit of active maintenance and new features added by growing Wekan developer community.
## Demo
[Wekan demo][roadmap_wefork]
## Screenshot
[More screenshots at Features page](https://github.com/wekan/wekan/wiki/Features)
[![Screenshot of Wekan][screenshot_wefork]][roadmap_wefork]
## Stable
- master+devel branch. At release, devel is merged to master.
- Receives fixes and features that have been tested at edge that they work.
- If you want automatic updates, [use Snap](https://github.com/wekan/wekan-snap/wiki/Install).
- If you want to test before update, [use Docker quay.io release tags](https://github.com/wekan/wekan/wiki/Docker).
## Edge
- edge branch. All new fixes and features are added to here first. [Testing Edge](https://github.com/wekan/wekan-snap/wiki/Snap-Developer-Docs).
[![Screenshot of Wekan][screenshot_wekan]][roadmap_wekan]
## License
@@ -117,14 +100,11 @@ with [Meteor](https://www.meteor.com).
[platforms]: https://github.com/wekan/wekan/wiki/Platforms
[dev_docs]: https://github.com/wekan/wekan/wiki/Developer-Documentation
[screenshot_wekan]: http://i.imgur.com/cI4jW2h.png
[screenshot_wefork]: https://wekan.github.io/wekan-markdown.png
[screenshot_wekan]: https://wekan.github.io/wekan-markdown.png
[features]: https://github.com/wekan/wekan/wiki/Features
[integrations]: https://github.com/wekan/wekan/wiki/Integrations
[roadmap_wekan]: http://try.wekan.io/b/MeSsFJaSqeuo9M6bs/wekan-roadmap
[roadmap_wefork]: https://wekan.indie.host/b/t2YaGmyXgNkppcFBq/wekan-fork-roadmap
[roadmap_wekan]: https://boards.wekan.team/b/D2SzJKZDS4Z48yeQH/wekan-open-source-kanban-board-with-mit-license
[wekan_issues]: https://github.com/wekan/wekan/issues
[wekan_issues]: https://github.com/wekan/wekan/issues
[wefork_issues]: https://github.com/wefork/wekan/issues
[docker_image]: https://hub.docker.com/r/wekanteam/wekan/
[travis_badge]: https://travis-ci.org/wekan/wekan.svg?branch=devel
[travis_status]: https://travis-ci.org/wekan/wekan
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v3.34.0"
appVersion: "v3.47.0"
files:
userUploads:
- README.md
+36 -16
View File
@@ -309,26 +309,46 @@ BlazeComponent.extendComponent({
events(start, end, timezone, callback) {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
const events = [];
const pushEvent = function(card, title, start, end, extraCls) {
start = start || card.startAt;
end = end || card.endAt;
title = title || card.title;
const className =
(extraCls ? `${extraCls} ` : '') +
(card.color ? `calendar-event-${card.color}` : '');
events.push({
id: card._id,
title,
start,
end: end || card.endAt,
allDay:
Math.abs(end.getTime() - start.getTime()) / 1000 === 24 * 3600,
url: FlowRouter.url('card', {
boardId: currentBoard._id,
slug: currentBoard.slug,
cardId: card._id,
}),
className,
});
};
currentBoard
.cardsInInterval(start.toDate(), end.toDate())
.forEach(function(card) {
events.push({
id: card._id,
title: card.title,
start: card.startAt,
end: card.endAt,
allDay:
Math.abs(card.endAt.getTime() - card.startAt.getTime()) /
1000 ===
24 * 3600,
url: FlowRouter.url('card', {
boardId: currentBoard._id,
slug: currentBoard.slug,
cardId: card._id,
}),
className: card.color ? `calendar-event-${card.color}` : null,
});
pushEvent(card);
});
currentBoard
.cardsDueInBetween(start.toDate(), end.toDate())
.forEach(function(card) {
pushEvent(
card,
`${card.title} ${TAPi18n.__('card-due')}`,
card.dueAt,
new Date(card.dueAt.getTime() + 36e5),
);
});
events.sort(function(first, second) {
return first.id > second.id ? 1 : -1;
});
callback(events);
},
eventResize(event, delta, revertFunc) {
+21 -1
View File
@@ -321,6 +321,19 @@ BlazeComponent.extendComponent({
parentComponent.showOverlay.set(true);
parentComponent.mouseHasEnterCardDetails = true;
},
'mousedown .js-card-details'() {
Session.set('cardDetailsIsDragging', false);
Session.set('cardDetailsIsMouseDown', true);
},
'mousemove .js-card-details'() {
if (Session.get('cardDetailsIsMouseDown')) {
Session.set('cardDetailsIsDragging', true);
}
},
'mouseup .js-card-details'() {
Session.set('cardDetailsIsDragging', false);
Session.set('cardDetailsIsMouseDown', false);
},
'click #toggleButton'() {
Meteor.call('toggleSystemMessages');
},
@@ -777,7 +790,14 @@ BlazeComponent.extendComponent({
EscapeActions.register(
'detailsPane',
() => {
Utils.goBoardId(Session.get('currentBoard'));
if (Session.get('cardDetailsIsDragging')) {
// Reset dragging status as the mouse landed outside the cardDetails template area and this will prevent a mousedown event from firing
Session.set('cardDetailsIsDragging', false);
Session.set('cardDetailsIsMouseDown', false);
} else {
// Prevent close card when the user is selecting text and moves the mouse cursor outside the card detail area
Utils.goBoardId(Session.get('currentBoard'));
}
},
() => {
return !Session.equals('currentCard', null);
+3 -2
View File
@@ -105,7 +105,8 @@
right: 5px;
top: 5px;
display:none;
@media only screen and (max-width: 1199px) {
// @media only screen and (max-width: 1199px) {
@media only screen and (max-width: 800px) {
display:block;
}
.fa-arrows
@@ -127,7 +128,7 @@
.badges
float: left
margin-top: 7px
color: darken(white, 50%)
color: darken(white, 80%)
&:empty
display: none
+1 -1
View File
@@ -31,7 +31,7 @@ BlazeComponent.extendComponent({
const itemsSelector = '.js-minicard:not(.placeholder, .js-card-composer)';
const $cards = this.$('.js-minicards');
if (window.matchMedia('(max-width: 1199px)').matches) {
if (Utils.isMiniScreen()) {
$('.js-minicards').sortable({
handle: '.handle',
});
+39 -11
View File
@@ -94,7 +94,13 @@ Template.editor.onRendered(() => {
currentBoard
.activeMembers()
.map(member => {
const username = Users.findOne(member.userId).username;
const user = Users.findOne(member.userId);
if (user._id === Meteor.userId()) {
return null;
}
const value = user.username;
const username =
value && value.match(/\s+/) ? `"${value}"` : value;
return username.includes(term) ? username : null;
})
.filter(Boolean),
@@ -120,9 +126,10 @@ Template.editor.onRendered(() => {
? [
['view', ['fullscreen']],
['table', ['table']],
['font', ['bold', 'underline']],
//['fontsize', ['fontsize']],
['font', ['bold']],
['color', ['color']],
['insert', ['video']], // iframe tag will be sanitized TODO if iframe[class=note-video-clip] can be added into safe list, insert video can be enabled
//['fontsize', ['fontsize']],
]
: [
['style', ['style']],
@@ -156,25 +163,45 @@ Template.editor.onRendered(() => {
}
return undefined;
};
let popupShown = false;
inputs.each(function(idx, input) {
mSummernotes[idx] = $(input).summernote({
placeholder,
callbacks: {
onKeydown(e) {
if (popupShown) {
e.preventDefault();
}
},
onKeyup(e) {
if (popupShown) {
e.preventDefault();
}
},
onInit(object) {
const originalInput = this;
const setAutocomplete = function(jEditor) {
if (jEditor !== undefined) {
jEditor.escapeableTextComplete(mentions).on({
'textComplete:show'() {
popupShown = true;
},
'textComplete:hide'() {
popupShown = false;
},
});
}
};
$(originalInput).on('submitted', function() {
// resetCommentInput has been called
if (!this.value) {
const sn = getSummernote(this);
sn && sn.summernote('reset');
object && object.editingArea.find('.note-placeholder').show();
sn && sn.summernote('code', '');
}
});
const jEditor = object && object.editable;
const toolbar = object && object.toolbar;
if (jEditor !== undefined) {
jEditor.escapeableTextComplete(mentions);
}
setAutocomplete(jEditor);
if (toolbar !== undefined) {
const fBtn = toolbar.find('.btn-fullscreen');
fBtn.on('click', function() {
@@ -264,7 +291,7 @@ Template.editor.onRendered(() => {
const someNote = getSummernote(object);
const original = someNote.summernote('code');
const cleaned = cleanPastedHTML(original); //this is where to call whatever clean function you want. I have mine in a different file, called CleanPastedHTML.
someNote.summernote('reset'); //clear original
someNote.summernote('code', ''); //clear original
someNote.summernote('pasteHTML', cleaned); //this sets the displayed content editor to the cleaned pasted code.
};
setTimeout(function() {
@@ -325,11 +352,12 @@ Blaze.Template.registerHelper(
}
return member;
});
const mentionRegex = /\B@([\w.]*)/gi;
const mentionRegex = /\B@(?:(?:"([\w.\s]*)")|([\w.]+))/gi; // including space in username
let currentMention;
while ((currentMention = mentionRegex.exec(content)) !== null) {
const [fullMention, username] = currentMention;
const [fullMention, quoteduser, simple] = currentMention;
const username = quoteduser || simple;
const knowedUser = _.findWhere(knowedUsers, { username });
if (!knowedUser) {
continue;
+4
View File
@@ -381,6 +381,10 @@ a
display: block
word-wrap: break-word
table
word-wrap: normal
word-break: normal
ol
list-style-type: decimal
padding-left: 20px
+2 -2
View File
@@ -17,7 +17,7 @@ BlazeComponent.extendComponent({
this.autorun(() => {
const limit = this.page.get() * usersPerPage;
this.subscribe('people', limit, () => {
this.subscribe('people', this.findUsersOptions.get(), limit, () => {
this.loadNextPageLocked = false;
const nextPeakBefore = this.callFirstWith(null, 'getNextPeak');
this.calculateNextPeak();
@@ -85,7 +85,7 @@ BlazeComponent.extendComponent({
const users = Users.find(this.findUsersOptions.get(), {
fields: { _id: true },
});
this.number.set(users.count());
this.number.set(users.count(false));
return users;
},
peopleNumber() {
@@ -18,6 +18,8 @@ template(name="setting")
a.js-setting-menu(data-id="announcement-setting") {{_ 'admin-announcement'}}
li
a.js-setting-menu(data-id="layout-setting") {{_ 'layout'}}
li
a.js-setting-menu(data-id="webhook-setting") {{_ 'global-webhook'}}
.main-body
if loading.get
+spinner
@@ -31,6 +33,12 @@ template(name="setting")
+announcementSettings
else if layoutSetting.get
+layoutSettings
else if webhookSetting.get
+webhookSettings
template(name="webhookSettings")
span
+outgoingWebhooksPopup
template(name="general")
ul#registration-setting.setting-detail
@@ -7,11 +7,13 @@ BlazeComponent.extendComponent({
this.accountSetting = new ReactiveVar(false);
this.announcementSetting = new ReactiveVar(false);
this.layoutSetting = new ReactiveVar(false);
this.webhookSetting = new ReactiveVar(false);
Meteor.subscribe('setting');
Meteor.subscribe('mailServer');
Meteor.subscribe('accountSettings');
Meteor.subscribe('announcements');
Meteor.subscribe('globalwebhooks');
},
setError(error) {
@@ -83,6 +85,7 @@ BlazeComponent.extendComponent({
this.accountSetting.set('account-setting' === targetID);
this.announcementSetting.set('announcement-setting' === targetID);
this.layoutSetting.set('layout-setting' === targetID);
this.webhookSetting.set('webhook-setting' === targetID);
}
},
+22 -14
View File
@@ -135,22 +135,30 @@ template(name="archiveBoardPopup")
template(name="outgoingWebhooksPopup")
each integrations
form.integration-form
if title
h4 {{title}}
else
h4 {{_ 'no-name'}}
label
| URL
input.js-outgoing-webhooks-url(type="text" name="url" value=url)
input(type="hidden" value=_id name="id")
a.flex
span {{_ 'disable-webhook'}}
b &nbsp;
.materialCheckBox(class="{{#unless enabled}}is-checked{{/unless}}")
input.js-outgoing-webhooks-title(placeholder="{{_ 'webhook-title'}}" type="text" name="title" value=title)
input.js-outgoing-webhooks-url(type="text" name="url" value=url autofocus)
input.js-outgoing-webhooks-token(placeholder="{{_ 'webhook-token' }}" type="text" value=token name="token")
select.js-outgoing-webhooks-type(name="type")
each _type in types
if($eq _type this.type)
option(value=_type selected="selected") {{_ _type}}
else
option(value=_type) {{_ _type}}
input(type="hidden" value=this.type name="_type")
input(type="hidden" value=_id name="id")
input.primary.wide(type="submit" value="{{_ 'save'}}")
form.integration-form
h4
| {{_ 'new-outgoing-webhook'}}
label
| URL
input.js-outgoing-webhooks-url(type="text" name="url" autofocus)
input.primary.wide(type="submit" value="{{_ 'save'}}")
input.js-outgoing-webhooks-title(placeholder="{{_ 'webhook-title'}}" type="text" name="title" autofocus)
input.js-outgoing-webhooks-url(placeholder="{{_ 'URL' }}" type="text" name="url")
input.js-outgoing-webhooks-token(placeholder="{{_ 'webhook-token' }}" type="text" name="token")
select.js-outgoing-webhooks-type(name="type")
each _type in types
option(value=_type) {{_ _type}}
input.primary.wide(type="submit" value="{{_ 'create'}}")
template(name="boardMenuPopup")
ul.pop-over-list
+56 -30
View File
@@ -1,6 +1,8 @@
Sidebar = null;
const defaultView = 'home';
const MCB = '.materialCheckBox';
const CKCLS = 'is-checked';
const viewTitles = {
filter: 'filter-cards',
@@ -280,44 +282,71 @@ Template.membersWidget.events({
});
BlazeComponent.extendComponent({
boardId() {
return Session.get('currentBoard') || Integrations.Const.GLOBAL_WEBHOOK_ID;
},
integrations() {
const boardId = Session.get('currentBoard');
const boardId = this.boardId();
return Integrations.find({ boardId: `${boardId}` }).fetch();
},
integration(id) {
const boardId = Session.get('currentBoard');
return Integrations.findOne({ _id: id, boardId: `${boardId}` });
types() {
return Integrations.Const.WEBHOOK_TYPES;
},
integration(cond) {
const boardId = this.boardId();
const condition = { boardId, ...cond };
for (const k in condition) {
if (!condition[k]) delete condition[k];
}
return Integrations.findOne(condition);
},
onCreated() {
this.disabled = new ReactiveVar(false);
},
events() {
return [
{
'click a.flex'(evt) {
this.disabled.set(!this.disabled.get());
$(evt.target).toggleClass(CKCLS, this.disabled.get());
},
submit(evt) {
evt.preventDefault();
const url = evt.target.url.value;
const boardId = Session.get('currentBoard');
const boardId = this.boardId();
let id = null;
let integration = null;
const title = evt.target.title.value;
const token = evt.target.token.value;
const type = evt.target.type.value;
const enabled = !this.disabled.get();
let remove = false;
const values = {
url,
type,
token,
title,
enabled,
};
if (evt.target.id) {
id = evt.target.id.value;
integration = this.integration(id);
if (url) {
Integrations.update(integration._id, {
$set: {
url: `${url}`,
},
});
} else {
Integrations.remove(integration._id);
}
integration = this.integration({ _id: id });
remove = !url;
} else if (url) {
integration = this.integration({ url, token });
}
if (remove) {
Integrations.remove(integration._id);
} else if (integration && integration._id) {
Integrations.update(integration._id, {
$set: values,
});
} else if (url) {
Integrations.insert({
...values,
userId: Meteor.userId(),
enabled: true,
type: 'outgoing-webhooks',
url: `${url}`,
boardId: `${boardId}`,
boardId,
activities: ['all'],
});
}
@@ -474,12 +503,12 @@ BlazeComponent.extendComponent({
evt.preventDefault();
this.currentBoard.allowsSubtasks = !this.currentBoard.allowsSubtasks;
this.currentBoard.setAllowsSubtasks(this.currentBoard.allowsSubtasks);
$('.js-field-has-subtasks .materialCheckBox').toggleClass(
'is-checked',
$(`.js-field-has-subtasks ${MCB}`).toggleClass(
CKCLS,
this.currentBoard.allowsSubtasks,
);
$('.js-field-has-subtasks').toggleClass(
'is-checked',
CKCLS,
this.currentBoard.allowsSubtasks,
);
$('.js-field-deposit-board').prop(
@@ -515,15 +544,12 @@ BlazeComponent.extendComponent({
];
options.forEach(function(element) {
if (element !== value) {
$(`#${element} .materialCheckBox`).toggleClass(
'is-checked',
false,
);
$(`#${element}`).toggleClass('is-checked', false);
$(`#${element} ${MCB}`).toggleClass(CKCLS, false);
$(`#${element}`).toggleClass(CKCLS, false);
}
});
$(`#${value} .materialCheckBox`).toggleClass('is-checked', true);
$(`#${value}`).toggleClass('is-checked', true);
$(`#${value} ${MCB}`).toggleClass(CKCLS, true);
$(`#${value}`).toggleClass(CKCLS, true);
this.currentBoard.setPresentParentTask(value);
evt.preventDefault();
},
+9 -1
View File
@@ -21,7 +21,15 @@ DatePicker = BlazeComponent.extendComponent({
function(evt) {
this.find('#date').value = moment(evt.date).format('L');
this.error.set('');
this.find('#time').focus();
const timeInput = this.find('#time');
timeInput.focus();
if (!timeInput.value) {
const currentHour = evt.date.getHours();
const defaultMoment = moment(
currentHour > 0 ? evt.date : '1970-01-01 08:00:00',
); // default to 8:00 am local time
timeInput.value = defaultMoment.format('LT');
}
}.bind(this),
);
+1
View File
@@ -45,6 +45,7 @@ $.fn.escapeableTextComplete = function(strategies, options, ...otherArgs) {
});
},
});
return this;
};
EscapeActions.register('textcomplete', () => {}, () => dropdownMenuIsOpened, {
-1
View File
@@ -23,7 +23,6 @@ Utils = {
})
);
},
MAX_IMAGE_PIXEL: Meteor.settings.public.MAX_IMAGE_PIXEL,
COMPRESS_RATIO: Meteor.settings.public.IMAGE_COMPRESS_RATIO,
processUploadedAttachment(card, fileObj, callback) {
+6 -4
View File
@@ -271,8 +271,8 @@ services:
# dueat startat endat receivedat, also notification to
# the watchers and if any card is due, about due or past due.
#
# Notify due days, default 2 days before and after. 0 = due notifications disabled. Default: 2
#- NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2
# Notify due days, default is None, 2 days before and on the event day
#- NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2,0
#
# Notify due at hour of day. Default every morning at 8am. Can be 0-23.
# If env variable has parsing error, use default. Notification sent to watchers.
@@ -426,8 +426,10 @@ services:
# If the LDAP needs a user account to search
#- LDAP_AUTHENTIFICATION=true
#
# The search user DN
#- LDAP_AUTHENTIFICATION_USERDN=cn=wekan_adm,ou=serviceaccounts,ou=admin,ou=prod,dc=mydomain,dc=com
# The search user DN - You need quotes when you have spaces in parameters
# 2 examples:
#- LDAP_AUTHENTIFICATION_USERDN="CN=ldap admin,CN=users,DC=domainmatter,DC=lan"
#- LDAP_AUTHENTIFICATION_USERDN="CN=wekan_adm,OU=serviceaccounts,OU=admin,OU=prod,DC=mydomain,DC=com"
#
# The password for the search user
#- LDAP_AUTHENTIFICATION_PASSWORD=pwd
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+10 -3
View File
@@ -510,9 +510,14 @@
"email-smtp-test-text": "You have successfully sent an email",
"error-invitation-code-not-exist": "Invitation code doesn't exist",
"error-notAuthorized": "You are not authorized to view this page.",
"webhook-title": "Webhook Name",
"webhook-token": "Token (Optional for Authentication)",
"outgoing-webhooks": "Outgoing Webhooks",
"bidirectional-webhooks": "Two-Way Webhooks",
"outgoingWebhooksPopup-title": "Outgoing Webhooks",
"boardCardTitlePopup-title": "Card Title Filter",
"disable-webhook": "Disable This Webhook",
"global-webhook": "Global Webhooks",
"new-outgoing-webhook": "New Outgoing Webhook",
"no-name": "(Unknown)",
"Node_version": "Node version",
@@ -726,12 +731,14 @@
"almostdue": "current due time %s is approaching",
"pastdue": "current due time %s is past",
"duenow": "current due time %s is today",
"act-withDue": "__card__ due reminders [__board__]",
"act-newDue": "__list__/__card__ has 1st due reminder [__board__]",
"act-withDue": "__list__/__card__ due reminders [__board__]",
"act-almostdue": "was reminding the current due (__timeValue__) of __card__ is approaching",
"act-pastdue": "was reminding the current due (__timeValue__) of __card__ is past",
"act-duenow": "was reminding the current due (__timeValue__) of __card__ is now",
"act-atUserComment": "You were mentioned in [__board__] __card__",
"act-atUserComment": "You were mentioned in [__board__] __list__/__card__",
"delete-user-confirm-popup": "Are you sure you want to delete this account? There is no undo.",
"accounts-allowUserDelete": "Allow users to self delete their account",
"hide-minicard-label-text": "Hide minicard label text"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+10 -3
View File
@@ -510,9 +510,14 @@
"email-smtp-test-text": "Vous avez envoyé un mail avec succès",
"error-invitation-code-not-exist": "Ce code d'invitation n'existe pas.",
"error-notAuthorized": "Vous n'êtes pas autorisé à accéder à cette page.",
"webhook-title": "Nom du webhook",
"webhook-token": "Jeton (optionnel pour l'authentification)",
"outgoing-webhooks": "Webhooks sortants",
"bidirectional-webhooks": "Webhooks bidirectionnels",
"outgoingWebhooksPopup-title": "Webhooks sortants",
"boardCardTitlePopup-title": "Filtre par titre de carte",
"disable-webhook": "Désactiver ce webhook",
"global-webhook": "Webhooks globaux",
"new-outgoing-webhook": "Nouveau webhook sortant",
"no-name": "(Inconnu)",
"Node_version": "Version de Node",
@@ -723,12 +728,14 @@
"almostdue": "La date d'échéance %s approche",
"pastdue": "La date d'échéance %s est passée",
"duenow": "La date d'échéance %s est aujourd'hui",
"act-withDue": "__card__ rappel d'échéance [__board__]",
"act-newDue": "__list__/__card__ a un 1er rappel d'échéance [__board__]",
"act-withDue": "__list__/__card__ rappel d'échéance [__board__]",
"act-almostdue": "rappelle que l'échéance (__timeValue__) de __card__ approche",
"act-pastdue": "rappelle que l'échéance (__timeValue__) de __card__ est passée",
"act-duenow": "rappelle que l'échéance (__timeValue__) de __card__ est maintenant",
"act-atUserComment": "Vous avez été mentionné dans [__board__] __card__",
"act-atUserComment": "Vous avez été mentionné dans [__board__] __list__/__card__",
"delete-user-confirm-popup": "Êtes-vous sûr de vouloir supprimer ce compte ? Cette opération ne peut pas être annulée. ",
"accounts-allowUserDelete": "Autoriser les utilisateurs à supprimer leur compte",
"hide-minicard-label-text": "Cacher le label de la minicarte"
"hide-minicard-label-text": "Cacher le label de la minicarte",
"show-desktop-drag-handles": "Voir les poignées de déplacement du bureau"
}
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+284 -277
View File
@@ -1,7 +1,7 @@
{
"accept": "Accepteren",
"act-activity-notify": "Activiteiten Notificatie",
"act-addAttachment": "bijlage __attachment__ toegevoegd op kaart __card__ van lijst __list__ in swimlane __swimlane__ op bord __board__",
"act-addAttachment": "bijlage __attachment__ toegevoegd aan kaart __card__ van lijst __list__ in swimlane __swimlane__ op bord __board__",
"act-deleteAttachment": "bijlage __attachment__ verwijderd op kaart __card__ van lijst __list__ uit swimlane __swimlane__ op bord __board__",
"act-addSubtask": "subtaak __subtask__ toegevoegd aan kaart __card__ van lijst __list__ in swimlane __swimlane__ op bord __board__",
"act-addLabel": "Label __label__ toegevoegd aan kaart __card__ van lijst __list__ in swimlane __swimlane__ op bord __board__",
@@ -22,24 +22,24 @@
"act-createBoard": "bord __board__ aangemaakt",
"act-createSwimlane": "swimlane __swimlane__ aangemaakt op bord __board__",
"act-createCard": "kaart __card__ aangemaakt in lijst __list__ in swimlane __swimlane__ op bord __board__",
"act-createCustomField": "maatwerkveld __customField__ gecreëerd op bord __board__",
"act-createCustomField": "maatwerkveld __customField__ aangemaakt op bord __board__",
"act-deleteCustomField": "maatwerkveld __customField__ verwijderd van bord __board__",
"act-setCustomField": "maatwerkveld gewijzigd __customField__: __customFieldValue__ op kaart __card__ in lijst __list__ uit swimlane __swimlane__ op bord __board__",
"act-createList": "added list __list__ to board __board__",
"act-addBoardMember": "added member __member__ to board __board__",
"act-createList": "lijst __list__ toegevoegd aan bord __board__",
"act-addBoardMember": "lid __member__ toegevoegd aan bord __board__",
"act-archivedBoard": "Bord __board__ verplaatst naar Archief",
"act-archivedCard": "Kaart __card__ van lijst __list__ uit swimlane __swimlane__ op bord __board__ verplaatst naar Archief",
"act-archivedList": "Lijst __list__ uit swimlane __swimlane__ op bord __board__ verplaatst naar Archief",
"act-archivedSwimlane": "Swimlane __swimlane__ op bord __board__ verplaatst naar Archief",
"act-importBoard": "imported board __board__",
"act-importCard": "imported card __card__ to list __list__ at swimlane __swimlane__ at board __board__",
"act-importList": "imported list __list__ to swimlane __swimlane__ at board __board__",
"act-joinMember": "added member __member__ to card __card__ at list __list__ at swimlane __swimlane__ at board __board__",
"act-moveCard": "moved card __card__ at board __board__ from list __oldList__ at swimlane __oldSwimlane__ to list __list__ at swimlane __swimlane__",
"act-moveCardToOtherBoard": "moved card __card__ from list __oldList__ at swimlane __oldSwimlane__ at board __oldBoard__ to list __list__ at swimlane __swimlane__ at board __board__",
"act-removeBoardMember": "removed member __member__ from board __board__",
"act-restoredCard": "restored card __card__ to list __list__ at swimlane __swimlane__ at board __board__",
"act-unjoinMember": "removed member __member__ from card __card__ at list __list__ at swimlane __swimlane__ at board __board__",
"act-importBoard": "bord __board__ geïmporteerd",
"act-importCard": "kaart __card__ geïmporteerd in lijst __list__ in swimlane __swimlane__ op bord __board__",
"act-importList": "lijst __list__ geïmporteerd in swimlane __swimlane__ op bord __board__",
"act-joinMember": "lid __member__ toegevoegd aan kaart __card__ van lijst __list__ in swimlane __swimlane__ op bord __board__",
"act-moveCard": "kaart __card__ verplaatst op bord __board__ van lijst __oldList__ uit swimlane __oldSwimlane__ naar lijst __list__ in swimlane __swimlane__",
"act-moveCardToOtherBoard": "kaart __card__ verplaatst van lijst __oldList__ uit swimlane __oldSwimlane__ op bord __oldBoard__ naar lijst __list__ in swimlane __swimlane__ op bord __board__",
"act-removeBoardMember": "lid __member__ verwijderd van bord __board__",
"act-restoredCard": "kaart __card__ teruggehaald naar lijst __list__ in swimlane __swimlane__ op bord __board__",
"act-unjoinMember": "lid __member__ verwijderd van kaart __card__ van lijst __list__ uit swimlane __swimlane__ op bord __board__",
"act-withBoardTitle": "__board__",
"act-withCardTitle": "[__board__] __card__",
"actions": "Acties",
@@ -48,44 +48,44 @@
"activity-added": "%s toegevoegd aan %s",
"activity-archived": "%s verplaatst naar Archief",
"activity-attached": "%s bijgevoegd aan %s",
"activity-created": "%s gecreëerd",
"activity-customfield-created": "maatwerkveld gecreëerd %s",
"activity-created": "%s aangemaakt",
"activity-customfield-created": "maatwerkveld aangemaakt %s",
"activity-excluded": "%s uitgesloten van %s",
"activity-imported": "%s geimporteerd in %s van %s",
"activity-imported-board": "%s geimporteerd van %s",
"activity-imported": "%s geïmporteerd in %s van %s",
"activity-imported-board": "%s geïmporteerd van %s",
"activity-joined": "%s toegetreden",
"activity-moved": "%s verplaatst van %s naar %s",
"activity-on": "bij %s",
"activity-removed": "%s verwijderd van %s",
"activity-sent": "%s gestuurd naar %s",
"activity-unjoined": "uit %s gegaan",
"activity-subtask-added": "added subtask to %s",
"activity-checked-item": "checked %s in checklist %s of %s",
"activity-unchecked-item": "unchecked %s in checklist %s of %s",
"activity-subtask-added": "subtaak toegevoegd aan %s",
"activity-checked-item": "%s aangevinkt in checklist %s van %s",
"activity-unchecked-item": "%s uitgevinkt in checklist %s van %s",
"activity-checklist-added": "checklist toegevoegd aan %s",
"activity-checklist-removed": "removed a checklist from %s",
"activity-checklist-removed": "checklist verwijderd van %s",
"activity-checklist-completed": "checklist __checklist__ afgewerkt op kaart __card__ van lijst __list__ in swimlane __swimlane__ op bord __board__",
"activity-checklist-uncompleted": "uncompleted the checklist %s of %s",
"activity-checklist-item-added": "checklist punt toegevoegd aan '%s' in '%s'",
"activity-checklist-item-removed": "removed a checklist item from '%s' in %s",
"activity-checklist-uncompleted": "checklist %s onafgewerkt van %s",
"activity-checklist-item-added": "checklist item toegevoegd aan '%s' in '%s'",
"activity-checklist-item-removed": "checklist item verwijderd van '%s' in %s",
"add": "Toevoegen",
"activity-checked-item-card": "checked %s in checklist %s",
"activity-unchecked-item-card": "unchecked %s in checklist %s",
"activity-checked-item-card": "%s aangevinkt in checklist %s",
"activity-unchecked-item-card": "%s uitgevinkt in checklist %s",
"activity-checklist-completed-card": "checklist __checklist__ afgewerkt op kaart __card__ van lijst __list__ in swimlane __swimlane__ op bord __board__",
"activity-checklist-uncompleted-card": "uncompleted the checklist %s",
"activity-checklist-uncompleted-card": "checklist %s onafgewerkt",
"activity-editComment": "aantekening gewijzigd %s",
"activity-deleteComment": "aantekening verwijderd %s",
"add-attachment": "Voeg Bijlage Toe",
"add-board": "Voeg Bord Toe",
"add-card": "Voeg Kaart Toe",
"add-attachment": "Bijlage Toevoegen",
"add-board": "Bord Toevoegen",
"add-card": "Kaart Toevoegen",
"add-swimlane": "Swimlane Toevoegen",
"add-subtask": "Add Subtask",
"add-checklist": "Voeg Checklist Toe",
"add-subtask": "Subtaak Toevoegen",
"add-checklist": "Checkcklist Toevoegen",
"add-checklist-item": "Voeg item toe aan checklist",
"add-cover": "Voeg Cover Toe",
"add-label": "Voeg Label Toe",
"add-list": "Voeg Lijst Toe",
"add-members": "Voeg Leden Toe",
"add-cover": "Cover Toevoegen",
"add-label": "Label Toevoegen",
"add-list": "Lijst Toevoegen",
"add-members": "Leden Toevoegen",
"added": "Toegevoegd",
"addMemberPopup-title": "Leden",
"admin": "Administrator",
@@ -94,10 +94,10 @@
"admin-announcement-active": "Systeem melding",
"admin-announcement-title": "Melding van de administrator",
"all-boards": "Alle borden",
"and-n-other-card": "En nog __count__ ander",
"and-n-other-card": "En __count__ andere kaarten",
"and-n-other-card_plural": "En __count__ andere kaarten",
"apply": "Aanmelden",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-is-offline": "Wekan is aan het laden, wacht alstublieft. Het verversen van de pagina zorgt voor verlies van gegevens. Als Wekan niet laadt, check dan of de Wekan server niet is gestopt. ",
"archive": "Verplaats naar Archief",
"archive-all": "Verplaats Alles naar Archief",
"archive-board": "Verplaats Bord naar Archief",
@@ -106,18 +106,18 @@
"archive-swimlane": "Verplaats Swimlane naar Archief",
"archive-selection": "Verplaats selectie naar Archief",
"archiveBoardPopup-title": "Bord naar Archief verplaatsen?",
"archived-items": "Archiefveren",
"archived-items": "Archiveren",
"archived-boards": "Borden in Archief",
"restore-board": "Herstel Bord",
"no-archived-boards": "Geen Borden in Archief.",
"archives": "Archiveren",
"archives": "Archief",
"template": "Template",
"templates": "Templates",
"assign-member": "Lid toevoegen",
"attached": "bijgevoegd",
"attachment": "Bijlage",
"attachment-delete-pop": "Een bijlage verwijderen is permanent. Er is geen herstelmogelijkheid.",
"attachmentDeletePopup-title": "Verwijder Bijlage?",
"attachmentDeletePopup-title": "Bijlage verwijderen?",
"attachments": "Bijlagen",
"auto-watch": "Automatisch borden bekijken wanneer deze aangemaakt worden",
"avatar-too-big": "De bestandsgrootte van je avatar is te groot (70KB max)",
@@ -131,13 +131,13 @@
"boardChangeTitlePopup-title": "Hernoem bord",
"boardChangeVisibilityPopup-title": "Verander zichtbaarheid",
"boardChangeWatchPopup-title": "Verander naar 'Watch'",
"boardMenuPopup-title": "Board Settings",
"boardMenuPopup-title": "Bord Instellingen",
"boards": "Borden",
"board-view": "Bord overzicht",
"board-view-cal": "Kalender",
"board-view-swimlanes": "Swimlanes",
"board-view-lists": "Lijsten",
"bucket-example": "Zoals \"Bucket List\" bijvoorbeeld",
"bucket-example": "Zoals bijvoorbeeld een \"Bucket List\"",
"cancel": "Annuleren",
"card-archived": "Deze kaart is verplaatst naar Archief.",
"board-archived": "Dit bord is verplaatst naar Archief.",
@@ -145,9 +145,9 @@
"card-delete-notice": "Verwijdering is permanent. Als je dit doet, verlies je alle informatie die op deze kaart is opgeslagen.",
"card-delete-pop": "Alle acties worden verwijderd van de activiteiten feed, en er zal geen mogelijkheid zijn om de kaart opnieuw te openen. Er is geen herstelmogelijkheid.",
"card-delete-suggest-archive": "Je kunt een kaart naar Archief verplaatsen om die van het bord te verwijderen waarbij de activiteiten behouden blijven.",
"card-due": "Deadline: ",
"card-due-on": "Deadline: ",
"card-spent": "gespendeerde tijd",
"card-due": "Verval",
"card-due-on": "Vervalt op ",
"card-spent": "Gespendeerde tijd",
"card-edit-attachments": "Wijzig bijlagen",
"card-edit-custom-fields": "Wijzig maatwerkvelden",
"card-edit-labels": "Wijzig labels",
@@ -157,27 +157,27 @@
"card-start": "Begin",
"card-start-on": "Begint op",
"cardAttachmentsPopup-title": "Voeg bestand toe vanuit",
"cardCustomField-datePopup-title": "Change date",
"cardCustomField-datePopup-title": "Wijzigingsdatum",
"cardCustomFieldsPopup-title": "Wijzig maatwerkvelden",
"cardDeletePopup-title": "Kaart verwijderen?",
"cardDetailsActionsPopup-title": "Kaart actie ondernemen",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Leden",
"cardMorePopup-title": "Meer",
"cardTemplatePopup-title": "Create template",
"cardTemplatePopup-title": "Template aanmaken",
"cards": "Kaarten",
"cards-count": "Kaarten",
"casSignIn": "Sign In with CAS",
"cardType-card": "Card",
"cardType-linkedCard": "Linked Card",
"cardType-linkedBoard": "Linked Board",
"casSignIn": "Log in met CAS",
"cardType-card": "Kaart",
"cardType-linkedCard": "Gekoppelde Kaart",
"cardType-linkedBoard": "Gekoppeld Bord",
"change": "Wijzig",
"change-avatar": "Wijzig avatar",
"change-password": "Wijzig wachtwoord",
"change-permissions": "Wijzig permissies",
"change-settings": "Wijzig instellingen",
"changeAvatarPopup-title": "Wijzig avatar",
"changeLanguagePopup-title": "Verander van taal",
"changeLanguagePopup-title": "Wijzig taal",
"changePasswordPopup-title": "Wijzig wachtwoord",
"changePermissionsPopup-title": "Wijzig permissies",
"changeSettingsPopup-title": "Wijzig instellingen",
@@ -191,30 +191,30 @@
"close-board-pop": "Je kunt het bord terughalen door de \"Archief\" knop te klikken in de menubalk \"Mijn Borden\".",
"color-black": "zwart",
"color-blue": "blauw",
"color-crimson": "crimson",
"color-darkgreen": "darkgreen",
"color-gold": "gold",
"color-gray": "gray",
"color-crimson": "karmijn",
"color-darkgreen": "donkergroen",
"color-gold": "goud",
"color-gray": "grijs",
"color-green": "groen",
"color-indigo": "indigo",
"color-lime": "Felgroen",
"color-lime": "felgroen",
"color-magenta": "magenta",
"color-mistyrose": "mistyrose",
"color-navy": "navy",
"color-orange": "Oranje",
"color-paleturquoise": "paleturquoise",
"color-peachpuff": "peachpuff",
"color-pink": "Roze",
"color-plum": "plum",
"color-purple": "Paars",
"color-red": "Rood",
"color-saddlebrown": "saddlebrown",
"color-silver": "silver",
"color-sky": "Lucht",
"color-slateblue": "slateblue",
"color-white": "white",
"color-yellow": "Geel",
"unset-color": "Unset",
"color-mistyrose": "zachtroze",
"color-navy": "marineblauw",
"color-orange": "oranje",
"color-paleturquoise": "vaalturkoois",
"color-peachpuff": "perzikroze",
"color-pink": "roze",
"color-plum": "pruim",
"color-purple": "paars",
"color-red": "rood",
"color-saddlebrown": "zadelbruin",
"color-silver": "zilver",
"color-sky": "lucht",
"color-slateblue": "leiblauw",
"color-white": "wit",
"color-yellow": "geel",
"unset-color": "Ongedefinieerd",
"comment": "Aantekening",
"comment-placeholder": "Schrijf aantekening",
"comment-only": "Alleen aantekeningen maken",
@@ -222,10 +222,10 @@
"no-comments": "Geen aantekeningen",
"no-comments-desc": "Zie geen aantekeningen of activiteiten.",
"computer": "Computer",
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"confirm-subtask-delete-dialog": "Weet je zeker dat je de subtaak wilt verwijderen?",
"confirm-checklist-delete-dialog": "Weet je zeker dat je de checklist wilt verwijderen?",
"copy-card-link-to-clipboard": "Kopieer kaart link naar klembord",
"linkCardPopup-title": "Link Card",
"linkCardPopup-title": "Koppel Kaart",
"searchElementPopup-title": "Zoek",
"copyCardPopup-title": "Kopieer kaart",
"copyChecklistToManyCardsPopup-title": "Checklist sjabloon kopiëren naar meerdere kaarten",
@@ -235,30 +235,30 @@
"createBoardPopup-title": "Bord aanmaken",
"chooseBoardSourcePopup-title": "Importeer bord",
"createLabelPopup-title": "Label aanmaken",
"createCustomField": "Create Field",
"createCustomFieldPopup-title": "Create Field",
"createCustomField": "Veld aanmaken",
"createCustomFieldPopup-title": "Veld aanmaken",
"current": "Huidige",
"custom-field-delete-pop": "Er is geen herstelmogelijkheid. Deze actie zal dit maatwerkveld van alle kaarten verwijderen en de bijbehorende historie wissen.",
"custom-field-checkbox": "Checkbox",
"custom-field-date": "Datum",
"custom-field-dropdown": "Dropdown List",
"custom-field-dropdown-none": "(none)",
"custom-field-dropdown-options": "List Options",
"custom-field-dropdown-options-placeholder": "Press enter to add more options",
"custom-field-dropdown-unknown": "(unknown)",
"custom-field-number": "Number",
"custom-field-text": "Text",
"custom-field-dropdown": "Dropdown Lijst",
"custom-field-dropdown-none": "(geen)",
"custom-field-dropdown-options": "Lijst Opties",
"custom-field-dropdown-options-placeholder": "Toets Enter om meer opties toe te voegen ",
"custom-field-dropdown-unknown": "(onbekend)",
"custom-field-number": "Aantal",
"custom-field-text": "Tekst",
"custom-fields": "Maatwerkvelden",
"date": "Datum",
"decline": "Weigeren",
"default-avatar": "Standaard avatar",
"delete": "Verwijderen",
"deleteCustomFieldPopup-title": "Maatwerkveld verwijderen?",
"deleteLabelPopup-title": "Verwijder label?",
"deleteLabelPopup-title": "Label verwijderen?",
"description": "Beschrijving",
"disambiguateMultiLabelPopup-title": "Disambigueer Label Actie",
"disambiguateMultiMemberPopup-title": "Disambigueer Lid Actie",
"discard": "Weggooien",
"discard": "Negeer",
"done": "Klaar",
"download": "Download",
"edit": "Wijzig",
@@ -267,8 +267,8 @@
"edit-wip-limit": "Verander WIP limiet",
"soft-wip-limit": "Zachte WIP limiet",
"editCardStartDatePopup-title": "Wijzig start datum",
"editCardDueDatePopup-title": "Wijzig deadline",
"editCustomFieldPopup-title": "Edit Field",
"editCardDueDatePopup-title": "Wijzig vervaldatum",
"editCustomFieldPopup-title": "Wijzig Veld",
"editCardSpentTimePopup-title": "Verander gespendeerde tijd",
"editLabelPopup-title": "Wijzig label",
"editNotificationPopup-title": "Wijzig notificatie",
@@ -278,7 +278,7 @@
"email-enrollAccount-text": "Hallo __user__,\n\nOm gebruik te maken van de online dienst, kan je op de volgende link klikken.\n\n__url__\n\nBedankt.",
"email-fail": "E-mail verzenden is mislukt",
"email-fail-text": "Fout tijdens het verzenden van de email",
"email-invalid": "Ongeldige e-mail",
"email-invalid": "Ongeldig e-mailadres",
"email-invite": "Nodig uit via e-mail",
"email-invite-subject": "__inviter__ heeft je een uitnodiging gestuurd",
"email-invite-text": "Beste __user__,\n\n__inviter__ heeft je uitgenodigd om voor een samenwerking deel te nemen aan het bord \"__board__\".\n\nKlik op de link hieronder:\n\n__url__\n\nBedankt.",
@@ -297,22 +297,22 @@
"error-user-doesNotExist": "Deze gebruiker bestaat niet",
"error-user-notAllowSelf": "Je kan jezelf niet uitnodigen",
"error-user-notCreated": "Deze gebruiker is niet aangemaakt",
"error-username-taken": "Deze gebruikersnaam is al bezet",
"error-email-taken": "Deze e-mail is al eerder gebruikt",
"error-username-taken": "Deze gebruikersnaam is al in gebruik",
"error-email-taken": "Dit e-mailadres is al in gebruik",
"export-board": "Exporteer bord",
"filter": "Filter",
"filter-cards": "Filter kaarten",
"filter-clear": "Reset filter",
"filter-cards": "Filter Kaarten",
"filter-clear": "Wis filter",
"filter-no-label": "Geen label",
"filter-no-member": "Geen lid",
"filter-no-custom-fields": "Geen maatwerkvelden",
"filter-show-archive": "Toon gearchiveerde lijsten",
"filter-hide-empty": "Hide empty lists",
"filter-on": "Filter staat aan",
"filter-hide-empty": "Verberg lege lijsten",
"filter-on": "Filter is actief",
"filter-on-desc": "Je bent nu kaarten aan het filteren op dit bord. Klik hier om het filter te wijzigen.",
"filter-to-selection": "Filter zoals selectie",
"advanced-filter-label": "Advanced Filter",
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\/) to be skipped, you can use \\. For example: Field1 == I\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"advanced-filter-label": "Geavanceerd Filter",
"advanced-filter-description": "Met het Geavanceerd Filter kun je een tekst schrijven die de volgende operatoren mag bevatten: == != <= >= && || ( ) Een Spatie wordt als scheiding gebruikt tussen de verschillende operatoren. Je kunt filteren op alle Maatwerkvelden door hun namen en waarden in te tikken. Bijvoorbeeld: Veld1 == Waarde1. Let op: Als velden of waarden spaties bevatten dan moet je die tussen enkele aanhalingstekens zetten. Bijvoorbeeld: 'Veld 1' == 'Waarde 1'. Om controle karakters (' \\/) over te slaan gebruik je \\. Bijvoorbeeld: Veld1 == I\\'m. Je kunt ook meerdere condities combineren. Bijvoorbeeld: F1 == V1 || F1 == V2. Normalerwijze worden alle operatoren van links naar rechts verwerkt. Dit kun je veranderen door ronde haken te gebruiken. Bijvoorbeeld: F1 == V1 && ( F2 == V2 || F2 == V3 ). Je kunt ook met regex in tekstvelden zoeken. Bijvoorbeeld: F1 == /Tes.*/i",
"fullname": "Volledige naam",
"header-logo-title": "Ga terug naar jouw borden pagina.",
"hide-system-messages": "Verberg systeemberichten",
@@ -322,37 +322,37 @@
"link": "Link",
"import-board": "Importeer bord",
"import-board-c": "Importeer bord",
"import-board-title-trello": "Importeer bord van Trello",
"import-board-title-wekan": "Import board from previous export",
"import-sandstorm-backup-warning": "Do not delete data you import from original exported board or Trello before checking does this grain close and open again, or do you get Board not found error, that means data loss.",
"import-sandstorm-warning": "Het geïmporteerde bord verwijdert alle data op het huidige bord, om het daarna te vervangen.",
"from-trello": "Van Trello",
"from-wekan": "From previous export",
"import-board-title-trello": "Importeer bord vanuit Trello",
"import-board-title-wekan": "Importeer bord vanuit eerdere export",
"import-sandstorm-backup-warning": "Verwijder nog niet de data van je geëxporteerde Trello-bord totdat je vastgesteld hebt dat het Wekan-bord werkt. Doe dit door het nieuwe bord te sluiten en opnieuw te openen. Als er dan een foutmelding krijgt of het nieuwe bord opent niet dan kun je nog terugvallen op het originele bord. ",
"import-sandstorm-warning": "Het geïmporteerde bord verwijdert alle huidige data op dit bord, om het daarna te vervangen.",
"from-trello": "Vanuit Trello",
"from-wekan": "Vanuit eerdere export",
"import-board-instruction-trello": "Op jouw Trello bord, ga naar 'Menu', dan naar 'Meer', 'Print en Exporteer', 'Exporteer JSON', en kopieer de tekst.",
"import-board-instruction-wekan": "In your board, go to 'Menu', then 'Export board', and copy the text in the downloaded file.",
"import-board-instruction-about-errors": "If you get errors when importing board, sometimes importing still works, and board is at All Boards page.",
"import-board-instruction-wekan": "Ga op je bord naar 'Menu' en klik dan 'Export board' en kopieer de tekst in het gedownloade bestand.",
"import-board-instruction-about-errors": "Als je tijdens de import van het bord foutmeldingen krijgt is de import soms toch gelukt en vind je het bord terug op de 'Alle borden' scherm.",
"import-json-placeholder": "Plak geldige JSON data hier",
"import-map-members": "Breng leden in kaart",
"import-members-map": "Your imported board has some members. Please map the members you want to import to your users",
"import-members-map": "Je geïmporteerde bord heeft een aantal leden. Koppel de leden die je wilt importeren aan je gebruikers.",
"import-show-user-mapping": "Breng leden overzicht tevoorschijn",
"import-user-select": "Pick your existing user you want to use as this member",
"importMapMembersAddPopup-title": "Select member",
"import-user-select": "Kies een bestaande gebruiker die je als dit lid wilt koppelen",
"importMapMembersAddPopup-title": "Kies lid",
"info": "Versie",
"initials": "Initialen",
"invalid-date": "Ongeldige datum",
"invalid-time": "Ongeldige tijd",
"invalid-user": "Ongeldige gebruiker",
"joined": "doet nu mee met",
"just-invited": "Je bent zojuist uitgenodigd om mee toen doen met dit bord",
"just-invited": "Je bent zojuist uitgenodigd om mee toen doen aan dit bord",
"keyboard-shortcuts": "Toetsenbord snelkoppelingen",
"label-create": "Label aanmaken",
"label-default": "%s label (standaard)",
"label-delete-pop": "Er is geen herstelmogelijkheid. Deze actie zal de label van alle kaarten verwijderen, en de feed.",
"label-delete-pop": "Er is geen herstelmogelijkheid. Deze actie zal het label van alle kaarten verwijderen met de bijbehorende historie.",
"labels": "Labels",
"language": "Taal",
"last-admin-desc": "Je kan de permissies niet veranderen omdat er maar een administrator is.",
"last-admin-desc": "Je kunt de permissies niet veranderen omdat er minimaal een administrator moet zijn.",
"leave-board": "Verlaat bord",
"leave-board-pop": "Weet u zeker dat u __boardTitle__ wilt verlaten? U wordt verwijderd van alle kaarten binnen dit bord",
"leave-board-pop": "Weet je zeker dat je __boardTitle__ wilt verlaten? Je wordt verwijderd van alle kaarten binnen dit bord",
"leaveBoardPopup-title": "Bord verlaten?",
"link-card": "Link naar deze kaart",
"list-archive-cards": "Verplaats alle kaarten in deze lijst naar Archief",
@@ -362,7 +362,7 @@
"set-color-list": "Wijzig kleur in",
"listActionPopup-title": "Lijst acties",
"swimlaneActionPopup-title": "Swimlane handelingen",
"swimlaneAddPopup-title": "Add a Swimlane below",
"swimlaneAddPopup-title": "Voeg hieronder een Swimlane toe",
"listImportCardPopup-title": "Importeer een Trello kaart",
"listMorePopup-title": "Meer",
"link-list": "Link naar deze lijst",
@@ -393,8 +393,8 @@
"no-results": "Geen resultaten",
"normal": "Normaal",
"normal-desc": "Kan de kaarten zien en wijzigen. Kan de instellingen niet wijzigen.",
"not-accepted-yet": "Uitnodiging niet geaccepteerd",
"notify-participate": "Ontvang updates van elke kaart die je hebt gemaakt of lid van bent",
"not-accepted-yet": "Uitnodiging nog niet geaccepteerd",
"notify-participate": "Ontvang updates van elke kaart die je hebt aangemaakt of lid van bent",
"notify-watch": "Ontvang updates van elke bord, lijst of kaart die je bekijkt.",
"optional": "optioneel",
"or": "of",
@@ -407,19 +407,19 @@
"previewAttachedImagePopup-title": "Voorbeeld",
"previewClipboardImagePopup-title": "Voorbeeld",
"private": "Privé",
"private-desc": "Dit bord is privé. Alleen mensen die toegevoegd zijn aan het bord kunnen het bekijken en wijzigen.",
"private-desc": "Dit bord is privé. Alleen gebruikers die toegevoegd zijn aan het bord kunnen het bekijken en wijzigen.",
"profile": "Profiel",
"public": "Publiek",
"public-desc": "Dit bord is publiek. Het is zichtbaar voor iedereen met de link en zal tevoorschijn komen op zoekmachines zoals Google. Alleen mensen die toegevoegd zijn kunnen het bord wijzigen.",
"public": "Openbaar",
"public-desc": "Dit bord is openbaar. Het is zichtbaar voor iedereen met de link en zal tevoorschijn komen op zoekmachines zoals Google. Alleen gebruikers die toegevoegd zijn aan het bord kunnen het wijzigen.",
"quick-access-description": "Maak een bord favoriet om een snelkoppeling toe te voegen aan deze balk.",
"remove-cover": "Verwijder Cover",
"remove-from-board": "Verwijder van bord",
"remove-label": "Verwijder label",
"listDeletePopup-title": "Verwijder lijst?",
"listDeletePopup-title": "Lijst verwijderen?",
"remove-member": "Verwijder lid",
"remove-member-from-card": "Verwijder van kaart",
"remove-member-pop": "Verwijder __name__ (__username__) van __boardTitle__? Het lid zal verwijderd worden van alle kaarten op dit bord, en zal een notificatie ontvangen.",
"removeMemberPopup-title": "Verwijder lid?",
"removeMemberPopup-title": "Lid verwijderen?",
"rename": "Hernoem",
"rename-board": "Hernoem bord",
"restore": "Herstel",
@@ -434,7 +434,7 @@
"shortcut-assign-self": "Voeg jezelf toe aan huidige kaart",
"shortcut-autocomplete-emoji": "Emojis automatisch aanvullen",
"shortcut-autocomplete-members": "Leden automatisch aanvullen",
"shortcut-clear-filters": "Alle filters vrijmaken",
"shortcut-clear-filters": "Wis alle filters",
"shortcut-close-dialog": "Sluit dialoog",
"shortcut-filter-my-cards": "Filter mijn kaarten",
"shortcut-show-shortcuts": "Haal lijst met snelkoppelingen tevoorschijn",
@@ -472,21 +472,21 @@
"warn-list-archived": "Let op: deze kaart zit in gearchiveerde lijst",
"watch": "Bekijk",
"watching": "Bekijken",
"watching-info": "Je zal op de hoogte worden gesteld als er een verandering gebeurt op dit bord.",
"watching-info": "Je zal op de hoogte worden gesteld als er een verandering plaatsvind op dit bord.",
"welcome-board": "Welkom Bord",
"welcome-swimlane": "Mijlpaal 1",
"welcome-list1": "Basis",
"welcome-list2": "Geadvanceerd",
"card-templates-swimlane": "Card Templates",
"list-templates-swimlane": "List Templates",
"board-templates-swimlane": "Board Templates",
"card-templates-swimlane": "Kaart Templates",
"list-templates-swimlane": "Lijst Templates",
"board-templates-swimlane": "Bord Templates",
"what-to-do": "Wat wil je doen?",
"wipLimitErrorPopup-title": "Ongeldige WIP limiet",
"wipLimitErrorPopup-dialog-pt1": "Het aantal taken in deze lijst is groter dan de gedefinieerde WIP limiet ",
"wipLimitErrorPopup-dialog-pt2": "Verwijder een aantal taken uit deze lijst, of zet de WIP limiet hoger",
"admin-panel": "Administrator paneel",
"settings": "Instellingen",
"people": "Mensen",
"people": "Gebruikers",
"registration": "Registratie",
"disable-self-registration": "Schakel zelf-registratie uit",
"invite": "Uitnodigen",
@@ -502,45 +502,50 @@
"smtp-password": "Wachtwoord",
"smtp-tls": "TLS ondersteuning",
"send-from": "Van",
"send-smtp-test": "Verzend een test email naar uzelf",
"send-smtp-test": "Verzend een test email naar jezelf",
"invitation-code": "Uitnodigings code",
"email-invite-register-subject": "__inviter__ heeft je een uitnodiging gestuurd",
"email-invite-register-text": "Dear __user__,\n\n__inviter__ invites you to kanban board for collaborations.\n\nPlease follow the link below:\n__url__\n\nAnd your invitation code is: __icode__\n\nThanks.",
"email-invite-register-text": "Beste __user__,\n\n__inviter__ nodigt je uit voor een Kanban-bord om samen te werken.\n\nHet bord vind je via onderstaande link:\n__url__\n\nJe uitnodigingscode is: __icode__\n\nBedankt en tot ziens.",
"email-smtp-test-subject": "SMTP Test Email",
"email-smtp-test-text": "U heeft met succes een email verzonden",
"email-smtp-test-text": "Je hebt met succes een email verzonden",
"error-invitation-code-not-exist": "Uitnodigings code bestaat niet",
"error-notAuthorized": "Je bent niet toegestaan om deze pagina te bekijken.",
"webhook-title": "Webhook Naam",
"webhook-token": "Token (Optioneel voor Authenticatie)",
"outgoing-webhooks": "Uitgaande Webhooks",
"bidirectional-webhooks": "Twee-Weg Webhooks",
"outgoingWebhooksPopup-title": "Uitgaande Webhooks",
"boardCardTitlePopup-title": "Card Title Filter",
"boardCardTitlePopup-title": "Kaarttitel Filter",
"disable-webhook": "Schakel deze Webhook uit",
"global-webhook": "Globale Webhooks",
"new-outgoing-webhook": "Nieuwe webhook",
"no-name": "(Onbekend)",
"Node_version": "Node versie",
"Meteor_version": "Meteor version",
"MongoDB_version": "MongoDB version",
"Meteor_version": "Meteor versie",
"MongoDB_version": "MongoDB versie",
"MongoDB_storage_engine": "MongoDB storage engine",
"MongoDB_Oplog_enabled": "MongoDB Oplog enabled",
"MongoDB_Oplog_enabled": "MongoDB Oplog ingeschakeld",
"OS_Arch": "OS Arch",
"OS_Cpus": "OS CPU Count",
"OS_Freemem": "OS Vrij Geheugen",
"OS_Loadavg": "OS Gemiddelde Lading",
"OS_Loadavg": "OS Gemiddelde Belasting",
"OS_Platform": "OS Platform",
"OS_Release": "OS Versie",
"OS_Totalmem": "OS Totaal Geheugen",
"OS_Type": "OS Type",
"OS_Uptime": "OS Uptime",
"days": "days",
"days": "dagen",
"hours": "uren",
"minutes": "minuten",
"seconds": "seconden",
"show-field-on-card": "Show this field on card",
"automatically-field-on-card": "Auto create field to all cards",
"showLabel-field-on-card": "Show field label on minicard",
"show-field-on-card": "Toon dit veld op kaart",
"automatically-field-on-card": "Maak veld automatisch aan op alle kaarten",
"showLabel-field-on-card": "Toon veldnaam op minikaart",
"yes": "Ja",
"no": "Nee",
"accounts": "Accounts",
"accounts-allowEmailChange": "Sta E-mailadres wijzigingen toe",
"accounts-allowUserNameChange": "Allow Username Change",
"accounts-allowUserNameChange": "Sta Gebruikersnaam wijzigingen toe",
"createdAt": "Gemaakt op",
"verified": "Geverifieerd",
"active": "Actief",
@@ -554,181 +559,183 @@
"setCardActionsColorPopup-title": "Kies een kleur",
"setSwimlaneColorPopup-title": "Kies een kleur",
"setListColorPopup-title": "Kies een kleur",
"assigned-by": "Toegewezen Door",
"requested-by": "Aangevraagd Door",
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
"assigned-by": "Toegewezen door",
"requested-by": "Aangevraagd door",
"board-delete-notice": "Verwijdering kan niet ongedaan gemaakt worden. Je raakt alle met dit bord gerelateerde lijsten, kaarten en acties kwijt.",
"delete-board-confirm-popup": "Alle lijsten, kaarten, labels en activiteiten zullen worden verwijderd en je kunt de bordinhoud niet terughalen. Er is geen herstelmogelijkheid. ",
"boardDeletePopup-title": "Delete Board?",
"delete-board": "Delete Board",
"boardDeletePopup-title": "Bord verwijderen?",
"delete-board": "Verwijder bord",
"default-subtasks-board": "Subtaken voor __board__ bord",
"default": "Default",
"queue": "Queue",
"default": "Standaard",
"queue": "Rij",
"subtask-settings": "Subtaak Instellingen",
"boardSubtaskSettingsPopup-title": "Bord Subtaak Instellingen",
"show-subtasks-field": "Kaarten kunnen subtaken hebben",
"deposit-subtasks-board": "Plaats subtaken op dit bord:",
"deposit-subtasks-list": "Plaats subtaken in deze lijst:",
"show-parent-in-minicard": "Show parent in minicard:",
"prefix-with-full-path": "Prefix with full path",
"prefix-with-parent": "Prefix with parent",
"subtext-with-full-path": "Subtext with full path",
"subtext-with-parent": "Subtext with parent",
"change-card-parent": "Change card's parent",
"parent-card": "Parent card",
"source-board": "Source board",
"no-parent": "Don't show parent",
"activity-added-label": "added label '%s' to %s",
"activity-removed-label": "removed label '%s' from %s",
"show-parent-in-minicard": "Toon bron in minikaart:",
"prefix-with-full-path": "Prefix met volledig pad",
"prefix-with-parent": "Prefix met bron",
"subtext-with-full-path": "Subtekst met volledig pad",
"subtext-with-parent": "Subtekst met bron",
"change-card-parent": "Wijzig bron van kaart",
"parent-card": "Bronkaart",
"source-board": "Bronbord",
"no-parent": "Toon bron niet",
"activity-added-label": "label toegevoegd '%s' aan %s",
"activity-removed-label": "label verwijderd '%s' van %s",
"activity-delete-attach": "een bijlage verwijderd van %s",
"activity-added-label-card": "added label '%s'",
"activity-removed-label-card": "removed label '%s'",
"activity-added-label-card": "label toegevoegd '%s'",
"activity-removed-label-card": "label verwijderd '%s'",
"activity-delete-attach-card": "een bijlage verwijderd",
"activity-set-customfield": "set custom field '%s' to '%s' in %s",
"activity-unset-customfield": "unset custom field '%s' in %s",
"r-rule": "Rule",
"r-add-trigger": "Add trigger",
"r-add-action": "Add action",
"activity-set-customfield": "wijzig maatwerkveld '%s' naar '%s' in %s",
"activity-unset-customfield": "wijzig maatwerkveld '%s' in %s",
"r-rule": "Regel",
"r-add-trigger": "Voeg signaal toe",
"r-add-action": "Actie toevoegen",
"r-board-rules": "Bord regels",
"r-add-rule": "Add rule",
"r-view-rule": "View rule",
"r-delete-rule": "Delete rule",
"r-new-rule-name": "New rule title",
"r-add-rule": "Regel toevoegen",
"r-view-rule": "Toon regel",
"r-delete-rule": "Verwijder regel",
"r-new-rule-name": "Nieuwe regelnaam",
"r-no-rules": "Geen regels",
"r-when-a-card": "When a card",
"r-when-a-card": "Als een kaart",
"r-is": "is",
"r-is-moved": "is moved",
"r-added-to": "added to",
"r-removed-from": "Removed from",
"r-the-board": "the board",
"r-list": "list",
"set-filter": "Set Filter",
"r-moved-to": "Moved to",
"r-moved-from": "Moved from",
"r-is-moved": "is verplaatst",
"r-added-to": "toegevoegd aan",
"r-removed-from": "verwijderd van",
"r-the-board": "het bord",
"r-list": "lijst",
"set-filter": "Definieer Filter",
"r-moved-to": "verplaatst naar",
"r-moved-from": "verplaatst van",
"r-archived": "Verplaatst naar Archief",
"r-unarchived": "Teruggehaald uit Archief",
"r-a-card": "a card",
"r-when-a-label-is": "When a label is",
"r-when-the-label": "When the label",
"r-list-name": "list name",
"r-when-a-member": "When a member is",
"r-when-the-member": "When the member",
"r-name": "name",
"r-a-card": "een kaart",
"r-when-a-label-is": "Als een label is",
"r-when-the-label": "Als het label",
"r-list-name": "lijstnaam",
"r-when-a-member": "Als een lid is",
"r-when-the-member": "Als het lid",
"r-name": "naam",
"r-when-a-attach": "Als een bijlage",
"r-when-a-checklist": "When a checklist is",
"r-when-the-checklist": "When the checklist",
"r-completed": "Completed",
"r-made-incomplete": "Made incomplete",
"r-when-a-item": "When a checklist item is",
"r-when-the-item": "When the checklist item",
"r-checked": "Checked",
"r-unchecked": "Unchecked",
"r-move-card-to": "Move card to",
"r-top-of": "Top of",
"r-bottom-of": "Bottom of",
"r-its-list": "its list",
"r-when-a-checklist": "Als een checklist is",
"r-when-the-checklist": "Als de checklist",
"r-completed": "Afgewerkt",
"r-made-incomplete": "Onafgewerkt gemaakt",
"r-when-a-item": "Als een checklist item is",
"r-when-the-item": "Als het checklist item",
"r-checked": "Aangevinkt",
"r-unchecked": "Uitgevinkt",
"r-move-card-to": "Verplaats kaart naar",
"r-top-of": "Bovenste van",
"r-bottom-of": "Onderste van",
"r-its-list": "zijn lijst",
"r-archive": "Verplaats naar Archief",
"r-unarchive": "Terughalen uit Archief",
"r-card": "card",
"r-card": "kaart",
"r-add": "Toevoegen",
"r-remove": "Remove",
"r-remove": "Verwijder",
"r-label": "label",
"r-member": "member",
"r-remove-all": "Remove all members from the card",
"r-member": "lid",
"r-remove-all": "Verwijder alle leden van de kaart",
"r-set-color": "Wijzig kleur naar",
"r-checklist": "checklist",
"r-check-all": "Check all",
"r-uncheck-all": "Uncheck all",
"r-items-check": "items of checklist",
"r-check": "Check",
"r-uncheck": "Uncheck",
"r-check-all": "Vink alles aan",
"r-uncheck-all": "Vink alles uit",
"r-items-check": "items van checklist",
"r-check": "Vink aan",
"r-uncheck": "Vink uit",
"r-item": "item",
"r-of-checklist": "of checklist",
"r-of-checklist": "van checklist",
"r-send-email": "Verzend een email",
"r-to": "to",
"r-subject": "subject",
"r-rule-details": "Rule details",
"r-d-move-to-top-gen": "Move card to top of its list",
"r-d-move-to-top-spec": "Move card to top of list",
"r-d-move-to-bottom-gen": "Move card to bottom of its list",
"r-d-move-to-bottom-spec": "Move card to bottom of list",
"r-to": "naar",
"r-subject": "onderwerp",
"r-rule-details": "Regel details",
"r-d-move-to-top-gen": "Verplaats kaart helemaal naar boven op de lijst",
"r-d-move-to-top-spec": "Verplaats kaart naar bovenaan op lijst",
"r-d-move-to-bottom-gen": "Verplaats kaart naar onderaan op de lijst",
"r-d-move-to-bottom-spec": "Verplaats kaart naar onderaan op lijst",
"r-d-send-email": "Verzend email",
"r-d-send-email-to": "to",
"r-d-send-email-subject": "subject",
"r-d-send-email-message": "message",
"r-d-send-email-to": "naar",
"r-d-send-email-subject": "onderwerp",
"r-d-send-email-message": "bericht",
"r-d-archive": "Verplaats kaart naar Archief",
"r-d-unarchive": "Haal kaart terug uit Archief",
"r-d-add-label": "Add label",
"r-d-remove-label": "Remove label",
"r-create-card": "Create new card",
"r-in-list": "in list",
"r-d-add-label": "Label toevoegen",
"r-d-remove-label": "Verwijder label",
"r-create-card": "Maak nieuwe kaart aan",
"r-in-list": "van lijst",
"r-in-swimlane": "in swimlane",
"r-d-add-member": "Add member",
"r-d-remove-member": "Remove member",
"r-d-remove-all-member": "Remove all member",
"r-d-check-all": "Check all items of a list",
"r-d-uncheck-all": "Uncheck all items of a list",
"r-d-check-one": "Check item",
"r-d-uncheck-one": "Uncheck item",
"r-d-check-of-list": "of checklist",
"r-d-add-checklist": "Add checklist",
"r-d-remove-checklist": "Remove checklist",
"r-by": "by",
"r-add-checklist": "Add checklist",
"r-with-items": "with items",
"r-items-list": "item1,item2,item3",
"r-add-swimlane": "Add swimlane",
"r-swimlane-name": "swimlane name",
"r-board-note": "Note: leave a field empty to match every possible value.",
"r-checklist-note": "Note: checklist's items have to be written as comma separated values.",
"r-when-a-card-is-moved": "When a card is moved to another list",
"r-set": "Set",
"r-update": "Update",
"r-datefield": "date field",
"r-df-start-at": "start",
"r-df-due-at": "due",
"r-d-add-member": "Lid toevoegen",
"r-d-remove-member": "Verwijder lid",
"r-d-remove-all-member": "Verwijder alle leden",
"r-d-check-all": "Vink alle items van een lijst aan",
"r-d-uncheck-all": "Vink alle items van een lijst uit",
"r-d-check-one": "Vink item aan",
"r-d-uncheck-one": "Vink item uit",
"r-d-check-of-list": "van checklist",
"r-d-add-checklist": "Checklist toevoegen",
"r-d-remove-checklist": "Verwijder checklist",
"r-by": "door",
"r-add-checklist": "Checklist toevoegen",
"r-with-items": "met items",
"r-items-list": "item1, item2, item3",
"r-add-swimlane": "Swimlane toevoegen",
"r-swimlane-name": "Swimlane-naam",
"r-board-note": "Let op: laat een veld leeg om er niet op te selecteren",
"r-checklist-note": "Let op: checklist items moeten geschreven worden als kommagescheiden waarden.",
"r-when-a-card-is-moved": "Als een kaart is verplaatst naar een andere lijst",
"r-set": "Wijzig",
"r-update": "Bijwerken",
"r-datefield": "datumveld",
"r-df-start-at": "begin",
"r-df-due-at": "verval",
"r-df-end-at": "einde",
"r-df-received-at": "ontvangen",
"r-to-current-datetime": "to current date/time",
"r-remove-value-from": "Remove value from",
"r-to-current-datetime": "naar huidige datum/tijd",
"r-remove-value-from": "Verwijder waarde van",
"ldap": "LDAP",
"oauth2": "OAuth2",
"cas": "CAS",
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout",
"hide-logo": "Hide Logo",
"authentication-method": "Authenticatiemethode",
"authentication-type": "Authenticatietype",
"custom-product-name": "Eigen Productnaam",
"layout": "Lay-out",
"hide-logo": "Verberg Logo",
"add-custom-html-after-body-start": "Voeg eigen HTML toe na <body> start",
"add-custom-html-before-body-end": "Voeg eigen HTML toe voor </body> einde",
"error-undefined": "Something went wrong",
"error-ldap-login": "An error occurred while trying to login",
"display-authentication-method": "Display Authentication Method",
"default-authentication-method": "Default Authentication Method",
"duplicate-board": "Duplicate Board",
"people-number": "The number of people is:",
"swimlaneDeletePopup-title": "Delete Swimlane ?",
"error-undefined": "Er is iets misgegaan",
"error-ldap-login": "Er is een fout opgetreden tijdens het inloggen",
"display-authentication-method": "Toon Authenticatiemethode",
"default-authentication-method": "Standaard Authenticatiemethode",
"duplicate-board": "Dupliceer Bord",
"people-number": "Het aantal gebruikers is:",
"swimlaneDeletePopup-title": "Swimlane verwijderen?",
"swimlane-delete-pop": "Alle acties zullen verwijderd worden van de activiteiten feed en je kunt de swimlane niet terughalen. Er is geen herstelmogelijkheid.",
"restore-all": "Restore all",
"delete-all": "Delete all",
"loading": "Loading, please wait.",
"previous_as": "last time was",
"act-a-dueAt": "modified due time to \nWhen: __timeValue__\nWhere: __card__\n previous due was __timeOldValue__",
"restore-all": "Haal alles terug",
"delete-all": "Verwijder alles",
"loading": "Laden, even geduld.",
"previous_as": "laatste keer was",
"act-a-dueAt": "vervaldatum gewijzigd naar \nOp: __timeValue__\nKaart: __card__\noude vervaldatum was __timeOldValue__",
"act-a-endAt": "einddatum gewijzigd naar __timeValue__ van (__timeOldValue__)",
"act-a-startAt": "modified starting time to __timeValue__ from (__timeOldValue__)",
"act-a-startAt": "begindatum gewijzigd naar __timeValue__ van (__timeOldValue__)",
"act-a-receivedAt": "ontvangstdatum gewijzigd naar __timeValue__ van (__timeOldValue__)",
"a-dueAt": "modified due time to be",
"a-dueAt": "vervaldatum gewijzigd naar",
"a-endAt": "einddatum gewijzigd naar",
"a-startAt": "modified starting time to be",
"a-startAt": "begindatum gewijzigd naar",
"a-receivedAt": "ontvangstdatum gewijzigd naar",
"almostdue": "current due time %s is approaching",
"pastdue": "current due time %s is past",
"duenow": "current due time %s is today",
"act-withDue": "__card__ due reminders [__board__]",
"act-almostdue": "was reminding the current due (__timeValue__) of __card__ is approaching",
"act-pastdue": "was reminding the current due (__timeValue__) of __card__ is past",
"act-duenow": "was reminding the current due (__timeValue__) of __card__ is now",
"act-atUserComment": "You were mentioned in [__board__] __card__",
"almostdue": "huidige vervaldatum %s nadert",
"pastdue": "huidige vervaldatum %s is verlopen",
"duenow": "huidige vervaldatum %s is vandaag",
"act-newDue": "__list__/__card__ heeft eerste vervaldatum herinnering [__board__]",
"act-withDue": "__list__/__card__ vervaldatum herinneringen [__board__]",
"act-almostdue": "wil je herinneren aan het naderen van de huidige vervaldatum (__timeValue__) van __card__ ",
"act-pastdue": "wil je herinneren aan het verlopen van de huidige vervaldatum (__timeValue__) van __card__ ",
"act-duenow": "wil je herinneren aan het vandaag verlopen van de huidige vervaldatum (__timeValue__) van __card__ ",
"act-atUserComment": "Je werd genoemd in [__board__] __list__/__card__",
"delete-user-confirm-popup": "Weet je zeker dat je dit account wilt verwijderen? Er is geen herstelmogelijkheid.",
"accounts-allowUserDelete": "Sta gebruikers toe om hun eigen account te verwijderen",
"hide-minicard-label-text": "Hide minicard label text"
"hide-minicard-label-text": "Verberg minikaart labeltekst",
"show-desktop-drag-handles": "Toon sleep gereedschap op werkblad"
}
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+741
View File
@@ -0,0 +1,741 @@
{
"accept": "Sprejmi",
"act-activity-notify": "Obvestilo o dejavnosti",
"act-addAttachment": "dodal priponko __attachment__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-deleteAttachment": "odstranil priponko __attachment__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addSubtask": "dodal podopravilo __subtask__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addLabel": "Dodal oznako __label__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addedLabel": "Dodal oznako __label__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removeLabel": "Odstranil oznako __label__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removedLabel": "Odstranil oznako __label__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addChecklist": "dodal kontrolni seznam __checklist__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addChecklistItem": "dodal postavko __checklistItem__ kontrolnega seznama __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removeChecklist": "odstranil kontrolni seznam __checklist__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removeChecklistItem": "odstranil postavko __checklistItem__ kontrolnega seznama __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-checkedItem": "obkljukal postavko __checklistItem__ kontrolnega seznama __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-uncheckedItem": "odkljukal postavko __checklistItem__ kontrolnega seznama __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-completeChecklist": "dokončal kontrolni seznam __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-uncompleteChecklist": "nedokončan kontrolni seznam __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addComment": "komentiral na kartici __card__: __comment__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-editComment": "uredil komentar na kartici __card__: __comment__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-deleteComment": "izbrisal komentar na kartici __card__: __comment__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-createBoard": "ustvaril tablo __board__",
"act-createSwimlane": "ustvaril plavalno stezo __swimlane__ na tabli __board__",
"act-createCard": "ustvaril kartico __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-createCustomField": "ustvaril poljubno polje __customField__ na tabli __board__",
"act-deleteCustomField": "izbrisal poljubno polje __customField__ na tabli __board__",
"act-setCustomField": "uredil poljubno polje __customField__: __customFieldValue__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-createList": "dodal seznam __list__ na tablo __board__",
"act-addBoardMember": "dodal člana __member__ k tabli __board__",
"act-archivedBoard": "Tabla __board__ premaknjena v arhiv",
"act-archivedCard": "Kartica __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__ premaknjena v arhiv",
"act-archivedList": "Seznam __list__ na plavalni stezi __swimlane__ na tabli __board__ premaknjen v arhiv",
"act-archivedSwimlane": "Plavalna steza __swimlane__ na tabli __board__ premaknjena v arhiv",
"act-importBoard": "uvozil tablo __board__",
"act-importCard": "uvozil kartico __card__ na seznam __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-importList": "uvozil seznam __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-joinMember": "dodal član __member__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-moveCard": "premakil kartico __card__ na tabli __board__ iz seznama __oldList__ na plavalni stezi __oldSwimlane__ na seznam __list__ na plavalni stezi __swimlane__",
"act-moveCardToOtherBoard": "premaknil kartico __card__ iz seznama __oldList__ na plavalni stezi __oldSwimlane__ na tabli __oldBoard__ na seznam __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removeBoardMember": "odstranil člana __member__ iz table __board__",
"act-restoredCard": "obnovil kartico __card__ na seznam __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-unjoinMember": "odstranil člana __member__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-withBoardTitle": "__board__",
"act-withCardTitle": "[__board__] __card__",
"actions": "Dejanja",
"activities": "Aktivnosti",
"activity": "Aktivnost",
"activity-added": "dodal %s v %s",
"activity-archived": "%s premaknjeno v arhiv",
"activity-attached": "pripel %s v %s",
"activity-created": "ustvaril %s",
"activity-customfield-created": "ustvaril poljubno polje%s",
"activity-excluded": "izključil %s iz %s",
"activity-imported": "uvozil %s v %s iz %s",
"activity-imported-board": "uvozil %s iz %s",
"activity-joined": "se je pridružil na %s",
"activity-moved": "premakil %s iz %s na %s",
"activity-on": "na %s",
"activity-removed": "odstranil %s iz %s",
"activity-sent": "poslano %s na %s",
"activity-unjoined": "se je odjavil iz %s",
"activity-subtask-added": "dodal podopravilo k %s",
"activity-checked-item": "obkljukal %s na kontrolnem seznamu %s od %s",
"activity-unchecked-item": "odkljukal %s na kontrolnem seznamu %s od %s",
"activity-checklist-added": "dodal kontrolni seznam na %s",
"activity-checklist-removed": "odstranil kontrolni seznam iz %s",
"activity-checklist-completed": "dokončal kontrolni seznam __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"activity-checklist-uncompleted": "nedokončal kontrolni seznam %s od %s",
"activity-checklist-item-added": "dodal postavko kontrolnega seznama na '%s' v %s",
"activity-checklist-item-removed": "odstranil postavko kontrolnega seznama iz '%s' v %s",
"add": "Dodaj",
"activity-checked-item-card": "obkljukal %s na kontrolnem seznamu %s",
"activity-unchecked-item-card": "odkljukal %s na kontrolnem seznamu %s",
"activity-checklist-completed-card": "dokončal kontrolni seznam __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"activity-checklist-uncompleted-card": "nedokončal kontrolni seznam %s",
"activity-editComment": "uredil komentar %s",
"activity-deleteComment": "izbrisal komentar %s",
"add-attachment": "Dodaj priponko",
"add-board": "Dodaj tablo",
"add-card": "Dodaj kartico",
"add-swimlane": "Dodaj plavalno stezo",
"add-subtask": "Dodaj podopravilo",
"add-checklist": "Dodaj kontrolni seznam",
"add-checklist-item": "Dodaj postavko na kontrolni seznam",
"add-cover": "Dodaj ovitek",
"add-label": "Dodaj oznako",
"add-list": "Dodaj seznam",
"add-members": "Dodaj člane",
"added": "Dodano",
"addMemberPopup-title": "Člani",
"admin": "Administrator",
"admin-desc": "Lahko gleda in ureja kartice, odstrani člane in spreminja nastavitve table.",
"admin-announcement": "Najava",
"admin-announcement-active": "Aktivna vse-sistemska najava",
"admin-announcement-title": "Najava od administratorja",
"all-boards": "Vse table",
"and-n-other-card": "In __count__ druga kartica",
"and-n-other-card_plural": "In __count__ drugih kartic",
"apply": "Uporabi",
"app-is-offline": "Nalaganje, prosimo počakajte. Osveževanje strani bo povzročilo izgubo podatkov. Če nalaganje ne deluje, preverite, ali se strežnik ni ustavil.",
"archive": "Premakni v arhiv",
"archive-all": "Premakni vse v arhiv",
"archive-board": "Premakni tablo v arhiv",
"archive-card": "Premakni kartico v arhiv",
"archive-list": "Premakni seznam v arhiv",
"archive-swimlane": "Premakni plavalno stezo v arhiv",
"archive-selection": "Premakni označeno v arhiv",
"archiveBoardPopup-title": "Premakni tablo v arhiv?",
"archived-items": "Arhiv",
"archived-boards": "Table v arhivu",
"restore-board": "Obnovi tablo",
"no-archived-boards": "Nobene table ni v arhivu.",
"archives": "Arhiv",
"template": "Predloga",
"templates": "Predloge",
"assign-member": "Dodeli člana",
"attached": "pripeto",
"attachment": "Priponka",
"attachment-delete-pop": "Brisanje priponke je trajno. Ne obstaja razveljavitev.",
"attachmentDeletePopup-title": "Briši priponko?",
"attachments": "Priponke",
"auto-watch": "Samodejno spremljaj ustvarjene table",
"avatar-too-big": "Velikost avatarja je prevelika (70kB maks.)",
"back": "Nazaj",
"board-change-color": "Spremeni barvo",
"board-nb-stars": "%s zvezdic",
"board-not-found": "Tabla ni najdena",
"board-private-info": "Ta tabla bo <strong>privatna</strong>.",
"board-public-info": "Ta tabla bo <strong>javna</strong>.",
"boardChangeColorPopup-title": "Spremeni ozadje table",
"boardChangeTitlePopup-title": "Preimenuj tablo",
"boardChangeVisibilityPopup-title": "Spremeni vidnost",
"boardChangeWatchPopup-title": "Spremeni opazovanje",
"boardMenuPopup-title": "Nastavitve table",
"boards": "Table",
"board-view": "Pogled table",
"board-view-cal": "Koledar",
"board-view-swimlanes": "Plavalne steze",
"board-view-lists": "Seznami",
"bucket-example": "Kot na primer \"Življenjski seznam\"",
"cancel": "Prekliči",
"card-archived": "Kartica je premaknjena v arhiv.",
"board-archived": "Tabla je premaknjena v arhiv.",
"card-comments-title": "Ta kartica ima %s komentar.",
"card-delete-notice": "Brisanje je trajno. Izgubili boste vsa dejanja povezana s to kartico.",
"card-delete-pop": "Vsa dejanja bodo odstranjena iz vira dejavnosti in kartice ne boste mogli znova odpreti. Razveljavitve ni.",
"card-delete-suggest-archive": "Kartico lahko premaknete v arhiv, da jo odstranite s table in ohranite dejavnost.",
"card-due": "Rok",
"card-due-on": "Rok",
"card-spent": "Porabljen čas",
"card-edit-attachments": "Uredi priponke",
"card-edit-custom-fields": "Uredi poljubna polja",
"card-edit-labels": "Uredi oznake",
"card-edit-members": "Uredi člane",
"card-labels-title": "Spremeni oznake za kartico.",
"card-members-title": "Dodaj ali odstrani člane table iz kartice.",
"card-start": "Začetek",
"card-start-on": "Začne ob",
"cardAttachmentsPopup-title": "Pripni od",
"cardCustomField-datePopup-title": "Spremeni datum",
"cardCustomFieldsPopup-title": "Uredi poljubna polja",
"cardDeletePopup-title": "Briši kartico?",
"cardDetailsActionsPopup-title": "Dejanja kartice",
"cardLabelsPopup-title": "Oznake",
"cardMembersPopup-title": "Člani",
"cardMorePopup-title": "Več",
"cardTemplatePopup-title": "Ustvari predlogo",
"cards": "Kartice",
"cards-count": "Kartic",
"casSignIn": "Vpiši se s CAS",
"cardType-card": "Kartica",
"cardType-linkedCard": "Povezana kartica",
"cardType-linkedBoard": "Povezana tabla",
"change": "Spremeni",
"change-avatar": "Spremeni avatar",
"change-password": "Spremeni geslo",
"change-permissions": "Spremeni dovoljenja",
"change-settings": "Spremeni nastavitve",
"changeAvatarPopup-title": "Spremeni avatar",
"changeLanguagePopup-title": "Spremeni jezik",
"changePasswordPopup-title": "Spremeni geslo",
"changePermissionsPopup-title": "Spremeni dovoljenja",
"changeSettingsPopup-title": "Spremeni nastavitve",
"subtasks": "Podopravila",
"checklists": "Kontrolni seznami",
"click-to-star": "Kliknite, da označite tablo z zvezdico.",
"click-to-unstar": "Kliknite, da odznačite tablo z zvezdico.",
"clipboard": "Odložišče ali povleci & spusti",
"close": "Zapri",
"close-board": "Zapri tablo",
"close-board-pop": "Tablo boste lahko obnovili s klikom na gumb »Arhiviraj« na začetni glavi.",
"color-black": "črna",
"color-blue": "modra",
"color-crimson": "temno rdeča",
"color-darkgreen": "temno zelena",
"color-gold": "zlata",
"color-gray": "siva",
"color-green": "zelena",
"color-indigo": "indigo",
"color-lime": "limeta",
"color-magenta": "magenta",
"color-mistyrose": "rožnata",
"color-navy": "navy modra",
"color-orange": "oranžna",
"color-paleturquoise": "bledo turkizna",
"color-peachpuff": "breskvasta",
"color-pink": "roza",
"color-plum": "slivova",
"color-purple": "vijolična",
"color-red": "rdeča",
"color-saddlebrown": "rjava",
"color-silver": "srebrna",
"color-sky": "nebesna",
"color-slateblue": "skrilasto modra",
"color-white": "bela",
"color-yellow": "rumena",
"unset-color": "Onemogoči",
"comment": "Komentiraj",
"comment-placeholder": "Napiši komentar",
"comment-only": "Samo komentar",
"comment-only-desc": "Lahko komentirate samo na karticah.",
"no-comments": "Ni komentarjev",
"no-comments-desc": "Ne morete videti komentarjev in dejavnosti.",
"computer": "Računalnik",
"confirm-subtask-delete-dialog": "Ste prepričani, da želite izbrisati podopravilo?",
"confirm-checklist-delete-dialog": "Ste prepričani, da želite izbrisati kontrolni seznam?",
"copy-card-link-to-clipboard": "Kopiraj povezavo kartice na odložišče",
"linkCardPopup-title": "Poveži kartico",
"searchElementPopup-title": "Išči",
"copyCardPopup-title": "Kopiraj kartico",
"copyChecklistToManyCardsPopup-title": "Kopiraj predlogo kontrolnega seznama na več kartic",
"copyChecklistToManyCardsPopup-instructions": "Naslovi ciljnih kartic in opisi v tem JSON formatu",
"copyChecklistToManyCardsPopup-format": "[ {\"naslov\": \"Naslov prve kartice\", \"opis\":\"Opis prve kartice\"}, {\"naslov\":\"Opis druge kartice\",\"opis\":\"Opis druge kartice\"},{\"naslov\":\"Naslov zadnje kartice\",\"opis\":\"Opis zadnje kartice\"} ]",
"create": "Ustvari",
"createBoardPopup-title": "Ustvari tablo",
"chooseBoardSourcePopup-title": "Uvozi tablo",
"createLabelPopup-title": "Ustvari oznako",
"createCustomField": "Ustvari polje",
"createCustomFieldPopup-title": "Ustvari polje",
"current": "trenutno",
"custom-field-delete-pop": "Razveljavitve ni. To bo odstranilo to poljubno polje iz vseh kartic in izbrisalo njegovo zgodovino.",
"custom-field-checkbox": "Potrditveno polje",
"custom-field-date": "Datum",
"custom-field-dropdown": "Spustni seznam",
"custom-field-dropdown-none": "(nobeno)",
"custom-field-dropdown-options": "Možnosti seznama",
"custom-field-dropdown-options-placeholder": "Pritisnite enter da dodate več možnosti",
"custom-field-dropdown-unknown": "(neznano)",
"custom-field-number": "Število",
"custom-field-text": "Besedilo",
"custom-fields": "Poljubna polja",
"date": "Datum",
"decline": "Zavrni",
"default-avatar": "Privzeti avatar",
"delete": "Briši",
"deleteCustomFieldPopup-title": "Briši poljubno polje?",
"deleteLabelPopup-title": "Briši oznako?",
"description": "Opis",
"disambiguateMultiLabelPopup-title": "Razdvoji Dejanje Oznake",
"disambiguateMultiMemberPopup-title": "Razdvoji dejanje člana",
"discard": "Razveljavi",
"done": "Končano",
"download": "Prenos",
"edit": "Uredi",
"edit-avatar": "Spremeni avatar",
"edit-profile": "Uredi profil",
"edit-wip-limit": "Uredi omejitev št. kartic",
"soft-wip-limit": "Omehčaj omejitev št. kartic",
"editCardStartDatePopup-title": "Spremeni začetni datum",
"editCardDueDatePopup-title": "Spremeni datum zapadlosti",
"editCustomFieldPopup-title": "Uredi polje",
"editCardSpentTimePopup-title": "Spremeni porabljen čas",
"editLabelPopup-title": "Spremeni oznako",
"editNotificationPopup-title": "Uredi obvestilo",
"editProfilePopup-title": "Uredi profil",
"email": "E-pošta",
"email-enrollAccount-subject": "Up. račun ustvarjen za vas na __siteName__",
"email-enrollAccount-text": "Pozdravljeni __user__,\n\nZa začetek uporabe kliknite spodnjo povezavo.\n\n__url__\n\nHvala.",
"email-fail": "Pošiljanje e-pošte ni uspelo",
"email-fail-text": "Napaka pri poskusu pošiljanja e-pošte",
"email-invalid": "Neveljavna e-pošta",
"email-invite": "Povabi z uporabo e-pošte",
"email-invite-subject": "__inviter__ vam je poslal povabilo",
"email-invite-text": "Spoštovani __user__,\n\n__inviter__ vas vabi k sodelovanju na tabli \"__board__\".\n\nProsimo sledite spodnji povezavi:\n\n__url__\n\nHvala.",
"email-resetPassword-subject": "Ponastavite geslo na __siteName__",
"email-resetPassword-text": "Pozdravljeni __user__,\n\nZa ponastavitev gesla kliknite na spodnjo povezavo.\n\n__url__\n\nHvala.",
"email-sent": "E-pošta poslana",
"email-verifyEmail-subject": "Preverite svoje e-poštni naslov na __siteName__",
"email-verifyEmail-text": "Pozdravljeni __user__,\n\nDa preverite e-poštni naslov za vaš uporabniški račun, kliknite na spodnjo povezavo.\n\n__url__\n\nHvala.",
"enable-wip-limit": "Vklopi omejitev št. kartic",
"error-board-doesNotExist": "Ta tabla ne obstaja",
"error-board-notAdmin": "Če želite to narediti, morate biti skrbnik te table",
"error-board-notAMember": "Če želite to narediti, morate biti član te table",
"error-json-malformed": "Vaše besedilo ni veljaven JSON",
"error-json-schema": "Vaši JSON podatki ne vsebujejo pravilnih informacij v ustreznem formatu",
"error-list-doesNotExist": "Seznam ne obstaja",
"error-user-doesNotExist": "Uporabnik ne obstaja",
"error-user-notAllowSelf": "Ne morete povabiti sebe",
"error-user-notCreated": "Ta uporabnik ni ustvarjen",
"error-username-taken": "To up. ime že obstaja",
"error-email-taken": "E-poštni naslov je že zaseden",
"export-board": "Izvozi tablo",
"filter": "Filtriraj",
"filter-cards": "Filtriraj kartice",
"filter-clear": "Počisti filter",
"filter-no-label": "Brez oznake",
"filter-no-member": "Brez člana",
"filter-no-custom-fields": "Brez poljubnih polj",
"filter-show-archive": "Prikaži arhivirane sezname",
"filter-hide-empty": "Skrij prazne sezname",
"filter-on": "Filter vklopljen",
"filter-on-desc": "Filtrirane kartice na tej tabli. Kliknite tukaj za urejanje filtra.",
"filter-to-selection": "Filtriraj izbrane",
"advanced-filter-label": "Napredni filter",
"advanced-filter-description": "Napredni filter omogoča pripravo niza, ki vsebuje naslednje operaterje: == != <= >= && || () Preslednica se uporablja kot ločilo med operatorji. Vsa polja po meri lahko filtrirate tako, da vtipkate njihova imena in vrednosti. Na primer: Polje1 == Vrednost1. Opomba: Če polja ali vrednosti vsebujejo presledke, jih morate postaviti v enojne narekovaje. Primer: 'Polje 1' == 'Vrednost 1'. Če želite preskočiti posamezne kontrolne znake (' \\/), lahko uporabite \\. Na primer: Polje1 == I\\'m. Prav tako lahko kombinirate več pogojev. Na primer: F1 == V1 || F1 == V2. Običajno se vsi operaterji interpretirajo od leve proti desni. Vrstni red lahko spremenite tako, da postavite oklepaje. Na primer: F1 == V1 && ( F2 == V2 || F2 == V3 ). Prav tako lahko po besedilu iščete z uporabo pravil regex: F1 == /Tes.*/i",
"fullname": "Polno Ime",
"header-logo-title": "Pojdi nazaj na stran s tablami.",
"hide-system-messages": "Skrij sistemska sporočila",
"headerBarCreateBoardPopup-title": "Ustvari tablo",
"home": "Domov",
"import": "Uvozi",
"link": "Poveži",
"import-board": "uvozi tablo",
"import-board-c": "Uvozi tablo",
"import-board-title-trello": "Uvozi tablo iz orodja Trello",
"import-board-title-wekan": "Uvozi tablo iz prejšnjega izvoza",
"import-sandstorm-backup-warning": "Ne zbrišite podatkov, ki jih uvozite z originalne izvožene table ali Trello, preden preverite ali se tabla uspešno zapre in odpre ali pa boste dobili sporočilo Tabla ni najdena, kar pomeni izgubo podatkov.",
"import-sandstorm-warning": "Uvožena tabla bo izbrisala vse obstoječe podatke na tabli in jih zamenjala z uvoženo tablo.",
"from-trello": "Iz orodja Trello",
"from-wekan": "Od prejšnjega izvoza",
"import-board-instruction-trello": "V vaši Trello tabli pojdite na 'Meni', 'Več', 'Natisni in Izvozi', 'Izvozi JSON', in kopirajte prikazano besedilo.",
"import-board-instruction-wekan": "V vaši tabli pojdite na 'Meni', 'Izvozi tablo' in kopirajte besedilo iz prenesene datoteke.",
"import-board-instruction-about-errors": "Pri napakah med uvozom table v nekaterih primerih uvažanje še deluje, uvožena tabla pa je na strani Vse Table.",
"import-json-placeholder": "Tukaj prilepite veljavne JSON podatke",
"import-map-members": "Mapiraj člane",
"import-members-map": "Vaša uvožena tabla vsebuje nekaj članov. Prosimo mapirajte člane, ki jih želite uvoziti, z vašimi uporabniki.",
"import-show-user-mapping": "Preglejte povezane člane",
"import-user-select": "Izberite obstoječega uporabnika, ki ga želite uporabiti kot tega člana.",
"importMapMembersAddPopup-title": "Izberite člana",
"info": "Različica",
"initials": "Inicialke",
"invalid-date": "Neveljaven datum",
"invalid-time": "Neveljaven čas",
"invalid-user": "Neveljaven uporabnik",
"joined": "se je pridružil",
"just-invited": "Povabljeni ste k tej tabli",
"keyboard-shortcuts": "Bližnjične tipke",
"label-create": "Ustvari Oznako",
"label-default": "%s oznaka (privzeto)",
"label-delete-pop": "Razveljavitve ni. To bo odstranilo to oznako iz vseh kartic in izbrisalo njeno zgodovino.",
"labels": "Oznake",
"language": "Jezik",
"last-admin-desc": "Ne morete zamenjati vlog, ker mora obstajati vsaj en admin.",
"leave-board": "Zapusti tablo",
"leave-board-pop": "Ste prepričani, da želite zapustiti tablo __boardTitle__? Odstranjeni boste iz vseh kartic na tej tabli.",
"leaveBoardPopup-title": "Zapusti tablo ?",
"link-card": "Poveži s to kartico",
"list-archive-cards": "Premakni vse kartice v tem seznamu v arhiv",
"list-archive-cards-pop": "To bo odstranilo vse kartice tega seznama iz table. Da si ogledate kartice v arhivu in jih vrnete na tablo, kliknite \"Meni\" > \"arhiv\".",
"list-move-cards": "Premakni vse kartice na seznamu",
"list-select-cards": "Izberi vse kartice na seznamu",
"set-color-list": "Nastavi barvo",
"listActionPopup-title": "Dejanja seznama",
"swimlaneActionPopup-title": "Dejanja plavalnih stez",
"swimlaneAddPopup-title": "Dodaj plavalno stezo spodaj",
"listImportCardPopup-title": "Uvozi Trello kartico",
"listMorePopup-title": "Več",
"link-list": "Poveži s tem seznamom",
"list-delete-pop": "Vsa dejanja bodo odstranjena iz vira dejavnosti in seznama ne boste mogli obnoviti. Razveljavitve ni.",
"list-delete-suggest-archive": "Lahko premaknete seznam v arhiv, da ga odstranite iz table in ohranite dejavnosti.",
"lists": "Seznami",
"swimlanes": "Plavalne steze",
"log-out": "Odjava",
"log-in": "Prijava",
"loginPopup-title": "Prijava",
"memberMenuPopup-title": "Nastavitve članov",
"members": "Člani",
"menu": "Meni",
"move-selection": "Premakni izbiro",
"moveCardPopup-title": "Premakni kartico",
"moveCardToBottom-title": "Premakni na dno",
"moveCardToTop-title": "Premakni na vrh",
"moveSelectionPopup-title": "Premakni izbiro",
"multi-selection": "Multi-Izbira",
"multi-selection-on": "Multi-Izbira je omogočena",
"muted": "Utišano",
"muted-info": "O spremembah na tej tabli nikoli ne boste obveščeni",
"my-boards": "Moje Table",
"name": "Ime",
"no-archived-cards": "Ni kartic v arhivu",
"no-archived-lists": "Ni seznamov v arhivu",
"no-archived-swimlanes": "Ni plavalnih stez v arhivu",
"no-results": "Ni zadetkov",
"normal": "Normalno",
"normal-desc": "Lahko gleda in ureja kartice. Ne more spreminjati nastavitev.",
"not-accepted-yet": "Povabilo še ni sprejeto.",
"notify-participate": "Prejemajte posodobitve kartic, na katerih sodelujete kot ustvarjalec ali član",
"notify-watch": "Prejemajte posodobitve opazovanih tabel, seznamov ali kartic",
"optional": "opcijsko",
"or": "ali",
"page-maybe-private": "Ta stran je mogoče privatna. Verjetno si jo lahko ogledate po<a href='%s'>prijavi</a>.",
"page-not-found": "Stran ne obstaja.",
"password": "Geslo",
"paste-or-dragdrop": "prilepi ali povleci & spusti datoteko slike (samo slika)",
"participating": "Sodelovanje",
"preview": "Predogled",
"previewAttachedImagePopup-title": "Predogled",
"previewClipboardImagePopup-title": "Predogled",
"private": "Zasebno",
"private-desc": "Ta tabla je zasebna. Samo dodani uporabniki lahko vidijo ali urejajo vsebino.",
"profile": "Profil",
"public": "Javno",
"public-desc": "Ta tabla je javna. Vidna je vsakomur s povezavo do table in bo prikazana v zadetkih iskalnikov kot Google. Samo uporabniki table jo lahko urejajo.",
"quick-access-description": "Če tablo označite z zvezdico, bo tukaj dodana bližnjica.",
"remove-cover": "Odstrani ovitek",
"remove-from-board": "Odstrani iz table",
"remove-label": "Odstrani oznako",
"listDeletePopup-title": "Odstrani seznam?",
"remove-member": "Odstrani člana",
"remove-member-from-card": "Odstrani iz kartice",
"remove-member-pop": "Odstrani __name__ (__username__) iz __boardTitle__? Član bo odstranjen iz vseh kartic te table in bo prejel obvestilo.",
"removeMemberPopup-title": "Odstrani člana?",
"rename": "Preimenuj",
"rename-board": "Preimenuj tablo",
"restore": "Obnovi",
"save": "Shrani",
"search": "Išči",
"rules": "Pravila",
"search-cards": "Išči po imenih kartic in opisih na tej tabli",
"search-example": "Besedilo za iskanje?",
"select-color": "Izberi barvo",
"set-wip-limit-value": "Nastavi omejitev maksimalnega števila opravil v tem seznamu",
"setWipLimitPopup-title": "Nastavi omejitev št. kartic",
"shortcut-assign-self": "Dodeli sebe k trenutni kartici",
"shortcut-autocomplete-emoji": "Samodokončaj emoji",
"shortcut-autocomplete-members": "Samodokončaj člane",
"shortcut-clear-filters": "Počisti vse filtre",
"shortcut-close-dialog": "Zapri dialog",
"shortcut-filter-my-cards": "Filtriraj moje kartice",
"shortcut-show-shortcuts": "Prikaži ta seznam bližnjic",
"shortcut-toggle-filterbar": "Preklopi stransko vrstico za filter",
"shortcut-toggle-sidebar": "Preklopi stransko vrstico table",
"show-cards-minimum-count": "Prikaži število kartic, če seznam vsebuje več kot",
"sidebar-open": "Odpri stransko vrstico",
"sidebar-close": "Zapri stransko vrstico",
"signupPopup-title": "Ustvari up. račun",
"star-board-title": "Kliknite, da označite to tablo z zvezdico. Prikazana bo na vrhu vašega seznama tabel.",
"starred-boards": "Table z zvezdico",
"starred-boards-description": "Table z zvezdico se prikažejo na vrhu vašega seznama tabel.",
"subscribe": "Naročite se",
"team": "Skupina",
"this-board": "to tablo",
"this-card": "kartico",
"spent-time-hours": "Porabljen čas (ure)",
"overtime-hours": "Presežen čas (ure)",
"overtime": "Presežen čas",
"has-overtime-cards": "Ima kartice s preseženim časom",
"has-spenttime-cards": "Ima kartice s porabljenim časom",
"time": "Čas",
"title": "Naslov",
"tracking": "Sledenje",
"tracking-info": "Obveščeni boste o vseh spremembah kartic, kjer sodelujete kot lastnik ali član.",
"type": "Tip",
"unassign-member": "Odjavi člana",
"unsaved-description": "Imate neshranjen opis.",
"unwatch": "Prekliči opazovanje",
"upload": "Naloži",
"upload-avatar": "Naloži avatar",
"uploaded-avatar": "Naložil avatar",
"username": "Up. ime",
"view-it": "Oglej",
"warn-list-archived": "opozorilo: ta kartica je v seznamu v arhivu",
"watch": "Opazuj",
"watching": "Opazuje",
"watching-info": "O spremembah na tej tabli boste obveščeni",
"welcome-board": "Tabla Dobrodošli",
"welcome-swimlane": "Mejnik 1",
"welcome-list1": "Osnove",
"welcome-list2": "Napredno",
"card-templates-swimlane": "Predloge kartice",
"list-templates-swimlane": "Predloge seznama",
"board-templates-swimlane": "Predloge table",
"what-to-do": "Kaj želite storiti?",
"wipLimitErrorPopup-title": "Neveljaven limit št. kartic",
"wipLimitErrorPopup-dialog-pt1": "Število opravil v tem seznamu je višje od definiranega limita št. kartic.",
"wipLimitErrorPopup-dialog-pt2": "Prosimo premaknite nekaj opravil iz tega seznama ali nastavite višji limit št. kartic.",
"admin-panel": "Skrbniška plošča",
"settings": "Nastavitve",
"people": "Ljudje",
"registration": "Registracija",
"disable-self-registration": "Onemogoči samo-registracijo",
"invite": "Povabi",
"invite-people": "Povabi ljudi",
"to-boards": "K tabli(am)",
"email-addresses": "E-poštni naslovi",
"smtp-host-description": "Naslov vašega strežnika SMTP.",
"smtp-port-description": "Vrata vašega strežnika SMTP za odhodno pošto.",
"smtp-tls-description": "Omogoči šifriranje TLS za SMTP strežnik.",
"smtp-host": "SMTP gostitelj",
"smtp-port": "SMTP vrata",
"smtp-username": "Up. ime",
"smtp-password": "Geslo",
"smtp-tls": "TLS podpora",
"send-from": "Od",
"send-smtp-test": "Pošljite testno e-pošto na svoj naslov",
"invitation-code": "Koda Povabila",
"email-invite-register-subject": "__inviter__ vam je poslal povabilo",
"email-invite-register-text": "Dragi __user__,\n\n__inviter__ vas vabi na kanban tablo za sodelovanje.\n\nProsimo sledite spodnji povezavi:\n__url__\n\nVaša koda povabila je: __icode__\n\nHvala.",
"email-smtp-test-subject": "SMTP testna e-pošta",
"email-smtp-test-text": "Uspešno ste poslali e-pošto",
"error-invitation-code-not-exist": "Koda povabila ne obstaja",
"error-notAuthorized": "Nimate pravic za ogled te strani.",
"webhook-title": "Ime spletnega vmesnika (webhook)",
"webhook-token": "Žeton (opcijsko za avtentikacijo)",
"outgoing-webhooks": "Izhodni spletni vmesniki (webhooks)",
"bidirectional-webhooks": "Dvo-smerni spletni vmesniki (webhooks)",
"outgoingWebhooksPopup-title": "Izhodni spletni vmesniki (webhooks)",
"boardCardTitlePopup-title": "Filter po naslovu kartice",
"disable-webhook": "Onemogoči ta spletni vmesnik (webhook)",
"global-webhook": "Globalni spletni vmesnik (webhook)",
"new-outgoing-webhook": "Nov izhodni spletni vmesnik (webhook)",
"no-name": "(Neznano)",
"Node_version": "Node različica",
"Meteor_version": "Meteor različica",
"MongoDB_version": "MongoDB različica",
"MongoDB_storage_engine": "MongoDB storage engine",
"MongoDB_Oplog_enabled": "MongoDB Oplog omogočen",
"OS_Arch": "OS Arhitektura",
"OS_Cpus": "OS število CPU",
"OS_Freemem": "OS prost pomnilnik",
"OS_Loadavg": "OS povp. obremenitev",
"OS_Platform": "OS platforma",
"OS_Release": "OS izdaja",
"OS_Totalmem": "OS skupni pomnilnik",
"OS_Type": "OS tip",
"OS_Uptime": "OS čas delovanja",
"days": "dnevi",
"hours": "ure",
"minutes": "minute",
"seconds": "sekunde",
"show-field-on-card": "Prikaži to polje na kartici",
"automatically-field-on-card": "Samodejno dodaj polja na vse kartice",
"showLabel-field-on-card": "Prikaži oznako polja na mini kartici",
"yes": "Da",
"no": "Ne",
"accounts": "Up. računi",
"accounts-allowEmailChange": "Dovoli spremembo e-poštnega naslova",
"accounts-allowUserNameChange": "Dovoli spremembo up. imena",
"createdAt": "Ustvarjen ob",
"verified": "Preverjeno",
"active": "Aktivno",
"card-received": "Prejeto",
"card-received-on": "Prejeto ob",
"card-end": "Konec",
"card-end-on": "Končano na",
"editCardReceivedDatePopup-title": "Spremeni datum prejema",
"editCardEndDatePopup-title": "Spremeni končni datum",
"setCardColorPopup-title": "Nastavi barvo",
"setCardActionsColorPopup-title": "Izberi barvo",
"setSwimlaneColorPopup-title": "Izberi barvo",
"setListColorPopup-title": "Izberi barvo",
"assigned-by": "Dodelil",
"requested-by": "Zahteval",
"board-delete-notice": "Brisanje je trajno. Izgubili boste vse sezname, kartice in akcije, povezane z desko.",
"delete-board-confirm-popup": "Vsi seznami, kartice, oznake in dejavnosti bodo izbrisani in vsebine table ne boste mogli obnoviti. Razveljavitve ni.",
"boardDeletePopup-title": "Izbriši tablo?",
"delete-board": "Izbriši tablo",
"default-subtasks-board": "Podopravila za tablo",
"default": "Privzeto",
"queue": "Čakalna vrsta",
"subtask-settings": "Nastavitve podopravil",
"boardSubtaskSettingsPopup-title": "Nastavitve podopravil table",
"show-subtasks-field": "Dovoli pod-poravila na karticah",
"deposit-subtasks-board": "Deponiraj podopravila na tole tablo:",
"deposit-subtasks-list": "Ciljni seznam za deponirana podopravila:",
"show-parent-in-minicard": "Pokaži starša na mini-kartici:",
"prefix-with-full-path": "Predpona s celotno potjo",
"prefix-with-parent": "Predpona s staršem",
"subtext-with-full-path": "Podbesedilo s celotno potjo",
"subtext-with-parent": "Podbesedilo s staršem",
"change-card-parent": "Zamenjaj starša kartice",
"parent-card": "Starševska kartica",
"source-board": "Izvorna tabla",
"no-parent": "Ne prikaži starša",
"activity-added-label": "dodal oznako '%s' do %s",
"activity-removed-label": "odstranil oznako '%s' od %s",
"activity-delete-attach": "izbrisal priponko od %s",
"activity-added-label-card": "dodal oznako '%s'",
"activity-removed-label-card": "izbrisal oznako '%s'",
"activity-delete-attach-card": "izbrisal priponko",
"activity-set-customfield": "nastavi polje po meri '%s' do '%s' v %s",
"activity-unset-customfield": "zbriši polje po meri '%s' v %s",
"r-rule": "Pravilo",
"r-add-trigger": "Dodaj prožilec",
"r-add-action": "Dodaj akcijo",
"r-board-rules": "Pravila table",
"r-add-rule": "Dodaj pravilo",
"r-view-rule": "Poglej pravilo",
"r-delete-rule": "Izbriši pravilo",
"r-new-rule-name": "Ime novega pravila",
"r-no-rules": "Ni pravil",
"r-when-a-card": "Ko je kartica",
"r-is": " ",
"r-is-moved": "premaknjena",
"r-added-to": "dodan na",
"r-removed-from": "izbrisan iz",
"r-the-board": "tabla",
"r-list": "seznam",
"set-filter": "Nastavi filter",
"r-moved-to": "premaknjena v",
"r-moved-from": "premaknjena iz",
"r-archived": "premaknjena v arhiv",
"r-unarchived": "obnovljena iz arhiva",
"r-a-card": "kartico",
"r-when-a-label-is": "Ko je oznaka",
"r-when-the-label": "Ko je oznaka",
"r-list-name": "ime sezn.",
"r-when-a-member": "Ko je član",
"r-when-the-member": "Ko je član",
"r-name": "ime",
"r-when-a-attach": "Ko je priponka",
"r-when-a-checklist": "Ko je kontrolni seznam",
"r-when-the-checklist": "Ko kontrolni seznam",
"r-completed": "zaključen",
"r-made-incomplete": "nastavljen kot nedokončan",
"r-when-a-item": "Ko je kontrolni seznam",
"r-when-the-item": "Ko je element kontrolnega seznama",
"r-checked": "označen",
"r-unchecked": "odznačen",
"r-move-card-to": "Premakni kartico na",
"r-top-of": "Vrh",
"r-bottom-of": "Dno",
"r-its-list": "pripadajočega seznama",
"r-archive": "premaknjena v arhiv",
"r-unarchive": "Obnovi iz arhiva",
"r-card": "kartico",
"r-add": "Dodaj",
"r-remove": "Odstrani",
"r-label": "oznaka",
"r-member": "član",
"r-remove-all": "Izbriši vse člane iz kartice",
"r-set-color": "Nastavi barvo na",
"r-checklist": "kontrolni seznam",
"r-check-all": "Označi vse",
"r-uncheck-all": "Odznači vse",
"r-items-check": "postavke kontrolnega lista",
"r-check": "Označi",
"r-uncheck": "Odznači",
"r-item": "postavka",
"r-of-checklist": "kontrolnega seznama",
"r-send-email": "Pošlji e-pošto",
"r-to": "naslovnik",
"r-subject": "zadeva",
"r-rule-details": "Podrobnosti pravila",
"r-d-move-to-top-gen": "Premakni kartico na vrh pripadajočega sezama",
"r-d-move-to-top-spec": "Premakni kartico na vrh seznama",
"r-d-move-to-bottom-gen": "Premakni kartico na dno pripadajočega seznama",
"r-d-move-to-bottom-spec": "Premakni kartico na dno seznama",
"r-d-send-email": "Pošlji e-pošto",
"r-d-send-email-to": "na",
"r-d-send-email-subject": "zadeva",
"r-d-send-email-message": "vsebina",
"r-d-archive": "Premakni kartico v arhiv",
"r-d-unarchive": "Obnovi kartico iz arhiva",
"r-d-add-label": "Dodaj oznako",
"r-d-remove-label": "Izbriši oznako",
"r-create-card": "Ustvari novo kartico",
"r-in-list": "v seznamu",
"r-in-swimlane": "v plavalni stezi",
"r-d-add-member": "Dodaj člana",
"r-d-remove-member": "Odstrani člana",
"r-d-remove-all-member": "Odstrani vse člane",
"r-d-check-all": "Označi vse elemente seznama",
"r-d-uncheck-all": "Odznači vse elemente seznama",
"r-d-check-one": "Označi element",
"r-d-uncheck-one": "Odznači element",
"r-d-check-of-list": "kontrolnega seznama",
"r-d-add-checklist": "Dodaj kontrolni list",
"r-d-remove-checklist": "Odstrani kotrolni list",
"r-by": "od",
"r-add-checklist": "Dodaj kontrolni list",
"r-with-items": "s postavkami",
"r-items-list": "el1,el2,el3",
"r-add-swimlane": "Dodaj plavalno stezo",
"r-swimlane-name": "ime pl. steze",
"r-board-note": "Opomba: polje pustite prazno, da ustreza vsaki možni vrednosti.",
"r-checklist-note": "Opomba: elementi kontrolnega seznama morajo biti zapisani kot vrednosti, ločene z vejicami.",
"r-when-a-card-is-moved": "Ko je kartica premaknjena v drug seznam",
"r-set": "Nastavi",
"r-update": "Posodobi",
"r-datefield": "polje z datumom",
"r-df-start-at": "začetek",
"r-df-due-at": "rok",
"r-df-end-at": "konec",
"r-df-received-at": "prejeto",
"r-to-current-datetime": "v trenutni datum/čas",
"r-remove-value-from": "Izbriši vrednost iz",
"ldap": "LDAP",
"oauth2": "OAuth2",
"cas": "CAS",
"authentication-method": "Metoda avtentikacije",
"authentication-type": "Način avtentikacije",
"custom-product-name": "Ime izdelka po meri",
"layout": "Postavitev",
"hide-logo": "Skrij logo",
"add-custom-html-after-body-start": "Dodaj HTML po meri po <body> začetku",
"add-custom-html-before-body-end": "Dodaj HMTL po meri po </body> koncu",
"error-undefined": "Prišlo je do napake",
"error-ldap-login": "Prišlo je do napake ob prijavi",
"display-authentication-method": "Prikaži metodo avtentikacije",
"default-authentication-method": "Privzeta metoda avtentikacije",
"duplicate-board": "Dupliciraj tablo",
"people-number": "Število ljudi je:",
"swimlaneDeletePopup-title": "Zbriši plavalno stezo?",
"swimlane-delete-pop": "Vsa dejanja bodo odstranjena iz seznama dejavnosti. Plavalne steze ne boste mogli obnoviti. Razveljavitve ni.",
"restore-all": "Obnovi vse",
"delete-all": "Izbriši vse",
"loading": "Nalagam, prosimo počakajte",
"previous_as": "zadnji čas je bil",
"act-a-dueAt": "spremenil rok zapadlosti na \nKdaj: __timeValue__\nKje: __card__\n prejšnji rok zapadlosti je bil __timeOldValue__",
"act-a-endAt": "spremenil čas dokončanja na __timeValue__ iz (__timeOldValue__)",
"act-a-startAt": "spremenil čas pričetka na __timeValue__ iz (__timeOldValue__)",
"act-a-receivedAt": "spremenil čas prejema na __timeValue__ iz (__timeOldValue__)",
"a-dueAt": "spremenil rok v",
"a-endAt": "spremenil končni čas v",
"a-startAt": "spremenil začetni čas v",
"a-receivedAt": "spremenil čas prejetja v",
"almostdue": "trenutni rok %s se približuje",
"pastdue": "trenutni rok %s je potekel",
"duenow": "trenutni rok %s je danes",
"act-newDue": "__list__/__card__ ima 1. opomnik roka zapadlosti [__board__]",
"act-withDue": "__list__/__card__ opomniki roka zapadlosti [__board__]",
"act-almostdue": "je opomnil trenuten rok zapadlosti (__timeValue__) kartice __card__ se bliža",
"act-pastdue": "je opomnil trenuten rok zapadlosti (__timeValue__) kartice __card__ je potekel",
"act-duenow": "je opomnil trenuten rok zapadlosti (__timeValue__) kartice __card__ je sedaj",
"act-atUserComment": "Omenjeni ste bili v [__board__] __list__/__card__",
"delete-user-confirm-popup": "Ali ste prepričani, da želite izbrisati ta račun? Razveljavitve ni.",
"accounts-allowUserDelete": "Dovoli uporabnikom, da sami izbrišejo svoj račun",
"hide-minicard-label-text": "Skrij besedilo oznak na karticah",
"show-desktop-drag-handles": "Pokaži ročke za povleko na namizju"
}
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+12 -5
View File
@@ -510,9 +510,14 @@
"email-smtp-test-text": "E-Posta başarıyla gönderildi",
"error-invitation-code-not-exist": "Davetiye kodu bulunamadı",
"error-notAuthorized": "Bu sayfayı görmek için yetkiniz yok.",
"webhook-title": "Webhook Name",
"webhook-token": "Token (Optional for Authentication)",
"outgoing-webhooks": "Dışarı giden bağlantılar",
"bidirectional-webhooks": "Two-Way Webhooks",
"outgoingWebhooksPopup-title": "Dışarı giden bağlantılar",
"boardCardTitlePopup-title": "Kart Başlığı Filtresi",
"disable-webhook": "Disable This Webhook",
"global-webhook": "Global Webhooks",
"new-outgoing-webhook": "Yeni Dışarı Giden Web Bağlantısı",
"no-name": "(Bilinmeyen)",
"Node_version": "Node sürümü",
@@ -723,12 +728,14 @@
"almostdue": "current due time %s is approaching",
"pastdue": "current due time %s is past",
"duenow": "current due time %s is today",
"act-withDue": "__card__ due reminders [__board__]",
"act-newDue": "__list__/__card__ has 1st due reminder [__board__]",
"act-withDue": "__list__/__card__ due reminders [__board__]",
"act-almostdue": "was reminding the current due (__timeValue__) of __card__ is approaching",
"act-pastdue": "was reminding the current due (__timeValue__) of __card__ is past",
"act-duenow": "was reminding the current due (__timeValue__) of __card__ is now",
"act-atUserComment": "You were mentioned in [__board__] __card__",
"delete-user-confirm-popup": "Are you sure you want to delete this account? There is no undo.",
"accounts-allowUserDelete": "Allow users to self delete their account",
"hide-minicard-label-text": "Hide minicard label text"
"act-atUserComment": "You were mentioned in [__board__] __list__/__card__",
"delete-user-confirm-popup": "Bu kullanıcı hesabını silmek istediğinize emin misiniz? Bu işlemi geri alamazsınız.",
"accounts-allowUserDelete": "Kullanıcılara hesaplarını silmek için izin ver.",
"hide-minicard-label-text": "Mini kart etiklerini gizle",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+10 -3
View File
@@ -510,9 +510,14 @@
"email-smtp-test-text": "你已成功发送邮件",
"error-invitation-code-not-exist": "邀请码不存在",
"error-notAuthorized": "您无权查看此页面。",
"webhook-title": "Webhook名称",
"webhook-token": "Token(认证选项)",
"outgoing-webhooks": "外部Web挂钩",
"bidirectional-webhooks": "双向Webhook",
"outgoingWebhooksPopup-title": "外部Web挂钩",
"boardCardTitlePopup-title": "卡片标题过滤",
"disable-webhook": "禁用Webhook",
"global-webhook": "全局Webhook",
"new-outgoing-webhook": "新建外部Web挂钩",
"no-name": "(未知)",
"Node_version": "Node.js版本",
@@ -723,12 +728,14 @@
"almostdue": "当前到期时间%s即将到来",
"pastdue": "当前到期时间%s已过",
"duenow": "当前到期时间%s为今天",
"act-withDue": "__card__ 到期提醒[__board__]",
"act-newDue": "__list__/__card__ 有 1st 到期提醒 [__board__]",
"act-withDue": "__list__/__card__ 到期提醒 [__board__]",
"act-almostdue": "__card__ 的当前到期提醒(__timeValue__) 正在接近",
"act-pastdue": "__card__ 的当前到期提醒(__timeValue__) 已经过去了",
"act-duenow": "__card__ 的当前到期提醒(__timeValue__) 现在到期",
"act-atUserComment": "您在 [__board__] __card__中被提到",
"act-atUserComment": "[__board__] __list__/__card__ 提到了您",
"delete-user-confirm-popup": "确实要删除此帐户吗?此操作无法撤销。",
"accounts-allowUserDelete": "允许用户自行删除其帐户",
"hide-minicard-label-text": "隐藏迷你卡片标签文本"
"hide-minicard-label-text": "隐藏迷你卡片标签文本",
"show-desktop-drag-handles": "显示桌面拖放手柄"
}
+740 -733
View File
File diff suppressed because it is too large. Load diff
+740 -733
View File
File diff suppressed because it is too large. Load diff
+2
View File
@@ -20,6 +20,8 @@ AccountSettings.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+10
View File
@@ -14,6 +14,16 @@ Actions.allow({
},
});
Actions.before.insert((userId, doc) => {
doc.createdAt = new Date();
doc.modifiedAt = doc.createdAt;
});
Actions.before.update((userId, doc, fieldNames, modifier) => {
modifier.$set = modifier.$set || {};
modifier.$set.modifiedAt = new Date();
});
Actions.helpers({
description() {
return this.desc;
+48 -22
View File
@@ -62,8 +62,14 @@ Activities.helpers({
//},
});
Activities.before.update((userId, doc, fieldNames, modifier) => {
modifier.$set = modifier.$set || {};
modifier.$set.modifiedAt = new Date();
});
Activities.before.insert((userId, doc) => {
doc.createdAt = new Date();
doc.modifiedAt = doc.createdAt;
});
Activities.after.insert((userId, doc) => {
@@ -174,25 +180,34 @@ if (Meteor.isServer) {
const comment = activity.comment();
params.comment = comment.text;
if (board) {
const atUser = /(?:^|>|\b|\s)@(\S+)(?:\s|$|<|\b)/g;
const comment = params.comment;
if (comment.match(atUser)) {
const commenter = params.user;
while (atUser.exec(comment)) {
const username = RegExp.$1;
if (commenter === username) {
// it's person at himself, ignore it?
continue;
}
const user = Users.findOne(username) || Users.findOne({ username });
const uid = user && user._id;
params.atUsername = username;
params.atEmails = user.emails;
if (board.hasMember(uid)) {
title = 'act-atUserComment';
watchers = _.union(watchers, [uid]);
}
const knownUsers = board.members.map(member => {
const u = Users.findOne(member.userId);
if (u) {
member.username = u.username;
member.emails = u.emails;
}
return member;
});
const mentionRegex = /\B@(?:(?:"([\w.\s]*)")|([\w.]+))/gi; // including space in username
let currentMention;
while ((currentMention = mentionRegex.exec(comment)) !== null) {
/*eslint no-unused-vars: ["error", { "varsIgnorePattern": "[iI]gnored" }]*/
const [ignored, quoteduser, simple] = currentMention;
const username = quoteduser || simple;
if (username === params.user) {
// ignore commenter mention himself?
continue;
}
const atUser = _.findWhere(knownUsers, { username });
if (!atUser) {
continue;
}
const uid = atUser.userId;
params.atUsername = username;
params.atEmails = atUser.emails;
title = 'act-atUserComment';
watchers = _.union(watchers, [uid]);
}
}
params.commentId = comment._id;
@@ -227,8 +242,8 @@ if (Meteor.isServer) {
(!activity.timeKey || activity.timeKey === 'dueAt') &&
activity.timeValue
) {
// due time reminder
title = 'act-withDue';
// due time reminder, if it doesn't have old value, it's a brand new set, need some differentiation
title = activity.timeOldValue ? 'act-withDue' : 'act-newDue';
}
['timeValue', 'timeOldValue'].forEach(key => {
// copy time related keys & values to params
@@ -268,13 +283,24 @@ if (Meteor.isServer) {
});
const integrations = Integrations.find({
boardId: board._id,
type: 'outgoing-webhooks',
boardId: { $in: [board._id, Integrations.Const.GLOBAL_WEBHOOK_ID] },
// type: 'outgoing-webhooks', // all types
enabled: true,
activities: { $in: [description, 'all'] },
}).fetch();
if (integrations.length > 0) {
Meteor.call('outgoingWebhooks', integrations, description, params);
params.watchers = watchers;
integrations.forEach(integration => {
Meteor.call(
'outgoingWebhooks',
integration,
description,
params,
() => {
return;
},
);
});
}
});
}
+2
View File
@@ -25,6 +25,8 @@ Announcements.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+9
View File
@@ -55,6 +55,8 @@ Boards.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
@@ -697,6 +699,13 @@ Boards.helpers({
return result;
},
cardsDueInBetween(start, end) {
return Cards.find({
boardId: this._id,
dueAt: { $gte: start, $lte: end },
});
},
cardsInInterval(start, end) {
return Cards.find({
boardId: this._id,
+2
View File
@@ -34,6 +34,8 @@ CardComments.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+38 -8
View File
@@ -107,6 +107,8 @@ Cards.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
@@ -1556,6 +1558,7 @@ function cardRemover(userId, doc) {
const findDueCards = days => {
const seekDue = ($from, $to, activityType) => {
Cards.find({
archived: false,
dueAt: { $gte: $from, $lt: $to },
}).forEach(card => {
const username = Users.findOne(card.userId).username;
@@ -1576,18 +1579,38 @@ const findDueCards = days => {
const now = new Date(),
aday = 3600 * 24 * 1e3,
then = day => new Date(now.setHours(0, 0, 0, 0) + day * aday);
seekDue(then(1), then(days), 'almostdue');
seekDue(then(0), then(1), 'duenow');
seekDue(then(-days), now, 'pastdue');
if (!days) return;
if (!days.map) days = [days];
days.map(day => {
let args = [];
if (day === 0) {
args = [then(0), then(1), 'duenow'];
} else if (day > 0) {
args = [then(1), then(day), 'almostdue'];
} else {
args = [then(day), now, 'pastdue'];
}
seekDue(...args);
});
};
const addCronJob = _.debounce(
Meteor.bindEnvironment(function findDueCardsDebounced() {
const notifydays =
parseInt(process.env.NOTIFY_DUE_DAYS_BEFORE_AND_AFTER, 10) || 2; // default as 2 days before and after
if (!(notifydays > 0 && notifydays < 15)) {
// notifying due is disabled
const envValue = process.env.NOTIFY_DUE_DAYS_BEFORE_AND_AFTER;
if (!envValue) {
return;
}
const notifydays = envValue
.split(',')
.map(value => {
const iValue = parseInt(value, 10);
if (!(iValue > 0 && iValue < 15)) {
// notifying due is disabled
return false;
} else {
return iValue;
}
})
.filter(Boolean);
const notifyitvl = process.env.NOTIFY_DUE_AT_HOUR_OF_DAY; //passed in the itvl has to be a number standing for the hour of current time
const defaultitvl = 8; // default every morning at 8am, if the passed env variable has parsing error use default
const itvl = parseInt(notifyitvl, 10) || defaultitvl;
@@ -1829,8 +1852,15 @@ if (Meteor.isServer) {
const check = Users.findOne({
_id: req.body.authorId,
});
const members = req.body.members || [req.body.authorId];
if (typeof check !== 'undefined') {
let members = req.body.members || [];
if (_.isString(members)) {
if (members === '') {
members = [];
} else {
members = [members];
}
}
const id = Cards.direct.insert({
title: req.body.title,
boardId: paramBoardId,
+2
View File
@@ -44,6 +44,8 @@ ChecklistItems.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+13 -2
View File
@@ -35,6 +35,8 @@ Checklists.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
@@ -274,6 +276,7 @@ if (Meteor.isServer) {
* @param {string} boardId the board ID
* @param {string} cardId the card ID
* @param {string} title the title of the new checklist
* @param {string} [items] the list of items on the new checklist
* @return_type {_id: string}
*/
JsonRoutes.add(
@@ -289,11 +292,19 @@ if (Meteor.isServer) {
sort: 0,
});
if (id) {
req.body.items.forEach(function(item, idx) {
let items = req.body.items || [];
if (_.isString(items)) {
if (items === '') {
items = [];
} else {
items = [items];
}
}
items.forEach(function(item, idx) {
ChecklistItems.insert({
cardId: paramCardId,
checklistId: id,
title: item.title,
title: item,
sort: idx,
});
});
+2
View File
@@ -78,6 +78,8 @@ CustomFields.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+20 -4
View File
@@ -63,6 +63,8 @@ Integrations.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
@@ -88,16 +90,30 @@ Integrations.attachSchema(
},
}),
);
Integrations.Const = {
GLOBAL_WEBHOOK_ID: '_global',
ONEWAY: 'outgoing-webhooks',
TWOWAY: 'bidirectional-webhooks',
get WEBHOOK_TYPES() {
return [this.ONEWAY, this.TWOWAY];
},
};
const permissionHelper = {
allow(userId, doc) {
const user = Users.findOne(userId);
const isAdmin = user && Meteor.user().isAdmin;
return isAdmin || allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
},
};
Integrations.allow({
insert(userId, doc) {
return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
return permissionHelper.allow(userId, doc);
},
update(userId, doc) {
return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
return permissionHelper.allow(userId, doc);
},
remove(userId, doc) {
return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
return permissionHelper.allow(userId, doc);
},
fetch: ['boardId'],
});
+2
View File
@@ -18,6 +18,8 @@ InvitationCodes.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+2
View File
@@ -45,6 +45,8 @@ Lists.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+2
View File
@@ -98,6 +98,8 @@ Org.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+2
View File
@@ -49,6 +49,8 @@ OrgUser.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+2
View File
@@ -27,6 +27,8 @@ Rules.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+2
View File
@@ -60,6 +60,8 @@ Settings.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+2
View File
@@ -38,6 +38,8 @@ Swimlanes.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+10
View File
@@ -12,6 +12,16 @@ Triggers.mutations({
},
});
Triggers.before.insert((userId, doc) => {
doc.createdAt = new Date();
doc.updatedAt = doc.createdAt;
});
Triggers.before.update((userId, doc, fieldNames, modifier) => {
modifier.$set = modifier.$set || {};
modifier.$set.updatedAt = new Date();
});
Triggers.allow({
insert(userId, doc) {
return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
+2
View File
@@ -29,6 +29,8 @@ UnsavedEditCollection.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
+3
View File
@@ -54,6 +54,8 @@ Users.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
} else if (this.isUpsert) {
return { $setOnInsert: new Date() };
} else {
this.unset();
}
@@ -539,6 +541,7 @@ Users.mutations({
Meteor.methods({
setUsername(username, userId) {
check(username, String);
check(userId, String);
const nUsersWithUsername = Users.find({ username }).count();
if (nUsersWithUsername > 0) {
throw new Meteor.Error('username-already-taken');
+4 -4
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v3.34.0",
"version": "v3.47.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -25,9 +25,9 @@
}
},
"@babel/runtime": {
"version": "7.5.5",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.5.5.tgz",
"integrity": "sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ==",
"version": "7.6.2",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.6.2.tgz",
"integrity": "sha512-EXxN64agfUqqIGeEjI5dL5z0Sw0ZwWo1mLTi4mQowCZ42O59b7DRpZAnTC6OqdF28wMBMFKNb/4uFGrVaigSpg==",
"requires": {
"regenerator-runtime": "^0.13.2"
}
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v3.34.0",
"version": "v3.47.0",
"description": "Open-Source kanban",
"private": true,
"scripts": {
@@ -53,7 +53,7 @@
"prettier-eslint": "^8.8.2"
},
"dependencies": {
"@babel/runtime": "^7.5.5",
"@babel/runtime": "^7.6.2",
"ajv": "^5.0.0",
"babel-runtime": "^6.26.0",
"bcrypt": "^3.0.2",
Loaded 100 of 117 files, more files were not shown because too many files have changed in this diff. Show more