mirror of
https://github.com/wekan/wekan.git
synced 2026-11-08 21:44:59 -05:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
541dc67a02 | ||
|
|
d0611e1bff | ||
|
|
523ebea4dd | ||
|
|
bccfa320a9 | ||
|
|
72d0db7a59 | ||
|
|
ed0ef5b7d3 | ||
|
|
5619eef620 | ||
|
|
ae2e42e1b4 | ||
|
|
864ad3827d | ||
|
|
0394a78ece | ||
|
|
19d239f4cf | ||
|
|
d23ac2b385 | ||
|
|
766b58d91b | ||
|
|
663a4040f9 | ||
|
|
18467dfe40 | ||
|
|
2a165dccd4 | ||
|
|
d501e5832a | ||
|
|
b198a3ed99 | ||
|
|
226d25ca94 | ||
|
|
43dde4a10f | ||
|
|
97922c90cb | ||
|
|
c372ea02f7 | ||
|
|
daa95c582e | ||
|
|
aa2a15bf1b | ||
|
|
f629a7b3f7 | ||
|
|
03921a969a | ||
|
|
b7d51456eb | ||
|
|
6a587299b8 | ||
|
|
f5aa1b795b | ||
|
|
2efc5ab4e9 | ||
|
|
fde26c2183 | ||
|
|
8ad8f17731 | ||
|
|
e9d56b0804 | ||
|
|
43a967b274 | ||
|
|
c1ecaf3959 | ||
|
|
0b5ecd24f9 | ||
|
|
9a55f38d90 | ||
|
|
09c8f29de8 | ||
|
|
620bbb3394 | ||
|
|
77ae6c17e7 | ||
|
|
b8bbdcc4c5 | ||
|
|
18e936fd28 | ||
|
|
c94edb6bb0 | ||
|
|
484d495259 | ||
|
|
dfbcca2a2d | ||
|
|
73c6c07c47 | ||
|
|
896a149fb9 | ||
|
|
0034d2d3be | ||
|
|
880dcab0b1 | ||
|
|
98eb4453c5 | ||
|
|
3e686e4379 | ||
|
|
8509dad58f | ||
|
|
1214af04a9 | ||
|
|
8c0d61c4a5 | ||
|
|
ba2012af43 | ||
|
|
b5e6e6ee10 | ||
|
|
61ee6cf09f | ||
|
|
04925f7347 | ||
|
|
8a7ad0df54 | ||
|
|
a433f7d9fe | ||
|
|
991e74bfc2 | ||
|
|
c46817f23a | ||
|
|
94bd63c8a7 | ||
|
|
3e8b2620a1 | ||
|
|
ce8c78eb34 | ||
|
|
85e02010d4 | ||
|
|
a912960a58 | ||
|
|
aeec9f6ef8 | ||
|
|
718adc6c47 | ||
|
|
454aa05987 | ||
|
|
23726136bd | ||
|
|
fa82efe7d2 | ||
|
|
011fad6701 | ||
|
|
fcf262cc98 | ||
|
|
c5f0e87dd0 | ||
|
|
6a154ee9b0 | ||
|
|
558539e21b | ||
|
|
571f55f904 | ||
|
|
259614b647 | ||
|
|
8ec60879dc | ||
|
|
edd2e9db3c | ||
|
|
67454d0491 | ||
|
|
848d8ac95d | ||
|
|
a98ae8dc71 | ||
|
|
193ff20c23 | ||
|
|
92a85a991b | ||
|
|
38af71d9c9 | ||
|
|
246267276a | ||
|
|
ea19176d3c | ||
|
|
f28889de59 | ||
|
|
aa7199af2d | ||
|
|
fba0a52e4a | ||
|
|
6d7bdad140 | ||
|
|
aef871833b | ||
|
|
dda49d2f07 | ||
|
|
199ea3d6f9 | ||
|
|
53bd527947 | ||
|
|
2156e45869 | ||
|
|
1ced919dfb | ||
|
|
d948e78d1e | ||
|
|
bd5fd77655 | ||
|
|
45cf2843a6 | ||
|
|
ca51ace22d | ||
|
|
93a7040c77 | ||
|
|
dc687848e6 | ||
|
|
85187817a7 | ||
|
|
5f5a1b780e | ||
|
|
e31741cd7b | ||
|
|
d5bfa468f7 | ||
|
|
9990f9856b | ||
|
|
b3bb03fed4 | ||
|
|
1332a57890 | ||
|
|
123d9659c1 | ||
|
|
90d55777f7 | ||
|
|
ec4e1b6eff | ||
|
|
c72b769f82 | ||
|
|
8471f389eb | ||
|
|
23e6b4ec0a | ||
|
|
8f364281d2 | ||
|
|
1f17cee39b | ||
|
|
4787a1186b | ||
|
|
3c4b09157e | ||
|
|
87ee0ca646 | ||
|
|
de59758471 | ||
|
|
ea109cfdd7 | ||
|
|
9035989abf | ||
|
|
aa6076e087 | ||
|
|
78b9436f38 | ||
|
|
3ce3fa74b3 | ||
|
|
d6eff2a074 | ||
|
|
6d75fe4d86 | ||
|
|
9ff2340cdb | ||
|
|
b727204716 | ||
|
|
5b4f2f55aa | ||
|
|
60119153de | ||
|
|
2b2d596da6 | ||
|
|
63c1ef9f9e | ||
|
|
0cc183682e | ||
|
|
4d193f5650 | ||
|
|
73c4806864 | ||
|
|
b0cf60a3d9 | ||
|
|
3ca3d063a7 | ||
|
|
01741750f8 | ||
|
|
4377381fd3 | ||
|
|
9cf1b62cd6 | ||
|
|
5ded2e5121 | ||
|
|
7eeabf14be | ||
|
|
be507e567a | ||
|
|
1117d1c2ae | ||
|
|
4b20102139 | ||
|
|
9242bdb10b | ||
|
|
3bcd578fcb | ||
|
|
4c5daf5d85 | ||
|
|
5b4d75a976 | ||
|
|
b9c63a8c8f | ||
|
|
f75f686271 | ||
|
|
505fc71665 | ||
|
|
529594ef55 | ||
|
|
3d1f004e90 | ||
|
|
0195044ba1 | ||
|
|
ad8f227880 | ||
|
|
c4d83c6e66 | ||
|
|
90b589d993 | ||
|
|
d4cc337577 | ||
|
|
25695bdef2 | ||
|
|
af496839f5 | ||
|
|
9c09d926e3 | ||
|
|
cba480d3ae | ||
|
|
dbfdba75f9 | ||
|
|
d46afc12be | ||
|
|
531cea489e | ||
|
|
9e4758ec9e | ||
|
|
e8206f2983 | ||
|
|
2119a6568b | ||
|
|
dd7c9997a9 | ||
|
|
256ca129f0 | ||
|
|
6d9ac3ae48 | ||
|
|
59046d448f | ||
|
|
d9e291635a | ||
|
|
1133b7a04a | ||
|
|
43fe9ef34a | ||
|
|
f910b66ef2 | ||
|
|
bfac626fa4 | ||
|
|
ecbb8ef071 | ||
|
|
1c0c5bde0f | ||
|
|
c3044a6b8b | ||
|
|
778a29855f | ||
|
|
eb859dac3a | ||
|
|
9ac1164440 | ||
|
|
39974c9532 | ||
|
|
4ff8989e8f | ||
|
|
2bf13a50c4 | ||
|
|
382b14ea27 | ||
|
|
17fcfd3697 | ||
|
|
811ccf0f10 | ||
|
|
422424d21c | ||
|
|
0bdc7efc8b | ||
|
|
32058e8018 | ||
|
|
ba12b53e49 | ||
|
|
b9ead144fb | ||
|
|
1d58e40133 | ||
|
|
cd749bc385 | ||
|
|
01cd2df369 | ||
|
|
1854f5c061 | ||
|
|
b00bd04baa | ||
|
|
3075791a93 | ||
|
|
38ab2b766d | ||
|
|
410e5aa28d | ||
|
|
82f7541131 | ||
|
|
106b135eba | ||
|
|
7dfec58128 | ||
|
|
977bce9eb2 | ||
|
|
bc0aef3332 | ||
|
|
8101d7ade8 | ||
|
|
f6d19d2833 | ||
|
|
c431af27c2 | ||
|
|
973a0d93ae | ||
|
|
cbdb7b4f64 | ||
|
|
8f0c3b45c0 | ||
|
|
78317ef792 | ||
|
|
1ab4f5b913 | ||
|
|
3e390503fc |
No files matched your search
@@ -2,15 +2,17 @@
|
||||
|
||||
**Server Setup Information**:
|
||||
|
||||
* Did you test in newest Wekan?:
|
||||
* Wekan version:
|
||||
* If this is about old version of Wekan, what upgrade problem you have?:
|
||||
* Operating System:
|
||||
* Deployment Method(snap/sandstorm/mongodb bundle):
|
||||
* Http frontend (Caddy, Nginx, Apache, see config examples from Wekan GitHub wiki first):
|
||||
* Deployment Method(snap/docker/sandstorm/mongodb bundle/source):
|
||||
* 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):
|
||||
|
||||
**Problem description**:
|
||||
- *be as explicit as you can*
|
||||
- *describe the problem and its symptoms*
|
||||
- *explain how to reproduce*
|
||||
- *attach whatever information that can help understanding the context (screen capture, log files in .zip file)*
|
||||
- *REQUIRED: Add recorded animated gif about how it works currently, and screenshot mockups how it should work*
|
||||
- *Explain steps how to reproduce*
|
||||
- *Attach log files in .zip file)*
|
||||
+2
-1
@@ -77,10 +77,11 @@ email@1.2.3
|
||||
horka:swipebox
|
||||
dynamic-import@0.2.0
|
||||
staringatlights:fast-render
|
||||
staringatlights:flow-router
|
||||
|
||||
mixmax:smart-disconnect
|
||||
accounts-password@1.5.0
|
||||
cfs:gridfs
|
||||
browser-policy
|
||||
eluck:accounts-lockout
|
||||
rzymek:fullcalendar
|
||||
momentjs:moment@2.22.2
|
||||
+2
-1
@@ -103,6 +103,7 @@ mixmax:smart-disconnect@0.0.4
|
||||
mobile-status-bar@1.0.14
|
||||
modules@0.11.0
|
||||
modules-runtime@0.9.1
|
||||
momentjs:moment@2.22.2
|
||||
mongo@1.3.1
|
||||
mongo-dev-server@1.1.0
|
||||
mongo-id@1.0.6
|
||||
@@ -139,6 +140,7 @@ reactive-var@1.0.11
|
||||
reload@1.1.11
|
||||
retry@1.0.9
|
||||
routepolicy@1.0.12
|
||||
rzymek:fullcalendar@3.8.0
|
||||
service-configuration@1.0.11
|
||||
session@1.1.7
|
||||
sha@1.0.9
|
||||
@@ -155,7 +157,6 @@ srp@1.0.10
|
||||
standard-minifier-css@1.3.5
|
||||
standard-minifier-js@2.2.3
|
||||
staringatlights:fast-render@2.16.5
|
||||
staringatlights:flow-router@2.12.2
|
||||
staringatlights:inject-data@2.0.5
|
||||
stylus@2.513.13
|
||||
tap:i18n@1.8.2
|
||||
|
||||
+156
-1
@@ -1,4 +1,159 @@
|
||||
# v0.97 2018-06-19 Wekan release
|
||||
# v1.09 2018-06-28 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
* [Calendar](https://github.com/wekan/wekan/pull/1728). Click Lists / Swimlanes / Calendar.
|
||||
|
||||
and fixes the following bugs:
|
||||
|
||||
* To fix ["title is required"](https://github.com/wekan/wekan/issues/1576) fix only
|
||||
add-checklist-items and revert all other migration changes](https://github.com/wekan/wekan/issues/1734);
|
||||
* [Restore invitation code logic](https://github.com/wekan/wekan/pull/1732). Please test and add comment
|
||||
to those invitation code issues that this fixes.
|
||||
|
||||
Thanks to GitHub users TNick and xet7 for their contributions.
|
||||
|
||||
# v1.08 2018-06-27 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
* [Add more card inner shadow](https://github.com/wekan/wekan/commit/6a587299b80a49fce0789628ff65885b5ed2c837);
|
||||
* [Less margin-bottom after minicard](https://github.com/wekan/wekan/pull/1713);
|
||||
* Updated newest node fork binary from Sandstorm to Wekan, see https://releases.wekan.team/node.txt
|
||||
* Add Georgian language.
|
||||
|
||||
and fixes the following bugs:
|
||||
|
||||
* [Fix typo in English translation](https://github.com/wekan/wekan/pull/1710);
|
||||
* [Fix vertical align of user avatar initials](https://github.com/wekan/wekan/pull/1714);
|
||||
* [Submit inline form on click outside](https://github.com/wekan/wekan/pull/1717), fixes
|
||||
["You have an unsaved description" doesn't go away after saving](https://github.com/wekan/wekan/issues/1287);
|
||||
* [Fix "Error: title is required" by removing find() from all of migrations](https://github.com/wekan/wekan/commit/97922c90cb42be6c6615639bb164173748982f56).
|
||||
|
||||
Thanks to GitHub users pravdomil, xet7 and zypA13510 for their contributions.
|
||||
|
||||
# v1.07 2018-06-14 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
* [Regex for Advanced filter. It aims to solve search in bigger text fields, and using wildcards.
|
||||
A change to translations was made for adding info about regex and escaping characters
|
||||
with \\](https://github.com/wekan/wekan/pull/1702).
|
||||
|
||||
Thanks to GitHub users feuerball11 and xet7 for their contributions.
|
||||
|
||||
# v1.06 2018-06-14 Wekan release
|
||||
|
||||
This release fixes the following bugs:
|
||||
|
||||
* [Fix CardDetail of Mobile View](https://github.com/wekan/wekan/pull/1701).
|
||||
|
||||
Thanks to GitHub users feuerball11 and xet7 for their contributions.
|
||||
|
||||
# v1.05 2018-06-14 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
* [Markdown support in Custom Fields, and view on minicard](https://github.com/wekan/wekan/pull/1699);
|
||||
* [Fixes to Advanced Filter, you are now able to filter for Dropdown and Numbers,
|
||||
also Dropdown are now correctly displayed on minicard](https://github.com/wekan/wekan/pull/1699).
|
||||
|
||||
and fixes the following bugs:
|
||||
|
||||
* [Fix data colour changes on cards](https://github.com/wekan/wekan/pull/1698);
|
||||
* [Fix for migration error "title is required" and breaking of Standalone and
|
||||
Sandstorm Wekan](https://github.com/wekan/wekan/commit/8d5cbf1e6c2b6d467fe1c0708cd794fd11b98a2e#commitcomment-29362180);
|
||||
* [Fix Issue with custom fields shown on card](https://github.com/wekan/wekan/issues/1659);
|
||||
* [Fix showing public board in list mode](https://github.com/wekan/wekan/issues/1623);
|
||||
* [Fix for not able to remove Custom Field "Show on Card"](https://github.com/wekan/wekan/pull/1699);
|
||||
* [Fix minicardReceivedDate typo in 1.04 regression: Socket connection error and boards
|
||||
not loading](https://github.com/wekan/wekan/issues/1694).
|
||||
|
||||
Thanks to GitHub users feuerball11, Fran-KTA, oec, rjevnikar and xet7 for their contributions.
|
||||
|
||||
# v1.04 2018-06-12 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
* [Add Khmer language](https://github.com/wekan/wekan/commit/2156e458690d0dc34a761a48fd7fa3b54af79031);
|
||||
* [Change label text colour to black for specific label colours for better
|
||||
visibility](https://github.com/wekan/wekan/pull/1689).
|
||||
|
||||
and fixes the following bugs:
|
||||
|
||||
* [SECURITY FIX: Do not publish all of people collection. This bug has probably been present
|
||||
since addition of Admin Panel](https://github.com/wekan/wekan/commit/dda49d2f07f9c50d5d57acfd5c7eee6492f93b33);
|
||||
* [Modify card covers/mini-cards so that: 1) received date is shown unless there is a start date
|
||||
2) due date is shown, unless there is an end date](https://github.com/wekan/wekan/pull/1685).
|
||||
|
||||
Thanks to GitHub users rjevnikar and xet7 for their contributions.
|
||||
Thanks to Adrian Genaid for security fix, he's now added to [Hall of Fame](https://wekan.github.io/hall-of-fame/).
|
||||
Thanks to translators.
|
||||
|
||||
# v1.03 2018-06-08 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
* [Update to newest Sandstorm fork of Node.js that includes performance
|
||||
etc fixes](https://github.com/wekan/wekan/commit/90d55777f7298d243ed0de03c934cea239a31272);
|
||||
* [Additional label colors. Assigned By and Requested By text fields
|
||||
on card. Delete board from Recycle Bin](https://github.com/wekan/wekan/pull/1679).
|
||||
|
||||
and possibly fixes the following bugs, please test:
|
||||
|
||||
* [Try to fix: Missing board-view-lists Field after DB updated to
|
||||
Wekan 1.02](https://github.com/wekan/wekan/issues/1675).
|
||||
|
||||
Thanks to GitHub users JamesLavin, rjevnikar and xet7 for their contributions.
|
||||
|
||||
# v1.02 2018-05-26 Wekan release
|
||||
|
||||
This release fixes the following bugs:
|
||||
|
||||
* [Remove binary version of bcrypt](https://github.com/wekan/wekan/commit/4b2010213907c61b0e0482ab55abb06f6a668eac)
|
||||
because of [vulnerability](https://nodesecurity.io/advisories/612) that has [issue that is not fixed
|
||||
yet](https://github.com/kelektiv/node.bcrypt.js/issues/604)
|
||||
and [not yet merged pull request](https://github.com/kelektiv/node.bcrypt.js/pull/606).
|
||||
This may cause some slowdown;
|
||||
* [Snap: Filtering out swap file created at build time, adding stage package](https://github.com/wekan/wekan/pull/1660);
|
||||
* [Fix Received Date and End Date on Cards](https://github.com/wekan/wekan/issues/1654).
|
||||
|
||||
Thanks to GitHub users kubiko, xadagaras and xet7 for their contributions.
|
||||
|
||||
# v1.01 2018-05-23 Wekan release
|
||||
|
||||
This release possibly fixes the following bugs, please test:
|
||||
|
||||
* [Possible quickfix for all customFields Import errors, please test](https://github.com/wekan/wekan/pull/1653).
|
||||
|
||||
Thanks to GitHub users feuerball11 and xet7 for their contributions.
|
||||
|
||||
# v1.00 2018-05-21 Wekan release
|
||||
|
||||
This release fixes the following bugs:
|
||||
|
||||
* [Typo in English translation: brakets to brackets](https://github.com/wekan/wekan/issues/1647).
|
||||
|
||||
Thanks to GitHub user yarons for contributions.
|
||||
|
||||
# v0.99 2018-05-21 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
* [Advanced Filter for Custom Fields](https://github.com/wekan/wekan/pull/1646).
|
||||
|
||||
Thanks to GitHub users feuerball11 and xet7 for their contributions.
|
||||
|
||||
# v0.98 2018-05-19 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
* [Filtering by Custom Field](https://github.com/wekan/wekan/pull/1645);
|
||||
* Update to NPM 6.0.1 and MongoDB 3.2.20.
|
||||
|
||||
Thanks to GitHub users feuerball11 and xet7 for their contributions.
|
||||
|
||||
# v0.97 2018-05-19 Wekan release
|
||||
|
||||
Updated translations.
|
||||
|
||||
|
||||
+4
-1
@@ -1 +1,4 @@
|
||||
To get started, [sign the Contributor License Agreement](https://www.clahub.com/agreements/wekan/wekan).
|
||||
To get started, [please sign the Contributor License Agreement](https://www.clahub.com/agreements/wekan/wekan).
|
||||
|
||||
[Then, please read documentation at wiki](https://github.com/wekan/wekan/wiki).
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
# Contributing
|
||||
|
||||
Please see wiki for all documentation:
|
||||
|
||||
<https://github.com/wekan/wekan/wiki>
|
||||
+9
-7
@@ -19,7 +19,7 @@ ENV NODE_VERSION ${NODE_VERSION:-v8.11.1}
|
||||
ENV METEOR_RELEASE ${METEOR_RELEASE:-1.6.0.1}
|
||||
ENV USE_EDGE ${USE_EDGE:-false}
|
||||
ENV METEOR_EDGE ${METEOR_EDGE:-1.5-beta.17}
|
||||
ENV NPM_VERSION ${NPM_VERSION:-5.5.1}
|
||||
ENV NPM_VERSION ${NPM_VERSION:-latest}
|
||||
ENV FIBERS_VERSION ${FIBERS_VERSION:-2.0.0}
|
||||
ENV ARCHITECTURE ${ARCHITECTURE:-linux-x64}
|
||||
ENV SRC_PATH ${SRC_PATH:-./}
|
||||
@@ -47,9 +47,8 @@ RUN \
|
||||
# Fiber.poolSize = 1e9;
|
||||
# Download node version 8.11.1 that has fix included, node binary copied from Sandstorm
|
||||
# Description at https://releases.wekan.team/node.txt
|
||||
# SHA256SUM: 18c99d5e79e2fe91e75157a31be30e5420787213684d4048eb91e602e092725d
|
||||
wget https://releases.wekan.team/node-${NODE_VERSION}-${ARCHITECTURE}.tar.gz && \
|
||||
echo "c85ed210a360c50d55baaf7b49419236e5241515ed21410d716f4c1f5deedb12 node-v8.11.1-linux-x64.tar.gz" >> SHASUMS256.txt.asc && \
|
||||
echo "308d0caaef0a1da3e98d1a1615016aad9659b3caf31d0f09ced20cabedb8acbf node-v8.11.1-linux-x64.tar.gz" >> SHASUMS256.txt.asc && \
|
||||
\
|
||||
# Verify nodejs authenticity
|
||||
grep ${NODE_VERSION}-${ARCHITECTURE}.tar.gz SHASUMS256.txt.asc | shasum -a 256 -c - && \
|
||||
@@ -125,12 +124,15 @@ RUN \
|
||||
gosu wekan:wekan /home/wekan/.meteor/meteor build --directory /home/wekan/app_build && \
|
||||
cp /home/wekan/app/fix-download-unicode/cfs_access-point.txt /home/wekan/app_build/bundle/programs/server/packages/cfs_access-point.js && \
|
||||
chown wekan:wekan /home/wekan/app_build/bundle/programs/server/packages/cfs_access-point.js && \
|
||||
cd /home/wekan/app_build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt && \
|
||||
gosu wekan:wekan rm -rf node_modules/bcrypt && \
|
||||
gosu wekan:wekan npm install bcrypt && \
|
||||
#Removed binary version of bcrypt because of security vulnerability that is not fixed yet.
|
||||
#https://github.com/wekan/wekan/commit/4b2010213907c61b0e0482ab55abb06f6a668eac
|
||||
#https://github.com/wekan/wekan/commit/7eeabf14be3c63fae2226e561ef8a0c1390c8d3c
|
||||
#cd /home/wekan/app_build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt && \
|
||||
#gosu wekan:wekan rm -rf node_modules/bcrypt && \
|
||||
#gosu wekan:wekan npm install bcrypt && \
|
||||
cd /home/wekan/app_build/bundle/programs/server/ && \
|
||||
gosu wekan:wekan npm install && \
|
||||
gosu wekan:wekan npm install bcrypt && \
|
||||
#gosu wekan:wekan npm install bcrypt && \
|
||||
mv /home/wekan/app_build/bundle /build && \
|
||||
\
|
||||
# Cleanup
|
||||
|
||||
+129
@@ -0,0 +1,129 @@
|
||||
Security is very important to us. If discover any issue regarding security, please disclose
|
||||
the information responsibly by sending an email to security (at) wekan.team and not by
|
||||
creating a GitHub issue. We will respond swiftly to fix verifiable security issues.
|
||||
|
||||
We thank you with a place at our hall of fame page, that is
|
||||
at https://wekan.github.io/hall-of-fame . Others have just posted public GitHub issue,
|
||||
so they are not at that hall-of-fame page.
|
||||
|
||||
## How should reports be formatted?
|
||||
|
||||
```
|
||||
Name: %name
|
||||
Twitter: %twitter
|
||||
Bug type: %bugtype
|
||||
Domain: %domain
|
||||
Severity: %severity
|
||||
URL: %url
|
||||
PoC: %poc
|
||||
CVSS (optional): %cvss
|
||||
CWSS (optional): %cwss
|
||||
```
|
||||
|
||||
## Who can participate in the program
|
||||
|
||||
Anyone who reports a unique security issue in scope and does not disclose it to
|
||||
a third party before we have patched and updated may be upon their approval
|
||||
added to the Wekan Hall of Fame.
|
||||
|
||||
## Which domains are in scope?
|
||||
|
||||
No any public domains, because all those are donated to Wekan Open Source project,
|
||||
and we don't have any permissions to do security scans on those donated servers.
|
||||
|
||||
Please don't perform research that could impact other users. Secondly, please keep
|
||||
the reports short and succinct. If we fail to understand the logics of your bug, we will tell you.
|
||||
|
||||
You can [Install Wekan](https://github.com/wekan/wekan/releases) to your own computer
|
||||
and scan it's vulnerabilities there.
|
||||
|
||||
## About Wekan versions
|
||||
|
||||
There is only 2 versions of Wekan: Standalone Wekan, and Sandstorm Wekan.
|
||||
|
||||
### Standalone Wekan Security
|
||||
|
||||
Standalone Wekan includes all non-Sandstorm platforms. Some Standalone Wekan platforms
|
||||
like Snap and Docker have their own specific sandboxing etc features.
|
||||
|
||||
Standalone Wekan by default does not load any files from Internet, like fonts, CSS, etc.
|
||||
This also means all Standalone Wekan functionality works in offline local networks.
|
||||
Wekan is used by companies that have [thousands of users](https://github.com/wekan/wekan/wiki/AWS) and at healthcare.
|
||||
|
||||
Wekan uses xss package for input fields like cards, as you can see from
|
||||
[package.json](https://github.com/wekan/wekan/blob/devel/package.json). Other used versions can be seen from
|
||||
[Meteor versions file](https://github.com/wekan/wekan/blob/devel/.meteor/versions).
|
||||
Forms can include markdown links, html, image tags etc like you see at https://wekan.github.io .
|
||||
It's possible to add attachments to cards, and markdown/html links to files.
|
||||
|
||||
Wekan attachments are not accessible without logging in. Import from Trello works by copying
|
||||
Trello export JSON to Wekan Trello import page, and in Trello JSON file there is direct links to all publicly
|
||||
accessible Trello attachment files, that Standalone Wekan downloads directly to Wekan MongoDB database in
|
||||
[CollectionFS](https://github.com/wekan/wekan/pull/875) format. When Wekan board is exported in
|
||||
Wekan JSON format, all board attachments are included in Wekan JSON file as base64 encoded text.
|
||||
That Wekan JSON format file can be imported to Sandstorm Wekan with all the attachments, when we get
|
||||
latest Wekan version working on Sandstorm, only couple of bugs are left before that. In Sandstorm it's not
|
||||
possible yet to import from Trello with attachments, because Wekan does not implement Sandstorm-compatible
|
||||
access to outside of Wekan grain.
|
||||
|
||||
Standalone Wekan only has password auth currently, there is work in progress to add
|
||||
[oauth2](https://github.com/wekan/wekan/pull/1578), [Openid](https://github.com/wekan/wekan/issues/538),
|
||||
[LDAP](https://github.com/wekan/wekan/issues/119) etc. If you need more login security for Standalone Wekan now,
|
||||
it's possible add additional [Google Auth proxybouncer](https://github.com/wekan/wekan/wiki/Let's-Encrypt-and-Google-Auth) in front of password auth, and then use Google Authenticator for Google Auth. Standalone Wekan does have [brute force protection with eluck:accounts-lockout and browser-policy clickjacking protection](https://github.com/wekan/wekan/blob/devel/CHANGELOG.md#v080-2018-04-04-wekan-release). You can also optionally use some [WAF](https://en.wikipedia.org/wiki/Web_application_firewall)
|
||||
like for example [AWS WAF](https://aws.amazon.com/waf/).
|
||||
|
||||
[All Wekan Platforms](https://github.com/wekan/wekan/wiki/Platforms)
|
||||
|
||||
### Sandstorm Wekan Security
|
||||
|
||||
On Sandstorm platform using environment variable Standalone Wekan features like Admin Panel etc are
|
||||
turned off, because Sandstorm platform provides SSO for all apps running on Sandstorm.
|
||||
|
||||
[Sandstorm](https://sandstorm.io) is separate Open Source platform that has been
|
||||
[security audited](https://sandstorm.io/news/2017-03-02-security-review) and found bugs fixed.
|
||||
Sandstorm also has passwordless login, LDAP, SAML, Google etc auth options already.
|
||||
At Sandstorm code is read-only and signed by app maintainers, only grain content can be modified.
|
||||
Wekan at Sandstorm runs in sandboxed grain, it does not have access elsewhere without user-visible
|
||||
PowerBox request or opening randomly-generated API key URL.
|
||||
Also read [Sandstorm Security Practices](https://docs.sandstorm.io/en/latest/using/security-practices/) and
|
||||
[Sandstorm Security non-events](https://docs.sandstorm.io/en/latest/using/security-non-events/).
|
||||
For Sandstorm specific security issues you can contact [kentonv](https://github.com/kentonv) by email.
|
||||
|
||||
## What Wekan bugs are eligible?
|
||||
|
||||
Any typical web security bugs. If any of the previously mentioned is somehow problematic and
|
||||
a security issue, we'd like to know about it, and also how to fix it:
|
||||
|
||||
- Cross-site Scripting
|
||||
- Open redirect
|
||||
- Cross-site request forgery
|
||||
- File inclusion
|
||||
- Authentication bypass
|
||||
- Server-side code execution
|
||||
|
||||
## What Wekan bugs are NOT eligible?
|
||||
|
||||
Typical already known or "no impact" bugs such as:
|
||||
|
||||
- Brute force password guessign. Currently there is
|
||||
[brute force protection with eluck:accounts-lockout](https://github.com/wekan/wekan/blob/devel/CHANGELOG.md#v080-2018-04-04-wekan-release).
|
||||
- Security issues related to that Wekan uses Meteor 1.6.0.1 related packages, and upgrading to newer
|
||||
Meteor 1.6.1 is complicated process that requires lots of changes to many dependency packages.
|
||||
Upgrading [has been tried many times, spending a lot of time](https://github.com/meteor/meteor/issues/9609)
|
||||
but there still is issues. Helping with package upgrades is very welcome.
|
||||
- [Wekan API old tokens not replaced correctly](https://github.com/wekan/wekan/issues/1437)
|
||||
- Missing Cookie flags on non-session cookies or 3rd party cookies
|
||||
- Logout CSRF
|
||||
- Social engineering
|
||||
- Denial of service
|
||||
- SSL BEAST/CRIME/etc. Wekan does not have SSL built-in, it uses Caddy/Nginx/Apache etc at front.
|
||||
Integrated Caddy support is updated often.
|
||||
- Email spoofing, SPF, DMARC & DKIM. Wekan does not include email server.
|
||||
|
||||
Wekan is Open Source with MIT license, and free to use also for commercial use.
|
||||
We welcome all fixes to improve security by email to security (at) wekan.team .
|
||||
|
||||
## Bonus Points
|
||||
|
||||
If your Responsible Security Disclosure includes code for fixing security issue,
|
||||
you get bonus points, as seen on [Hall of Fame](https://wekan.github.io/hall-of-fame).
|
||||
@@ -6,9 +6,17 @@ template(name="archivedBoards")
|
||||
ul.archived-lists
|
||||
each archivedBoards
|
||||
li.archived-lists-item
|
||||
button.js-restore-board
|
||||
i.fa.fa-undo
|
||||
| {{_ 'restore-board'}}
|
||||
= title
|
||||
div.board-header-btns
|
||||
button.board-header-btn.js-delete-board
|
||||
i.fa.fa-trash-o
|
||||
| {{_ 'delete-board'}}
|
||||
button.board-header-btn.js-restore-board
|
||||
i.fa.fa-undo
|
||||
| {{_ 'restore-board'}}
|
||||
= title
|
||||
else
|
||||
li.no-items-message {{_ 'no-archived-boards'}}
|
||||
|
||||
template(name="boardDeletePopup")
|
||||
p {{_ 'delete-board-confirm-popup'}}
|
||||
button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
|
||||
@@ -29,6 +29,18 @@ BlazeComponent.extendComponent({
|
||||
board.restore();
|
||||
Utils.goBoardId(board._id);
|
||||
},
|
||||
'click .js-delete-board': Popup.afterConfirm('boardDelete', function() {
|
||||
Popup.close();
|
||||
const isSandstorm = Meteor.settings && Meteor.settings.public &&
|
||||
Meteor.settings.public.sandstorm;
|
||||
if (isSandstorm && Session.get('currentBoard')) {
|
||||
const currentBoard = Boards.findOne(Session.get('currentBoard'));
|
||||
Boards.remove(currentBoard._id);
|
||||
}
|
||||
const board = this.currentData();
|
||||
Boards.remove(board._id);
|
||||
FlowRouter.go('home');
|
||||
}),
|
||||
}];
|
||||
},
|
||||
}).register('archivedBoards');
|
||||
@@ -25,3 +25,5 @@ template(name="boardBody")
|
||||
+swimlane(this)
|
||||
if isViewLists
|
||||
+listsGroup
|
||||
if isViewCalendar
|
||||
+fullcalendar(calendarOptions)
|
||||
@@ -88,14 +88,22 @@ BlazeComponent.extendComponent({
|
||||
|
||||
isViewSwimlanes() {
|
||||
const currentUser = Meteor.user();
|
||||
if (!currentUser) return false;
|
||||
return (currentUser.profile.boardView === 'board-view-swimlanes');
|
||||
},
|
||||
|
||||
isViewLists() {
|
||||
const currentUser = Meteor.user();
|
||||
if (!currentUser) return true;
|
||||
return (currentUser.profile.boardView === 'board-view-lists');
|
||||
},
|
||||
|
||||
isViewCalendar() {
|
||||
const currentUser = Meteor.user();
|
||||
if (!currentUser) return true;
|
||||
return (currentUser.profile.boardView === 'board-view-cal');
|
||||
},
|
||||
|
||||
openNewListForm() {
|
||||
if (this.isViewSwimlanes()) {
|
||||
this.childComponents('swimlane')[0]
|
||||
@@ -106,6 +114,62 @@ BlazeComponent.extendComponent({
|
||||
}
|
||||
},
|
||||
|
||||
calendarOptions() {
|
||||
return {
|
||||
id: 'calendar-view',
|
||||
defaultView: 'basicWeek',
|
||||
header: {
|
||||
left: 'title',
|
||||
center: 'agendaDay,listDay,timelineDay agendaWeek,listWeek,timelineWeek month,timelineMonth timelineYear',
|
||||
right: 'today prev,next',
|
||||
},
|
||||
views: {
|
||||
basic: {
|
||||
// options apply to basicWeek and basicDay views
|
||||
},
|
||||
agenda: {
|
||||
// options apply to agendaWeek and agendaDay views
|
||||
},
|
||||
week: {
|
||||
// options apply to basicWeek and agendaWeek views
|
||||
},
|
||||
day: {
|
||||
// options apply to basicDay and agendaDay views
|
||||
},
|
||||
},
|
||||
themeSystem: 'jquery-ui',
|
||||
height: 'parent',
|
||||
/* TODO: lists as resources: https://fullcalendar.io/docs/vertical-resource-view */
|
||||
navLinks: true,
|
||||
nowIndicator: true,
|
||||
businessHours: {
|
||||
// days of week. an array of zero-based day of week integers (0=Sunday)
|
||||
dow: [ 1, 2, 3, 4, 5 ], // Monday - Thursday
|
||||
start: '8:00',
|
||||
end: '18:00',
|
||||
},
|
||||
locale: TAPi18n.getLanguage(),
|
||||
events(start, end, timezone, callback) {
|
||||
const currentBoard = Boards.findOne(Session.get('currentBoard'));
|
||||
const events = [];
|
||||
currentBoard.cardsInInterval(start.toDate(), end.toDate()).forEach(function(card){
|
||||
events.push({
|
||||
id: card.id,
|
||||
title: card.title,
|
||||
start: card.startAt,
|
||||
end: card.endAt,
|
||||
url: FlowRouter.url('card', {
|
||||
boardId: currentBoard._id,
|
||||
slug: currentBoard.slug,
|
||||
cardId: card._id,
|
||||
}),
|
||||
});
|
||||
});
|
||||
callback(events);
|
||||
},
|
||||
};
|
||||
},
|
||||
|
||||
events() {
|
||||
return [{
|
||||
// XXX The board-overlay div should probably be moved to the parent
|
||||
|
||||
@@ -17,6 +17,12 @@ Template.boardMenuPopup.events({
|
||||
// confirm that the board was successfully archived.
|
||||
FlowRouter.go('home');
|
||||
}),
|
||||
'click .js-delete-board': Popup.afterConfirm('deleteBoard', function() {
|
||||
const currentBoard = Boards.findOne(Session.get('currentBoard'));
|
||||
Popup.close();
|
||||
Boards.remove(currentBoard._id);
|
||||
FlowRouter.go('home');
|
||||
}),
|
||||
'click .js-outgoing-webhooks': Popup.open('outgoingWebhooks'),
|
||||
'click .js-import-board': Popup.open('chooseBoardSource'),
|
||||
});
|
||||
@@ -83,9 +89,11 @@ BlazeComponent.extendComponent({
|
||||
'click .js-toggle-board-view'() {
|
||||
const currentUser = Meteor.user();
|
||||
if (currentUser.profile.boardView === 'board-view-swimlanes') {
|
||||
currentUser.setBoardView('board-view-lists');
|
||||
currentUser.setBoardView('board-view-cal');
|
||||
} else if (currentUser.profile.boardView === 'board-view-lists') {
|
||||
currentUser.setBoardView('board-view-swimlanes');
|
||||
} else if (currentUser.profile.boardView === 'board-view-cal') {
|
||||
currentUser.setBoardView('board-view-lists');
|
||||
}
|
||||
},
|
||||
'click .js-open-filter-view'() {
|
||||
|
||||
@@ -93,7 +93,7 @@ Template.dateBadge.helpers({
|
||||
});
|
||||
|
||||
// editCardReceivedDatePopup
|
||||
(class extends EditCardDate {
|
||||
(class extends DatePicker {
|
||||
onCreated() {
|
||||
super.onCreated();
|
||||
this.data().receivedAt && this.date.set(moment(this.data().receivedAt));
|
||||
@@ -156,7 +156,7 @@ Template.dateBadge.helpers({
|
||||
}).register('editCardDueDatePopup');
|
||||
|
||||
// editCardEndDatePopup
|
||||
(class extends EditCardDate {
|
||||
(class extends DatePicker {
|
||||
onCreated() {
|
||||
super.onCreated();
|
||||
this.data().endAt && this.date.set(moment(this.data().endAt));
|
||||
@@ -218,10 +218,13 @@ class CardReceivedDate extends CardDate {
|
||||
}
|
||||
|
||||
classes() {
|
||||
let classes = 'received-date' + ' ';
|
||||
if (this.date.get().isBefore(this.now.get(), 'minute') &&
|
||||
this.now.get().isBefore(this.data().dueAt)) {
|
||||
classes += 'current';
|
||||
let classes = 'received-date ';
|
||||
const dueAt = this.data().dueAt;
|
||||
if (dueAt) {
|
||||
if (this.date.get().isBefore(this.now.get(), 'minute') &&
|
||||
this.now.get().isBefore(dueAt)) {
|
||||
classes += 'current';
|
||||
}
|
||||
}
|
||||
return classes;
|
||||
}
|
||||
@@ -249,9 +252,12 @@ class CardStartDate extends CardDate {
|
||||
|
||||
classes() {
|
||||
let classes = 'start-date' + ' ';
|
||||
if (this.date.get().isBefore(this.now.get(), 'minute') &&
|
||||
this.now.get().isBefore(this.data().dueAt)) {
|
||||
classes += 'current';
|
||||
const dueAt = this.data().dueAt;
|
||||
if (dueAt) {
|
||||
if (this.date.get().isBefore(this.now.get(), 'minute') &&
|
||||
this.now.get().isBefore(dueAt)) {
|
||||
classes += 'current';
|
||||
}
|
||||
}
|
||||
return classes;
|
||||
}
|
||||
@@ -279,11 +285,23 @@ class CardDueDate extends CardDate {
|
||||
|
||||
classes() {
|
||||
let classes = 'due-date' + ' ';
|
||||
if (this.now.get().diff(this.date.get(), 'days') >= 2)
|
||||
|
||||
// if endAt exists & is < dueAt, dueAt doesn't need to be flagged
|
||||
const endAt = this.data().endAt;
|
||||
const theDate = this.date.get();
|
||||
const now = this.now.get();
|
||||
|
||||
if ((endAt !== 0) &&
|
||||
(endAt !== null) &&
|
||||
(endAt !== '') &&
|
||||
(endAt !== undefined) &&
|
||||
(theDate.isBefore(endAt)))
|
||||
classes += 'current';
|
||||
else if (now.diff(theDate, 'days') >= 2)
|
||||
classes += 'long-overdue';
|
||||
else if (this.now.get().diff(this.date.get(), 'minute') >= 0)
|
||||
else if (now.diff(theDate, 'minute') >= 0)
|
||||
classes += 'due';
|
||||
else if (this.now.get().diff(this.date.get(), 'days') >= -1)
|
||||
else if (now.diff(theDate, 'days') >= -1)
|
||||
classes += 'almost-due';
|
||||
return classes;
|
||||
}
|
||||
@@ -311,12 +329,16 @@ class CardEndDate extends CardDate {
|
||||
|
||||
classes() {
|
||||
let classes = 'end-date' + ' ';
|
||||
if (this.data.dueAt.diff(this.date.get(), 'days') >= 2)
|
||||
classes += 'long-overdue';
|
||||
else if (this.data.dueAt.diff(this.date.get(), 'days') >= 0)
|
||||
classes += 'due';
|
||||
else if (this.data.dueAt.diff(this.date.get(), 'days') >= -2)
|
||||
classes += 'almost-due';
|
||||
const dueAt = this.data.dueAt;
|
||||
if (dueAt) {
|
||||
const diff = dueAt.diff(this.date.get(), 'days');
|
||||
if (diff >= 2)
|
||||
classes += 'long-overdue';
|
||||
else if (diff > 0)
|
||||
classes += 'due';
|
||||
else if (diff <= 0)
|
||||
classes += 'current';
|
||||
}
|
||||
return classes;
|
||||
}
|
||||
|
||||
@@ -355,4 +377,3 @@ CardEndDate.register('cardEndDate');
|
||||
return this.date.get().format('l');
|
||||
}
|
||||
}).register('minicardEndDate');
|
||||
|
||||
@@ -108,6 +108,39 @@ template(name="cardDetails")
|
||||
+viewer
|
||||
= description
|
||||
|
||||
.card-details-items
|
||||
.card-details-item.card-details-item-name
|
||||
h3.card-details-item-title {{_ 'requested-by'}}
|
||||
if canModifyCard
|
||||
+inlinedForm(classNames="js-card-details-requester")
|
||||
+editCardRequesterForm
|
||||
else
|
||||
a.js-open-inlined-form
|
||||
if requestedBy
|
||||
+viewer
|
||||
= requestedBy
|
||||
else
|
||||
| {{_ 'add'}}
|
||||
else if requestedBy
|
||||
+viewer
|
||||
= requestedBy
|
||||
|
||||
.card-details-item.card-details-item-name
|
||||
h3.card-details-item-title {{_ 'assigned-by'}}
|
||||
if canModifyCard
|
||||
+inlinedForm(classNames="js-card-details-assigner")
|
||||
+editCardAssignerForm
|
||||
else
|
||||
a.js-open-inlined-form
|
||||
if assignedBy
|
||||
+viewer
|
||||
= assignedBy
|
||||
else
|
||||
| {{_ 'add'}}
|
||||
else if requestedBy
|
||||
+viewer
|
||||
= assignedBy
|
||||
|
||||
hr
|
||||
+checklists(cardId = _id)
|
||||
|
||||
@@ -141,6 +174,18 @@ template(name="editCardTitleForm")
|
||||
button.primary.confirm.js-submit-edit-card-title-form(type="submit") {{_ 'save'}}
|
||||
a.fa.fa-times-thin.js-close-inlined-form
|
||||
|
||||
template(name="editCardRequesterForm")
|
||||
input.js-edit-card-requester(type='text' autofocus value=requestedBy)
|
||||
.edit-controls.clearfix
|
||||
button.primary.confirm.js-submit-edit-card-requester-form(type="submit") {{_ 'save'}}
|
||||
a.fa.fa-times-thin.js-close-inlined-form
|
||||
|
||||
template(name="editCardAssignerForm")
|
||||
input.js-edit-card-assigner(type='text' autofocus value=assignedBy)
|
||||
.edit-controls.clearfix
|
||||
button.primary.confirm.js-submit-edit-card-assigner-form(type="submit") {{_ 'save'}}
|
||||
a.fa.fa-times-thin.js-close-inlined-form
|
||||
|
||||
template(name="cardDetailsActionsPopup")
|
||||
ul.pop-over-list
|
||||
li: a.js-toggle-watch-card {{#if isWatching}}{{_ 'unwatch'}}{{else}}{{_ 'watch'}}{{/if}}
|
||||
@@ -150,8 +195,8 @@ template(name="cardDetailsActionsPopup")
|
||||
li: a.js-members {{_ 'card-edit-members'}}
|
||||
li: a.js-labels {{_ 'card-edit-labels'}}
|
||||
li: a.js-attachments {{_ 'card-edit-attachments'}}
|
||||
li: a.js-received-date {{_ 'editCardReceivedDatePopup-title'}}
|
||||
li: a.js-custom-fields {{_ 'card-edit-custom-fields'}}
|
||||
li: a.js-received-date {{_ 'editCardReceivedDatePopup-title'}}
|
||||
li: a.js-start-date {{_ 'editCardStartDatePopup-title'}}
|
||||
li: a.js-due-date {{_ 'editCardDueDatePopup-title'}}
|
||||
li: a.js-end-date {{_ 'editCardEndDatePopup-title'}}
|
||||
@@ -178,7 +223,6 @@ template(name="copyCardPopup")
|
||||
= title
|
||||
+boardsAndLists
|
||||
|
||||
|
||||
template(name="copyChecklistToManyCardsPopup")
|
||||
label(for='copy-checklist-cards-title') {{_ 'copyChecklistToManyCardsPopup-instructions'}}:
|
||||
textarea#copy-card-title.minicard-composer-textarea.js-card-title(autofocus)
|
||||
|
||||
@@ -21,8 +21,12 @@ BlazeComponent.extendComponent({
|
||||
|
||||
onCreated() {
|
||||
this.isLoaded = new ReactiveVar(false);
|
||||
this.parentComponent().parentComponent().showOverlay.set(true);
|
||||
this.parentComponent().parentComponent().mouseHasEnterCardDetails = false;
|
||||
const boardBody = this.parentComponent().parentComponent();
|
||||
//in Miniview parent is Board, not BoardBody.
|
||||
if (boardBody !== null){
|
||||
boardBody.showOverlay.set(true);
|
||||
boardBody.mouseHasEnterCardDetails = false;
|
||||
}
|
||||
this.calculateNextPeak();
|
||||
|
||||
Meteor.subscribe('unsaved-edits');
|
||||
@@ -44,7 +48,8 @@ BlazeComponent.extendComponent({
|
||||
scrollParentContainer() {
|
||||
const cardPanelWidth = 510;
|
||||
const bodyBoardComponent = this.parentComponent().parentComponent();
|
||||
|
||||
//On Mobile View Parent is Board, Not Board Body. I cant see how this funciton should work then.
|
||||
if (bodyBoardComponent === null) return;
|
||||
const $cardView = this.$(this.firstNode());
|
||||
const $cardContainer = bodyBoardComponent.$('.js-swimlanes');
|
||||
const cardContainerScroll = $cardContainer.scrollLeft();
|
||||
@@ -115,7 +120,10 @@ BlazeComponent.extendComponent({
|
||||
},
|
||||
|
||||
onDestroyed() {
|
||||
this.parentComponent().parentComponent().showOverlay.set(false);
|
||||
const parentComponent = this.parentComponent().parentComponent();
|
||||
//on mobile view parent is Board, not board body.
|
||||
if (parentComponent === null) return;
|
||||
parentComponent.showOverlay.set(false);
|
||||
},
|
||||
|
||||
events() {
|
||||
@@ -146,6 +154,20 @@ BlazeComponent.extendComponent({
|
||||
this.data().setTitle(title);
|
||||
}
|
||||
},
|
||||
'submit .js-card-details-assigner'(evt) {
|
||||
evt.preventDefault();
|
||||
const assigner = this.currentComponent().getValue().trim();
|
||||
if (assigner) {
|
||||
this.data().setAssignedBy(assigner);
|
||||
}
|
||||
},
|
||||
'submit .js-card-details-requester'(evt) {
|
||||
evt.preventDefault();
|
||||
const requester = this.currentComponent().getValue().trim();
|
||||
if (requester) {
|
||||
this.data().setRequestedBy(requester);
|
||||
}
|
||||
},
|
||||
'click .js-member': Popup.open('cardMember'),
|
||||
'click .js-add-members': Popup.open('cardMembers'),
|
||||
'click .js-add-labels': Popup.open('cardLabels'),
|
||||
@@ -154,8 +176,11 @@ BlazeComponent.extendComponent({
|
||||
'click .js-due-date': Popup.open('editCardDueDate'),
|
||||
'click .js-end-date': Popup.open('editCardEndDate'),
|
||||
'mouseenter .js-card-details' () {
|
||||
this.parentComponent().parentComponent().showOverlay.set(true);
|
||||
this.parentComponent().parentComponent().mouseHasEnterCardDetails = true;
|
||||
const parentComponent = this.parentComponent().parentComponent();
|
||||
//on mobile view parent is Board, not BoardBody.
|
||||
if (parentComponent === null) return;
|
||||
parentComponent.showOverlay.set(true);
|
||||
parentComponent.mouseHasEnterCardDetails = true;
|
||||
},
|
||||
'click #toggleButton'() {
|
||||
Meteor.call('toggleSystemMessages');
|
||||
@@ -215,8 +240,8 @@ Template.cardDetailsActionsPopup.events({
|
||||
'click .js-members': Popup.open('cardMembers'),
|
||||
'click .js-labels': Popup.open('cardLabels'),
|
||||
'click .js-attachments': Popup.open('cardAttachments'),
|
||||
'click .js-received-date': Popup.open('editCardReceivedDate'),
|
||||
'click .js-custom-fields': Popup.open('cardCustomFields'),
|
||||
'click .js-received-date': Popup.open('editCardReceivedDate'),
|
||||
'click .js-start-date': Popup.open('editCardStartDate'),
|
||||
'click .js-due-date': Popup.open('editCardDueDate'),
|
||||
'click .js-end-date': Popup.open('editCardEndDate'),
|
||||
@@ -263,6 +288,32 @@ Template.editCardTitleForm.events({
|
||||
},
|
||||
});
|
||||
|
||||
Template.editCardRequesterForm.onRendered(function() {
|
||||
autosize(this.$('.js-edit-card-requester'));
|
||||
});
|
||||
|
||||
Template.editCardRequesterForm.events({
|
||||
'keydown .js-edit-card-requester'(evt) {
|
||||
// If enter key was pressed, submit the data
|
||||
if (evt.keyCode === 13) {
|
||||
$('.js-submit-edit-card-requester-form').click();
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
Template.editCardAssignerForm.onRendered(function() {
|
||||
autosize(this.$('.js-edit-card-assigner'));
|
||||
});
|
||||
|
||||
Template.editCardAssignerForm.events({
|
||||
'keydown .js-edit-card-assigner'(evt) {
|
||||
// If enter key was pressed, submit the data
|
||||
if (evt.keyCode === 13) {
|
||||
$('.js-submit-edit-card-assigner-form').click();
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
Template.moveCardPopup.events({
|
||||
'click .js-done' () {
|
||||
// XXX We should *not* get the currentCard from the global state, but
|
||||
|
||||
@@ -82,7 +82,8 @@
|
||||
&.card-details-item-start,
|
||||
&.card-details-item-due,
|
||||
&.card-details-item-end,
|
||||
&.card-details-item-customfield
|
||||
&.card-details-item-customfield,
|
||||
&.card-details-item-name
|
||||
max-width: 50%
|
||||
flex-grow: 1
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// XXX Use .board-widget-labels as a flexbox container
|
||||
.card-label
|
||||
border-radius: 4px
|
||||
color: white
|
||||
color: white //Default white text, in select cases, changed to black to improve contrast between label colour and text
|
||||
display: inline-block
|
||||
font-weight: 700
|
||||
font-size: 13px
|
||||
@@ -48,9 +48,11 @@
|
||||
|
||||
.card-label-yellow
|
||||
background-color: #fad900
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-orange
|
||||
background-color: #ff9f19
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-red
|
||||
background-color: #eb4646
|
||||
@@ -63,6 +65,7 @@
|
||||
|
||||
.card-label-pink
|
||||
background-color: #ff78cb
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-sky
|
||||
background-color: #00c2e0
|
||||
@@ -72,6 +75,55 @@
|
||||
|
||||
.card-label-lime
|
||||
background-color: #51e898
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-silver
|
||||
background-color: #c0c0c0
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-peachpuff
|
||||
background-color: #ffdab9
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-crimson
|
||||
background-color: #dc143c
|
||||
|
||||
.card-label-plum
|
||||
background-color: #dda0dd
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-darkgreen
|
||||
background-color: #006400
|
||||
|
||||
.card-label-slateblue
|
||||
background-color: #6a5acd
|
||||
|
||||
.card-label-magenta
|
||||
background-color: #ff00ff
|
||||
|
||||
.card-label-gold
|
||||
background-color: #ffd700
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-navy
|
||||
background-color: #000080
|
||||
|
||||
.card-label-gray
|
||||
background-color: #808080
|
||||
|
||||
.card-label-saddlebrown
|
||||
background-color: #8b4513
|
||||
|
||||
.card-label-paleturquoise
|
||||
background-color: #afeeee
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-mistyrose
|
||||
background-color: #ffe4e1
|
||||
color: #000000 //Black text for better visibility
|
||||
|
||||
.card-label-indigo
|
||||
background-color: #4b0082
|
||||
|
||||
.edit-label,
|
||||
.create-label
|
||||
|
||||
@@ -10,20 +10,41 @@ template(name="minicard")
|
||||
+viewer
|
||||
= title
|
||||
.dates
|
||||
if receivedAt
|
||||
unless startAt
|
||||
unless dueAt
|
||||
unless endAt
|
||||
.date
|
||||
+minicardReceivedDate
|
||||
if startAt
|
||||
.date
|
||||
+minicardStartDate
|
||||
if dueAt
|
||||
unless endAt
|
||||
.date
|
||||
+minicardDueDate
|
||||
if endAt
|
||||
.date
|
||||
+minicardDueDate
|
||||
+minicardEndDate
|
||||
if spentTime
|
||||
.date
|
||||
+cardSpentTime
|
||||
|
||||
.minicard-custom-fields
|
||||
each customFieldsWD
|
||||
if definition.showOnCard
|
||||
.minicard-custom-field
|
||||
.minicard-custom-field-item
|
||||
= definition.name
|
||||
.minicard-custom-field-item
|
||||
+viewer
|
||||
= trueValue
|
||||
|
||||
if members
|
||||
.minicard-members.js-minicard-members
|
||||
each members
|
||||
+userAvatar(userId=this)
|
||||
|
||||
.badges
|
||||
if comments.count
|
||||
.badge(title="{{_ 'card-comments-title' comments.count }}")
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
position: relative
|
||||
display: flex
|
||||
align-items: center
|
||||
margin-bottom: 9px
|
||||
margin-bottom: 2px
|
||||
|
||||
&.placeholder
|
||||
background: darken(white, 20%)
|
||||
@@ -37,7 +37,7 @@
|
||||
flex-wrap: wrap
|
||||
background-color: #fff
|
||||
min-height: 20px
|
||||
box-shadow: 0 1px 2px rgba(0,0,0,.15)
|
||||
box-shadow: 0 0px 16px rgba(0,0,0,0.15) inset
|
||||
border-radius: 2px
|
||||
color: #4d4d4d
|
||||
overflow: hidden
|
||||
@@ -77,6 +77,13 @@
|
||||
height: @width
|
||||
border-radius: 2px
|
||||
margin-left: 3px
|
||||
.minicard-custom-fields
|
||||
display:block;
|
||||
.minicard-custom-field
|
||||
display:flex;
|
||||
.minicard-custom-field-item
|
||||
max-width:50%;
|
||||
flex-grow:1;
|
||||
.minicard-title
|
||||
p:last-child
|
||||
margin-bottom: 0
|
||||
|
||||
@@ -45,7 +45,7 @@ BlazeComponent.extendComponent({
|
||||
const boardView = Meteor.user().profile.boardView;
|
||||
if (boardView === 'board-view-swimlanes')
|
||||
swimlaneId = this.parentComponent().parentComponent().data()._id;
|
||||
else if (boardView === 'board-view-lists')
|
||||
else if ((boardView === 'board-view-lists') || (boardView === 'board-view-cal'))
|
||||
swimlaneId = Swimlanes.findOne({boardId})._id;
|
||||
|
||||
if (title) {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Template.invitationCode.onRendered(() => {
|
||||
const setting = Settings.findOne();
|
||||
if (setting || setting.disableRegistration) {
|
||||
if (!setting || !setting.disableRegistration) {
|
||||
$('#invitationcode').hide();
|
||||
}
|
||||
});
|
||||
@@ -37,7 +37,7 @@ template(name="createCustomFieldPopup")
|
||||
each dropdownItems.get
|
||||
input.js-dropdown-item(type="text" value=name placeholder="")
|
||||
input.js-dropdown-item.last(type="text" value="" placeholder="{{_ 'custom-field-dropdown-options-placeholder'}}")
|
||||
a.flex.js-field-show-on-card
|
||||
a.flex.js-field-show-on-card(class="{{#if showOnCard}}is-checked{{/if}}")
|
||||
.materialCheckBox(class="{{#if showOnCard}}is-checked{{/if}}")
|
||||
|
||||
span {{_ 'show-field-on-card'}}
|
||||
@@ -49,4 +49,4 @@ template(name="createCustomFieldPopup")
|
||||
|
||||
template(name="deleteCustomFieldPopup")
|
||||
p {{_ "custom-field-delete-pop"}}
|
||||
button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
|
||||
button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
|
||||
@@ -40,6 +40,25 @@ template(name="filterSidebar")
|
||||
| (<span class="username">{{ username }}</span>)
|
||||
if Filter.members.isSelected _id
|
||||
i.fa.fa-check
|
||||
hr
|
||||
ul.sidebar-list
|
||||
li(class="{{#if Filter.customFields.isSelected undefined}}active{{/if}}")
|
||||
a.name.js-toggle-custom-fields-filter
|
||||
span.sidebar-list-item-description
|
||||
| {{_ 'filter-no-custom-fields'}}
|
||||
if Filter.customFields.isSelected undefined
|
||||
i.fa.fa-check
|
||||
each currentBoard.customFields
|
||||
li(class="{{#if Filter.customFields.isSelected _id}}active{{/if}}")
|
||||
a.name.js-toggle-custom-fields-filter
|
||||
span.sidebar-list-item-description
|
||||
{{ name }}
|
||||
if Filter.customFields.isSelected _id
|
||||
i.fa.fa-check
|
||||
hr
|
||||
span {{_ 'advanced-filter-label'}}
|
||||
input.js-field-advanced-filter(type="text")
|
||||
span {{_ 'advanced-filter-description'}}
|
||||
if Filter.isActive
|
||||
hr
|
||||
a.sidebar-btn.js-clear-all
|
||||
|
||||
@@ -11,6 +11,16 @@ BlazeComponent.extendComponent({
|
||||
Filter.members.toggle(this.currentData()._id);
|
||||
Filter.resetExceptions();
|
||||
},
|
||||
'click .js-toggle-custom-fields-filter'(evt) {
|
||||
evt.preventDefault();
|
||||
Filter.customFields.toggle(this.currentData()._id);
|
||||
Filter.resetExceptions();
|
||||
},
|
||||
'change .js-field-advanced-filter'(evt) {
|
||||
evt.preventDefault();
|
||||
Filter.advanced.set(this.find('.js-field-advanced-filter').value.trim());
|
||||
Filter.resetExceptions();
|
||||
},
|
||||
'click .js-clear-all'(evt) {
|
||||
evt.preventDefault();
|
||||
Filter.reset();
|
||||
|
||||
@@ -7,6 +7,8 @@ function currentCardIsInThisList(listId, swimlaneId) {
|
||||
return currentCard && currentCard.listId === listId;
|
||||
else if (currentUser.profile.boardView === 'board-view-swimlanes')
|
||||
return currentCard && currentCard.listId === listId && currentCard.swimlaneId === swimlaneId;
|
||||
else if (currentUser.profile.boardView === 'board-view-cal')
|
||||
return currentCard;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ template(name="userAvatar")
|
||||
|
||||
template(name="userAvatarInitials")
|
||||
svg.avatar.avatar-initials(viewBox="0 0 {{viewPortWidth}} 15")
|
||||
text(x="50%" y="13" text-anchor="middle")= initials
|
||||
text(x="50%" y="50%" text-anchor="middle" alignment-baseline="central")= initials
|
||||
|
||||
template(name="userPopup")
|
||||
.board-member-menu
|
||||
|
||||
+349
-10
@@ -10,10 +10,13 @@ function showFilterSidebar() {
|
||||
|
||||
// Use a "set" filter for a field that is a set of documents uniquely
|
||||
// identified. For instance `{ labels: ['labelA', 'labelC', 'labelD'] }`.
|
||||
// use "subField" for searching inside object Fields.
|
||||
// For instance '{ 'customFields._id': ['field1','field2']} (subField would be: _id)
|
||||
class SetFilter {
|
||||
constructor() {
|
||||
constructor(subField = '') {
|
||||
this._dep = new Tracker.Dependency();
|
||||
this._selectedElements = [];
|
||||
this.subField = subField;
|
||||
}
|
||||
|
||||
isSelected(val) {
|
||||
@@ -76,6 +79,329 @@ class SetFilter {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Advanced filter forms a MongoSelector from a users String.
|
||||
// Build by: Ignatz 19.05.2018 (github feuerball11)
|
||||
class AdvancedFilter {
|
||||
constructor() {
|
||||
this._dep = new Tracker.Dependency();
|
||||
this._filter = '';
|
||||
this._lastValide = {};
|
||||
}
|
||||
|
||||
set(str) {
|
||||
this._filter = str;
|
||||
this._dep.changed();
|
||||
}
|
||||
|
||||
reset() {
|
||||
this._filter = '';
|
||||
this._lastValide = {};
|
||||
this._dep.changed();
|
||||
}
|
||||
|
||||
_isActive() {
|
||||
this._dep.depend();
|
||||
return this._filter !== '';
|
||||
}
|
||||
|
||||
_filterToCommands() {
|
||||
const commands = [];
|
||||
let current = '';
|
||||
let string = false;
|
||||
let regex = false;
|
||||
let wasString = false;
|
||||
let ignore = false;
|
||||
for (let i = 0; i < this._filter.length; i++) {
|
||||
const char = this._filter.charAt(i);
|
||||
if (ignore) {
|
||||
ignore = false;
|
||||
current += char;
|
||||
continue;
|
||||
}
|
||||
if (char === '/'){
|
||||
string = !string;
|
||||
if (string) regex = true;
|
||||
current += char;
|
||||
continue;
|
||||
}
|
||||
if (char === '\'') {
|
||||
string = !string;
|
||||
if (string) wasString = true;
|
||||
continue;
|
||||
}
|
||||
if (char === '\\' && !string) {
|
||||
ignore = true;
|
||||
continue;
|
||||
}
|
||||
if (char === ' ' && !string) {
|
||||
commands.push({ 'cmd': current, 'string': wasString, regex});
|
||||
wasString = false;
|
||||
current = '';
|
||||
continue;
|
||||
}
|
||||
current += char;
|
||||
}
|
||||
if (current !== '') {
|
||||
commands.push({ 'cmd': current, 'string': wasString, regex});
|
||||
}
|
||||
return commands;
|
||||
}
|
||||
|
||||
_fieldNameToId(field) {
|
||||
const found = CustomFields.findOne({ 'name': field });
|
||||
return found._id;
|
||||
}
|
||||
|
||||
_fieldValueToId(field, value)
|
||||
{
|
||||
const found = CustomFields.findOne({ 'name': field });
|
||||
if (found.settings.dropdownItems && found.settings.dropdownItems.length > 0)
|
||||
{
|
||||
for (let i = 0; i < found.settings.dropdownItems.length; i++)
|
||||
{
|
||||
if (found.settings.dropdownItems[i].name === value)
|
||||
{
|
||||
return found.settings.dropdownItems[i]._id;
|
||||
}
|
||||
}
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
_arrayToSelector(commands) {
|
||||
try {
|
||||
//let changed = false;
|
||||
this._processSubCommands(commands);
|
||||
}
|
||||
catch (e) { return this._lastValide; }
|
||||
this._lastValide = { $or: commands };
|
||||
return { $or: commands };
|
||||
}
|
||||
|
||||
_processSubCommands(commands) {
|
||||
const subcommands = [];
|
||||
let level = 0;
|
||||
let start = -1;
|
||||
for (let i = 0; i < commands.length; i++) {
|
||||
if (commands[i].cmd) {
|
||||
switch (commands[i].cmd) {
|
||||
case '(':
|
||||
{
|
||||
level++;
|
||||
if (start === -1) start = i;
|
||||
continue;
|
||||
}
|
||||
case ')':
|
||||
{
|
||||
level--;
|
||||
commands.splice(i, 1);
|
||||
i--;
|
||||
continue;
|
||||
}
|
||||
default:
|
||||
{
|
||||
if (level > 0) {
|
||||
subcommands.push(commands[i]);
|
||||
commands.splice(i, 1);
|
||||
i--;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (start !== -1) {
|
||||
this._processSubCommands(subcommands);
|
||||
if (subcommands.length === 1)
|
||||
commands.splice(start, 0, subcommands[0]);
|
||||
else
|
||||
commands.splice(start, 0, subcommands);
|
||||
}
|
||||
this._processConditions(commands);
|
||||
this._processLogicalOperators(commands);
|
||||
}
|
||||
|
||||
_processConditions(commands) {
|
||||
for (let i = 0; i < commands.length; i++) {
|
||||
if (!commands[i].string && commands[i].cmd) {
|
||||
switch (commands[i].cmd) {
|
||||
case '=':
|
||||
case '==':
|
||||
case '===':
|
||||
{
|
||||
const field = commands[i - 1].cmd;
|
||||
const str = commands[i + 1].cmd;
|
||||
if (commands[i + 1].regex)
|
||||
{
|
||||
const match = str.match(new RegExp('^/(.*?)/([gimy]*)$'));
|
||||
let regex = null;
|
||||
if (match.length > 2)
|
||||
regex = new RegExp(match[1], match[2]);
|
||||
else
|
||||
regex = new RegExp(match[1]);
|
||||
commands[i] = { 'customFields._id': this._fieldNameToId(field), 'customFields.value': regex };
|
||||
}
|
||||
else
|
||||
{
|
||||
commands[i] = { 'customFields._id': this._fieldNameToId(field), 'customFields.value': {$in: [this._fieldValueToId(field, str), parseInt(str, 10)]} };
|
||||
}
|
||||
commands.splice(i - 1, 1);
|
||||
commands.splice(i, 1);
|
||||
//changed = true;
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
case '!=':
|
||||
case '!==':
|
||||
{
|
||||
const field = commands[i - 1].cmd;
|
||||
const str = commands[i + 1].cmd;
|
||||
if (commands[i + 1].regex)
|
||||
{
|
||||
const match = str.match(new RegExp('^/(.*?)/([gimy]*)$'));
|
||||
let regex = null;
|
||||
if (match.length > 2)
|
||||
regex = new RegExp(match[1], match[2]);
|
||||
else
|
||||
regex = new RegExp(match[1]);
|
||||
commands[i] = { 'customFields._id': this._fieldNameToId(field), 'customFields.value': { $not: regex } };
|
||||
}
|
||||
else
|
||||
{
|
||||
commands[i] = { 'customFields._id': this._fieldNameToId(field), 'customFields.value': { $not: {$in: [this._fieldValueToId(field, str), parseInt(str, 10)]} } };
|
||||
}
|
||||
commands.splice(i - 1, 1);
|
||||
commands.splice(i, 1);
|
||||
//changed = true;
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
case '>':
|
||||
case 'gt':
|
||||
case 'Gt':
|
||||
case 'GT':
|
||||
{
|
||||
const field = commands[i - 1].cmd;
|
||||
const str = commands[i + 1].cmd;
|
||||
commands[i] = { 'customFields._id': this._fieldNameToId(field), 'customFields.value': { $gt: parseInt(str, 10) } };
|
||||
commands.splice(i - 1, 1);
|
||||
commands.splice(i, 1);
|
||||
//changed = true;
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
case '>=':
|
||||
case '>==':
|
||||
case 'gte':
|
||||
case 'Gte':
|
||||
case 'GTE':
|
||||
{
|
||||
const field = commands[i - 1].cmd;
|
||||
const str = commands[i + 1].cmd;
|
||||
commands[i] = { 'customFields._id': this._fieldNameToId(field), 'customFields.value': { $gte: parseInt(str, 10) } };
|
||||
commands.splice(i - 1, 1);
|
||||
commands.splice(i, 1);
|
||||
//changed = true;
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
case '<':
|
||||
case 'lt':
|
||||
case 'Lt':
|
||||
case 'LT':
|
||||
{
|
||||
const field = commands[i - 1].cmd;
|
||||
const str = commands[i + 1].cmd;
|
||||
commands[i] = { 'customFields._id': this._fieldNameToId(field), 'customFields.value': { $lt: parseInt(str, 10) } };
|
||||
commands.splice(i - 1, 1);
|
||||
commands.splice(i, 1);
|
||||
//changed = true;
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
case '<=':
|
||||
case '<==':
|
||||
case 'lte':
|
||||
case 'Lte':
|
||||
case 'LTE':
|
||||
{
|
||||
const field = commands[i - 1].cmd;
|
||||
const str = commands[i + 1].cmd;
|
||||
commands[i] = { 'customFields._id': this._fieldNameToId(field), 'customFields.value': { $lte: parseInt(str, 10) } };
|
||||
commands.splice(i - 1, 1);
|
||||
commands.splice(i, 1);
|
||||
//changed = true;
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
_processLogicalOperators(commands) {
|
||||
for (let i = 0; i < commands.length; i++) {
|
||||
if (!commands[i].string && commands[i].cmd) {
|
||||
switch (commands[i].cmd) {
|
||||
case 'or':
|
||||
case 'Or':
|
||||
case 'OR':
|
||||
case '|':
|
||||
case '||':
|
||||
{
|
||||
const op1 = commands[i - 1];
|
||||
const op2 = commands[i + 1];
|
||||
commands[i] = { $or: [op1, op2] };
|
||||
commands.splice(i - 1, 1);
|
||||
commands.splice(i, 1);
|
||||
//changed = true;
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
case 'and':
|
||||
case 'And':
|
||||
case 'AND':
|
||||
case '&':
|
||||
case '&&':
|
||||
{
|
||||
const op1 = commands[i - 1];
|
||||
const op2 = commands[i + 1];
|
||||
commands[i] = { $and: [op1, op2] };
|
||||
commands.splice(i - 1, 1);
|
||||
commands.splice(i, 1);
|
||||
//changed = true;
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
|
||||
case 'not':
|
||||
case 'Not':
|
||||
case 'NOT':
|
||||
case '!':
|
||||
{
|
||||
const op1 = commands[i + 1];
|
||||
commands[i] = { $not: op1 };
|
||||
commands.splice(i + 1, 1);
|
||||
//changed = true;
|
||||
i--;
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
_getMongoSelector() {
|
||||
this._dep.depend();
|
||||
const commands = this._filterToCommands();
|
||||
return this._arrayToSelector(commands);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// The global Filter object.
|
||||
// XXX It would be possible to re-write this object more elegantly, and removing
|
||||
// the need to provide a list of `_fields`. We also should move methods into the
|
||||
@@ -86,8 +412,10 @@ Filter = {
|
||||
// before changing the schema.
|
||||
labelIds: new SetFilter(),
|
||||
members: new SetFilter(),
|
||||
customFields: new SetFilter('_id'),
|
||||
advanced: new AdvancedFilter(),
|
||||
|
||||
_fields: ['labelIds', 'members'],
|
||||
_fields: ['labelIds', 'members', 'customFields'],
|
||||
|
||||
// We don't filter cards that have been added after the last filter change. To
|
||||
// implement this we keep the id of these cards in this `_exceptions` fields
|
||||
@@ -98,7 +426,7 @@ Filter = {
|
||||
isActive() {
|
||||
return _.any(this._fields, (fieldName) => {
|
||||
return this[fieldName]._isActive();
|
||||
});
|
||||
}) || this.advanced._isActive();
|
||||
},
|
||||
|
||||
_getMongoSelector() {
|
||||
@@ -111,7 +439,12 @@ Filter = {
|
||||
this._fields.forEach((fieldName) => {
|
||||
const filter = this[fieldName];
|
||||
if (filter._isActive()) {
|
||||
filterSelector[fieldName] = filter._getMongoSelector();
|
||||
if (filter.subField !== '') {
|
||||
filterSelector[`${fieldName}.${filter.subField}`] = filter._getMongoSelector();
|
||||
}
|
||||
else {
|
||||
filterSelector[fieldName] = filter._getMongoSelector();
|
||||
}
|
||||
emptySelector[fieldName] = filter._getEmptySelector();
|
||||
if (emptySelector[fieldName] !== null) {
|
||||
includeEmptySelectors = true;
|
||||
@@ -119,13 +452,18 @@ Filter = {
|
||||
}
|
||||
});
|
||||
|
||||
const exceptionsSelector = {_id: {$in: this._exceptions}};
|
||||
const exceptionsSelector = { _id: { $in: this._exceptions } };
|
||||
this._exceptionsDep.depend();
|
||||
|
||||
if (includeEmptySelectors)
|
||||
return {$or: [filterSelector, exceptionsSelector, emptySelector]};
|
||||
else
|
||||
return {$or: [filterSelector, exceptionsSelector]};
|
||||
const selectors = [exceptionsSelector];
|
||||
|
||||
if (_.any(this._fields, (fieldName) => {
|
||||
return this[fieldName]._isActive();
|
||||
})) selectors.push(filterSelector);
|
||||
if (includeEmptySelectors) selectors.push(emptySelector);
|
||||
if (this.advanced._isActive()) selectors.push(this.advanced._getMongoSelector());
|
||||
|
||||
return { $or: selectors };
|
||||
},
|
||||
|
||||
mongoSelector(additionalSelector) {
|
||||
@@ -133,7 +471,7 @@ Filter = {
|
||||
if (_.isUndefined(additionalSelector))
|
||||
return filterSelector;
|
||||
else
|
||||
return {$and: [filterSelector, additionalSelector]};
|
||||
return { $and: [filterSelector, additionalSelector] };
|
||||
},
|
||||
|
||||
reset() {
|
||||
@@ -141,6 +479,7 @@ Filter = {
|
||||
const filter = this[fieldName];
|
||||
filter.reset();
|
||||
});
|
||||
this.advanced.reset();
|
||||
this.resetExceptions();
|
||||
},
|
||||
|
||||
|
||||
@@ -75,6 +75,16 @@ InlinedForm = BlazeComponent.extendComponent({
|
||||
EscapeActions.register('inlinedForm',
|
||||
() => { currentlyOpenedForm.get().close(); },
|
||||
() => { return currentlyOpenedForm.get() !== null; }, {
|
||||
noClickEscapeOn: '.js-inlined-form',
|
||||
enabledOnClick: false,
|
||||
}
|
||||
);
|
||||
|
||||
// submit on click outside
|
||||
document.addEventListener('click', function(evt) {
|
||||
const openedForm = currentlyOpenedForm.get();
|
||||
const isClickOutside = $(evt.target).closest('.js-inlined-form').length === 0;
|
||||
if (openedForm && isClickOutside) {
|
||||
$('.js-inlined-form button[type=submit]').click();
|
||||
openedForm.close();
|
||||
}
|
||||
}, true);
|
||||
+1
-1
@@ -3,7 +3,7 @@ version: '2'
|
||||
services:
|
||||
|
||||
wekandb:
|
||||
image: mongo:3.2.19
|
||||
image: mongo:3.2.20
|
||||
container_name: wekan-db
|
||||
restart: always
|
||||
command: mongod --smallfiles --oplogSize 128
|
||||
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "قائمة اللوحة",
|
||||
"boards": "لوحات",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "القائمات",
|
||||
"bucket-example": "مثل « todo list » على سبيل المثال",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "%s تعليقات لهذه البطاقة",
|
||||
"card-delete-notice": "هذا حذف أبديّ . سوف تفقد كل الإجراءات المنوطة بهذه البطاقة",
|
||||
"card-delete-pop": "سيتم إزالة جميع الإجراءات من تبعات النشاط، وأنك لن تكون قادرا على إعادة فتح البطاقة. لا يوجد التراجع.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "مستحق",
|
||||
"card-due-on": "مستحق في",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "مسح التصفية",
|
||||
"filter-no-label": "لا يوجد ملصق",
|
||||
"filter-no-member": "ليس هناك أي عضو",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "التصفية تشتغل",
|
||||
"filter-on-desc": "أنت بصدد تصفية بطاقات هذه اللوحة. اضغط هنا لتعديل التصفية.",
|
||||
"filter-to-selection": "تصفية بالتحديد",
|
||||
"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",
|
||||
"fullname": "الإسم الكامل",
|
||||
"header-logo-title": "الرجوع إلى صفحة اللوحات",
|
||||
"hide-system-messages": "إخفاء رسائل النظام",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+133
-123
@@ -1,51 +1,51 @@
|
||||
{
|
||||
"accept": "Accept",
|
||||
"act-activity-notify": "[Wekan] Известия за дейности",
|
||||
"act-addAttachment": "attached __attachment__ to __card__",
|
||||
"act-addChecklist": "added checklist __checklist__ to __card__",
|
||||
"act-addChecklistItem": "added __checklistItem__ to checklist __checklist__ on __card__",
|
||||
"act-addAttachment": "прикачи __attachment__ към __card__",
|
||||
"act-addChecklist": "добави списък със задачи __checklist__ към __card__",
|
||||
"act-addChecklistItem": "добави __checklistItem__ към списък със задачи __checklist__ в __card__",
|
||||
"act-addComment": "Коментира в __card__: __comment__",
|
||||
"act-createBoard": "created __board__",
|
||||
"act-createCard": "added __card__ to __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createList": "added __list__ to __board__",
|
||||
"act-addBoardMember": "added __member__ to __board__",
|
||||
"act-archivedBoard": "__board__ moved to Recycle Bin",
|
||||
"act-archivedCard": "__card__ moved to Recycle Bin",
|
||||
"act-archivedList": "__list__ moved to Recycle Bin",
|
||||
"act-archivedSwimlane": "__swimlane__ moved to Recycle Bin",
|
||||
"act-importBoard": "imported __board__",
|
||||
"act-importCard": "imported __card__",
|
||||
"act-importList": "imported __list__",
|
||||
"act-joinMember": "added __member__ to __card__",
|
||||
"act-moveCard": "moved __card__ from __oldList__ to __list__",
|
||||
"act-removeBoardMember": "removed __member__ from __board__",
|
||||
"act-restoredCard": "restored __card__ to __board__",
|
||||
"act-unjoinMember": "removed __member__ from __card__",
|
||||
"act-createBoard": "създаде __board__",
|
||||
"act-createCard": "добави __card__ към __list__",
|
||||
"act-createCustomField": "създаде собствено поле __customField__",
|
||||
"act-createList": "добави __list__ към __board__",
|
||||
"act-addBoardMember": "добави __member__ към __board__",
|
||||
"act-archivedBoard": "__board__ беше преместен в Кошчето",
|
||||
"act-archivedCard": "__card__ беше преместена в Кошчето",
|
||||
"act-archivedList": "__list__ беше преместен в Кошчето",
|
||||
"act-archivedSwimlane": "__swimlane__ беше преместен в Кошчето",
|
||||
"act-importBoard": "импортира __board__",
|
||||
"act-importCard": "импортира __card__",
|
||||
"act-importList": "импортира __list__",
|
||||
"act-joinMember": "добави __member__ към __card__",
|
||||
"act-moveCard": "премести __card__ от __oldList__ в __list__",
|
||||
"act-removeBoardMember": "премахна __member__ от __board__",
|
||||
"act-restoredCard": "възстанови __card__ в __board__",
|
||||
"act-unjoinMember": "премахна __member__ от __card__",
|
||||
"act-withBoardTitle": "[Wekan] __board__",
|
||||
"act-withCardTitle": "[__board__] __card__",
|
||||
"actions": "Actions",
|
||||
"activities": "Действия",
|
||||
"activity": "Дейности",
|
||||
"activity-added": "добави %s към %s",
|
||||
"activity-archived": "%s moved to Recycle Bin",
|
||||
"activity-archived": "премести %s в Кошчето",
|
||||
"activity-attached": "прикачи %s към %s",
|
||||
"activity-created": "създаде %s",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "създаде собствено поле %s",
|
||||
"activity-excluded": "изключи %s от %s",
|
||||
"activity-imported": "импортира %s в/във %s от %s",
|
||||
"activity-imported-board": "импортира %s от %s",
|
||||
"activity-joined": "joined %s",
|
||||
"activity-joined": "се присъедини към %s",
|
||||
"activity-moved": "премести %s от %s в/във %s",
|
||||
"activity-on": "на %s",
|
||||
"activity-removed": "премахна %s от %s",
|
||||
"activity-sent": "изпрати %s до %s",
|
||||
"activity-unjoined": "unjoined %s",
|
||||
"activity-unjoined": "вече не е част от %s",
|
||||
"activity-checklist-added": "добави списък със задачи към %s",
|
||||
"activity-checklist-item-added": "добави точка към '%s' в/във %s",
|
||||
"add": "Добави",
|
||||
"add-attachment": "Добави прикачен файл",
|
||||
"add-board": "Добави дъска",
|
||||
"add-board": "Добави Табло",
|
||||
"add-card": "Добави карта",
|
||||
"add-swimlane": "Добави коридор",
|
||||
"add-checklist": "Добави списък със задачи",
|
||||
@@ -60,69 +60,70 @@
|
||||
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
|
||||
"admin-announcement": "Съобщение",
|
||||
"admin-announcement-active": "Active System-Wide Announcement",
|
||||
"admin-announcement-title": "Announcement from Administrator",
|
||||
"all-boards": "Всички дъски",
|
||||
"and-n-other-card": "And __count__ other card",
|
||||
"and-n-other-card_plural": "And __count__ other cards",
|
||||
"admin-announcement-title": "Съобщение от администратора",
|
||||
"all-boards": "Всички табла",
|
||||
"and-n-other-card": "И __count__ друга карта",
|
||||
"and-n-other-card_plural": "И __count__ други карти",
|
||||
"apply": "Приложи",
|
||||
"app-is-offline": "Wekan is loading, please wait. Refreshing the page will cause data loss. If Wekan does not load, please check that Wekan server has not stopped.",
|
||||
"archive": "Move to Recycle Bin",
|
||||
"archive-all": "Move All to Recycle Bin",
|
||||
"archive-board": "Move Board to Recycle Bin",
|
||||
"archive-card": "Move Card to Recycle Bin",
|
||||
"archive-list": "Move List to Recycle Bin",
|
||||
"archive-swimlane": "Move Swimlane to Recycle Bin",
|
||||
"archive-selection": "Move selection to Recycle Bin",
|
||||
"archiveBoardPopup-title": "Move Board to Recycle Bin?",
|
||||
"archived-items": "Recycle Bin",
|
||||
"archived-boards": "Boards in Recycle Bin",
|
||||
"restore-board": "Restore Board",
|
||||
"no-archived-boards": "No Boards in Recycle Bin.",
|
||||
"archives": "Recycle Bin",
|
||||
"assign-member": "Assign member",
|
||||
"app-is-offline": "Wekan зарежда, моля изчакайте! Презареждането на страницата може да доведе до загуба на данни. Ако Wekan не се зареди, моля проверете дали сървъра му работи.",
|
||||
"archive": "Премести в Кошчето",
|
||||
"archive-all": "Премести всички в Кошчето",
|
||||
"archive-board": "Премести Таблото в Кошчето",
|
||||
"archive-card": "Премести Картата в Кошчето",
|
||||
"archive-list": "Премести Списъка в Кошчето",
|
||||
"archive-swimlane": "Премести Коридора в Кошчето",
|
||||
"archive-selection": "Премести избраните в Кошчето",
|
||||
"archiveBoardPopup-title": "Сигурни ли сте, че искате да преместите Таблото в Кошчето?",
|
||||
"archived-items": "Кошче",
|
||||
"archived-boards": "Табла в Кошчето",
|
||||
"restore-board": "Възстанови Таблото",
|
||||
"no-archived-boards": "Няма Табла в Кошчето.",
|
||||
"archives": "Кошче",
|
||||
"assign-member": "Възложи на член от екипа",
|
||||
"attached": "прикачен",
|
||||
"attachment": "Прикаченн файл",
|
||||
"attachment-delete-pop": "Deleting an attachment is permanent. There is no undo.",
|
||||
"attachment-delete-pop": "Изтриването на прикачен файл е завинаги. Няма как да бъде възстановен.",
|
||||
"attachmentDeletePopup-title": "Желаете ли да изтриете прикачения файл?",
|
||||
"attachments": "Прикачени файлове",
|
||||
"auto-watch": "Автоматично наблюдаване на дъските, когато са създадени",
|
||||
"auto-watch": "Автоматично наблюдаване на таблата, когато са създадени",
|
||||
"avatar-too-big": "Аватарът е прекалено голям (максимум 70KB)",
|
||||
"back": "Назад",
|
||||
"board-change-color": "Промени цвета",
|
||||
"board-nb-stars": "%s звезди",
|
||||
"board-not-found": "Board not found",
|
||||
"board-not-found": "Таблото не е намерено",
|
||||
"board-private-info": "This board will be <strong>private</strong>.",
|
||||
"board-public-info": "This board will be <strong>public</strong>.",
|
||||
"boardChangeColorPopup-title": "Change Board Background",
|
||||
"boardChangeTitlePopup-title": "Rename Board",
|
||||
"boardChangeTitlePopup-title": "Промени името на Таблото",
|
||||
"boardChangeVisibilityPopup-title": "Change Visibility",
|
||||
"boardChangeWatchPopup-title": "Промени наблюдаването",
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Дъски",
|
||||
"boardMenuPopup-title": "Меню на Таблото",
|
||||
"boards": "Табла",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Коридори",
|
||||
"board-view-lists": "Списъци",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
"cancel": "Cancel",
|
||||
"card-archived": "This card is moved to Recycle Bin.",
|
||||
"card-archived": "Картата е преместена в Кошчето.",
|
||||
"card-comments-title": "Тази карта има %s коментар.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Готова за",
|
||||
"card-due-on": "Готова за",
|
||||
"card-spent": "Изработено време",
|
||||
"card-edit-attachments": "Промени прикачените файлове",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "Промени собствените полета",
|
||||
"card-edit-labels": "Промени етикетите",
|
||||
"card-edit-members": "Промени членовете",
|
||||
"card-labels-title": "Променете етикетите за тази карта",
|
||||
"card-members-title": "Add or remove members of the board from the card.",
|
||||
"card-labels-title": "Промени етикетите за картата.",
|
||||
"card-members-title": "Добави или премахни членове на Таблото от тази карта.",
|
||||
"card-start": "Начало",
|
||||
"card-start-on": "Starts on",
|
||||
"cardAttachmentsPopup-title": "Attach From",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"card-start-on": "Започва на",
|
||||
"cardAttachmentsPopup-title": "Прикачи от",
|
||||
"cardCustomField-datePopup-title": "Промени датата",
|
||||
"cardCustomFieldsPopup-title": "Промени собствените полета",
|
||||
"cardDeletePopup-title": "Желаете да изтриете картата?",
|
||||
"cardDetailsActionsPopup-title": "Опции",
|
||||
"cardLabelsPopup-title": "Етикети",
|
||||
@@ -130,7 +131,7 @@
|
||||
"cardMorePopup-title": "Още",
|
||||
"cards": "Карти",
|
||||
"cards-count": "Карти",
|
||||
"change": "Change",
|
||||
"change": "Промени",
|
||||
"change-avatar": "Промени аватара",
|
||||
"change-password": "Промени паролата",
|
||||
"change-permissions": "Change permissions",
|
||||
@@ -142,30 +143,30 @@
|
||||
"changeSettingsPopup-title": "Промяна на настройките",
|
||||
"checklists": "Списъци със задачи",
|
||||
"click-to-star": "Click to star this board.",
|
||||
"click-to-unstar": "Натиснете, за да премахнете тази дъска от любими.",
|
||||
"clipboard": "Clipboard or drag & drop",
|
||||
"close": "Close",
|
||||
"close-board": "Close Board",
|
||||
"click-to-unstar": "Натиснете, за да премахнете това табло от любими.",
|
||||
"clipboard": "Клипборда или с драг & дроп",
|
||||
"close": "Затвори",
|
||||
"close-board": "Затвори Таблото",
|
||||
"close-board-pop": "You will be able to restore the board by clicking the “Recycle Bin” button from the home header.",
|
||||
"color-black": "black",
|
||||
"color-blue": "blue",
|
||||
"color-green": "green",
|
||||
"color-lime": "lime",
|
||||
"color-orange": "orange",
|
||||
"color-pink": "pink",
|
||||
"color-purple": "purple",
|
||||
"color-red": "red",
|
||||
"color-sky": "sky",
|
||||
"color-yellow": "yellow",
|
||||
"color-black": "черно",
|
||||
"color-blue": "синьо",
|
||||
"color-green": "зелено",
|
||||
"color-lime": "лайм",
|
||||
"color-orange": "оранжево",
|
||||
"color-pink": "розово",
|
||||
"color-purple": "пурпурно",
|
||||
"color-red": "червено",
|
||||
"color-sky": "светло синьо",
|
||||
"color-yellow": "жълто",
|
||||
"comment": "Коментирай",
|
||||
"comment-placeholder": "Напиши коментар",
|
||||
"comment-only": "Само коментар",
|
||||
"comment-only-desc": "Може да коментира само в карти.",
|
||||
"computer": "Computer",
|
||||
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist",
|
||||
"computer": "Компютър",
|
||||
"confirm-checklist-delete-dialog": "Сигурни ли сте, че искате да изтриете този чеклист?",
|
||||
"copy-card-link-to-clipboard": "Копирай връзката на картата в клипборда",
|
||||
"copyCardPopup-title": "Копирай картата",
|
||||
"copyChecklistToManyCardsPopup-title": "Копирай шаблона за чеклисти в много карти",
|
||||
"copyChecklistToManyCardsPopup-title": "Копирай чеклисти в други карти",
|
||||
"copyChecklistToManyCardsPopup-instructions": "Destination Card Titles and Descriptions in this JSON format",
|
||||
"copyChecklistToManyCardsPopup-format": "[ {\"title\": \"First card title\", \"description\":\"First card description\"}, {\"title\":\"Second card title\",\"description\":\"Second card description\"},{\"title\":\"Last card title\",\"description\":\"Last card description\"} ]",
|
||||
"create": "Create",
|
||||
@@ -176,42 +177,42 @@
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"current": "current",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-checkbox": "Чекбокс",
|
||||
"custom-field-date": "Дата",
|
||||
"custom-field-dropdown": "Dropdown List",
|
||||
"custom-field-dropdown": "Падащо меню",
|
||||
"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-fields": "Custom Fields",
|
||||
"custom-field-number": "Номер",
|
||||
"custom-field-text": "Текст",
|
||||
"custom-fields": "Собствени полета",
|
||||
"date": "Дата",
|
||||
"decline": "Decline",
|
||||
"decline": "Отказ",
|
||||
"default-avatar": "Основен аватар",
|
||||
"delete": "Изтрий",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "Изтриване на Собственото поле?",
|
||||
"deleteLabelPopup-title": "Желаете да изтриете етикета?",
|
||||
"description": "Описание",
|
||||
"disambiguateMultiLabelPopup-title": "Disambiguate Label Action",
|
||||
"disambiguateMultiMemberPopup-title": "Disambiguate Member Action",
|
||||
"discard": "Discard",
|
||||
"done": "Done",
|
||||
"discard": "Отказ",
|
||||
"done": "Готово",
|
||||
"download": "Сваляне",
|
||||
"edit": "Промени",
|
||||
"edit-avatar": "Промени аватара",
|
||||
"edit-profile": "Промяна на профила",
|
||||
"edit-wip-limit": "Промени WIP лимита",
|
||||
"soft-wip-limit": "Soft WIP Limit",
|
||||
"soft-wip-limit": "\"Мек\" WIP лимит",
|
||||
"editCardStartDatePopup-title": "Промени началната дата",
|
||||
"editCardDueDatePopup-title": "Промени датата за готовност",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "Промени Полето",
|
||||
"editCardSpentTimePopup-title": "Промени изработеното време",
|
||||
"editLabelPopup-title": "Change Label",
|
||||
"editLabelPopup-title": "Промяна на Етикета",
|
||||
"editNotificationPopup-title": "Промени известията",
|
||||
"editProfilePopup-title": "Промяна на профила",
|
||||
"email": "Имейл",
|
||||
"email-enrollAccount-subject": "An account created for you on __siteName__",
|
||||
"email-enrollAccount-subject": "Ваш профил беше създаден на __siteName__",
|
||||
"email-enrollAccount-text": "Hello __user__,\n\nTo start using the service, simply click the link below.\n\n__url__\n\nThanks.",
|
||||
"email-fail": "Неуспешно изпращане на имейла",
|
||||
"email-fail-text": "Възникна грешка при изпращането на имейла",
|
||||
@@ -224,7 +225,7 @@
|
||||
"email-sent": "Имейлът е изпратен",
|
||||
"email-verifyEmail-subject": "Verify your email address on __siteName__",
|
||||
"email-verifyEmail-text": "Hello __user__,\n\nTo verify your account email, simply click the link below.\n\n__url__\n\nThanks.",
|
||||
"enable-wip-limit": "Enable WIP Limit",
|
||||
"enable-wip-limit": "Включи WIP лимита",
|
||||
"error-board-doesNotExist": "This board does not exist",
|
||||
"error-board-notAdmin": "You need to be admin of this board to do that",
|
||||
"error-board-notAMember": "You need to be a member of this board to do that",
|
||||
@@ -240,16 +241,19 @@
|
||||
"filter": "Филтър",
|
||||
"filter-cards": "Филтрирай картите",
|
||||
"filter-clear": "Премахване на филтрите",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-label": "без етикет",
|
||||
"filter-no-member": "без член",
|
||||
"filter-no-custom-fields": "Няма Собствени полета",
|
||||
"filter-on": "Има приложени филтри",
|
||||
"filter-on-desc": "В момента филтрирате картите в тази дъска. Моля, натиснете тук, за да промените филтъра.",
|
||||
"filter-on-desc": "В момента филтрирате картите в това табло. Моля, натиснете тук, за да промените филтъра.",
|
||||
"filter-to-selection": "Филтрирай избраните",
|
||||
"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",
|
||||
"fullname": "Име",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Скриване на системните съобщения",
|
||||
"headerBarCreateBoardPopup-title": "Create Board",
|
||||
"home": "Home",
|
||||
"home": "Начало",
|
||||
"import": "Import",
|
||||
"import-board": "import board",
|
||||
"import-board-c": "Import board",
|
||||
@@ -265,13 +269,13 @@
|
||||
"import-members-map": "Your imported board has some members. Please map the members you want to import to Wekan users",
|
||||
"import-show-user-mapping": "Review members mapping",
|
||||
"import-user-select": "Pick the Wekan user you want to use as this member",
|
||||
"importMapMembersAddPopup-title": "Select Wekan member",
|
||||
"importMapMembersAddPopup-title": "Избери Wekan член",
|
||||
"info": "Версия",
|
||||
"initials": "Инициали",
|
||||
"invalid-date": "Невалидна дата",
|
||||
"invalid-time": "Невалиден час",
|
||||
"invalid-user": "Невалиден потребител",
|
||||
"joined": "joined",
|
||||
"joined": "присъедини ",
|
||||
"just-invited": "You are just invited to this board",
|
||||
"keyboard-shortcuts": "Keyboard shortcuts",
|
||||
"label-create": "Създай етикет",
|
||||
@@ -284,17 +288,17 @@
|
||||
"leave-board-pop": "Are you sure you want to leave __boardTitle__? You will be removed from all cards on this board.",
|
||||
"leaveBoardPopup-title": "Leave Board ?",
|
||||
"link-card": "Връзка към тази карта",
|
||||
"list-archive-cards": "Move all cards in this list to Recycle Bin",
|
||||
"list-archive-cards": "Премести всички карти от този списък в Кошчето",
|
||||
"list-archive-cards-pop": "This will remove all the cards in this list from the board. To view cards in Recycle Bin and bring them back to the board, click “Menu” > “Recycle Bin”.",
|
||||
"list-move-cards": "Премести всички карти в този списък",
|
||||
"list-select-cards": "Избери всички карти в този списък",
|
||||
"listActionPopup-title": "List Actions",
|
||||
"swimlaneActionPopup-title": "Swimlane Actions",
|
||||
"listImportCardPopup-title": "Import a Trello card",
|
||||
"listImportCardPopup-title": "Импорт на карта от Trello",
|
||||
"listMorePopup-title": "Още",
|
||||
"link-list": "Връзка към този списък",
|
||||
"list-delete-pop": "All actions will be removed from the activity feed and you won't be able to recover the list. There is no undo.",
|
||||
"list-delete-suggest-archive": "You can move a list to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"list-delete-suggest-archive": "Можете да преместите списък в Кошчето, за да го премахнете от Таблото и запазите активността.",
|
||||
"lists": "Списъци",
|
||||
"swimlanes": "Коридори",
|
||||
"log-out": "Изход",
|
||||
@@ -312,17 +316,17 @@
|
||||
"multi-selection-on": "Множественият избор е приложен",
|
||||
"muted": "Muted",
|
||||
"muted-info": "You will never be notified of any changes in this board",
|
||||
"my-boards": "Моите дъски",
|
||||
"my-boards": "Моите табла",
|
||||
"name": "Име",
|
||||
"no-archived-cards": "No cards in Recycle Bin.",
|
||||
"no-archived-lists": "No lists in Recycle Bin.",
|
||||
"no-archived-swimlanes": "No swimlanes in Recycle Bin.",
|
||||
"no-archived-cards": "Няма карти в Кошчето.",
|
||||
"no-archived-lists": "Няма списъци в Кошчето.",
|
||||
"no-archived-swimlanes": "Няма коридори в Кошчето.",
|
||||
"no-results": "No results",
|
||||
"normal": "Normal",
|
||||
"normal-desc": "Can view and edit cards. Can't change settings.",
|
||||
"not-accepted-yet": "Invitation not accepted yet",
|
||||
"notify-participate": "Получавате информация за всички карти, в които сте отбелязани или сте създали",
|
||||
"notify-watch": "Получавате информация за всички дъски, списъци и карти, които наблюдавате",
|
||||
"notify-watch": "Получавате информация за всички табла, списъци и карти, които наблюдавате",
|
||||
"optional": "optional",
|
||||
"or": "or",
|
||||
"page-maybe-private": "This page may be private. You may be able to view it by <a href='%s'>logging in</a>.",
|
||||
@@ -343,12 +347,12 @@
|
||||
"remove-from-board": "Remove from Board",
|
||||
"remove-label": "Remove Label",
|
||||
"listDeletePopup-title": "Желаете да изтриете списъка?",
|
||||
"remove-member": "Remove Member",
|
||||
"remove-member-from-card": "Remove from Card",
|
||||
"remove-member": "Премахни член",
|
||||
"remove-member-from-card": "Премахни от картата",
|
||||
"remove-member-pop": "Remove __name__ (__username__) from __boardTitle__? The member will be removed from all cards on this board. They will receive a notification.",
|
||||
"removeMemberPopup-title": "Remove Member?",
|
||||
"rename": "Rename",
|
||||
"rename-board": "Rename Board",
|
||||
"rename-board": "Промени името на Таблото",
|
||||
"restore": "Възстанови",
|
||||
"save": "Запази",
|
||||
"search": "Търсене",
|
||||
@@ -356,8 +360,8 @@
|
||||
"search-example": "Text to search for?",
|
||||
"select-color": "Избери цвят",
|
||||
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
|
||||
"setWipLimitPopup-title": "Set WIP Limit",
|
||||
"shortcut-assign-self": "Assign yourself to current card",
|
||||
"setWipLimitPopup-title": "Въведи WIP лимит",
|
||||
"shortcut-assign-self": "Добави себе си към тази карта",
|
||||
"shortcut-autocomplete-emoji": "Autocomplete emoji",
|
||||
"shortcut-autocomplete-members": "Autocomplete members",
|
||||
"shortcut-clear-filters": "Изчистване на всички филтри",
|
||||
@@ -371,12 +375,12 @@
|
||||
"sidebar-close": "Close Sidebar",
|
||||
"signupPopup-title": "Create an Account",
|
||||
"star-board-title": "Click to star this board. It will show up at top of your boards list.",
|
||||
"starred-boards": "Любими дъски",
|
||||
"starred-boards-description": "Любимите дъски се показват в началото на списъка Ви.",
|
||||
"starred-boards": "Любими табла",
|
||||
"starred-boards-description": "Любимите табла се показват в началото на списъка Ви.",
|
||||
"subscribe": "Subscribe",
|
||||
"team": "Team",
|
||||
"this-board": "this board",
|
||||
"this-card": "тази карта",
|
||||
"this-card": "картата",
|
||||
"spent-time-hours": "Изработено време (часа)",
|
||||
"overtime-hours": "Оувъртайм (часа)",
|
||||
"overtime": "Оувъртайм",
|
||||
@@ -395,7 +399,7 @@
|
||||
"uploaded-avatar": "Качихте аватар",
|
||||
"username": "Потребителско име",
|
||||
"view-it": "View it",
|
||||
"warn-list-archived": "warning: this card is in an list at Recycle Bin",
|
||||
"warn-list-archived": "внимание: тази карта е в списък, който е в Кошчето",
|
||||
"watch": "Наблюдавай",
|
||||
"watching": "Наблюдава",
|
||||
"watching-info": "You will be notified of any change in this board",
|
||||
@@ -404,9 +408,9 @@
|
||||
"welcome-list1": "Basics",
|
||||
"welcome-list2": "Advanced",
|
||||
"what-to-do": "What do you want to do?",
|
||||
"wipLimitErrorPopup-title": "Invalid WIP Limit",
|
||||
"wipLimitErrorPopup-title": "Невалиден WIP лимит",
|
||||
"wipLimitErrorPopup-dialog-pt1": "The number of tasks in this list is higher than the WIP limit you've defined.",
|
||||
"wipLimitErrorPopup-dialog-pt2": "Please move some tasks out of this list, or set a higher WIP limit.",
|
||||
"wipLimitErrorPopup-dialog-pt2": "Моля, преместете някои от задачите от този списък или въведете по-висок WIP лимит.",
|
||||
"admin-panel": "Администраторски панел",
|
||||
"settings": "Настройки",
|
||||
"people": "Хора",
|
||||
@@ -451,7 +455,7 @@
|
||||
"hours": "часа",
|
||||
"minutes": "минути",
|
||||
"seconds": "секунди",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "Покажи това поле в картата",
|
||||
"yes": "Да",
|
||||
"no": "Не",
|
||||
"accounts": "Профили",
|
||||
@@ -460,10 +464,16 @@
|
||||
"createdAt": "Създаден на",
|
||||
"verified": "Потвърден",
|
||||
"active": "Активен",
|
||||
"card-received": "Received",
|
||||
"card-received-on": "Received on",
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"card-received": "Получена",
|
||||
"card-received-on": "Получена на",
|
||||
"card-end": "Завършена",
|
||||
"card-end-on": "Завършена на",
|
||||
"editCardReceivedDatePopup-title": "Промени датата на получаване",
|
||||
"editCardEndDatePopup-title": "Промени датата на завършване",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Menú del tauler",
|
||||
"boards": "Taulers",
|
||||
"board-view": "Visió del tauler",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Carrils de Natació",
|
||||
"board-view-lists": "Llistes",
|
||||
"bucket-example": "Igual que “Bucket List”, per exemple",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "Aquesta fitxa té %s comentaris.",
|
||||
"card-delete-notice": "L'esborrat és permanent. Perdreu totes les accions associades a aquesta fitxa.",
|
||||
"card-delete-pop": "Totes les accions s'eliminaran de l'activitat i no podreu tornar a obrir la fitxa. No es pot desfer.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Finalitza",
|
||||
"card-due-on": "Finalitza a",
|
||||
"card-spent": "Temps Dedicat",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Elimina filtre",
|
||||
"filter-no-label": "Sense etiqueta",
|
||||
"filter-no-member": "Sense membres",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filtra per",
|
||||
"filter-on-desc": "Estau filtrant fitxes en aquest tauler. Feu clic aquí per editar el filtre.",
|
||||
"filter-to-selection": "Filtra selecció",
|
||||
"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",
|
||||
"fullname": "Nom complet",
|
||||
"header-logo-title": "Torna a la teva pàgina de taulers",
|
||||
"hide-system-messages": "Oculta missatges del sistema",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+30
-20
@@ -7,7 +7,7 @@
|
||||
"act-addComment": "komentář k __card__: __comment__",
|
||||
"act-createBoard": "přidání __board__",
|
||||
"act-createCard": "přidání __card__ do __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "vytvořeno vlastní pole __customField__",
|
||||
"act-createList": "přidání __list__ do __board__",
|
||||
"act-addBoardMember": "přidání __member__ do __board__",
|
||||
"act-archivedBoard": "__board__ bylo přesunuto do koše",
|
||||
@@ -31,7 +31,7 @@
|
||||
"activity-archived": "%s bylo přesunuto do koše",
|
||||
"activity-attached": "přiloženo %s k %s",
|
||||
"activity-created": "%s vytvořeno",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "vytvořeno vlastní pole %s",
|
||||
"activity-excluded": "%s vyjmuto z %s",
|
||||
"activity-imported": "importován %s do %s z %s",
|
||||
"activity-imported-board": "importován %s z %s",
|
||||
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Menu tabla",
|
||||
"boards": "Tabla",
|
||||
"board-view": "Náhled tabla",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Seznamy",
|
||||
"bucket-example": "Například \"Než mě odvedou\"",
|
||||
@@ -113,7 +114,7 @@
|
||||
"card-due-on": "Do",
|
||||
"card-spent": "Strávený čas",
|
||||
"card-edit-attachments": "Upravit přílohy",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "Upravit vlastní pole",
|
||||
"card-edit-labels": "Upravit štítky",
|
||||
"card-edit-members": "Upravit členy",
|
||||
"card-labels-title": "Změnit štítky karty.",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "Start",
|
||||
"card-start-on": "Začít dne",
|
||||
"cardAttachmentsPopup-title": "Přiložit formulář",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "Změnit datum",
|
||||
"cardCustomFieldsPopup-title": "Upravit vlastní pole",
|
||||
"cardDeletePopup-title": "Smazat kartu?",
|
||||
"cardDetailsActionsPopup-title": "Akce karty",
|
||||
"cardLabelsPopup-title": "Štítky",
|
||||
@@ -172,25 +173,25 @@
|
||||
"createBoardPopup-title": "Vytvořit tablo",
|
||||
"chooseBoardSourcePopup-title": "Importovat tablo",
|
||||
"createLabelPopup-title": "Vytvořit štítek",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "Vytvořit pole",
|
||||
"createCustomFieldPopup-title": "Vytvořit pole",
|
||||
"current": "Aktuální",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-delete-pop": "Nelze vrátit zpět. Toto odebere toto vlastní pole ze všech karet a zničí jeho historii.",
|
||||
"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-dropdown": "Rozbalovací seznam",
|
||||
"custom-field-dropdown-none": "(prázdné)",
|
||||
"custom-field-dropdown-options": "Seznam možností",
|
||||
"custom-field-dropdown-options-placeholder": "Stiskněte enter pro přidání více možností",
|
||||
"custom-field-dropdown-unknown": "(neznámé)",
|
||||
"custom-field-number": "Číslo",
|
||||
"custom-field-text": "Text",
|
||||
"custom-fields": "Custom Fields",
|
||||
"custom-fields": "Vlastní pole",
|
||||
"date": "Datum",
|
||||
"decline": "Zamítnout",
|
||||
"default-avatar": "Výchozí avatar",
|
||||
"delete": "Smazat",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "Smazat vlastní pole",
|
||||
"deleteLabelPopup-title": "Smazat štítek?",
|
||||
"description": "Popis",
|
||||
"disambiguateMultiLabelPopup-title": "Dvojznačný štítek akce",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Mírný WIP limit",
|
||||
"editCardStartDatePopup-title": "Změnit datum startu úkolu",
|
||||
"editCardDueDatePopup-title": "Změnit datum dokončení úkolu",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "Upravit pole",
|
||||
"editCardSpentTimePopup-title": "Změnit strávený čas",
|
||||
"editLabelPopup-title": "Změnit štítek",
|
||||
"editNotificationPopup-title": "Změnit notifikace",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Vyčistit filtr",
|
||||
"filter-no-label": "Žádný štítek",
|
||||
"filter-no-member": "Žádný člen",
|
||||
"filter-no-custom-fields": "Žádné vlastní pole",
|
||||
"filter-on": "Filtr je zapnut",
|
||||
"filter-on-desc": "Filtrujete karty tohoto tabla. Pro úpravu filtru klikni sem.",
|
||||
"filter-to-selection": "Filtrovat výběr",
|
||||
"advanced-filter-label": "Pokročilý filtr",
|
||||
"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",
|
||||
"fullname": "Celé jméno",
|
||||
"header-logo-title": "Jit zpět na stránku s tably.",
|
||||
"hide-system-messages": "Skrýt systémové zprávy",
|
||||
@@ -386,7 +390,7 @@
|
||||
"title": "Název",
|
||||
"tracking": "Pozorující",
|
||||
"tracking-info": "Budete informováni o všech změnách v kartách, u kterých jste tvůrce nebo člen.",
|
||||
"type": "Type",
|
||||
"type": "Typ",
|
||||
"unassign-member": "Vyřadit člena",
|
||||
"unsaved-description": "Popis neni uložen.",
|
||||
"unwatch": "Přestat sledovat",
|
||||
@@ -451,7 +455,7 @@
|
||||
"hours": "hodin",
|
||||
"minutes": "minut",
|
||||
"seconds": "sekund",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "Ukázat toto pole na kartě",
|
||||
"yes": "Ano",
|
||||
"no": "Ne",
|
||||
"accounts": "Účty",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "Konec",
|
||||
"card-end-on": "Končí v",
|
||||
"editCardReceivedDatePopup-title": "Změnit datum přijetí",
|
||||
"editCardEndDatePopup-title": "Změnit datum konce"
|
||||
"editCardEndDatePopup-title": "Změnit datum konce",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Smazat tablo?",
|
||||
"delete-board": "Smazat tablo"
|
||||
}
|
||||
+21
-11
@@ -2,7 +2,7 @@
|
||||
"accept": "Akzeptieren",
|
||||
"act-activity-notify": "[Wekan] Aktivitätsbenachrichtigung",
|
||||
"act-addAttachment": "hat __attachment__ an __card__ angehängt",
|
||||
"act-addChecklist": "hat die Checklist __checklist__ zu __card__ hinzugefügt",
|
||||
"act-addChecklist": "hat die Checkliste __checklist__ zu __card__ hinzugefügt",
|
||||
"act-addChecklistItem": "hat __checklistItem__ zur Checkliste __checklist__ in __card__ hinzugefügt",
|
||||
"act-addComment": "hat __card__ kommentiert: __comment__",
|
||||
"act-createBoard": "hat __board__ erstellt",
|
||||
@@ -28,10 +28,10 @@
|
||||
"activities": "Aktivitäten",
|
||||
"activity": "Aktivität",
|
||||
"activity-added": "hat %s zu %s hinzugefügt",
|
||||
"activity-archived": "%s in den Papierkorb verschoben",
|
||||
"activity-archived": "hat %s in den Papierkorb verschoben",
|
||||
"activity-attached": "hat %s an %s angehängt",
|
||||
"activity-created": "hat %s erstellt",
|
||||
"activity-customfield-created": "Benutzerdefiniertes Feld erstellen %s",
|
||||
"activity-customfield-created": "hat das benutzerdefinierte Feld %s erstellt",
|
||||
"activity-excluded": "hat %s von %s ausgeschlossen",
|
||||
"activity-imported": "hat %s in %s von %s importiert",
|
||||
"activity-imported-board": "hat %s von %s importiert",
|
||||
@@ -42,14 +42,14 @@
|
||||
"activity-sent": "hat %s an %s gesendet",
|
||||
"activity-unjoined": "hat %s verlassen",
|
||||
"activity-checklist-added": "hat eine Checkliste zu %s hinzugefügt",
|
||||
"activity-checklist-item-added": "hat einen Punkt zur Checkliste '%s' in %s hinzugefügt",
|
||||
"activity-checklist-item-added": "hat eine Checklistenposition zu '%s' in %s hinzugefügt",
|
||||
"add": "Hinzufügen",
|
||||
"add-attachment": "Datei anhängen",
|
||||
"add-board": "neues Board",
|
||||
"add-card": "Karte hinzufügen",
|
||||
"add-swimlane": "Swimlane hinzufügen",
|
||||
"add-checklist": "Checkliste hinzufügen",
|
||||
"add-checklist-item": "Punkt zu einer Checkliste hinzufügen",
|
||||
"add-checklist-item": "Position zu einer Checkliste hinzufügen",
|
||||
"add-cover": "Cover hinzufügen",
|
||||
"add-label": "Label hinzufügen",
|
||||
"add-list": "Liste hinzufügen",
|
||||
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Boardmenü",
|
||||
"boards": "Boards",
|
||||
"board-view": "Boardansicht",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Listen",
|
||||
"bucket-example": "z.B. \"Löffelliste\"",
|
||||
@@ -175,16 +176,16 @@
|
||||
"createCustomField": "Feld erstellen",
|
||||
"createCustomFieldPopup-title": "Feld erstellen",
|
||||
"current": "aktuell",
|
||||
"custom-field-delete-pop": "Dies wird die Karte entfernen und der dazugehörige Verlauf löschen. Es gibt keine Rückgängig-Funktion.",
|
||||
"custom-field-delete-pop": "Dies wird das Feld aus allen Karten entfernen und den dazugehörigen Verlauf löschen. Die Aktion kann nicht rückgängig gemacht werden.",
|
||||
"custom-field-checkbox": "Kontrollkästchen",
|
||||
"custom-field-date": "Datum",
|
||||
"custom-field-dropdown": "Dropdown-Liste",
|
||||
"custom-field-dropdown": "Dropdownliste",
|
||||
"custom-field-dropdown-none": "(keiner)",
|
||||
"custom-field-dropdown-options": "Listenoptionen",
|
||||
"custom-field-dropdown-options-placeholder": "Enter-Taste drücken zum Hinzufügen weiterer Optionen",
|
||||
"custom-field-dropdown-options-placeholder": "Drücken Sie die Eingabetaste, um weitere Optionen hinzuzufügen",
|
||||
"custom-field-dropdown-unknown": "(unbekannt)",
|
||||
"custom-field-number": "Zahl",
|
||||
"custom-field-text": "Test",
|
||||
"custom-field-text": "Text",
|
||||
"custom-fields": "Benutzerdefinierte Felder",
|
||||
"date": "Datum",
|
||||
"decline": "Ablehnen",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Filter entfernen",
|
||||
"filter-no-label": "Kein Label",
|
||||
"filter-no-member": "Kein Mitglied",
|
||||
"filter-no-custom-fields": "Keine benutzerdefinierten Felder",
|
||||
"filter-on": "Filter ist aktiv",
|
||||
"filter-on-desc": "Sie filtern die Karten in diesem Board. Klicken Sie, um den Filter zu bearbeiten.",
|
||||
"filter-to-selection": "Ergebnisse auswählen",
|
||||
"advanced-filter-label": "Erweiterter Filter",
|
||||
"advanced-filter-description": "Der erweiterte Filter erlaubt die Eingabe von Zeichenfolgen, die folgende Operatoren enthalten: == != <= >= && || ( ). Ein Leerzeichen wird als Trennzeichen zwischen den Operatoren verwendet. Sie können nach allen benutzerdefinierten Feldern filtern, indem Sie deren Namen und Werte eingeben. Zum Beispiel: Feld1 == Wert1. Hinweis: Wenn Felder oder Werte Leerzeichen enthalten, müssen Sie sie in einfache Anführungszeichen setzen. Zum Beispiel: 'Feld 1' == 'Wert 1'. Um einzelne Steuerzeichen (' \\/) zu überspringen, können Sie \\ verwenden. Zum Beispiel: Feld1 == Ich bin\\'s. Sie können außerdem mehrere Bedingungen kombinieren. Zum Beispiel: F1 == W1 || F1 == W2. Normalerweise werden alle Operatoren von links nach rechts interpretiert. Sie können die Reihenfolge ändern, indem Sie Klammern setzen. Zum Beispiel: F1 == W1 && ( F2 == W2 || F2 == W3 ). Sie können Textfelder auch mithilfe regulärer Ausdrücke durchsuchen: F1 == /Tes.*/i",
|
||||
"fullname": "Vollständiger Name",
|
||||
"header-logo-title": "Zurück zur Board Seite.",
|
||||
"hide-system-messages": "Systemmeldungen ausblenden",
|
||||
@@ -375,7 +379,7 @@
|
||||
"starred-boards-description": "Markierte Boards erscheinen oben in ihrer Boardliste.",
|
||||
"subscribe": "Abonnieren",
|
||||
"team": "Team",
|
||||
"this-board": "dieses Board",
|
||||
"this-board": "diesem Board",
|
||||
"this-card": "diese Karte",
|
||||
"spent-time-hours": "Aufgewendete Zeit (Stunden)",
|
||||
"overtime-hours": "Mehrarbeit (Stunden)",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "Ende",
|
||||
"card-end-on": "Endet am",
|
||||
"editCardReceivedDatePopup-title": "Empfangsdatum ändern",
|
||||
"editCardEndDatePopup-title": "Enddatum ändern"
|
||||
"editCardEndDatePopup-title": "Enddatum ändern",
|
||||
"assigned-by": "Zugewiesen von",
|
||||
"requested-by": "Angefordert von",
|
||||
"board-delete-notice": "Löschen kann nicht rückgängig gemacht werden. Sie werden alle Listen, Karten und Aktionen, die mit diesem Board verbunden sind, verlieren.",
|
||||
"delete-board-confirm-popup": "Alle Listen, Karten, Labels und Akivitäten werden gelöscht und Sie können die Inhalte des Boards nicht wiederherstellen! Die Aktion kann nicht rückgängig gemacht werden.",
|
||||
"boardDeletePopup-title": "Board löschen?",
|
||||
"delete-board": "Board löschen"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Λίστες",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Έως",
|
||||
"card-due-on": "Έως τις",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "Κανένα μέλος",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Πλήρες Όνομα",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card to the Recycle Bin to remove it from the board and preserve its activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Listoj",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "Nenia etikedo",
|
||||
"filter-no-member": "Nenia membro",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+11
-1
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Menú del Tablero",
|
||||
"boards": "Tableros",
|
||||
"board-view": "Vista de Tablero",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Calles",
|
||||
"board-view-lists": "Listas",
|
||||
"bucket-example": "Como \"Lista de Contenedores\" por ejemplo",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Sacar filtro",
|
||||
"filter-no-label": "Sin etiqueta",
|
||||
"filter-no-member": "No es miembro",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "El filtro está activado",
|
||||
"filter-on-desc": "Estás filtrando cartas en este tablero. Clickeá acá para editar el filtro.",
|
||||
"filter-to-selection": "Filtrar en la selección",
|
||||
"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",
|
||||
"fullname": "Nombre Completo",
|
||||
"header-logo-title": "Retroceder a tu página de tableros.",
|
||||
"hide-system-messages": "Esconder mensajes del sistema",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "Termino",
|
||||
"card-end-on": "Termina en",
|
||||
"editCardReceivedDatePopup-title": "Cambiar fecha de recepción",
|
||||
"editCardEndDatePopup-title": "Cambiar fecha de término"
|
||||
"editCardEndDatePopup-title": "Cambiar fecha de término",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+34
-24
@@ -7,7 +7,7 @@
|
||||
"act-addComment": "ha comentado en __card__: __comment__",
|
||||
"act-createBoard": "ha creado __board__",
|
||||
"act-createCard": "ha añadido __card__ a __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "creado el campo personalizado __customField__",
|
||||
"act-createList": "ha añadido __list__ a __board__",
|
||||
"act-addBoardMember": "ha añadido a __member__ a __board__",
|
||||
"act-archivedBoard": "__board__ se ha enviado a la papelera de reciclaje",
|
||||
@@ -31,7 +31,7 @@
|
||||
"activity-archived": "%s se ha enviado a la papelera de reciclaje",
|
||||
"activity-attached": "ha adjuntado %s a %s",
|
||||
"activity-created": "ha creado %s",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "creado el campo personalizado %s",
|
||||
"activity-excluded": "ha excluido %s de %s",
|
||||
"activity-imported": "ha importado %s a %s desde %s",
|
||||
"activity-imported-board": "ha importado %s desde %s",
|
||||
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Menú del tablero",
|
||||
"boards": "Tableros",
|
||||
"board-view": "Vista del tablero",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Carriles",
|
||||
"board-view-lists": "Listas",
|
||||
"bucket-example": "Como “Cosas por hacer” por ejemplo",
|
||||
@@ -113,7 +114,7 @@
|
||||
"card-due-on": "Vence el",
|
||||
"card-spent": "Tiempo consumido",
|
||||
"card-edit-attachments": "Editar los adjuntos",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "Editar los campos personalizados",
|
||||
"card-edit-labels": "Editar las etiquetas",
|
||||
"card-edit-members": "Editar los miembros",
|
||||
"card-labels-title": "Cambia las etiquetas de la tarjeta",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "Comienza",
|
||||
"card-start-on": "Comienza el",
|
||||
"cardAttachmentsPopup-title": "Adjuntar desde",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "Cambiar la fecha",
|
||||
"cardCustomFieldsPopup-title": "Editar los campos personalizados",
|
||||
"cardDeletePopup-title": "¿Eliminar la tarjeta?",
|
||||
"cardDetailsActionsPopup-title": "Acciones de la tarjeta",
|
||||
"cardLabelsPopup-title": "Etiquetas",
|
||||
@@ -172,25 +173,25 @@
|
||||
"createBoardPopup-title": "Crear tablero",
|
||||
"chooseBoardSourcePopup-title": "Importar un tablero",
|
||||
"createLabelPopup-title": "Crear etiqueta",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "Crear un campo",
|
||||
"createCustomFieldPopup-title": "Crear un campo",
|
||||
"current": "actual",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "Se eliminará este campo personalizado de todas las tarjetas y se destruirá su historial. Esta acción no puede deshacerse.",
|
||||
"custom-field-checkbox": "Casilla de verificación",
|
||||
"custom-field-date": "Fecha",
|
||||
"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-fields": "Custom Fields",
|
||||
"custom-field-dropdown": "Lista desplegable",
|
||||
"custom-field-dropdown-none": "(nada)",
|
||||
"custom-field-dropdown-options": "Opciones de la lista",
|
||||
"custom-field-dropdown-options-placeholder": "Pulsa Intro para añadir más opciones",
|
||||
"custom-field-dropdown-unknown": "(desconocido)",
|
||||
"custom-field-number": "Número",
|
||||
"custom-field-text": "Texto",
|
||||
"custom-fields": "Campos personalizados",
|
||||
"date": "Fecha",
|
||||
"decline": "Declinar",
|
||||
"default-avatar": "Avatar por defecto",
|
||||
"delete": "Eliminar",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "¿Borrar el campo personalizado?",
|
||||
"deleteLabelPopup-title": "¿Eliminar la etiqueta?",
|
||||
"description": "Descripción",
|
||||
"disambiguateMultiLabelPopup-title": "Desambiguar la acción de etiqueta",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Límite del trabajo en proceso flexible",
|
||||
"editCardStartDatePopup-title": "Cambiar la fecha de comienzo",
|
||||
"editCardDueDatePopup-title": "Cambiar la fecha de vencimiento",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "Editar el campo",
|
||||
"editCardSpentTimePopup-title": "Cambiar el tiempo consumido",
|
||||
"editLabelPopup-title": "Cambiar la etiqueta",
|
||||
"editNotificationPopup-title": "Editar las notificaciones",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Limpiar el filtro",
|
||||
"filter-no-label": "Sin etiqueta",
|
||||
"filter-no-member": "Sin miembro",
|
||||
"filter-on": "Filtro activado",
|
||||
"filter-no-custom-fields": "Sin campos personalizados",
|
||||
"filter-on": "Filtrado activado",
|
||||
"filter-on-desc": "Estás filtrando tarjetas en este tablero. Haz clic aquí para editar el filtro.",
|
||||
"filter-to-selection": "Filtrar la selección",
|
||||
"advanced-filter-label": "Filtrado avanzado",
|
||||
"advanced-filter-description": "El filtrado avanzado permite escribir una cadena que contiene los siguientes operadores: == != <= >= && || ( ) Se utiliza un espacio como separador entre los operadores. Se pueden filtrar todos los campos personalizados escribiendo sus nombres y valores. Por ejemplo: Campo1 == Valor1. Nota: Si los campos o valores contienen espacios, deben encapsularse entre comillas simples. Por ejemplo: 'Campo 1' == 'Valor 1'. Para omitir los caracteres de control único (' \\/), se usa \\. Por ejemplo: Campo1 = I\\'m. También se pueden combinar múltiples condiciones. Por ejemplo: C1 == V1 || C1 == V2. Normalmente todos los operadores se interpretan de izquierda a derecha. Se puede cambiar el orden colocando paréntesis. Por ejemplo: C1 == V1 && ( C2 == V2 || C2 == V3 ). También se puede buscar en campos de texto usando expresiones regulares: C1 == /Tes.*/i",
|
||||
"fullname": "Nombre completo",
|
||||
"header-logo-title": "Volver a tu página de tableros",
|
||||
"hide-system-messages": "Ocultar las notificaciones de actividad",
|
||||
@@ -276,7 +280,7 @@
|
||||
"keyboard-shortcuts": "Atajos de teclado",
|
||||
"label-create": "Crear una etiqueta",
|
||||
"label-default": "etiqueta %s (por defecto)",
|
||||
"label-delete-pop": "Esto eliminará esta etiqueta de todas las tarjetas y destruirá su historial. Esta acción no puede deshacerse.",
|
||||
"label-delete-pop": "Se eliminará esta etiqueta de todas las tarjetas y se destruirá su historial. Esta acción no puede deshacerse.",
|
||||
"labels": "Etiquetas",
|
||||
"language": "Cambiar el idioma",
|
||||
"last-admin-desc": "No puedes cambiar roles porque debe haber al menos un administrador.",
|
||||
@@ -386,7 +390,7 @@
|
||||
"title": "Título",
|
||||
"tracking": "Siguiendo",
|
||||
"tracking-info": "Serás notificado de cualquier cambio en las tarjetas en las que participas como creador o miembro.",
|
||||
"type": "Type",
|
||||
"type": "Tipo",
|
||||
"unassign-member": "Desvincular al miembro",
|
||||
"unsaved-description": "Tienes una descripción por añadir.",
|
||||
"unwatch": "Dejar de vigilar",
|
||||
@@ -451,7 +455,7 @@
|
||||
"hours": "horas",
|
||||
"minutes": "minutos",
|
||||
"seconds": "segundos",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "Mostrar este campo en la tarjeta",
|
||||
"yes": "Sí",
|
||||
"no": "No",
|
||||
"accounts": "Cuentas",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "Finalizado",
|
||||
"card-end-on": "Finalizado el",
|
||||
"editCardReceivedDatePopup-title": "Cambiar la fecha de recepción",
|
||||
"editCardEndDatePopup-title": "Cambiar la fecha de finalización"
|
||||
"editCardEndDatePopup-title": "Cambiar la fecha de finalización",
|
||||
"assigned-by": "Asignado por",
|
||||
"requested-by": "Solicitado por",
|
||||
"board-delete-notice": "Se eliminarán todas las listas, tarjetas y acciones asociadas a este tablero. Esta acción no puede deshacerse.",
|
||||
"delete-board-confirm-popup": "Se eliminarán todas las listas, tarjetas, etiquetas y actividades, y no podrás recuperar los contenidos del tablero. Esta acción no puede deshacerse.",
|
||||
"boardDeletePopup-title": "¿Borrar el tablero?",
|
||||
"delete-board": "Borrar el tablero"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Arbelaren menua",
|
||||
"boards": "Arbelak",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Zerrendak",
|
||||
"bucket-example": "Esaterako \"Pertz zerrenda\"",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "Txartel honek iruzkin %s dauka.",
|
||||
"card-delete-notice": "Ezabaketa behin betiko da. Txartel honi lotutako ekintza guztiak galduko dituzu.",
|
||||
"card-delete-pop": "Ekintza guztiak ekintza jariotik kenduko dira eta ezin izango duzu txartela berrireki. Ez dago desegiterik.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Epemuga",
|
||||
"card-due-on": "Epemuga",
|
||||
"card-spent": "Erabilitako denbora",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Garbitu iragazkia",
|
||||
"filter-no-label": "Etiketarik ez",
|
||||
"filter-no-member": "Kiderik ez",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Iragazkia gaituta dago",
|
||||
"filter-on-desc": "Arbel honetako txartela iragazten ari zara. Egin klik hemen iragazkia editatzeko.",
|
||||
"filter-to-selection": "Iragazketa aukerara",
|
||||
"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",
|
||||
"fullname": "Izen abizenak",
|
||||
"header-logo-title": "Itzuli zure arbelen orrira.",
|
||||
"hide-system-messages": "Ezkutatu sistemako mezuak",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+48
-38
@@ -7,13 +7,13 @@
|
||||
"act-addComment": "درج نظر برای __card__: __comment__",
|
||||
"act-createBoard": "__board__ ایجاد شد",
|
||||
"act-createCard": "__card__ به __list__ اضافه شد",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "فیلد __customField__ ایجاد شد",
|
||||
"act-createList": "__list__ به __board__ اضافه شد",
|
||||
"act-addBoardMember": "__member__ به __board__ اضافه شد",
|
||||
"act-archivedBoard": "__board__ moved to Recycle Bin",
|
||||
"act-archivedCard": "__card__ moved to Recycle Bin",
|
||||
"act-archivedList": "__list__ moved to Recycle Bin",
|
||||
"act-archivedSwimlane": "__swimlane__ moved to Recycle Bin",
|
||||
"act-archivedBoard": "__board__ به سطل زباله ریخته شد",
|
||||
"act-archivedCard": "__card__ به سطل زباله منتقل شد",
|
||||
"act-archivedList": "__list__ به سطل زباله منتقل شد",
|
||||
"act-archivedSwimlane": "__swimlane__ به سطل زباله منتقل شد",
|
||||
"act-importBoard": "__board__ وارد شده",
|
||||
"act-importCard": "__card__ وارد شده",
|
||||
"act-importList": "__list__ وارد شده",
|
||||
@@ -28,10 +28,10 @@
|
||||
"activities": "فعالیت ها",
|
||||
"activity": "فعالیت",
|
||||
"activity-added": "%s به %s اضافه شد",
|
||||
"activity-archived": "%s moved to Recycle Bin",
|
||||
"activity-archived": "%s به سطل زباله منتقل شد",
|
||||
"activity-attached": "%s به %s پیوست شد",
|
||||
"activity-created": "%s ایجاد شد",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "%s فیلدشخصی ایجاد شد",
|
||||
"activity-excluded": "%s از %s مستثنی گردید",
|
||||
"activity-imported": "%s از %s وارد %s شد",
|
||||
"activity-imported-board": "%s از %s وارد شد",
|
||||
@@ -66,19 +66,19 @@
|
||||
"and-n-other-card_plural": "و __count__ کارت دیگر",
|
||||
"apply": "اعمال",
|
||||
"app-is-offline": "Wekan در حال بارگذاری است. لطفا صبر کنید. نوسازی صفحه، منجر به از دست رفتن دادهها میشود. اگر Wekan بارگذاری نشد، لطفا بررسی کنید که سرور Wekan متوقف نشده باشد.",
|
||||
"archive": "Move to Recycle Bin",
|
||||
"archive-all": "Move All to Recycle Bin",
|
||||
"archive-board": "Move Board to Recycle Bin",
|
||||
"archive-card": "Move Card to Recycle Bin",
|
||||
"archive-list": "Move List to Recycle Bin",
|
||||
"archive-swimlane": "Move Swimlane to Recycle Bin",
|
||||
"archive-selection": "Move selection to Recycle Bin",
|
||||
"archiveBoardPopup-title": "Move Board to Recycle Bin?",
|
||||
"archived-items": "Recycle Bin",
|
||||
"archived-boards": "Boards in Recycle Bin",
|
||||
"archive": "ریختن به سطل زباله",
|
||||
"archive-all": "ریختن همه به سطل زباله",
|
||||
"archive-board": "ریختن تخته به سطل زباله",
|
||||
"archive-card": "ریختن کارت به سطل زباله",
|
||||
"archive-list": "ریختن لیست به سطل زباله",
|
||||
"archive-swimlane": "ریختن مسیرشنا به سطل زباله",
|
||||
"archive-selection": "انتخاب شده ها را به سطل زباله بریز",
|
||||
"archiveBoardPopup-title": "آیا تخته به سطل زباله ریخته شود؟",
|
||||
"archived-items": "سطل زباله",
|
||||
"archived-boards": "تخته هایی که به زباله ریخته شده است",
|
||||
"restore-board": "بازیابی تخته",
|
||||
"no-archived-boards": "No Boards in Recycle Bin.",
|
||||
"archives": "Recycle Bin",
|
||||
"no-archived-boards": "هیچ تخته ای در سطل زباله وجود ندارد",
|
||||
"archives": "سطل زباله",
|
||||
"assign-member": "تعیین عضو",
|
||||
"attached": "ضمیمه شده",
|
||||
"attachment": "ضمیمه",
|
||||
@@ -100,20 +100,21 @@
|
||||
"boardMenuPopup-title": "منوی تخته",
|
||||
"boards": "تختهها",
|
||||
"board-view": "نمایش تخته",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "فهرستها",
|
||||
"bucket-example": "برای مثال چیزی شبیه \"لیست سبدها\"",
|
||||
"cancel": "انصراف",
|
||||
"card-archived": "This card is moved to Recycle Bin.",
|
||||
"card-archived": "این کارت به سطل زباله ریخته شده است",
|
||||
"card-comments-title": "این کارت دارای %s نظر است.",
|
||||
"card-delete-notice": "حذف دائمی. تمامی موارد مرتبط با این کارت از بین خواهند رفت.",
|
||||
"card-delete-pop": "همه اقدامات از این پردازه (خوراک) حذف خواهد شد و امکان بازگرداندن کارت وجود نخواهد داشت.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "ناشی از",
|
||||
"card-due-on": "مقتضی بر",
|
||||
"card-spent": "زمان صرف شده",
|
||||
"card-edit-attachments": "ویرایش ضمائم",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "ویرایش فیلدهای شخصی",
|
||||
"card-edit-labels": "ویرایش برچسب",
|
||||
"card-edit-members": "ویرایش اعضا",
|
||||
"card-labels-title": "تغییر برچسب کارت",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "شروع",
|
||||
"card-start-on": "شروع از",
|
||||
"cardAttachmentsPopup-title": "ضمیمه از",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "تغییر تاریخ",
|
||||
"cardCustomFieldsPopup-title": "ویرایش فیلدهای شخصی",
|
||||
"cardDeletePopup-title": "آیا می خواهید کارت را حذف کنید؟",
|
||||
"cardDetailsActionsPopup-title": "اعمال کارت",
|
||||
"cardLabelsPopup-title": "برچسب ها",
|
||||
@@ -146,7 +147,7 @@
|
||||
"clipboard": "ذخیره در حافظه ویا بردار-رهاکن",
|
||||
"close": "بستن",
|
||||
"close-board": "بستن برد",
|
||||
"close-board-pop": "You will be able to restore the board by clicking the “Recycle Bin” button from the home header.",
|
||||
"close-board-pop": "شما با کلیک روی دکمه \"سطل زباله\" در قسمت خانه می توانید تخته را بازیابی کنید.",
|
||||
"color-black": "مشکی",
|
||||
"color-blue": "آبی",
|
||||
"color-green": "سبز",
|
||||
@@ -172,25 +173,25 @@
|
||||
"createBoardPopup-title": "ایجاد تخته",
|
||||
"chooseBoardSourcePopup-title": "بارگذاری تخته",
|
||||
"createLabelPopup-title": "ایجاد برچسب",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "ایجاد فیلد",
|
||||
"createCustomFieldPopup-title": "ایجاد فیلد",
|
||||
"current": "جاری",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "این اقدام فیلدشخصی را بهمراه تمامی تاریخچه آن از کارت ها پاک می کند و برگشت پذیر نمی باشد",
|
||||
"custom-field-checkbox": "جعبه انتخابی",
|
||||
"custom-field-date": "تاریخ",
|
||||
"custom-field-dropdown": "Dropdown List",
|
||||
"custom-field-dropdown": "لیست افتادنی",
|
||||
"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-options": "لیست امکانات",
|
||||
"custom-field-dropdown-options-placeholder": "کلید Enter را جهت افزودن امکانات بیشتر فشار دهید",
|
||||
"custom-field-dropdown-unknown": "(unknown)",
|
||||
"custom-field-number": "Number",
|
||||
"custom-field-text": "Text",
|
||||
"custom-fields": "Custom Fields",
|
||||
"custom-field-number": "عدد",
|
||||
"custom-field-text": "متن",
|
||||
"custom-fields": "فیلدهای شخصی",
|
||||
"date": "تاریخ",
|
||||
"decline": "رد",
|
||||
"default-avatar": "تصویر پیش فرض",
|
||||
"delete": "حذف",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "آیا فیلدشخصی پاک شود؟",
|
||||
"deleteLabelPopup-title": "آیا می خواهید برچسب را حذف کنید؟",
|
||||
"description": "توضیحات",
|
||||
"disambiguateMultiLabelPopup-title": "عمل ابهام زدایی از برچسب",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Soft WIP Limit",
|
||||
"editCardStartDatePopup-title": "تغییر تاریخ آغاز",
|
||||
"editCardDueDatePopup-title": "تغییر تاریخ بدلیل",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "ویرایش فیلد",
|
||||
"editCardSpentTimePopup-title": "تغییر زمان صرف شده",
|
||||
"editLabelPopup-title": "تغیر برچسب",
|
||||
"editNotificationPopup-title": "اصلاح اعلان",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "حذف صافی ـFilterـ",
|
||||
"filter-no-label": "بدون برچسب",
|
||||
"filter-no-member": "بدون عضو",
|
||||
"filter-no-custom-fields": "هیچ فیلدشخصی ای وجود ندارد",
|
||||
"filter-on": "صافی ـFilterـ فعال است",
|
||||
"filter-on-desc": "شما صافی ـFilterـ برای کارتهای تخته را روشن کرده اید. جهت ویرایش کلیک نمایید.",
|
||||
"filter-to-selection": "صافی ـFilterـ برای موارد انتخابی",
|
||||
"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",
|
||||
"fullname": "نام و نام خانوادگی",
|
||||
"header-logo-title": "بازگشت به صفحه تخته.",
|
||||
"hide-system-messages": "عدم نمایش پیامهای سیستمی",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "پایان",
|
||||
"card-end-on": "پایان در",
|
||||
"editCardReceivedDatePopup-title": "تغییر تاریخ رسید",
|
||||
"editCardEndDatePopup-title": "تغییر تاریخ پایان"
|
||||
"editCardEndDatePopup-title": "تغییر تاریخ پایان",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+11
-1
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Taulu valikko",
|
||||
"boards": "Taulut",
|
||||
"board-view": "Taulu näkymä",
|
||||
"board-view-cal": "Kalenteri",
|
||||
"board-view-swimlanes": "Swimlanet",
|
||||
"board-view-lists": "Listat",
|
||||
"bucket-example": "Kuten “Laatikko lista” esimerkiksi",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Poista suodatin",
|
||||
"filter-no-label": "Ei tunnistetta",
|
||||
"filter-no-member": "Ei jäseniä",
|
||||
"filter-no-custom-fields": "Ei mukautettuja kenttiä",
|
||||
"filter-on": "Suodatus on päällä",
|
||||
"filter-on-desc": "Suodatat kortteja tällä taululla. Klikkaa tästä muokataksesi suodatinta.",
|
||||
"filter-to-selection": "Suodata valintaan",
|
||||
"advanced-filter-label": "Edistynyt suodatin",
|
||||
"advanced-filter-description": "Edistynyt suodatin mahdollistaa merkkijonon, joka sisältää seuraavat operaattorit: == != <= >= && || ( ) Operaattorien välissä käytetään välilyöntiä. Voit suodattaa kaikki mukautetut kentät kirjoittamalla niiden nimet ja arvot. Esimerkiksi: Field1 == Value1. Huom: Jos kentillä tai arvoilla on välilyöntejä, sinun on sijoitettava ne yksittäisiin lainausmerkkeihin. Esimerkki: 'Kenttä 1' == 'Arvo 1'. Voit hypätä yksittäisen kontrollimerkkien (' \\/) yli käyttämällä \\. Esimerkki: Field1 = I\\'m. Voit myös yhdistää useita ehtoja. Esimerkiksi: F1 == V1 || F1 == V2. Yleensä kaikki operaattorit tulkitaan vasemmalta oikealle. Voit muuttaa järjestystä asettamalla sulkuja. Esimerkiksi: F1 == V1 && (F2 == V2 || F2 == V3). Voit myös etsiä tekstikentistä regexillä: F1 == /Tes.*/i",
|
||||
"fullname": "Koko nimi",
|
||||
"header-logo-title": "Palaa taulut sivullesi.",
|
||||
"hide-system-messages": "Piilota järjestelmäviestit",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "Loppuu",
|
||||
"card-end-on": "Loppuu",
|
||||
"editCardReceivedDatePopup-title": "Vaihda vastaanottamispäivää",
|
||||
"editCardEndDatePopup-title": "Vaihda loppumispäivää"
|
||||
"editCardEndDatePopup-title": "Vaihda loppumispäivää",
|
||||
"assigned-by": "Tehtävänantaja",
|
||||
"requested-by": "Pyytäjä",
|
||||
"board-delete-notice": "Poistaminen on lopullista. Menetät kaikki listat, kortit ja toimet tällä taululla.",
|
||||
"delete-board-confirm-popup": "Kaikki listat, kortit, tunnisteet ja toimet poistetaan ja et pysty palauttamaan taulun sisältöä. Tätä ei voi peruuttaa.",
|
||||
"boardDeletePopup-title": "Poista taulu?",
|
||||
"delete-board": "Poista taulu"
|
||||
}
|
||||
+11
-1
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Menu du tableau",
|
||||
"boards": "Tableaux",
|
||||
"board-view": "Vue du tableau",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Couloirs",
|
||||
"board-view-lists": "Listes",
|
||||
"bucket-example": "Comme « todo list » par exemple",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Supprimer les filtres",
|
||||
"filter-no-label": "Aucune étiquette",
|
||||
"filter-no-member": "Aucun membre",
|
||||
"filter-no-custom-fields": "Pas de champs personnalisés",
|
||||
"filter-on": "Le filtre est actif",
|
||||
"filter-on-desc": "Vous êtes en train de filtrer les cartes sur ce tableau. Cliquez ici pour modifier les filtres.",
|
||||
"filter-to-selection": "Filtre vers la sélection",
|
||||
"advanced-filter-label": "Filtre avancé",
|
||||
"advanced-filter-description": "Le filtre avancé permet d'écrire une chaîne contenant les opérateur suivants : == != <= >= && || ( ). Les opérateurs doivent être séparés par des espaces. Vous pouvez filtrer tous les champs personnalisés en saisissant leur nom et leur valeur. Par exemple : champ1 == valeur1. Remarque : si des champs ou valeurs contiennent des espaces, vous devez les mettre entre apostrophes. Par exemple : 'champ 1' = 'valeur 1'. Pour échapper un caractère de contrôle (' \\/), vous pouvez utiliser \\. Par exemple : champ1 = I\\'m. Il est également possible de combiner plusieurs conditions. Par exemple : f1 == v1 || f2 == v2. Normalement, tous les opérateurs sont interprétés de gauche à droite. Vous pouvez changer l'ordre à l'aide de parenthèses. Par exemple : f1 == v1 and (f2 == v2 || f2 == v3). Vous pouvez également chercher parmi les champs texte en utilisant des expressions régulières : f1 == /Test.*/i",
|
||||
"fullname": "Nom complet",
|
||||
"header-logo-title": "Retourner à la page des tableaux",
|
||||
"hide-system-messages": "Masquer les messages système",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "Fin",
|
||||
"card-end-on": "Se termine le",
|
||||
"editCardReceivedDatePopup-title": "Changer la date de réception",
|
||||
"editCardEndDatePopup-title": "Changer la date de fin"
|
||||
"editCardEndDatePopup-title": "Changer la date de fin",
|
||||
"assigned-by": "Assigné par",
|
||||
"requested-by": "Demandé par",
|
||||
"board-delete-notice": "La suppression est définitive. Vous perdrez toutes vos listes, cartes et actions associées à ce tableau.",
|
||||
"delete-board-confirm-popup": "Toutes les listes, cartes, étiquettes et activités seront supprimées et vous ne pourrez pas retrouver le contenu du tableau. Il n'y a pas d'annulation possible.",
|
||||
"boardDeletePopup-title": "Supprimer le tableau ?",
|
||||
"delete-board": "Supprimer le tableau"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Taboleiros",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Listas",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Limpar filtro",
|
||||
"filter-no-label": "Non hai etiquetas",
|
||||
"filter-no-member": "Non hai membros",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "O filtro está activado",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Nome completo",
|
||||
"header-logo-title": "Retornar á páxina dos seus taboleiros.",
|
||||
"hide-system-messages": "Agochar as mensaxes do sistema",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+26
-16
@@ -7,7 +7,7 @@
|
||||
"act-addComment": "התקבלה תגובה על הכרטיס __card__: __comment__",
|
||||
"act-createBoard": "הלוח __board__ נוצר",
|
||||
"act-createCard": "הכרטיס __card__ התווסף לרשימה __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "נוצר שדה בהתאמה אישית __customField__",
|
||||
"act-createList": "הרשימה __list__ התווספה ללוח __board__",
|
||||
"act-addBoardMember": "המשתמש __member__ נוסף ללוח __board__",
|
||||
"act-archivedBoard": "__board__ הועבר לסל המחזור",
|
||||
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "תפריט לוח",
|
||||
"boards": "לוחות",
|
||||
"board-view": "תצוגת לוח",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "מסלולים",
|
||||
"board-view-lists": "רשימות",
|
||||
"bucket-example": "כמו למשל „רשימת המשימות“",
|
||||
@@ -175,22 +176,22 @@
|
||||
"createCustomField": "יצירת שדה",
|
||||
"createCustomFieldPopup-title": "יצירת שדה",
|
||||
"current": "נוכחי",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "אין אפשרות לבטל את הפעולה. הפעולה תסיר את השדה שהותאם אישית מכל הכרטיסים ותשמיד את ההיסטוריה שלו.",
|
||||
"custom-field-checkbox": "תיבת סימון",
|
||||
"custom-field-date": "תאריך",
|
||||
"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-fields": "Custom Fields",
|
||||
"custom-field-dropdown": "רשימה נגללת",
|
||||
"custom-field-dropdown-none": "(ללא)",
|
||||
"custom-field-dropdown-options": "אפשרויות רשימה",
|
||||
"custom-field-dropdown-options-placeholder": "יש ללחוץ על enter כדי להוסיף עוד אפשרויות",
|
||||
"custom-field-dropdown-unknown": "(לא ידוע)",
|
||||
"custom-field-number": "מספר",
|
||||
"custom-field-text": "טקסט",
|
||||
"custom-fields": "שדות מותאמים אישית",
|
||||
"date": "תאריך",
|
||||
"decline": "סירוב",
|
||||
"default-avatar": "תמונת משתמש כבררת מחדל",
|
||||
"delete": "מחיקה",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "למחוק שדה מותאם אישית?",
|
||||
"deleteLabelPopup-title": "למחוק תווית?",
|
||||
"description": "תיאור",
|
||||
"disambiguateMultiLabelPopup-title": "הבהרת פעולת תווית",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "מגבלת „בעבודה” רכה",
|
||||
"editCardStartDatePopup-title": "שינוי מועד התחלה",
|
||||
"editCardDueDatePopup-title": "שינוי מועד סיום",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "עריכת שדה",
|
||||
"editCardSpentTimePopup-title": "שינוי הזמן שהושקע",
|
||||
"editLabelPopup-title": "שינוי תווית",
|
||||
"editNotificationPopup-title": "שינוי דיווח",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "ניקוי המסנן",
|
||||
"filter-no-label": "אין תווית",
|
||||
"filter-no-member": "אין חבר כזה",
|
||||
"filter-no-custom-fields": "אין שדות מותאמים אישית",
|
||||
"filter-on": "המסנן פועל",
|
||||
"filter-on-desc": "מסנן כרטיסים פעיל בלוח זה. יש ללחוץ כאן לעריכת המסנן.",
|
||||
"filter-to-selection": "סינון לבחירה",
|
||||
"advanced-filter-label": "מסנן מתקדם",
|
||||
"advanced-filter-description": "המסנן המתקדם מאפשר לך לכתוב מחרוזת שמכילה את הפעולות הבאות: == != <= >= && || ( ) רווח מכהן כמפריד בין הפעולות. ניתן לסנן את כל השדות המותאמים אישית על ידי הקלדת שמם והערך שלהם. למשל: שדה1 == ערך1. לתשומת לבך: אם שדות או ערכים מכילים רווח, יש לעטוף אותם במירכא מכל צד. למשל: 'שדה 1' == 'ערך 1'. ניתן גם לשלב מגוון תנאים. למשל: F1 == V1 || F1 == V2. על פי רוב כל הפעולות מפוענחות משמאל לימין. ניתן לשנות את הסדר על ידי הצבת סוגריים. למשל: ( F1 == V1 && ( F2 == V2 || F2 == V3 ",
|
||||
"fullname": "שם מלא",
|
||||
"header-logo-title": "חזרה לדף הלוחות שלך.",
|
||||
"hide-system-messages": "הסתרת הודעות מערכת",
|
||||
@@ -386,7 +390,7 @@
|
||||
"title": "כותרת",
|
||||
"tracking": "מעקב",
|
||||
"tracking-info": "על כל שינוי בכרטיסים בהם הייתה לך מעורבות ברמת היצירה או כחברות תגיע אליך הודעה.",
|
||||
"type": "Type",
|
||||
"type": "סוג",
|
||||
"unassign-member": "ביטול הקצאת חבר",
|
||||
"unsaved-description": "יש לך תיאור לא שמור.",
|
||||
"unwatch": "ביטול מעקב",
|
||||
@@ -451,7 +455,7 @@
|
||||
"hours": "שעות",
|
||||
"minutes": "דקות",
|
||||
"seconds": "שניות",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "הצגת שדה זה בכרטיס",
|
||||
"yes": "כן",
|
||||
"no": "לא",
|
||||
"accounts": "חשבונות",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "סיום",
|
||||
"card-end-on": "מועד הסיום",
|
||||
"editCardReceivedDatePopup-title": "החלפת מועד הקבלה",
|
||||
"editCardEndDatePopup-title": "החלפת מועד הסיום"
|
||||
"editCardEndDatePopup-title": "החלפת מועד הסיום",
|
||||
"assigned-by": "הוקצה על ידי",
|
||||
"requested-by": "התבקש על ידי",
|
||||
"board-delete-notice": "מחיקה היא לצמיתות. כל הרשימות, הכרטיבים והפעולות שקשורים בלוח הזה ילכו לאיבוד.",
|
||||
"delete-board-confirm-popup": "כל הרשימות, הכרטיסים, התווית והפעולות יימחקו ולא תהיה לך דרך לשחזר את תכני הלוח. אין אפשרות לבטל.",
|
||||
"boardDeletePopup-title": "למחוק את הלוח?",
|
||||
"delete-board": "מחיקת לוח"
|
||||
}
|
||||
+49
-39
@@ -7,12 +7,12 @@
|
||||
"act-addComment": "hozzászólt a(z) __card__ kártyán: __comment__",
|
||||
"act-createBoard": "létrehozta a táblát: __board__",
|
||||
"act-createCard": "__card__ kártyát adott hozzá a listához: __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "létrehozta a(z) __customField__ egyéni listát",
|
||||
"act-createList": "__list__ listát adott hozzá a táblához: __board__",
|
||||
"act-addBoardMember": "__member__ tagot hozzáadta a táblához: __board__",
|
||||
"act-archivedBoard": "A __board__ tábla a lomtárba került.",
|
||||
"act-archivedCard": "A __card__ kártya a lomtárba került.",
|
||||
"act-archivedList": "A __list__ lista a lomtárba került.",
|
||||
"act-archivedBoard": "A(z) __board__ tábla áthelyezve a lomtárba",
|
||||
"act-archivedCard": "A(z) __card__ kártya áthelyezve a lomtárba",
|
||||
"act-archivedList": "A(z) __list__ lista áthelyezve a lomtárba",
|
||||
"act-archivedSwimlane": "__swimlane__ moved to Recycle Bin",
|
||||
"act-importBoard": "importálta a táblát: __board__",
|
||||
"act-importCard": "importálta a kártyát: __card__",
|
||||
@@ -28,10 +28,10 @@
|
||||
"activities": "Tevékenységek",
|
||||
"activity": "Tevékenység",
|
||||
"activity-added": "%s hozzáadva ehhez: %s",
|
||||
"activity-archived": "%s lomtárba helyezve",
|
||||
"activity-archived": "%s áthelyezve a lomtárba",
|
||||
"activity-attached": "%s mellékletet csatolt a kártyához: %s",
|
||||
"activity-created": "%s létrehozva",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "létrehozta a(z) %s egyéni mezőt",
|
||||
"activity-excluded": "%s kizárva innen: %s",
|
||||
"activity-imported": "%s importálva ebbe: %s, innen: %s",
|
||||
"activity-imported-board": "%s importálva innen: %s",
|
||||
@@ -99,7 +99,8 @@
|
||||
"boardChangeWatchPopup-title": "Megfigyelés megváltoztatása",
|
||||
"boardMenuPopup-title": "Tábla menü",
|
||||
"boards": "Táblák",
|
||||
"board-view": "Board View",
|
||||
"board-view": "Tábla nézet",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Listák",
|
||||
"bucket-example": "Mint például „Bakancslista”",
|
||||
@@ -108,12 +109,12 @@
|
||||
"card-comments-title": "Ez a kártya %s hozzászólást tartalmaz.",
|
||||
"card-delete-notice": "A törlés végleges. Az összes műveletet elveszíti, amely ehhez a kártyához tartozik.",
|
||||
"card-delete-pop": "Az összes művelet el lesz távolítva a tevékenységlistából, és nem lesz képes többé újra megnyitni a kártyát. Nincs visszaállítási lehetőség.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Esedékes",
|
||||
"card-due-on": "Esedékes ekkor",
|
||||
"card-spent": "Eltöltött idő",
|
||||
"card-edit-attachments": "Mellékletek szerkesztése",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "Egyéni mezők szerkesztése",
|
||||
"card-edit-labels": "Címkék szerkesztése",
|
||||
"card-edit-members": "Tagok szerkesztése",
|
||||
"card-labels-title": "A kártya címkéinek megváltoztatása.",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "Kezdés",
|
||||
"card-start-on": "Kezdés ekkor",
|
||||
"cardAttachmentsPopup-title": "Innen csatolva",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "Dátum megváltoztatása",
|
||||
"cardCustomFieldsPopup-title": "Egyéni mezők szerkesztése",
|
||||
"cardDeletePopup-title": "Törli a kártyát?",
|
||||
"cardDetailsActionsPopup-title": "Kártyaműveletek",
|
||||
"cardLabelsPopup-title": "Címkék",
|
||||
@@ -165,32 +166,32 @@
|
||||
"confirm-checklist-delete-dialog": "Biztosan törölni szeretné az ellenőrzőlistát?",
|
||||
"copy-card-link-to-clipboard": "Kártya hivatkozásának másolása a vágólapra",
|
||||
"copyCardPopup-title": "Kártya másolása",
|
||||
"copyChecklistToManyCardsPopup-title": "Copy Checklist Template to Many Cards",
|
||||
"copyChecklistToManyCardsPopup-instructions": "Destination Card Titles and Descriptions in this JSON format",
|
||||
"copyChecklistToManyCardsPopup-format": "[ {\"title\": \"First card title\", \"description\":\"First card description\"}, {\"title\":\"Second card title\",\"description\":\"Second card description\"},{\"title\":\"Last card title\",\"description\":\"Last card description\"} ]",
|
||||
"copyChecklistToManyCardsPopup-title": "Ellenőrzőlista sablon másolása több kártyára",
|
||||
"copyChecklistToManyCardsPopup-instructions": "A célkártyák címe és a leírások ebben a JSON formátumban",
|
||||
"copyChecklistToManyCardsPopup-format": "[ {\"title\": \"Első kártya címe\", \"description\":\"Első kártya leírása\"}, {\"title\":\"Második kártya címe\",\"description\":\"Második kártya leírása\"},{\"title\":\"Utolsó kártya címe\",\"description\":\"Utolsó kártya leírása\"} ]",
|
||||
"create": "Létrehozás",
|
||||
"createBoardPopup-title": "Tábla létrehozása",
|
||||
"chooseBoardSourcePopup-title": "Tábla importálása",
|
||||
"createLabelPopup-title": "Címke létrehozása",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "Mező létrehozása",
|
||||
"createCustomFieldPopup-title": "Mező létrehozása",
|
||||
"current": "jelenlegi",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "Nincs visszavonás. Ez el fogja távolítani az egyéni mezőt az összes kártyáról, és megsemmisíti az előzményeit.",
|
||||
"custom-field-checkbox": "Jelölőnégyzet",
|
||||
"custom-field-date": "Dátum",
|
||||
"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-fields": "Custom Fields",
|
||||
"custom-field-dropdown": "Legördülő lista",
|
||||
"custom-field-dropdown-none": "(nincs)",
|
||||
"custom-field-dropdown-options": "Lista lehetőségei",
|
||||
"custom-field-dropdown-options-placeholder": "Nyomja meg az Enter billentyűt több lehetőség hozzáadásához",
|
||||
"custom-field-dropdown-unknown": "(ismeretlen)",
|
||||
"custom-field-number": "Szám",
|
||||
"custom-field-text": "Szöveg",
|
||||
"custom-fields": "Egyéni mezők",
|
||||
"date": "Dátum",
|
||||
"decline": "Elutasítás",
|
||||
"default-avatar": "Alapértelmezett avatár",
|
||||
"delete": "Törlés",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "Törli az egyéni mezőt?",
|
||||
"deleteLabelPopup-title": "Törli a címkét?",
|
||||
"description": "Leírás",
|
||||
"disambiguateMultiLabelPopup-title": "Címkeművelet egyértelműsítése",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Gyenge WIP korlát",
|
||||
"editCardStartDatePopup-title": "Kezdődátum megváltoztatása",
|
||||
"editCardDueDatePopup-title": "Esedékesség dátumának megváltoztatása",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "Mező szerkesztése",
|
||||
"editCardSpentTimePopup-title": "Eltöltött idő megváltoztatása",
|
||||
"editLabelPopup-title": "Címke megváltoztatása",
|
||||
"editNotificationPopup-title": "Értesítés szerkesztése",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Szűrő törlése",
|
||||
"filter-no-label": "Nincs címke",
|
||||
"filter-no-member": "Nincs tag",
|
||||
"filter-no-custom-fields": "Nincsenek egyéni mezők",
|
||||
"filter-on": "Szűrő bekapcsolva",
|
||||
"filter-on-desc": "A kártyaszűrés be van kapcsolva ezen a táblán. Kattintson ide a szűrő szerkesztéséhez.",
|
||||
"filter-to-selection": "Szűrés a kijelöléshez",
|
||||
"advanced-filter-label": "Speciális szűrő",
|
||||
"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",
|
||||
"fullname": "Teljes név",
|
||||
"header-logo-title": "Vissza a táblák oldalára.",
|
||||
"hide-system-messages": "Rendszerüzenetek elrejtése",
|
||||
@@ -386,7 +390,7 @@
|
||||
"title": "Cím",
|
||||
"tracking": "Követés",
|
||||
"tracking-info": "Értesítve lesz az összes olyan kártya változásáról, amelyen létrehozóként vagy tagként vesz részt.",
|
||||
"type": "Type",
|
||||
"type": "Típus",
|
||||
"unassign-member": "Tag hozzárendelésének megszüntetése",
|
||||
"unsaved-description": "Van egy mentetlen leírása.",
|
||||
"unwatch": "Megfigyelés megszüntetése",
|
||||
@@ -395,12 +399,12 @@
|
||||
"uploaded-avatar": "Egy avatár feltöltve",
|
||||
"username": "Felhasználónév",
|
||||
"view-it": "Megtekintés",
|
||||
"warn-list-archived": "warning: this card is in an list at Recycle Bin",
|
||||
"warn-list-archived": "figyelem: ez a kártya egy lomtárban lévő listán van",
|
||||
"watch": "Megfigyelés",
|
||||
"watching": "Megfigyelés",
|
||||
"watching-info": "Értesítve lesz a táblán lévő összes változásról",
|
||||
"welcome-board": "Üdvözlő tábla",
|
||||
"welcome-swimlane": "Milestone 1",
|
||||
"welcome-swimlane": "1. mérföldkő",
|
||||
"welcome-list1": "Alapok",
|
||||
"welcome-list2": "Speciális",
|
||||
"what-to-do": "Mit szeretne tenni?",
|
||||
@@ -451,19 +455,25 @@
|
||||
"hours": "óra",
|
||||
"minutes": "perc",
|
||||
"seconds": "másodperc",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "A mező megjelenítése a kártyán",
|
||||
"yes": "Igen",
|
||||
"no": "Nem",
|
||||
"accounts": "Fiókok",
|
||||
"accounts-allowEmailChange": "E-mail megváltoztatásának engedélyezése",
|
||||
"accounts-allowUserNameChange": "Allow Username Change",
|
||||
"accounts-allowUserNameChange": "Felhasználónév megváltoztatásának engedélyezése",
|
||||
"createdAt": "Létrehozva",
|
||||
"verified": "Ellenőrizve",
|
||||
"active": "Aktív",
|
||||
"card-received": "Received",
|
||||
"card-received-on": "Received on",
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"card-received": "Érkezett",
|
||||
"card-received-on": "Ekkor érkezett",
|
||||
"card-end": "Befejezés",
|
||||
"card-end-on": "Befejeződik ekkor",
|
||||
"editCardReceivedDatePopup-title": "Érkezési dátum megváltoztatása",
|
||||
"editCardEndDatePopup-title": "Befejezési dátum megváltoztatása",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Menu Panel",
|
||||
"boards": "Panel",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Daftar",
|
||||
"bucket-example": "Contohnya seperti “Bucket List” ",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "Kartu ini punya %s komentar",
|
||||
"card-delete-notice": "Menghapus sama dengan permanen. Anda akan kehilangan semua aksi yang terhubung ke kartu ini",
|
||||
"card-delete-pop": "Semua aksi akan dihapus dari aktivitas dan anda tidak bisa lagi buka kartu ini",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Jatuh Tempo",
|
||||
"card-due-on": "Jatuh Tempo pada",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Bersihkan penyaringan",
|
||||
"filter-no-label": "Tidak ada label",
|
||||
"filter-no-member": "Tidak ada anggota",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Penyaring aktif",
|
||||
"filter-on-desc": "Anda memfilter kartu di panel ini. Klik di sini untuk menyunting filter",
|
||||
"filter-to-selection": "Saring berdasarkan yang dipilih",
|
||||
"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",
|
||||
"fullname": "Nama Lengkap",
|
||||
"header-logo-title": "Kembali ke laman panel anda",
|
||||
"hide-system-messages": "Sembunyikan pesan-pesan sistem",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+36
-26
@@ -3,11 +3,11 @@
|
||||
"act-activity-notify": "[Wekan] Notifiche attività",
|
||||
"act-addAttachment": "ha allegato __attachment__ a __card__",
|
||||
"act-addChecklist": "aggiunta checklist __checklist__ a __card__",
|
||||
"act-addChecklistItem": "aggiunto __checklistItem__ alla checklist __checklist__ su __card__",
|
||||
"act-addChecklistItem": "aggiunto __checklistItem__ alla checklist __checklist__ di __card__",
|
||||
"act-addComment": "ha commentato su __card__: __comment__",
|
||||
"act-createBoard": "ha creato __board__",
|
||||
"act-createCard": "ha aggiunto __card__ a __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "campo personalizzato __customField__ creato",
|
||||
"act-createList": "ha aggiunto __list__ a __board__",
|
||||
"act-addBoardMember": "ha aggiunto __member__ a __board__",
|
||||
"act-archivedBoard": "__board__ spostata nel cestino",
|
||||
@@ -19,7 +19,7 @@
|
||||
"act-importList": "ha importato __list__",
|
||||
"act-joinMember": "ha aggiunto __member__ a __card__",
|
||||
"act-moveCard": "ha spostato __card__ da __oldList__ a __list__",
|
||||
"act-removeBoardMember": "ha rimosso __member__ da __board__",
|
||||
"act-removeBoardMember": "ha rimosso __member__ a __board__",
|
||||
"act-restoredCard": "ha ripristinato __card__ su __board__",
|
||||
"act-unjoinMember": "ha rimosso __member__ da __card__",
|
||||
"act-withBoardTitle": "[Wekan] __board__",
|
||||
@@ -31,7 +31,7 @@
|
||||
"activity-archived": "%s spostato nel cestino",
|
||||
"activity-attached": "allegato %s a %s",
|
||||
"activity-created": "creato %s",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "Campo personalizzato creato",
|
||||
"activity-excluded": "escluso %s da %s",
|
||||
"activity-imported": "importato %s in %s da %s",
|
||||
"activity-imported-board": "importato %s da %s",
|
||||
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Menu bacheca",
|
||||
"boards": "Bacheche",
|
||||
"board-view": "Visualizza bacheca",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Corsie",
|
||||
"board-view-lists": "Liste",
|
||||
"bucket-example": "Per esempio come \"una lista di cose da fare\"",
|
||||
@@ -113,7 +114,7 @@
|
||||
"card-due-on": "Scade",
|
||||
"card-spent": "Tempo trascorso",
|
||||
"card-edit-attachments": "Modifica allegati",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "Modifica campo personalizzato",
|
||||
"card-edit-labels": "Modifica etichette",
|
||||
"card-edit-members": "Modifica membri",
|
||||
"card-labels-title": "Cambia le etichette per questa scheda.",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "Inizio",
|
||||
"card-start-on": "Inizia",
|
||||
"cardAttachmentsPopup-title": "Allega da",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "Cambia data",
|
||||
"cardCustomFieldsPopup-title": "Modifica campo personalizzato",
|
||||
"cardDeletePopup-title": "Elimina scheda?",
|
||||
"cardDetailsActionsPopup-title": "Azioni scheda",
|
||||
"cardLabelsPopup-title": "Etichette",
|
||||
@@ -172,25 +173,25 @@
|
||||
"createBoardPopup-title": "Crea bacheca",
|
||||
"chooseBoardSourcePopup-title": "Importa bacheca",
|
||||
"createLabelPopup-title": "Crea etichetta",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "Crea campo",
|
||||
"createCustomFieldPopup-title": "Crea campo",
|
||||
"current": "corrente",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "Non potrai tornare indietro. Questa azione rimuoverà questo campo personalizzato da tutte le schede ed eliminerà ogni sua traccia.",
|
||||
"custom-field-checkbox": "Casella di scelta",
|
||||
"custom-field-date": "Data",
|
||||
"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-fields": "Custom Fields",
|
||||
"custom-field-dropdown": "Lista a discesa",
|
||||
"custom-field-dropdown-none": "(nessun)",
|
||||
"custom-field-dropdown-options": "Lista opzioni",
|
||||
"custom-field-dropdown-options-placeholder": "Premi invio per aggiungere altre opzioni",
|
||||
"custom-field-dropdown-unknown": "(sconosciuto)",
|
||||
"custom-field-number": "Numero",
|
||||
"custom-field-text": "Testo",
|
||||
"custom-fields": "Campi personalizzati",
|
||||
"date": "Data",
|
||||
"decline": "Declina",
|
||||
"default-avatar": "Avatar predefinito",
|
||||
"delete": "Elimina",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "Elimina il campo personalizzato?",
|
||||
"deleteLabelPopup-title": "Eliminare etichetta?",
|
||||
"description": "Descrizione",
|
||||
"disambiguateMultiLabelPopup-title": "Disambiguare l'azione Etichetta",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Limite Work in progress soft",
|
||||
"editCardStartDatePopup-title": "Cambia data di inizio",
|
||||
"editCardDueDatePopup-title": "Cambia data di scadenza",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "Modifica campo",
|
||||
"editCardSpentTimePopup-title": "Cambia tempo trascorso",
|
||||
"editLabelPopup-title": "Cambia etichetta",
|
||||
"editNotificationPopup-title": "Modifica notifiche",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Pulisci filtri",
|
||||
"filter-no-label": "Nessuna etichetta",
|
||||
"filter-no-member": "Nessun membro",
|
||||
"filter-no-custom-fields": "Nessun campo personalizzato",
|
||||
"filter-on": "Il filtro è attivo",
|
||||
"filter-on-desc": "Stai filtrando le schede su questa bacheca. Clicca qui per modificare il filtro,",
|
||||
"filter-to-selection": "Seleziona",
|
||||
"advanced-filter-label": "Filtro avanzato",
|
||||
"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",
|
||||
"fullname": "Nome completo",
|
||||
"header-logo-title": "Torna alla tua bacheca.",
|
||||
"hide-system-messages": "Nascondi i messaggi di sistema",
|
||||
@@ -386,7 +390,7 @@
|
||||
"title": "Titolo",
|
||||
"tracking": "Monitoraggio",
|
||||
"tracking-info": "Sarai notificato per tutte le modifiche alle schede delle quali sei creatore o membro.",
|
||||
"type": "Type",
|
||||
"type": "Tipo",
|
||||
"unassign-member": "Rimuovi membro",
|
||||
"unsaved-description": "Hai una descrizione non salvata",
|
||||
"unwatch": "Non seguire",
|
||||
@@ -414,7 +418,7 @@
|
||||
"disable-self-registration": "Disabilita Auto-registrazione",
|
||||
"invite": "Invita",
|
||||
"invite-people": "Invita persone",
|
||||
"to-boards": "torna alle bacheche(a)",
|
||||
"to-boards": "Alla(e) bacheche(a)",
|
||||
"email-addresses": "Indirizzi email",
|
||||
"smtp-host-description": "L'indirizzo del server SMTP che gestisce le tue email.",
|
||||
"smtp-port-description": "La porta che il tuo server SMTP utilizza per le email in uscita.",
|
||||
@@ -451,12 +455,12 @@
|
||||
"hours": "ore",
|
||||
"minutes": "minuti",
|
||||
"seconds": "secondi",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "Visualizza questo campo sulla scheda",
|
||||
"yes": "Sì",
|
||||
"no": "No",
|
||||
"accounts": "Profili",
|
||||
"accounts-allowEmailChange": "Permetti modifica dell'email",
|
||||
"accounts-allowUserNameChange": "Allow Username Change",
|
||||
"accounts-allowUserNameChange": "Consenti la modifica del nome utente",
|
||||
"createdAt": "creato alle",
|
||||
"verified": "Verificato",
|
||||
"active": "Attivo",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "Fine",
|
||||
"card-end-on": "Termina il",
|
||||
"editCardReceivedDatePopup-title": "Cambia data ricezione",
|
||||
"editCardEndDatePopup-title": "Cambia data finale"
|
||||
"editCardEndDatePopup-title": "Cambia data finale",
|
||||
"assigned-by": "Assegnato da",
|
||||
"requested-by": "Richiesto da",
|
||||
"board-delete-notice": "L'eliminazione è permanente. Tutte le azioni, liste e schede associate a questa bacheca andranno perse.",
|
||||
"delete-board-confirm-popup": "Tutte le liste, schede, etichette e azioni saranno rimosse e non sarai più in grado di recuperare il contenuto della bacheca. L'azione non è annullabile.",
|
||||
"boardDeletePopup-title": "Eliminare la bacheca?",
|
||||
"delete-board": "Elimina bacheca"
|
||||
}
|
||||
+61
-51
@@ -2,18 +2,18 @@
|
||||
"accept": "受け入れ",
|
||||
"act-activity-notify": "[Wekan] アクティビティ通知",
|
||||
"act-addAttachment": "__card__ に __attachment__ を添付しました",
|
||||
"act-addChecklist": "added checklist __checklist__ to __card__",
|
||||
"act-addChecklistItem": "added __checklistItem__ to checklist __checklist__ on __card__",
|
||||
"act-addChecklist": "__card__ に __checklist__ を追加しました",
|
||||
"act-addChecklistItem": "__checklist__ on __card__ に __checklistItem__ を追加しました",
|
||||
"act-addComment": "__card__: __comment__ をコメントしました",
|
||||
"act-createBoard": "__board__ を作成しました",
|
||||
"act-createCard": "__list__ に __card__ を追加しました",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "__customField__ を作成しました",
|
||||
"act-createList": "__board__ に __list__ を追加しました",
|
||||
"act-addBoardMember": "__board__ に __member__ を追加しました",
|
||||
"act-archivedBoard": "__board__ moved to Recycle Bin",
|
||||
"act-archivedCard": "__card__ moved to Recycle Bin",
|
||||
"act-archivedList": "__list__ moved to Recycle Bin",
|
||||
"act-archivedSwimlane": "__swimlane__ moved to Recycle Bin",
|
||||
"act-archivedBoard": "__board__ をゴミ箱に移動しました",
|
||||
"act-archivedCard": "__card__ をゴミ箱に移動しました",
|
||||
"act-archivedList": "__list__ をゴミ箱に移動しました",
|
||||
"act-archivedSwimlane": "__swimlane__ をゴミ箱に移動しました",
|
||||
"act-importBoard": "__board__ をインポートしました",
|
||||
"act-importCard": "__card__ をインポートしました",
|
||||
"act-importList": "__list__ をインポートしました",
|
||||
@@ -28,10 +28,10 @@
|
||||
"activities": "アクティビティ",
|
||||
"activity": "アクティビティ",
|
||||
"activity-added": "%s を %s に追加しました",
|
||||
"activity-archived": "%s moved to Recycle Bin",
|
||||
"activity-archived": "%s をゴミ箱へ移動しました",
|
||||
"activity-attached": "%s を %s に添付しました",
|
||||
"activity-created": "%s を作成しました",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "%s を作成しました",
|
||||
"activity-excluded": "%s を %s から除外しました",
|
||||
"activity-imported": "imported %s into %s from %s",
|
||||
"activity-imported-board": "imported %s from %s",
|
||||
@@ -47,7 +47,7 @@
|
||||
"add-attachment": "添付ファイルを追加",
|
||||
"add-board": "ボードを追加",
|
||||
"add-card": "カードを追加",
|
||||
"add-swimlane": "Add Swimlane",
|
||||
"add-swimlane": "スイムレーンを追加",
|
||||
"add-checklist": "チェックリストを追加",
|
||||
"add-checklist-item": "チェックリストに項目を追加",
|
||||
"add-cover": "カバーの追加",
|
||||
@@ -66,19 +66,19 @@
|
||||
"and-n-other-card_plural": "And __count__ other cards",
|
||||
"apply": "適用",
|
||||
"app-is-offline": "現在オフラインです。ページを更新すると保存していないデータは失われます。",
|
||||
"archive": "Move to Recycle Bin",
|
||||
"archive-all": "Move All to Recycle Bin",
|
||||
"archive-board": "Move Board to Recycle Bin",
|
||||
"archive-card": "Move Card to Recycle Bin",
|
||||
"archive-list": "Move List to Recycle Bin",
|
||||
"archive-swimlane": "Move Swimlane to Recycle Bin",
|
||||
"archive-selection": "Move selection to Recycle Bin",
|
||||
"archiveBoardPopup-title": "Move Board to Recycle Bin?",
|
||||
"archived-items": "Recycle Bin",
|
||||
"archived-boards": "Boards in Recycle Bin",
|
||||
"archive": "ゴミ箱へ移動",
|
||||
"archive-all": "すべてゴミ箱へ移動",
|
||||
"archive-board": "ボードをゴミ箱へ移動",
|
||||
"archive-card": "カードをゴミ箱へ移動",
|
||||
"archive-list": "リストをゴミ箱へ移動",
|
||||
"archive-swimlane": "スイムレーンをゴミ箱へ移動",
|
||||
"archive-selection": "選択したものをゴミ箱へ移動",
|
||||
"archiveBoardPopup-title": "ボードをゴミ箱へ移動しますか?",
|
||||
"archived-items": "ゴミ箱",
|
||||
"archived-boards": "ゴミ箱のボード",
|
||||
"restore-board": "ボードをリストア",
|
||||
"no-archived-boards": "No Boards in Recycle Bin.",
|
||||
"archives": "Recycle Bin",
|
||||
"no-archived-boards": "ゴミ箱にボードはありません",
|
||||
"archives": "ゴミ箱",
|
||||
"assign-member": "メンバーの割当",
|
||||
"attached": "添付されました",
|
||||
"attachment": "添付ファイル",
|
||||
@@ -100,20 +100,21 @@
|
||||
"boardMenuPopup-title": "ボードメニュー",
|
||||
"boards": "ボード",
|
||||
"board-view": "Board View",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "スイムレーン",
|
||||
"board-view-lists": "リスト",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
"bucket-example": "例:バケットリスト",
|
||||
"cancel": "キャンセル",
|
||||
"card-archived": "This card is moved to Recycle Bin.",
|
||||
"card-archived": "このカードはゴミ箱に移動されます",
|
||||
"card-comments-title": "%s 件のコメントがあります。",
|
||||
"card-delete-notice": "削除は取り消しできません。このカードに関係するすべてのアクションがなくなります。",
|
||||
"card-delete-pop": "すべての内容がアクティビティから削除されます。この削除は元に戻すことができません。",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "期限",
|
||||
"card-due-on": "期限日",
|
||||
"card-spent": "Spent Time",
|
||||
"card-edit-attachments": "添付ファイルの編集",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "カスタムフィールドの編集",
|
||||
"card-edit-labels": "ラベルの編集",
|
||||
"card-edit-members": "メンバーの編集",
|
||||
"card-labels-title": "カードのラベルを変更する",
|
||||
@@ -122,7 +123,7 @@
|
||||
"card-start-on": "開始日",
|
||||
"cardAttachmentsPopup-title": "Attach From",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomFieldsPopup-title": "カスタムフィールドの編集",
|
||||
"cardDeletePopup-title": "カードを削除しますか?",
|
||||
"cardDetailsActionsPopup-title": "カード操作",
|
||||
"cardLabelsPopup-title": "ラベル",
|
||||
@@ -146,7 +147,7 @@
|
||||
"clipboard": "クリップボードもしくはドラッグ&ドロップ",
|
||||
"close": "閉じる",
|
||||
"close-board": "ボードを閉じる",
|
||||
"close-board-pop": "You will be able to restore the board by clicking the “Recycle Bin” button from the home header.",
|
||||
"close-board-pop": "ホームヘッダから「ごみ箱」ボタンをクリックすると、ボードを復元できます。",
|
||||
"color-black": "黒",
|
||||
"color-blue": "青",
|
||||
"color-green": "緑",
|
||||
@@ -172,8 +173,8 @@
|
||||
"createBoardPopup-title": "ボードの作成",
|
||||
"chooseBoardSourcePopup-title": "ボードをインポート",
|
||||
"createLabelPopup-title": "ラベルの作成",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "フィールドを作成",
|
||||
"createCustomFieldPopup-title": "フィールドを作成",
|
||||
"current": "現在",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
@@ -185,12 +186,12 @@
|
||||
"custom-field-dropdown-unknown": "(unknown)",
|
||||
"custom-field-number": "Number",
|
||||
"custom-field-text": "Text",
|
||||
"custom-fields": "Custom Fields",
|
||||
"custom-fields": "カスタムフィールド",
|
||||
"date": "日付",
|
||||
"decline": "拒否",
|
||||
"default-avatar": "デフォルトのアバター",
|
||||
"delete": "削除",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "カスタムフィールドを削除しますか?",
|
||||
"deleteLabelPopup-title": "ラベルを削除しますか?",
|
||||
"description": "詳細",
|
||||
"disambiguateMultiLabelPopup-title": "不正なラベル操作",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Soft WIP Limit",
|
||||
"editCardStartDatePopup-title": "開始日の変更",
|
||||
"editCardDueDatePopup-title": "期限の変更",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "フィールドを編集",
|
||||
"editCardSpentTimePopup-title": "Change spent time",
|
||||
"editLabelPopup-title": "ラベルの変更",
|
||||
"editNotificationPopup-title": "通知の変更",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "フィルターの解除",
|
||||
"filter-no-label": "ラベルなし",
|
||||
"filter-no-member": "メンバーなし",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "フィルター有効",
|
||||
"filter-on-desc": "このボードのカードをフィルターしています。フィルターを編集するにはこちらをクリックしてください。",
|
||||
"filter-to-selection": "フィルターした項目を全選択",
|
||||
"advanced-filter-label": "高度なフィルター",
|
||||
"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",
|
||||
"fullname": "フルネーム",
|
||||
"header-logo-title": "自分のボードページに戻る。",
|
||||
"hide-system-messages": "システムメッセージを隠す",
|
||||
@@ -267,7 +271,7 @@
|
||||
"import-user-select": "メンバーとして利用したいWekanユーザーを選択",
|
||||
"importMapMembersAddPopup-title": "Wekanメンバーを選択",
|
||||
"info": "バージョン",
|
||||
"initials": "初期状態",
|
||||
"initials": "イニシャル",
|
||||
"invalid-date": "無効な日付",
|
||||
"invalid-time": "Invalid time",
|
||||
"invalid-user": "Invalid user",
|
||||
@@ -289,14 +293,14 @@
|
||||
"list-move-cards": "リストの全カードを移動する",
|
||||
"list-select-cards": "リストの全カードを選択",
|
||||
"listActionPopup-title": "操作一覧",
|
||||
"swimlaneActionPopup-title": "Swimlane Actions",
|
||||
"swimlaneActionPopup-title": "スイムレーン操作",
|
||||
"listImportCardPopup-title": "Trelloのカードをインポート",
|
||||
"listMorePopup-title": "さらに見る",
|
||||
"link-list": "このリストへのリンク",
|
||||
"list-delete-pop": "すべての内容がアクティビティから削除されます。この削除は元に戻すことができません。",
|
||||
"list-delete-suggest-archive": "You can move a list to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"lists": "リスト",
|
||||
"swimlanes": "Swimlanes",
|
||||
"swimlanes": "スイムレーン",
|
||||
"log-out": "ログアウト",
|
||||
"log-in": "ログイン",
|
||||
"loginPopup-title": "ログイン",
|
||||
@@ -314,9 +318,9 @@
|
||||
"muted-info": "このボードの変更は通知されません",
|
||||
"my-boards": "自分のボード",
|
||||
"name": "名前",
|
||||
"no-archived-cards": "No cards in Recycle Bin.",
|
||||
"no-archived-lists": "No lists in Recycle Bin.",
|
||||
"no-archived-swimlanes": "No swimlanes in Recycle Bin.",
|
||||
"no-archived-cards": "ゴミ箱にカードはありません",
|
||||
"no-archived-lists": "ゴミ箱にリストはありません",
|
||||
"no-archived-swimlanes": "ゴミ箱にスイムレーンはありません",
|
||||
"no-results": "該当するものはありません",
|
||||
"normal": "通常",
|
||||
"normal-desc": "カードの閲覧と編集が可能。設定変更不可。",
|
||||
@@ -352,8 +356,8 @@
|
||||
"restore": "復元",
|
||||
"save": "保存",
|
||||
"search": "検索",
|
||||
"search-cards": "Search from card titles and descriptions on this board",
|
||||
"search-example": "Text to search for?",
|
||||
"search-cards": "カードのタイトルと詳細から検索",
|
||||
"search-example": "検索文字",
|
||||
"select-color": "色を選択",
|
||||
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
|
||||
"setWipLimitPopup-title": "Set WIP Limit",
|
||||
@@ -433,9 +437,9 @@
|
||||
"email-smtp-test-text": "You have successfully sent an email",
|
||||
"error-invitation-code-not-exist": "招待コードが存在しません",
|
||||
"error-notAuthorized": "このページを参照する権限がありません。",
|
||||
"outgoing-webhooks": "Outgoing Webhooks",
|
||||
"outgoingWebhooksPopup-title": "Outgoing Webhooks",
|
||||
"new-outgoing-webhook": "New Outgoing Webhook",
|
||||
"outgoing-webhooks": "発信Webフック",
|
||||
"outgoingWebhooksPopup-title": "発信Webフック",
|
||||
"new-outgoing-webhook": "発信Webフックの作成",
|
||||
"no-name": "(Unknown)",
|
||||
"Wekan_version": "Wekanバージョン",
|
||||
"Node_version": "Nodeバージョン",
|
||||
@@ -460,10 +464,16 @@
|
||||
"createdAt": "Created at",
|
||||
"verified": "Verified",
|
||||
"active": "Active",
|
||||
"card-received": "Received",
|
||||
"card-received-on": "Received on",
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"card-received": "受付",
|
||||
"card-received-on": "受付日",
|
||||
"card-end": "終了",
|
||||
"card-end-on": "終了日",
|
||||
"editCardReceivedDatePopup-title": "受付日の変更",
|
||||
"editCardEndDatePopup-title": "終了日の変更",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "すべてのリスト、カード、ラベル、アクティビティは削除され、ボードの内容を元に戻すことができません。",
|
||||
"boardDeletePopup-title": "ボードを削除しますか?",
|
||||
"delete-board": "ボードを削除"
|
||||
}
|
||||
@@ -0,0 +1,479 @@
|
||||
{
|
||||
"accept": "Accept",
|
||||
"act-activity-notify": "[Wekan] Activity Notification",
|
||||
"act-addAttachment": "attached __attachment__ to __card__",
|
||||
"act-addChecklist": "added checklist __checklist__ to __card__",
|
||||
"act-addChecklistItem": "added __checklistItem__ to checklist __checklist__ on __card__",
|
||||
"act-addComment": "commented on __card__: __comment__",
|
||||
"act-createBoard": "created __board__",
|
||||
"act-createCard": "added __card__ to __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createList": "added __list__ to __board__",
|
||||
"act-addBoardMember": "added __member__ to __board__",
|
||||
"act-archivedBoard": "__board__ moved to Recycle Bin",
|
||||
"act-archivedCard": "__card__ moved to Recycle Bin",
|
||||
"act-archivedList": "__list__ moved to Recycle Bin",
|
||||
"act-archivedSwimlane": "__swimlane__ moved to Recycle Bin",
|
||||
"act-importBoard": "imported __board__",
|
||||
"act-importCard": "imported __card__",
|
||||
"act-importList": "imported __list__",
|
||||
"act-joinMember": "added __member__ to __card__",
|
||||
"act-moveCard": "moved __card__ from __oldList__ to __list__",
|
||||
"act-removeBoardMember": "removed __member__ from __board__",
|
||||
"act-restoredCard": "restored __card__ to __board__",
|
||||
"act-unjoinMember": "removed __member__ from __card__",
|
||||
"act-withBoardTitle": "[Wekan] __board__",
|
||||
"act-withCardTitle": "[__board__] __card__",
|
||||
"actions": "Actions",
|
||||
"activities": "Activities",
|
||||
"activity": "Activity",
|
||||
"activity-added": "added %s to %s",
|
||||
"activity-archived": "%s moved to Recycle Bin",
|
||||
"activity-attached": "attached %s to %s",
|
||||
"activity-created": "created %s",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-excluded": "excluded %s from %s",
|
||||
"activity-imported": "imported %s into %s from %s",
|
||||
"activity-imported-board": "imported %s from %s",
|
||||
"activity-joined": "joined %s",
|
||||
"activity-moved": "moved %s from %s to %s",
|
||||
"activity-on": "on %s",
|
||||
"activity-removed": "removed %s from %s",
|
||||
"activity-sent": "sent %s to %s",
|
||||
"activity-unjoined": "unjoined %s",
|
||||
"activity-checklist-added": "added checklist to %s",
|
||||
"activity-checklist-item-added": "added checklist item to '%s' in %s",
|
||||
"add": "Add",
|
||||
"add-attachment": "Add Attachment",
|
||||
"add-board": "Add Board",
|
||||
"add-card": "Add Card",
|
||||
"add-swimlane": "Add Swimlane",
|
||||
"add-checklist": "Add Checklist",
|
||||
"add-checklist-item": "Add an item to checklist",
|
||||
"add-cover": "Add Cover",
|
||||
"add-label": "Add Label",
|
||||
"add-list": "Add List",
|
||||
"add-members": "Add Members",
|
||||
"added": "Added",
|
||||
"addMemberPopup-title": "Members",
|
||||
"admin": "Admin",
|
||||
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
|
||||
"admin-announcement": "Announcement",
|
||||
"admin-announcement-active": "Active System-Wide Announcement",
|
||||
"admin-announcement-title": "Announcement from Administrator",
|
||||
"all-boards": "All boards",
|
||||
"and-n-other-card": "And __count__ other card",
|
||||
"and-n-other-card_plural": "And __count__ other cards",
|
||||
"apply": "Apply",
|
||||
"app-is-offline": "Wekan is loading, please wait. Refreshing the page will cause data loss. If Wekan does not load, please check that Wekan server has not stopped.",
|
||||
"archive": "Move to Recycle Bin",
|
||||
"archive-all": "Move All to Recycle Bin",
|
||||
"archive-board": "Move Board to Recycle Bin",
|
||||
"archive-card": "Move Card to Recycle Bin",
|
||||
"archive-list": "Move List to Recycle Bin",
|
||||
"archive-swimlane": "Move Swimlane to Recycle Bin",
|
||||
"archive-selection": "Move selection to Recycle Bin",
|
||||
"archiveBoardPopup-title": "Move Board to Recycle Bin?",
|
||||
"archived-items": "Recycle Bin",
|
||||
"archived-boards": "Boards in Recycle Bin",
|
||||
"restore-board": "Restore Board",
|
||||
"no-archived-boards": "No Boards in Recycle Bin.",
|
||||
"archives": "Recycle Bin",
|
||||
"assign-member": "Assign member",
|
||||
"attached": "attached",
|
||||
"attachment": "Attachment",
|
||||
"attachment-delete-pop": "Deleting an attachment is permanent. There is no undo.",
|
||||
"attachmentDeletePopup-title": "Delete Attachment?",
|
||||
"attachments": "Attachments",
|
||||
"auto-watch": "Automatically watch boards when they are created",
|
||||
"avatar-too-big": "The avatar is too large (70KB max)",
|
||||
"back": "Back",
|
||||
"board-change-color": "Change color",
|
||||
"board-nb-stars": "%s stars",
|
||||
"board-not-found": "Board not found",
|
||||
"board-private-info": "This board will be <strong>private</strong>.",
|
||||
"board-public-info": "This board will be <strong>public</strong>.",
|
||||
"boardChangeColorPopup-title": "Change Board Background",
|
||||
"boardChangeTitlePopup-title": "Rename Board",
|
||||
"boardChangeVisibilityPopup-title": "Change Visibility",
|
||||
"boardChangeWatchPopup-title": "Change Watch",
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
"cancel": "Cancel",
|
||||
"card-archived": "This card is moved to Recycle Bin.",
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
"card-edit-attachments": "Edit attachments",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-labels": "Edit labels",
|
||||
"card-edit-members": "Edit members",
|
||||
"card-labels-title": "Change the labels for the card.",
|
||||
"card-members-title": "Add or remove members of the board from the card.",
|
||||
"card-start": "Start",
|
||||
"card-start-on": "Starts on",
|
||||
"cardAttachmentsPopup-title": "Attach From",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardDeletePopup-title": "Delete Card?",
|
||||
"cardDetailsActionsPopup-title": "Card Actions",
|
||||
"cardLabelsPopup-title": "Labels",
|
||||
"cardMembersPopup-title": "Members",
|
||||
"cardMorePopup-title": "More",
|
||||
"cards": "Cards",
|
||||
"cards-count": "Cards",
|
||||
"change": "Change",
|
||||
"change-avatar": "Change Avatar",
|
||||
"change-password": "Change Password",
|
||||
"change-permissions": "Change permissions",
|
||||
"change-settings": "Change Settings",
|
||||
"changeAvatarPopup-title": "Change Avatar",
|
||||
"changeLanguagePopup-title": "Change Language",
|
||||
"changePasswordPopup-title": "Change Password",
|
||||
"changePermissionsPopup-title": "Change Permissions",
|
||||
"changeSettingsPopup-title": "Change Settings",
|
||||
"checklists": "Checklists",
|
||||
"click-to-star": "Click to star this board.",
|
||||
"click-to-unstar": "Click to unstar this board.",
|
||||
"clipboard": "Clipboard or drag & drop",
|
||||
"close": "Close",
|
||||
"close-board": "Close Board",
|
||||
"close-board-pop": "You will be able to restore the board by clicking the “Recycle Bin” button from the home header.",
|
||||
"color-black": "black",
|
||||
"color-blue": "blue",
|
||||
"color-green": "green",
|
||||
"color-lime": "lime",
|
||||
"color-orange": "orange",
|
||||
"color-pink": "pink",
|
||||
"color-purple": "purple",
|
||||
"color-red": "red",
|
||||
"color-sky": "sky",
|
||||
"color-yellow": "yellow",
|
||||
"comment": "Comment",
|
||||
"comment-placeholder": "Write Comment",
|
||||
"comment-only": "Comment only",
|
||||
"comment-only-desc": "Can comment on cards only.",
|
||||
"computer": "Computer",
|
||||
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist",
|
||||
"copy-card-link-to-clipboard": "Copy card link to clipboard",
|
||||
"copyCardPopup-title": "Copy Card",
|
||||
"copyChecklistToManyCardsPopup-title": "Copy Checklist Template to Many Cards",
|
||||
"copyChecklistToManyCardsPopup-instructions": "Destination Card Titles and Descriptions in this JSON format",
|
||||
"copyChecklistToManyCardsPopup-format": "[ {\"title\": \"First card title\", \"description\":\"First card description\"}, {\"title\":\"Second card title\",\"description\":\"Second card description\"},{\"title\":\"Last card title\",\"description\":\"Last card description\"} ]",
|
||||
"create": "Create",
|
||||
"createBoardPopup-title": "Create Board",
|
||||
"chooseBoardSourcePopup-title": "Import board",
|
||||
"createLabelPopup-title": "Create Label",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"current": "current",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-date": "Date",
|
||||
"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-fields": "Custom Fields",
|
||||
"date": "Date",
|
||||
"decline": "Decline",
|
||||
"default-avatar": "Default avatar",
|
||||
"delete": "Delete",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteLabelPopup-title": "Delete Label?",
|
||||
"description": "Description",
|
||||
"disambiguateMultiLabelPopup-title": "Disambiguate Label Action",
|
||||
"disambiguateMultiMemberPopup-title": "Disambiguate Member Action",
|
||||
"discard": "Discard",
|
||||
"done": "Done",
|
||||
"download": "Download",
|
||||
"edit": "Edit",
|
||||
"edit-avatar": "Change Avatar",
|
||||
"edit-profile": "Edit Profile",
|
||||
"edit-wip-limit": "Edit WIP Limit",
|
||||
"soft-wip-limit": "Soft WIP Limit",
|
||||
"editCardStartDatePopup-title": "Change start date",
|
||||
"editCardDueDatePopup-title": "Change due date",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCardSpentTimePopup-title": "Change spent time",
|
||||
"editLabelPopup-title": "Change Label",
|
||||
"editNotificationPopup-title": "Edit Notification",
|
||||
"editProfilePopup-title": "Edit Profile",
|
||||
"email": "Email",
|
||||
"email-enrollAccount-subject": "An account created for you on __siteName__",
|
||||
"email-enrollAccount-text": "Hello __user__,\n\nTo start using the service, simply click the link below.\n\n__url__\n\nThanks.",
|
||||
"email-fail": "Sending email failed",
|
||||
"email-fail-text": "Error trying to send email",
|
||||
"email-invalid": "Invalid email",
|
||||
"email-invite": "Invite via Email",
|
||||
"email-invite-subject": "__inviter__ sent you an invitation",
|
||||
"email-invite-text": "Dear __user__,\n\n__inviter__ invites you to join board \"__board__\" for collaborations.\n\nPlease follow the link below:\n\n__url__\n\nThanks.",
|
||||
"email-resetPassword-subject": "Reset your password on __siteName__",
|
||||
"email-resetPassword-text": "Hello __user__,\n\nTo reset your password, simply click the link below.\n\n__url__\n\nThanks.",
|
||||
"email-sent": "Email sent",
|
||||
"email-verifyEmail-subject": "Verify your email address on __siteName__",
|
||||
"email-verifyEmail-text": "Hello __user__,\n\nTo verify your account email, simply click the link below.\n\n__url__\n\nThanks.",
|
||||
"enable-wip-limit": "Enable WIP Limit",
|
||||
"error-board-doesNotExist": "This board does not exist",
|
||||
"error-board-notAdmin": "You need to be admin of this board to do that",
|
||||
"error-board-notAMember": "You need to be a member of this board to do that",
|
||||
"error-json-malformed": "Your text is not valid JSON",
|
||||
"error-json-schema": "Your JSON data does not include the proper information in the correct format",
|
||||
"error-list-doesNotExist": "This list does not exist",
|
||||
"error-user-doesNotExist": "This user does not exist",
|
||||
"error-user-notAllowSelf": "You can not invite yourself",
|
||||
"error-user-notCreated": "This user is not created",
|
||||
"error-username-taken": "This username is already taken",
|
||||
"error-email-taken": "Email has already been taken",
|
||||
"export-board": "Export board",
|
||||
"filter": "Filter",
|
||||
"filter-cards": "Filter Cards",
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
"headerBarCreateBoardPopup-title": "Create Board",
|
||||
"home": "Home",
|
||||
"import": "Import",
|
||||
"import-board": "import board",
|
||||
"import-board-c": "Import board",
|
||||
"import-board-title-trello": "Import board from Trello",
|
||||
"import-board-title-wekan": "Import board from Wekan",
|
||||
"import-sandstorm-warning": "Imported board will delete all existing data on board and replace it with imported board.",
|
||||
"from-trello": "From Trello",
|
||||
"from-wekan": "From Wekan",
|
||||
"import-board-instruction-trello": "In your Trello board, go to 'Menu', then 'More', 'Print and Export', 'Export JSON', and copy the resulting text.",
|
||||
"import-board-instruction-wekan": "In your Wekan board, go to 'Menu', then 'Export board', and copy the text in the downloaded file.",
|
||||
"import-json-placeholder": "Paste your valid JSON data here",
|
||||
"import-map-members": "Map members",
|
||||
"import-members-map": "Your imported board has some members. Please map the members you want to import to Wekan users",
|
||||
"import-show-user-mapping": "Review members mapping",
|
||||
"import-user-select": "Pick the Wekan user you want to use as this member",
|
||||
"importMapMembersAddPopup-title": "Select Wekan member",
|
||||
"info": "Version",
|
||||
"initials": "Initials",
|
||||
"invalid-date": "Invalid date",
|
||||
"invalid-time": "Invalid time",
|
||||
"invalid-user": "Invalid user",
|
||||
"joined": "joined",
|
||||
"just-invited": "You are just invited to this board",
|
||||
"keyboard-shortcuts": "Keyboard shortcuts",
|
||||
"label-create": "Create Label",
|
||||
"label-default": "%s label (default)",
|
||||
"label-delete-pop": "There is no undo. This will remove this label from all cards and destroy its history.",
|
||||
"labels": "Labels",
|
||||
"language": "Language",
|
||||
"last-admin-desc": "You can’t change roles because there must be at least one admin.",
|
||||
"leave-board": "Leave Board",
|
||||
"leave-board-pop": "Are you sure you want to leave __boardTitle__? You will be removed from all cards on this board.",
|
||||
"leaveBoardPopup-title": "Leave Board ?",
|
||||
"link-card": "Link to this card",
|
||||
"list-archive-cards": "Move all cards in this list to Recycle Bin",
|
||||
"list-archive-cards-pop": "This will remove all the cards in this list from the board. To view cards in Recycle Bin and bring them back to the board, click “Menu” > “Recycle Bin”.",
|
||||
"list-move-cards": "Move all cards in this list",
|
||||
"list-select-cards": "Select all cards in this list",
|
||||
"listActionPopup-title": "List Actions",
|
||||
"swimlaneActionPopup-title": "Swimlane Actions",
|
||||
"listImportCardPopup-title": "Import a Trello card",
|
||||
"listMorePopup-title": "More",
|
||||
"link-list": "Link to this list",
|
||||
"list-delete-pop": "All actions will be removed from the activity feed and you won't be able to recover the list. There is no undo.",
|
||||
"list-delete-suggest-archive": "You can move a list to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"lists": "Lists",
|
||||
"swimlanes": "Swimlanes",
|
||||
"log-out": "Log Out",
|
||||
"log-in": "Log In",
|
||||
"loginPopup-title": "Log In",
|
||||
"memberMenuPopup-title": "Member Settings",
|
||||
"members": "Members",
|
||||
"menu": "Menu",
|
||||
"move-selection": "Move selection",
|
||||
"moveCardPopup-title": "Move Card",
|
||||
"moveCardToBottom-title": "Move to Bottom",
|
||||
"moveCardToTop-title": "Move to Top",
|
||||
"moveSelectionPopup-title": "Move selection",
|
||||
"multi-selection": "Multi-Selection",
|
||||
"multi-selection-on": "Multi-Selection is on",
|
||||
"muted": "Muted",
|
||||
"muted-info": "You will never be notified of any changes in this board",
|
||||
"my-boards": "My Boards",
|
||||
"name": "Name",
|
||||
"no-archived-cards": "No cards in Recycle Bin.",
|
||||
"no-archived-lists": "No lists in Recycle Bin.",
|
||||
"no-archived-swimlanes": "No swimlanes in Recycle Bin.",
|
||||
"no-results": "No results",
|
||||
"normal": "Normal",
|
||||
"normal-desc": "Can view and edit cards. Can't change settings.",
|
||||
"not-accepted-yet": "Invitation not accepted yet",
|
||||
"notify-participate": "Receive updates to any cards you participate as creater or member",
|
||||
"notify-watch": "Receive updates to any boards, lists, or cards you’re watching",
|
||||
"optional": "optional",
|
||||
"or": "or",
|
||||
"page-maybe-private": "This page may be private. You may be able to view it by <a href='%s'>logging in</a>.",
|
||||
"page-not-found": "Page not found.",
|
||||
"password": "Password",
|
||||
"paste-or-dragdrop": "to paste, or drag & drop image file to it (image only)",
|
||||
"participating": "Participating",
|
||||
"preview": "Preview",
|
||||
"previewAttachedImagePopup-title": "Preview",
|
||||
"previewClipboardImagePopup-title": "Preview",
|
||||
"private": "Private",
|
||||
"private-desc": "This board is private. Only people added to the board can view and edit it.",
|
||||
"profile": "Profile",
|
||||
"public": "Public",
|
||||
"public-desc": "This board is public. It's visible to anyone with the link and will show up in search engines like Google. Only people added to the board can edit.",
|
||||
"quick-access-description": "Star a board to add a shortcut in this bar.",
|
||||
"remove-cover": "Remove Cover",
|
||||
"remove-from-board": "Remove from Board",
|
||||
"remove-label": "Remove Label",
|
||||
"listDeletePopup-title": "Delete List ?",
|
||||
"remove-member": "Remove Member",
|
||||
"remove-member-from-card": "Remove from Card",
|
||||
"remove-member-pop": "Remove __name__ (__username__) from __boardTitle__? The member will be removed from all cards on this board. They will receive a notification.",
|
||||
"removeMemberPopup-title": "Remove Member?",
|
||||
"rename": "Rename",
|
||||
"rename-board": "Rename Board",
|
||||
"restore": "Restore",
|
||||
"save": "Save",
|
||||
"search": "Search",
|
||||
"search-cards": "Search from card titles and descriptions on this board",
|
||||
"search-example": "Text to search for?",
|
||||
"select-color": "Select Color",
|
||||
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
|
||||
"setWipLimitPopup-title": "Set WIP Limit",
|
||||
"shortcut-assign-self": "Assign yourself to current card",
|
||||
"shortcut-autocomplete-emoji": "Autocomplete emoji",
|
||||
"shortcut-autocomplete-members": "Autocomplete members",
|
||||
"shortcut-clear-filters": "Clear all filters",
|
||||
"shortcut-close-dialog": "Close Dialog",
|
||||
"shortcut-filter-my-cards": "Filter my cards",
|
||||
"shortcut-show-shortcuts": "Bring up this shortcuts list",
|
||||
"shortcut-toggle-filterbar": "Toggle Filter Sidebar",
|
||||
"shortcut-toggle-sidebar": "Toggle Board Sidebar",
|
||||
"show-cards-minimum-count": "Show cards count if list contains more than",
|
||||
"sidebar-open": "Open Sidebar",
|
||||
"sidebar-close": "Close Sidebar",
|
||||
"signupPopup-title": "Create an Account",
|
||||
"star-board-title": "Click to star this board. It will show up at top of your boards list.",
|
||||
"starred-boards": "Starred Boards",
|
||||
"starred-boards-description": "Starred boards show up at the top of your boards list.",
|
||||
"subscribe": "Subscribe",
|
||||
"team": "Team",
|
||||
"this-board": "this board",
|
||||
"this-card": "this card",
|
||||
"spent-time-hours": "Spent time (hours)",
|
||||
"overtime-hours": "Overtime (hours)",
|
||||
"overtime": "Overtime",
|
||||
"has-overtime-cards": "Has overtime cards",
|
||||
"has-spenttime-cards": "Has spent time cards",
|
||||
"time": "Time",
|
||||
"title": "Title",
|
||||
"tracking": "Tracking",
|
||||
"tracking-info": "You will be notified of any changes to those cards you are involved as creator or member.",
|
||||
"type": "Type",
|
||||
"unassign-member": "Unassign member",
|
||||
"unsaved-description": "You have an unsaved description.",
|
||||
"unwatch": "Unwatch",
|
||||
"upload": "Upload",
|
||||
"upload-avatar": "Upload an avatar",
|
||||
"uploaded-avatar": "Uploaded an avatar",
|
||||
"username": "Username",
|
||||
"view-it": "View it",
|
||||
"warn-list-archived": "warning: this card is in an list at Recycle Bin",
|
||||
"watch": "Watch",
|
||||
"watching": "Watching",
|
||||
"watching-info": "You will be notified of any change in this board",
|
||||
"welcome-board": "Welcome Board",
|
||||
"welcome-swimlane": "Milestone 1",
|
||||
"welcome-list1": "Basics",
|
||||
"welcome-list2": "Advanced",
|
||||
"what-to-do": "What do you want to do?",
|
||||
"wipLimitErrorPopup-title": "Invalid WIP Limit",
|
||||
"wipLimitErrorPopup-dialog-pt1": "The number of tasks in this list is higher than the WIP limit you've defined.",
|
||||
"wipLimitErrorPopup-dialog-pt2": "Please move some tasks out of this list, or set a higher WIP limit.",
|
||||
"admin-panel": "Admin Panel",
|
||||
"settings": "Settings",
|
||||
"people": "People",
|
||||
"registration": "Registration",
|
||||
"disable-self-registration": "Disable Self-Registration",
|
||||
"invite": "Invite",
|
||||
"invite-people": "Invite People",
|
||||
"to-boards": "To board(s)",
|
||||
"email-addresses": "Email Addresses",
|
||||
"smtp-host-description": "The address of the SMTP server that handles your emails.",
|
||||
"smtp-port-description": "The port your SMTP server uses for outgoing emails.",
|
||||
"smtp-tls-description": "Enable TLS support for SMTP server",
|
||||
"smtp-host": "SMTP Host",
|
||||
"smtp-port": "SMTP Port",
|
||||
"smtp-username": "Username",
|
||||
"smtp-password": "Password",
|
||||
"smtp-tls": "TLS support",
|
||||
"send-from": "From",
|
||||
"send-smtp-test": "Send a test email to yourself",
|
||||
"invitation-code": "Invitation Code",
|
||||
"email-invite-register-subject": "__inviter__ sent you an invitation",
|
||||
"email-invite-register-text": "Dear __user__,\n\n__inviter__ invites you to Wekan for collaborations.\n\nPlease follow the link below:\n__url__\n\nAnd your invitation code is: __icode__\n\nThanks.",
|
||||
"email-smtp-test-subject": "SMTP Test Email From Wekan",
|
||||
"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.",
|
||||
"outgoing-webhooks": "Outgoing Webhooks",
|
||||
"outgoingWebhooksPopup-title": "Outgoing Webhooks",
|
||||
"new-outgoing-webhook": "New Outgoing Webhook",
|
||||
"no-name": "(Unknown)",
|
||||
"Wekan_version": "Wekan version",
|
||||
"Node_version": "Node version",
|
||||
"OS_Arch": "OS Arch",
|
||||
"OS_Cpus": "OS CPU Count",
|
||||
"OS_Freemem": "OS Free Memory",
|
||||
"OS_Loadavg": "OS Load Average",
|
||||
"OS_Platform": "OS Platform",
|
||||
"OS_Release": "OS Release",
|
||||
"OS_Totalmem": "OS Total Memory",
|
||||
"OS_Type": "OS Type",
|
||||
"OS_Uptime": "OS Uptime",
|
||||
"hours": "hours",
|
||||
"minutes": "minutes",
|
||||
"seconds": "seconds",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
"accounts": "Accounts",
|
||||
"accounts-allowEmailChange": "Allow Email Change",
|
||||
"accounts-allowUserNameChange": "Allow Username Change",
|
||||
"createdAt": "Created at",
|
||||
"verified": "Verified",
|
||||
"active": "Active",
|
||||
"card-received": "Received",
|
||||
"card-received-on": "Received on",
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
@@ -0,0 +1,479 @@
|
||||
{
|
||||
"accept": "យល់ព្រម",
|
||||
"act-activity-notify": "[Wekan] សកម្មភាពជូនដំណឹង",
|
||||
"act-addAttachment": "attached __attachment__ to __card__",
|
||||
"act-addChecklist": "added checklist __checklist__ to __card__",
|
||||
"act-addChecklistItem": "added __checklistItem__ to checklist __checklist__ on __card__",
|
||||
"act-addComment": "commented on __card__: __comment__",
|
||||
"act-createBoard": "created __board__",
|
||||
"act-createCard": "added __card__ to __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createList": "added __list__ to __board__",
|
||||
"act-addBoardMember": "added __member__ to __board__",
|
||||
"act-archivedBoard": "__board__ moved to Recycle Bin",
|
||||
"act-archivedCard": "__card__ moved to Recycle Bin",
|
||||
"act-archivedList": "__list__ moved to Recycle Bin",
|
||||
"act-archivedSwimlane": "__swimlane__ moved to Recycle Bin",
|
||||
"act-importBoard": "imported __board__",
|
||||
"act-importCard": "imported __card__",
|
||||
"act-importList": "imported __list__",
|
||||
"act-joinMember": "added __member__ to __card__",
|
||||
"act-moveCard": "moved __card__ from __oldList__ to __list__",
|
||||
"act-removeBoardMember": "removed __member__ from __board__",
|
||||
"act-restoredCard": "restored __card__ to __board__",
|
||||
"act-unjoinMember": "removed __member__ from __card__",
|
||||
"act-withBoardTitle": "[Wekan] __board__",
|
||||
"act-withCardTitle": "[__board__] __card__",
|
||||
"actions": "Actions",
|
||||
"activities": "Activities",
|
||||
"activity": "Activity",
|
||||
"activity-added": "added %s to %s",
|
||||
"activity-archived": "%s moved to Recycle Bin",
|
||||
"activity-attached": "attached %s to %s",
|
||||
"activity-created": "created %s",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-excluded": "excluded %s from %s",
|
||||
"activity-imported": "imported %s into %s from %s",
|
||||
"activity-imported-board": "imported %s from %s",
|
||||
"activity-joined": "joined %s",
|
||||
"activity-moved": "moved %s from %s to %s",
|
||||
"activity-on": "on %s",
|
||||
"activity-removed": "removed %s from %s",
|
||||
"activity-sent": "sent %s to %s",
|
||||
"activity-unjoined": "unjoined %s",
|
||||
"activity-checklist-added": "added checklist to %s",
|
||||
"activity-checklist-item-added": "added checklist item to '%s' in %s",
|
||||
"add": "Add",
|
||||
"add-attachment": "Add Attachment",
|
||||
"add-board": "Add Board",
|
||||
"add-card": "Add Card",
|
||||
"add-swimlane": "Add Swimlane",
|
||||
"add-checklist": "Add Checklist",
|
||||
"add-checklist-item": "Add an item to checklist",
|
||||
"add-cover": "Add Cover",
|
||||
"add-label": "Add Label",
|
||||
"add-list": "Add List",
|
||||
"add-members": "Add Members",
|
||||
"added": "Added",
|
||||
"addMemberPopup-title": "Members",
|
||||
"admin": "Admin",
|
||||
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
|
||||
"admin-announcement": "Announcement",
|
||||
"admin-announcement-active": "Active System-Wide Announcement",
|
||||
"admin-announcement-title": "Announcement from Administrator",
|
||||
"all-boards": "All boards",
|
||||
"and-n-other-card": "And __count__ other card",
|
||||
"and-n-other-card_plural": "And __count__ other cards",
|
||||
"apply": "Apply",
|
||||
"app-is-offline": "Wekan is loading, please wait. Refreshing the page will cause data loss. If Wekan does not load, please check that Wekan server has not stopped.",
|
||||
"archive": "Move to Recycle Bin",
|
||||
"archive-all": "Move All to Recycle Bin",
|
||||
"archive-board": "Move Board to Recycle Bin",
|
||||
"archive-card": "Move Card to Recycle Bin",
|
||||
"archive-list": "Move List to Recycle Bin",
|
||||
"archive-swimlane": "Move Swimlane to Recycle Bin",
|
||||
"archive-selection": "Move selection to Recycle Bin",
|
||||
"archiveBoardPopup-title": "Move Board to Recycle Bin?",
|
||||
"archived-items": "Recycle Bin",
|
||||
"archived-boards": "Boards in Recycle Bin",
|
||||
"restore-board": "Restore Board",
|
||||
"no-archived-boards": "No Boards in Recycle Bin.",
|
||||
"archives": "Recycle Bin",
|
||||
"assign-member": "Assign member",
|
||||
"attached": "attached",
|
||||
"attachment": "Attachment",
|
||||
"attachment-delete-pop": "Deleting an attachment is permanent. There is no undo.",
|
||||
"attachmentDeletePopup-title": "Delete Attachment?",
|
||||
"attachments": "Attachments",
|
||||
"auto-watch": "Automatically watch boards when they are created",
|
||||
"avatar-too-big": "The avatar is too large (70KB max)",
|
||||
"back": "Back",
|
||||
"board-change-color": "Change color",
|
||||
"board-nb-stars": "%s stars",
|
||||
"board-not-found": "Board not found",
|
||||
"board-private-info": "This board will be <strong>private</strong>.",
|
||||
"board-public-info": "This board will be <strong>public</strong>.",
|
||||
"boardChangeColorPopup-title": "Change Board Background",
|
||||
"boardChangeTitlePopup-title": "Rename Board",
|
||||
"boardChangeVisibilityPopup-title": "Change Visibility",
|
||||
"boardChangeWatchPopup-title": "Change Watch",
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
"cancel": "Cancel",
|
||||
"card-archived": "This card is moved to Recycle Bin.",
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
"card-edit-attachments": "Edit attachments",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-labels": "Edit labels",
|
||||
"card-edit-members": "Edit members",
|
||||
"card-labels-title": "Change the labels for the card.",
|
||||
"card-members-title": "Add or remove members of the board from the card.",
|
||||
"card-start": "Start",
|
||||
"card-start-on": "Starts on",
|
||||
"cardAttachmentsPopup-title": "Attach From",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardDeletePopup-title": "Delete Card?",
|
||||
"cardDetailsActionsPopup-title": "Card Actions",
|
||||
"cardLabelsPopup-title": "Labels",
|
||||
"cardMembersPopup-title": "Members",
|
||||
"cardMorePopup-title": "More",
|
||||
"cards": "Cards",
|
||||
"cards-count": "Cards",
|
||||
"change": "Change",
|
||||
"change-avatar": "Change Avatar",
|
||||
"change-password": "Change Password",
|
||||
"change-permissions": "Change permissions",
|
||||
"change-settings": "Change Settings",
|
||||
"changeAvatarPopup-title": "Change Avatar",
|
||||
"changeLanguagePopup-title": "Change Language",
|
||||
"changePasswordPopup-title": "Change Password",
|
||||
"changePermissionsPopup-title": "Change Permissions",
|
||||
"changeSettingsPopup-title": "Change Settings",
|
||||
"checklists": "Checklists",
|
||||
"click-to-star": "Click to star this board.",
|
||||
"click-to-unstar": "Click to unstar this board.",
|
||||
"clipboard": "Clipboard or drag & drop",
|
||||
"close": "Close",
|
||||
"close-board": "Close Board",
|
||||
"close-board-pop": "You will be able to restore the board by clicking the “Recycle Bin” button from the home header.",
|
||||
"color-black": "black",
|
||||
"color-blue": "blue",
|
||||
"color-green": "green",
|
||||
"color-lime": "lime",
|
||||
"color-orange": "orange",
|
||||
"color-pink": "pink",
|
||||
"color-purple": "purple",
|
||||
"color-red": "red",
|
||||
"color-sky": "sky",
|
||||
"color-yellow": "yellow",
|
||||
"comment": "Comment",
|
||||
"comment-placeholder": "Write Comment",
|
||||
"comment-only": "Comment only",
|
||||
"comment-only-desc": "Can comment on cards only.",
|
||||
"computer": "Computer",
|
||||
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist",
|
||||
"copy-card-link-to-clipboard": "Copy card link to clipboard",
|
||||
"copyCardPopup-title": "Copy Card",
|
||||
"copyChecklistToManyCardsPopup-title": "Copy Checklist Template to Many Cards",
|
||||
"copyChecklistToManyCardsPopup-instructions": "Destination Card Titles and Descriptions in this JSON format",
|
||||
"copyChecklistToManyCardsPopup-format": "[ {\"title\": \"First card title\", \"description\":\"First card description\"}, {\"title\":\"Second card title\",\"description\":\"Second card description\"},{\"title\":\"Last card title\",\"description\":\"Last card description\"} ]",
|
||||
"create": "Create",
|
||||
"createBoardPopup-title": "Create Board",
|
||||
"chooseBoardSourcePopup-title": "Import board",
|
||||
"createLabelPopup-title": "Create Label",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"current": "current",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-date": "Date",
|
||||
"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-fields": "Custom Fields",
|
||||
"date": "Date",
|
||||
"decline": "Decline",
|
||||
"default-avatar": "Default avatar",
|
||||
"delete": "Delete",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteLabelPopup-title": "Delete Label?",
|
||||
"description": "Description",
|
||||
"disambiguateMultiLabelPopup-title": "Disambiguate Label Action",
|
||||
"disambiguateMultiMemberPopup-title": "Disambiguate Member Action",
|
||||
"discard": "Discard",
|
||||
"done": "Done",
|
||||
"download": "Download",
|
||||
"edit": "Edit",
|
||||
"edit-avatar": "Change Avatar",
|
||||
"edit-profile": "Edit Profile",
|
||||
"edit-wip-limit": "Edit WIP Limit",
|
||||
"soft-wip-limit": "Soft WIP Limit",
|
||||
"editCardStartDatePopup-title": "Change start date",
|
||||
"editCardDueDatePopup-title": "Change due date",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCardSpentTimePopup-title": "Change spent time",
|
||||
"editLabelPopup-title": "Change Label",
|
||||
"editNotificationPopup-title": "Edit Notification",
|
||||
"editProfilePopup-title": "Edit Profile",
|
||||
"email": "Email",
|
||||
"email-enrollAccount-subject": "An account created for you on __siteName__",
|
||||
"email-enrollAccount-text": "Hello __user__,\n\nTo start using the service, simply click the link below.\n\n__url__\n\nThanks.",
|
||||
"email-fail": "Sending email failed",
|
||||
"email-fail-text": "Error trying to send email",
|
||||
"email-invalid": "Invalid email",
|
||||
"email-invite": "Invite via Email",
|
||||
"email-invite-subject": "__inviter__ sent you an invitation",
|
||||
"email-invite-text": "Dear __user__,\n\n__inviter__ invites you to join board \"__board__\" for collaborations.\n\nPlease follow the link below:\n\n__url__\n\nThanks.",
|
||||
"email-resetPassword-subject": "Reset your password on __siteName__",
|
||||
"email-resetPassword-text": "Hello __user__,\n\nTo reset your password, simply click the link below.\n\n__url__\n\nThanks.",
|
||||
"email-sent": "Email sent",
|
||||
"email-verifyEmail-subject": "Verify your email address on __siteName__",
|
||||
"email-verifyEmail-text": "Hello __user__,\n\nTo verify your account email, simply click the link below.\n\n__url__\n\nThanks.",
|
||||
"enable-wip-limit": "Enable WIP Limit",
|
||||
"error-board-doesNotExist": "This board does not exist",
|
||||
"error-board-notAdmin": "You need to be admin of this board to do that",
|
||||
"error-board-notAMember": "You need to be a member of this board to do that",
|
||||
"error-json-malformed": "Your text is not valid JSON",
|
||||
"error-json-schema": "Your JSON data does not include the proper information in the correct format",
|
||||
"error-list-doesNotExist": "This list does not exist",
|
||||
"error-user-doesNotExist": "This user does not exist",
|
||||
"error-user-notAllowSelf": "You can not invite yourself",
|
||||
"error-user-notCreated": "This user is not created",
|
||||
"error-username-taken": "This username is already taken",
|
||||
"error-email-taken": "Email has already been taken",
|
||||
"export-board": "Export board",
|
||||
"filter": "Filter",
|
||||
"filter-cards": "Filter Cards",
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
"headerBarCreateBoardPopup-title": "Create Board",
|
||||
"home": "Home",
|
||||
"import": "Import",
|
||||
"import-board": "import board",
|
||||
"import-board-c": "Import board",
|
||||
"import-board-title-trello": "Import board from Trello",
|
||||
"import-board-title-wekan": "Import board from Wekan",
|
||||
"import-sandstorm-warning": "Imported board will delete all existing data on board and replace it with imported board.",
|
||||
"from-trello": "From Trello",
|
||||
"from-wekan": "From Wekan",
|
||||
"import-board-instruction-trello": "In your Trello board, go to 'Menu', then 'More', 'Print and Export', 'Export JSON', and copy the resulting text.",
|
||||
"import-board-instruction-wekan": "In your Wekan board, go to 'Menu', then 'Export board', and copy the text in the downloaded file.",
|
||||
"import-json-placeholder": "Paste your valid JSON data here",
|
||||
"import-map-members": "Map members",
|
||||
"import-members-map": "Your imported board has some members. Please map the members you want to import to Wekan users",
|
||||
"import-show-user-mapping": "Review members mapping",
|
||||
"import-user-select": "Pick the Wekan user you want to use as this member",
|
||||
"importMapMembersAddPopup-title": "Select Wekan member",
|
||||
"info": "Version",
|
||||
"initials": "Initials",
|
||||
"invalid-date": "Invalid date",
|
||||
"invalid-time": "Invalid time",
|
||||
"invalid-user": "Invalid user",
|
||||
"joined": "joined",
|
||||
"just-invited": "You are just invited to this board",
|
||||
"keyboard-shortcuts": "Keyboard shortcuts",
|
||||
"label-create": "Create Label",
|
||||
"label-default": "%s label (default)",
|
||||
"label-delete-pop": "There is no undo. This will remove this label from all cards and destroy its history.",
|
||||
"labels": "Labels",
|
||||
"language": "Language",
|
||||
"last-admin-desc": "You can’t change roles because there must be at least one admin.",
|
||||
"leave-board": "Leave Board",
|
||||
"leave-board-pop": "Are you sure you want to leave __boardTitle__? You will be removed from all cards on this board.",
|
||||
"leaveBoardPopup-title": "Leave Board ?",
|
||||
"link-card": "Link to this card",
|
||||
"list-archive-cards": "Move all cards in this list to Recycle Bin",
|
||||
"list-archive-cards-pop": "This will remove all the cards in this list from the board. To view cards in Recycle Bin and bring them back to the board, click “Menu” > “Recycle Bin”.",
|
||||
"list-move-cards": "Move all cards in this list",
|
||||
"list-select-cards": "Select all cards in this list",
|
||||
"listActionPopup-title": "List Actions",
|
||||
"swimlaneActionPopup-title": "Swimlane Actions",
|
||||
"listImportCardPopup-title": "Import a Trello card",
|
||||
"listMorePopup-title": "More",
|
||||
"link-list": "Link to this list",
|
||||
"list-delete-pop": "All actions will be removed from the activity feed and you won't be able to recover the list. There is no undo.",
|
||||
"list-delete-suggest-archive": "You can move a list to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"lists": "Lists",
|
||||
"swimlanes": "Swimlanes",
|
||||
"log-out": "Log Out",
|
||||
"log-in": "Log In",
|
||||
"loginPopup-title": "Log In",
|
||||
"memberMenuPopup-title": "Member Settings",
|
||||
"members": "Members",
|
||||
"menu": "Menu",
|
||||
"move-selection": "Move selection",
|
||||
"moveCardPopup-title": "Move Card",
|
||||
"moveCardToBottom-title": "Move to Bottom",
|
||||
"moveCardToTop-title": "Move to Top",
|
||||
"moveSelectionPopup-title": "Move selection",
|
||||
"multi-selection": "Multi-Selection",
|
||||
"multi-selection-on": "Multi-Selection is on",
|
||||
"muted": "Muted",
|
||||
"muted-info": "You will never be notified of any changes in this board",
|
||||
"my-boards": "My Boards",
|
||||
"name": "Name",
|
||||
"no-archived-cards": "No cards in Recycle Bin.",
|
||||
"no-archived-lists": "No lists in Recycle Bin.",
|
||||
"no-archived-swimlanes": "No swimlanes in Recycle Bin.",
|
||||
"no-results": "No results",
|
||||
"normal": "Normal",
|
||||
"normal-desc": "Can view and edit cards. Can't change settings.",
|
||||
"not-accepted-yet": "Invitation not accepted yet",
|
||||
"notify-participate": "Receive updates to any cards you participate as creater or member",
|
||||
"notify-watch": "Receive updates to any boards, lists, or cards you’re watching",
|
||||
"optional": "optional",
|
||||
"or": "or",
|
||||
"page-maybe-private": "This page may be private. You may be able to view it by <a href='%s'>logging in</a>.",
|
||||
"page-not-found": "Page not found.",
|
||||
"password": "Password",
|
||||
"paste-or-dragdrop": "to paste, or drag & drop image file to it (image only)",
|
||||
"participating": "Participating",
|
||||
"preview": "Preview",
|
||||
"previewAttachedImagePopup-title": "Preview",
|
||||
"previewClipboardImagePopup-title": "Preview",
|
||||
"private": "Private",
|
||||
"private-desc": "This board is private. Only people added to the board can view and edit it.",
|
||||
"profile": "Profile",
|
||||
"public": "Public",
|
||||
"public-desc": "This board is public. It's visible to anyone with the link and will show up in search engines like Google. Only people added to the board can edit.",
|
||||
"quick-access-description": "Star a board to add a shortcut in this bar.",
|
||||
"remove-cover": "Remove Cover",
|
||||
"remove-from-board": "Remove from Board",
|
||||
"remove-label": "Remove Label",
|
||||
"listDeletePopup-title": "Delete List ?",
|
||||
"remove-member": "Remove Member",
|
||||
"remove-member-from-card": "Remove from Card",
|
||||
"remove-member-pop": "Remove __name__ (__username__) from __boardTitle__? The member will be removed from all cards on this board. They will receive a notification.",
|
||||
"removeMemberPopup-title": "Remove Member?",
|
||||
"rename": "Rename",
|
||||
"rename-board": "Rename Board",
|
||||
"restore": "Restore",
|
||||
"save": "Save",
|
||||
"search": "Search",
|
||||
"search-cards": "Search from card titles and descriptions on this board",
|
||||
"search-example": "Text to search for?",
|
||||
"select-color": "Select Color",
|
||||
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
|
||||
"setWipLimitPopup-title": "Set WIP Limit",
|
||||
"shortcut-assign-self": "Assign yourself to current card",
|
||||
"shortcut-autocomplete-emoji": "Autocomplete emoji",
|
||||
"shortcut-autocomplete-members": "Autocomplete members",
|
||||
"shortcut-clear-filters": "Clear all filters",
|
||||
"shortcut-close-dialog": "បិទផ្ទាំង",
|
||||
"shortcut-filter-my-cards": "តម្រងកាតរបស់ខ្ញុំ",
|
||||
"shortcut-show-shortcuts": "Bring up this shortcuts list",
|
||||
"shortcut-toggle-filterbar": "Toggle Filter Sidebar",
|
||||
"shortcut-toggle-sidebar": "Toggle Board Sidebar",
|
||||
"show-cards-minimum-count": "Show cards count if list contains more than",
|
||||
"sidebar-open": "Open Sidebar",
|
||||
"sidebar-close": "Close Sidebar",
|
||||
"signupPopup-title": "បង្កើតគណនីមួយ",
|
||||
"star-board-title": "Click to star this board. It will show up at top of your boards list.",
|
||||
"starred-boards": "Starred Boards",
|
||||
"starred-boards-description": "Starred boards show up at the top of your boards list.",
|
||||
"subscribe": "Subscribe",
|
||||
"team": "Team",
|
||||
"this-board": "this board",
|
||||
"this-card": "កាតនេះ",
|
||||
"spent-time-hours": "ចំណាយពេល (ម៉ោង)",
|
||||
"overtime-hours": "លើសពេល (ម៉ោង)",
|
||||
"overtime": "លើសពេល",
|
||||
"has-overtime-cards": "មានកាតលើសពេល",
|
||||
"has-spenttime-cards": "មានកាតដែលបានចំណាយពេល",
|
||||
"time": "Time",
|
||||
"title": "Title",
|
||||
"tracking": "Tracking",
|
||||
"tracking-info": "You will be notified of any changes to those cards you are involved as creator or member.",
|
||||
"type": "Type",
|
||||
"unassign-member": "Unassign member",
|
||||
"unsaved-description": "You have an unsaved description.",
|
||||
"unwatch": "Unwatch",
|
||||
"upload": "Upload",
|
||||
"upload-avatar": "Upload an avatar",
|
||||
"uploaded-avatar": "Uploaded an avatar",
|
||||
"username": "Username",
|
||||
"view-it": "View it",
|
||||
"warn-list-archived": "warning: this card is in an list at Recycle Bin",
|
||||
"watch": "Watch",
|
||||
"watching": "Watching",
|
||||
"watching-info": "You will be notified of any change in this board",
|
||||
"welcome-board": "Welcome Board",
|
||||
"welcome-swimlane": "Milestone 1",
|
||||
"welcome-list1": "Basics",
|
||||
"welcome-list2": "Advanced",
|
||||
"what-to-do": "What do you want to do?",
|
||||
"wipLimitErrorPopup-title": "Invalid WIP Limit",
|
||||
"wipLimitErrorPopup-dialog-pt1": "The number of tasks in this list is higher than the WIP limit you've defined.",
|
||||
"wipLimitErrorPopup-dialog-pt2": "Please move some tasks out of this list, or set a higher WIP limit.",
|
||||
"admin-panel": "Admin Panel",
|
||||
"settings": "Settings",
|
||||
"people": "People",
|
||||
"registration": "Registration",
|
||||
"disable-self-registration": "Disable Self-Registration",
|
||||
"invite": "Invite",
|
||||
"invite-people": "Invite People",
|
||||
"to-boards": "To board(s)",
|
||||
"email-addresses": "Email Addresses",
|
||||
"smtp-host-description": "The address of the SMTP server that handles your emails.",
|
||||
"smtp-port-description": "The port your SMTP server uses for outgoing emails.",
|
||||
"smtp-tls-description": "Enable TLS support for SMTP server",
|
||||
"smtp-host": "SMTP Host",
|
||||
"smtp-port": "SMTP Port",
|
||||
"smtp-username": "Username",
|
||||
"smtp-password": "Password",
|
||||
"smtp-tls": "TLS support",
|
||||
"send-from": "From",
|
||||
"send-smtp-test": "Send a test email to yourself",
|
||||
"invitation-code": "Invitation Code",
|
||||
"email-invite-register-subject": "__inviter__ sent you an invitation",
|
||||
"email-invite-register-text": "Dear __user__,\n\n__inviter__ invites you to Wekan for collaborations.\n\nPlease follow the link below:\n__url__\n\nAnd your invitation code is: __icode__\n\nThanks.",
|
||||
"email-smtp-test-subject": "SMTP Test Email From Wekan",
|
||||
"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.",
|
||||
"outgoing-webhooks": "Outgoing Webhooks",
|
||||
"outgoingWebhooksPopup-title": "Outgoing Webhooks",
|
||||
"new-outgoing-webhook": "New Outgoing Webhook",
|
||||
"no-name": "(Unknown)",
|
||||
"Wekan_version": "Wekan version",
|
||||
"Node_version": "Node version",
|
||||
"OS_Arch": "OS Arch",
|
||||
"OS_Cpus": "OS CPU Count",
|
||||
"OS_Freemem": "OS Free Memory",
|
||||
"OS_Loadavg": "OS Load Average",
|
||||
"OS_Platform": "OS Platform",
|
||||
"OS_Release": "OS Release",
|
||||
"OS_Totalmem": "OS Total Memory",
|
||||
"OS_Type": "OS Type",
|
||||
"OS_Uptime": "OS Uptime",
|
||||
"hours": "hours",
|
||||
"minutes": "minutes",
|
||||
"seconds": "seconds",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
"accounts": "Accounts",
|
||||
"accounts-allowEmailChange": "Allow Email Change",
|
||||
"accounts-allowUserNameChange": "Allow Username Change",
|
||||
"createdAt": "Created at",
|
||||
"verified": "Verified",
|
||||
"active": "Active",
|
||||
"card-received": "Received",
|
||||
"card-received-on": "Received on",
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "보드 메뉴",
|
||||
"boards": "보드",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "목록들",
|
||||
"bucket-example": "예: “프로젝트 이름“ 입력",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "이 카드에 %s 코멘트가 있습니다.",
|
||||
"card-delete-notice": "영구 삭제입니다. 이 카드와 관련된 모든 작업들을 잃게됩니다.",
|
||||
"card-delete-pop": "모든 작업이 활동 내역에서 제거되며 카드를 다시 열 수 없습니다. 복구가 안되니 주의하시기 바랍니다.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "종료일",
|
||||
"card-due-on": "종료일",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "필터 초기화",
|
||||
"filter-no-label": "라벨 없음",
|
||||
"filter-no-member": "멤버 없음",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "필터 사용",
|
||||
"filter-on-desc": "보드에서 카드를 필터링합니다. 여기를 클릭하여 필터를 수정합니다.",
|
||||
"filter-to-selection": "선택 항목으로 필터링",
|
||||
"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",
|
||||
"fullname": "실명",
|
||||
"header-logo-title": "보드 페이지로 돌아가기.",
|
||||
"hide-system-messages": "시스템 메시지 숨기기",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Tavlemeny",
|
||||
"boards": "Tavler",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Som \"Bucket List\" for eksempel",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "Dette kortet har %s kommentar.",
|
||||
"card-delete-notice": "Sletting er permanent. Du vil miste alle hendelser knyttet til dette kortet.",
|
||||
"card-delete-pop": "Alle handlinger vil fjernes fra feeden for aktiviteter og du vil ikke kunne åpne kortet på nytt. Det er ingen mulighet å angre.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Frist",
|
||||
"card-due-on": "Frist til",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Bord menu",
|
||||
"boards": "Borden",
|
||||
"board-view": "Bord overzicht",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lijsten",
|
||||
"bucket-example": "Zoals \"Bucket List\" bijvoorbeeld",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "Deze kaart heeft %s reactie.",
|
||||
"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. Deze actie kan je niet ongedaan maken.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Deadline: ",
|
||||
"card-due-on": "Deadline: ",
|
||||
"card-spent": "gespendeerde tijd",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Reset filter",
|
||||
"filter-no-label": "Geen label",
|
||||
"filter-no-member": "Geen lid",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter staat aan",
|
||||
"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",
|
||||
"fullname": "Volledige naam",
|
||||
"header-logo-title": "Ga terug naar jouw borden pagina.",
|
||||
"hide-system-messages": "Verberg systeemberichten",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Menu tablicy",
|
||||
"boards": "Tablice",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Listy",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "Ta karta ma %s komentarzy.",
|
||||
"card-delete-notice": "Usunięcie jest trwałe. Stracisz wszystkie akcje powiązane z tą kartą.",
|
||||
"card-delete-pop": "Wszystkie akcje będą usunięte z widoku aktywności, nie można będzie ponownie otworzyć karty. Usunięcie jest nieodwracalne.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Usuń filter",
|
||||
"filter-no-label": "Brak etykiety",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filtr jest włączony",
|
||||
"filter-on-desc": "Filtrujesz karty na tej tablicy. Kliknij tutaj by edytować filtr.",
|
||||
"filter-to-selection": "Odfiltruj zaznaczenie",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Wróć do swojej strony z tablicami.",
|
||||
"hide-system-messages": "Ukryj wiadomości systemowe",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+70
-60
@@ -3,17 +3,17 @@
|
||||
"act-activity-notify": "[Wekan] Notificação de Atividade",
|
||||
"act-addAttachment": "anexo __attachment__ de __card__",
|
||||
"act-addChecklist": "added checklist __checklist__ no __card__",
|
||||
"act-addChecklistItem": "added __checklistItem__ to checklist __checklist__ on __card__",
|
||||
"act-addChecklistItem": "adicionado __checklistitem__ para a lista de checagem __checklist__ em __card__",
|
||||
"act-addComment": "comentou em __card__: __comment__",
|
||||
"act-createBoard": "criou __board__",
|
||||
"act-createCard": "__card__ adicionado à __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "criado campo customizado __customField__",
|
||||
"act-createList": "__list__ adicionada à __board__",
|
||||
"act-addBoardMember": "__member__ adicionado à __board__",
|
||||
"act-archivedBoard": "__board__ moved to Recycle Bin",
|
||||
"act-archivedCard": "__card__ moved to Recycle Bin",
|
||||
"act-archivedList": "__list__ moved to Recycle Bin",
|
||||
"act-archivedSwimlane": "__swimlane__ moved to Recycle Bin",
|
||||
"act-archivedBoard": "__board__ movido para a lixeira",
|
||||
"act-archivedCard": "__card__ movido para a lixeira",
|
||||
"act-archivedList": "__list__ movido para a lixeira",
|
||||
"act-archivedSwimlane": "__swimlane__ movido para a lixeira",
|
||||
"act-importBoard": "__board__ importado",
|
||||
"act-importCard": "__card__ importado",
|
||||
"act-importList": "__list__ importada",
|
||||
@@ -28,10 +28,10 @@
|
||||
"activities": "Atividades",
|
||||
"activity": "Atividade",
|
||||
"activity-added": "adicionou %s a %s",
|
||||
"activity-archived": "%s moved to Recycle Bin",
|
||||
"activity-archived": "%s movido para a lixeira",
|
||||
"activity-attached": "anexou %s a %s",
|
||||
"activity-created": "criou %s",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "criado campo customizado %s",
|
||||
"activity-excluded": "excluiu %s de %s",
|
||||
"activity-imported": "importado %s em %s de %s",
|
||||
"activity-imported-board": "importado %s de %s",
|
||||
@@ -47,7 +47,7 @@
|
||||
"add-attachment": "Adicionar Anexos",
|
||||
"add-board": "Adicionar Quadro",
|
||||
"add-card": "Adicionar Cartão",
|
||||
"add-swimlane": "Add Swimlane",
|
||||
"add-swimlane": "Adicionar Swimlane",
|
||||
"add-checklist": "Adicionar Checklist",
|
||||
"add-checklist-item": "Adicionar um item à lista de verificação",
|
||||
"add-cover": "Adicionar Capa",
|
||||
@@ -66,19 +66,19 @@
|
||||
"and-n-other-card_plural": "E __count__ outros cartões",
|
||||
"apply": "Aplicar",
|
||||
"app-is-offline": "O Wekan está carregando, por favor espere. Recarregar a página irá causar perda de dado. Se o Wekan não carregar por favor verifique se o servidor Wekan não está parado.",
|
||||
"archive": "Move to Recycle Bin",
|
||||
"archive-all": "Move All to Recycle Bin",
|
||||
"archive-board": "Move Board to Recycle Bin",
|
||||
"archive-card": "Move Card to Recycle Bin",
|
||||
"archive-list": "Move List to Recycle Bin",
|
||||
"archive-swimlane": "Move Swimlane to Recycle Bin",
|
||||
"archive-selection": "Move selection to Recycle Bin",
|
||||
"archiveBoardPopup-title": "Move Board to Recycle Bin?",
|
||||
"archived-items": "Recycle Bin",
|
||||
"archived-boards": "Boards in Recycle Bin",
|
||||
"archive": "Mover para a lixeira",
|
||||
"archive-all": "Mover tudo para a lixeira",
|
||||
"archive-board": "Mover quadro para a lixeira",
|
||||
"archive-card": "Mover cartão para a lixeira",
|
||||
"archive-list": "Mover lista para a lixeira",
|
||||
"archive-swimlane": "Mover Swimlane para a lixeira",
|
||||
"archive-selection": "Mover seleção para a lixeira",
|
||||
"archiveBoardPopup-title": "Mover o quadro para a lixeira?",
|
||||
"archived-items": "Lixeira",
|
||||
"archived-boards": "Quadros na lixeira",
|
||||
"restore-board": "Restaurar Quadro",
|
||||
"no-archived-boards": "No Boards in Recycle Bin.",
|
||||
"archives": "Recycle Bin",
|
||||
"no-archived-boards": "Não há quadros na lixeira",
|
||||
"archives": "Lixeira",
|
||||
"assign-member": "Atribuir Membro",
|
||||
"attached": "anexado",
|
||||
"attachment": "Anexo",
|
||||
@@ -100,20 +100,21 @@
|
||||
"boardMenuPopup-title": "Menu do Quadro",
|
||||
"boards": "Quadros",
|
||||
"board-view": "Visão de quadro",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Listas",
|
||||
"bucket-example": "\"Bucket List\", por exemplo",
|
||||
"cancel": "Cancelar",
|
||||
"card-archived": "This card is moved to Recycle Bin.",
|
||||
"card-archived": "Este cartão foi movido para a lixeira",
|
||||
"card-comments-title": "Este cartão possui %s comentários.",
|
||||
"card-delete-notice": "A exclusão será permanente. Você perderá todas as ações associadas a este cartão.",
|
||||
"card-delete-pop": "Todas as ações serão removidas da lista de Atividades e vocês não poderá re-abrir o cartão. Não há como desfazer.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "Você pode mover um cartão para fora da lixeira e movê-lo para o quadro e preservar a atividade.",
|
||||
"card-due": "Data fim",
|
||||
"card-due-on": "Finaliza em",
|
||||
"card-spent": "Tempo Gasto",
|
||||
"card-edit-attachments": "Editar anexos",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "Editar campos customizados",
|
||||
"card-edit-labels": "Editar etiquetas",
|
||||
"card-edit-members": "Editar membros",
|
||||
"card-labels-title": "Alterar etiquetas do cartão.",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "Data início",
|
||||
"card-start-on": "Começa em",
|
||||
"cardAttachmentsPopup-title": "Anexar a partir de",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "Mudar data",
|
||||
"cardCustomFieldsPopup-title": "Editar campos customizados",
|
||||
"cardDeletePopup-title": "Excluir Cartão?",
|
||||
"cardDetailsActionsPopup-title": "Ações do cartão",
|
||||
"cardLabelsPopup-title": "Etiquetas",
|
||||
@@ -146,7 +147,7 @@
|
||||
"clipboard": "Área de Transferência ou arraste e solte",
|
||||
"close": "Fechar",
|
||||
"close-board": "Fechar Quadro",
|
||||
"close-board-pop": "You will be able to restore the board by clicking the “Recycle Bin” button from the home header.",
|
||||
"close-board-pop": "Você poderá restaurar o quadro clicando no botão lixeira no cabeçalho da página inicial",
|
||||
"color-black": "preto",
|
||||
"color-blue": "azul",
|
||||
"color-green": "verde",
|
||||
@@ -172,25 +173,25 @@
|
||||
"createBoardPopup-title": "Criar Quadro",
|
||||
"chooseBoardSourcePopup-title": "Importar quadro",
|
||||
"createLabelPopup-title": "Criar Etiqueta",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "Criar campo",
|
||||
"createCustomFieldPopup-title": "Criar campo",
|
||||
"current": "atual",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "Não existe desfazer. Isso irá remover o campo customizado de todos os cartões e destruir seu histórico",
|
||||
"custom-field-checkbox": "Caixa de seleção",
|
||||
"custom-field-date": "Data",
|
||||
"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-fields": "Custom Fields",
|
||||
"custom-field-dropdown": "Lista suspensa",
|
||||
"custom-field-dropdown-none": "(nada)",
|
||||
"custom-field-dropdown-options": "Lista de opções",
|
||||
"custom-field-dropdown-options-placeholder": "Pressione enter para adicionar mais opções",
|
||||
"custom-field-dropdown-unknown": "(desconhecido)",
|
||||
"custom-field-number": "Número",
|
||||
"custom-field-text": "Texto",
|
||||
"custom-fields": "Campos customizados",
|
||||
"date": "Data",
|
||||
"decline": "Rejeitar",
|
||||
"default-avatar": "Avatar padrão",
|
||||
"delete": "Excluir",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "Deletar campo customizado?",
|
||||
"deleteLabelPopup-title": "Excluir Etiqueta?",
|
||||
"description": "Descrição",
|
||||
"disambiguateMultiLabelPopup-title": "Desambiguar ações de etiquetas",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Limite de WIP",
|
||||
"editCardStartDatePopup-title": "Altera data de início",
|
||||
"editCardDueDatePopup-title": "Altera data fim",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "Editar campo",
|
||||
"editCardSpentTimePopup-title": "Editar tempo gasto",
|
||||
"editLabelPopup-title": "Alterar Etiqueta",
|
||||
"editNotificationPopup-title": "Editar Notificações",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Limpar filtro",
|
||||
"filter-no-label": "Sem labels",
|
||||
"filter-no-member": "Sem membros",
|
||||
"filter-no-custom-fields": "Não há campos customizados",
|
||||
"filter-on": "Filtro está ativo",
|
||||
"filter-on-desc": "Você está filtrando cartões neste quadro. Clique aqui para editar o filtro.",
|
||||
"filter-to-selection": "Filtrar esta seleção",
|
||||
"advanced-filter-label": "Filtro avançado",
|
||||
"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",
|
||||
"fullname": "Nome Completo",
|
||||
"header-logo-title": "Voltar para a lista de quadros.",
|
||||
"hide-system-messages": "Esconde mensagens de sistema",
|
||||
@@ -284,17 +288,17 @@
|
||||
"leave-board-pop": "Tem a certeza de que pretende sair de __boardTitle__? Você será removido de todos os cartões neste quadro.",
|
||||
"leaveBoardPopup-title": "Sair do Quadro ?",
|
||||
"link-card": "Vincular a este cartão",
|
||||
"list-archive-cards": "Move all cards in this list to Recycle Bin",
|
||||
"list-archive-cards-pop": "This will remove all the cards in this list from the board. To view cards in Recycle Bin and bring them back to the board, click “Menu” > “Recycle Bin”.",
|
||||
"list-archive-cards": "Mover todos os cartões nesta lista para a lixeira",
|
||||
"list-archive-cards-pop": "Isso irá remover todos os cartões nesta lista do quadro. Para visualizar cartões na lixeira e trazê-los de volta ao quadro, clique em \"Menu\" > \"Lixeira\".",
|
||||
"list-move-cards": "Mover todos os cartões desta lista",
|
||||
"list-select-cards": "Selecionar todos os cartões nesta lista",
|
||||
"listActionPopup-title": "Listar Ações",
|
||||
"swimlaneActionPopup-title": "Swimlane Actions",
|
||||
"swimlaneActionPopup-title": "Ações de Swimlane",
|
||||
"listImportCardPopup-title": "Importe um cartão do Trello",
|
||||
"listMorePopup-title": "Mais",
|
||||
"link-list": "Vincular a esta lista",
|
||||
"list-delete-pop": "Todas as ações serão removidas da lista de atividades e você não poderá recuperar a lista. Não há como desfazer.",
|
||||
"list-delete-suggest-archive": "You can move a list to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"list-delete-suggest-archive": "Você pode mover a lista para a lixeira para removê-la do quadro e preservar a atividade.",
|
||||
"lists": "Listas",
|
||||
"swimlanes": "Swimlanes",
|
||||
"log-out": "Sair",
|
||||
@@ -314,9 +318,9 @@
|
||||
"muted-info": "Você nunca receberá qualquer notificação desse board",
|
||||
"my-boards": "Meus Quadros",
|
||||
"name": "Nome",
|
||||
"no-archived-cards": "No cards in Recycle Bin.",
|
||||
"no-archived-lists": "No lists in Recycle Bin.",
|
||||
"no-archived-swimlanes": "No swimlanes in Recycle Bin.",
|
||||
"no-archived-cards": "Não há cartões na lixeira",
|
||||
"no-archived-lists": "Não há listas na lixeira",
|
||||
"no-archived-swimlanes": "Não há swimlanes na lixeira",
|
||||
"no-results": "Nenhum resultado.",
|
||||
"normal": "Normal",
|
||||
"normal-desc": "Pode ver e editar cartões. Não pode alterar configurações.",
|
||||
@@ -381,12 +385,12 @@
|
||||
"overtime-hours": "Tempo extras (Horas)",
|
||||
"overtime": "Tempo extras",
|
||||
"has-overtime-cards": "Tem cartões de horas extras",
|
||||
"has-spenttime-cards": "Has spent time cards",
|
||||
"has-spenttime-cards": "Gastou cartões de tempo",
|
||||
"time": "Tempo",
|
||||
"title": "Título",
|
||||
"tracking": "Tracking",
|
||||
"tracking-info": "Você será notificado se houver qualquer alteração em cards em que você é o criador ou membro",
|
||||
"type": "Type",
|
||||
"type": "Tipo",
|
||||
"unassign-member": "Membro não associado",
|
||||
"unsaved-description": "Você possui uma descrição não salva",
|
||||
"unwatch": "Deixar de observar",
|
||||
@@ -395,12 +399,12 @@
|
||||
"uploaded-avatar": "Avatar carregado",
|
||||
"username": "Nome de usuário",
|
||||
"view-it": "Visualizar",
|
||||
"warn-list-archived": "warning: this card is in an list at Recycle Bin",
|
||||
"warn-list-archived": "Aviso: este cartão está em uma lista na lixeira",
|
||||
"watch": "Observar",
|
||||
"watching": "Observando",
|
||||
"watching-info": "Você será notificado em qualquer alteração desse board",
|
||||
"welcome-board": "Board de Boas Vindas",
|
||||
"welcome-swimlane": "Milestone 1",
|
||||
"welcome-swimlane": "Marco 1",
|
||||
"welcome-list1": "Básico",
|
||||
"welcome-list2": "Avançado",
|
||||
"what-to-do": "O que você gostaria de fazer?",
|
||||
@@ -451,19 +455,25 @@
|
||||
"hours": "horas",
|
||||
"minutes": "minutos",
|
||||
"seconds": "segundos",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "Mostrar este campo no cartão",
|
||||
"yes": "Sim",
|
||||
"no": "Não",
|
||||
"accounts": "Contas",
|
||||
"accounts-allowEmailChange": "Permitir Mudança de Email",
|
||||
"accounts-allowUserNameChange": "Allow Username Change",
|
||||
"accounts-allowUserNameChange": "Permitir alteração de nome de usuário",
|
||||
"createdAt": "Criado em",
|
||||
"verified": "Verificado",
|
||||
"active": "Ativo",
|
||||
"card-received": "Received",
|
||||
"card-received-on": "Received on",
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"card-received": "Recebido",
|
||||
"card-received-on": "Recebido em",
|
||||
"card-end": "Fim",
|
||||
"card-end-on": "Termina em",
|
||||
"editCardReceivedDatePopup-title": "Modificar data de recebimento",
|
||||
"editCardEndDatePopup-title": "Mudar data de fim",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Liste",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+34
-24
@@ -7,7 +7,7 @@
|
||||
"act-addComment": "прокомментировал __card__: __comment__",
|
||||
"act-createBoard": "создал __board__",
|
||||
"act-createCard": "добавил __card__ в __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "Расширенный фильтр позволяет написать строку, содержащую следующие операторы: ==! = <=> = && || () Пространство используется как разделитель между Операторами. Вы можете фильтровать все пользовательские поля, введя их имена и значения. Например: Field1 == Value1. Примечание. Если поля или значения содержат пробелы, вам необходимо инкапсулировать их в одинарные кавычки. Например: «Поле 1» == «Значение 1». Также вы можете комбинировать несколько условий. Например: F1 == V1 || F1 = V2. Обычно все операторы интерпретируются слева направо. Вы можете изменить порядок, разместив скобки. Например: F1 == V1 и (F2 == V2 || F2 == V3)",
|
||||
"act-createList": "добавил __list__ для __board__",
|
||||
"act-addBoardMember": "добавил __member__ в __board__",
|
||||
"act-archivedBoard": "Доска __board__ перемещена в Корзину",
|
||||
@@ -31,7 +31,7 @@
|
||||
"activity-archived": "%s перемещено в Корзину",
|
||||
"activity-attached": "прикрепил %s к %s",
|
||||
"activity-created": "создал %s",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "создать настраиваемое поле",
|
||||
"activity-excluded": "исключил %s из %s",
|
||||
"activity-imported": "импортировал %s в %s из %s",
|
||||
"activity-imported-board": "импортировал %s из %s",
|
||||
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Меню доски",
|
||||
"boards": "Доски",
|
||||
"board-view": "Вид доски",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Дорожки",
|
||||
"board-view-lists": "Списки",
|
||||
"bucket-example": "Например “Список дел”",
|
||||
@@ -113,7 +114,7 @@
|
||||
"card-due-on": "Выполнить до",
|
||||
"card-spent": "Затраченное время",
|
||||
"card-edit-attachments": "Изменить вложения",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "Редактировать настраиваемые поля",
|
||||
"card-edit-labels": "Изменить метку",
|
||||
"card-edit-members": "Изменить участников",
|
||||
"card-labels-title": "Изменить метки для этой карточки.",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "Дата начала",
|
||||
"card-start-on": "Начнётся с",
|
||||
"cardAttachmentsPopup-title": "Прикрепить из",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "Изменить дату",
|
||||
"cardCustomFieldsPopup-title": "редактировать настраиваемые поля",
|
||||
"cardDeletePopup-title": "Удалить карточку?",
|
||||
"cardDetailsActionsPopup-title": "Действия в карточке",
|
||||
"cardLabelsPopup-title": "Метки",
|
||||
@@ -166,31 +167,31 @@
|
||||
"copy-card-link-to-clipboard": "Копировать ссылку на карточку в буфер обмена",
|
||||
"copyCardPopup-title": "Копировать карточку",
|
||||
"copyChecklistToManyCardsPopup-title": "Копировать шаблон контрольного списка в несколько карточек",
|
||||
"copyChecklistToManyCardsPopup-instructions": "Destination Card Titles and Descriptions in this JSON format",
|
||||
"copyChecklistToManyCardsPopup-instructions": "Названия и описания целевых карт в формате JSON",
|
||||
"copyChecklistToManyCardsPopup-format": "[ {\"title\": \"First card title\", \"description\":\"First card description\"}, {\"title\":\"Second card title\",\"description\":\"Second card description\"},{\"title\":\"Last card title\",\"description\":\"Last card description\"} ]",
|
||||
"create": "Создать",
|
||||
"createBoardPopup-title": "Создать доску",
|
||||
"chooseBoardSourcePopup-title": "Импортировать доску",
|
||||
"createLabelPopup-title": "Создать метку",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "Создать поле",
|
||||
"createCustomFieldPopup-title": "Создать поле",
|
||||
"current": "текущий",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "Отменить нельзя. Это удалит настраиваемое поле со всех карт и уничтожит его историю.",
|
||||
"custom-field-checkbox": "Галочка",
|
||||
"custom-field-date": "Дата",
|
||||
"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-fields": "Custom Fields",
|
||||
"custom-field-dropdown": "Выпадающий список",
|
||||
"custom-field-dropdown-none": "(нет)",
|
||||
"custom-field-dropdown-options": "Параметры списка",
|
||||
"custom-field-dropdown-options-placeholder": "Нажмите «Ввод», чтобы добавить дополнительные параметры.",
|
||||
"custom-field-dropdown-unknown": "(неизвестно)",
|
||||
"custom-field-number": "Номер",
|
||||
"custom-field-text": "Текст",
|
||||
"custom-fields": "Настраиваемые поля",
|
||||
"date": "Дата",
|
||||
"decline": "Отклонить",
|
||||
"default-avatar": "Аватар по умолчанию",
|
||||
"delete": "Удалить",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "Удалить настраиваемые поля?",
|
||||
"deleteLabelPopup-title": "Удалить метку?",
|
||||
"description": "Описание",
|
||||
"disambiguateMultiLabelPopup-title": "Разрешить конфликт меток",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Мягкий лимит на кол-во задач",
|
||||
"editCardStartDatePopup-title": "Изменить дату начала",
|
||||
"editCardDueDatePopup-title": "Изменить дату выполнения",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "Редактировать поле",
|
||||
"editCardSpentTimePopup-title": "Изменить затраченное время",
|
||||
"editLabelPopup-title": "Изменить метки",
|
||||
"editNotificationPopup-title": "Редактировать уведомления",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Очистить фильтр",
|
||||
"filter-no-label": "Нет метки",
|
||||
"filter-no-member": "Нет участников",
|
||||
"filter-no-custom-fields": "Нет настраиваемых полей",
|
||||
"filter-on": "Включен фильтр",
|
||||
"filter-on-desc": "Показываются карточки, соответствующие настройкам фильтра. Нажмите для редактирования.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"advanced-filter-label": "Расширенный фильтр",
|
||||
"advanced-filter-description": "Расширенный фильтр позволяет написать строку, содержащую следующие операторы: ==! = <=> = && || () Пространство используется как разделитель между Операторами. Вы можете фильтровать все пользовательские поля, введя их имена и значения. Например: Field1 == Value1. Примечание. Если поля или значения содержат пробелы, вам необходимо взять их в кавычки. Например: «Поле 1» == «Значение 1». Для одиночных управляющих символов ('\\ /), которые нужно пропустить, вы можете использовать \\. Например: Field1 = I \\ m. Также вы можете комбинировать несколько условий. Например: F1 == V1 || F1 == V2. Обычно все операторы интерпретируются слева направо. Вы можете изменить порядок, разместив скобки. Например: F1 == V1 && (F2 == V2 || F2 == V3). Также вы можете искать текстовые поля с помощью regex: F1 == /Tes.*/i",
|
||||
"fullname": "Полное имя",
|
||||
"header-logo-title": "Вернуться к доскам.",
|
||||
"hide-system-messages": "Скрыть системные сообщения",
|
||||
@@ -386,7 +390,7 @@
|
||||
"title": "Название",
|
||||
"tracking": "Отслеживание",
|
||||
"tracking-info": "Вы будете уведомлены о любых изменениях в тех карточках, в которых вы являетесь создателем или участником.",
|
||||
"type": "Type",
|
||||
"type": "Тип",
|
||||
"unassign-member": "Отменить назначение участника",
|
||||
"unsaved-description": "У вас есть несохраненное описание.",
|
||||
"unwatch": "Перестать следить",
|
||||
@@ -451,12 +455,12 @@
|
||||
"hours": "часы",
|
||||
"minutes": "минуты",
|
||||
"seconds": "секунды",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "Показать это поле на карте",
|
||||
"yes": "Да",
|
||||
"no": "Нет",
|
||||
"accounts": "Учетные записи",
|
||||
"accounts-allowEmailChange": "Разрешить изменение электронной почты",
|
||||
"accounts-allowUserNameChange": "Allow Username Change",
|
||||
"accounts-allowUserNameChange": "Разрешить изменение имени пользователя",
|
||||
"createdAt": "Создано на",
|
||||
"verified": "Проверено",
|
||||
"active": "Действующий",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "Дата окончания",
|
||||
"card-end-on": "Завершится до",
|
||||
"editCardReceivedDatePopup-title": "Изменить дату получения",
|
||||
"editCardEndDatePopup-title": "Изменить дату завершения"
|
||||
"editCardEndDatePopup-title": "Изменить дату завершения",
|
||||
"assigned-by": "Назначено",
|
||||
"requested-by": "Запрошен",
|
||||
"board-delete-notice": "Удаление является постоянным. Вы потеряете все списки, карты и действия, связанные с этой доской.",
|
||||
"delete-board-confirm-popup": "Все списки, карточки, ярлыки и действия будут удалены, и вы не сможете восстановить содержимое доски. Отменить нельзя.",
|
||||
"boardDeletePopup-title": "Удалить доску?",
|
||||
"delete-board": "Удалить доску"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Meni table",
|
||||
"boards": "Table",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Na primer \"Lista zadataka\"",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "Ova kartica ima %s komentar.",
|
||||
"card-delete-notice": "Brisanje je trajno. Izgubićeš sve akcije povezane sa ovom karticom.",
|
||||
"card-delete-pop": "Sve akcije će biti uklonjene sa liste aktivnosti i kartica neće moći biti ponovo otvorena. Nema vraćanja unazad.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Krajnji datum",
|
||||
"card-due-on": "Završava se",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "Nema oznake",
|
||||
"filter-no-member": "Nema člana",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Sakrij sistemske poruke",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+61
-51
@@ -7,7 +7,7 @@
|
||||
"act-addComment": "kommenterade __card__: __comment__",
|
||||
"act-createBoard": "skapade __board__",
|
||||
"act-createCard": "lade till __card__ to __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "skapa anpassat fält __customField__",
|
||||
"act-createList": "lade till __list__ to __board__",
|
||||
"act-addBoardMember": "lade till __member__ to __board__",
|
||||
"act-archivedBoard": "__board__ flyttad till papperskorgen",
|
||||
@@ -31,7 +31,7 @@
|
||||
"activity-archived": "%s flyttad till papperskorgen",
|
||||
"activity-attached": "bifogade %s to %s",
|
||||
"activity-created": "skapade %s",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "skapa anpassat fält %s",
|
||||
"activity-excluded": "exkluderade %s från %s",
|
||||
"activity-imported": "importerade %s till %s från %s",
|
||||
"activity-imported-board": "importerade %s från %s",
|
||||
@@ -47,7 +47,7 @@
|
||||
"add-attachment": "Lägg till bilaga",
|
||||
"add-board": "Lägg till anslagstavla",
|
||||
"add-card": "Lägg till kort",
|
||||
"add-swimlane": "Add Swimlane",
|
||||
"add-swimlane": "Lägg till simbana",
|
||||
"add-checklist": "Lägg till checklista",
|
||||
"add-checklist-item": "Lägg till ett objekt till kontrollista",
|
||||
"add-cover": "Lägg till omslag",
|
||||
@@ -68,16 +68,16 @@
|
||||
"app-is-offline": "Wekan laddar, vänta. Uppdatering av sidan kommer att leda till förlust av data. Om Wekan inte laddas, kontrollera att Wekan-servern inte har stoppats.",
|
||||
"archive": "Flytta till papperskorgen",
|
||||
"archive-all": "Flytta alla till papperskorgen",
|
||||
"archive-board": "Move Board to Recycle Bin",
|
||||
"archive-card": "Move Card to Recycle Bin",
|
||||
"archive-list": "Move List to Recycle Bin",
|
||||
"archive-swimlane": "Move Swimlane to Recycle Bin",
|
||||
"archive-selection": "Move selection to Recycle Bin",
|
||||
"archiveBoardPopup-title": "Move Board to Recycle Bin?",
|
||||
"archive-board": "Flytta anslagstavla till papperskorgen",
|
||||
"archive-card": "Flytta kort till papperskorgen",
|
||||
"archive-list": "Flytta lista till papperskorgen",
|
||||
"archive-swimlane": "Flytta simbana till papperskorgen",
|
||||
"archive-selection": "Flytta val till papperskorgen",
|
||||
"archiveBoardPopup-title": "Flytta anslagstavla till papperskorgen?",
|
||||
"archived-items": "Papperskorgen",
|
||||
"archived-boards": "Boards in Recycle Bin",
|
||||
"archived-boards": "Anslagstavlor i papperskorgen",
|
||||
"restore-board": "Återställ anslagstavla",
|
||||
"no-archived-boards": "No Boards in Recycle Bin.",
|
||||
"no-archived-boards": "Inga anslagstavlor i papperskorgen",
|
||||
"archives": "Papperskorgen",
|
||||
"assign-member": "Tilldela medlem",
|
||||
"attached": "bifogad",
|
||||
@@ -99,8 +99,9 @@
|
||||
"boardChangeWatchPopup-title": "Ändra bevaka",
|
||||
"boardMenuPopup-title": "Anslagstavla meny",
|
||||
"boards": "Anslagstavlor",
|
||||
"board-view": "Board View",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view": "Anslagstavelsvy",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Simbanor",
|
||||
"board-view-lists": "Listor",
|
||||
"bucket-example": "Gilla \"att-göra-innan-jag-dör-lista\" till exempel",
|
||||
"cancel": "Avbryt",
|
||||
@@ -108,12 +109,12 @@
|
||||
"card-comments-title": "Detta kort har %s kommentar.",
|
||||
"card-delete-notice": "Ta bort är permanent. Du kommer att förlora alla åtgärder i samband med detta kort.",
|
||||
"card-delete-pop": "Alla åtgärder kommer att tas bort från aktivitetsflöde och du kommer inte att kunna öppna kortet igen. Det går inte att ångra.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "Du kan flytta ett kort till papperskorgen for att ta bort det från anslagstavlan och bevara aktiviteten.",
|
||||
"card-due": "Förfaller",
|
||||
"card-due-on": "Förfaller på",
|
||||
"card-spent": "Spenderad tid",
|
||||
"card-edit-attachments": "Redigera bilaga",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "Redigera anpassade fält",
|
||||
"card-edit-labels": "Redigera etiketter",
|
||||
"card-edit-members": "Redigera medlemmar",
|
||||
"card-labels-title": "Ändra etiketter för kortet.",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "Börja",
|
||||
"card-start-on": "Börja med",
|
||||
"cardAttachmentsPopup-title": "Bifoga från",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "Ändra datum",
|
||||
"cardCustomFieldsPopup-title": "Redigera anpassade fält",
|
||||
"cardDeletePopup-title": "Ta bort kort?",
|
||||
"cardDetailsActionsPopup-title": "Kortåtgärder",
|
||||
"cardLabelsPopup-title": "Etiketter",
|
||||
@@ -146,7 +147,7 @@
|
||||
"clipboard": "Urklipp eller dra och släpp",
|
||||
"close": "Stäng",
|
||||
"close-board": "Stäng anslagstavla",
|
||||
"close-board-pop": "You will be able to restore the board by clicking the “Recycle Bin” button from the home header.",
|
||||
"close-board-pop": "Du kan återskapa anslagstavlan genom att klicka på \"Papperskorgen\" från huvudmenyn.",
|
||||
"color-black": "svart",
|
||||
"color-blue": "blå",
|
||||
"color-green": "grön",
|
||||
@@ -165,32 +166,32 @@
|
||||
"confirm-checklist-delete-dialog": "Är du säker på att du vill ta bort checklista",
|
||||
"copy-card-link-to-clipboard": "Kopiera kortlänk till urklipp",
|
||||
"copyCardPopup-title": "Kopiera kort",
|
||||
"copyChecklistToManyCardsPopup-title": "Copy Checklist Template to Many Cards",
|
||||
"copyChecklistToManyCardsPopup-instructions": "Destination Card Titles and Descriptions in this JSON format",
|
||||
"copyChecklistToManyCardsPopup-format": "[ {\"title\": \"First card title\", \"description\":\"First card description\"}, {\"title\":\"Second card title\",\"description\":\"Second card description\"},{\"title\":\"Last card title\",\"description\":\"Last card description\"} ]",
|
||||
"copyChecklistToManyCardsPopup-title": "Kopiera checklist-mallen till flera kort",
|
||||
"copyChecklistToManyCardsPopup-instructions": "Destinationskorttitlar och beskrivningar i detta JSON-format",
|
||||
"copyChecklistToManyCardsPopup-format": "[ {\"title\": \"Första kortets titel\", \"description\":\"Första kortets beskrivning\"}, {\"title\":\"Andra kortets titel\",\"description\":\"Andra kortets beskrivning\"},{\"title\":\"Sista kortets titel\",\"description\":\"Sista kortets beskrivning\"} ]",
|
||||
"create": "Skapa",
|
||||
"createBoardPopup-title": "Skapa anslagstavla",
|
||||
"chooseBoardSourcePopup-title": "Importera anslagstavla",
|
||||
"createLabelPopup-title": "Skapa etikett",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "Skapa fält",
|
||||
"createCustomFieldPopup-title": "Skapa fält",
|
||||
"current": "aktuell",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "Det går inte att ångra. Detta tar bort det här anpassade fältet från alla kort och förstör dess historia.",
|
||||
"custom-field-checkbox": "Kryssruta",
|
||||
"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-dropdown": "Rullgardingsmeny",
|
||||
"custom-field-dropdown-none": "(inga)",
|
||||
"custom-field-dropdown-options": "Listalternativ",
|
||||
"custom-field-dropdown-options-placeholder": "Tryck på enter för att lägga till fler alternativ",
|
||||
"custom-field-dropdown-unknown": "(okänd)",
|
||||
"custom-field-number": "Nummer",
|
||||
"custom-field-text": "Text",
|
||||
"custom-fields": "Custom Fields",
|
||||
"custom-fields": "Anpassade fält",
|
||||
"date": "Datum",
|
||||
"decline": "Nedgång",
|
||||
"default-avatar": "Standard avatar",
|
||||
"delete": "Ta bort",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "Ta bort anpassade fält?",
|
||||
"deleteLabelPopup-title": "Ta bort etikett?",
|
||||
"description": "Beskrivning",
|
||||
"disambiguateMultiLabelPopup-title": "Otvetydig etikettåtgärd",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Mjuk WIP-gräns",
|
||||
"editCardStartDatePopup-title": "Ändra startdatum",
|
||||
"editCardDueDatePopup-title": "Ändra förfallodatum",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "Redigera fält",
|
||||
"editCardSpentTimePopup-title": "Ändra spenderad tid",
|
||||
"editLabelPopup-title": "Ändra etikett",
|
||||
"editNotificationPopup-title": "Redigera avisering",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Rensa filter",
|
||||
"filter-no-label": "Ingen etikett",
|
||||
"filter-no-member": "Ingen medlem",
|
||||
"filter-no-custom-fields": "Inga anpassade fält",
|
||||
"filter-on": "Filter är på",
|
||||
"filter-on-desc": "Du filtrerar kort på denna anslagstavla. Klicka här för att redigera filter.",
|
||||
"filter-to-selection": "Filter till val",
|
||||
"advanced-filter-label": "Avancerat filter",
|
||||
"advanced-filter-description": "Avancerade Filter låter dig skriva en sträng innehållande följande operatorer: == != <= >= && || ( ). Ett mellanslag används som separator mellan operatorerna. Du kan filtrera alla specialfält genom att skriva dess namn och värde. Till exempel: Fält1 == Vårde1. Notera: om fälten eller värden innehåller mellanrum behöver du innesluta dem med enkla citatstecken. Till exempel: 'Fält 1' == 'Värde 1'. För att skippa enkla kontrolltecken (' \\/) kan du använda \\. Till exempel: Fält1 == I\\'m. Du kan även kombinera fler villkor. TIll exempel: F1 == V1 || F1 == V2. Vanligtvis läses operatorerna från vänster till höger. Du kan ändra ordning genom att använda paranteser. TIll exempel: F1 == V1 && ( F2 == V2 || F2 == V3 ). Du kan även söka efter textfält med hjälp av regex: F1 == /Tes.*/i",
|
||||
"fullname": "Namn",
|
||||
"header-logo-title": "Gå tillbaka till din anslagstavlor-sida.",
|
||||
"hide-system-messages": "Göm systemmeddelanden",
|
||||
@@ -285,18 +289,18 @@
|
||||
"leaveBoardPopup-title": "Lämna anslagstavla ?",
|
||||
"link-card": "Länka till detta kort",
|
||||
"list-archive-cards": "Flytta alla kort i den här listan till papperskorgen",
|
||||
"list-archive-cards-pop": "This will remove all the cards in this list from the board. To view cards in Recycle Bin and bring them back to the board, click “Menu” > “Recycle Bin”.",
|
||||
"list-archive-cards-pop": "Detta tar bort alla kort i den här listan från anslagstavlan. För att se kort i papperskorgen och få tillbaka dem till den här anslagstavlan, klicka på \"Meny\" > \"Papperskorgen\".",
|
||||
"list-move-cards": "Flytta alla kort i denna lista",
|
||||
"list-select-cards": "Välj alla kort i denna lista",
|
||||
"listActionPopup-title": "Liståtgärder",
|
||||
"swimlaneActionPopup-title": "Swimlane Actions",
|
||||
"swimlaneActionPopup-title": "Simbana-åtgärder",
|
||||
"listImportCardPopup-title": "Importera ett Trello kort",
|
||||
"listMorePopup-title": "Mera",
|
||||
"link-list": "Länk till den här listan",
|
||||
"list-delete-pop": "Alla åtgärder kommer att tas bort från aktivitetsmatningen och du kommer inte att kunna återställa listan. Det går inte att ångra.",
|
||||
"list-delete-suggest-archive": "You can move a list to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"list-delete-suggest-archive": "Du kan flytta en lista till papperskorgen för att ta bort den från brädet och bevara aktiviteten.",
|
||||
"lists": "Listor",
|
||||
"swimlanes": "Swimlanes",
|
||||
"swimlanes": "Simbanor ",
|
||||
"log-out": "Logga ut",
|
||||
"log-in": "Logga in",
|
||||
"loginPopup-title": "Logga in",
|
||||
@@ -316,7 +320,7 @@
|
||||
"name": "Namn",
|
||||
"no-archived-cards": "Inga kort i papperskorgen.",
|
||||
"no-archived-lists": "Inga listor i papperskorgen.",
|
||||
"no-archived-swimlanes": "No swimlanes in Recycle Bin.",
|
||||
"no-archived-swimlanes": "Inga simbanor i papperskorgen.",
|
||||
"no-results": "Inga reslutat",
|
||||
"normal": "Normal",
|
||||
"normal-desc": "Kan se och redigera kort. Kan inte ändra inställningar.",
|
||||
@@ -352,7 +356,7 @@
|
||||
"restore": "Återställ",
|
||||
"save": "Spara",
|
||||
"search": "Sök",
|
||||
"search-cards": "Search from card titles and descriptions on this board",
|
||||
"search-cards": "Sök från korttitlar och beskrivningar på det här brädet",
|
||||
"search-example": "Text att söka efter?",
|
||||
"select-color": "Välj färg",
|
||||
"set-wip-limit-value": "Ange en gräns för det maximala antalet uppgifter i den här listan",
|
||||
@@ -381,12 +385,12 @@
|
||||
"overtime-hours": "Övertid (timmar)",
|
||||
"overtime": "Övertid",
|
||||
"has-overtime-cards": "Har övertidskort",
|
||||
"has-spenttime-cards": "Has spent time cards",
|
||||
"has-spenttime-cards": "Har spenderat tidkort",
|
||||
"time": "Tid",
|
||||
"title": "Titel",
|
||||
"tracking": "Spårning",
|
||||
"tracking-info": "Du kommer att meddelas om eventuella ändringar av dessa kort du deltar i som skapare eller medlem.",
|
||||
"type": "Type",
|
||||
"type": "Skriv",
|
||||
"unassign-member": "Ta bort tilldelad medlem",
|
||||
"unsaved-description": "Du har en osparad beskrivning.",
|
||||
"unwatch": "Avbevaka",
|
||||
@@ -395,7 +399,7 @@
|
||||
"uploaded-avatar": "Laddade upp en avatar",
|
||||
"username": "Änvandarnamn",
|
||||
"view-it": "Visa det",
|
||||
"warn-list-archived": "warning: this card is in an list at Recycle Bin",
|
||||
"warn-list-archived": "varning: det här kortet finns i en lista i papperskorgen",
|
||||
"watch": "Bevaka",
|
||||
"watching": "Bevakar",
|
||||
"watching-info": "Du kommer att meddelas om alla ändringar på denna anslagstavla",
|
||||
@@ -433,9 +437,9 @@
|
||||
"email-smtp-test-text": "Du har skickat ett e-postmeddelande",
|
||||
"error-invitation-code-not-exist": "Inbjudningskod finns inte",
|
||||
"error-notAuthorized": "Du är inte behörig att se den här sidan.",
|
||||
"outgoing-webhooks": "Outgoing Webhooks",
|
||||
"outgoingWebhooksPopup-title": "Outgoing Webhooks",
|
||||
"new-outgoing-webhook": "New Outgoing Webhook",
|
||||
"outgoing-webhooks": "Utgående Webhookar",
|
||||
"outgoingWebhooksPopup-title": "Utgående Webhookar",
|
||||
"new-outgoing-webhook": "Ny utgående webhook",
|
||||
"no-name": "(Okänd)",
|
||||
"Wekan_version": "Wekan version",
|
||||
"Node_version": "Nodversion",
|
||||
@@ -451,19 +455,25 @@
|
||||
"hours": "timmar",
|
||||
"minutes": "minuter",
|
||||
"seconds": "sekunder",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "Visa detta fält på kort",
|
||||
"yes": "Ja",
|
||||
"no": "Nej",
|
||||
"accounts": "Konton",
|
||||
"accounts-allowEmailChange": "Tillåt e-poständring",
|
||||
"accounts-allowUserNameChange": "Allow Username Change",
|
||||
"accounts-allowUserNameChange": "Tillåt användarnamnändring",
|
||||
"createdAt": "Skapad vid",
|
||||
"verified": "Verifierad",
|
||||
"active": "Aktiv",
|
||||
"card-received": "Mottagen",
|
||||
"card-received-on": "Received on",
|
||||
"card-received-on": "Mottagen den",
|
||||
"card-end": "Slut",
|
||||
"card-end-on": "Ends on",
|
||||
"card-end-on": "Slutar den",
|
||||
"editCardReceivedDatePopup-title": "Ändra mottagningsdatum",
|
||||
"editCardEndDatePopup-title": "Ändra slutdatum"
|
||||
"editCardEndDatePopup-title": "Ändra slutdatum",
|
||||
"assigned-by": "Tilldelad av",
|
||||
"requested-by": "Efterfrågad av",
|
||||
"board-delete-notice": "Borttagningen är permanent. Du kommer förlora alla listor, kort och händelser kopplade till den här anslagstavlan.",
|
||||
"delete-board-confirm-popup": "Alla listor, kort, etiketter och aktiviteter kommer tas bort och du kommer inte kunna återställa anslagstavlans innehåll. Det går inte att ångra.",
|
||||
"boardDeletePopup-title": "Ta bort anslagstavla?",
|
||||
"delete-board": "Ta bort anslagstavla"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Boards",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "เมนูบอร์ด",
|
||||
"boards": "บอร์ด",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "รายการ",
|
||||
"bucket-example": "ตัวอย่างเช่น “ระบบที่ต้องทำ”",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "การ์ดนี้มี %s ความเห็น.",
|
||||
"card-delete-notice": "เป็นการลบถาวร คุณจะสูญเสียข้อมูลที่เกี่ยวข้องกับการ์ดนี้ทั้งหมด",
|
||||
"card-delete-pop": "การดำเนินการทั้งหมดจะถูกลบจาก feed กิจกรรมและคุณไม่สามารถเปิดได้อีกครั้งหรือยกเลิกการทำ",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "ครบกำหนด",
|
||||
"card-due-on": "ครบกำหนดเมื่อ",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "ล้างตัวกรอง",
|
||||
"filter-no-label": "ไม่มีฉลาก",
|
||||
"filter-no-member": "ไม่มีสมาชิก",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "กรองบน",
|
||||
"filter-on-desc": "คุณกำลังกรองการ์ดในบอร์ดนี้ คลิกที่นี่เพื่อแก้ไขตัวกรอง",
|
||||
"filter-to-selection": "กรองตัวเลือก",
|
||||
"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",
|
||||
"fullname": "ชื่อ นามสกุล",
|
||||
"header-logo-title": "ย้อนกลับไปที่หน้าบอร์ดของคุณ",
|
||||
"hide-system-messages": "ซ่อนข้อความของระบบ",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+33
-23
@@ -7,7 +7,7 @@
|
||||
"act-addComment": "__card__ kartına bir yorum bıraktı: __comment__",
|
||||
"act-createBoard": "__board__ panosunu oluşturdu",
|
||||
"act-createCard": "__card__ kartını ___list__ listesine ekledi",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "__customField__ adlı özel alan yaratıldı",
|
||||
"act-createList": "__list__ listesini __board__ panosuna ekledi",
|
||||
"act-addBoardMember": "__member__ kullanıcısını __board__ panosuna ekledi",
|
||||
"act-archivedBoard": "__board__ Geri Dönüşüm Kutusu'na taşındı",
|
||||
@@ -31,7 +31,7 @@
|
||||
"activity-archived": "%s Geri Dönüşüm Kutusu'na taşındı",
|
||||
"activity-attached": "%s içine %s ekledi",
|
||||
"activity-created": "%s öğesini oluşturdu",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "%s adlı özel alan yaratıldı",
|
||||
"activity-excluded": "%s içinden %s çıkarttı",
|
||||
"activity-imported": "%s kaynağından %s öğesini %s öğesinin içine taşıdı ",
|
||||
"activity-imported-board": "%s i %s içinden aktardı",
|
||||
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Pano menüsü",
|
||||
"boards": "Panolar",
|
||||
"board-view": "Pano Görünümü",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Kulvarlar",
|
||||
"board-view-lists": "Listeler",
|
||||
"bucket-example": "Örn: \"Marketten Alacaklarım\"",
|
||||
@@ -113,7 +114,7 @@
|
||||
"card-due-on": "Bitiş tarihi:",
|
||||
"card-spent": "Harcanan Zaman",
|
||||
"card-edit-attachments": "Ek dosyasını düzenle",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "Özel alanları düzenle",
|
||||
"card-edit-labels": "Etiketleri düzenle",
|
||||
"card-edit-members": "Üyeleri düzenle",
|
||||
"card-labels-title": "Bu kart için etiketleri düzenle",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "Başlama",
|
||||
"card-start-on": "Başlama tarihi:",
|
||||
"cardAttachmentsPopup-title": "Eklenme",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "Tarihi değiştir",
|
||||
"cardCustomFieldsPopup-title": "Özel alanları düzenle",
|
||||
"cardDeletePopup-title": "Kart Silinsin mi?",
|
||||
"cardDetailsActionsPopup-title": "Kart işlemleri",
|
||||
"cardLabelsPopup-title": "Etiketler",
|
||||
@@ -172,25 +173,25 @@
|
||||
"createBoardPopup-title": "Pano Oluşturma",
|
||||
"chooseBoardSourcePopup-title": "Panoyu içe aktar",
|
||||
"createLabelPopup-title": "Etiket Oluşturma",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "Alanı yarat",
|
||||
"createCustomFieldPopup-title": "Alanı yarat",
|
||||
"current": "mevcut",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "Bunun geri dönüşü yoktur. Bu özel alan tüm kartlardan kaldırılıp tarihçesi yokedilecektir.",
|
||||
"custom-field-checkbox": "İşaret kutusu",
|
||||
"custom-field-date": "Tarih",
|
||||
"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-fields": "Custom Fields",
|
||||
"custom-field-dropdown": "Açılır liste",
|
||||
"custom-field-dropdown-none": "(hiçbiri)",
|
||||
"custom-field-dropdown-options": "Liste seçenekleri",
|
||||
"custom-field-dropdown-options-placeholder": "Başka seçenekler eklemek için giriş tuşuna basınız",
|
||||
"custom-field-dropdown-unknown": "(bilinmeyen)",
|
||||
"custom-field-number": "Sayı",
|
||||
"custom-field-text": "Metin",
|
||||
"custom-fields": "Özel alanlar",
|
||||
"date": "Tarih",
|
||||
"decline": "Reddet",
|
||||
"default-avatar": "Varsayılan avatar",
|
||||
"delete": "Sil",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "Özel alan silinsin mi?",
|
||||
"deleteLabelPopup-title": "Etiket Silinsin mi?",
|
||||
"description": "Açıklama",
|
||||
"disambiguateMultiLabelPopup-title": "Etiket işlemini izah et",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "Zayıf Devam Eden İş Sınırı",
|
||||
"editCardStartDatePopup-title": "Başlangıç tarihini değiştir",
|
||||
"editCardDueDatePopup-title": "Bitiş tarihini değiştir",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "Alanı düzenle",
|
||||
"editCardSpentTimePopup-title": "Harcanan zamanı değiştir",
|
||||
"editLabelPopup-title": "Etiket Değiştir",
|
||||
"editNotificationPopup-title": "Bildirimi değiştir",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Filtreyi temizle",
|
||||
"filter-no-label": "Etiket yok",
|
||||
"filter-no-member": "Üye yok",
|
||||
"filter-no-custom-fields": "Hiç özel alan yok",
|
||||
"filter-on": "Filtre aktif",
|
||||
"filter-on-desc": "Bu panodaki kartları filtreliyorsunuz. Fitreyi düzenlemek için tıklayın.",
|
||||
"filter-to-selection": "Seçime göre filtreleme yap",
|
||||
"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",
|
||||
"fullname": "Ad Soyad",
|
||||
"header-logo-title": "Panolar sayfanıza geri dön.",
|
||||
"hide-system-messages": "Sistem mesajlarını gizle",
|
||||
@@ -386,7 +390,7 @@
|
||||
"title": "Başlık",
|
||||
"tracking": "Takip",
|
||||
"tracking-info": "Oluşturduğunuz veya üyesi olduğunuz tüm kartlardaki değişiklikler size bildirim olarak gelecek.",
|
||||
"type": "Type",
|
||||
"type": "Tür",
|
||||
"unassign-member": "Üyeye atamayı kaldır",
|
||||
"unsaved-description": "Kaydedilmemiş bir açıklama metnin bulunmakta",
|
||||
"unwatch": "Takibi bırak",
|
||||
@@ -451,12 +455,12 @@
|
||||
"hours": "saat",
|
||||
"minutes": "dakika",
|
||||
"seconds": "saniye",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "Bu alanı kartta göster",
|
||||
"yes": "Evet",
|
||||
"no": "Hayır",
|
||||
"accounts": "Hesaplar",
|
||||
"accounts-allowEmailChange": "E-posta Değiştirmeye İzin Ver",
|
||||
"accounts-allowUserNameChange": "Allow Username Change",
|
||||
"accounts-allowUserNameChange": "Kullanıcı adı değiştirmeye izin ver",
|
||||
"createdAt": "Oluşturulma tarihi",
|
||||
"verified": "Doğrulanmış",
|
||||
"active": "Aktif",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "Bitiş",
|
||||
"card-end-on": "Bitiş zamanı",
|
||||
"editCardReceivedDatePopup-title": "Giriş tarihini değiştir",
|
||||
"editCardEndDatePopup-title": "Bitiş tarihini değiştir"
|
||||
"editCardEndDatePopup-title": "Bitiş tarihini değiştir",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Дошки",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "This card has %s comment.",
|
||||
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "Board Menu",
|
||||
"boards": "Bảng",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "Lists",
|
||||
"bucket-example": "Like “Bucket List” for example",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "Thẻ này có %s bình luận.",
|
||||
"card-delete-notice": "Hành động xóa là không thể khôi phục. Bạn sẽ mất hết các hoạt động liên quan đến thẻ này.",
|
||||
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "Due",
|
||||
"card-due-on": "Due on",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "Clear filter",
|
||||
"filter-no-label": "No label",
|
||||
"filter-no-member": "No member",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "Filter is on",
|
||||
"filter-on-desc": "You are filtering cards on this board. Click here to edit filter.",
|
||||
"filter-to-selection": "Filter to selection",
|
||||
"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",
|
||||
"fullname": "Full Name",
|
||||
"header-logo-title": "Go back to your boards page.",
|
||||
"hide-system-messages": "Hide system messages",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
+32
-22
@@ -7,7 +7,7 @@
|
||||
"act-addComment": "在 __card__ 发布评论: __comment__",
|
||||
"act-createBoard": "创建看板 __board__",
|
||||
"act-createCard": "添加卡片 __card__ 至列表 __list__",
|
||||
"act-createCustomField": "created custom field __customField__",
|
||||
"act-createCustomField": "创建了自定义字段 __customField__",
|
||||
"act-createList": "添加列表 __list__ 至看板 __board__",
|
||||
"act-addBoardMember": "添加成员 __member__ 至看板 __board__",
|
||||
"act-archivedBoard": "__board__ 已被移入回收站 ",
|
||||
@@ -31,7 +31,7 @@
|
||||
"activity-archived": "%s 已被移入回收站",
|
||||
"activity-attached": "添加附件 %s 至 %s",
|
||||
"activity-created": "创建 %s",
|
||||
"activity-customfield-created": "created custom field %s",
|
||||
"activity-customfield-created": "创建了自定义字段 %s",
|
||||
"activity-excluded": "排除 %s 从 %s",
|
||||
"activity-imported": "导入 %s 至 %s 从 %s 中",
|
||||
"activity-imported-board": "已导入 %s 从 %s 中",
|
||||
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "看板菜单",
|
||||
"boards": "看板",
|
||||
"board-view": "看板视图",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "泳道图",
|
||||
"board-view-lists": "列表",
|
||||
"bucket-example": "例如 “目标清单”",
|
||||
@@ -113,7 +114,7 @@
|
||||
"card-due-on": "期限",
|
||||
"card-spent": "耗时",
|
||||
"card-edit-attachments": "编辑附件",
|
||||
"card-edit-custom-fields": "Edit custom fields",
|
||||
"card-edit-custom-fields": "编辑自定义字段",
|
||||
"card-edit-labels": "编辑标签",
|
||||
"card-edit-members": "编辑成员",
|
||||
"card-labels-title": "更改该卡片上的标签",
|
||||
@@ -121,8 +122,8 @@
|
||||
"card-start": "开始",
|
||||
"card-start-on": "始于",
|
||||
"cardAttachmentsPopup-title": "附件来源",
|
||||
"cardCustomField-datePopup-title": "Change date",
|
||||
"cardCustomFieldsPopup-title": "Edit custom fields",
|
||||
"cardCustomField-datePopup-title": "修改日期",
|
||||
"cardCustomFieldsPopup-title": "编辑自定义字段",
|
||||
"cardDeletePopup-title": "彻底删除卡片?",
|
||||
"cardDetailsActionsPopup-title": "卡片操作",
|
||||
"cardLabelsPopup-title": "标签",
|
||||
@@ -172,25 +173,25 @@
|
||||
"createBoardPopup-title": "创建看板",
|
||||
"chooseBoardSourcePopup-title": "导入看板",
|
||||
"createLabelPopup-title": "创建标签",
|
||||
"createCustomField": "Create Field",
|
||||
"createCustomFieldPopup-title": "Create Field",
|
||||
"createCustomField": "创建字段",
|
||||
"createCustomFieldPopup-title": "创建字段",
|
||||
"current": "当前",
|
||||
"custom-field-delete-pop": "There is no undo. This will remove this custom field from all cards and destroy its history.",
|
||||
"custom-field-checkbox": "Checkbox",
|
||||
"custom-field-delete-pop": "没有撤销,此动作将从所有卡片中移除自定义字段并销毁历史。",
|
||||
"custom-field-checkbox": "选择框",
|
||||
"custom-field-date": "日期",
|
||||
"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-fields": "Custom Fields",
|
||||
"custom-field-dropdown": "下拉列表",
|
||||
"custom-field-dropdown-none": "(无)",
|
||||
"custom-field-dropdown-options": "列表选项",
|
||||
"custom-field-dropdown-options-placeholder": "回车可以加入更多选项",
|
||||
"custom-field-dropdown-unknown": "(未知)",
|
||||
"custom-field-number": "数字",
|
||||
"custom-field-text": "文本",
|
||||
"custom-fields": "自定义字段",
|
||||
"date": "日期",
|
||||
"decline": "拒绝",
|
||||
"default-avatar": "默认头像",
|
||||
"delete": "删除",
|
||||
"deleteCustomFieldPopup-title": "Delete Custom Field?",
|
||||
"deleteCustomFieldPopup-title": "删除自定义字段?",
|
||||
"deleteLabelPopup-title": "删除标签?",
|
||||
"description": "描述",
|
||||
"disambiguateMultiLabelPopup-title": "标签消歧 [?]",
|
||||
@@ -205,7 +206,7 @@
|
||||
"soft-wip-limit": "软在制品限制",
|
||||
"editCardStartDatePopup-title": "修改起始日期",
|
||||
"editCardDueDatePopup-title": "修改截止日期",
|
||||
"editCustomFieldPopup-title": "Edit Field",
|
||||
"editCustomFieldPopup-title": "编辑字段",
|
||||
"editCardSpentTimePopup-title": "修改耗时",
|
||||
"editLabelPopup-title": "更改标签",
|
||||
"editNotificationPopup-title": "编辑通知",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "清空过滤器",
|
||||
"filter-no-label": "无标签",
|
||||
"filter-no-member": "无成员",
|
||||
"filter-no-custom-fields": "无自定义字段",
|
||||
"filter-on": "过滤器启用",
|
||||
"filter-on-desc": "你正在过滤该看板上的卡片,点此编辑过滤。",
|
||||
"filter-to-selection": "要选择的过滤器",
|
||||
"advanced-filter-label": "高级过滤器",
|
||||
"advanced-filter-description": "高级过滤器可以使用包含如下操作符的字符串进行过滤:== != <= >= && || ( ) 。操作符之间用空格隔开。输入字段名和数值就可以过滤所有自定义字段。例如:Field1 == Value1。注意如果字段名或数值包含空格,需要用单引号。例如: 'Field 1' == 'Value 1'。要跳过单个控制字符(' \\/),请使用 \\ 转义字符。例如: Field1 = I\\'m。支持组合使用多个条件,例如: F1 == V1 || F1 == V2。通常以从左到右的顺序进行判断。可以通过括号修改顺序,例如:F1 == V1 && ( F2 == V2 || F2 == V3 )。也支持使用正则表达式搜索文本字段。",
|
||||
"fullname": "全称",
|
||||
"header-logo-title": "返回您的看板页",
|
||||
"hide-system-messages": "隐藏系统消息",
|
||||
@@ -386,7 +390,7 @@
|
||||
"title": "标题",
|
||||
"tracking": "跟踪",
|
||||
"tracking-info": "当任何包含您(作为创建者或成员)的卡片发生变更时,您将得到通知。",
|
||||
"type": "Type",
|
||||
"type": "类型",
|
||||
"unassign-member": "取消分配成员",
|
||||
"unsaved-description": "存在未保存的描述",
|
||||
"unwatch": "取消关注",
|
||||
@@ -451,7 +455,7 @@
|
||||
"hours": "小时",
|
||||
"minutes": "分钟",
|
||||
"seconds": "秒",
|
||||
"show-field-on-card": "Show this field on card",
|
||||
"show-field-on-card": "在卡片上显示此字段",
|
||||
"yes": "是",
|
||||
"no": "否",
|
||||
"accounts": "账号",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "终止",
|
||||
"card-end-on": "终止于",
|
||||
"editCardReceivedDatePopup-title": "修改接收日期",
|
||||
"editCardEndDatePopup-title": "修改终止日期"
|
||||
"editCardEndDatePopup-title": "修改终止日期",
|
||||
"assigned-by": "分配人",
|
||||
"requested-by": "需求人",
|
||||
"board-delete-notice": "删除时永久操作,将会丢失此看板上的所有列表、卡片和动作。",
|
||||
"delete-board-confirm-popup": "所有列表、卡片、标签和活动都回被删除,将无法恢复看板内容。不支持撤销。",
|
||||
"boardDeletePopup-title": "删除看板?",
|
||||
"delete-board": "删除看板"
|
||||
}
|
||||
+12
-2
@@ -100,6 +100,7 @@
|
||||
"boardMenuPopup-title": "看板選單",
|
||||
"boards": "看板",
|
||||
"board-view": "Board View",
|
||||
"board-view-cal": "Calendar",
|
||||
"board-view-swimlanes": "Swimlanes",
|
||||
"board-view-lists": "清單",
|
||||
"bucket-example": "例如 “目標清單”",
|
||||
@@ -108,7 +109,7 @@
|
||||
"card-comments-title": "該卡片有 %s 則評論",
|
||||
"card-delete-notice": "徹底刪除的操作不可復原,你將會遺失該卡片相關的所有操作記錄。",
|
||||
"card-delete-pop": "所有的動作將從活動動態中被移除且您將無法重新打開該卡片。此操作無法復原。",
|
||||
"card-delete-suggest-archive": "You can move a card Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-delete-suggest-archive": "You can move a card to Recycle Bin to remove it from the board and preserve the activity.",
|
||||
"card-due": "到期",
|
||||
"card-due-on": "到期",
|
||||
"card-spent": "Spent Time",
|
||||
@@ -242,9 +243,12 @@
|
||||
"filter-clear": "清空過濾條件",
|
||||
"filter-no-label": "沒有標籤",
|
||||
"filter-no-member": "沒有成員",
|
||||
"filter-no-custom-fields": "No Custom Fields",
|
||||
"filter-on": "過濾條件啟用",
|
||||
"filter-on-desc": "你正在過濾該看板上的卡片,點此編輯過濾條件。",
|
||||
"filter-to-selection": "要選擇的過濾條件",
|
||||
"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",
|
||||
"fullname": "全稱",
|
||||
"header-logo-title": "返回您的看板頁面",
|
||||
"hide-system-messages": "隱藏系統訊息",
|
||||
@@ -465,5 +469,11 @@
|
||||
"card-end": "End",
|
||||
"card-end-on": "Ends on",
|
||||
"editCardReceivedDatePopup-title": "Change received date",
|
||||
"editCardEndDatePopup-title": "Change end date"
|
||||
"editCardEndDatePopup-title": "Change end date",
|
||||
"assigned-by": "Assigned By",
|
||||
"requested-by": "Requested By",
|
||||
"board-delete-notice": "Deleting is permanent. You will lose all lists, cards and actions associated with this board.",
|
||||
"delete-board-confirm-popup": "All lists, cards, labels, and activities will be deleted and you won't be able to recover the board contents. There is no undo.",
|
||||
"boardDeletePopup-title": "Delete Board?",
|
||||
"delete-board": "Delete Board"
|
||||
}
|
||||
Executable → Regular
File mode changed.
@@ -94,6 +94,9 @@ Boards.attachSchema(new SimpleSchema({
|
||||
allowedValues: [
|
||||
'green', 'yellow', 'orange', 'red', 'purple',
|
||||
'blue', 'sky', 'lime', 'pink', 'black',
|
||||
'silver', 'peachpuff', 'crimson', 'plum', 'darkgreen',
|
||||
'slateblue', 'magenta', 'gold', 'navy', 'gray',
|
||||
'saddlebrown', 'paleturquoise', 'mistyrose', 'indigo',
|
||||
],
|
||||
},
|
||||
// XXX We might want to maintain more informations under the member sub-
|
||||
@@ -281,6 +284,33 @@ Boards.helpers({
|
||||
|
||||
return Cards.find(query, projection);
|
||||
},
|
||||
|
||||
cardsInInterval(start, end) {
|
||||
return Cards.find({
|
||||
$or: [
|
||||
{
|
||||
startAt: {
|
||||
$lte: start,
|
||||
}, endAt: {
|
||||
$gte: start,
|
||||
},
|
||||
}, {
|
||||
startAt: {
|
||||
$lte: end,
|
||||
}, endAt: {
|
||||
$gte: end,
|
||||
},
|
||||
}, {
|
||||
startAt: {
|
||||
$gte: start,
|
||||
}, endAt: {
|
||||
$lte: end,
|
||||
},
|
||||
},
|
||||
],
|
||||
});
|
||||
},
|
||||
|
||||
});
|
||||
|
||||
Boards.mutations({
|
||||
|
||||
+34
-3
@@ -66,6 +66,14 @@ Cards.attachSchema(new SimpleSchema({
|
||||
type: String,
|
||||
optional: true,
|
||||
},
|
||||
requestedBy: {
|
||||
type: String,
|
||||
optional: true,
|
||||
},
|
||||
assignedBy: {
|
||||
type: String,
|
||||
optional: true,
|
||||
},
|
||||
labelIds: {
|
||||
type: [String],
|
||||
optional: true,
|
||||
@@ -220,13 +228,28 @@ Cards.helpers({
|
||||
}).fetch();
|
||||
|
||||
// match right definition to each field
|
||||
if (!this.customFields) return [];
|
||||
return this.customFields.map((customField) => {
|
||||
const definition = definitions.find((definition) => {
|
||||
return definition._id === customField._id;
|
||||
});
|
||||
//search for "True Value" which is for DropDowns other then the Value (which is the id)
|
||||
let trueValue = customField.value;
|
||||
if (definition.settings.dropdownItems && definition.settings.dropdownItems.length > 0)
|
||||
{
|
||||
for (let i = 0; i < definition.settings.dropdownItems.length; i++)
|
||||
{
|
||||
if (definition.settings.dropdownItems[i]._id === customField.value)
|
||||
{
|
||||
trueValue = definition.settings.dropdownItems[i].name;
|
||||
}
|
||||
}
|
||||
}
|
||||
return {
|
||||
_id: customField._id,
|
||||
value: customField.value,
|
||||
definition: definitions.find((definition) => {
|
||||
return definition._id === customField._id;
|
||||
}),
|
||||
trueValue,
|
||||
definition,
|
||||
};
|
||||
});
|
||||
|
||||
@@ -267,6 +290,14 @@ Cards.mutations({
|
||||
return {$set: {description}};
|
||||
},
|
||||
|
||||
setRequestedBy(requestedBy) {
|
||||
return {$set: {requestedBy}};
|
||||
},
|
||||
|
||||
setAssignedBy(assignedBy) {
|
||||
return {$set: {assignedBy}};
|
||||
},
|
||||
|
||||
move(swimlaneId, listId, sortIndex) {
|
||||
const list = Lists.findOne(listId);
|
||||
const mutatedFields = {
|
||||
|
||||
@@ -100,6 +100,11 @@ Users.attachSchema(new SimpleSchema({
|
||||
'profile.boardView': {
|
||||
type: String,
|
||||
optional: true,
|
||||
allowedValues: [
|
||||
'board-view-lists',
|
||||
'board-view-swimlanes',
|
||||
'board-view-cal',
|
||||
],
|
||||
},
|
||||
services: {
|
||||
type: Object,
|
||||
|
||||
+1
-2
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "wekan",
|
||||
"version": "0.97.0",
|
||||
"version": "1.09.0",
|
||||
"description": "The open-source Trello-like kanban",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
@@ -24,7 +24,6 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"babel-runtime": "^6.26.0",
|
||||
"bcrypt": "^2.0.1",
|
||||
"bson-ext": "^2.0.0",
|
||||
"es6-promise": "^4.2.4",
|
||||
"meteor-node-stubs": "^0.4.1",
|
||||
|
||||
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
|
||||
appTitle = (defaultText = "Wekan"),
|
||||
# The name of the app as it is displayed to the user.
|
||||
|
||||
appVersion = 82,
|
||||
appVersion = 94,
|
||||
# Increment this for every release.
|
||||
|
||||
appMarketingVersion = (defaultText = "0.97.0~2018-05-19"),
|
||||
appMarketingVersion = (defaultText = "1.09.0~2018-06-28"),
|
||||
# Human-readable presentation of the app version.
|
||||
|
||||
minUpgradableAppVersion = 0,
|
||||
|
||||
+35
-8
@@ -140,7 +140,7 @@ Migrations.add('add-sort-checklists', () => {
|
||||
noValidate
|
||||
);
|
||||
}
|
||||
checklist.items.find().forEach((item, index) => {
|
||||
checklist.items.forEach((item, index) => {
|
||||
if (!item.hasOwnProperty('sort')) {
|
||||
Checklists.direct.update(
|
||||
{ _id: checklist._id, 'items._id': item._id },
|
||||
@@ -189,7 +189,7 @@ Migrations.add('add-views', () => {
|
||||
});
|
||||
|
||||
Migrations.add('add-checklist-items', () => {
|
||||
Checklists.find().forEach((checklist) => {
|
||||
Checklists.forEach((checklist) => {
|
||||
// Create new items
|
||||
_.sortBy(checklist.items, 'sort').forEach((item, index) => {
|
||||
ChecklistItems.direct.insert({
|
||||
@@ -211,12 +211,14 @@ Migrations.add('add-checklist-items', () => {
|
||||
|
||||
Migrations.add('add-profile-view', () => {
|
||||
Users.find().forEach((user) => {
|
||||
// Set default view
|
||||
Users.direct.update(
|
||||
{ _id: user._id },
|
||||
{ $set: { 'profile.boardView': 'board-view-lists' } },
|
||||
noValidate
|
||||
);
|
||||
if (!user.hasOwnProperty('profile.boardView')) {
|
||||
// Set default view
|
||||
Users.direct.update(
|
||||
{ _id: user._id },
|
||||
{ $set: { 'profile.boardView': 'board-view-lists' } },
|
||||
noValidate
|
||||
);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
@@ -231,3 +233,28 @@ Migrations.add('add-custom-fields-to-cards', () => {
|
||||
},
|
||||
}, noValidateMulti);
|
||||
});
|
||||
|
||||
Migrations.add('add-requester-field', () => {
|
||||
Cards.update({
|
||||
requestedBy: {
|
||||
$exists: false,
|
||||
},
|
||||
}, {
|
||||
$set: {
|
||||
requestedBy:'',
|
||||
},
|
||||
}, noValidateMulti);
|
||||
});
|
||||
|
||||
Migrations.add('add-assigner-field', () => {
|
||||
Cards.update({
|
||||
assignedBy: {
|
||||
$exists: false,
|
||||
},
|
||||
}, {
|
||||
$set: {
|
||||
assignedBy:'',
|
||||
},
|
||||
}, noValidateMulti);
|
||||
});
|
||||
|
||||
@@ -1,7 +1,25 @@
|
||||
Meteor.publish('people', (limit) => {
|
||||
Meteor.publish('people', function(limit) {
|
||||
check(limit, Number);
|
||||
return Users.find({}, {
|
||||
limit,
|
||||
sort: {createdAt: -1},
|
||||
});
|
||||
|
||||
if (!Match.test(this.userId, String)) {
|
||||
return [];
|
||||
}
|
||||
|
||||
const user = Users.findOne(this.userId);
|
||||
if (user && user.isAdmin) {
|
||||
return Users.find({}, {
|
||||
limit,
|
||||
sort: {createdAt: -1},
|
||||
fields: {
|
||||
'username': 1,
|
||||
'profile.fullname': 1,
|
||||
'isAdmin': 1,
|
||||
'emails': 1,
|
||||
'createdAt': 1,
|
||||
'loginDisabled': 1,
|
||||
},
|
||||
});
|
||||
} else {
|
||||
return [];
|
||||
}
|
||||
});
|
||||
+17
-9
@@ -65,7 +65,7 @@ apps:
|
||||
|
||||
parts:
|
||||
mongodb:
|
||||
source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-3.2.19.tgz
|
||||
source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-3.2.20.tgz
|
||||
plugin: dump
|
||||
stage-packages: [libssl1.0.0]
|
||||
filesets:
|
||||
@@ -83,7 +83,7 @@ parts:
|
||||
plugin: nodejs
|
||||
node-engine: 8.11.1
|
||||
node-packages:
|
||||
- npm@5.5.1
|
||||
- npm
|
||||
- node-gyp
|
||||
- node-pre-gyp
|
||||
- fibers@2.0.0
|
||||
@@ -96,6 +96,8 @@ parts:
|
||||
- npm
|
||||
- curl
|
||||
- execstack
|
||||
stage-packages:
|
||||
- libfontconfig1
|
||||
override-build: |
|
||||
echo "Cleaning environment first"
|
||||
rm -rf ~/.meteor ~/.npm /usr/local/lib/node_modules
|
||||
@@ -108,8 +110,7 @@ parts:
|
||||
# Fiber.poolSize = 1e9;
|
||||
# Download node version 8.11.1 that has fix included, node binary copied from Sandstorm
|
||||
# Description at https://releases.wekan.team/node.txt
|
||||
# SHA256SUM: 18c99d5e79e2fe91e75157a31be30e5420787213684d4048eb91e602e092725d
|
||||
echo "18c99d5e79e2fe91e75157a31be30e5420787213684d4048eb91e602e092725d node" >> node-SHASUMS256.txt.asc
|
||||
echo "13baa1b3114a5ea3248875e0f36cb46fcf8acd212de1fb74ba68ef4c9a4e1d93 node" >> node-SHASUMS256.txt.asc
|
||||
curl https://releases.wekan.team/node -o node
|
||||
# Verify Fibers patched node authenticity
|
||||
echo "Fibers 100% CPU issue patched node authenticity:"
|
||||
@@ -138,13 +139,18 @@ parts:
|
||||
meteor npm install --allow-superuser
|
||||
meteor build .build --directory --allow-superuser
|
||||
cp -f fix-download-unicode/cfs_access-point.txt .build/bundle/programs/server/packages/cfs_access-point.js
|
||||
cd .build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt
|
||||
rm -rf node_modules/bcrypt
|
||||
meteor npm install --save bcrypt
|
||||
#Removed binary version of bcrypt because of security vulnerability that is not fixed yet.
|
||||
#https://github.com/wekan/wekan/commit/4b2010213907c61b0e0482ab55abb06f6a668eac
|
||||
#https://github.com/wekan/wekan/commit/7eeabf14be3c63fae2226e561ef8a0c1390c8d3c
|
||||
#cd .build/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt
|
||||
#rm -rf node_modules/bcrypt
|
||||
#meteor npm install --save bcrypt
|
||||
# Change from npm-bcrypt directory back to .build/bundle/programs/server directory.
|
||||
#cd ../../../../
|
||||
# Change to directory .build/bundle/programs/server
|
||||
cd ../../../../
|
||||
cd .build/bundle/programs/server
|
||||
npm install
|
||||
meteor npm install --save bcrypt
|
||||
#meteor npm install --save bcrypt
|
||||
# Change back to Wekan source directory
|
||||
cd ../../../..
|
||||
cp -r .build/bundle/* $SNAPCRAFT_PART_INSTALL/
|
||||
@@ -153,6 +159,8 @@ parts:
|
||||
execstack --clear-execstack $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/rajit_bootstrap3-datepicker/lib/bootstrap-datepicker/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs
|
||||
organize:
|
||||
README: README.wekan
|
||||
prime:
|
||||
- -lib/node_modules/node-pre-gyp/node_modules/tar/lib/.unpack.js.swp
|
||||
|
||||
helpers:
|
||||
source: snap-src
|
||||
|
||||
Reference in new issue
Block a user