Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2b24ebf539 | ||
|
|
13d5015fc3 | ||
|
|
13cf1a687e | ||
|
|
d2f434879c | ||
|
|
c3ffaa7ce2 | ||
|
|
2955c167c2 | ||
|
|
81d1bf6d27 | ||
|
|
46ce345203 | ||
|
|
363e69f01c | ||
|
|
9b0875169b | ||
|
|
e616247254 | ||
|
|
cc5f22df79 | ||
|
|
3448467953 | ||
|
|
74dbb96d85 | ||
|
|
d2cfe76a28 | ||
|
|
045e9db7b8 | ||
|
|
460b1d3a66 | ||
|
|
a463f2a855 | ||
|
|
8b3399b8f6 | ||
|
|
ef59d6dcb9 | ||
|
|
1b429b3f99 | ||
|
|
5098f7dee1 | ||
|
|
c509aaf246 | ||
|
|
d7333dec84 | ||
|
|
9d97494cfc | ||
|
|
acf9e7caea | ||
|
|
f6d000b26a | ||
|
|
ba5b35d0cc | ||
|
|
1eae8222c4 | ||
|
|
9b5a519bc7 | ||
|
|
b8a209249e | ||
|
|
ecc1b69f5c | ||
|
|
6253bc6c14 | ||
|
|
7768a4c1ba | ||
|
|
cd1bc7a695 | ||
|
|
42f45f9a83 | ||
|
|
d081eb0a2e | ||
|
|
504533991b | ||
|
|
44a5976b85 | ||
|
|
ac65b93b43 | ||
|
|
e9d27c521e |
No files matched your search
@@ -6,7 +6,7 @@ ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ENV \
|
||||
DEBUG=false \
|
||||
NODE_VERSION=v12.18.4 \
|
||||
NODE_VERSION=v12.19.0 \
|
||||
METEOR_RELEASE=1.10.2 \
|
||||
USE_EDGE=false \
|
||||
METEOR_EDGE=1.5-beta.17 \
|
||||
|
||||
@@ -81,7 +81,7 @@ parts:
|
||||
wekan:
|
||||
source: .
|
||||
plugin: nodejs
|
||||
node-engine: 12.18.4
|
||||
node-engine: 12.19.0
|
||||
node-packages:
|
||||
- node-gyp
|
||||
- node-pre-gyp
|
||||
|
||||
@@ -83,7 +83,7 @@ parts:
|
||||
wekan:
|
||||
source: .
|
||||
plugin: nodejs
|
||||
node-engine: 12.18.4
|
||||
node-engine: 12.19.0
|
||||
node-packages:
|
||||
- node-gyp
|
||||
- node-pre-gyp
|
||||
|
||||
+5
-5
@@ -6,8 +6,8 @@
|
||||
meteor-base@1.4.0
|
||||
|
||||
# Build system
|
||||
ecmascript@0.14.3
|
||||
standard-minifier-css@1.6.1
|
||||
ecmascript@0.15.0-beta200.3
|
||||
standard-minifier-css@1.7.0-beta200.3
|
||||
standard-minifier-js@2.6.0
|
||||
mquandalle:jade
|
||||
coffeescript@2.4.1!
|
||||
@@ -72,8 +72,7 @@ simple:rest-accounts-password
|
||||
useraccounts:core
|
||||
email@2.0.0
|
||||
horka:swipebox
|
||||
dynamic-import@0.5.2
|
||||
staringatlights:fast-render
|
||||
dynamic-import@0.6.0-beta200.3
|
||||
|
||||
accounts-password@1.6.2
|
||||
cfs:gridfs
|
||||
@@ -95,7 +94,6 @@ konecty:mongo-counter
|
||||
percolate:synced-cron
|
||||
easylogic:summernote
|
||||
cfs:filesystem
|
||||
ostrio:cookies
|
||||
tmeasday:check-npm-versions
|
||||
steffo:meteor-accounts-saml
|
||||
rajit:bootstrap3-datepicker-fi
|
||||
@@ -146,3 +144,5 @@ rajit:bootstrap3-datepicker-uk
|
||||
rajit:bootstrap3-datepicker-vi
|
||||
rajit:bootstrap3-datepicker-zh-cn
|
||||
rajit:bootstrap3-datepicker-zh-tw
|
||||
hot-module-replacement
|
||||
staringatlights:fast-render
|
||||
+1
-1
@@ -1 +1 @@
|
||||
METEOR@1.11.1
|
||||
METEOR@2.0-beta.3
|
||||
+11
-10
@@ -10,8 +10,8 @@ aldeed:simple-schema@1.5.4
|
||||
allow-deny@1.1.0
|
||||
arillo:flow-router-helpers@0.5.2
|
||||
audit-argument-checks@1.0.7
|
||||
autoupdate@1.6.0
|
||||
babel-compiler@7.5.3
|
||||
autoupdate@1.7.0-beta200.3
|
||||
babel-compiler@7.6.0-beta200.3
|
||||
babel-runtime@1.5.0
|
||||
base64@1.0.12
|
||||
binary-heap@1.0.11
|
||||
@@ -55,9 +55,9 @@ ddp-rate-limiter@1.0.9
|
||||
ddp-server@2.3.2
|
||||
deps@1.0.12
|
||||
diff-sequence@1.1.1
|
||||
dynamic-import@0.5.3
|
||||
dynamic-import@0.6.0-beta200.3
|
||||
easylogic:summernote@0.8.8
|
||||
ecmascript@0.14.3
|
||||
ecmascript@0.15.0-beta200.3
|
||||
ecmascript-runtime@0.7.0
|
||||
ecmascript-runtime-client@0.11.0
|
||||
ecmascript-runtime-server@0.10.0
|
||||
@@ -70,6 +70,7 @@ fortawesome:fontawesome@4.7.0
|
||||
geojson-utils@1.0.10
|
||||
horka:swipebox@1.0.2
|
||||
hot-code-push@1.0.4
|
||||
hot-module-replacement@0.2.0-beta200.3
|
||||
html-tools@1.0.11
|
||||
htmljs@1.0.11
|
||||
http@1.4.2
|
||||
@@ -107,9 +108,10 @@ minifiers@1.1.8-faster-rebuild.0
|
||||
minimongo@1.6.0
|
||||
mobile-status-bar@1.1.0
|
||||
modern-browsers@0.1.5
|
||||
modules@0.15.0
|
||||
modules@0.16.0-beta200.3
|
||||
modules-runtime@0.12.0
|
||||
momentjs:moment@2.29.0
|
||||
modules-runtime-hot@0.13.0-beta200.3
|
||||
momentjs:moment@2.29.1
|
||||
mongo@1.10.0
|
||||
mongo-decimal@0.1.1
|
||||
mongo-dev-server@1.1.0
|
||||
@@ -132,7 +134,6 @@ oauth2@1.3.0
|
||||
observe-sequence@1.0.16
|
||||
ongoworks:speakingurl@1.1.0
|
||||
ordered-dict@1.1.0
|
||||
ostrio:cookies@2.6.0
|
||||
peerlibrary:assert@0.3.0
|
||||
peerlibrary:base-component@0.16.0
|
||||
peerlibrary:blaze-components@0.15.1
|
||||
@@ -214,7 +215,7 @@ softwarerero:accounts-t9n@1.3.11
|
||||
spacebars@1.0.15
|
||||
spacebars-compiler@1.1.3
|
||||
srp@1.1.0
|
||||
standard-minifier-css@1.6.1
|
||||
standard-minifier-css@1.7.0-beta200.3
|
||||
standard-minifier-js@2.6.0
|
||||
staringatlights:fast-render@3.3.0
|
||||
staringatlights:inject-data@2.3.0
|
||||
@@ -235,8 +236,8 @@ useraccounts:core@1.14.2
|
||||
useraccounts:flow-routing@1.14.2
|
||||
useraccounts:unstyled@1.14.2
|
||||
verron:autosize@3.0.8
|
||||
webapp@1.9.1
|
||||
webapp-hashing@1.0.9
|
||||
webapp@1.10.0-beta200.3
|
||||
webapp-hashing@1.1.0-beta200.3
|
||||
wekan-accounts-cas@0.1.0
|
||||
wekan-accounts-oidc@1.0.10
|
||||
wekan-ldap@0.0.2
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@ sudo: required
|
||||
|
||||
env:
|
||||
TRAVIS_DOCKER_COMPOSE_VERSION: 1.24.0
|
||||
TRAVIS_NODE_VERSION: 12.18.4
|
||||
TRAVIS_NODE_VERSION: 12.19.0
|
||||
TRAVIS_NPM_VERSION: latest
|
||||
|
||||
before_install:
|
||||
|
||||
@@ -1,3 +1,70 @@
|
||||
# v4.45 2020-10-30 Wekan release
|
||||
|
||||
This release fixes the following bugs:
|
||||
|
||||
- [Fix can not upload and download files, by changing back to Node.js 12.19.0 and adding
|
||||
fast-render](https://github.com/wekan/wekan/commit/d2f434879caa20d69651f23fa2124074f55c9893).
|
||||
Current file storing to MongoDB code was not yet compatible with newer Node.js.
|
||||
Thanks to eskogito and xet7.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
# v4.44 2020-10-28 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
- For development, [add Meteor 2.0 Hot Module Replacement](https://github.com/wekan/wekan/commit/e6162472548d9dff497dd76e82d23044f779f757).
|
||||
More info at https://forums.meteor.com/t/meteor-2-0-beta-with-hot-module-replacement-hmr/54313/8 .
|
||||
Thanks to zodern.
|
||||
|
||||
and adds the following updates:
|
||||
|
||||
- [Upgrade to Node.js 14.15.0](https://github.com/wekan/wekan/commit/045e9db7b8f0de852ef4486cb1ad200d6ca7296d).
|
||||
Thanks to Node.js and Meteor.js developers.
|
||||
- [Upgrade to Meteor 2.0-beta.3. Removed fast-render and ostrio:cookies](https://github.com/wekan/wekan/commit/a463f2a855498935db5b66e5fad446ce465adab1).
|
||||
Thanks to Meteor.js developers and xet7.
|
||||
|
||||
and fixes the following bugs:
|
||||
|
||||
- [Fixed: With ORACLE_OIM_ENABLED, allow setting OAUTH2_REQUEST_PERMISSIONS with environment variable](https://github.com/wekan/wekan/commit/1b429b3f99c32840ebb0ff9a29015aa8c28ec644).
|
||||
Thanks to xet7.
|
||||
- [Changed public board changing Swimlanes/Lists/Calendar view and changing Hide minicard label text
|
||||
from using cookies to using browser localStorage](https://github.com/wekan/wekan/commit/460b1d3a664b648bc03c40422b9d175401e229c1),
|
||||
to remove some errors from browser inspect console.
|
||||
Thanks to xet7.
|
||||
- [Fix Modern theme board canvas background](https://github.com/wekan/wekan/pull/3312).
|
||||
Thanks to helioguardabaxo.
|
||||
- [Fix: 1) Expose moving cards on mobile to workers. 2) Hide the move to another board functionality
|
||||
in the submenu (only from the worker) so that the worker is still constrained to a single
|
||||
board](https://github.com/wekan/wekan/pull/3315).
|
||||
Thanks to jtbairdsr.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
# v4.43 2020-10-20 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
- [Allow more than one assignee](https://github.com/wekan/wekan/commit/acf9e7caeaf59e1030ae1014c0cb2fb7dae27147).
|
||||
Thanks to xet7.
|
||||
|
||||
and fixes the following bugs:
|
||||
|
||||
- [Fixed CSV/TSV export](https://github.com/wekan/wekan/commit/d7333dec84328ca191f430d96aaf9e550840631a).
|
||||
Please test and report any problems [at issue #3173](https://github.com/wekan/wekan/issues/3173).
|
||||
Thanks to xet7.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
# v4.42 2020-10-14 Wekan release
|
||||
|
||||
This release adds the following updates:
|
||||
|
||||
- [Upgrade to Node.js 12.19.0](https://github.com/wekan/wekan/commit/b8a209249e968b90917af319adf24fedf2157396).
|
||||
Thanks to Node.js developers.
|
||||
|
||||
Thanks to above GitHub users for their contributions and translators for their translations.
|
||||
|
||||
# v4.41 2020-10-03 Wekan release
|
||||
|
||||
This release adds the following new features:
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@ ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ENV BUILD_DEPS="apt-utils libarchive-tools gnupg gosu wget curl bzip2 g++ build-essential git ca-certificates python3" \
|
||||
DEBUG=false \
|
||||
NODE_VERSION=v12.18.4 \
|
||||
NODE_VERSION=v12.19.0 \
|
||||
METEOR_RELEASE=1.10.2 \
|
||||
USE_EDGE=false \
|
||||
METEOR_EDGE=1.5-beta.17 \
|
||||
|
||||
+2
-2
@@ -4,7 +4,7 @@ FROM amd64/alpine:3.7 AS builder
|
||||
ENV QEMU_VERSION=v4.2.0-6 \
|
||||
QEMU_ARCHITECTURE=aarch64 \
|
||||
NODE_ARCHITECTURE=linux-arm64 \
|
||||
NODE_VERSION=v12.18.4 \
|
||||
NODE_VERSION=v12.19.0 \
|
||||
WEKAN_VERSION=3.96 \
|
||||
WEKAN_ARCHITECTURE=arm64
|
||||
|
||||
@@ -40,7 +40,7 @@ LABEL maintainer="wekan"
|
||||
# Set the environment variables (defaults where required)
|
||||
ENV QEMU_ARCHITECTURE=aarch64 \
|
||||
NODE_ARCHITECTURE=linux-arm64 \
|
||||
NODE_VERSION=v12.18.4 \
|
||||
NODE_VERSION=v12.19.0 \
|
||||
NODE_ENV=production \
|
||||
NPM_VERSION=latest \
|
||||
WITH_API=true \
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
|
||||
appVersion: "v4.41.0"
|
||||
appVersion: "v4.45.0"
|
||||
files:
|
||||
userUploads:
|
||||
- README.md
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import { Cookies } from 'meteor/ostrio:cookies';
|
||||
const cookies = new Cookies();
|
||||
const subManager = new SubsManager();
|
||||
const { calculateIndex } = Utils;
|
||||
const swimlaneWhileSortingHeight = 150;
|
||||
@@ -197,7 +195,7 @@ BlazeComponent.extendComponent({
|
||||
if (currentUser) {
|
||||
showDesktopDragHandles = (currentUser.profile || {})
|
||||
.showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
showDesktopDragHandles = true;
|
||||
} else {
|
||||
showDesktopDragHandles = false;
|
||||
@@ -237,7 +235,9 @@ BlazeComponent.extendComponent({
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).boardView === 'board-view-swimlanes';
|
||||
} else {
|
||||
return cookies.get('boardView') === 'board-view-swimlanes';
|
||||
return (
|
||||
window.localStorage.getItem('boardView') === 'board-view-swimlanes'
|
||||
);
|
||||
}
|
||||
},
|
||||
|
||||
@@ -246,7 +246,7 @@ BlazeComponent.extendComponent({
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).boardView === 'board-view-lists';
|
||||
} else {
|
||||
return cookies.get('boardView') === 'board-view-lists';
|
||||
return window.localStorage.getItem('boardView') === 'board-view-lists';
|
||||
}
|
||||
},
|
||||
|
||||
@@ -255,7 +255,7 @@ BlazeComponent.extendComponent({
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).boardView === 'board-view-cal';
|
||||
} else {
|
||||
return cookies.get('boardView') === 'board-view-cal';
|
||||
return window.localStorage.getItem('boardView') === 'board-view-cal';
|
||||
}
|
||||
},
|
||||
|
||||
@@ -417,7 +417,7 @@ BlazeComponent.extendComponent({
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).boardView === 'board-view-cal';
|
||||
} else {
|
||||
return cookies.get('boardView') === 'board-view-cal';
|
||||
return window.localStorage.getItem('boardView') === 'board-view-cal';
|
||||
}
|
||||
},
|
||||
}).register('calendarView');
|
||||
@@ -602,9 +602,12 @@ setBoardClear(color1,color2)
|
||||
height: 21px
|
||||
background: #f7f7f7
|
||||
|
||||
.board-canvas
|
||||
background: #f5f5f5
|
||||
|
||||
/* Swimlane */
|
||||
.swimlane
|
||||
background: #f5f5f5
|
||||
background: none
|
||||
|
||||
.swimlane .swimlane-header-wrap .swimlane-header
|
||||
font-family: Poppins
|
||||
|
||||
@@ -381,17 +381,18 @@ template(name="cardDetailsActionsPopup")
|
||||
a.js-move-card-to-bottom
|
||||
i.fa.fa-arrow-down
|
||||
| {{_ 'moveCardToBottom-title'}}
|
||||
unless currentUser.isWorker
|
||||
hr
|
||||
ul.pop-over-list
|
||||
li
|
||||
a.js-move-card
|
||||
i.fa.fa-arrow-right
|
||||
| {{_ 'moveCardPopup-title'}}
|
||||
ul.pop-over-list
|
||||
li
|
||||
a.js-move-card
|
||||
i.fa.fa-arrow-right
|
||||
| {{_ 'moveCardPopup-title'}}
|
||||
unless currentUser.isWorker
|
||||
li
|
||||
a.js-copy-card
|
||||
i.fa.fa-copy
|
||||
| {{_ 'copyCardPopup-title'}}
|
||||
unless currentUser.isWorker
|
||||
hr
|
||||
ul.pop-over-list
|
||||
li
|
||||
@@ -430,13 +431,14 @@ template(name="copyChecklistToManyCardsPopup")
|
||||
+boardsAndLists
|
||||
|
||||
template(name="boardsAndLists")
|
||||
label {{_ 'boards'}}:
|
||||
select.js-select-boards(autofocus)
|
||||
each boards
|
||||
if $eq _id currentBoard._id
|
||||
option(value="{{_id}}" selected) {{_ 'current'}}
|
||||
else
|
||||
option(value="{{_id}}") {{title}}
|
||||
unless currentUser.isWorker
|
||||
label {{_ 'boards'}}:
|
||||
select.js-select-boards(autofocus)
|
||||
each boards
|
||||
if $eq _id currentBoard._id
|
||||
option(value="{{_id}}" selected) {{_ 'current'}}
|
||||
else
|
||||
option(value="{{_id}}") {{title}}
|
||||
|
||||
label {{_ 'swimlanes'}}:
|
||||
select.js-select-swimlanes
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import { Cookies } from 'meteor/ostrio:cookies';
|
||||
const cookies = new Cookies();
|
||||
// Template.cards.events({
|
||||
// 'click .member': Popup.open('cardMember')
|
||||
// });
|
||||
@@ -34,10 +32,10 @@ BlazeComponent.extendComponent({
|
||||
},
|
||||
{
|
||||
'click .js-toggle-minicard-label-text'() {
|
||||
if (cookies.has('hiddenMinicardLabelText')) {
|
||||
cookies.remove('hiddenMinicardLabelText'); //true
|
||||
if (window.localStorage.getItem('hiddenMinicardLabelText')) {
|
||||
window.localStorage.removeItem('hiddenMinicardLabelText'); //true
|
||||
} else {
|
||||
cookies.set('hiddenMinicardLabelText', 'true'); //true
|
||||
window.localStorage.setItem('hiddenMinicardLabelText', 'true'); //true
|
||||
}
|
||||
},
|
||||
},
|
||||
@@ -50,7 +48,7 @@ Template.minicard.helpers({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
@@ -60,7 +58,7 @@ Template.minicard.helpers({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).hiddenMinicardLabelText;
|
||||
} else if (cookies.has('hiddenMinicardLabelText')) {
|
||||
} else if (window.localStorage.getItem('hiddenMinicardLabelText')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import { Cookies } from 'meteor/ostrio:cookies';
|
||||
const cookies = new Cookies();
|
||||
const { calculateIndex } = Utils;
|
||||
|
||||
BlazeComponent.extendComponent({
|
||||
@@ -124,7 +122,7 @@ BlazeComponent.extendComponent({
|
||||
if (currentUser) {
|
||||
showDesktopDragHandles = (currentUser.profile || {})
|
||||
.showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
showDesktopDragHandles = true;
|
||||
} else {
|
||||
showDesktopDragHandles = false;
|
||||
@@ -185,7 +183,7 @@ Template.list.helpers({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import { Cookies } from 'meteor/ostrio:cookies';
|
||||
const cookies = new Cookies();
|
||||
let listsColors;
|
||||
Meteor.startup(() => {
|
||||
listsColors = Lists.simpleSchema()._schema.color.allowedValues;
|
||||
@@ -110,7 +108,7 @@ Template.listHeader.helpers({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
||||
@@ -366,14 +366,14 @@ template(name="exportBoard")
|
||||
a.download-json-link(href="{{exportUrl}}", download="{{exportJsonFilename}}")
|
||||
i.fa.fa-share-alt
|
||||
| {{_ 'export-board-json'}}
|
||||
//li
|
||||
// a(href="{{exportCsvUrl}}", download="{{exportCsvFilename}}")
|
||||
// i.fa.fa-share-alt
|
||||
// | {{_ 'export-board-csv'}}
|
||||
//li
|
||||
// a(href="{{exportTsvUrl}}", download="{{exportTsvFilename}}")
|
||||
// i.fa.fa-share-alt
|
||||
// | {{_ 'export-board-tsv'}}
|
||||
li
|
||||
a(href="{{exportCsvUrl}}", download="{{exportCsvFilename}}")
|
||||
i.fa.fa-share-alt
|
||||
| {{_ 'export-board-csv'}}
|
||||
li
|
||||
a(href="{{exportTsvUrl}}", download="{{exportTsvFilename}}")
|
||||
i.fa.fa-share-alt
|
||||
| {{_ 'export-board-tsv'}}
|
||||
li
|
||||
a.html-export-board
|
||||
i.fa.fa-archive
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import { Cookies } from 'meteor/ostrio:cookies';
|
||||
const cookies = new Cookies();
|
||||
Sidebar = null;
|
||||
|
||||
const defaultView = 'home';
|
||||
@@ -112,10 +110,12 @@ BlazeComponent.extendComponent({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
Meteor.call('toggleMinicardLabelText');
|
||||
} else if (cookies.has('hiddenMinicardLabelText')) {
|
||||
cookies.remove('hiddenMinicardLabelText');
|
||||
} else if (window.localStorage.getItem('hiddenMinicardLabelText')) {
|
||||
window.localStorage.removeItem('hiddenMinicardLabelText');
|
||||
location.reload();
|
||||
} else {
|
||||
cookies.set('hiddenMinicardLabelText', 'true');
|
||||
window.localStorage.setItem('hiddenMinicardLabelText', 'true');
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
'click .js-shortcuts'() {
|
||||
@@ -133,7 +133,7 @@ Template.homeSidebar.helpers({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).hiddenMinicardLabelText;
|
||||
} else if (cookies.has('hiddenMinicardLabelText')) {
|
||||
} else if (window.localStorage.getItem('hiddenMinicardLabelText')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import { Cookies } from 'meteor/ostrio:cookies';
|
||||
const cookies = new Cookies();
|
||||
const { calculateIndexData } = Utils;
|
||||
|
||||
let swimlaneColors;
|
||||
@@ -35,7 +33,7 @@ Template.swimlaneHeader.helpers({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import { Cookies } from 'meteor/ostrio:cookies';
|
||||
const cookies = new Cookies();
|
||||
const { calculateIndex } = Utils;
|
||||
|
||||
function currentListIsInThisSwimlane(swimlaneId) {
|
||||
@@ -102,7 +100,7 @@ function initSortable(boardComponent, $listsDom) {
|
||||
if (currentUser) {
|
||||
showDesktopDragHandles = (currentUser.profile || {})
|
||||
.showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
showDesktopDragHandles = true;
|
||||
} else {
|
||||
showDesktopDragHandles = false;
|
||||
@@ -178,7 +176,7 @@ BlazeComponent.extendComponent({
|
||||
if (currentUser) {
|
||||
showDesktopDragHandles = (currentUser.profile || {})
|
||||
.showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
showDesktopDragHandles = true;
|
||||
} else {
|
||||
showDesktopDragHandles = false;
|
||||
@@ -269,7 +267,7 @@ Template.swimlane.helpers({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
import { Cookies } from 'meteor/ostrio:cookies';
|
||||
const cookies = new Cookies();
|
||||
|
||||
Template.headerUserBar.events({
|
||||
'click .js-open-header-member-menu': Popup.open('memberMenu'),
|
||||
'click .js-change-avatar': Popup.open('changeAvatar'),
|
||||
@@ -200,7 +197,7 @@ Template.changeSettingsPopup.helpers({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).showDesktopDragHandles;
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
@@ -210,7 +207,7 @@ Template.changeSettingsPopup.helpers({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).hasHiddenSystemMessages;
|
||||
} else if (cookies.has('hasHiddenSystemMessages')) {
|
||||
} else if (window.localStorage.getItem('hasHiddenSystemMessages')) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
@@ -221,7 +218,7 @@ Template.changeSettingsPopup.helpers({
|
||||
if (currentUser) {
|
||||
return Meteor.user().getLimitToShowCardsCount();
|
||||
} else {
|
||||
return cookies.get('limitToShowCardsCount');
|
||||
return window.localStorage.getItem('limitToShowCardsCount');
|
||||
}
|
||||
},
|
||||
weekDays(startDay) {
|
||||
@@ -242,7 +239,7 @@ Template.changeSettingsPopup.helpers({
|
||||
if (currentUser) {
|
||||
return currentUser.getStartDayOfWeek();
|
||||
} else {
|
||||
return cookies.get('startDayOfWeek');
|
||||
return window.localStorage.getItem('startDayOfWeek');
|
||||
}
|
||||
},
|
||||
});
|
||||
@@ -252,20 +249,20 @@ Template.changeSettingsPopup.events({
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
Meteor.call('toggleDesktopDragHandles');
|
||||
} else if (cookies.has('showDesktopDragHandles')) {
|
||||
cookies.remove('showDesktopDragHandles');
|
||||
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
|
||||
window.localStorage.removeItem('showDesktopDragHandles');
|
||||
} else {
|
||||
cookies.set('showDesktopDragHandles', 'true');
|
||||
window.localStorage.setItem('showDesktopDragHandles', 'true');
|
||||
}
|
||||
},
|
||||
'click .js-toggle-system-messages'() {
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
Meteor.call('toggleSystemMessages');
|
||||
} else if (cookies.has('hasHiddenSystemMessages')) {
|
||||
cookies.remove('hasHiddenSystemMessages');
|
||||
} else if (window.localStorage.getItem('hasHiddenSystemMessages')) {
|
||||
window.localStorage.removeItem('hasHiddenSystemMessages');
|
||||
} else {
|
||||
cookies.set('hasHiddenSystemMessages', 'true');
|
||||
window.localStorage.setItem('hasHiddenSystemMessages', 'true');
|
||||
}
|
||||
},
|
||||
'click .js-apply-user-settings'(event, templateInstance) {
|
||||
@@ -283,14 +280,14 @@ Template.changeSettingsPopup.events({
|
||||
if (currentUser) {
|
||||
Meteor.call('changeLimitToShowCardsCount', minLimit);
|
||||
} else {
|
||||
cookies.set('limitToShowCardsCount', minLimit);
|
||||
window.localStorage.setItem('limitToShowCardsCount', minLimit);
|
||||
}
|
||||
}
|
||||
if (!isNaN(startDay)) {
|
||||
if (currentUser) {
|
||||
Meteor.call('changeStartDayOfWeek', startDay);
|
||||
} else {
|
||||
cookies.set('startDayOfWeek', startDay);
|
||||
window.localStorage.setItem('startDayOfWeek', startDay);
|
||||
}
|
||||
}
|
||||
Popup.back();
|
||||
|
||||
+14
-13
@@ -1,43 +1,44 @@
|
||||
import { Cookies } from 'meteor/ostrio:cookies';
|
||||
const cookies = new Cookies();
|
||||
|
||||
Utils = {
|
||||
setBoardView(view) {
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
Meteor.user().setBoardView(view);
|
||||
} else if (view === 'board-view-swimlanes') {
|
||||
cookies.set('boardView', 'board-view-swimlanes'); //true
|
||||
window.localStorage.setItem('boardView', 'board-view-swimlanes'); //true
|
||||
location.reload();
|
||||
} else if (view === 'board-view-lists') {
|
||||
cookies.set('boardView', 'board-view-lists'); //true
|
||||
window.localStorage.setItem('boardView', 'board-view-lists'); //true
|
||||
location.reload();
|
||||
} else if (view === 'board-view-cal') {
|
||||
cookies.set('boardView', 'board-view-cal'); //true
|
||||
window.localStorage.setItem('boardView', 'board-view-cal'); //true
|
||||
location.reload();
|
||||
} else {
|
||||
cookies.set('boardView', 'board-view-swimlanes'); //true
|
||||
window.localStorage.setItem('boardView', 'board-view-swimlanes'); //true
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
|
||||
unsetBoardView() {
|
||||
cookies.remove('boardView');
|
||||
cookies.remove('collapseSwimlane');
|
||||
window.localStorage.removeItem('boardView');
|
||||
window.localStorage.removeItem('collapseSwimlane');
|
||||
},
|
||||
|
||||
boardView() {
|
||||
currentUser = Meteor.user();
|
||||
if (currentUser) {
|
||||
return (currentUser.profile || {}).boardView;
|
||||
} else if (cookies.get('boardView') === 'board-view-swimlanes') {
|
||||
} else if (
|
||||
window.localStorage.getItem('boardView') === 'board-view-swimlanes'
|
||||
) {
|
||||
return 'board-view-swimlanes';
|
||||
} else if (cookies.get('boardView') === 'board-view-lists') {
|
||||
} else if (
|
||||
window.localStorage.getItem('boardView') === 'board-view-lists'
|
||||
) {
|
||||
return 'board-view-lists';
|
||||
} else if (cookies.get('boardView') === 'board-view-cal') {
|
||||
} else if (window.localStorage.getItem('boardView') === 'board-view-cal') {
|
||||
return 'board-view-cal';
|
||||
} else {
|
||||
cookies.set('boardView', 'board-view-swimlanes'); //true
|
||||
window.localStorage.setItem('boardView', 'board-view-swimlanes'); //true
|
||||
location.reload();
|
||||
return 'board-view-swimlanes';
|
||||
}
|
||||
|
||||
+4
-4
@@ -337,9 +337,9 @@
|
||||
"filter-cards": "Karten oder Listen filtern",
|
||||
"list-filter-label": "Liste nach Titel filtern",
|
||||
"filter-clear": "Filter entfernen",
|
||||
"filter-labels-label": "Filter by label",
|
||||
"filter-labels-label": "Nach Label filtern",
|
||||
"filter-no-label": "Kein Label",
|
||||
"filter-member-label": "Filter by member",
|
||||
"filter-member-label": "Nach Nutzer filtern",
|
||||
"filter-no-member": "Kein Mitglied",
|
||||
"filter-assignee-label": "Filter by assignee",
|
||||
"filter-no-assignee": "Nicht zugewiesen",
|
||||
@@ -350,7 +350,7 @@
|
||||
"filter-on": "Filter ist aktiv",
|
||||
"filter-on-desc": "Sie filtern die Karten in diesem Board. Klicken Sie, um den Filter zu bearbeiten.",
|
||||
"filter-to-selection": "Ergebnisse auswählen",
|
||||
"other-filters-label": "Other Filters",
|
||||
"other-filters-label": "Andere Filter",
|
||||
"advanced-filter-label": "Erweiterter Filter",
|
||||
"advanced-filter-description": "Der erweiterte Filter erlaubt die Eingabe von Zeichenfolgen, die folgende Operatoren enthalten: == != <= >= && || ( ). Ein Leerzeichen wird als Trennzeichen zwischen den Operatoren verwendet. Sie können nach allen benutzerdefinierten Feldern filtern, indem Sie deren Namen und Werte eingeben. Zum Beispiel: Feld1 == Wert1. Hinweis: Wenn Felder oder Werte Leerzeichen enthalten, müssen Sie sie in einfache Anführungszeichen setzen. Zum Beispiel: 'Feld 1' == 'Wert 1'. Um einzelne Steuerzeichen (' \\/) zu überspringen, können Sie \\ verwenden. Zum Beispiel: Feld1 == Ich bin\\'s. Sie können außerdem mehrere Bedingungen kombinieren. Zum Beispiel: F1 == W1 || F1 == W2. Normalerweise werden alle Operatoren von links nach rechts interpretiert. Sie können die Reihenfolge ändern, indem Sie Klammern setzen. Zum Beispiel: F1 == W1 && ( F2 == W2 || F2 == W3 ). Sie können Textfelder auch mithilfe regulärer Ausdrücke durchsuchen: F1 == /Tes.*/i",
|
||||
"fullname": "Vollständiger Name",
|
||||
@@ -404,7 +404,7 @@
|
||||
"list-select-cards": "Alle Karten in dieser Liste auswählen",
|
||||
"set-color-list": "Lege Farbe fest",
|
||||
"listActionPopup-title": "Listenaktionen",
|
||||
"settingsUserPopup-title": "User Settings",
|
||||
"settingsUserPopup-title": "Benutzereinstellungen",
|
||||
"swimlaneActionPopup-title": "Swimlaneaktionen",
|
||||
"swimlaneAddPopup-title": "Swimlane unterhalb einfügen",
|
||||
"listImportCardPopup-title": "Eine Trello-Karte importieren",
|
||||
|
||||
@@ -359,7 +359,7 @@
|
||||
"headerBarCreateBoardPopup-title": "Crear tablero",
|
||||
"home": "Inicio",
|
||||
"import": "Importar",
|
||||
"impersonate-user": "Impersonate user",
|
||||
"impersonate-user": "Impersonar usuario",
|
||||
"link": "Enlace",
|
||||
"import-board": "importar un tablero",
|
||||
"import-board-c": "Importar un tablero",
|
||||
@@ -404,7 +404,7 @@
|
||||
"list-select-cards": "Seleccionar todas las tarjetas de esta lista",
|
||||
"set-color-list": "Cambiar el color",
|
||||
"listActionPopup-title": "Acciones de la lista",
|
||||
"settingsUserPopup-title": "User Settings",
|
||||
"settingsUserPopup-title": "Configuración de usuario",
|
||||
"swimlaneActionPopup-title": "Acciones del carril «swimlane»",
|
||||
"swimlaneAddPopup-title": "Agregar un carril «swimlane» debajo",
|
||||
"listImportCardPopup-title": "Importar una tarjeta de Trello",
|
||||
@@ -514,11 +514,11 @@
|
||||
"upload": "Cargar",
|
||||
"upload-avatar": "Cargar un avatar",
|
||||
"uploaded-avatar": "Avatar cargado",
|
||||
"custom-top-left-corner-logo-image-url": "Custom Top Left Corner Logo Image URL",
|
||||
"custom-top-left-corner-logo-link-url": "Custom Top Left Corner Logo Link URL",
|
||||
"custom-login-logo-image-url": "Custom Login Logo Image URL",
|
||||
"custom-login-logo-link-url": "Custom Login Logo Link URL",
|
||||
"text-below-custom-login-logo": "Text below Custom Login Logo",
|
||||
"custom-top-left-corner-logo-image-url": "URL de imagen del logo personalizado de la esquina superior izquierda",
|
||||
"custom-top-left-corner-logo-link-url": "URL de enlace del logo personalizado de la esquina superior izquierda",
|
||||
"custom-login-logo-image-url": "URL de imagen del logo personalizado de inicio de sesión",
|
||||
"custom-login-logo-link-url": "URL de enlace del logo personalizado de inicio de sesión",
|
||||
"text-below-custom-login-logo": "Texto debajo del logo personalizado de inicio de sesión",
|
||||
"username": "Nombre de usuario",
|
||||
"view-it": "Verla",
|
||||
"warn-list-archived": "advertencia: esta tarjeta está en una lista en el archivo",
|
||||
|
||||
+5
-5
@@ -514,11 +514,11 @@
|
||||
"upload": "آپلود",
|
||||
"upload-avatar": "ارسال آواتار",
|
||||
"uploaded-avatar": "آواتار آپلود شد",
|
||||
"custom-top-left-corner-logo-image-url": "Custom Top Left Corner Logo Image URL",
|
||||
"custom-top-left-corner-logo-link-url": "Custom Top Left Corner Logo Link URL",
|
||||
"custom-login-logo-image-url": "Custom Login Logo Image URL",
|
||||
"custom-login-logo-link-url": "Custom Login Logo Link URL",
|
||||
"text-below-custom-login-logo": "Text below Custom Login Logo",
|
||||
"custom-top-left-corner-logo-image-url": "آدرس تصویر لوگوی سفارشی در گوشه چپ و بالا",
|
||||
"custom-top-left-corner-logo-link-url": "آدرس لینک لوگوی سفارشی در گوشه چپ و بالا",
|
||||
"custom-login-logo-image-url": "آدرس تصویر لوگوی سفارشی در لاگین",
|
||||
"custom-login-logo-link-url": "آدرس لینک لوگوی سفارشی در لاگین",
|
||||
"text-below-custom-login-logo": "متن پایین لوگوی سفارشی در فرم لاگین",
|
||||
"username": "نام کاربری",
|
||||
"view-it": "مشاهده",
|
||||
"warn-list-archived": "اخطار: این کارت در یک لیست در آرشیو موجود میباشد",
|
||||
|
||||
+14
-14
@@ -337,20 +337,20 @@
|
||||
"filter-cards": "Filtrer les cartes ou listes",
|
||||
"list-filter-label": "Filtrer la liste par titre",
|
||||
"filter-clear": "Supprimer les filtres",
|
||||
"filter-labels-label": "Filter by label",
|
||||
"filter-labels-label": "Filtrer par étiquette",
|
||||
"filter-no-label": "Aucune étiquette",
|
||||
"filter-member-label": "Filter by member",
|
||||
"filter-member-label": "Filtrer par participant",
|
||||
"filter-no-member": "Aucun participant",
|
||||
"filter-assignee-label": "Filter by assignee",
|
||||
"filter-assignee-label": "Filtrer par personne assignée",
|
||||
"filter-no-assignee": "Pas de personne assignée",
|
||||
"filter-custom-fields-label": "Filter by Custom Fields",
|
||||
"filter-custom-fields-label": "Filtrer par champs personnalisés",
|
||||
"filter-no-custom-fields": "Pas de champs personnalisés",
|
||||
"filter-show-archive": "Montrer les listes archivées",
|
||||
"filter-hide-empty": "Cacher les listes vides",
|
||||
"filter-on": "Le filtre est actif",
|
||||
"filter-on-desc": "Vous êtes en train de filtrer les cartes sur ce tableau. Cliquez ici pour modifier les filtres.",
|
||||
"filter-to-selection": "Filtre vers la sélection",
|
||||
"other-filters-label": "Other Filters",
|
||||
"other-filters-label": "Autres filtres",
|
||||
"advanced-filter-label": "Filtre avancé",
|
||||
"advanced-filter-description": "Le filtre avancé permet d'écrire une chaîne contenant les opérateur suivants : == != <= >= && || ( ). Les opérateurs doivent être séparés par des espaces. Vous pouvez filtrer tous les champs personnalisés en saisissant leur nom et leur valeur. Par exemple : champ1 == valeur1. Remarque : si des champs ou valeurs contiennent des espaces, vous devez les mettre entre apostrophes. Par exemple : 'champ 1' = 'valeur 1'. Pour échapper un caractère de contrôle (' \\/), vous pouvez utiliser \\. Par exemple : champ1 = I\\'m. Il est également possible de combiner plusieurs conditions. Par exemple : f1 == v1 || f2 == v2. Normalement, tous les opérateurs sont interprétés de gauche à droite. Vous pouvez changer l'ordre à l'aide de parenthèses. Par exemple : f1 == v1 and (f2 == v2 || f2 == v3). Vous pouvez également chercher parmi les champs texte en utilisant des expressions régulières : f1 == /Test.*/i",
|
||||
"fullname": "Nom complet",
|
||||
@@ -359,7 +359,7 @@
|
||||
"headerBarCreateBoardPopup-title": "Créer un tableau",
|
||||
"home": "Accueil",
|
||||
"import": "Importer",
|
||||
"impersonate-user": "Impersonate user",
|
||||
"impersonate-user": "Utilisateur usurpé",
|
||||
"link": "Lien",
|
||||
"import-board": "importer un tableau",
|
||||
"import-board-c": "Importer un tableau",
|
||||
@@ -404,7 +404,7 @@
|
||||
"list-select-cards": "Sélectionner toutes les cartes de cette liste",
|
||||
"set-color-list": "Définir la couleur",
|
||||
"listActionPopup-title": "Actions sur la liste",
|
||||
"settingsUserPopup-title": "User Settings",
|
||||
"settingsUserPopup-title": "Paramètres de l'utilisateur",
|
||||
"swimlaneActionPopup-title": "Actions du couloir",
|
||||
"swimlaneAddPopup-title": "Ajouter un couloir en dessous",
|
||||
"listImportCardPopup-title": "Importer une carte Trello",
|
||||
@@ -427,8 +427,8 @@
|
||||
"moveCardToTop-title": "Déplacer tout en haut",
|
||||
"moveSelectionPopup-title": "Déplacer la sélection",
|
||||
"multi-selection": "Sélection multiple",
|
||||
"multi-selection-label": "Set label for selection",
|
||||
"multi-selection-member": "Set member for selection",
|
||||
"multi-selection-label": "Définir l'étiquette pour la sélection",
|
||||
"multi-selection-member": "Définir le participant pour la sélection",
|
||||
"multi-selection-on": "Multi-Selection active",
|
||||
"muted": "Silencieux",
|
||||
"muted-info": "Vous ne serez jamais averti des modifications effectuées dans ce tableau",
|
||||
@@ -514,11 +514,11 @@
|
||||
"upload": "Télécharger",
|
||||
"upload-avatar": "Télécharger un avatar",
|
||||
"uploaded-avatar": "Avatar téléchargé",
|
||||
"custom-top-left-corner-logo-image-url": "Custom Top Left Corner Logo Image URL",
|
||||
"custom-top-left-corner-logo-link-url": "Custom Top Left Corner Logo Link URL",
|
||||
"custom-login-logo-image-url": "Custom Login Logo Image URL",
|
||||
"custom-login-logo-link-url": "Custom Login Logo Link URL",
|
||||
"text-below-custom-login-logo": "Text below Custom Login Logo",
|
||||
"custom-top-left-corner-logo-image-url": "URL de l'Image du logo personnalisé dans le coin supérieur gauche",
|
||||
"custom-top-left-corner-logo-link-url": "Lien URL du logo personnalisé dans le coin supérieur gauche",
|
||||
"custom-login-logo-image-url": "URL de l'image du logo de connexion personnalisé",
|
||||
"custom-login-logo-link-url": "Lien URL du logo de connexion personnalisé",
|
||||
"text-below-custom-login-logo": "Texte sous le logo de connexion personnalisé",
|
||||
"username": "Nom d'utilisateur",
|
||||
"view-it": "Le voir",
|
||||
"warn-list-archived": "attention : cette carte est dans une liste archivée",
|
||||
|
||||
+1
-1
@@ -518,7 +518,7 @@
|
||||
"custom-top-left-corner-logo-link-url": "カスタムの左上ロゴイメージのリンクURL",
|
||||
"custom-login-logo-image-url": "カスタムのログインロゴイメージのURL",
|
||||
"custom-login-logo-link-url": "カスタムのログインロゴイメージのリンクURL",
|
||||
"text-below-custom-login-logo": "Text below Custom Login Logo",
|
||||
"text-below-custom-login-logo": "カスタムログインロゴイメージの下のテキスト",
|
||||
"username": "ユーザー名",
|
||||
"view-it": "見る",
|
||||
"warn-list-archived": "警告:このカードはアーカイブされたリスト内にあります",
|
||||
|
||||
+1
-1
@@ -518,7 +518,7 @@
|
||||
"custom-top-left-corner-logo-link-url": "URL Voor Maatwerk Logo Link In Linker Bovenhoek",
|
||||
"custom-login-logo-image-url": "URL Voor Maatwerk Login Logo Afbeelding",
|
||||
"custom-login-logo-link-url": "URL Voor Maatwerk Login Logo Link",
|
||||
"text-below-custom-login-logo": "Text below Custom Login Logo",
|
||||
"text-below-custom-login-logo": "Tekst onder Maatwerk Login Logo",
|
||||
"username": "Gebruikersnaam",
|
||||
"view-it": "Bekijk het",
|
||||
"warn-list-archived": "Let op: deze kaart zit in gearchiveerde lijst",
|
||||
|
||||
+1
-1
@@ -518,7 +518,7 @@
|
||||
"custom-top-left-corner-logo-link-url": "URL linku logo w lewym górnym rogu",
|
||||
"custom-login-logo-image-url": "URL obrazu logo ekranu logowania",
|
||||
"custom-login-logo-link-url": "URL linku logo ekranu logowania",
|
||||
"text-below-custom-login-logo": "Text below Custom Login Logo",
|
||||
"text-below-custom-login-logo": "Tekst pod logo na ekranie logowania",
|
||||
"username": "Nazwa użytkownika",
|
||||
"view-it": "Zobacz",
|
||||
"warn-list-archived": "Ostrzeżenie: ta karta jest na liście będącej w Archiwum",
|
||||
|
||||
+1
-1
@@ -518,7 +518,7 @@
|
||||
"custom-top-left-corner-logo-link-url": "URL ссылки с пользовательского изображения в левом верхнем углу",
|
||||
"custom-login-logo-image-url": "URL пользовательского изображения при входе",
|
||||
"custom-login-logo-link-url": "URL ссылки с пользовательского изображения при входе",
|
||||
"text-below-custom-login-logo": "Text below Custom Login Logo",
|
||||
"text-below-custom-login-logo": "Текст под пользовательским изображением при входе",
|
||||
"username": "Имя пользователя",
|
||||
"view-it": "Просмотреть",
|
||||
"warn-list-archived": "внимание: эта карточка из списка, который находится в Архиве",
|
||||
|
||||
+7
-7
@@ -101,9 +101,9 @@
|
||||
"archive": "Flytta till Arkiv",
|
||||
"archive-all": "Flytta Alla till Arkiv",
|
||||
"archive-board": "Flytta Tavla till Arkiv",
|
||||
"archive-card": "Flytta Kort till Arkiv",
|
||||
"archive-card": "Flytta kort till arkiv",
|
||||
"archive-list": "Flytta Lista till Arkiv",
|
||||
"archive-swimlane": "Flytta Simbanan till Arkiv",
|
||||
"archive-swimlane": "Flytta simbana till arkiv",
|
||||
"archive-selection": "Flytta markerad till Arkiv",
|
||||
"archiveBoardPopup-title": "Flytta tavla till arkiv?",
|
||||
"archived-items": "Arkiv",
|
||||
@@ -228,7 +228,7 @@
|
||||
"color-slateblue": "skifferblå",
|
||||
"color-white": "vit",
|
||||
"color-yellow": "gul",
|
||||
"unset-color": "Urkoppla",
|
||||
"unset-color": "Ta bort",
|
||||
"comment": "Kommentera",
|
||||
"comment-placeholder": "Skriv kommentar",
|
||||
"comment-only": "Kommentera endast",
|
||||
@@ -398,14 +398,14 @@
|
||||
"leave-board-pop": "Är du säker på att du vill lämna __boardTitle__? Du kommer att tas bort från alla kort på den här tavlan.",
|
||||
"leaveBoardPopup-title": "Lämna tavla?",
|
||||
"link-card": "Länk till detta kort",
|
||||
"list-archive-cards": "Flytta alla kort i den här listan till Arkiv",
|
||||
"list-archive-cards": "Flytta alla kort i den här listan till arkiv",
|
||||
"list-archive-cards-pop": "Detta kommer att ta bort alla kort i denna lista från tavlan. För att visa kort i Arkiv och få dem tillbaka till tavlan, klicka på \"Meny\" > \"Arkiv\".",
|
||||
"list-move-cards": "Flytta alla kort i denna lista",
|
||||
"list-select-cards": "Välj alla kort i denna lista",
|
||||
"set-color-list": "Ange färg",
|
||||
"listActionPopup-title": "Liståtgärder",
|
||||
"settingsUserPopup-title": "Användarinställningar",
|
||||
"swimlaneActionPopup-title": "Simbana-åtgärder",
|
||||
"swimlaneActionPopup-title": "Inställningar för simbana",
|
||||
"swimlaneAddPopup-title": "Lägg till en simbana nedan",
|
||||
"listImportCardPopup-title": "Importera ett Trello kort",
|
||||
"listImportCardsTsvPopup-title": "Importera Excel CSV/TSV",
|
||||
@@ -518,7 +518,7 @@
|
||||
"custom-top-left-corner-logo-link-url": "Länk för anpassad logotyp",
|
||||
"custom-login-logo-image-url": "Länk till bild för anpassad logotyp på inloggningssidan",
|
||||
"custom-login-logo-link-url": "Länk för anpassad logotyp på inloggningssidan",
|
||||
"text-below-custom-login-logo": "Text below Custom Login Logo",
|
||||
"text-below-custom-login-logo": "Text under anpassad logga för inloggning",
|
||||
"username": "Änvandarnamn",
|
||||
"view-it": "Visa det",
|
||||
"warn-list-archived": "varning: detta kort finns i en lista i Arkiv",
|
||||
@@ -716,7 +716,7 @@
|
||||
"r-d-send-email-to": "till",
|
||||
"r-d-send-email-subject": "ämne",
|
||||
"r-d-send-email-message": "meddelande",
|
||||
"r-d-archive": "Flytta kort till Arkiv",
|
||||
"r-d-archive": "Flytta kort till arkiv",
|
||||
"r-d-unarchive": "Återställ kortet från Arkiv",
|
||||
"r-d-add-label": "Lägg till etikett",
|
||||
"r-d-remove-label": "Ta bort etikett",
|
||||
|
||||
+105
-105
@@ -213,19 +213,19 @@
|
||||
"color-indigo": "çivit",
|
||||
"color-lime": "misket limonu",
|
||||
"color-magenta": "magenta",
|
||||
"color-mistyrose": "mistyrose",
|
||||
"color-mistyrose": "sisli",
|
||||
"color-navy": "koyu lacivert",
|
||||
"color-orange": "turuncu",
|
||||
"color-paleturquoise": "soluk turkuvaz",
|
||||
"color-peachpuff": "peachpuff",
|
||||
"color-peachpuff": "şeftali",
|
||||
"color-pink": "pembe",
|
||||
"color-plum": "erik moru",
|
||||
"color-purple": "mor",
|
||||
"color-red": "kırmızı",
|
||||
"color-saddlebrown": "saddlebrown",
|
||||
"color-saddlebrown": "eyer kahverengi",
|
||||
"color-silver": "gümüş rengi",
|
||||
"color-sky": "açık mavi",
|
||||
"color-slateblue": "slateblue",
|
||||
"color-slateblue": "kurşun mavisi",
|
||||
"color-white": "beyaz",
|
||||
"color-yellow": "sarı",
|
||||
"unset-color": "Seçilmemiş",
|
||||
@@ -235,8 +235,8 @@
|
||||
"comment-only-desc": "Sadece kartlara yorum yazabilir.",
|
||||
"no-comments": "Yorum Yok",
|
||||
"no-comments-desc": "Yorumlar ve aktiviteleri göremiyorum.",
|
||||
"worker": "Worker",
|
||||
"worker-desc": "Can only move cards, assign itself to card and comment.",
|
||||
"worker": "Çalışan",
|
||||
"worker-desc": "Yalnızca kartları taşıyabilir, kendisini karta atayabilir ve yorum yapabilir.",
|
||||
"computer": "Bilgisayar",
|
||||
"confirm-subtask-delete-dialog": "Alt görevi silmek istediğinizden emin misiniz?",
|
||||
"confirm-checklist-delete-dialog": "Kontrol listesini silmek istediğinden emin misin?",
|
||||
@@ -311,7 +311,7 @@
|
||||
"error-board-notAMember": "Bu işlemi yapmak için panoya ü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-csv-schema": "Your CSV(Comma Separated Values)/TSV (Tab Separated Values) does not include the proper information in the correct format",
|
||||
"error-csv-schema": "CSV'niz (Virgülle Ayrılmış Değerler) / TSV'niz (Sekmeyle Ayrılmış Değerler) doğru formatta uygun bilgileri içermiyor",
|
||||
"error-list-doesNotExist": "Liste bulunamadı",
|
||||
"error-user-doesNotExist": "Kullanıcı bulunamadı",
|
||||
"error-user-notAllowSelf": "Kendi kendini davet edemezsin",
|
||||
@@ -325,32 +325,32 @@
|
||||
"export-board-html": "Panoyu HTML olarak dışarı aktar",
|
||||
"exportBoardPopup-title": "Panoyu dışarı aktar",
|
||||
"sort": "Sırala",
|
||||
"sort-desc": "Click to Sort List",
|
||||
"list-sort-by": "Sort the List By:",
|
||||
"sort-desc": "Listeyi Sıralamak için Tıklayın",
|
||||
"list-sort-by": "Listeyi Sırala:",
|
||||
"list-label-modifiedAt": "Son Erişim Zamanı...",
|
||||
"list-label-title": "Listenin Adı...",
|
||||
"list-label-sort": "Your Manual Order",
|
||||
"list-label-short-modifiedAt": "(L)",
|
||||
"list-label-short-title": "(N)",
|
||||
"list-label-sort": "Manuel Siparişiniz",
|
||||
"list-label-short-modifiedAt": "(S)",
|
||||
"list-label-short-title": "(A)",
|
||||
"list-label-short-sort": "(M)",
|
||||
"filter": "Filtre",
|
||||
"filter-cards": "Filter Cards or Lists",
|
||||
"list-filter-label": "Filter List by Title",
|
||||
"filter-cards": "Kartları veya Listeleri Filtrele",
|
||||
"list-filter-label": "Listeyi Başlığa Göre Filtrele",
|
||||
"filter-clear": "Filtreyi temizle",
|
||||
"filter-labels-label": "Filter by label",
|
||||
"filter-labels-label": "Etikete göre filtrele",
|
||||
"filter-no-label": "Etiket yok",
|
||||
"filter-member-label": "Filter by member",
|
||||
"filter-member-label": "Üyeye göre filtrele",
|
||||
"filter-no-member": "Üyesi olmayan",
|
||||
"filter-assignee-label": "Filter by assignee",
|
||||
"filter-assignee-label": "Atanana göre filtrele",
|
||||
"filter-no-assignee": "Atanmayan",
|
||||
"filter-custom-fields-label": "Filter by Custom Fields",
|
||||
"filter-custom-fields-label": "Özel alanlara göre filtrele",
|
||||
"filter-no-custom-fields": "Hiç özel alan yok",
|
||||
"filter-show-archive": "Arşivlenmiş listeleri göster",
|
||||
"filter-hide-empty": "Boş listeleri gizle",
|
||||
"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",
|
||||
"other-filters-label": "Other Filters",
|
||||
"other-filters-label": "Diğer Filtreler",
|
||||
"advanced-filter-label": "Gelişmiş Filtreleme",
|
||||
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\/) to be skipped, you can use \\. For example: Field1 == I\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
|
||||
"fullname": "Ad Soyad",
|
||||
@@ -359,24 +359,24 @@
|
||||
"headerBarCreateBoardPopup-title": "Pano Oluşturma",
|
||||
"home": "Ana Sayfa",
|
||||
"import": "İçeri aktar",
|
||||
"impersonate-user": "Impersonate user",
|
||||
"impersonate-user": "Kullanıcının kimliğine bürün",
|
||||
"link": "Bağlantı",
|
||||
"import-board": "panoyu içe aktar",
|
||||
"import-board-c": "Panoyu içe aktar",
|
||||
"import-board-title-trello": "Trello'dan panoyu içeri aktar",
|
||||
"import-board-title-wekan": "Import board from previous export",
|
||||
"import-board-title-wekan": "Önceki dışa aktarımdaki panoyu içe aktar",
|
||||
"import-board-title-csv": "CSV/TSV formatındaki panoyu içeri aktar",
|
||||
"from-trello": "Trello'dan",
|
||||
"from-wekan": "From previous export",
|
||||
"from-wekan": "Önceki dışa aktarımdan",
|
||||
"from-csv": "CSV/TSV'den",
|
||||
"import-board-instruction-trello": "Trello panonuzda 'Menü'ye gidip 'Daha fazlası'na tıklayın, ardından 'Yazdır ve Çıktı Al'ı seçip 'JSON biçiminde çıktı al' diyerek çıkan metni buraya kopyalayın.",
|
||||
"import-board-instruction-csv": "Paste in your Comma Separated Values(CSV)/ Tab Separated Values (TSV) .",
|
||||
"import-board-instruction-wekan": "In your board, go to 'Menu', then 'Export board', and copy the text in the downloaded file.",
|
||||
"import-board-instruction-about-errors": "If you get errors when importing board, sometimes importing still works, and board is at All Boards page.",
|
||||
"import-board-instruction-csv": "Virgülle Ayrılmış Değerlerinizi (CSV) / Sekmeyle Ayrılmış Değerlerinizi (TSV) yapıştırın.",
|
||||
"import-board-instruction-wekan": "Panonuzda \"Menü\" ye, ardından \"Panoyu dışa aktar\" a gidin ve indirilen dosyadaki metni kopyalayın.",
|
||||
"import-board-instruction-about-errors": "Panoyu içe aktarırken hata alıyorsanız, içe alma hala devam ediyor olabilir ya da Tüm Panolar sayfasında yer alıyor olabilir.",
|
||||
"import-json-placeholder": "Geçerli JSON verisini buraya yapıştırın",
|
||||
"import-csv-placeholder": "Paste your valid CSV/TSV data here",
|
||||
"import-csv-placeholder": "Geçerli CSV / TSV verilerinizi buraya yapıştırın",
|
||||
"import-map-members": "Üyeleri eşleştirme",
|
||||
"import-members-map": "Your imported board has some members. Please map the members you want to import to your users",
|
||||
"import-members-map": "İçe aktarılan panonuzda bazı üyeler var. Lütfen kullanıcılarınıza aktarmak istediğiniz üyeleri eşleyin",
|
||||
"import-show-user-mapping": "Üye eşleştirmesini kontrol et",
|
||||
"import-user-select": "Bu üye olarak kullanmak istediğiniz mevcut kullanıcınızı seçin",
|
||||
"importMapMembersAddPopup-title": "Üye seç",
|
||||
@@ -399,12 +399,12 @@
|
||||
"leaveBoardPopup-title": "Panodan ayrılmak istediğinize emin misiniz?",
|
||||
"link-card": "Bu kartın bağlantısı",
|
||||
"list-archive-cards": "Bu listedeki tüm kartları arşive taşı",
|
||||
"list-archive-cards-pop": "This will remove all the cards in this list from the board. To view cards in Archive and bring them back to the board, click “Menu” > “Archive”.",
|
||||
"list-archive-cards-pop": "Bu eylem bu listedeki tüm kartları panodan kaldıracaktır. Arşivdeki kartları görüntülemek ve panoya geri getirmek için \"Menü\"> \"Arşiv\"i tıklayın.",
|
||||
"list-move-cards": "Listedeki tüm kartları taşı",
|
||||
"list-select-cards": "Listedeki tüm kartları seç",
|
||||
"set-color-list": "Rengi Ayarla",
|
||||
"listActionPopup-title": "Liste İşlemleri",
|
||||
"settingsUserPopup-title": "User Settings",
|
||||
"settingsUserPopup-title": "Kullanıcı Ayarları",
|
||||
"swimlaneActionPopup-title": "Kulvar İşlemleri",
|
||||
"swimlaneAddPopup-title": "Aşağı kulvar ekle",
|
||||
"listImportCardPopup-title": "Bir Trello kartını içeri aktar",
|
||||
@@ -427,8 +427,8 @@
|
||||
"moveCardToTop-title": "Yukarı taşı",
|
||||
"moveSelectionPopup-title": "Seçimi taşı",
|
||||
"multi-selection": "Çoklu seçim",
|
||||
"multi-selection-label": "Set label for selection",
|
||||
"multi-selection-member": "Set member for selection",
|
||||
"multi-selection-label": "Seçim için etiket belirle",
|
||||
"multi-selection-member": "Seçim için üye belirle",
|
||||
"multi-selection-on": "Çoklu seçim açık",
|
||||
"muted": "Sessiz",
|
||||
"muted-info": "Bu panodaki hiçbir değişiklik hakkında bildirim almayacaksınız",
|
||||
@@ -474,7 +474,7 @@
|
||||
"search": "Arama",
|
||||
"rules": "Kurallar",
|
||||
"search-cards": "Bu panodaki kart / liste başlıkları, açıklamalar ve özel alanlarda arama yapın",
|
||||
"search-example": "Write text you search and press Enter",
|
||||
"search-example": "Aradığınız metni yazın ve Enter tuşuna basın",
|
||||
"select-color": "Renk Seç",
|
||||
"set-wip-limit-value": "Bu listedeki en fazla öğe sayısı için bir sınır belirleyin",
|
||||
"setWipLimitPopup-title": "Devam Eden İş Sınırı Belirle",
|
||||
@@ -514,11 +514,11 @@
|
||||
"upload": "Yükle",
|
||||
"upload-avatar": "Avatar yükle",
|
||||
"uploaded-avatar": "Avatar yüklendi",
|
||||
"custom-top-left-corner-logo-image-url": "Custom Top Left Corner Logo Image URL",
|
||||
"custom-top-left-corner-logo-link-url": "Custom Top Left Corner Logo Link URL",
|
||||
"custom-login-logo-image-url": "Custom Login Logo Image URL",
|
||||
"custom-login-logo-link-url": "Custom Login Logo Link URL",
|
||||
"text-below-custom-login-logo": "Text below Custom Login Logo",
|
||||
"custom-top-left-corner-logo-image-url": "Özel Sol Üst Köşe Logo Resmi URL'si",
|
||||
"custom-top-left-corner-logo-link-url": "Özel Sol Üst Köşe Logo Bağlantı URL'si",
|
||||
"custom-login-logo-image-url": "Özel Oturum Açma Logosu Resmi URL'si",
|
||||
"custom-login-logo-link-url": "Özel Oturum Açma Logosu Bağlantı URL'si",
|
||||
"text-below-custom-login-logo": "Özel Oturum Açma Logosunun altındaki metin",
|
||||
"username": "Kullanıcı adı",
|
||||
"view-it": "Görüntüle",
|
||||
"warn-list-archived": "Uyarı: Bu kart arşivdeki bir listede",
|
||||
@@ -652,18 +652,18 @@
|
||||
"r-delete-rule": "Kuralı sil",
|
||||
"r-new-rule-name": "Yeni kural başlığı",
|
||||
"r-no-rules": "Kural yok",
|
||||
"r-trigger": "Trigger",
|
||||
"r-action": "Action",
|
||||
"r-trigger": "Tetikleyici",
|
||||
"r-action": "Aksiyon",
|
||||
"r-when-a-card": "Kart eklendiğinde",
|
||||
"r-is": "is",
|
||||
"r-is-moved": "taşındı",
|
||||
"r-added-to": "Added to",
|
||||
"r-removed-from": "Removed from",
|
||||
"r-added-to": "Eklendi:",
|
||||
"r-removed-from": "Çıkarıldı:",
|
||||
"r-the-board": "pano",
|
||||
"r-list": "liste",
|
||||
"set-filter": "Filtrele",
|
||||
"r-moved-to": "Moved to",
|
||||
"r-moved-from": "Moved from",
|
||||
"r-moved-to": "Şuraya taşındı:",
|
||||
"r-moved-from": "Şuradan taşındı:",
|
||||
"r-archived": "Arşive taşındı",
|
||||
"r-unarchived": "Arşivden geri çıkarıldı",
|
||||
"r-a-card": "Kart",
|
||||
@@ -673,13 +673,13 @@
|
||||
"r-when-a-member": "When a member is",
|
||||
"r-when-the-member": "When the member",
|
||||
"r-name": "isim",
|
||||
"r-when-a-attach": "When an attachment",
|
||||
"r-when-a-checklist": "When a checklist is",
|
||||
"r-when-the-checklist": "When the checklist",
|
||||
"r-when-a-attach": "Bir ek olduğunda",
|
||||
"r-when-a-checklist": "Bir kontrol listesi şu olduğunda:",
|
||||
"r-when-the-checklist": "Bir kontrol listesine şu olduğunda:",
|
||||
"r-completed": "Tamamlandı",
|
||||
"r-made-incomplete": "Tamamlanmamış",
|
||||
"r-when-a-item": "When a checklist item is",
|
||||
"r-when-the-item": "When the checklist item",
|
||||
"r-when-a-item": "Bir kontrol listesi öğesi şu olduğunda:",
|
||||
"r-when-the-item": "Bir kontrol listesi öğesine şu olduğunda:",
|
||||
"r-checked": "İşaretlendi",
|
||||
"r-unchecked": "İşaret Kaldırıldı",
|
||||
"r-move-card-to": "Kartı taşı",
|
||||
@@ -694,7 +694,7 @@
|
||||
"r-label": "etiket",
|
||||
"r-member": "üye",
|
||||
"r-remove-all": "Tüm üyeleri karttan çıkarın",
|
||||
"r-set-color": "Set color to",
|
||||
"r-set-color": "Rengi şu değere ayarla:",
|
||||
"r-checklist": "Kontrol Listesi",
|
||||
"r-check-all": "Tümünü işaretle",
|
||||
"r-uncheck-all": "Tüm işaretleri kaldır",
|
||||
@@ -726,10 +726,10 @@
|
||||
"r-d-add-member": "Üye Ekle",
|
||||
"r-d-remove-member": "Üye Sil",
|
||||
"r-d-remove-all-member": "Tüm Üyeleri Sil",
|
||||
"r-d-check-all": "Check all items of a list",
|
||||
"r-d-uncheck-all": "Uncheck all items of a list",
|
||||
"r-d-check-all": "Listenin tüm öğelerini kontrol et",
|
||||
"r-d-uncheck-all": "Listedeki tüm öğelerin işaretini kaldır",
|
||||
"r-d-check-one": "Ögeyi kontrol et",
|
||||
"r-d-uncheck-one": "Uncheck item",
|
||||
"r-d-uncheck-one": "Öğenin işaretini kaldır",
|
||||
"r-d-check-of-list": "of checklist",
|
||||
"r-d-add-checklist": "Kontrol listesine ekle",
|
||||
"r-d-remove-checklist": "Kontrol listesini kaldır",
|
||||
@@ -742,15 +742,15 @@
|
||||
"r-board-note": "Not: Her olası değere uyması için bir alanı boş bırakın.",
|
||||
"r-checklist-note": "Not: kontrol listesindeki öğelerin virgülle ayrılmış değerler olarak yazılması gerekir.",
|
||||
"r-when-a-card-is-moved": "Bir kart başka bir listeye taşındığında",
|
||||
"r-set": "Set",
|
||||
"r-set": "Ayarla",
|
||||
"r-update": "Güncelle",
|
||||
"r-datefield": "date field",
|
||||
"r-df-start-at": "start",
|
||||
"r-df-due-at": "due",
|
||||
"r-df-end-at": "end",
|
||||
"r-df-received-at": "received",
|
||||
"r-datefield": "tarih alanı",
|
||||
"r-df-start-at": "başlangıç",
|
||||
"r-df-due-at": "vade",
|
||||
"r-df-end-at": "bitiş",
|
||||
"r-df-received-at": "alındı",
|
||||
"r-to-current-datetime": "to current date/time",
|
||||
"r-remove-value-from": "Remove value from",
|
||||
"r-remove-value-from": "Değeri şuradan kaldır:",
|
||||
"ldap": "LDAP",
|
||||
"oauth2": "Oauth2",
|
||||
"cas": "CAS",
|
||||
@@ -759,71 +759,71 @@
|
||||
"custom-product-name": "Özel Ürün Adı",
|
||||
"layout": "Düzen",
|
||||
"hide-logo": "Logoyu Gizle",
|
||||
"add-custom-html-after-body-start": "Add Custom HTML after <body> start",
|
||||
"add-custom-html-before-body-end": "Add Custom HTML before </body> end",
|
||||
"add-custom-html-after-body-start": "<body>'den sonra Özel HTML Ekle",
|
||||
"add-custom-html-before-body-end": "</body>'den önce Özel HTML Ekle",
|
||||
"error-undefined": "Bir şeyler yanlış gitti",
|
||||
"error-ldap-login": "Giriş yapmaya çalışırken bir hata oluştu",
|
||||
"display-authentication-method": "Display Authentication Method",
|
||||
"default-authentication-method": "Default Authentication Method",
|
||||
"duplicate-board": "Duplicate Board",
|
||||
"people-number": "The number of people is:",
|
||||
"display-authentication-method": "Kimlik Doğrulama Yöntemini Görüntüle",
|
||||
"default-authentication-method": "Varsayılan Kimlik Doğrulama Yöntemi",
|
||||
"duplicate-board": "Panoyu Çoğalt",
|
||||
"people-number": "Kişi sayısı:",
|
||||
"swimlaneDeletePopup-title": "Kulvar silinsin mi?",
|
||||
"swimlane-delete-pop": "All actions will be removed from the activity feed and you won't be able to recover the swimlane. There is no undo.",
|
||||
"swimlane-delete-pop": "Tüm eylemler etkinlik akışından kaldırılacak ve kulvarınızı kurtaramayacaksınız. Geri alınamaz.",
|
||||
"restore-all": "Her şeyi eski haline getir",
|
||||
"delete-all": "Hepsini sil",
|
||||
"loading": "Yükleniyor, lütfen bekleyiniz",
|
||||
"previous_as": "last time was",
|
||||
"previous_as": "son kez",
|
||||
"act-a-dueAt": "modified due time to \nWhen: __timeValue__\nWhere: __card__\n previous due was __timeOldValue__",
|
||||
"act-a-endAt": "modified ending time to __timeValue__ from (__timeOldValue__)",
|
||||
"act-a-startAt": "modified starting time to __timeValue__ from (__timeOldValue__)",
|
||||
"act-a-receivedAt": "modified received time to __timeValue__ from (__timeOldValue__)",
|
||||
"a-dueAt": "modified due time to be",
|
||||
"a-endAt": "modified ending time to be",
|
||||
"a-startAt": "modified starting time to be",
|
||||
"a-receivedAt": "modified received time to be",
|
||||
"almostdue": "current due time %s is approaching",
|
||||
"pastdue": "current due time %s is past",
|
||||
"duenow": "current due time %s is today",
|
||||
"a-dueAt": "son tarih değiştirildi",
|
||||
"a-endAt": "bitiş zamanı değiştirildi",
|
||||
"a-startAt": "başlangıç zamanı değiştirildi",
|
||||
"a-receivedAt": "alınma zamanı değiştirildi",
|
||||
"almostdue": "%s'in vadesi yaklaşıyor",
|
||||
"pastdue": "%s'in vadesi geçti",
|
||||
"duenow": "%s'in vadesi bugün",
|
||||
"act-newDue": "__list__/__card__ has 1st due reminder [__board__]",
|
||||
"act-withDue": "__list__/__card__ due reminders [__board__]",
|
||||
"act-almostdue": "was reminding the current due (__timeValue__) of __card__ is approaching",
|
||||
"act-pastdue": "was reminding the current due (__timeValue__) of __card__ is past",
|
||||
"act-duenow": "was reminding the current due (__timeValue__) of __card__ is now",
|
||||
"act-atUserComment": "You were mentioned in [__board__] __list__/__card__",
|
||||
"act-atUserComment": "[__board__] __list__/__card__ içinde bahsedildiniz",
|
||||
"delete-user-confirm-popup": "Bu kullanıcı hesabını silmek istediğinize emin misiniz? Bu işlemi geri alamazsınız.",
|
||||
"accounts-allowUserDelete": "Kullanıcılara hesaplarını silmek için izin ver.",
|
||||
"hide-minicard-label-text": "Mini kart etiklerini gizle",
|
||||
"show-desktop-drag-handles": "Show desktop drag handles",
|
||||
"show-desktop-drag-handles": "Masaüstü sürükleme tutamaçlarını göster",
|
||||
"assignee": "Atanan",
|
||||
"cardAssigneesPopup-title": "Atanan",
|
||||
"addmore-detail": "Add a more detailed description",
|
||||
"show-on-card": "Show on Card",
|
||||
"new": "New",
|
||||
"editUserPopup-title": "Edit User",
|
||||
"newUserPopup-title": "New User",
|
||||
"addmore-detail": "Daha ayrıntılı bir açıklama ekle",
|
||||
"show-on-card": "Kartta Göster",
|
||||
"new": "Yeni",
|
||||
"editUserPopup-title": "Kullanıcıyı Düzenle",
|
||||
"newUserPopup-title": "Yeni Kullanıcı",
|
||||
"notifications": "Bildirim",
|
||||
"view-all": "View All",
|
||||
"filter-by-unread": "Filter by Unread",
|
||||
"mark-all-as-read": "Mark all as read",
|
||||
"remove-all-read": "Remove all read",
|
||||
"allow-rename": "Allow Rename",
|
||||
"allowRenamePopup-title": "Allow Rename",
|
||||
"start-day-of-week": "Set day of the week start",
|
||||
"monday": "Monday",
|
||||
"tuesday": "Tuesday",
|
||||
"wednesday": "Wednesday",
|
||||
"thursday": "Thursday",
|
||||
"friday": "Friday",
|
||||
"saturday": "Saturday",
|
||||
"sunday": "Sunday",
|
||||
"status": "Status",
|
||||
"swimlane": "Swimlane",
|
||||
"owner": "Owner",
|
||||
"last-modified-at": "Last modified at",
|
||||
"last-activity": "Last activity",
|
||||
"voting": "Voting",
|
||||
"archived": "Archived",
|
||||
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
|
||||
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
|
||||
"hide-checked-items": "Hide checked items"
|
||||
"view-all": "Tümünü gör",
|
||||
"filter-by-unread": "Okunmamışlara göre filtrele",
|
||||
"mark-all-as-read": "Tümünü okundu olarak işaretle",
|
||||
"remove-all-read": "Okunanların tümünü kaldır",
|
||||
"allow-rename": "Yeniden Adlandırmaya İzin Ver",
|
||||
"allowRenamePopup-title": "Yeniden Adlandırmaya İzin Ver",
|
||||
"start-day-of-week": "Haftanın başlangıç gününü ayarla",
|
||||
"monday": "Pazartesi",
|
||||
"tuesday": "Salı",
|
||||
"wednesday": "Çarşamba",
|
||||
"thursday": "Perşembe",
|
||||
"friday": "Cuma",
|
||||
"saturday": "Cumartesi",
|
||||
"sunday": "Pazar",
|
||||
"status": "Durum",
|
||||
"swimlane": "Kulvar",
|
||||
"owner": "Sahibi",
|
||||
"last-modified-at": "Son değiştirilme",
|
||||
"last-activity": "Son aktivite",
|
||||
"voting": "Oylama",
|
||||
"archived": "Arşivlendi",
|
||||
"delete-linked-card-before-this-card": "Bu kartı, sahip olan bağlantılı kartı silmeden önce silemezsiniz.",
|
||||
"delete-linked-cards-before-this-list": "Bu listedeki kartlara işaret eden bağlantılı kartları silmeden önce bu listeyi silemezsiniz.",
|
||||
"hide-checked-items": "İşaretli öğeleri gizle"
|
||||
}
|
||||
+12
-3
@@ -1412,15 +1412,24 @@ Cards.mutations({
|
||||
|
||||
assignAssignee(assigneeId) {
|
||||
// If there is not any assignee, allow one assignee, not more.
|
||||
/*
|
||||
if (this.getAssignees().length === 0) {
|
||||
return {
|
||||
$addToSet: {
|
||||
assignees: assigneeId,
|
||||
},
|
||||
};
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
*/
|
||||
// Allow more that one assignee:
|
||||
// https://github.com/wekan/wekan/issues/3302
|
||||
return {
|
||||
$addToSet: {
|
||||
assignees: assigneeId,
|
||||
},
|
||||
};
|
||||
//} else {
|
||||
// return false,
|
||||
//}
|
||||
},
|
||||
|
||||
unassignMember(memberId) {
|
||||
|
||||
+39
-22
@@ -1,4 +1,4 @@
|
||||
//const stringify = require('csv-stringify');
|
||||
const Papa = require('papaparse');
|
||||
|
||||
// exporter maybe is broken since Gridfs introduced, add fs and path
|
||||
export class Exporter {
|
||||
@@ -192,6 +192,40 @@ export class Exporter {
|
||||
const result = this.build();
|
||||
const columnHeaders = [];
|
||||
const cardRows = [];
|
||||
|
||||
const papaconfig = {
|
||||
delimiter, // get parameter (was: auto-detect)
|
||||
worker: true,
|
||||
};
|
||||
|
||||
/*
|
||||
newline: "", // auto-detect
|
||||
quoteChar: '"',
|
||||
escapeChar: '"',
|
||||
header: true,
|
||||
transformHeader: undefined,
|
||||
dynamicTyping: false,
|
||||
preview: 0,
|
||||
encoding: "",
|
||||
comments: false,
|
||||
step: undefined,
|
||||
complete: undefined,
|
||||
error: undefined,
|
||||
download: false,
|
||||
downloadRequestHeaders: undefined,
|
||||
downloadRequestBody: undefined,
|
||||
skipEmptyLines: false,
|
||||
chunk: undefined,
|
||||
chunkSize: undefined,
|
||||
fastMode: undefined,
|
||||
beforeFirstChunk: undefined,
|
||||
withCredentials: undefined,
|
||||
transform: undefined
|
||||
};
|
||||
*/
|
||||
|
||||
//delimitersToGuess: [',', '\t', '|', ';', Papa.RECORD_SEP, Papa.UNIT_SEP]
|
||||
|
||||
columnHeaders.push(
|
||||
'Title',
|
||||
'Description',
|
||||
@@ -240,6 +274,7 @@ export class Exporter {
|
||||
}
|
||||
i++;
|
||||
});
|
||||
cardRows.push([[columnHeaders]]);
|
||||
/* TODO: Try to get translations working.
|
||||
These currently only bring English translations.
|
||||
TAPi18n.__('title'),
|
||||
@@ -264,24 +299,6 @@ export class Exporter {
|
||||
TAPi18n.__('archived'),
|
||||
*/
|
||||
|
||||
const stringifier = stringify({
|
||||
header: true,
|
||||
delimiter,
|
||||
columns: columnHeaders,
|
||||
});
|
||||
|
||||
stringifier.on('readable', function() {
|
||||
let row;
|
||||
while ((row = stringifier.read())) {
|
||||
cardRows.push(row);
|
||||
}
|
||||
});
|
||||
|
||||
stringifier.on('error', function(err) {
|
||||
// eslint-disable-next-line no-console
|
||||
console.error(err.message);
|
||||
});
|
||||
|
||||
result.cards.forEach(card => {
|
||||
const currentRow = [];
|
||||
currentRow.push(card.title);
|
||||
@@ -385,10 +402,10 @@ export class Exporter {
|
||||
currentRow.push(customFieldValuesToPush[valueIndex]);
|
||||
}
|
||||
}
|
||||
stringifier.write(currentRow);
|
||||
cardRows.push([[currentRow]]);
|
||||
});
|
||||
stringifier.end();
|
||||
return cardRows[0];
|
||||
|
||||
return Papa.unparse(cardRows, papaconfig);
|
||||
}
|
||||
|
||||
canExport(user) {
|
||||
|
||||
Generated
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "wekan",
|
||||
"version": "v4.41.0",
|
||||
"version": "v4.45.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "wekan",
|
||||
"version": "v4.41.0",
|
||||
"version": "v4.45.0",
|
||||
"description": "Open-Source kanban",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
|
||||
@@ -1524,7 +1524,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
|
||||
<ul class="toc-list-h1">
|
||||
|
||||
<li>
|
||||
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v4.41">Wekan REST API v4.41</a>
|
||||
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v4.45">Wekan REST API v4.45</a>
|
||||
|
||||
</li>
|
||||
|
||||
@@ -2027,7 +2027,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
|
||||
<div class="page-wrapper">
|
||||
<div class="dark-box"></div>
|
||||
<div class="content">
|
||||
<h1 id="wekan-rest-api">Wekan REST API v4.41</h1>
|
||||
<h1 id="wekan-rest-api">Wekan REST API v4.45</h1>
|
||||
<blockquote>
|
||||
<p>Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.</p>
|
||||
</blockquote>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
swagger: '2.0'
|
||||
info:
|
||||
title: Wekan REST API
|
||||
version: v4.41
|
||||
version: v4.45
|
||||
description: |
|
||||
The REST API allows you to control and extend Wekan with ease.
|
||||
|
||||
|
||||
+2
-2
@@ -18,8 +18,8 @@ REM Install chocolatey
|
||||
|
||||
choco install -y git curl python2 dotnet4.5.2 nano mongodb-3 mongoclient meteor
|
||||
|
||||
curl -O https://nodejs.org/dist/v12.16.3/node-v12.16.2-x64.msi
|
||||
call node-v12.16.3-x64.msi
|
||||
curl -O https://nodejs.org/dist/v12.19.0/node-v12.19.0-x64.msi
|
||||
call node-v12.19.0-x64.msi
|
||||
|
||||
call npm config -g set msvs_version 2015
|
||||
call meteor npm config -g set msvs_version 2015
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ do
|
||||
curl -0 -L https://npmjs.org/install.sh | sudo sh
|
||||
sudo chown -R $(id -u):$(id -g) $HOME/.npm
|
||||
sudo npm -g install n
|
||||
sudo n 12.18.3
|
||||
sudo n 12.19.0
|
||||
#curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
|
||||
#sudo apt-get install -y nodejs
|
||||
elif [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
|
||||
@@ -18,7 +18,7 @@ cd $REPODIR
|
||||
rm -rf $WEKANDIR
|
||||
git clone git@github.com:wekan/wekan.git
|
||||
cd $WEKANDIR
|
||||
sudo n 12.18.4
|
||||
sudo n 12.19.0
|
||||
sudo mkdir -p /usr/local/lib/node_modules/fibers/.node-gyp
|
||||
# Build Wekan
|
||||
./releases/rebuild-release.sh
|
||||
|
||||
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
|
||||
appTitle = (defaultText = "Wekan"),
|
||||
# The name of the app as it is displayed to the user.
|
||||
|
||||
appVersion = 441,
|
||||
appVersion = 445,
|
||||
# Increment this for every release.
|
||||
|
||||
appMarketingVersion = (defaultText = "4.41.0~2020-10-03"),
|
||||
appMarketingVersion = (defaultText = "4.45.0~2020-10-30"),
|
||||
# Human-readable presentation of the app version.
|
||||
|
||||
minUpgradableAppVersion = 0,
|
||||
|
||||
@@ -81,7 +81,7 @@ Meteor.startup(() => {
|
||||
tokenEndpoint: process.env.OAUTH2_TOKEN_ENDPOINT,
|
||||
idTokenWhitelistFields:
|
||||
process.env.OAUTH2_ID_TOKEN_WHITELIST_FIELDS || [],
|
||||
requestPermissions: 'BDFUserProfile.me',
|
||||
requestPermissions: process.env.OAUTH2_REQUEST_PERMISSIONS,
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
+1
-1
@@ -81,7 +81,7 @@ parts:
|
||||
wekan:
|
||||
source: .
|
||||
plugin: nodejs
|
||||
node-engine: 12.18.4
|
||||
node-engine: 12.19.0
|
||||
node-packages:
|
||||
- node-gyp
|
||||
- node-pre-gyp
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
set -euxo pipefail
|
||||
|
||||
BUILD_DEPS="bsdtar gnupg wget curl bzip2 python git ca-certificates perl-Digest-SHA"
|
||||
NODE_VERSION=v12.18.4
|
||||
NODE_VERSION=v12.19.0
|
||||
#METEOR_RELEASE=1.6.0.1 - for Stacksmith, meteor-1.8 branch that could have METEOR@1.8.1-beta.8 or newer
|
||||
USE_EDGE=false
|
||||
METEOR_EDGE=1.5-beta.17
|
||||
|
||||
Reference in new issue
Block a user