summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitmodules3
-rw-r--r--.meteor/packages2
-rw-r--r--.travis.yml19
-rw-r--r--.tx/config2
-rw-r--r--CHANGELOG.md32
-rw-r--r--Dockerfile21
-rw-r--r--README.md2
-rwxr-xr-xapp.env3
-rw-r--r--client/components/main/layouts.styl2
-rw-r--r--client/components/settings/invitationCode.js4
-rw-r--r--client/config/blazeHelpers.js4
-rw-r--r--config/accounts.js9
-rw-r--r--i18n/ar.i18n.json1
-rw-r--r--i18n/br.i18n.json1
-rw-r--r--i18n/ca.i18n.json1
-rw-r--r--i18n/cs.i18n.json1
-rw-r--r--i18n/de.i18n.json1
-rw-r--r--i18n/en.i18n.json1
-rw-r--r--i18n/eo.i18n.json347
-rw-r--r--i18n/es-ES.i18n.json33
-rw-r--r--i18n/es.i18n.json1
-rw-r--r--i18n/fa.i18n.json1
-rw-r--r--i18n/fi.i18n.json3
-rw-r--r--i18n/fr.i18n.json37
-rw-r--r--i18n/he.i18n.json1
-rw-r--r--i18n/it.i18n.json37
-rw-r--r--i18n/ja.i18n.json1
-rw-r--r--i18n/ko.i18n.json451
-rw-r--r--i18n/no.i18n.json91
-rw-r--r--i18n/pl.i18n.json1
-rw-r--r--i18n/pt-BR.i18n.json1
-rw-r--r--i18n/ro.i18n.json1
-rw-r--r--i18n/ru.i18n.json1
-rw-r--r--i18n/sr.i18n.json1
-rw-r--r--i18n/th.i18n.json1
-rw-r--r--i18n/tr.i18n.json481
-rw-r--r--i18n/zh-CN.i18n.json73
-rw-r--r--i18n/zh-TW.i18n.json1
-rw-r--r--meta/screenshots/board-view.jpgbin33060 -> 0 bytes
-rwxr-xr-xmeta/screenshots/board_view_01.pngbin0 -> 129922 bytes
-rwxr-xr-xmeta/screenshots/board_view_02.pngbin0 -> 111954 bytes
-rw-r--r--models/settings.js20
-rw-r--r--models/users.js60
-rw-r--r--package.json6
m---------packages/kadira:flow-router0
-rw-r--r--sandstorm-pkgdef.capnp20
-rw-r--r--server/notifications/email.js20
47 files changed, 1124 insertions, 675 deletions
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 00000000..3db61f5f
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "packages/kadira:flow-router"]
+ path = packages/kadira:flow-router
+ url = https://github.com/wekan/flow-router.git
diff --git a/.meteor/packages b/.meteor/packages
index 32d7389c..7ede4008 100644
--- a/.meteor/packages
+++ b/.meteor/packages
@@ -50,7 +50,6 @@ arillo:flow-router-helpers
audit-argument-checks
kadira:blaze-layout
kadira:dochead
-kadira:flow-router
meteorhacks:fast-render
meteorhacks:picker
meteorhacks:subs-manager
@@ -76,3 +75,4 @@ templates:tabs
verron:autosize
simple:json-routes
rajit:bootstrap3-datepicker
+kadira:flow-router
diff --git a/.travis.yml b/.travis.yml
index db105d0a..9a760beb 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,8 +1,25 @@
-sudo: false
+sudo: required
+
+env:
+ DOCKER_COMPOSE_VERSION: 1.11.2
+
+before_install:
+ - sudo curl -fsSL https://get.docker.com/ | sh
+ - if [ -e /usr/local/bin/docker-compose ]; then sudo rm /usr/local/bin/docker-compose; fi
+ - sudo curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` > docker-compose
+ - sudo chmod +x docker-compose
+ - sudo mv docker-compose /usr/local/bin
+ - sudo docker-compose build --no-cache --force-rm
+ - sudo docker-compose up && docker ps -a
+ - sudo docker run wekan-app /bin/sh -c "npm test"
+
language: node_js
+
node_js:
- "0.10.48"
+
install:
- "npm install"
+
script:
- "npm test"
diff --git a/.tx/config b/.tx/config
index 904d6b9a..95855893 100644
--- a/.tx/config
+++ b/.tx/config
@@ -39,7 +39,7 @@ host = https://www.transifex.com
# tap:i18n requires us to use `-` separator in the language identifiers whereas
# Transifex uses a `_` separator, without an option to customize it on one side
# or the other, so we need to do a Manual mapping.
-lang_map = es_ES:es-ES, fa_IR:fa, fi_FI:fi, pt_BR:pt-BR, ro_RO:ro, zh_CN:zh-CN, zh_TW:zh-TW
+lang_map = es_ES:es-ES, fa_IR:fa, fi_FI:fi, hu_HU:hu, pt_BR:pt-BR, ro_RO:ro, zh_CN:zh-CN, zh_TW:zh-TW
[wekan.application]
file_filter = i18n/<lang>.i18n.json
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2cbc8f25..fa54f905 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,35 @@
+# Upcoming Wekan release
+
+Known bugs:
+
+* https://github.com/wekan/wekan/issues/784
+
+This release fixes the following bugs:
+
+* Remove invitation code if email sending failed.
+* Show customized error msg while invitaion code is wrong during registration.
+* Fix "internal error" while registration is done.
+* Fix "cannot access disableRegistration of undefined" error.
+
+Thanks to GitHub user lkisme for contributions.
+
+# v0.17 2017-03-25 Wekan release
+
+Known bugs:
+
+* https://github.com/wekan/wekan/issues/784
+
+This release fixes the following bugs:
+
+* Double slash problem on card pop-ups;
+* No need for Array.prototype if using rest operator;
+* Fix default font so Chinese is shown correctly.
+ Still looking for better solution for #914 although
+ commit had wrong number #707.
+
+Thanks to GitHub users mo-han, Serubin and vuxor for
+their contributions.
+
# v0.16 2017-03-15 Wekan release
Added missing changelog updates.
diff --git a/Dockerfile b/Dockerfile
index 507432f2..796afb45 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,5 +1,5 @@
FROM debian:wheezy
-MAINTAINER wefork
+MAINTAINER wekan
# Declare Arguments
ARG NODE_VERSION
@@ -13,7 +13,7 @@ ENV BUILD_DEPS="wget curl bzip2 build-essential python git ca-certificates"
ENV GOSU_VERSION=1.10
ENV NODE_VERSION ${NODE_VERSION:-v0.10.48}
ENV METEOR_RELEASE ${METEOR_RELEASE:-1.3.5.1}
-ENV NPM_VERSION ${NPM_VERSION:-3.10.10}
+ENV NPM_VERSION ${NPM_VERSION:-4.2.0}
ENV ARCHITECTURE ${ARCHITECTURE:-linux-x64}
ENV SRC_PATH ${SRC_PATH:-./}
@@ -44,14 +44,14 @@ RUN \
# Verify nodejs authenticity
grep ${NODE_VERSION}-${ARCHITECTURE}.tar.gz SHASUMS256.txt.asc | shasum -a 256 -c - && \
export GNUPGHOME="$(mktemp -d)" && \
- gpg --keyserver pool.sks-keyservers.net --recv-keys 9554F04D7259F04124DE6B476D5A82AC7E37093B && \
- gpg --keyserver pool.sks-keyservers.net --recv-keys 94AE36675C464D64BAFA68DD7434390BDBE9B9C5 && \
- gpg --keyserver pool.sks-keyservers.net --recv-keys FD3A5288F042B6850C66B31F09FE44734EB7990E && \
- gpg --keyserver pool.sks-keyservers.net --recv-keys 71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 && \
- gpg --keyserver pool.sks-keyservers.net --recv-keys DD8F2338BAE7501E3DD5AC78C273792F7D83545D && \
- gpg --keyserver pool.sks-keyservers.net --recv-keys C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 && \
- gpg --keyserver pool.sks-keyservers.net --recv-keys B9AE9905FFD7803F25714661B63B535A4C206CA9 && \
- gpg --refresh-keys pool.sks-keyservers.net && \
+ gpg --keyserver ha.pool.sks-keyservers.net --recv-keys 9554F04D7259F04124DE6B476D5A82AC7E37093B && \
+ gpg --keyserver ha.pool.sks-keyservers.net --recv-keys 94AE36675C464D64BAFA68DD7434390BDBE9B9C5 && \
+ gpg --keyserver ha.pool.sks-keyservers.net --recv-keys FD3A5288F042B6850C66B31F09FE44734EB7990E && \
+ gpg --keyserver ha.pool.sks-keyservers.net --recv-keys 71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 && \
+ gpg --keyserver ha.pool.sks-keyservers.net --recv-keys DD8F2338BAE7501E3DD5AC78C273792F7D83545D && \
+ gpg --keyserver ha.pool.sks-keyservers.net --recv-keys C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 && \
+ gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B9AE9905FFD7803F25714661B63B535A4C206CA9 && \
+ gpg --refresh-keys ha.pool.sks-keyservers.net && \
gpg --verify SHASUMS256.txt.asc && \
rm -R "$GNUPGHOME" SHASUMS256.txt.asc && \
\
@@ -77,6 +77,7 @@ RUN \
gosu wekan:wekan sh ./install_meteor.sh && \
\
# Build app
+ source /home/wekan/app/app.env && \
cd /home/wekan/app && \
gosu wekan /home/wekan/.meteor/meteor npm install --save xss && \
gosu wekan /home/wekan/.meteor/meteor build --directory /home/wekan/app_build && \
diff --git a/README.md b/README.md
index f511a439..45540a86 100644
--- a/README.md
+++ b/README.md
@@ -180,7 +180,7 @@ with [Meteor](https://www.meteor.com).
[fork_faq]: https://github.com/wefork/wekan/wiki/FAQ
[fork_announcement]: https://github.com/wekan/wekan/issues/640#issuecomment-276383458
[screenshot_wekan]: http://i.imgur.com/cI4jW2h.png
-[screenshot_wefork]: http://i.imgur.com/OCtpqb6.png
+[screenshot_wefork]: http://i.imgur.com/lzvpeS9.png
[roadmap_wekan]: http://try.wekan.io/b/MeSsFJaSqeuo9M6bs/wekan-roadmap
[roadmap_wefork]: https://wekan.indie.host/b/t2YaGmyXgNkppcFBq/wekan-fork-roadmap
[wekan_issues]: https://github.com/wekan/wekan/issues
diff --git a/app.env b/app.env
new file mode 100755
index 00000000..b047d258
--- /dev/null
+++ b/app.env
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+export PACKAGE_DIRS="$(pwd)/packages"
diff --git a/client/components/main/layouts.styl b/client/components/main/layouts.styl
index 1bc92b42..349ee743 100644
--- a/client/components/main/layouts.styl
+++ b/client/components/main/layouts.styl
@@ -3,7 +3,7 @@
global-reset()
html, body, input, select, textarea, button
- font: 14px Roboto, "Helvetica Neue", Arial, Helvetica, "Yu Gothic", "Meiryo", sans-serif
+ font: 14px Roboto, "Helvetica Neue", Arial, Helvetica, sans-serif
line-height: 18px
color: #4d4d4d
diff --git a/client/components/settings/invitationCode.js b/client/components/settings/invitationCode.js
index e712c89a..a403d8ab 100644
--- a/client/components/settings/invitationCode.js
+++ b/client/components/settings/invitationCode.js
@@ -1,6 +1,6 @@
Template.invitationCode.onRendered(() => {
- const disableRegistration = Settings.findOne().disableRegistration;
- if(!disableRegistration){
+ const setting = Settings.findOne();
+ if (!setting || !setting.disableRegistration) {
$('#invitationcode').hide();
}
});
diff --git a/client/config/blazeHelpers.js b/client/config/blazeHelpers.js
index ef075907..73ee24b6 100644
--- a/client/config/blazeHelpers.js
+++ b/client/config/blazeHelpers.js
@@ -18,6 +18,4 @@ Blaze.registerHelper('currentCard', () => {
Blaze.registerHelper('getUser', (userId) => Users.findOne(userId));
-Blaze.registerHelper('concat', function (...args) {
- return Array.prototype.slice.call(args, 0, -1).join('');
-});
+Blaze.registerHelper('concat', (...args) => args.slice(0, -1).join(''));
diff --git a/config/accounts.js b/config/accounts.js
index 51c0f49e..279325fb 100644
--- a/config/accounts.js
+++ b/config/accounts.js
@@ -13,16 +13,20 @@ AccountsTemplates.addFields([{
displayName: 'Invitation Code',
required: false,
minLength: 6,
- errStr: 'Invitation code doesn\'t exist',
template: 'invitationCode',
}]);
+let sendVerificationEmail = false;
+if (process.env.MAIL_URL) {
+ sendVerificationEmail = true;
+}
+
AccountsTemplates.configure({
defaultLayout: 'userFormsLayout',
defaultContentRegion: 'content',
confirmPassword: false,
enablePasswordChange: true,
- sendVerificationEmail: true,
+ sendVerificationEmail,
showForgotPasswordLink: true,
onLogoutHook() {
const homePage = 'home';
@@ -69,4 +73,3 @@ if (Meteor.isServer) {
};
});
}
-
diff --git a/i18n/ar.i18n.json b/i18n/ar.i18n.json
index d7a6a65b..c1ffc478 100644
--- a/i18n/ar.i18n.json
+++ b/i18n/ar.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Advanced",
"what-to-do": "ماذا تريد أن تنجز?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/i18n/br.i18n.json b/i18n/br.i18n.json
index bef0c6e4..ff25cf1f 100644
--- a/i18n/br.i18n.json
+++ b/i18n/br.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Advanced",
"what-to-do": "What do you want to do?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/i18n/ca.i18n.json b/i18n/ca.i18n.json
index 015a67ac..cf7535b7 100644
--- a/i18n/ca.i18n.json
+++ b/i18n/ca.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Avançades",
"what-to-do": "Què vols fer?",
"admin-panel": "Tauler d'administració",
- "system-setting": "Configuració del Sistema",
"settings": "Configuració",
"people": "Persones",
"registration": "Registre",
diff --git a/i18n/cs.i18n.json b/i18n/cs.i18n.json
index f2d8b33e..1c254b5c 100644
--- a/i18n/cs.i18n.json
+++ b/i18n/cs.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Advanced",
"what-to-do": "Co chcete dělat?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/i18n/de.i18n.json b/i18n/de.i18n.json
index 4ad3153a..fdefb1f8 100644
--- a/i18n/de.i18n.json
+++ b/i18n/de.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Fortgeschritten",
"what-to-do": "Was wollen Sie tun?",
"admin-panel": "Administration",
- "system-setting": "Systemeinstellung",
"settings": "Einstellungen",
"people": "Nutzer",
"registration": "Registrierung",
diff --git a/i18n/en.i18n.json b/i18n/en.i18n.json
index 2e2f0ca1..19734045 100644
--- a/i18n/en.i18n.json
+++ b/i18n/en.i18n.json
@@ -327,7 +327,6 @@
"welcome-list2": "Advanced",
"what-to-do": "What do you want to do?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/i18n/eo.i18n.json b/i18n/eo.i18n.json
new file mode 100644
index 00000000..010371f2
--- /dev/null
+++ b/i18n/eo.i18n.json
@@ -0,0 +1,347 @@
+{
+ "accept": "Akcepti",
+ "act-activity-notify": "[Wekan] Activity Notification",
+ "act-addAttachment": "attached __attachment__ to __card__",
+ "act-addComment": "commented on __card__: __comment__",
+ "act-createBoard": "kreiis __board__",
+ "act-createCard": "aldonis __card__ al __list__",
+ "act-createList": "aldonis __card__ al __board__",
+ "act-addBoardMember": "aldonis __member__ al __board__",
+ "act-archivedBoard": "archived __board__",
+ "act-archivedCard": "archived __card__",
+ "act-archivedList": "archived __list__",
+ "act-importBoard": "imported __board__",
+ "act-importCard": "imported __card__",
+ "act-importList": "imported __list__",
+ "act-joinMember": "aldonis __member__ al __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": "Akcioj",
+ "activities": "Aktivaĵoj",
+ "activity": "Aktivaĵo",
+ "activity-added": "aldonis %s al %s",
+ "activity-archived": "archived %s",
+ "activity-attached": "attached %s to %s",
+ "activity-created": "kreiis %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": "sendis %s al %s",
+ "activity-unjoined": "unjoined %s",
+ "activity-checklist-added": "added checklist to %s",
+ "add": "Aldoni",
+ "add-attachment": "Add an attachment",
+ "add-board": "Aldoni novan tavolo",
+ "add-card": "Aldoni karton",
+ "add-checklist": "Add a checklist",
+ "add-checklist-item": "Add an item to checklist",
+ "add-cover": "Add Cover",
+ "add-label": "Aldoni etikedo",
+ "add-list": "Aldoni liston",
+ "add-members": "Aldoni membrojn",
+ "added": "Aldonita",
+ "addMemberPopup-title": "Membroj",
+ "admin": "Admin",
+ "admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
+ "all-boards": "All boards",
+ "and-n-other-card": "And __count__ other card",
+ "and-n-other-card_plural": "And __count__ other cards",
+ "apply": "Apliki",
+ "app-is-offline": "The application is currently offline, refreshing the page will cause data loss.",
+ "archive": "Arkivi",
+ "archive-all": "Arkivi ĉion",
+ "archive-board": "Archive Board",
+ "archive-card": "Arkivi karton",
+ "archive-list": "Arkivi liston",
+ "archive-selection": "Arkivi elekton",
+ "archiveBoardPopup-title": "Archive Board?",
+ "archived-items": "Archived Items",
+ "archives": "Arkivoj",
+ "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 create it",
+ "avatar-too-big": "The avatar is too large (70Kb max)",
+ "back": "Reen",
+ "board-change-color": "Ŝanĝi koloron",
+ "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",
+ "bucket-example": "Like “Bucket List” for example",
+ "cancel": "Cancel",
+ "card-archived": "Karto arkivita.",
+ "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 archive a card to remove it from the board and preserve the activity.",
+ "card-due": "Due",
+ "card-due-on": "Due on",
+ "card-edit-attachments": "Edit attachments",
+ "card-edit-labels": "Redakti etikedojn",
+ "card-edit-members": "Redakti membroj",
+ "card-labels-title": "Change the labels for the card.",
+ "card-members-title": "Add or remove members of the board from the card.",
+ "card-start": "Komenco",
+ "card-start-on": "Komencas je ",
+ "cardAttachmentsPopup-title": "Attach From",
+ "cardDeletePopup-title": "Delete Card?",
+ "cardDetailsActionsPopup-title": "Card Actions",
+ "cardLabelsPopup-title": "Etikedoj",
+ "cardMembersPopup-title": "Membroj",
+ "cardMorePopup-title": "Pli",
+ "cards": "Karto",
+ "change": "Ŝanĝi",
+ "change-avatar": "Change Avatar",
+ "change-password": "Ŝangi pasvorton",
+ "change-permissions": "Change permissions",
+ "change-settings": "Ŝanĝi agordojn",
+ "changeAvatarPopup-title": "Change Avatar",
+ "changeLanguagePopup-title": "Ŝanĝi lingvon",
+ "changePasswordPopup-title": "Ŝangi pasvorton",
+ "changePermissionsPopup-title": "Change Permissions",
+ "changeSettingsPopup-title": "Ŝanĝi agordojn",
+ "checklists": "Checklists",
+ "click-to-star": "Click to star this board.",
+ "click-to-unstar": "Click to unstar this board.",
+ "clipboard": "Clipboard or drag & drop",
+ "close": "Fermi",
+ "close-board": "Close Board",
+ "close-board-pop": "You will be able to restore the board by clicking the “Archives” button from the home header.",
+ "color-black": "nigra",
+ "color-blue": "blua",
+ "color-green": "verda",
+ "color-lime": "lime",
+ "color-orange": "oranĝa",
+ "color-pink": "pink",
+ "color-purple": "purple",
+ "color-red": "ruĝa",
+ "color-sky": "sky",
+ "color-yellow": "flava",
+ "comment": "Komento",
+ "comment-placeholder": "Skribi komenton",
+ "computer": "Komputilo",
+ "create": "Krei",
+ "createBoardPopup-title": "Krei ",
+ "createLabelPopup-title": "Create Label",
+ "current": "current",
+ "date": "Dato",
+ "decline": "Decline",
+ "default-avatar": "Default avatar",
+ "delete": "Delete",
+ "deleteLabelPopup-title": "Delete Label?",
+ "description": "Description",
+ "disambiguateMultiLabelPopup-title": "Disambiguate Label Action",
+ "disambiguateMultiMemberPopup-title": "Disambiguate Member Action",
+ "discard": "Discard",
+ "done": "Farite",
+ "download": "Elŝuti",
+ "edit": "Redakti",
+ "edit-avatar": "Change Avatar",
+ "edit-profile": "Redakti profilo",
+ "editCardStartDatePopup-title": "Redakti komencdato",
+ "editCardDueDatePopup-title": "Change due date",
+ "editLabelPopup-title": "Ŝanĝi etikedo",
+ "editNotificationPopup-title": "Edit Notification",
+ "editProfilePopup-title": "Redakti profilo",
+ "email": "Retpoŝtadreso",
+ "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": "Malsukcese sendis retpoŝton",
+ "email-invalid": "Nevalida retpoŝtadreso",
+ "email-invite": "Inviti per retpoŝto",
+ "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": "Sendis retpoŝton",
+ "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.",
+ "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": "Via teksto estas nevalida JSON",
+ "error-json-schema": "Via JSON ne enhavas la ĝustajn informojn en ĝusta formato",
+ "error-list-doesNotExist": "Tio listo ne ekzistas",
+ "error-user-doesNotExist": "Tio uzanto ne ekzistas",
+ "error-user-notAllowSelf": "This action on self is not allowed",
+ "error-user-notCreated": "Uzanto ne kreita",
+ "error-username-taken": "Uzantnomo jam prenita",
+ "export-board": "Export board",
+ "filter": "Filter",
+ "filter-cards": "Filter Cards",
+ "filter-clear": "Clear filter",
+ "filter-no-label": "Nenia etikedo",
+ "filter-no-member": "Nenia membro",
+ "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",
+ "fullname": "Full Name",
+ "header-logo-title": "Go back to your boards page.",
+ "hide-system-messages": "Hide system messages",
+ "headerBarCreateBoardPopup-title": "Krei ",
+ "home": "Hejmo",
+ "import": "Importi",
+ "import-board": "Importi de Trello",
+ "import-board-title": "Import board from Trello",
+ "import-board-trello-instruction": "In your Trello board, go to 'Menu', then 'More', 'Print and Export', 'Export JSON', and copy the resulting text.",
+ "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": "Informoj",
+ "initials": "Initials",
+ "invalid-date": "Invalid date",
+ "joined": "joined",
+ "just-invited": "You are just invited to this board",
+ "keyboard-shortcuts": "Keyboard shortcuts",
+ "label-create": "Krei novan etikedo",
+ "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": "Etikedoj",
+ "language": "Lingvo",
+ "last-admin-desc": "You can’t change roles because there must be at least one admin.",
+ "leave-board": "Leave Board",
+ "link-card": "Ligi al ĉitiu karto",
+ "list-archive-cards": "Archive all cards in this list",
+ "list-archive-cards-pop": "This will remove all the cards in this list from the board. To view archived cards and bring them back to the board, click “Menu” > “Archived Items”.",
+ "list-move-cards": "Movu ĉiujn kartojn en tiu listo.",
+ "list-select-cards": "Elektu ĉiujn kartojn en tiu listo.",
+ "listActionPopup-title": "List Actions",
+ "listImportCardPopup-title": "Import a Trello card",
+ "lists": "Listoj",
+ "log-out": "Elsaluti",
+ "log-in": "Ensaluti",
+ "loginPopup-title": "Ensaluti",
+ "memberMenuPopup-title": "Membraj agordoj",
+ "members": "Membroj",
+ "menu": "Menuo",
+ "move-selection": "Movi elekton",
+ "moveCardPopup-title": "Movi karton",
+ "moveCardToBottom-title": "Movi suben",
+ "moveCardToTop-title": "Movi supren",
+ "moveSelectionPopup-title": "Movi elekton",
+ "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": "Nomo",
+ "no-archived-cards": "No archived cards.",
+ "no-archived-lists": "No archived lists.",
+ "no-results": "Neniaj rezultoj",
+ "normal": "Normala",
+ "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": "aŭ",
+ "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": "Netrovita paĝo.",
+ "password": "Pasvorto",
+ "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": "Privata",
+ "private-desc": "This board is private. Only people added to the board can view and edit it.",
+ "profile": "Profilo",
+ "public": "Publika",
+ "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": "Forigi etikedon",
+ "remove-list": "Forigi liston",
+ "remove-member": "Forigi membron",
+ "remove-member-from-card": "Forigi de karto",
+ "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": "Renomi",
+ "rename-board": "Rename Board",
+ "restore": "Forigi",
+ "save": "Savi",
+ "search": "Serĉi",
+ "select-color": "Elektu koloron",
+ "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": "Teamo",
+ "this-board": "this board",
+ "this-card": "this card",
+ "time": "Tempo",
+ "title": "Titolo",
+ "tracking": "Tracking",
+ "tracking-info": "You will be notified of any changes to those cards you are involved as creator or member.",
+ "unassign-member": "Unassign member",
+ "unsaved-description": "You have an unsaved description.",
+ "unwatch": "Unwatch",
+ "upload": "Alŝuti",
+ "upload-avatar": "Upload an avatar",
+ "uploaded-avatar": "Uploaded an avatar",
+ "username": "Uzantnomo",
+ "view-it": "View it",
+ "warn-list-archived": "warning: this card is in an archived list",
+ "watch": "Rigardi",
+ "watching": "Rigardante",
+ "watching-info": "You will be notified of any change in this board",
+ "welcome-board": "Welcome Board",
+ "welcome-list1": "Basics",
+ "welcome-list2": "Advanced",
+ "what-to-do": "Kion vi volas fari?",
+ "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-host": "SMTP Host",
+ "smtp-port": "SMTP Port",
+ "smtp-username": "Uzantnomo",
+ "smtp-password": "Pasvorto",
+ "send-from": "From",
+ "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.",
+ "error-invitation-code-not-exist": "Invitation code doesn't exist"
+} \ No newline at end of file
diff --git a/i18n/es-ES.i18n.json b/i18n/es-ES.i18n.json
index 578db27d..2ac594f5 100644
--- a/i18n/es-ES.i18n.json
+++ b/i18n/es-ES.i18n.json
@@ -36,10 +36,13 @@
"activity-removed": "ha eliminado %s de %s",
"activity-sent": "ha enviado %s a %s",
"activity-unjoined": "ha abandonado %s",
+ "activity-checklist-added": "added checklist to %s",
"add": "Añadir",
"add-attachment": "Añadir archivo adjunto",
"add-board": "Añadir nuevo tablero",
"add-card": "Añadir tarjeta",
+ "add-checklist": "Add a checklist",
+ "add-checklist-item": "Add an item to checklist",
"add-cover": "Añadir cubierta",
"add-label": "Añadir etiqueta",
"add-list": "Añadir lista",
@@ -115,9 +118,10 @@
"changePasswordPopup-title": "Cambiar la contraseña",
"changePermissionsPopup-title": "Cambiar permisos",
"changeSettingsPopup-title": "Change Settings",
+ "checklists": "Checklists",
"click-to-star": "Haz clic para destacar este tablero.",
"click-to-unstar": "Haz clic para dejar de destacar este tablero.",
- "clipboard" : "Portapapeles o drag & drop",
+ "clipboard": "Portapapeles o drag & drop",
"close": "Cerrar",
"close-board": "Cerrar tablero",
"close-board-pop": "Podrás restaurar el tablero seleccionando el botón “Archivados” desde la cabecera de la página de inicio.",
@@ -192,6 +196,7 @@
"fullname": "Nombre Completo",
"header-logo-title": "Volver a tu página de tableros",
"hide-system-messages": "Hide system messages",
+ "headerBarCreateBoardPopup-title": "Crear tablero",
"home": "Inicio",
"import": "Importar",
"import-board": "Importar desde Trello",
@@ -289,6 +294,8 @@
"shortcut-toggle-filterbar": "Mostrar/Ocultar la barra lateral de filtrado",
"shortcut-toggle-sidebar": "Menú lateral del Tablero",
"show-cards-minimum-count": "Show cards count if list contains more than",
+ "sidebar-open": "Open Sidebar",
+ "sidebar-close": "Close Sidebar",
"signupPopup-title": "Crear una cuenta",
"star-board-title": "Haz clic para destacar este tablero. Se mostrará en la parte superior de tu lista de tableros.",
"starred-boards": "Tableros Destacados",
@@ -316,5 +323,25 @@
"welcome-board": "Welcome Board",
"welcome-list1": "Basics",
"welcome-list2": "Advanced",
- "what-to-do": "¿Qué quieres hacer?"
-}
+ "what-to-do": "¿Qué quieres hacer?",
+ "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-host": "SMTP Host",
+ "smtp-port": "SMTP Port",
+ "smtp-username": "Nombre de usuario",
+ "smtp-password": "Contraseña",
+ "send-from": "From",
+ "invitation-code": "Invitation Code",
+ "email-invite-register-subject": "__inviter__ te ha enviado una invitación",
+ "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.",
+ "error-invitation-code-not-exist": "Invitation code doesn't exist"
+} \ No newline at end of file
diff --git a/i18n/es.i18n.json b/i18n/es.i18n.json
index 49258953..2f69dbba 100644
--- a/i18n/es.i18n.json
+++ b/i18n/es.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Avanzados",
"what-to-do": "What do you want to do?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Ajustes",
"people": "People",
"registration": "Registration",
diff --git a/i18n/fa.i18n.json b/i18n/fa.i18n.json
index 8ed0d575..a12d0deb 100644
--- a/i18n/fa.i18n.json
+++ b/i18n/fa.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Advanced",
"what-to-do": "چه کاری می خواهید انجام دهید؟",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/i18n/fi.i18n.json b/i18n/fi.i18n.json
index bf6912d9..5e88f87d 100644
--- a/i18n/fi.i18n.json
+++ b/i18n/fi.i18n.json
@@ -35,7 +35,7 @@
"activity-on": "kohteessa %s",
"activity-removed": "poistettu %s kohteesta %s",
"activity-sent": "lähetetty %s kohteeseen %s",
- "activity-unjoined": "peruttu %s liityminen",
+ "activity-unjoined": "peruttu %s liittyminen",
"activity-checklist-added": "lisätty tarkistuslista kohteeseen %s",
"add": "Lisää",
"add-attachment": "Lisää liitetiedosto",
@@ -325,7 +325,6 @@
"welcome-list2": "Edistynyt",
"what-to-do": "Mitä haluat tehdä?",
"admin-panel": "Hallintapaneeli",
- "system-setting": "Järjestelmäasetus",
"settings": "Asetukset",
"people": "Ihmiset",
"registration": "Rekisteröinti",
diff --git a/i18n/fr.i18n.json b/i18n/fr.i18n.json
index e370f1bb..db956891 100644
--- a/i18n/fr.i18n.json
+++ b/i18n/fr.i18n.json
@@ -36,7 +36,7 @@
"activity-removed": "a supprimé %s de %s",
"activity-sent": "a envoyé %s vers %s",
"activity-unjoined": "a quitté %s",
- "activity-checklist-added": "a jouté une liste de vérifications à %s",
+ "activity-checklist-added": "a ajouté une liste de vérifications à %s",
"add": "Ajouter",
"add-attachment": "Joindre un fichier",
"add-board": "Ajouter un nouveau tableau",
@@ -47,7 +47,7 @@
"add-label": "Ajouter une étiquette",
"add-list": "Ajouter une liste",
"add-members": "Assigner des membres",
- "added": "Ajouté",
+ "added": "Ajouté le",
"addMemberPopup-title": "Membres",
"admin": "Admin",
"admin-desc": "Peut voir et éditer les cartes, supprimer des membres et changer les paramètres du tableau.",
@@ -324,25 +324,24 @@
"welcome-list1": "Basiques",
"welcome-list2": "Avancés",
"what-to-do": "Que voulez-vous faire ?",
- "admin-panel": "Admin Panel",
- "system-setting": "System Setting",
+ "admin-panel": "Panneau d'administration",
"settings": "Paramètres",
- "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-host": "SMTP Host",
- "smtp-port": "SMTP Port",
+ "people": "Personne",
+ "registration": "Inscription",
+ "disable-self-registration": "Désactiver l'inscription",
+ "invite": "Inviter",
+ "invite-people": "Inviter une personne",
+ "to-boards": "Au(x) tableau(x)",
+ "email-addresses": "Adresses email",
+ "smtp-host-description": "L'adresse du serveur SMTP qui gère vos mails.",
+ "smtp-port-description": "Le port des mails sortants du serveur SMTP.",
+ "smtp-host": "Hôte SMTP",
+ "smtp-port": "Port SMTP",
"smtp-username": "Nom d'utilisateur",
"smtp-password": "Mot de passe",
- "send-from": "From",
- "invitation-code": "Invitation Code",
+ "send-from": "De",
+ "invitation-code": "Code d'invitation",
"email-invite-register-subject": "__inviter__ vous a envoyé une 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.",
- "error-invitation-code-not-exist": "Invitation code doesn't exist"
+ "email-invite-register-text": "Cher __user__,\n\n__inviter__ vous invite à le rejoindre sur Wekan pour collaborer.\n\nVeuillez suivre le lien ci-dessous :\n__url__\n\nVotre code d'invitation est : __icode__\n\nMerci.",
+ "error-invitation-code-not-exist": "Ce code d'invitation n'existe pas."
} \ No newline at end of file
diff --git a/i18n/he.i18n.json b/i18n/he.i18n.json
index 1c1b16b4..6121caf8 100644
--- a/i18n/he.i18n.json
+++ b/i18n/he.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "מתקדם",
"what-to-do": "מה תרצה לעשות?",
"admin-panel": "מסך ניהול המערכת",
- "system-setting": "System Setting",
"settings": "הגדרות",
"people": "אנשים",
"registration": "הרשמה",
diff --git a/i18n/it.i18n.json b/i18n/it.i18n.json
index fc341867..1183068d 100644
--- a/i18n/it.i18n.json
+++ b/i18n/it.i18n.json
@@ -294,8 +294,8 @@
"shortcut-toggle-filterbar": "Attiva il filtro nella barra laterale",
"shortcut-toggle-sidebar": "Attiva la bacheca nella barra laterale",
"show-cards-minimum-count": "Mostra il contatore delle schede se la lista ne contiene più di",
- "sidebar-open": "Open Sidebar",
- "sidebar-close": "Close Sidebar",
+ "sidebar-open": "Apri Sidebar",
+ "sidebar-close": "Chiudi Sidebar",
"signupPopup-title": "Crea un account",
"star-board-title": "Clicca per stellare questa bacheca. Sarà mostrata all'inizio della tua lista bacheche.",
"starred-boards": "Bacheche stellate",
@@ -324,25 +324,24 @@
"welcome-list1": "Basi",
"welcome-list2": "Avanzate",
"what-to-do": "Cosa vuoi fare?",
- "admin-panel": "Admin Panel",
- "system-setting": "System Setting",
- "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.",
+ "admin-panel": "Pannello dell'Amministratore",
+ "settings": "Impostazioni",
+ "people": "Persone",
+ "registration": "Registrazione",
+ "disable-self-registration": "Disabilita Auto-registrazione",
+ "invite": "Invita",
+ "invite-people": "Invita persone",
+ "to-boards": "torna alle 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.",
"smtp-host": "SMTP Host",
- "smtp-port": "SMTP Port",
+ "smtp-port": "Porta SMTP",
"smtp-username": "Username",
"smtp-password": "Password",
- "send-from": "From",
- "invitation-code": "Invitation Code",
+ "send-from": "Da",
+ "invitation-code": "Codice d'invito",
"email-invite-register-subject": "__inviter__ ti ha inviato un invito",
- "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.",
- "error-invitation-code-not-exist": "Invitation code doesn't exist"
+ "email-invite-register-text": "Gentile __user__,\n\n__inviter__ ti ha invitato su Wekan per collaborare.\n\nPer favore segui il link qui sotto:\n__url__\n\nIl tuo codice d'invito è: __icode__\n\nGrazie.",
+ "error-invitation-code-not-exist": "Il codice d'invito non esiste"
} \ No newline at end of file
diff --git a/i18n/ja.i18n.json b/i18n/ja.i18n.json
index 5d565105..ccf03446 100644
--- a/i18n/ja.i18n.json
+++ b/i18n/ja.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "高度",
"what-to-do": "何をしたいですか?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "設定",
"people": "People",
"registration": "Registration",
diff --git a/i18n/ko.i18n.json b/i18n/ko.i18n.json
index 7fa77f0a..7cb22eec 100644
--- a/i18n/ko.i18n.json
+++ b/i18n/ko.i18n.json
@@ -1,27 +1,27 @@
{
- "accept": "Accept",
- "act-activity-notify": "[Wekan] Activity Notification",
- "act-addAttachment": "attached __attachment__ to __card__",
- "act-addComment": "commented on __card__: __comment__",
- "act-createBoard": "created __board__",
- "act-createCard": "added __card__ to __list__",
- "act-createList": "added __list__ to __board__",
- "act-addBoardMember": "added __member__ to __board__",
- "act-archivedBoard": "archived __board__",
- "act-archivedCard": "archived __card__",
- "act-archivedList": "archived __list__",
- "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__",
+ "accept": "확인",
+ "act-activity-notify": "[Wekan] 활동 알림",
+ "act-addAttachment": "__attachment__를 __card__에 첨부",
+ "act-addComment": "__card__에 내용 추가 : __comment__",
+ "act-createBoard": "__board__ 생성",
+ "act-createCard": "__list__에 __card__ 추가",
+ "act-createList": "__board__에 __list__ 추가",
+ "act-addBoardMember": "__board__에 __member__ 추가",
+ "act-archivedBoard": "보관 된 __board__",
+ "act-archivedCard": "보관 된 __card__",
+ "act-archivedList": "보관 된 __list__",
+ "act-importBoard": "가져온 __board__",
+ "act-importCard": "가져온 __card__",
+ "act-importList": "가져온 __list__",
+ "act-joinMember": "__card__에 __member__ 추가",
+ "act-moveCard": "__card__을 __oldList__에서 __list__로 이동",
+ "act-removeBoardMember": "__board__에서 __member__를 삭제",
+ "act-restoredCard": "__card__를 __board__에 복원했습니다.",
+ "act-unjoinMember": "__card__에서 __member__를 삭제",
"act-withBoardTitle": "[Wekan] __board__",
"act-withCardTitle": "[__board__] __card__",
"actions": "동작",
- "activities": "Activities",
+ "activities": "활동 내역",
"activity": "활동 상태",
"activity-added": "%s를 %s에 추가함",
"activity-archived": "%s 저장됨",
@@ -35,314 +35,313 @@
"activity-on": "%s에",
"activity-removed": "%s를 %s에서 삭제함",
"activity-sent": "%s를 %s로 보냄",
- "activity-unjoined": "unjoined %s",
- "activity-checklist-added": "added checklist to %s",
+ "activity-unjoined": "%s에서 멤버 해제",
+ "activity-checklist-added": "%s에 체크리스트를 추가함",
"add": "추가",
- "add-attachment": "Add an attachment",
+ "add-attachment": "첨부 파일 추가",
"add-board": "새로운 보드를 추가",
- "add-card": "Add a card",
- "add-checklist": "Add a checklist",
- "add-checklist-item": "Add an item to checklist",
+ "add-card": "카드 추가",
+ "add-checklist": "체크리스트 추가",
+ "add-checklist-item": "체크리스트에 항목 추가",
"add-cover": "커버 추가",
- "add-label": "Add the label",
- "add-list": "Add a list",
- "add-members": "Add Members",
+ "add-label": "라벨 추가",
+ "add-list": "목록 추가",
+ "add-members": "멤버 추가",
"added": "추가됨",
"addMemberPopup-title": "멤버",
"admin": "관리자",
"admin-desc": "카드를 보거나 수정하고, 멤버를 삭제하고, 보드에 대한 설정을 수정할 수 있습니다.",
- "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": "The application is currently offline, refreshing the page will cause data loss.",
+ "all-boards": "전체 보드",
+ "and-n-other-card": "__count__ 개의 다른 카드",
+ "and-n-other-card_plural": "__count__ 개의 다른 카드들",
+ "apply": "적용",
+ "app-is-offline": "현재 페이지는 오프라인 상태입니다. 저장되지 않은 데이터는 손실됩니다. 새로고침 하세요.",
"archive": "보관",
"archive-all": "모두 보관",
- "archive-board": "Archive Board",
- "archive-card": "Archive Card",
+ "archive-board": "보드 저장소 보관",
+ "archive-card": "카드 저장소 보관",
"archive-list": "이 목록 보관",
- "archive-selection": "Archive selection",
- "archiveBoardPopup-title": "Archive Board?",
+ "archive-selection": "저장소 선택",
+ "archiveBoardPopup-title": "보드를 저장소에 보관하시겠습니까?",
"archived-items": "보관된 아이템",
- "archives": "Archives",
- "assign-member": "Assign member",
+ "archives": "저장소",
+ "assign-member": "멤버 지정",
"attached": "첨부됨",
"attachment": "첨부 파일",
"attachment-delete-pop": "영구 첨부파일을 삭제합니다. 되돌릴 수 없습니다.",
"attachmentDeletePopup-title": "첨부 파일을 삭제합니까?",
"attachments": "첨부 파일",
- "auto-watch": "Automatically watch boards when create it",
- "avatar-too-big": "The avatar is too large (70Kb max)",
+ "auto-watch": "보드 생성 시 자동으로 감시합니다.",
+ "avatar-too-big": "아바타 파일이 너무 큽니다. (최대 70Kb)",
"back": "뒤로",
- "board-change-color": "Change color",
- "board-nb-stars": "%s stars",
+ "board-change-color": "보드 색 변경",
+ "board-nb-stars": "%s개의 별",
"board-not-found": "보드를 찾을 수 없습니다",
- "board-private-info": "This board will be <strong>private</strong>.",
+ "board-private-info": "이 보드는 <strong>비공개</strong>입니다.",
"board-public-info": "이 보드는 <strong>공개</strong>로 설정됩니다",
- "boardChangeColorPopup-title": "Change Board Background",
+ "boardChangeColorPopup-title": "보드 배경 변경",
"boardChangeTitlePopup-title": "보드 이름 바꾸기",
"boardChangeVisibilityPopup-title": "표시 여부 변경",
- "boardChangeWatchPopup-title": "Change Watch",
- "boardMenuPopup-title": "Board Menu",
+ "boardChangeWatchPopup-title": "감시상태 변경",
+ "boardMenuPopup-title": "보드 메뉴",
"boards": "보드",
- "bucket-example": "Like “Bucket List” for example",
+ "bucket-example": "예: “프로젝트 이름“ 입력",
"cancel": "취소",
"card-archived": "이 카드를 보관합니다.",
"card-comments-title": "이 카드에 %s 코멘트가 있습니다.",
"card-delete-notice": "영구 삭제입니다. 이 카드와 관련된 모든 작업들을 잃게됩니다.",
- "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 archive a card to remove it from the board and preserve the activity.",
- "card-due": "Due",
- "card-due-on": "Due on",
- "card-edit-attachments": "Edit attachments",
- "card-edit-labels": "Edit labels",
- "card-edit-members": "Edit members",
+ "card-delete-pop": "모든 작업이 활동 내역에서 제거되며 카드를 다시 열 수 없습니다. 복구가 안되니 주의하시기 바랍니다.",
+ "card-delete-suggest-archive": "카드를 보관하여 보드에서 제거하고 내용을 저장소에 보관 할 수 있습니다.",
+ "card-due": "종료일",
+ "card-due-on": "종료일",
+ "card-edit-attachments": "첨부 파일 수정",
+ "card-edit-labels": "라벨 수정",
+ "card-edit-members": "멤버 수정",
"card-labels-title": "카드의 라벨 변경.",
"card-members-title": "카드에서 보드의 멤버를 추가하거나 삭제합니다.",
- "card-start": "Start",
- "card-start-on": "Starts on",
- "cardAttachmentsPopup-title": "Attach From",
+ "card-start": "시작일",
+ "card-start-on": "시작일",
+ "cardAttachmentsPopup-title": "첨부 파일",
"cardDeletePopup-title": "카드를 삭제합니까?",
- "cardDetailsActionsPopup-title": "Card Actions",
+ "cardDetailsActionsPopup-title": "카드 액션",
"cardLabelsPopup-title": "라벨",
"cardMembersPopup-title": "멤버",
"cardMorePopup-title": "더보기",
- "cards": "Cards",
- "change": "Change",
+ "cards": "카드",
+ "change": "변경",
"change-avatar": "아바타 변경",
"change-password": "암호 변경",
- "change-permissions": "Change permissions",
- "change-settings": "Change Settings",
+ "change-permissions": "권한 변경",
+ "change-settings": "설정 변경",
"changeAvatarPopup-title": "아바타 변경",
"changeLanguagePopup-title": "언어 변경",
"changePasswordPopup-title": "암호 변경",
"changePermissionsPopup-title": "권한 변경",
- "changeSettingsPopup-title": "Change Settings",
- "checklists": "Checklists",
- "click-to-star": "보드 별 추가.",
- "click-to-unstar": "보드 별 삭제.",
- "clipboard": "Clipboard or drag & drop",
+ "changeSettingsPopup-title": "설정 변경",
+ "checklists": "체크리스트",
+ "click-to-star": "보드에 별 추가.",
+ "click-to-unstar": "보드에 별 삭제.",
+ "clipboard": "클립보드 또는 드래그 앤 드롭",
"close": "닫기",
- "close-board": "Close Board",
- "close-board-pop": "You will be able to restore the board by clicking the “Archives” 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-placeholder": "Write a comment",
+ "close-board": "보드 닫기",
+ "close-board-pop": "홈 화면에서 \"저장소\" 버튼을 클릭하여 보드를 복원 할 수 있습니다.",
+ "color-black": "블랙",
+ "color-blue": "블루",
+ "color-green": "그린",
+ "color-lime": "라임",
+ "color-orange": "오렌지",
+ "color-pink": "핑크",
+ "color-purple": "퍼플",
+ "color-red": "레드",
+ "color-sky": "스카이",
+ "color-yellow": "옐로우",
+ "comment": "댓글",
+ "comment-placeholder": "댓글 입력",
"computer": "내 컴퓨터",
"create": "생성",
"createBoardPopup-title": "보드 생성",
"createLabelPopup-title": "라벨 생성",
- "current": "current",
- "date": "Date",
- "decline": "Decline",
- "default-avatar": "Default avatar",
+ "current": "경향",
+ "date": "날짜",
+ "decline": "쇠퇴",
+ "default-avatar": "기본 아바타",
"delete": "삭제",
"deleteLabelPopup-title": "라벨을 삭제합니까?",
"description": "설명",
- "disambiguateMultiLabelPopup-title": "Disambiguate Label Action",
- "disambiguateMultiMemberPopup-title": "Disambiguate Member Action",
- "discard": "Discard",
- "done": "Done",
+ "disambiguateMultiLabelPopup-title": "라벨 액션의 모호성 제거",
+ "disambiguateMultiMemberPopup-title": "멤버 액션의 모호성 제거",
+ "discard": "포기",
+ "done": "완료",
"download": "다운로드",
"edit": "수정",
"edit-avatar": "아바타 변경",
- "edit-profile": "Edit Profile",
- "editCardStartDatePopup-title": "Change start date",
- "editCardDueDatePopup-title": "Change due date",
+ "edit-profile": "프로필 변경",
+ "editCardStartDatePopup-title": "시작일 변경",
+ "editCardDueDatePopup-title": "종료일 변경",
"editLabelPopup-title": "라벨 변경",
- "editNotificationPopup-title": "Edit Notification",
- "editProfilePopup-title": "Edit Profile",
+ "editNotificationPopup-title": "알림 수정",
+ "editProfilePopup-title": "프로필 변경",
"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-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.",
- "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": "This action on self is not allowed",
- "error-user-notCreated": "This user is not created",
- "error-username-taken": "This username is already taken",
- "export-board": "Export board",
- "filter": "Filter",
+ "email-enrollAccount-subject": "__siteName__에 계정 생성이 완료되었습니다.",
+ "email-enrollAccount-text": "안녕하세요. __user__님,\n\n시작하려면 아래링크를 클릭해 주세요.\n\n__url__\n\n감사합니다.",
+ "email-fail": "이메일 전송 실패",
+ "email-invalid": "잘못된 이메일 주소",
+ "email-invite": "이메일로 초대",
+ "email-invite-subject": "__inviter__님이 당신을 초대하였습니다.",
+ "email-invite-text": "__user__님,\n\n__inviter__님은 협업을 위해 \"__board__\"보드에 가입하도록 초대합니다.\n\n아래 링크를 따라주십시오.\n\n__url__\n\n감사합니다.",
+ "email-resetPassword-subject": "패스워드 초기화: __siteName__",
+ "email-resetPassword-text": "안녕하세요 __user__님,\n\n비밀번호를 재설정하려면 아래 링크를 클릭하십시오.\n\n__url__\n\n감사합니다.",
+ "email-sent": "이메일 전송",
+ "email-verifyEmail-subject": "이메일 인증: __siteName__",
+ "email-verifyEmail-text": "안녕하세요. __user__님,\n\n당신의 계정과 이메일을 활성하려면 아래 링크를 클릭하십시오.\n\n__url__\n\n감사합니다.",
+ "error-board-doesNotExist": "보드가 없습니다.",
+ "error-board-notAdmin": "이 작업은 보드의 관리자만 실행할 수 있습니다.",
+ "error-board-notAMember": "이 작업은 보드의 멤버만 실행할 수 있습니다.",
+ "error-json-malformed": "텍스트가 JSON 형식에 유효하지 않습니다.",
+ "error-json-schema": "JSON 데이터에 정보가 올바른 형식으로 포함되어 있지 않습니다.",
+ "error-list-doesNotExist": "목록이 없습니다.",
+ "error-user-doesNotExist": "멤버의 정보가 없습니다.",
+ "error-user-notAllowSelf": "이 작업은 자신에게 할수 없습니다.",
+ "error-user-notCreated": "유저가 생성되지 않았습니다.",
+ "error-username-taken": "중복된 아이디 입니다.",
+ "export-board": "보드 내보내기",
+ "filter": "필터",
"filter-cards": "카드 필터",
- "filter-clear": "Clear filter",
- "filter-no-label": "No label",
- "filter-no-member": "No member",
- "filter-on": "Filter is on",
+ "filter-clear": "필터 초기화",
+ "filter-no-label": "라벨 없음",
+ "filter-no-member": "멤버 없음",
+ "filter-on": "필터 사용",
"filter-on-desc": "보드에서 카드를 필터링합니다. 여기를 클릭하여 필터를 수정합니다.",
- "filter-to-selection": "Filter to selection",
- "fullname": "전체 이름",
+ "filter-to-selection": "선택 항목으로 필터링",
+ "fullname": "실명",
"header-logo-title": "보드 페이지로 돌아가기.",
- "hide-system-messages": "Hide system messages",
+ "hide-system-messages": "시스템 메시지 숨기기",
"headerBarCreateBoardPopup-title": "보드 생성",
"home": "홈",
- "import": "Import",
- "import-board": "import from Trello",
- "import-board-title": "Import board from Trello",
- "import-board-trello-instruction": "In your Trello board, go to 'Menu', then 'More', 'Print and Export', 'Export JSON', and copy the resulting text",
- "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",
+ "import": "가져오기",
+ "import-board": "Trello에서 가져오기",
+ "import-board-title": "Trello에서 보드 가져오기",
+ "import-board-trello-instruction": "Trello 게시판에서 'Menu' -> 'More' -> 'Print and Export', 'Export JSON' 선택하여 텍스트 결과값 복사",
+ "import-json-placeholder": "유효한 JSON 데이터를 여기에 붙여 넣으십시오.",
+ "import-map-members": "보드 멤버들",
+ "import-members-map": "가져온 보드에는 멤버가 있습니다. 원하는 멤버를 Wekan 멤버로 매핑하세요.",
+ "import-show-user-mapping": "멤버 매핑 미리보기",
+ "import-user-select": "이 멤버로 사용하려는 Wekan 유저를 선택하십시오.",
+ "importMapMembersAddPopup-title": "Wekan 멤버 선택",
"info": "정보",
- "initials": "Initials",
- "invalid-date": "Invalid date",
+ "initials": "이니셜",
+ "invalid-date": "잘못된 날짜",
"joined": "참가함",
- "just-invited": "You are just invited to this board",
- "keyboard-shortcuts": "Keyboard shortcuts",
+ "just-invited": "보드에 방금 초대되었습니다.",
+ "keyboard-shortcuts": "키보드 단축키",
"label-create": "새로운 라벨 생성",
"label-default": "%s 라벨 (기본)",
"label-delete-pop": "되돌릴 수 없습니다. 모든 카드에서 라벨을 제거하고, 이력을 제거합니다.",
"labels": "라벨",
"language": "언어",
"last-admin-desc": "적어도 하나의 관리자가 필요하기에 이 역할을 변경할 수 없습니다.",
- "leave-board": "Leave Board",
+ "leave-board": "보드 멤버에서 나가기",
"link-card": "카드에대한 링크",
- "list-archive-cards": "Archive all cards in this list",
+ "list-archive-cards": "목록에 있는 모든 카드를 저장소에 보관",
"list-archive-cards-pop": "보드의 목록에서 모든 카드를 삭제합니다. 보관된 카드를 보거나 그것들을 보드로 되돌릴려면, \"메뉴\" > \"보관된 아이템\"을 클릭합니다.",
- "list-move-cards": "Move all cards in this list",
- "list-select-cards": "Select all cards in this list",
+ "list-move-cards": "목록에 있는 모든 카드를 이동",
+ "list-select-cards": "목록에 있는 모든 카드를 선택",
"listActionPopup-title": "동작 목록",
- "listImportCardPopup-title": "Import a Trello card",
- "lists": "Lists",
+ "listImportCardPopup-title": "Trello 카드 가져 오기",
+ "lists": "목록들",
"log-out": "로그아웃",
"log-in": "로그인",
"loginPopup-title": "로그인",
- "memberMenuPopup-title": "Member Settings",
+ "memberMenuPopup-title": "멤버 설정",
"members": "멤버",
"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",
+ "move-selection": "선택 항목 이동",
+ "moveCardPopup-title": "카드 이동",
+ "moveCardToBottom-title": "최하단으로 이동",
+ "moveCardToTop-title": "최상단으로 이동",
+ "moveSelectionPopup-title": "선택 항목 이동",
+ "multi-selection": "다중 선택",
+ "multi-selection-on": "다중 선택 사용",
+ "muted": "알림 해제",
+ "muted-info": "보드의 변경된 사항들의 알림을 받지 않습니다.",
"my-boards": "내 보드",
"name": "이름",
- "no-archived-cards": "No archived cards.",
- "no-archived-lists": "No archived lists.",
+ "no-archived-cards": "보관된 카드가 없습니다.",
+ "no-archived-lists": "보관된 목록이 없습니다.",
"no-results": "결과 값 없음",
"normal": "표준",
"normal-desc": "카드를 보거나 수정할 수 있습니다. 설정값은 변경할 수 없습니다.",
- "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": "옴션",
- "or": "or",
+ "not-accepted-yet": "초대장이 수락되지 않았습니다.",
+ "notify-participate": "보드 생성자 또는 멤버로 참여하는 모든 카드에 대한 변경사항 알림 받음",
+ "notify-watch": "감시중인 보드, 목록 또는 카드에 대한 변경사항 알림 받음",
+ "optional": "옵션",
+ "or": "또는",
"page-maybe-private": "이 페이지를 비공개일 수 있습니다. 이것을 보고 싶으면 <a href='%s'>로그인</a>을 하십시오.",
"page-not-found": "페이지를 찾지 못 했습니다",
"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",
+ "paste-or-dragdrop": "이미지 파일을 붙여 넣거나 드래그 앤 드롭 (이미지 전용)",
+ "participating": "참여",
+ "preview": "미리보기",
+ "previewAttachedImagePopup-title": "미리보기",
+ "previewClipboardImagePopup-title": "미리보기",
"private": "비공개",
"private-desc": "비공개된 보드입니다. 오직 보드에 추가된 사람들만 보고 수정할 수 있습니다",
"profile": "프로파일",
"public": "공개",
"public-desc": "공개된 보드입니다. 링크를 가진 모든 사람과 구글과 같은 검색 엔진에서 찾아서 볼수 있습니다. 보드에 추가된 사람들만 수정이 가능합니다.",
- "quick-access-description": "Star a board to add a shortcut in this bar.",
+ "quick-access-description": "여기에 바로 가기를 추가하려면 보드에 별 표시를 체크하세요.",
"remove-cover": "커버 제거",
- "remove-from-board": "Remove from Board",
- "remove-label": "Remove the label",
- "remove-list": "Remove the list",
+ "remove-from-board": "보드에서 제거",
+ "remove-label": "라벨 제거",
+ "remove-list": "목록 제거",
"remove-member": "멤버 제거",
"remove-member-from-card": "카드에서 제거",
- "remove-member-pop": "__boardTitle__에서 __name__(__username__) 을 제거합니까? 그 멤버는 이 보드의 모든 카드에서 제거됩니다. 그에대한 알람을 받게됩니다.",
+ "remove-member-pop": "__boardTitle__에서 __name__(__username__) 을 제거합니까? 이 보드의 모든 카드에서 제거됩니다. 해당 내용을 __name__(__username__) 은(는) 알림으로 받게됩니다.",
"removeMemberPopup-title": "멤버를 제거합니까?",
"rename": "새이름",
"rename-board": "보드 이름 바꾸기",
- "restore": "Restore",
+ "restore": "복구",
"save": "저장",
"search": "검색",
"select-color": "색 선택",
- "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",
+ "shortcut-assign-self": "현재 카드에 자신을 지정하세요.",
+ "shortcut-autocomplete-emoji": "이모티콘 자동완성",
+ "shortcut-autocomplete-members": "멤버 자동완성",
+ "shortcut-clear-filters": "모든 필터 초기화",
+ "shortcut-close-dialog": "대화 상자 닫기",
+ "shortcut-filter-my-cards": "내 카드 필터링",
+ "shortcut-show-shortcuts": "바로가기 목록을 가져오십시오.",
+ "shortcut-toggle-filterbar": "토글 필터 사이드바",
+ "shortcut-toggle-sidebar": "보드 사이드바 토글",
+ "show-cards-minimum-count": "목록에 카드 수량 표시(입력된 수량 넘을 경우 표시)",
+ "sidebar-open": "사이드바 열기",
+ "sidebar-close": "사이드바 닫기",
"signupPopup-title": "계정 생성",
- "star-board-title": "보드에 별을 클릭합니다. 보드 목록에서 최상위로 둘 수 있습니다.",
+ "star-board-title": "보드에 별 표시를 클릭합니다. 보드 목록에서 최상위로 둘 수 있습니다.",
"starred-boards": "별표된 보드",
- "starred-boards-description": "별표된 보드들은 보드 목록의 최상단에서 보입니다.",
+ "starred-boards-description": "별 표시된 보드들은 보드 목록의 최상단에서 보입니다.",
"subscribe": "구독",
"team": "팀",
"this-board": "보드",
"this-card": "카드",
- "time": "Time",
+ "time": "시간",
"title": "제목",
- "tracking": "Tracking",
- "tracking-info": "You will be notified of any changes to those cards you are involved as creator or member.",
- "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": "사용자 이름",
- "view-it": "View it",
- "warn-list-archived": "warning: this card is in an archived list",
- "watch": "Watch",
- "watching": "Watching",
- "watching-info": "You will be notified of any change in this board",
- "welcome-board": "Welcome Board",
- "welcome-list1": "Basics",
- "welcome-list2": "Advanced",
- "what-to-do": "무엇을 원하나요?",
- "admin-panel": "Admin Panel",
- "system-setting": "System Setting",
+ "tracking": "추적",
+ "tracking-info": "보드 생성자 또는 멤버로 참여하는 모든 카드에 대한 변경사항 알림 받음",
+ "unassign-member": "멤버 할당 해제",
+ "unsaved-description": "저장되지 않은 설명이 있습니다.",
+ "unwatch": "감시 해제",
+ "upload": "업로드",
+ "upload-avatar": "아바타 업로드",
+ "uploaded-avatar": "업로드한 아바타",
+ "username": "아이디",
+ "view-it": "보기",
+ "warn-list-archived": "경고: 이 카드는 저장소 목록에 있습니다.",
+ "watch": "감시",
+ "watching": "감시 중",
+ "watching-info": "\"이 보드의 변경사항을 알림으로 받습니다.",
+ "welcome-board": "보드예제",
+ "welcome-list1": "신규",
+ "welcome-list2": "진행",
+ "what-to-do": "무엇을 하고 싶으신가요?",
+ "admin-panel": "관리자 패널",
"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-host": "SMTP Host",
- "smtp-port": "SMTP Port",
+ "people": "사람",
+ "registration": "회원가입",
+ "disable-self-registration": "일반 유저의 회원 가입 막기",
+ "invite": "초대",
+ "invite-people": "사람 초대",
+ "to-boards": "보드로 부터",
+ "email-addresses": "이메일 주소",
+ "smtp-host-description": "이메일을 처리하는 SMTP 서버의 주소입니다.",
+ "smtp-port-description": "SMTP 서버가 보내는 전자 메일에 사용하는 포트입니다.",
+ "smtp-host": "SMTP 호스트",
+ "smtp-port": "SMTP 포트",
"smtp-username": "사용자 이름",
"smtp-password": "암호",
- "send-from": "From",
- "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.",
- "error-invitation-code-not-exist": "Invitation code doesn't exist"
+ "send-from": "보낸 사람",
+ "invitation-code": "초대 코드",
+ "email-invite-register-subject": "\"__inviter__ 님이 당신에게 초대장을 보냈습니다.",
+ "email-invite-register-text": "\"__user__ 님, \n\n__inviter__ 님이 Wekan 보드에 협업을 위하여 초대합니다.\n\n아래 링크를 클릭해주세요 : \n__url__\n\n그리고 초대 코드는 __icode__ 입니다.\n\n감사합니다.",
+ "error-invitation-code-not-exist": "초대 코드가 존재하지 않습니다."
} \ No newline at end of file
diff --git a/i18n/no.i18n.json b/i18n/no.i18n.json
index 9f075e2b..aeb69a66 100644
--- a/i18n/no.i18n.json
+++ b/i18n/no.i18n.json
@@ -85,40 +85,40 @@
"boardChangeWatchPopup-title": "Endre overvåkning",
"boardMenuPopup-title": "Tavlemeny",
"boards": "Tavler",
- "bucket-example": "Like “Bucket List” for example",
- "cancel": "Cancel",
- "card-archived": "This card is archived.",
- "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 archive a card to remove it from the board and preserve the activity.",
- "card-due": "Due",
- "card-due-on": "Due on",
- "card-edit-attachments": "Edit attachments",
- "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.",
+ "bucket-example": "Som \"Bucket List\" for eksempel",
+ "cancel": "Avbryt",
+ "card-archived": "Dette kortet er arkivert.",
+ "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": "Du kan arkivere kortet for å fjerne det fra tavlen. All aktivitet vil beholdes.",
+ "card-due": "Frist",
+ "card-due-on": "Frist til",
+ "card-edit-attachments": "Rediger vedlegg",
+ "card-edit-labels": "Rediger etiketter",
+ "card-edit-members": "Endre medlemmer",
+ "card-labels-title": "Endre etiketter for kortet.",
+ "card-members-title": "Legg til eller fjern tavle-medlemmer fra dette kortet.",
"card-start": "Start",
- "card-start-on": "Starts on",
- "cardAttachmentsPopup-title": "Attach From",
- "cardDeletePopup-title": "Delete Card?",
- "cardDetailsActionsPopup-title": "Card Actions",
- "cardLabelsPopup-title": "Labels",
+ "card-start-on": "Starter på",
+ "cardAttachmentsPopup-title": "Legg ved fra",
+ "cardDeletePopup-title": "Slett kort?",
+ "cardDetailsActionsPopup-title": "Kort-handlinger",
+ "cardLabelsPopup-title": "Etiketter",
"cardMembersPopup-title": "Medlemmer",
- "cardMorePopup-title": "More",
- "cards": "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",
+ "cardMorePopup-title": "Mer",
+ "cards": "Kort",
+ "change": "Endre",
+ "change-avatar": "Endre avatar",
+ "change-password": "Endre passord",
+ "change-permissions": "Endre rettigheter",
+ "change-settings": "Endre innstillinger",
+ "changeAvatarPopup-title": "Endre Avatar",
+ "changeLanguagePopup-title": "Endre språk",
+ "changePasswordPopup-title": "Endre passord",
+ "changePermissionsPopup-title": "Endre tillatelser",
+ "changeSettingsPopup-title": "Endre innstillinger",
+ "checklists": "Sjekklister",
"click-to-star": "Click to star this board.",
"click-to-unstar": "Click to unstar this board.",
"clipboard": "Clipboard or drag & drop",
@@ -154,7 +154,7 @@
"done": "Done",
"download": "Download",
"edit": "Edit",
- "edit-avatar": "Change Avatar",
+ "edit-avatar": "Endre avatar",
"edit-profile": "Edit Profile",
"editCardStartDatePopup-title": "Change start date",
"editCardDueDatePopup-title": "Change due date",
@@ -196,6 +196,7 @@
"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 from Trello",
@@ -216,7 +217,7 @@
"label-create": "Create a new 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",
+ "labels": "Etiketter",
"language": "Language",
"last-admin-desc": "You can’t change roles because there must be at least one admin.",
"leave-board": "Leave Board",
@@ -322,5 +323,25 @@
"welcome-board": "Welcome Board",
"welcome-list1": "Basics",
"welcome-list2": "Advanced",
- "what-to-do": "What do you want to do?"
+ "what-to-do": "What do you want to do?",
+ "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-host": "SMTP Host",
+ "smtp-port": "SMTP Port",
+ "smtp-username": "Username",
+ "smtp-password": "Password",
+ "send-from": "From",
+ "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.",
+ "error-invitation-code-not-exist": "Invitation code doesn't exist"
} \ No newline at end of file
diff --git a/i18n/pl.i18n.json b/i18n/pl.i18n.json
index 878e1fd1..38172965 100644
--- a/i18n/pl.i18n.json
+++ b/i18n/pl.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Advanced",
"what-to-do": "Co chcesz zrobić?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/i18n/pt-BR.i18n.json b/i18n/pt-BR.i18n.json
index 7188d809..b16ff973 100644
--- a/i18n/pt-BR.i18n.json
+++ b/i18n/pt-BR.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Avançado",
"what-to-do": "O que você gostaria de fazer?",
"admin-panel": "Painel Administrativo",
- "system-setting": "Configuração do Sistema",
"settings": "Configurações",
"people": "Pessoas",
"registration": "Registro",
diff --git a/i18n/ro.i18n.json b/i18n/ro.i18n.json
index 50eb00aa..70c32d02 100644
--- a/i18n/ro.i18n.json
+++ b/i18n/ro.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Advanced",
"what-to-do": "Ce ai vrea sa faci?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/i18n/ru.i18n.json b/i18n/ru.i18n.json
index 967cb1b2..57a05371 100644
--- a/i18n/ru.i18n.json
+++ b/i18n/ru.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Advanced",
"what-to-do": "Что вы хотите сделать?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Настройки",
"people": "People",
"registration": "Registration",
diff --git a/i18n/sr.i18n.json b/i18n/sr.i18n.json
index dc656c26..78087c40 100644
--- a/i18n/sr.i18n.json
+++ b/i18n/sr.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "Napredno",
"what-to-do": "Šta želiš da uradiš ?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/i18n/th.i18n.json b/i18n/th.i18n.json
index 2aa29211..fb3eee61 100644
--- a/i18n/th.i18n.json
+++ b/i18n/th.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "ก้าวหน้า",
"what-to-do": "ต้องการทำอะไร",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/i18n/tr.i18n.json b/i18n/tr.i18n.json
index 96a7139d..2e63a44c 100644
--- a/i18n/tr.i18n.json
+++ b/i18n/tr.i18n.json
@@ -1,348 +1,347 @@
{
- "accept": "Accept",
- "act-activity-notify": "[Wekan] Activity Notification",
- "act-addAttachment": "attached __attachment__ to __card__",
- "act-addComment": "commented on __card__: __comment__",
- "act-createBoard": "created __board__",
- "act-createCard": "added __card__ to __list__",
- "act-createList": "added __list__ to __board__",
- "act-addBoardMember": "added __member__ to __board__",
- "act-archivedBoard": "archived __board__",
- "act-archivedCard": "archived __card__",
- "act-archivedList": "archived __list__",
- "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__",
+ "accept": "Kabul Et",
+ "act-activity-notify": "[Wekan] Aktivite Bildirimi",
+ "act-addAttachment": "__card__ kartına __attachment__ dosyasını ekledi",
+ "act-addComment": "__card__ kartına bir yorum bırakıt: __comment__",
+ "act-createBoard": "__board__ panosunu oluşturdu",
+ "act-createCard": "__card__ kartını ___list__ listesine ekledi.",
+ "act-createList": "__list__ listesini __board__ panosuna ekledi",
+ "act-addBoardMember": "__member__ kullanıcısını __board__ panosuna ekledi",
+ "act-archivedBoard": "__board__ panosunu arşivledi",
+ "act-archivedCard": "__card__ kartını arşivledi",
+ "act-archivedList": "__list__ listesini arşivledi",
+ "act-importBoard": "__board__ panosunu aktardı",
+ "act-importCard": "__card__ kartını aktardı",
+ "act-importList": "__list__ listesini aktardı",
+ "act-joinMember": "__member__ kullanıcısnı __card__ kartına ekledi",
+ "act-moveCard": "__card__ kartını __oldList__ listesinden __list__ listesine taşıdı",
+ "act-removeBoardMember": "__board__ panosundan __member__ kullanıcısını çıkarttı",
+ "act-restoredCard": "__card__ kartını __board__ panosuna geri döndürdü",
+ "act-unjoinMember": "__member__ kullanıcısnı __card__ kartından çıkarttı",
"act-withBoardTitle": "[Wekan] __board__",
"act-withCardTitle": "[__board__] __card__",
"actions": "İşlemler",
"activities": "Aktiviteler",
"activity": "Etkinlik",
- "activity-added": "added %s to %s",
+ "activity-added": "%s içine %s ekledi",
"activity-archived": "%s arşivledi",
- "activity-attached": "attached %s to %s",
+ "activity-attached": "%s içine %s ekledi",
"activity-created": "%s oluşturdu",
- "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-excluded": "%s içinden %s çıkarttı",
+ "activity-imported": "%s i %s içine taşıdı, kaynağı %s",
+ "activity-imported-board": "%s i %s içinden aktardı",
+ "activity-joined": "şuna katıldı: %s",
+ "activity-moved": "%s i %s içinden %s içine taşıdı",
+ "activity-on": "%s",
+ "activity-removed": "%s i %s ten kaldırdı",
+ "activity-sent": "%s i %s e gönderdi",
+ "activity-unjoined": "%s içinden ayrıldı",
+ "activity-checklist-added": "%s içine liste ekledi",
"add": "Ekle",
- "add-attachment": "Add an attachment",
+ "add-attachment": "Dosya ekle",
"add-board": "Yeni bir pano ekle",
- "add-card": "Add a card",
- "add-checklist": "Add a checklist",
- "add-checklist-item": "Add an item to checklist",
- "add-cover": "Add Cover",
- "add-label": "Add the label",
- "add-list": "Add a list",
- "add-members": "Add Members",
+ "add-card": "Yeni bir kart ekle",
+ "add-checklist": "Yeni bir liste ekle",
+ "add-checklist-item": "Listeye yeni bir eleman ekle",
+ "add-cover": "Kapak resmi ekle",
+ "add-label": "Etiket Ekle",
+ "add-list": "Liste ekle",
+ "add-members": "Üye ekle",
"added": "Eklendi",
"addMemberPopup-title": "Üyeler",
"admin": "Yönetici",
"admin-desc": "Kartları görüntüler ve düzenler, üyeleri çıkarır ve pano ayarlarını değiştirir.",
- "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": "The application is currently offline, refreshing the page will cause data loss.",
- "archive": "Arşiv",
+ "all-boards": "Tüm panolar",
+ "and-n-other-card": "Ve __count__ diğer kart",
+ "and-n-other-card_plural": "Ve __count__ diğer kart",
+ "apply": "Uygula",
+ "app-is-offline": "Uygulama şu an çevrim dışı, saya yenilemek kaydedilmemiş veri kaybına yol açacaktır.",
+ "archive": "Arşivle",
"archive-all": "Tümünü Arşivle",
- "archive-board": "Archive Board",
- "archive-card": "Archive Card",
+ "archive-board": "Panoyu Arşivle",
+ "archive-card": "Kartı arşivle",
"archive-list": "Bu listeyi arşivle",
- "archive-selection": "Archive selection",
- "archiveBoardPopup-title": "Archive Board?",
+ "archive-selection": "Seçimi arşivle",
+ "archiveBoardPopup-title": "Pano arşivlensin mi?",
"archived-items": "Arşivlenmiş Öğeler",
"archives": "Arşiv",
- "assign-member": "Assign member",
+ "assign-member": "Üye ata",
"attached": "dosya eklendi",
"attachment": "Ek Dosya",
"attachment-delete-pop": "Ek dosya silme işlemi kalıcıdır. Geri dönüşü yok",
"attachmentDeletePopup-title": "Ek Dosya Silinsin Mi?",
"attachments": "Ek Dosyalar",
- "auto-watch": "Automatically watch boards when create it",
- "avatar-too-big": "The avatar is too large (70Kb max)",
+ "auto-watch": "Oluşan yeni panoları otomatik takip et",
+ "avatar-too-big": "Avatar resmi çok büyük (70Kb maksimum)",
"back": "Geri",
- "board-change-color": "Change color",
- "board-nb-stars": "%s stars",
+ "board-change-color": "Renk değiştir",
+ "board-nb-stars": "%s yıldız",
"board-not-found": "Pano bulunamadı",
- "board-private-info": "This board will be <strong>private</strong>.",
+ "board-private-info": "Bu pano <strong>gizli</strong> olacak.",
"board-public-info": "Bu pano <strong>genel</strong>e açılacaktır.",
- "boardChangeColorPopup-title": "Change Board Background",
+ "boardChangeColorPopup-title": "Pano arkaplan rengini değiştir",
"boardChangeTitlePopup-title": "Pano Adı Değiştirme",
"boardChangeVisibilityPopup-title": "Görünebilirliği Değiştir",
- "boardChangeWatchPopup-title": "Change Watch",
- "boardMenuPopup-title": "Board Menu",
+ "boardChangeWatchPopup-title": "İzleme Durumunu Değiştir",
+ "boardMenuPopup-title": "Pano menüsü",
"boards": "Panolar",
- "bucket-example": "Like “Bucket List” for example",
+ "bucket-example": "Örn: \"Marketten Alacaklarım\"",
"cancel": "İptal",
"card-archived": "Bu kart arşivlendi.",
- "card-comments-title": "This card has %s comment.",
+ "card-comments-title": "Bu kartta %s yorum var.",
"card-delete-notice": "Silme işlemi kalıcıdır. Bu kartla ilişkili tüm eylemleri kaybedersiniz.",
- "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 archive a card to remove it from the board and preserve the activity.",
- "card-due": "Due",
- "card-due-on": "Due on",
- "card-edit-attachments": "Edit attachments",
- "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",
+ "card-delete-pop": "Son hareketler alanındaki tüm veriler silinecek, ayrıca bu kartı yeniden açamayacaksın. Bu işlemin geri dönüşü yok.",
+ "card-delete-suggest-archive": "Kartı panodan kaldırıp, buna rağmen aktivitelerini saklamak istiyorsan kartı arşivleyebilirsin.",
+ "card-due": "şu zamanda:",
+ "card-due-on": "şu zamanda:",
+ "card-edit-attachments": "Ek dosyasını düzenle",
+ "card-edit-labels": "Etiketleri düzenle",
+ "card-edit-members": "Üyeleri düzenle",
+ "card-labels-title": "Bu kart için etiketleri düzenle",
+ "card-members-title": "Karta pano içindeki üyeleri ekler veya çıkartır.",
+ "card-start": "Başlama",
+ "card-start-on": "Başlama:",
+ "cardAttachmentsPopup-title": "Eklenme",
"cardDeletePopup-title": "Kart Silinsin mi?",
- "cardDetailsActionsPopup-title": "Card Actions",
+ "cardDetailsActionsPopup-title": "Kart işlemleri",
"cardLabelsPopup-title": "Etiketler",
"cardMembersPopup-title": "Üyeler",
- "cardMorePopup-title": "More",
- "cards": "Cards",
- "change": "Change",
+ "cardMorePopup-title": "Daha",
+ "cards": "Kartlar",
+ "change": "Değiştir",
"change-avatar": "Avatar Değiştir",
"change-password": "Parola Değiştir",
- "change-permissions": "Change permissions",
- "change-settings": "Change Settings",
+ "change-permissions": "İzinleri değiştir",
+ "change-settings": "Ayarları değiştir",
"changeAvatarPopup-title": "Avatar Değiştir",
"changeLanguagePopup-title": "Dil Değiştir",
"changePasswordPopup-title": "Parola Değiştir",
"changePermissionsPopup-title": "Yetkileri Değiştirme",
- "changeSettingsPopup-title": "Change Settings",
- "checklists": "Checklists",
+ "changeSettingsPopup-title": "Ayarları değiştir",
+ "checklists": "Doğrulama Listeleri",
"click-to-star": "Bu panoyu yıldızlamak için tıkla.",
"click-to-unstar": "Bu panunun yıldızını kaldırmak için tıkla.",
- "clipboard": "Clipboard or drag & drop",
+ "clipboard": "Panodan (cliboard) veya sürükle ve bırak ile",
"close": "Kapat",
- "close-board": "Close Board",
+ "close-board": "Panoyu kapat",
"close-board-pop": "You will be able to restore the board by clicking the “Archives” 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": "siyah",
+ "color-blue": "mavi",
+ "color-green": "yeşil",
+ "color-lime": "çim",
+ "color-orange": "turuncu",
+ "color-pink": "pembe",
+ "color-purple": "mor",
+ "color-red": "kırmızı",
+ "color-sky": "açık mavi",
+ "color-yellow": "sarı",
"comment": "Yorum Gönder",
- "comment-placeholder": "Write a comment",
+ "comment-placeholder": "Bir yorum yaz",
"computer": "Bilgisayar",
"create": "Oluştur",
"createBoardPopup-title": "Pano Oluşturma",
"createLabelPopup-title": "Etiket Oluşturma",
- "current": "current",
- "date": "Date",
- "decline": "Decline",
- "default-avatar": "Default avatar",
+ "current": "mevcut",
+ "date": "Tarih",
+ "decline": "Reddet",
+ "default-avatar": "Varsayılan avatar",
"delete": "Sil",
"deleteLabelPopup-title": "Etiket Silinsin mi?",
"description": "Açıklama",
- "disambiguateMultiLabelPopup-title": "Disambiguate Label Action",
- "disambiguateMultiMemberPopup-title": "Disambiguate Member Action",
- "discard": "Discard",
- "done": "Done",
+ "disambiguateMultiLabelPopup-title": "Etiket işlemini izah et",
+ "disambiguateMultiMemberPopup-title": "Üye işlemini izah et",
+ "discard": "ıskartaya çıkart",
+ "done": "Tamam",
"download": "İndir",
"edit": "Düzenle",
"edit-avatar": "Avatar Değiştir",
"edit-profile": "Profili Düzenle",
- "editCardStartDatePopup-title": "Change start date",
- "editCardDueDatePopup-title": "Change due date",
- "editLabelPopup-title": "Etiket Değiştirme",
- "editNotificationPopup-title": "Edit Notification",
+ "editCardStartDatePopup-title": "Başlangıç tarihini değiştir",
+ "editCardDueDatePopup-title": "Bitiş tarihini değiştir",
+ "editLabelPopup-title": "Etiket Değiştir",
+ "editNotificationPopup-title": "Bildirimi değiştir",
"editProfilePopup-title": "Profili Düzenle",
"email": "E-posta",
- "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-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.",
- "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": "This action on self is not allowed",
- "error-user-notCreated": "This user is not created",
- "error-username-taken": "This username is already taken",
- "export-board": "Export board",
- "filter": "Filter",
- "filter-cards": "Kartları Süz",
- "filter-clear": "Clear filter",
- "filter-no-label": "No label",
- "filter-no-member": "No member",
- "filter-on": "Filter is on",
- "filter-on-desc": "Bu panodaki kartları süzüyorsunuz. Süzgeci düzenlemek için tıklayın.",
- "filter-to-selection": "Filter to selection",
+ "email-enrollAccount-subject": "__siteName__ üzerinde hesabın oluşturuldu",
+ "email-enrollAccount-text": "Merhaba __user__,\n\nBu servisi kullanmaya başlamak için aşağıdaki linke tıklamalısın\n\n__url__\n\nTeşekkürler.",
+ "email-fail": "E-posta gönderimi başarısız",
+ "email-invalid": "Geçersiz e-posta",
+ "email-invite": "E-posta ile davet et",
+ "email-invite-subject": "__inviter__ size bir davetiye gönderdi",
+ "email-invite-text": "Sevgili __user__,\n\n__inviter__ seni birlikte çalışmak için \"__board__\" panosuna davet ediyor.\n\nLütfen aşağıdaki linke tıkla:\n\n__url__\n\nTeşekkürler.",
+ "email-resetPassword-subject": "__siteName__ üzerinde parolanı sıfırla",
+ "email-resetPassword-text": "Merhaba __user__,\n\nParolanı sıfırlaman için aşağıdaki linke tıklaman yeterli.\n\n__url__\n\nTeşekkürler.",
+ "email-sent": "E-posta gönderildi",
+ "email-verifyEmail-subject": "__siteName__ üzerindeki e-posta adresini doğrulama",
+ "email-verifyEmail-text": "Merhaba __user__,\n\nHesap e-posta adresini doğrulamak için aşağıdaki linke tıklaman yeterli.\n\n__url__\n\nTeşekkürler.",
+ "error-board-doesNotExist": "Erişmeye çalıştığın pano bulunamadı",
+ "error-board-notAdmin": "Bu işlemi yapmak için pano yöneticisi olmalısın.",
+ "error-board-notAMember": "Bu işlemi yapmak için pano içindeki bir üye olmalısın.",
+ "error-json-malformed": "Girilen metin geçerli bir JSON formatında değil",
+ "error-json-schema": "Girdiğin JSON metni tüm bilgileri doğru biçimde barındırmıyor",
+ "error-list-doesNotExist": "Liste bulunamadı",
+ "error-user-doesNotExist": "Kullanıcı bulunamadı",
+ "error-user-notAllowSelf": "Bu işlemi kendi üzerinde yapamazsın",
+ "error-user-notCreated": "Bu üye oluşturulmadı",
+ "error-username-taken": "Kullanıcı adı zaten alınmış",
+ "export-board": "Panoyu dışarı aktar",
+ "filter": "Filtre",
+ "filter-cards": "Kartları Filtrele",
+ "filter-clear": "Süzgeci temizle",
+ "filter-no-label": "Etiket yok",
+ "filter-no-member": "Üye 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",
"fullname": "Ad Soyad",
"header-logo-title": "Panolar sayfanıza geri dön.",
- "hide-system-messages": "Hide system messages",
+ "hide-system-messages": "Sistem mesajlarını gizle",
"headerBarCreateBoardPopup-title": "Pano Oluşturma",
- "home": "Home",
- "import": "Import",
- "import-board": "import from Trello",
- "import-board-title": "Import board from Trello",
- "import-board-trello-instruction": "In your Trello board, go to 'Menu', then 'More', 'Print and Export', 'Export JSON', and copy the resulting text",
- "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": "Infos",
- "initials": "Initials",
- "invalid-date": "Invalid date",
- "joined": "joined",
- "just-invited": "You are just invited to this board",
- "keyboard-shortcuts": "Keyboard shortcuts",
+ "home": "Ana Sayfa",
+ "import": "İçeri aktar",
+ "import-board": "Trello'dan içeri aktar",
+ "import-board-title": "Trello'dan panoları içeri aktarır",
+ "import-board-trello-instruction": "Trello panonuzda, 'Menü'ye gidip, ardıdan, 'daha fazlası' na tıklayın, 'Yazdır ve Çıktı al' sayfasından 'JSON biçiminde çıktı al' diyip, çıkan metni buraya kopyalayın.",
+ "import-json-placeholder": "Geçerli JSON verisini buraya yapıştırın",
+ "import-map-members": "Üyeleri eşleştirme",
+ "import-members-map": "İçe aktardığın panoda bazı kullanıcılar var. Lütfen bu kullanıcıları Wekan panosundaki kullanıcılarla eşleştirin.",
+ "import-show-user-mapping": "Üye eşleştirmesini kontrol et",
+ "import-user-select": "Bu üyenin sistemdeki hangi kullanıcı olduğunu seçin",
+ "importMapMembersAddPopup-title": "Üye seç",
+ "info": "Bilgiler",
+ "initials": "İlk Harfleri",
+ "invalid-date": "Geçersiz tarih",
+ "joined": "katılma",
+ "just-invited": "Bu panoya şimdi davet edildin.",
+ "keyboard-shortcuts": "Klavye kısayolları",
"label-create": "Yeni bir etiket oluştur",
"label-default": "%s etiket (varsayılan)",
"label-delete-pop": "Geri dönüşü yok. Tüm kartlardan bu etiket kaldırılacaktır ve geçmişini yok edecektir.",
"labels": "Etiketler",
"language": "Dil",
- "last-admin-desc": "Rolleri değiştiremezsiniz çünkü burada en az bir yönetici olmalıdır.",
- "leave-board": "Leave Board",
+ "last-admin-desc": "Rolleri değiştiremezsiniz, çünkü burada en az bir yönetici olmalıdır.",
+ "leave-board": "Panodan ayrıl",
"link-card": "Bu kartın bağlantısı",
- "list-archive-cards": "Archive all cards in this list",
- "list-archive-cards-pop": "This will remove all the cards in this list from the board. To view archived cards and bring them back to the board, click “Menu” > “Archived Items”.",
- "list-move-cards": "Move all cards in this list",
- "list-select-cards": "Select all cards in this list",
+ "list-archive-cards": "Bu liste içindeki tüm kartları arşivle",
+ "list-archive-cards-pop": "Bu işlem bu listedeki tüm kartları kaldıracak ve arşivleyecek. Arşivlenmiş kartları görmek ve panoya geri yüklemek için \"Menü\" altından \"Arşivlenmiş Öğeler\"e gidebilirsiniz.",
+ "list-move-cards": "Listedeki tüm kartları taşı",
+ "list-select-cards": "Listedeki tüm kartları seç",
"listActionPopup-title": "Liste İşlemleri",
- "listImportCardPopup-title": "Import a Trello card",
- "lists": "Lists",
+ "listImportCardPopup-title": "Bir Trello kartını içeri aktar",
+ "lists": "Listeler",
"log-out": "Oturum Kapat",
"log-in": "Oturum Aç",
"loginPopup-title": "Oturum Aç",
- "memberMenuPopup-title": "Member Settings",
+ "memberMenuPopup-title": "Üye ayarları",
"members": "Üyeler",
"menu": "Menü",
- "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",
+ "move-selection": "Seçimi taşı",
+ "moveCardPopup-title": "Kartı taşı",
+ "moveCardToBottom-title": "Aşağı taşı",
+ "moveCardToTop-title": "Yukarı taşı",
+ "moveSelectionPopup-title": "Seçimi taşı",
+ "multi-selection": "Çoklu seçim",
+ "multi-selection-on": "Çoklu seçim açık",
+ "muted": "Sessiz",
+ "muted-info": "Bu panodaki değişiklikler hakkında bildirim almayacaksınız",
"my-boards": "Panolarım",
"name": "Adı",
- "no-archived-cards": "No archived cards.",
- "no-archived-lists": "No archived lists.",
+ "no-archived-cards": "Arşivlenmiş kart bulunamadı.",
+ "no-archived-lists": "Arşivlenmiş liste bulunamadı.",
"no-results": "Sonuç yok",
"normal": "Normal",
"normal-desc": "Kartları görüntüler ve düzenler. Ayarları değiştiremez.",
- "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",
+ "not-accepted-yet": "Davetiye henüz kabul edilmemiş",
+ "notify-participate": "Oluşturduğunuz veya üye olduğunuz tüm kartlar hakkında bildirim alma",
+ "notify-watch": "Takip ettiğiniz tüm pano, liste ve kartlar hakkında bildirim alma",
"optional": "isteğe bağlı",
- "or": "or",
+ "or": "veya",
"page-maybe-private": "Bu sayfa özel olabilir. <a href='%s'>Oturum açarak</a> görülebilir.",
"page-not-found": "Sayda bulunamadı.",
"password": "Parola",
- "paste-or-dragdrop": "to paste, or drag & drop image file to it (image only)",
- "participating": "Participating",
- "preview": "Preview",
- "previewAttachedImagePopup-title": "Preview",
- "previewClipboardImagePopup-title": "Preview",
+ "paste-or-dragdrop": "Dosya eklemek için yapıştırabilir, veya (eğer resimse) sürükle bırak yapabilirsiniz",
+ "participating": "Katılımcılar",
+ "preview": "Önizleme",
+ "previewAttachedImagePopup-title": "Önizleme",
+ "previewClipboardImagePopup-title": "Önizleme",
"private": "Özel",
"private-desc": "Bu pano özel. Sadece panoya ekli kişiler görüntüleyebilir ve düzenleyebilir.",
"profile": "Kullanıcı Sayfası",
"public": "Genel",
"public-desc": "Bu pano genel. Bağlantı adresi ile herhangi bir kimseye görünür ve Google gibi arama motorlarında gösterilecektir. Panoyu, sadece eklenen kişiler düzenleyebilir.",
- "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 the label",
- "remove-list": "Remove the list",
+ "quick-access-description": "Bu bara kısayol olarak bir pano eklemek için panoyu yıldızlamalısınız",
+ "remove-cover": "Kapak resmini kaldır",
+ "remove-from-board": "Panodan kaldır",
+ "remove-label": "Etiketi kaldır",
+ "remove-list": "Listeden kaldır",
"remove-member": "Üyeyi Çıkar",
"remove-member-from-card": "Karttan Çıkar",
"remove-member-pop": "__boardTitle__ panosundan __name__ (__username__) çıkarılsın mı? Üye, bu panodaki tüm kartlardan çıkarılacak ve bir bildirim alacak.",
- "removeMemberPopup-title": "Üyeyi Çıkarmak mı?",
- "rename": "Ad değiştir",
+ "removeMemberPopup-title": "Üye çıkarılsın mı?",
+ "rename": "Yeniden adlandır",
"rename-board": "Pano Adı Değiştirme",
- "restore": "Restore",
+ "restore": "Geri yükleme",
"save": "Kaydet",
- "search": "Search",
+ "search": "Arama",
"select-color": "Bir renk seç",
- "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",
+ "shortcut-assign-self": "Kendini karta ekle",
+ "shortcut-autocomplete-emoji": "Otomatik tamamlayan emoji yüz ifadeleri",
+ "shortcut-autocomplete-members": "Otomatik tamamlayan üye isimleri",
+ "shortcut-clear-filters": "Tüm filtreleri temizle",
+ "shortcut-close-dialog": "Diyaloğu kapat",
+ "shortcut-filter-my-cards": "Kartlarımı filtrele",
+ "shortcut-show-shortcuts": "Kısayollar listesini getir",
+ "shortcut-toggle-filterbar": "Filtre kenar çubuğunu aç/kapa",
+ "shortcut-toggle-sidebar": "Pano kenar çubuğunu aç/kapa",
+ "show-cards-minimum-count": "Eğer listede şu kadar sayıdan fazla şey varsa kart sayısını göster: ",
+ "sidebar-open": "Kenar çubuğunu aç",
+ "sidebar-close": "Kenar çubuğunu kapat",
"signupPopup-title": "Bir Hesap Oluştur",
"star-board-title": "Bu panoyu yıldızlamak için tıkla. Pano listesinin en üstünde gösterilir.",
"starred-boards": "Yıldızlı Panolar",
"starred-boards-description": "Yıldızlanmış panolar, pano listenin en üstünde gösterilir.",
- "subscribe": "Subscribe",
+ "subscribe": "Abone ol",
"team": "Takım",
"this-board": "bu panoyu",
"this-card": "bu kart",
- "time": "Time",
+ "time": "Zaman",
"title": "Başlık",
- "tracking": "Tracking",
- "tracking-info": "You will be notified of any changes to those cards you are involved as creator or member.",
- "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",
+ "tracking": "Takp",
+ "tracking-info": "Oluşturduğunuz veya üyesi olduğunuz tüm kartlardaki değişiklikler size bildirim olarak gelecek.",
+ "unassign-member": "Üyeyi çıkart",
+ "unsaved-description": "Kaydedilmemiş bir açıklama metnin bulunmakta",
+ "unwatch": "Takibi bırak",
+ "upload": "Yükle",
+ "upload-avatar": "Avatar yükle",
+ "uploaded-avatar": "Avatar yüklendi",
"username": "Kullanıcı adı",
- "view-it": "View it",
- "warn-list-archived": "warning: this card is in an archived list",
- "watch": "Watch",
- "watching": "Watching",
- "watching-info": "You will be notified of any change in this board",
- "welcome-board": "Welcome Board",
- "welcome-list1": "Basics",
- "welcome-list2": "Advanced",
- "what-to-do": "What do you want to do?",
- "admin-panel": "Admin Panel",
- "system-setting": "System Setting",
+ "view-it": "Görüntüle",
+ "warn-list-archived": "dikkat: bu kart arşivlenmiş bir liste içinde",
+ "watch": "Takip Et",
+ "watching": "Takip Ediliyor",
+ "watching-info": "Bu pano hakkındaki tüm değişiklikler hakkında tarafınıza bildirim gelecektir",
+ "welcome-board": "Panoya Hoş Geldiniz",
+ "welcome-list1": "Temel",
+ "welcome-list2": "Gelişmiş",
+ "what-to-do": "Ne yapmak istiyorsunuz?",
+ "admin-panel": "Yönetici Paneli",
"settings": "Ayarlar",
- "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-host": "SMTP Host",
- "smtp-port": "SMTP Port",
+ "people": "Kullanıcılar",
+ "registration": "Kayıt",
+ "disable-self-registration": "Ziyaretçilere kaydı kapa",
+ "invite": "Davet",
+ "invite-people": "Kullanıcı davet et",
+ "to-boards": "Şu pano(lar)a",
+ "email-addresses": "E-posta adresleri",
+ "smtp-host-description": "E-posta gönderimi yapan SMTP sunucu adresi",
+ "smtp-port-description": "E-posta gönderimi yapan SMTP sunucu portu",
+ "smtp-host": "SMTP sunucu adresi",
+ "smtp-port": "SMTP portu",
"smtp-username": "Kullanıcı adı",
"smtp-password": "Parola",
- "send-from": "From",
- "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.",
- "error-invitation-code-not-exist": "Invitation code doesn't exist"
+ "send-from": "Gönderen",
+ "invitation-code": "Davetiye kodu",
+ "email-invite-register-subject": "__inviter__ size bir davetiye gönderdi",
+ "email-invite-register-text": "Sevgili __user__,\n\n__inviter__ Sizi koordine çalışabilmek için Wekan'a davet etti.\n\nLütfen aşağıdaki linke tıklayın:\n__url__\n\nDavetiye kodunuz: __icode__\n\nTeşekkürler.",
+ "error-invitation-code-not-exist": "Davetiye kodu bulunamadı"
} \ No newline at end of file
diff --git a/i18n/zh-CN.i18n.json b/i18n/zh-CN.i18n.json
index c8b18a19..33fad540 100644
--- a/i18n/zh-CN.i18n.json
+++ b/i18n/zh-CN.i18n.json
@@ -45,7 +45,7 @@
"add-checklist-item": "扩充清单",
"add-cover": "添加封面",
"add-label": "添加标签",
- "add-list": "添加清单",
+ "add-list": "添加列表",
"add-members": "添加成员",
"added": "添加",
"addMemberPopup-title": "成员",
@@ -60,7 +60,7 @@
"archive-all": "全部归档",
"archive-board": "归档看板",
"archive-card": "归档卡片",
- "archive-list": "归档该清单",
+ "archive-list": "归档该列表",
"archive-selection": "归档所选内容",
"archiveBoardPopup-title": "确定要归档看板吗?",
"archived-items": "已归档项目",
@@ -72,7 +72,7 @@
"attachmentDeletePopup-title": "删除附件?",
"attachments": "附件",
"auto-watch": "创建看板时自动关注",
- "avatar-too-big": "头像太大 (最大 70 Kb)",
+ "avatar-too-big": "头像文件过大 (上限 70 Kb)",
"back": "返回",
"board-change-color": "更改颜色",
"board-nb-stars": "%s 星标",
@@ -85,12 +85,12 @@
"boardChangeWatchPopup-title": "更改关注状态",
"boardMenuPopup-title": "看板菜单",
"boards": "看板",
- "bucket-example": "例如 “目标清单”",
+ "bucket-example": "例如 “遗愿清单”",
"cancel": "取消",
"card-archived": "该卡片已被归档",
"card-comments-title": "该卡片有 %s 条评论",
"card-delete-notice": "彻底删除的操作不可恢复,你将会丢失该卡片相关的所有操作记录。",
- "card-delete-pop": "所有的动作将从活动动态中被移除且您将无法重新打开该卡片。此操作无法撤销。",
+ "card-delete-pop": "所有的活动将从活动摘要中被移除且您将无法重新打开该卡片。此操作无法撤销。",
"card-delete-suggest-archive": "你可以将卡片从看板中归档至回收箱,但保留相关活动。",
"card-due": "到期",
"card-due-on": "期限",
@@ -103,7 +103,7 @@
"card-start-on": "始于",
"cardAttachmentsPopup-title": "附件来源",
"cardDeletePopup-title": "彻底删除卡片?",
- "cardDetailsActionsPopup-title": "卡片动作",
+ "cardDetailsActionsPopup-title": "卡片操作",
"cardLabelsPopup-title": "标签",
"cardMembersPopup-title": "成员",
"cardMorePopup-title": "更多",
@@ -148,8 +148,8 @@
"delete": "删除",
"deleteLabelPopup-title": "删除标签?",
"description": "描述",
- "disambiguateMultiLabelPopup-title": "消除标签动作歧义",
- "disambiguateMultiMemberPopup-title": "消除会员动作歧义",
+ "disambiguateMultiLabelPopup-title": "标签消歧 [?]",
+ "disambiguateMultiMemberPopup-title": "成员消歧 [?]",
"discard": "放弃",
"done": "完成",
"download": "下载",
@@ -222,13 +222,13 @@
"last-admin-desc": "你不能更改角色,因为至少需要一名管理员。",
"leave-board": "离开看板",
"link-card": "关联至该卡片",
- "list-archive-cards": "归档清单中的所有卡片",
- "list-archive-cards-pop": "这将会从本看板中移除该清单中的所有卡片。如果需要浏览已归档的卡片并且将其恢复至看板,请点击\"菜单\">\"回收箱\"",
- "list-move-cards": "移动清单中的所有卡片",
- "list-select-cards": "选择清单中的所有卡片",
- "listActionPopup-title": "清单操作",
+ "list-archive-cards": "归档列表中的所有卡片",
+ "list-archive-cards-pop": "这将会从本看板中移除该列表中的所有卡片。如果需要浏览已归档的卡片并且将其恢复至看板,请点击 \"菜单\" > \"回收箱\"",
+ "list-move-cards": "移动列表中的所有卡片",
+ "list-select-cards": "选择列表中的所有卡片",
+ "listActionPopup-title": "列表操作",
"listImportCardPopup-title": "导入 Trello 卡片",
- "lists": "清单",
+ "lists": "列表",
"log-out": "登出",
"log-in": "登录",
"loginPopup-title": "登录",
@@ -247,7 +247,7 @@
"my-boards": "我的看板",
"name": "名称",
"no-archived-cards": "没有已归档的卡片",
- "no-archived-lists": "没有已归档的清单",
+ "no-archived-lists": "没有已归档的列表。",
"no-results": "无结果",
"normal": "普通",
"normal-desc": "可以创建以及编辑卡片,无法更改设置。",
@@ -273,7 +273,7 @@
"remove-cover": "移除封面",
"remove-from-board": "从看板中删除",
"remove-label": "移除标签",
- "remove-list": "删除清单",
+ "remove-list": "删除列表",
"remove-member": "移除成员",
"remove-member-from-card": "从该卡片中移除",
"remove-member-pop": "确定从 __boardTitle__ 中移除 __name__ (__username__) 吗? 该成员将被从该看板的所有卡片中移除,同时他会收到一条提醒。",
@@ -294,8 +294,8 @@
"shortcut-toggle-filterbar": "切换过滤器边栏",
"shortcut-toggle-sidebar": "切换面板边栏",
"show-cards-minimum-count": "当列表中的卡片多于此阈值时将显示数量",
- "sidebar-open": "Open Sidebar",
- "sidebar-close": "Close Sidebar",
+ "sidebar-open": "打开侧栏",
+ "sidebar-close": "打开侧栏",
"signupPopup-title": "创建账户",
"star-board-title": "点此来标记该看板,它将会出现在您的看板列表顶部。",
"starred-boards": "已标记看板",
@@ -316,33 +316,32 @@
"uploaded-avatar": "头像已经上传",
"username": "用户名",
"view-it": "查看",
- "warn-list-archived": "警告: 该卡片位于已归档清单中",
+ "warn-list-archived": "警告: 该卡片位于已归档的列表中",
"watch": "关注",
- "watching": "已关注",
+ "watching": "关注",
"watching-info": "当此看板发生变更时会通知你",
"welcome-board": "“欢迎”看板",
"welcome-list1": "基本",
"welcome-list2": "高阶",
"what-to-do": "要做什么?",
- "admin-panel": "Admin Panel",
- "system-setting": "System Setting",
+ "admin-panel": "管理面板",
"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-host": "SMTP Host",
- "smtp-port": "SMTP Port",
+ "people": "人员",
+ "registration": "注册",
+ "disable-self-registration": "禁止自助注册",
+ "invite": "邀请",
+ "invite-people": "邀请人员",
+ "to-boards": "邀请到看板 (可多选)",
+ "email-addresses": "电子邮箱地址",
+ "smtp-host-description": "用于发送邮件的SMTP服务器地址。",
+ "smtp-port-description": "SMTP服务器端口。",
+ "smtp-host": "SMTP服务器",
+ "smtp-port": "SMTP端口",
"smtp-username": "用户名",
"smtp-password": "密码",
- "send-from": "From",
- "invitation-code": "Invitation Code",
+ "send-from": "发件人",
+ "invitation-code": "邀请码",
"email-invite-register-subject": "__inviter__ 向您发出邀请",
- "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.",
- "error-invitation-code-not-exist": "Invitation code doesn't exist"
+ "email-invite-register-text": "亲爱的 __user__,\n\n__inviter__ 邀请您加入 Wekan 进行协作。\n\n请访问下面的链接︰\n__url__\n\n您的的邀请码是︰\n__icode__\n\n非常感谢。",
+ "error-invitation-code-not-exist": "邀请码不存在"
} \ No newline at end of file
diff --git a/i18n/zh-TW.i18n.json b/i18n/zh-TW.i18n.json
index 88203b2b..d4d0be62 100644
--- a/i18n/zh-TW.i18n.json
+++ b/i18n/zh-TW.i18n.json
@@ -325,7 +325,6 @@
"welcome-list2": "進階",
"what-to-do": "要做什麼?",
"admin-panel": "Admin Panel",
- "system-setting": "System Setting",
"settings": "Settings",
"people": "People",
"registration": "Registration",
diff --git a/meta/screenshots/board-view.jpg b/meta/screenshots/board-view.jpg
deleted file mode 100644
index 6b8ffafe..00000000
--- a/meta/screenshots/board-view.jpg
+++ /dev/null
Binary files differ
diff --git a/meta/screenshots/board_view_01.png b/meta/screenshots/board_view_01.png
new file mode 100755
index 00000000..6151a17b
--- /dev/null
+++ b/meta/screenshots/board_view_01.png
Binary files differ
diff --git a/meta/screenshots/board_view_02.png b/meta/screenshots/board_view_02.png
new file mode 100755
index 00000000..2e745a7b
--- /dev/null
+++ b/meta/screenshots/board_view_02.png
Binary files differ
diff --git a/models/settings.js b/models/settings.js
index 0e6ab762..0c2da4d3 100644
--- a/models/settings.js
+++ b/models/settings.js
@@ -35,6 +35,9 @@ Settings.attachSchema(new SimpleSchema({
}));
Settings.helpers({
mailUrl () {
+ if (!this.mailServer.host) {
+ return null;
+ }
if (!this.mailServer.username && !this.mailServer.password) {
return `smtp://${this.mailServer.host}:${this.mailServer.port}/`;
}
@@ -69,7 +72,7 @@ if (Meteor.isServer) {
});
Settings.after.update((userId, doc, fieldNames) => {
// assign new values to mail-from & MAIL_URL in environment
- if (_.contains(fieldNames, 'mailServer')) {
+ if (_.contains(fieldNames, 'mailServer') && _.contains(fieldNames, 'host')) {
if (!doc.mailServer.username && !doc.mailServer.password) {
process.env.MAIL_URL = `smtp://${doc.mailServer.host}:${doc.mailServer.port}/`;
} else {
@@ -97,13 +100,16 @@ if (Meteor.isServer) {
url: FlowRouter.url('sign-up'),
};
const lang = author.getLanguage();
- Email.send({
- to: icode.email,
- from: Accounts.emailTemplates.from,
- subject: TAPi18n.__('email-invite-register-subject', params, lang),
- text: TAPi18n.__('email-invite-register-text', params, lang),
- });
+ if (Settings.findOne().mailUrl()) {
+ Email.send({
+ to: icode.email,
+ from: Accounts.emailTemplates.from,
+ subject: TAPi18n.__('email-invite-register-subject', params, lang),
+ text: TAPi18n.__('email-invite-register-text', params, lang),
+ });
+ }
} catch (e) {
+ InvitationCodes.remove(_id);
throw new Meteor.Error('email-fail', e.message);
}
}
diff --git a/models/users.js b/models/users.js
index f062df9d..edf1a203 100644
--- a/models/users.js
+++ b/models/users.js
@@ -91,6 +91,10 @@ Users.attachSchema(new SimpleSchema({
type: [String],
optional: true,
},
+ 'profile.icode': {
+ type: String,
+ optional: true,
+ },
services: {
type: Object,
optional: true,
@@ -379,24 +383,25 @@ if (Meteor.isServer) {
board.addMember(user._id);
user.addInvite(boardId);
- try {
- const params = {
- user: user.username,
- inviter: inviter.username,
- board: board.title,
- url: board.absoluteUrl(),
- };
- const lang = user.getLanguage();
- Email.send({
- to: user.emails[0].address.toLowerCase(),
- from: Accounts.emailTemplates.from,
- subject: TAPi18n.__('email-invite-subject', params, lang),
- text: TAPi18n.__('email-invite-text', params, lang),
- });
- } catch (e) {
- throw new Meteor.Error('email-fail', e.message);
+ if (Settings.findOne().mailUrl()) {
+ try {
+ const params = {
+ user: user.username,
+ inviter: inviter.username,
+ board: board.title,
+ url: board.absoluteUrl(),
+ };
+ const lang = user.getLanguage();
+ Email.send({
+ to: user.emails[0].address.toLowerCase(),
+ from: Accounts.emailTemplates.from,
+ subject: TAPi18n.__('email-invite-subject', params, lang),
+ text: TAPi18n.__('email-invite-text', params, lang),
+ });
+ } catch (e) {
+ throw new Meteor.Error('email-fail', e.message);
+ }
}
-
return { username: user.username, email: user.emails[0].address };
},
});
@@ -411,11 +416,12 @@ if (Meteor.isServer) {
return user;
}
- const iCode = options.profile.invitationcode | '';
-
- const invitationCode = InvitationCodes.findOne({code: iCode, valid:true});
+ if (!options || !options.profile) {
+ throw new Meteor.Error('error-invitation-code-blank', 'The invitation code is required');
+ }
+ const invitationCode = InvitationCodes.findOne({code: options.profile.invitationcode, email: options.email, valid: true});
if (!invitationCode) {
- throw new Meteor.Error('error-invitation-code-not-exist');
+ throw new Meteor.Error('error-invitation-code-not-exist', 'The invitation code doesn\'t exist');
}else{
user.profile = {icode: options.profile.invitationcode};
}
@@ -497,19 +503,21 @@ if (Meteor.isServer) {
//invite user to corresponding boards
const disableRegistration = Settings.findOne().disableRegistration;
if (disableRegistration) {
- const user = Users.findOne(doc._id);
- const invitationCode = InvitationCodes.findOne({code: user.profile.icode, valid:true});
+ const invitationCode = InvitationCodes.findOne({code: doc.profile.icode, valid:true});
if (!invitationCode) {
- throw new Meteor.Error('error-user-notCreated');
+ throw new Meteor.Error('error-invitation-code-not-exist');
}else{
invitationCode.boardsToBeInvited.forEach((boardId) => {
const board = Boards.findOne(boardId);
board.addMember(doc._id);
});
- user.profile = {invitedBoards: invitationCode.boardsToBeInvited};
+ if (!doc.profile) {
+ doc.profile = {};
+ }
+ doc.profile.invitedBoards = invitationCode.boardsToBeInvited;
+ Users.update(doc._id, {$set:{profile: doc.profile}});
InvitationCodes.update(invitationCode._id, {$set: {valid:false}});
}
}
});
}
-
diff --git a/package.json b/package.json
index 78b84ea8..b4fdfbbe 100644
--- a/package.json
+++ b/package.json
@@ -1,10 +1,10 @@
{
"name": "wekan",
- "version": "0.11.1-rc1",
+ "version": "0.17.0",
"description": "The open-source Trello-like kanban",
"private": true,
"scripts": {
- "lint": "eslint .",
+ "lint": "eslint --ignore-pattern 'packages/*' .",
"test": "npm run --silent lint"
},
"repository": {
@@ -15,7 +15,7 @@
"bugs": {
"url": "https://github.com/wekan/wekan/issues"
},
- "homepage": "https://github.com/wekan/wekan",
+ "homepage": "https://wekan.github.io",
"devDependencies": {
"eslint": "^2.0.0"
},
diff --git a/packages/kadira:flow-router b/packages/kadira:flow-router
new file mode 160000
+Subproject da8154738eddfe43a639bd6b5f400518a4142db
diff --git a/sandstorm-pkgdef.capnp b/sandstorm-pkgdef.capnp
index b70b3be6..9c5d5438 100644
--- a/sandstorm-pkgdef.capnp
+++ b/sandstorm-pkgdef.capnp
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
appTitle = (defaultText = "Wekan"),
# The name of the app as it is displayed to the user.
- appVersion = 17,
+ appVersion = 19,
# Increment this for every release.
- appMarketingVersion = (defaultText = "0.11.0~2016-11-28"),
+ appMarketingVersion = (defaultText = "0.16.0~2017-03-21"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
@@ -57,8 +57,8 @@ const pkgdef :Spk.PackageDefinition = (
market = (svg = embed "meta/icons/wekan-150.svg"),
),
- website = "https://wekan.io",
- codeUrl = "https://github.com/wefork/wekan",
+ website = "https://wekan.github.io",
+ codeUrl = "https://github.com/wekan/wekan",
license = (openSource = mit),
categories = [productivity, office],
@@ -76,11 +76,15 @@ const pkgdef :Spk.PackageDefinition = (
screenshots = [
(
- width = 512,
- height = 330,
- jpeg = embed "meta/screenshots/board-view.jpg"
+ width = 1920,
+ height = 1133,
+ png = embed "meta/screenshots/board_view_01.png"
+ ),
+ (
+ width = 1920,
+ height = 1133,
+ png = embed "meta/screenshots/board_view_02.png"
),
- # XXX The screenshots should have a standard width and height.
],
changeLog = (
diff --git a/server/notifications/email.js b/server/notifications/email.js
index 2af6381e..cee874d9 100644
--- a/server/notifications/email.js
+++ b/server/notifications/email.js
@@ -26,15 +26,17 @@ Meteor.startup(() => {
const text = texts.join('\n\n');
user.clearEmailBuffer();
- try {
- Email.send({
- to: user.emails[0].address.toLowerCase(),
- from: Accounts.emailTemplates.from,
- subject: TAPi18n.__('act-activity-notify', {}, user.getLanguage()),
- text,
- });
- } catch (e) {
- return;
+ if (Settings.findOne().mailUrl()) {
+ try {
+ Email.send({
+ to: user.emails[0].address.toLowerCase(),
+ from: Accounts.emailTemplates.from,
+ subject: TAPi18n.__('act-activity-notify', {}, user.getLanguage()),
+ text,
+ });
+ } catch (e) {
+ return;
+ }
}
}, 30000);
});