Compare commits

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

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

No files matched your search

+1 -1
View File
@@ -39,7 +39,7 @@ host = https://www.transifex.com
# tap:i18n requires us to use `-` separator in the language identifiers whereas
# Transifex uses a `_` separator, without an option to customize it on one side
# or the other, so we need to do a Manual mapping.
lang_map = bg_BG:bg, en_GB:en-GB, es_AR:es-AR, el_GR:el, fi_FI:fi, hu_HU:hu, id_ID:id, mn_MN:mn, no:nb, lv_LV:lv, pt_BR:pt-BR, ro_RO:ro, zh_CN:zh-CN, zh_TW:zh-TW, zh_HK:zh-HK
lang_map = bg_BG:bg, en_GB:en-GB, es_AR:es-AR, el_GR:el, fi_FI:fi, hu_HU:hu, id_ID:id, mn_MN:mn, no:nb, lv_LV:lv, pt_BR:pt-BR, ro_RO:ro, sl_SI:sl, zh_CN:zh-CN, zh_TW:zh-TW, zh_HK:zh-HK
[wekan.application]
file_filter = i18n/<lang>.i18n.json
+53
View File
@@ -1,3 +1,56 @@
# v3.47 2019-10-09 Wekan release
This release fixes the following bugs:
- [REST API: fix handling of members property on card creation](https://github.com/wekan/wekan/pull/2751).
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.46 2019-10-07 Wekan release
This release fixes the following bugs:
- [More black minicard badges](https://github.com/wekan/wekan/commit/68be12d166b21a41b4e2c4021b0966807e5ed1e6).
Thanks to sfahrenholz and xet7.
- [REST API: fix creation of Checklists](https://github.com/wekan/wekan/pull/2747).
Thanks to liske.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.45 2019-10-03 Wekan release
This release adds the following new features:
- [Cards due timeline will be shown in Calendar view](https://github.com/wekan/wekan/pull/2738).
Thanks to whowillcare.
- [Modified due day reminders in cards.js, so wekan server admin can control the reminder more flexibly](https://github.com/wekan/wekan/pull/2738).
i.e. NOTIFY_DUE_DAYS_BEFORE_AND_AFTER = 0 notification will be sent on due day only.
NOTIFY_DUE_DAYS_BEFORE_AND_AFTER = 2,0 it means notification will be sent on both due day and two days before.
Thanks to whowillcare.
- [Added modifications the help files, related to NOTIFY_DUE_DAYS_BEFORE_AND_AFTER](https://github.com/wekan/wekan/pull/2740).
Thanks to whowillcare.
and fixes the following bugs:
- [Modified list.style regarding .list-header-name when in mobile mode. It was too close to left arrow](https://github.com/wekan/wekan/pull/2740).
Thanks to whowillcare.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.44 2019-09-17 Wekan release
This release adds the following languages:
- [Add language: Slovenian](https://github.com/wekan/wekan/commit/125231beff0fb84a18a46fe246fa12e098246985).
Thanks to translators.
and fixes the following bugs:
- [Fix: in richer editor @ autocomplete doesn't really insert the username properly](https://github.com/wekan/wekan/pull/2717).
Thanks to whowillcare.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.43 2019-09-17 Wekan release
This release fixes the following bugs:
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v3.43.0"
appVersion: "v3.47.0"
files:
userUploads:
- README.md
+36 -16
View File
@@ -309,26 +309,46 @@ BlazeComponent.extendComponent({
events(start, end, timezone, callback) {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
const events = [];
const pushEvent = function(card, title, start, end, extraCls) {
start = start || card.startAt;
end = end || card.endAt;
title = title || card.title;
const className =
(extraCls ? `${extraCls} ` : '') +
(card.color ? `calendar-event-${card.color}` : '');
events.push({
id: card._id,
title,
start,
end: end || card.endAt,
allDay:
Math.abs(end.getTime() - start.getTime()) / 1000 === 24 * 3600,
url: FlowRouter.url('card', {
boardId: currentBoard._id,
slug: currentBoard.slug,
cardId: card._id,
}),
className,
});
};
currentBoard
.cardsInInterval(start.toDate(), end.toDate())
.forEach(function(card) {
events.push({
id: card._id,
title: card.title,
start: card.startAt,
end: card.endAt,
allDay:
Math.abs(card.endAt.getTime() - card.startAt.getTime()) /
1000 ===
24 * 3600,
url: FlowRouter.url('card', {
boardId: currentBoard._id,
slug: currentBoard.slug,
cardId: card._id,
}),
className: card.color ? `calendar-event-${card.color}` : null,
});
pushEvent(card);
});
currentBoard
.cardsDueInBetween(start.toDate(), end.toDate())
.forEach(function(card) {
pushEvent(
card,
`${card.title} ${TAPi18n.__('card-due')}`,
card.dueAt,
new Date(card.dueAt.getTime() + 36e5),
);
});
events.sort(function(first, second) {
return first.id > second.id ? 1 : -1;
});
callback(events);
},
eventResize(event, delta, revertFunc) {
+3 -2
View File
@@ -105,7 +105,8 @@
right: 5px;
top: 5px;
display:none;
@media only screen and (max-width: 1199px) {
// @media only screen and (max-width: 1199px) {
@media only screen and (max-width: 800px) {
display:block;
}
.fa-arrows
@@ -127,7 +128,7 @@
.badges
float: left
margin-top: 7px
color: darken(white, 50%)
color: darken(white, 80%)
&:empty
display: none
+1 -1
View File
@@ -31,7 +31,7 @@ BlazeComponent.extendComponent({
const itemsSelector = '.js-minicard:not(.placeholder, .js-card-composer)';
const $cards = this.$('.js-minicards');
if (window.matchMedia('(max-width: 1199px)').matches) {
if (Utils.isMiniScreen()) {
$('.js-minicards').sortable({
handle: '.handle',
});
+39 -11
View File
@@ -94,7 +94,13 @@ Template.editor.onRendered(() => {
currentBoard
.activeMembers()
.map(member => {
const username = Users.findOne(member.userId).username;
const user = Users.findOne(member.userId);
if (user._id === Meteor.userId()) {
return null;
}
const value = user.username;
const username =
value && value.match(/\s+/) ? `"${value}"` : value;
return username.includes(term) ? username : null;
})
.filter(Boolean),
@@ -120,9 +126,10 @@ Template.editor.onRendered(() => {
? [
['view', ['fullscreen']],
['table', ['table']],
['font', ['bold', 'underline']],
//['fontsize', ['fontsize']],
['font', ['bold']],
['color', ['color']],
['insert', ['video']], // iframe tag will be sanitized TODO if iframe[class=note-video-clip] can be added into safe list, insert video can be enabled
//['fontsize', ['fontsize']],
]
: [
['style', ['style']],
@@ -156,25 +163,45 @@ Template.editor.onRendered(() => {
}
return undefined;
};
let popupShown = false;
inputs.each(function(idx, input) {
mSummernotes[idx] = $(input).summernote({
placeholder,
callbacks: {
onKeydown(e) {
if (popupShown) {
e.preventDefault();
}
},
onKeyup(e) {
if (popupShown) {
e.preventDefault();
}
},
onInit(object) {
const originalInput = this;
const setAutocomplete = function(jEditor) {
if (jEditor !== undefined) {
jEditor.escapeableTextComplete(mentions).on({
'textComplete:show'() {
popupShown = true;
},
'textComplete:hide'() {
popupShown = false;
},
});
}
};
$(originalInput).on('submitted', function() {
// resetCommentInput has been called
if (!this.value) {
const sn = getSummernote(this);
sn && sn.summernote('reset');
object && object.editingArea.find('.note-placeholder').show();
sn && sn.summernote('code', '');
}
});
const jEditor = object && object.editable;
const toolbar = object && object.toolbar;
if (jEditor !== undefined) {
jEditor.escapeableTextComplete(mentions);
}
setAutocomplete(jEditor);
if (toolbar !== undefined) {
const fBtn = toolbar.find('.btn-fullscreen');
fBtn.on('click', function() {
@@ -264,7 +291,7 @@ Template.editor.onRendered(() => {
const someNote = getSummernote(object);
const original = someNote.summernote('code');
const cleaned = cleanPastedHTML(original); //this is where to call whatever clean function you want. I have mine in a different file, called CleanPastedHTML.
someNote.summernote('reset'); //clear original
someNote.summernote('code', ''); //clear original
someNote.summernote('pasteHTML', cleaned); //this sets the displayed content editor to the cleaned pasted code.
};
setTimeout(function() {
@@ -325,11 +352,12 @@ Blaze.Template.registerHelper(
}
return member;
});
const mentionRegex = /\B@([\w.]*)/gi;
const mentionRegex = /\B@(?:(?:"([\w.\s]*)")|([\w.]+))/gi; // including space in username
let currentMention;
while ((currentMention = mentionRegex.exec(content)) !== null) {
const [fullMention, username] = currentMention;
const [fullMention, quoteduser, simple] = currentMention;
const username = quoteduser || simple;
const knowedUser = _.findWhere(knowedUsers, { username });
if (!knowedUser) {
continue;
+9 -1
View File
@@ -21,7 +21,15 @@ DatePicker = BlazeComponent.extendComponent({
function(evt) {
this.find('#date').value = moment(evt.date).format('L');
this.error.set('');
this.find('#time').focus();
const timeInput = this.find('#time');
timeInput.focus();
if (!timeInput.value) {
const currentHour = evt.date.getHours();
const defaultMoment = moment(
currentHour > 0 ? evt.date : '1970-01-01 08:00:00',
); // default to 8:00 am local time
timeInput.value = defaultMoment.format('LT');
}
}.bind(this),
);
+1
View File
@@ -45,6 +45,7 @@ $.fn.escapeableTextComplete = function(strategies, options, ...otherArgs) {
});
},
});
return this;
};
EscapeActions.register('textcomplete', () => {}, () => dropdownMenuIsOpened, {
+2 -2
View File
@@ -271,8 +271,8 @@ services:
# dueat startat endat receivedat, also notification to
# the watchers and if any card is due, about due or past due.
#
# Notify due days, default 2 days before and after. 0 = due notifications disabled. Default: 2
#- NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2
# Notify due days, default is None, 2 days before and on the event day
#- NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2,0
#
# Notify due at hour of day. Default every morning at 8am. Can be 0-23.
# If env variable has parsing error, use default. Notification sent to watchers.
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+3 -2
View File
@@ -731,11 +731,12 @@
"almostdue": "current due time %s is approaching",
"pastdue": "current due time %s is past",
"duenow": "current due time %s is today",
"act-withDue": "__card__ due reminders [__board__]",
"act-newDue": "__list__/__card__ has 1st due reminder [__board__]",
"act-withDue": "__list__/__card__ due reminders [__board__]",
"act-almostdue": "was reminding the current due (__timeValue__) of __card__ is approaching",
"act-pastdue": "was reminding the current due (__timeValue__) of __card__ is past",
"act-duenow": "was reminding the current due (__timeValue__) of __card__ is now",
"act-atUserComment": "You were mentioned in [__board__] __card__",
"act-atUserComment": "You were mentioned in [__board__] __list__/__card__",
"delete-user-confirm-popup": "Are you sure you want to delete this account? There is no undo.",
"accounts-allowUserDelete": "Allow users to self delete their account",
"hide-minicard-label-text": "Hide minicard label text",
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+3 -2
View File
@@ -728,11 +728,12 @@
"almostdue": "La date d'échéance %s approche",
"pastdue": "La date d'échéance %s est passée",
"duenow": "La date d'échéance %s est aujourd'hui",
"act-withDue": "__card__ rappel d'échéance [__board__]",
"act-newDue": "__list__/__card__ a un 1er rappel d'échéance [__board__]",
"act-withDue": "__list__/__card__ rappel d'échéance [__board__]",
"act-almostdue": "rappelle que l'échéance (__timeValue__) de __card__ approche",
"act-pastdue": "rappelle que l'échéance (__timeValue__) de __card__ est passée",
"act-duenow": "rappelle que l'échéance (__timeValue__) de __card__ est maintenant",
"act-atUserComment": "Vous avez été mentionné dans [__board__] __card__",
"act-atUserComment": "Vous avez été mentionné dans [__board__] __list__/__card__",
"delete-user-confirm-popup": "Êtes-vous sûr de vouloir supprimer ce compte ? Cette opération ne peut pas être annulée. ",
"accounts-allowUserDelete": "Autoriser les utilisateurs à supprimer leur compte",
"hide-minicard-label-text": "Cacher le label de la minicarte",
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+11 -10
View File
@@ -352,7 +352,7 @@
"language": "Taal",
"last-admin-desc": "Je kunt de permissies niet veranderen omdat er minimaal een administrator moet zijn.",
"leave-board": "Verlaat bord",
"leave-board-pop": "Weet u zeker dat u __boardTitle__ wilt verlaten? U wordt verwijderd van alle kaarten binnen dit bord",
"leave-board-pop": "Weet je zeker dat je __boardTitle__ wilt verlaten? Je wordt verwijderd van alle kaarten binnen dit bord",
"leaveBoardPopup-title": "Bord verlaten?",
"link-card": "Link naar deze kaart",
"list-archive-cards": "Verplaats alle kaarten in deze lijst naar Archief",
@@ -472,7 +472,7 @@
"warn-list-archived": "Let op: deze kaart zit in gearchiveerde lijst",
"watch": "Bekijk",
"watching": "Bekijken",
"watching-info": "Je zal op de hoogte worden gesteld als er een verandering gebeurt op dit bord.",
"watching-info": "Je zal op de hoogte worden gesteld als er een verandering plaatsvind op dit bord.",
"welcome-board": "Welkom Bord",
"welcome-swimlane": "Mijlpaal 1",
"welcome-list1": "Basis",
@@ -502,12 +502,12 @@
"smtp-password": "Wachtwoord",
"smtp-tls": "TLS ondersteuning",
"send-from": "Van",
"send-smtp-test": "Verzend een test email naar uzelf",
"send-smtp-test": "Verzend een test email naar jezelf",
"invitation-code": "Uitnodigings code",
"email-invite-register-subject": "__inviter__ heeft je een uitnodiging gestuurd",
"email-invite-register-text": "Beste __user__,\n\n__inviter__ nodigt je uit voor een Kanban-bord om samen te werken.\n\nHet bord vind je via onderstaande link:\n__url__\n\nJe uitnodigingscode is: __icode__\n\nBedankt en tot ziens.",
"email-smtp-test-subject": "SMTP Test Email",
"email-smtp-test-text": "U heeft met succes een email verzonden",
"email-smtp-test-text": "Je hebt met succes een email verzonden",
"error-invitation-code-not-exist": "Uitnodigings code bestaat niet",
"error-notAuthorized": "Je bent niet toegestaan om deze pagina te bekijken.",
"webhook-title": "Webhook Naam",
@@ -728,13 +728,14 @@
"almostdue": "huidige vervaldatum %s nadert",
"pastdue": "huidige vervaldatum %s is verlopen",
"duenow": "huidige vervaldatum %s is vandaag",
"act-withDue": "__card__ verval herinneringen [__board__]",
"act-almostdue": "was aan het herinneren aan dat de huidige vervaldatum (__timeValue__) van __card__ nadert",
"act-pastdue": "was aan het herinneren aan dat de huidige vervaldatum (__timeValue__) van __card__ is verlopen",
"act-duenow": "was aan het herinneren aan dat de huidige vervaldatum (__timeValue__) van __card__ is nu",
"act-atUserComment": "Je bent genoemd op [__board__] op __card__",
"act-newDue": "__list__/__card__ heeft eerste vervaldatum herinnering [__board__]",
"act-withDue": "__list__/__card__ vervaldatum herinneringen [__board__]",
"act-almostdue": "wil je herinneren aan het naderen van de huidige vervaldatum (__timeValue__) van __card__ ",
"act-pastdue": "wil je herinneren aan het verlopen van de huidige vervaldatum (__timeValue__) van __card__ ",
"act-duenow": "wil je herinneren aan het vandaag verlopen van de huidige vervaldatum (__timeValue__) van __card__ ",
"act-atUserComment": "Je werd genoemd in [__board__] __list__/__card__",
"delete-user-confirm-popup": "Weet je zeker dat je dit account wilt verwijderen? Er is geen herstelmogelijkheid.",
"accounts-allowUserDelete": "Sta gebruikers toe om hun eigen account te verwijderen",
"hide-minicard-label-text": "Verberg minikaart labeltekst",
"show-desktop-drag-handles": "Show desktop drag handles"
"show-desktop-drag-handles": "Toon sleep gereedschap op werkblad"
}
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+741
View File
@@ -0,0 +1,741 @@
{
"accept": "Sprejmi",
"act-activity-notify": "Obvestilo o dejavnosti",
"act-addAttachment": "dodal priponko __attachment__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-deleteAttachment": "odstranil priponko __attachment__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addSubtask": "dodal podopravilo __subtask__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addLabel": "Dodal oznako __label__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addedLabel": "Dodal oznako __label__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removeLabel": "Odstranil oznako __label__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removedLabel": "Odstranil oznako __label__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addChecklist": "dodal kontrolni seznam __checklist__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addChecklistItem": "dodal postavko __checklistItem__ kontrolnega seznama __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removeChecklist": "odstranil kontrolni seznam __checklist__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removeChecklistItem": "odstranil postavko __checklistItem__ kontrolnega seznama __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-checkedItem": "obkljukal postavko __checklistItem__ kontrolnega seznama __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-uncheckedItem": "odkljukal postavko __checklistItem__ kontrolnega seznama __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-completeChecklist": "dokončal kontrolni seznam __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-uncompleteChecklist": "nedokončan kontrolni seznam __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-addComment": "komentiral na kartici __card__: __comment__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-editComment": "uredil komentar na kartici __card__: __comment__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-deleteComment": "izbrisal komentar na kartici __card__: __comment__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-createBoard": "ustvaril tablo __board__",
"act-createSwimlane": "ustvaril plavalno stezo __swimlane__ na tabli __board__",
"act-createCard": "ustvaril kartico __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-createCustomField": "ustvaril poljubno polje __customField__ na tabli __board__",
"act-deleteCustomField": "izbrisal poljubno polje __customField__ na tabli __board__",
"act-setCustomField": "uredil poljubno polje __customField__: __customFieldValue__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-createList": "dodal seznam __list__ na tablo __board__",
"act-addBoardMember": "dodal člana __member__ k tabli __board__",
"act-archivedBoard": "Tabla __board__ premaknjena v arhiv",
"act-archivedCard": "Kartica __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__ premaknjena v arhiv",
"act-archivedList": "Seznam __list__ na plavalni stezi __swimlane__ na tabli __board__ premaknjen v arhiv",
"act-archivedSwimlane": "Plavalna steza __swimlane__ na tabli __board__ premaknjena v arhiv",
"act-importBoard": "uvozil tablo __board__",
"act-importCard": "uvozil kartico __card__ na seznam __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-importList": "uvozil seznam __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-joinMember": "dodal član __member__ h kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-moveCard": "premakil kartico __card__ na tabli __board__ iz seznama __oldList__ na plavalni stezi __oldSwimlane__ na seznam __list__ na plavalni stezi __swimlane__",
"act-moveCardToOtherBoard": "premaknil kartico __card__ iz seznama __oldList__ na plavalni stezi __oldSwimlane__ na tabli __oldBoard__ na seznam __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-removeBoardMember": "odstranil člana __member__ iz table __board__",
"act-restoredCard": "obnovil kartico __card__ na seznam __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-unjoinMember": "odstranil člana __member__ iz kartice __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"act-withBoardTitle": "__board__",
"act-withCardTitle": "[__board__] __card__",
"actions": "Dejanja",
"activities": "Aktivnosti",
"activity": "Aktivnost",
"activity-added": "dodal %s v %s",
"activity-archived": "%s premaknjeno v arhiv",
"activity-attached": "pripel %s v %s",
"activity-created": "ustvaril %s",
"activity-customfield-created": "ustvaril poljubno polje%s",
"activity-excluded": "izključil %s iz %s",
"activity-imported": "uvozil %s v %s iz %s",
"activity-imported-board": "uvozil %s iz %s",
"activity-joined": "se je pridružil na %s",
"activity-moved": "premakil %s iz %s na %s",
"activity-on": "na %s",
"activity-removed": "odstranil %s iz %s",
"activity-sent": "poslano %s na %s",
"activity-unjoined": "se je odjavil iz %s",
"activity-subtask-added": "dodal podopravilo k %s",
"activity-checked-item": "obkljukal %s na kontrolnem seznamu %s od %s",
"activity-unchecked-item": "odkljukal %s na kontrolnem seznamu %s od %s",
"activity-checklist-added": "dodal kontrolni seznam na %s",
"activity-checklist-removed": "odstranil kontrolni seznam iz %s",
"activity-checklist-completed": "dokončal kontrolni seznam __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"activity-checklist-uncompleted": "nedokončal kontrolni seznam %s od %s",
"activity-checklist-item-added": "dodal postavko kontrolnega seznama na '%s' v %s",
"activity-checklist-item-removed": "odstranil postavko kontrolnega seznama iz '%s' v %s",
"add": "Dodaj",
"activity-checked-item-card": "obkljukal %s na kontrolnem seznamu %s",
"activity-unchecked-item-card": "odkljukal %s na kontrolnem seznamu %s",
"activity-checklist-completed-card": "dokončal kontrolni seznam __checklist__ na kartici __card__ na seznamu __list__ na plavalni stezi __swimlane__ na tabli __board__",
"activity-checklist-uncompleted-card": "nedokončal kontrolni seznam %s",
"activity-editComment": "uredil komentar %s",
"activity-deleteComment": "izbrisal komentar %s",
"add-attachment": "Dodaj priponko",
"add-board": "Dodaj tablo",
"add-card": "Dodaj kartico",
"add-swimlane": "Dodaj plavalno stezo",
"add-subtask": "Dodaj podopravilo",
"add-checklist": "Dodaj kontrolni seznam",
"add-checklist-item": "Dodaj postavko na kontrolni seznam",
"add-cover": "Dodaj ovitek",
"add-label": "Dodaj oznako",
"add-list": "Dodaj seznam",
"add-members": "Dodaj člane",
"added": "Dodano",
"addMemberPopup-title": "Člani",
"admin": "Administrator",
"admin-desc": "Lahko gleda in ureja kartice, odstrani člane in spreminja nastavitve table.",
"admin-announcement": "Najava",
"admin-announcement-active": "Aktivna vse-sistemska najava",
"admin-announcement-title": "Najava od administratorja",
"all-boards": "Vse table",
"and-n-other-card": "In __count__ druga kartica",
"and-n-other-card_plural": "In __count__ drugih kartic",
"apply": "Uporabi",
"app-is-offline": "Nalaganje, prosimo počakajte. Osveževanje strani bo povzročilo izgubo podatkov. Če nalaganje ne deluje, preverite, ali se strežnik ni ustavil.",
"archive": "Premakni v arhiv",
"archive-all": "Premakni vse v arhiv",
"archive-board": "Premakni tablo v arhiv",
"archive-card": "Premakni kartico v arhiv",
"archive-list": "Premakni seznam v arhiv",
"archive-swimlane": "Premakni plavalno stezo v arhiv",
"archive-selection": "Premakni označeno v arhiv",
"archiveBoardPopup-title": "Premakni tablo v arhiv?",
"archived-items": "Arhiv",
"archived-boards": "Table v arhivu",
"restore-board": "Obnovi tablo",
"no-archived-boards": "Nobene table ni v arhivu.",
"archives": "Arhiv",
"template": "Predloga",
"templates": "Predloge",
"assign-member": "Dodeli člana",
"attached": "pripeto",
"attachment": "Priponka",
"attachment-delete-pop": "Brisanje priponke je trajno. Ne obstaja razveljavitev.",
"attachmentDeletePopup-title": "Briši priponko?",
"attachments": "Priponke",
"auto-watch": "Samodejno spremljaj ustvarjene table",
"avatar-too-big": "Velikost avatarja je prevelika (70kB maks.)",
"back": "Nazaj",
"board-change-color": "Spremeni barvo",
"board-nb-stars": "%s zvezdic",
"board-not-found": "Tabla ni najdena",
"board-private-info": "Ta tabla bo <strong>privatna</strong>.",
"board-public-info": "Ta tabla bo <strong>javna</strong>.",
"boardChangeColorPopup-title": "Spremeni ozadje table",
"boardChangeTitlePopup-title": "Preimenuj tablo",
"boardChangeVisibilityPopup-title": "Spremeni vidnost",
"boardChangeWatchPopup-title": "Spremeni opazovanje",
"boardMenuPopup-title": "Nastavitve table",
"boards": "Table",
"board-view": "Pogled table",
"board-view-cal": "Koledar",
"board-view-swimlanes": "Plavalne steze",
"board-view-lists": "Seznami",
"bucket-example": "Kot na primer \"Življenjski seznam\"",
"cancel": "Prekliči",
"card-archived": "Kartica je premaknjena v arhiv.",
"board-archived": "Tabla je premaknjena v arhiv.",
"card-comments-title": "Ta kartica ima %s komentar.",
"card-delete-notice": "Brisanje je trajno. Izgubili boste vsa dejanja povezana s to kartico.",
"card-delete-pop": "Vsa dejanja bodo odstranjena iz vira dejavnosti in kartice ne boste mogli znova odpreti. Razveljavitve ni.",
"card-delete-suggest-archive": "Kartico lahko premaknete v arhiv, da jo odstranite s table in ohranite dejavnost.",
"card-due": "Rok",
"card-due-on": "Rok",
"card-spent": "Porabljen čas",
"card-edit-attachments": "Uredi priponke",
"card-edit-custom-fields": "Uredi poljubna polja",
"card-edit-labels": "Uredi oznake",
"card-edit-members": "Uredi člane",
"card-labels-title": "Spremeni oznake za kartico.",
"card-members-title": "Dodaj ali odstrani člane table iz kartice.",
"card-start": "Začetek",
"card-start-on": "Začne ob",
"cardAttachmentsPopup-title": "Pripni od",
"cardCustomField-datePopup-title": "Spremeni datum",
"cardCustomFieldsPopup-title": "Uredi poljubna polja",
"cardDeletePopup-title": "Briši kartico?",
"cardDetailsActionsPopup-title": "Dejanja kartice",
"cardLabelsPopup-title": "Oznake",
"cardMembersPopup-title": "Člani",
"cardMorePopup-title": "Več",
"cardTemplatePopup-title": "Ustvari predlogo",
"cards": "Kartice",
"cards-count": "Kartic",
"casSignIn": "Vpiši se s CAS",
"cardType-card": "Kartica",
"cardType-linkedCard": "Povezana kartica",
"cardType-linkedBoard": "Povezana tabla",
"change": "Spremeni",
"change-avatar": "Spremeni avatar",
"change-password": "Spremeni geslo",
"change-permissions": "Spremeni dovoljenja",
"change-settings": "Spremeni nastavitve",
"changeAvatarPopup-title": "Spremeni avatar",
"changeLanguagePopup-title": "Spremeni jezik",
"changePasswordPopup-title": "Spremeni geslo",
"changePermissionsPopup-title": "Spremeni dovoljenja",
"changeSettingsPopup-title": "Spremeni nastavitve",
"subtasks": "Podopravila",
"checklists": "Kontrolni seznami",
"click-to-star": "Kliknite, da označite tablo z zvezdico.",
"click-to-unstar": "Kliknite, da odznačite tablo z zvezdico.",
"clipboard": "Odložišče ali povleci & spusti",
"close": "Zapri",
"close-board": "Zapri tablo",
"close-board-pop": "Tablo boste lahko obnovili s klikom na gumb »Arhiviraj« na začetni glavi.",
"color-black": "črna",
"color-blue": "modra",
"color-crimson": "temno rdeča",
"color-darkgreen": "temno zelena",
"color-gold": "zlata",
"color-gray": "siva",
"color-green": "zelena",
"color-indigo": "indigo",
"color-lime": "limeta",
"color-magenta": "magenta",
"color-mistyrose": "rožnata",
"color-navy": "navy modra",
"color-orange": "oranžna",
"color-paleturquoise": "bledo turkizna",
"color-peachpuff": "breskvasta",
"color-pink": "roza",
"color-plum": "slivova",
"color-purple": "vijolična",
"color-red": "rdeča",
"color-saddlebrown": "rjava",
"color-silver": "srebrna",
"color-sky": "nebesna",
"color-slateblue": "skrilasto modra",
"color-white": "bela",
"color-yellow": "rumena",
"unset-color": "Onemogoči",
"comment": "Komentiraj",
"comment-placeholder": "Napiši komentar",
"comment-only": "Samo komentar",
"comment-only-desc": "Lahko komentirate samo na karticah.",
"no-comments": "Ni komentarjev",
"no-comments-desc": "Ne morete videti komentarjev in dejavnosti.",
"computer": "Računalnik",
"confirm-subtask-delete-dialog": "Ste prepričani, da želite izbrisati podopravilo?",
"confirm-checklist-delete-dialog": "Ste prepričani, da želite izbrisati kontrolni seznam?",
"copy-card-link-to-clipboard": "Kopiraj povezavo kartice na odložišče",
"linkCardPopup-title": "Poveži kartico",
"searchElementPopup-title": "Išči",
"copyCardPopup-title": "Kopiraj kartico",
"copyChecklistToManyCardsPopup-title": "Kopiraj predlogo kontrolnega seznama na več kartic",
"copyChecklistToManyCardsPopup-instructions": "Naslovi ciljnih kartic in opisi v tem JSON formatu",
"copyChecklistToManyCardsPopup-format": "[ {\"naslov\": \"Naslov prve kartice\", \"opis\":\"Opis prve kartice\"}, {\"naslov\":\"Opis druge kartice\",\"opis\":\"Opis druge kartice\"},{\"naslov\":\"Naslov zadnje kartice\",\"opis\":\"Opis zadnje kartice\"} ]",
"create": "Ustvari",
"createBoardPopup-title": "Ustvari tablo",
"chooseBoardSourcePopup-title": "Uvozi tablo",
"createLabelPopup-title": "Ustvari oznako",
"createCustomField": "Ustvari polje",
"createCustomFieldPopup-title": "Ustvari polje",
"current": "trenutno",
"custom-field-delete-pop": "Razveljavitve ni. To bo odstranilo to poljubno polje iz vseh kartic in izbrisalo njegovo zgodovino.",
"custom-field-checkbox": "Potrditveno polje",
"custom-field-date": "Datum",
"custom-field-dropdown": "Spustni seznam",
"custom-field-dropdown-none": "(nobeno)",
"custom-field-dropdown-options": "Možnosti seznama",
"custom-field-dropdown-options-placeholder": "Pritisnite enter da dodate več možnosti",
"custom-field-dropdown-unknown": "(neznano)",
"custom-field-number": "Število",
"custom-field-text": "Besedilo",
"custom-fields": "Poljubna polja",
"date": "Datum",
"decline": "Zavrni",
"default-avatar": "Privzeti avatar",
"delete": "Briši",
"deleteCustomFieldPopup-title": "Briši poljubno polje?",
"deleteLabelPopup-title": "Briši oznako?",
"description": "Opis",
"disambiguateMultiLabelPopup-title": "Razdvoji Dejanje Oznake",
"disambiguateMultiMemberPopup-title": "Razdvoji dejanje člana",
"discard": "Razveljavi",
"done": "Končano",
"download": "Prenos",
"edit": "Uredi",
"edit-avatar": "Spremeni avatar",
"edit-profile": "Uredi profil",
"edit-wip-limit": "Uredi omejitev št. kartic",
"soft-wip-limit": "Omehčaj omejitev št. kartic",
"editCardStartDatePopup-title": "Spremeni začetni datum",
"editCardDueDatePopup-title": "Spremeni datum zapadlosti",
"editCustomFieldPopup-title": "Uredi polje",
"editCardSpentTimePopup-title": "Spremeni porabljen čas",
"editLabelPopup-title": "Spremeni oznako",
"editNotificationPopup-title": "Uredi obvestilo",
"editProfilePopup-title": "Uredi profil",
"email": "E-pošta",
"email-enrollAccount-subject": "Up. račun ustvarjen za vas na __siteName__",
"email-enrollAccount-text": "Pozdravljeni __user__,\n\nZa začetek uporabe kliknite spodnjo povezavo.\n\n__url__\n\nHvala.",
"email-fail": "Pošiljanje e-pošte ni uspelo",
"email-fail-text": "Napaka pri poskusu pošiljanja e-pošte",
"email-invalid": "Neveljavna e-pošta",
"email-invite": "Povabi z uporabo e-pošte",
"email-invite-subject": "__inviter__ vam je poslal povabilo",
"email-invite-text": "Spoštovani __user__,\n\n__inviter__ vas vabi k sodelovanju na tabli \"__board__\".\n\nProsimo sledite spodnji povezavi:\n\n__url__\n\nHvala.",
"email-resetPassword-subject": "Ponastavite geslo na __siteName__",
"email-resetPassword-text": "Pozdravljeni __user__,\n\nZa ponastavitev gesla kliknite na spodnjo povezavo.\n\n__url__\n\nHvala.",
"email-sent": "E-pošta poslana",
"email-verifyEmail-subject": "Preverite svoje e-poštni naslov na __siteName__",
"email-verifyEmail-text": "Pozdravljeni __user__,\n\nDa preverite e-poštni naslov za vaš uporabniški račun, kliknite na spodnjo povezavo.\n\n__url__\n\nHvala.",
"enable-wip-limit": "Vklopi omejitev št. kartic",
"error-board-doesNotExist": "Ta tabla ne obstaja",
"error-board-notAdmin": "Če želite to narediti, morate biti skrbnik te table",
"error-board-notAMember": "Če želite to narediti, morate biti član te table",
"error-json-malformed": "Vaše besedilo ni veljaven JSON",
"error-json-schema": "Vaši JSON podatki ne vsebujejo pravilnih informacij v ustreznem formatu",
"error-list-doesNotExist": "Seznam ne obstaja",
"error-user-doesNotExist": "Uporabnik ne obstaja",
"error-user-notAllowSelf": "Ne morete povabiti sebe",
"error-user-notCreated": "Ta uporabnik ni ustvarjen",
"error-username-taken": "To up. ime že obstaja",
"error-email-taken": "E-poštni naslov je že zaseden",
"export-board": "Izvozi tablo",
"filter": "Filtriraj",
"filter-cards": "Filtriraj kartice",
"filter-clear": "Počisti filter",
"filter-no-label": "Brez oznake",
"filter-no-member": "Brez člana",
"filter-no-custom-fields": "Brez poljubnih polj",
"filter-show-archive": "Prikaži arhivirane sezname",
"filter-hide-empty": "Skrij prazne sezname",
"filter-on": "Filter vklopljen",
"filter-on-desc": "Filtrirane kartice na tej tabli. Kliknite tukaj za urejanje filtra.",
"filter-to-selection": "Filtriraj izbrane",
"advanced-filter-label": "Napredni filter",
"advanced-filter-description": "Napredni filter omogoča pripravo niza, ki vsebuje naslednje operaterje: == != <= >= && || () Preslednica se uporablja kot ločilo med operatorji. Vsa polja po meri lahko filtrirate tako, da vtipkate njihova imena in vrednosti. Na primer: Polje1 == Vrednost1. Opomba: Če polja ali vrednosti vsebujejo presledke, jih morate postaviti v enojne narekovaje. Primer: 'Polje 1' == 'Vrednost 1'. Če želite preskočiti posamezne kontrolne znake (' \\/), lahko uporabite \\. Na primer: Polje1 == I\\'m. Prav tako lahko kombinirate več pogojev. Na primer: F1 == V1 || F1 == V2. Običajno se vsi operaterji interpretirajo od leve proti desni. Vrstni red lahko spremenite tako, da postavite oklepaje. Na primer: F1 == V1 && ( F2 == V2 || F2 == V3 ). Prav tako lahko po besedilu iščete z uporabo pravil regex: F1 == /Tes.*/i",
"fullname": "Polno Ime",
"header-logo-title": "Pojdi nazaj na stran s tablami.",
"hide-system-messages": "Skrij sistemska sporočila",
"headerBarCreateBoardPopup-title": "Ustvari tablo",
"home": "Domov",
"import": "Uvozi",
"link": "Poveži",
"import-board": "uvozi tablo",
"import-board-c": "Uvozi tablo",
"import-board-title-trello": "Uvozi tablo iz orodja Trello",
"import-board-title-wekan": "Uvozi tablo iz prejšnjega izvoza",
"import-sandstorm-backup-warning": "Ne zbrišite podatkov, ki jih uvozite z originalne izvožene table ali Trello, preden preverite ali se tabla uspešno zapre in odpre ali pa boste dobili sporočilo Tabla ni najdena, kar pomeni izgubo podatkov.",
"import-sandstorm-warning": "Uvožena tabla bo izbrisala vse obstoječe podatke na tabli in jih zamenjala z uvoženo tablo.",
"from-trello": "Iz orodja Trello",
"from-wekan": "Od prejšnjega izvoza",
"import-board-instruction-trello": "V vaši Trello tabli pojdite na 'Meni', 'Več', 'Natisni in Izvozi', 'Izvozi JSON', in kopirajte prikazano besedilo.",
"import-board-instruction-wekan": "V vaši tabli pojdite na 'Meni', 'Izvozi tablo' in kopirajte besedilo iz prenesene datoteke.",
"import-board-instruction-about-errors": "Pri napakah med uvozom table v nekaterih primerih uvažanje še deluje, uvožena tabla pa je na strani Vse Table.",
"import-json-placeholder": "Tukaj prilepite veljavne JSON podatke",
"import-map-members": "Mapiraj člane",
"import-members-map": "Vaša uvožena tabla vsebuje nekaj članov. Prosimo mapirajte člane, ki jih želite uvoziti, z vašimi uporabniki.",
"import-show-user-mapping": "Preglejte povezane člane",
"import-user-select": "Izberite obstoječega uporabnika, ki ga želite uporabiti kot tega člana.",
"importMapMembersAddPopup-title": "Izberite člana",
"info": "Različica",
"initials": "Inicialke",
"invalid-date": "Neveljaven datum",
"invalid-time": "Neveljaven čas",
"invalid-user": "Neveljaven uporabnik",
"joined": "se je pridružil",
"just-invited": "Povabljeni ste k tej tabli",
"keyboard-shortcuts": "Bližnjične tipke",
"label-create": "Ustvari Oznako",
"label-default": "%s oznaka (privzeto)",
"label-delete-pop": "Razveljavitve ni. To bo odstranilo to oznako iz vseh kartic in izbrisalo njeno zgodovino.",
"labels": "Oznake",
"language": "Jezik",
"last-admin-desc": "Ne morete zamenjati vlog, ker mora obstajati vsaj en admin.",
"leave-board": "Zapusti tablo",
"leave-board-pop": "Ste prepričani, da želite zapustiti tablo __boardTitle__? Odstranjeni boste iz vseh kartic na tej tabli.",
"leaveBoardPopup-title": "Zapusti tablo ?",
"link-card": "Poveži s to kartico",
"list-archive-cards": "Premakni vse kartice v tem seznamu v arhiv",
"list-archive-cards-pop": "To bo odstranilo vse kartice tega seznama iz table. Da si ogledate kartice v arhivu in jih vrnete na tablo, kliknite \"Meni\" > \"arhiv\".",
"list-move-cards": "Premakni vse kartice na seznamu",
"list-select-cards": "Izberi vse kartice na seznamu",
"set-color-list": "Nastavi barvo",
"listActionPopup-title": "Dejanja seznama",
"swimlaneActionPopup-title": "Dejanja plavalnih stez",
"swimlaneAddPopup-title": "Dodaj plavalno stezo spodaj",
"listImportCardPopup-title": "Uvozi Trello kartico",
"listMorePopup-title": "Več",
"link-list": "Poveži s tem seznamom",
"list-delete-pop": "Vsa dejanja bodo odstranjena iz vira dejavnosti in seznama ne boste mogli obnoviti. Razveljavitve ni.",
"list-delete-suggest-archive": "Lahko premaknete seznam v arhiv, da ga odstranite iz table in ohranite dejavnosti.",
"lists": "Seznami",
"swimlanes": "Plavalne steze",
"log-out": "Odjava",
"log-in": "Prijava",
"loginPopup-title": "Prijava",
"memberMenuPopup-title": "Nastavitve članov",
"members": "Člani",
"menu": "Meni",
"move-selection": "Premakni izbiro",
"moveCardPopup-title": "Premakni kartico",
"moveCardToBottom-title": "Premakni na dno",
"moveCardToTop-title": "Premakni na vrh",
"moveSelectionPopup-title": "Premakni izbiro",
"multi-selection": "Multi-Izbira",
"multi-selection-on": "Multi-Izbira je omogočena",
"muted": "Utišano",
"muted-info": "O spremembah na tej tabli nikoli ne boste obveščeni",
"my-boards": "Moje Table",
"name": "Ime",
"no-archived-cards": "Ni kartic v arhivu",
"no-archived-lists": "Ni seznamov v arhivu",
"no-archived-swimlanes": "Ni plavalnih stez v arhivu",
"no-results": "Ni zadetkov",
"normal": "Normalno",
"normal-desc": "Lahko gleda in ureja kartice. Ne more spreminjati nastavitev.",
"not-accepted-yet": "Povabilo še ni sprejeto.",
"notify-participate": "Prejemajte posodobitve kartic, na katerih sodelujete kot ustvarjalec ali član",
"notify-watch": "Prejemajte posodobitve opazovanih tabel, seznamov ali kartic",
"optional": "opcijsko",
"or": "ali",
"page-maybe-private": "Ta stran je mogoče privatna. Verjetno si jo lahko ogledate po<a href='%s'>prijavi</a>.",
"page-not-found": "Stran ne obstaja.",
"password": "Geslo",
"paste-or-dragdrop": "prilepi ali povleci & spusti datoteko slike (samo slika)",
"participating": "Sodelovanje",
"preview": "Predogled",
"previewAttachedImagePopup-title": "Predogled",
"previewClipboardImagePopup-title": "Predogled",
"private": "Zasebno",
"private-desc": "Ta tabla je zasebna. Samo dodani uporabniki lahko vidijo ali urejajo vsebino.",
"profile": "Profil",
"public": "Javno",
"public-desc": "Ta tabla je javna. Vidna je vsakomur s povezavo do table in bo prikazana v zadetkih iskalnikov kot Google. Samo uporabniki table jo lahko urejajo.",
"quick-access-description": "Če tablo označite z zvezdico, bo tukaj dodana bližnjica.",
"remove-cover": "Odstrani ovitek",
"remove-from-board": "Odstrani iz table",
"remove-label": "Odstrani oznako",
"listDeletePopup-title": "Odstrani seznam?",
"remove-member": "Odstrani člana",
"remove-member-from-card": "Odstrani iz kartice",
"remove-member-pop": "Odstrani __name__ (__username__) iz __boardTitle__? Član bo odstranjen iz vseh kartic te table in bo prejel obvestilo.",
"removeMemberPopup-title": "Odstrani člana?",
"rename": "Preimenuj",
"rename-board": "Preimenuj tablo",
"restore": "Obnovi",
"save": "Shrani",
"search": "Išči",
"rules": "Pravila",
"search-cards": "Išči po imenih kartic in opisih na tej tabli",
"search-example": "Besedilo za iskanje?",
"select-color": "Izberi barvo",
"set-wip-limit-value": "Nastavi omejitev maksimalnega števila opravil v tem seznamu",
"setWipLimitPopup-title": "Nastavi omejitev št. kartic",
"shortcut-assign-self": "Dodeli sebe k trenutni kartici",
"shortcut-autocomplete-emoji": "Samodokončaj emoji",
"shortcut-autocomplete-members": "Samodokončaj člane",
"shortcut-clear-filters": "Počisti vse filtre",
"shortcut-close-dialog": "Zapri dialog",
"shortcut-filter-my-cards": "Filtriraj moje kartice",
"shortcut-show-shortcuts": "Prikaži ta seznam bližnjic",
"shortcut-toggle-filterbar": "Preklopi stransko vrstico za filter",
"shortcut-toggle-sidebar": "Preklopi stransko vrstico table",
"show-cards-minimum-count": "Prikaži število kartic, če seznam vsebuje več kot",
"sidebar-open": "Odpri stransko vrstico",
"sidebar-close": "Zapri stransko vrstico",
"signupPopup-title": "Ustvari up. račun",
"star-board-title": "Kliknite, da označite to tablo z zvezdico. Prikazana bo na vrhu vašega seznama tabel.",
"starred-boards": "Table z zvezdico",
"starred-boards-description": "Table z zvezdico se prikažejo na vrhu vašega seznama tabel.",
"subscribe": "Naročite se",
"team": "Skupina",
"this-board": "to tablo",
"this-card": "kartico",
"spent-time-hours": "Porabljen čas (ure)",
"overtime-hours": "Presežen čas (ure)",
"overtime": "Presežen čas",
"has-overtime-cards": "Ima kartice s preseženim časom",
"has-spenttime-cards": "Ima kartice s porabljenim časom",
"time": "Čas",
"title": "Naslov",
"tracking": "Sledenje",
"tracking-info": "Obveščeni boste o vseh spremembah kartic, kjer sodelujete kot lastnik ali član.",
"type": "Tip",
"unassign-member": "Odjavi člana",
"unsaved-description": "Imate neshranjen opis.",
"unwatch": "Prekliči opazovanje",
"upload": "Naloži",
"upload-avatar": "Naloži avatar",
"uploaded-avatar": "Naložil avatar",
"username": "Up. ime",
"view-it": "Oglej",
"warn-list-archived": "opozorilo: ta kartica je v seznamu v arhivu",
"watch": "Opazuj",
"watching": "Opazuje",
"watching-info": "O spremembah na tej tabli boste obveščeni",
"welcome-board": "Tabla Dobrodošli",
"welcome-swimlane": "Mejnik 1",
"welcome-list1": "Osnove",
"welcome-list2": "Napredno",
"card-templates-swimlane": "Predloge kartice",
"list-templates-swimlane": "Predloge seznama",
"board-templates-swimlane": "Predloge table",
"what-to-do": "Kaj želite storiti?",
"wipLimitErrorPopup-title": "Neveljaven limit št. kartic",
"wipLimitErrorPopup-dialog-pt1": "Število opravil v tem seznamu je višje od definiranega limita št. kartic.",
"wipLimitErrorPopup-dialog-pt2": "Prosimo premaknite nekaj opravil iz tega seznama ali nastavite višji limit št. kartic.",
"admin-panel": "Skrbniška plošča",
"settings": "Nastavitve",
"people": "Ljudje",
"registration": "Registracija",
"disable-self-registration": "Onemogoči samo-registracijo",
"invite": "Povabi",
"invite-people": "Povabi ljudi",
"to-boards": "K tabli(am)",
"email-addresses": "E-poštni naslovi",
"smtp-host-description": "Naslov vašega strežnika SMTP.",
"smtp-port-description": "Vrata vašega strežnika SMTP za odhodno pošto.",
"smtp-tls-description": "Omogoči šifriranje TLS za SMTP strežnik.",
"smtp-host": "SMTP gostitelj",
"smtp-port": "SMTP vrata",
"smtp-username": "Up. ime",
"smtp-password": "Geslo",
"smtp-tls": "TLS podpora",
"send-from": "Od",
"send-smtp-test": "Pošljite testno e-pošto na svoj naslov",
"invitation-code": "Koda Povabila",
"email-invite-register-subject": "__inviter__ vam je poslal povabilo",
"email-invite-register-text": "Dragi __user__,\n\n__inviter__ vas vabi na kanban tablo za sodelovanje.\n\nProsimo sledite spodnji povezavi:\n__url__\n\nVaša koda povabila je: __icode__\n\nHvala.",
"email-smtp-test-subject": "SMTP testna e-pošta",
"email-smtp-test-text": "Uspešno ste poslali e-pošto",
"error-invitation-code-not-exist": "Koda povabila ne obstaja",
"error-notAuthorized": "Nimate pravic za ogled te strani.",
"webhook-title": "Ime spletnega vmesnika (webhook)",
"webhook-token": "Žeton (opcijsko za avtentikacijo)",
"outgoing-webhooks": "Izhodni spletni vmesniki (webhooks)",
"bidirectional-webhooks": "Dvo-smerni spletni vmesniki (webhooks)",
"outgoingWebhooksPopup-title": "Izhodni spletni vmesniki (webhooks)",
"boardCardTitlePopup-title": "Filter po naslovu kartice",
"disable-webhook": "Onemogoči ta spletni vmesnik (webhook)",
"global-webhook": "Globalni spletni vmesnik (webhook)",
"new-outgoing-webhook": "Nov izhodni spletni vmesnik (webhook)",
"no-name": "(Neznano)",
"Node_version": "Node različica",
"Meteor_version": "Meteor različica",
"MongoDB_version": "MongoDB različica",
"MongoDB_storage_engine": "MongoDB storage engine",
"MongoDB_Oplog_enabled": "MongoDB Oplog omogočen",
"OS_Arch": "OS Arhitektura",
"OS_Cpus": "OS število CPU",
"OS_Freemem": "OS prost pomnilnik",
"OS_Loadavg": "OS povp. obremenitev",
"OS_Platform": "OS platforma",
"OS_Release": "OS izdaja",
"OS_Totalmem": "OS skupni pomnilnik",
"OS_Type": "OS tip",
"OS_Uptime": "OS čas delovanja",
"days": "dnevi",
"hours": "ure",
"minutes": "minute",
"seconds": "sekunde",
"show-field-on-card": "Prikaži to polje na kartici",
"automatically-field-on-card": "Samodejno dodaj polja na vse kartice",
"showLabel-field-on-card": "Prikaži oznako polja na mini kartici",
"yes": "Da",
"no": "Ne",
"accounts": "Up. računi",
"accounts-allowEmailChange": "Dovoli spremembo e-poštnega naslova",
"accounts-allowUserNameChange": "Dovoli spremembo up. imena",
"createdAt": "Ustvarjen ob",
"verified": "Preverjeno",
"active": "Aktivno",
"card-received": "Prejeto",
"card-received-on": "Prejeto ob",
"card-end": "Konec",
"card-end-on": "Končano na",
"editCardReceivedDatePopup-title": "Spremeni datum prejema",
"editCardEndDatePopup-title": "Spremeni končni datum",
"setCardColorPopup-title": "Nastavi barvo",
"setCardActionsColorPopup-title": "Izberi barvo",
"setSwimlaneColorPopup-title": "Izberi barvo",
"setListColorPopup-title": "Izberi barvo",
"assigned-by": "Dodelil",
"requested-by": "Zahteval",
"board-delete-notice": "Brisanje je trajno. Izgubili boste vse sezname, kartice in akcije, povezane z desko.",
"delete-board-confirm-popup": "Vsi seznami, kartice, oznake in dejavnosti bodo izbrisani in vsebine table ne boste mogli obnoviti. Razveljavitve ni.",
"boardDeletePopup-title": "Izbriši tablo?",
"delete-board": "Izbriši tablo",
"default-subtasks-board": "Podopravila za tablo",
"default": "Privzeto",
"queue": "Čakalna vrsta",
"subtask-settings": "Nastavitve podopravil",
"boardSubtaskSettingsPopup-title": "Nastavitve podopravil table",
"show-subtasks-field": "Dovoli pod-poravila na karticah",
"deposit-subtasks-board": "Deponiraj podopravila na tole tablo:",
"deposit-subtasks-list": "Ciljni seznam za deponirana podopravila:",
"show-parent-in-minicard": "Pokaži starša na mini-kartici:",
"prefix-with-full-path": "Predpona s celotno potjo",
"prefix-with-parent": "Predpona s staršem",
"subtext-with-full-path": "Podbesedilo s celotno potjo",
"subtext-with-parent": "Podbesedilo s staršem",
"change-card-parent": "Zamenjaj starša kartice",
"parent-card": "Starševska kartica",
"source-board": "Izvorna tabla",
"no-parent": "Ne prikaži starša",
"activity-added-label": "dodal oznako '%s' do %s",
"activity-removed-label": "odstranil oznako '%s' od %s",
"activity-delete-attach": "izbrisal priponko od %s",
"activity-added-label-card": "dodal oznako '%s'",
"activity-removed-label-card": "izbrisal oznako '%s'",
"activity-delete-attach-card": "izbrisal priponko",
"activity-set-customfield": "nastavi polje po meri '%s' do '%s' v %s",
"activity-unset-customfield": "zbriši polje po meri '%s' v %s",
"r-rule": "Pravilo",
"r-add-trigger": "Dodaj prožilec",
"r-add-action": "Dodaj akcijo",
"r-board-rules": "Pravila table",
"r-add-rule": "Dodaj pravilo",
"r-view-rule": "Poglej pravilo",
"r-delete-rule": "Izbriši pravilo",
"r-new-rule-name": "Ime novega pravila",
"r-no-rules": "Ni pravil",
"r-when-a-card": "Ko je kartica",
"r-is": " ",
"r-is-moved": "premaknjena",
"r-added-to": "dodan na",
"r-removed-from": "izbrisan iz",
"r-the-board": "tabla",
"r-list": "seznam",
"set-filter": "Nastavi filter",
"r-moved-to": "premaknjena v",
"r-moved-from": "premaknjena iz",
"r-archived": "premaknjena v arhiv",
"r-unarchived": "obnovljena iz arhiva",
"r-a-card": "kartico",
"r-when-a-label-is": "Ko je oznaka",
"r-when-the-label": "Ko je oznaka",
"r-list-name": "ime sezn.",
"r-when-a-member": "Ko je član",
"r-when-the-member": "Ko je član",
"r-name": "ime",
"r-when-a-attach": "Ko je priponka",
"r-when-a-checklist": "Ko je kontrolni seznam",
"r-when-the-checklist": "Ko kontrolni seznam",
"r-completed": "zaključen",
"r-made-incomplete": "nastavljen kot nedokončan",
"r-when-a-item": "Ko je kontrolni seznam",
"r-when-the-item": "Ko je element kontrolnega seznama",
"r-checked": "označen",
"r-unchecked": "odznačen",
"r-move-card-to": "Premakni kartico na",
"r-top-of": "Vrh",
"r-bottom-of": "Dno",
"r-its-list": "pripadajočega seznama",
"r-archive": "premaknjena v arhiv",
"r-unarchive": "Obnovi iz arhiva",
"r-card": "kartico",
"r-add": "Dodaj",
"r-remove": "Odstrani",
"r-label": "oznaka",
"r-member": "član",
"r-remove-all": "Izbriši vse člane iz kartice",
"r-set-color": "Nastavi barvo na",
"r-checklist": "kontrolni seznam",
"r-check-all": "Označi vse",
"r-uncheck-all": "Odznači vse",
"r-items-check": "postavke kontrolnega lista",
"r-check": "Označi",
"r-uncheck": "Odznači",
"r-item": "postavka",
"r-of-checklist": "kontrolnega seznama",
"r-send-email": "Pošlji e-pošto",
"r-to": "naslovnik",
"r-subject": "zadeva",
"r-rule-details": "Podrobnosti pravila",
"r-d-move-to-top-gen": "Premakni kartico na vrh pripadajočega sezama",
"r-d-move-to-top-spec": "Premakni kartico na vrh seznama",
"r-d-move-to-bottom-gen": "Premakni kartico na dno pripadajočega seznama",
"r-d-move-to-bottom-spec": "Premakni kartico na dno seznama",
"r-d-send-email": "Pošlji e-pošto",
"r-d-send-email-to": "na",
"r-d-send-email-subject": "zadeva",
"r-d-send-email-message": "vsebina",
"r-d-archive": "Premakni kartico v arhiv",
"r-d-unarchive": "Obnovi kartico iz arhiva",
"r-d-add-label": "Dodaj oznako",
"r-d-remove-label": "Izbriši oznako",
"r-create-card": "Ustvari novo kartico",
"r-in-list": "v seznamu",
"r-in-swimlane": "v plavalni stezi",
"r-d-add-member": "Dodaj člana",
"r-d-remove-member": "Odstrani člana",
"r-d-remove-all-member": "Odstrani vse člane",
"r-d-check-all": "Označi vse elemente seznama",
"r-d-uncheck-all": "Odznači vse elemente seznama",
"r-d-check-one": "Označi element",
"r-d-uncheck-one": "Odznači element",
"r-d-check-of-list": "kontrolnega seznama",
"r-d-add-checklist": "Dodaj kontrolni list",
"r-d-remove-checklist": "Odstrani kotrolni list",
"r-by": "od",
"r-add-checklist": "Dodaj kontrolni list",
"r-with-items": "s postavkami",
"r-items-list": "el1,el2,el3",
"r-add-swimlane": "Dodaj plavalno stezo",
"r-swimlane-name": "ime pl. steze",
"r-board-note": "Opomba: polje pustite prazno, da ustreza vsaki možni vrednosti.",
"r-checklist-note": "Opomba: elementi kontrolnega seznama morajo biti zapisani kot vrednosti, ločene z vejicami.",
"r-when-a-card-is-moved": "Ko je kartica premaknjena v drug seznam",
"r-set": "Nastavi",
"r-update": "Posodobi",
"r-datefield": "polje z datumom",
"r-df-start-at": "začetek",
"r-df-due-at": "rok",
"r-df-end-at": "konec",
"r-df-received-at": "prejeto",
"r-to-current-datetime": "v trenutni datum/čas",
"r-remove-value-from": "Izbriši vrednost iz",
"ldap": "LDAP",
"oauth2": "OAuth2",
"cas": "CAS",
"authentication-method": "Metoda avtentikacije",
"authentication-type": "Način avtentikacije",
"custom-product-name": "Ime izdelka po meri",
"layout": "Postavitev",
"hide-logo": "Skrij logo",
"add-custom-html-after-body-start": "Dodaj HTML po meri po <body> začetku",
"add-custom-html-before-body-end": "Dodaj HMTL po meri po </body> koncu",
"error-undefined": "Prišlo je do napake",
"error-ldap-login": "Prišlo je do napake ob prijavi",
"display-authentication-method": "Prikaži metodo avtentikacije",
"default-authentication-method": "Privzeta metoda avtentikacije",
"duplicate-board": "Dupliciraj tablo",
"people-number": "Število ljudi je:",
"swimlaneDeletePopup-title": "Zbriši plavalno stezo?",
"swimlane-delete-pop": "Vsa dejanja bodo odstranjena iz seznama dejavnosti. Plavalne steze ne boste mogli obnoviti. Razveljavitve ni.",
"restore-all": "Obnovi vse",
"delete-all": "Izbriši vse",
"loading": "Nalagam, prosimo počakajte",
"previous_as": "zadnji čas je bil",
"act-a-dueAt": "spremenil rok zapadlosti na \nKdaj: __timeValue__\nKje: __card__\n prejšnji rok zapadlosti je bil __timeOldValue__",
"act-a-endAt": "spremenil čas dokončanja na __timeValue__ iz (__timeOldValue__)",
"act-a-startAt": "spremenil čas pričetka na __timeValue__ iz (__timeOldValue__)",
"act-a-receivedAt": "spremenil čas prejema na __timeValue__ iz (__timeOldValue__)",
"a-dueAt": "spremenil rok v",
"a-endAt": "spremenil končni čas v",
"a-startAt": "spremenil začetni čas v",
"a-receivedAt": "spremenil čas prejetja v",
"almostdue": "trenutni rok %s se približuje",
"pastdue": "trenutni rok %s je potekel",
"duenow": "trenutni rok %s je danes",
"act-newDue": "__list__/__card__ ima 1. opomnik roka zapadlosti [__board__]",
"act-withDue": "__list__/__card__ opomniki roka zapadlosti [__board__]",
"act-almostdue": "je opomnil trenuten rok zapadlosti (__timeValue__) kartice __card__ se bliža",
"act-pastdue": "je opomnil trenuten rok zapadlosti (__timeValue__) kartice __card__ je potekel",
"act-duenow": "je opomnil trenuten rok zapadlosti (__timeValue__) kartice __card__ je sedaj",
"act-atUserComment": "Omenjeni ste bili v [__board__] __list__/__card__",
"delete-user-confirm-popup": "Ali ste prepričani, da želite izbrisati ta račun? Razveljavitve ni.",
"accounts-allowUserDelete": "Dovoli uporabnikom, da sami izbrišejo svoj račun",
"hide-minicard-label-text": "Skrij besedilo oznak na karticah",
"show-desktop-drag-handles": "Pokaži ročke za povleko na namizju"
}
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+6 -5
View File
@@ -728,13 +728,14 @@
"almostdue": "current due time %s is approaching",
"pastdue": "current due time %s is past",
"duenow": "current due time %s is today",
"act-withDue": "__card__ due reminders [__board__]",
"act-newDue": "__list__/__card__ has 1st due reminder [__board__]",
"act-withDue": "__list__/__card__ due reminders [__board__]",
"act-almostdue": "was reminding the current due (__timeValue__) of __card__ is approaching",
"act-pastdue": "was reminding the current due (__timeValue__) of __card__ is past",
"act-duenow": "was reminding the current due (__timeValue__) of __card__ is now",
"act-atUserComment": "You were mentioned in [__board__] __card__",
"delete-user-confirm-popup": "Are you sure you want to delete this account? There is no undo.",
"accounts-allowUserDelete": "Allow users to self delete their account",
"hide-minicard-label-text": "Hide minicard label text",
"act-atUserComment": "You were mentioned in [__board__] __list__/__card__",
"delete-user-confirm-popup": "Bu kullanıcı hesabını silmek istediğinize emin misiniz? Bu işlemi geri alamazsınız.",
"accounts-allowUserDelete": "Kullanıcılara hesaplarını silmek için izin ver.",
"hide-minicard-label-text": "Mini kart etiklerini gizle",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+3 -2
View File
@@ -728,11 +728,12 @@
"almostdue": "当前到期时间%s即将到来",
"pastdue": "当前到期时间%s已过",
"duenow": "当前到期时间%s为今天",
"act-withDue": "__card__ 到期提醒[__board__]",
"act-newDue": "__list__/__card__ 有 1st 到期提醒 [__board__]",
"act-withDue": "__list__/__card__ 到期提醒 [__board__]",
"act-almostdue": "__card__ 的当前到期提醒(__timeValue__) 正在接近",
"act-pastdue": "__card__ 的当前到期提醒(__timeValue__) 已经过去了",
"act-duenow": "__card__ 的当前到期提醒(__timeValue__) 现在到期",
"act-atUserComment": "您在 [__board__] __card__中被提到",
"act-atUserComment": "[__board__] __list__/__card__ 提到了您",
"delete-user-confirm-popup": "确实要删除此帐户吗?此操作无法撤销。",
"accounts-allowUserDelete": "允许用户自行删除其帐户",
"hide-minicard-label-text": "隐藏迷你卡片标签文本",
+740 -739
View File
File diff suppressed because it is too large. Load diff
+740 -739
View File
File diff suppressed because it is too large. Load diff
+29 -22
View File
@@ -180,28 +180,34 @@ if (Meteor.isServer) {
const comment = activity.comment();
params.comment = comment.text;
if (board) {
const atUser = /(?:^|>|\b|\s)@(\S+?)(?:\s|$|<|\b)/g;
const comment = params.comment;
if (comment.match(atUser)) {
const commenter = params.user;
while (atUser.exec(comment)) {
const username = RegExp.$1;
if (commenter === username) {
// it's person at himself, ignore it?
continue;
}
const atUser =
Users.findOne(username) || Users.findOne({ username });
if (atUser && atUser._id) {
const uid = atUser._id;
params.atUsername = username;
params.atEmails = atUser.emails;
if (board.hasMember(uid)) {
title = 'act-atUserComment';
watchers = _.union(watchers, [uid]);
}
}
const knownUsers = board.members.map(member => {
const u = Users.findOne(member.userId);
if (u) {
member.username = u.username;
member.emails = u.emails;
}
return member;
});
const mentionRegex = /\B@(?:(?:"([\w.\s]*)")|([\w.]+))/gi; // including space in username
let currentMention;
while ((currentMention = mentionRegex.exec(comment)) !== null) {
/*eslint no-unused-vars: ["error", { "varsIgnorePattern": "[iI]gnored" }]*/
const [ignored, quoteduser, simple] = currentMention;
const username = quoteduser || simple;
if (username === params.user) {
// ignore commenter mention himself?
continue;
}
const atUser = _.findWhere(knownUsers, { username });
if (!atUser) {
continue;
}
const uid = atUser.userId;
params.atUsername = username;
params.atEmails = atUser.emails;
title = 'act-atUserComment';
watchers = _.union(watchers, [uid]);
}
}
params.commentId = comment._id;
@@ -236,8 +242,8 @@ if (Meteor.isServer) {
(!activity.timeKey || activity.timeKey === 'dueAt') &&
activity.timeValue
) {
// due time reminder
title = 'act-withDue';
// due time reminder, if it doesn't have old value, it's a brand new set, need some differentiation
title = activity.timeOldValue ? 'act-withDue' : 'act-newDue';
}
['timeValue', 'timeOldValue'].forEach(key => {
// copy time related keys & values to params
@@ -283,6 +289,7 @@ if (Meteor.isServer) {
activities: { $in: [description, 'all'] },
}).fetch();
if (integrations.length > 0) {
params.watchers = watchers;
integrations.forEach(integration => {
Meteor.call(
'outgoingWebhooks',
+7
View File
@@ -699,6 +699,13 @@ Boards.helpers({
return result;
},
cardsDueInBetween(start, end) {
return Cards.find({
boardId: this._id,
dueAt: { $gte: start, $lte: end },
});
},
cardsInInterval(start, end) {
return Cards.find({
boardId: this._id,
+36 -8
View File
@@ -1558,6 +1558,7 @@ function cardRemover(userId, doc) {
const findDueCards = days => {
const seekDue = ($from, $to, activityType) => {
Cards.find({
archived: false,
dueAt: { $gte: $from, $lt: $to },
}).forEach(card => {
const username = Users.findOne(card.userId).username;
@@ -1578,18 +1579,38 @@ const findDueCards = days => {
const now = new Date(),
aday = 3600 * 24 * 1e3,
then = day => new Date(now.setHours(0, 0, 0, 0) + day * aday);
seekDue(then(1), then(days), 'almostdue');
seekDue(then(0), then(1), 'duenow');
seekDue(then(-days), now, 'pastdue');
if (!days) return;
if (!days.map) days = [days];
days.map(day => {
let args = [];
if (day === 0) {
args = [then(0), then(1), 'duenow'];
} else if (day > 0) {
args = [then(1), then(day), 'almostdue'];
} else {
args = [then(day), now, 'pastdue'];
}
seekDue(...args);
});
};
const addCronJob = _.debounce(
Meteor.bindEnvironment(function findDueCardsDebounced() {
const notifydays =
parseInt(process.env.NOTIFY_DUE_DAYS_BEFORE_AND_AFTER, 10) || 2; // default as 2 days before and after
if (!(notifydays > 0 && notifydays < 15)) {
// notifying due is disabled
const envValue = process.env.NOTIFY_DUE_DAYS_BEFORE_AND_AFTER;
if (!envValue) {
return;
}
const notifydays = envValue
.split(',')
.map(value => {
const iValue = parseInt(value, 10);
if (!(iValue > 0 && iValue < 15)) {
// notifying due is disabled
return false;
} else {
return iValue;
}
})
.filter(Boolean);
const notifyitvl = process.env.NOTIFY_DUE_AT_HOUR_OF_DAY; //passed in the itvl has to be a number standing for the hour of current time
const defaultitvl = 8; // default every morning at 8am, if the passed env variable has parsing error use default
const itvl = parseInt(notifyitvl, 10) || defaultitvl;
@@ -1831,8 +1852,15 @@ if (Meteor.isServer) {
const check = Users.findOne({
_id: req.body.authorId,
});
const members = req.body.members || [req.body.authorId];
if (typeof check !== 'undefined') {
let members = req.body.members || [];
if (_.isString(members)) {
if (members === '') {
members = [];
} else {
members = [members];
}
}
const id = Cards.direct.insert({
title: req.body.title,
boardId: paramBoardId,
+11 -2
View File
@@ -276,6 +276,7 @@ if (Meteor.isServer) {
* @param {string} boardId the board ID
* @param {string} cardId the card ID
* @param {string} title the title of the new checklist
* @param {string} [items] the list of items on the new checklist
* @return_type {_id: string}
*/
JsonRoutes.add(
@@ -291,11 +292,19 @@ if (Meteor.isServer) {
sort: 0,
});
if (id) {
req.body.items.forEach(function(item, idx) {
let items = req.body.items || [];
if (_.isString(items)) {
if (items === '') {
items = [];
} else {
items = [items];
}
}
items.forEach(function(item, idx) {
ChecklistItems.insert({
cardId: paramCardId,
checklistId: id,
title: item.title,
title: item,
sort: idx,
});
});
+1
View File
@@ -541,6 +541,7 @@ Users.mutations({
Meteor.methods({
setUsername(username, userId) {
check(username, String);
check(userId, String);
const nUsersWithUsername = Users.find({ username }).count();
if (nUsersWithUsername > 0) {
throw new Meteor.Error('username-already-taken');
+4 -4
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v3.43.0",
"version": "v3.47.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -25,9 +25,9 @@
}
},
"@babel/runtime": {
"version": "7.5.5",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.5.5.tgz",
"integrity": "sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ==",
"version": "7.6.2",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.6.2.tgz",
"integrity": "sha512-EXxN64agfUqqIGeEjI5dL5z0Sw0ZwWo1mLTi4mQowCZ42O59b7DRpZAnTC6OqdF28wMBMFKNb/4uFGrVaigSpg==",
"requires": {
"regenerator-runtime": "^0.13.2"
}
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v3.43.0",
"version": "v3.47.0",
"description": "Open-Source kanban",
"private": true,
"scripts": {
@@ -53,7 +53,7 @@
"prettier-eslint": "^8.8.2"
},
"dependencies": {
"@babel/runtime": "^7.5.5",
"@babel/runtime": "^7.6.2",
"ajv": "^5.0.0",
"babel-runtime": "^6.26.0",
"bcrypt": "^3.0.2",
+12 -3
View File
@@ -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 v3.42">Wekan REST API v3.42</a>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v3.47">Wekan REST API v3.47</a>
</li>
@@ -2017,7 +2017,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 v3.42</h1>
<h1 id="wekan-rest-api">Wekan REST API v3.47</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>
@@ -4479,7 +4479,8 @@ $.ajax({
</code></pre>
<pre class="highlight tab tab-javascript--nodejs"><code><span class="hljs-keyword">const</span> fetch = <span class="hljs-built_in">require</span>(<span class="hljs-string">'node-fetch'</span>);
<span class="hljs-keyword">const</span> inputBody = <span class="hljs-string">'{
"title": "string"
"title": "string",
"items": "string"
}'</span>;
<span class="hljs-keyword">const</span> headers = {
<span class="hljs-string">'Content-Type'</span>:<span class="hljs-string">'multipart/form-data'</span>,
@@ -4573,6 +4574,7 @@ System.out.println(response.toString());
<p>Body parameter</p>
</blockquote>
<pre class="highlight tab tab-yaml"><code><span class="hljs-attr">title:</span> <span class="hljs-string">string</span>
<span class="hljs-attr">items:</span> <span class="hljs-string">string</span>
</code></pre>
<h3 id="post_board_card_checklists-parameters">Parameters</h3>
@@ -4615,6 +4617,13 @@ System.out.println(response.toString());
<td>true</td>
<td>the title value</td>
</tr>
<tr>
<td>» items</td>
<td>body</td>
<td>string</td>
<td>true</td>
<td>the items value</td>
</tr>
</tbody>
</table>
<h3 id="post_board_card_checklists-responses">Responses</h3>
+6 -1
View File
@@ -1,7 +1,7 @@
swagger: '2.0'
info:
title: Wekan REST API
version: v3.42
version: v3.47
description: |
The REST API allows you to control and extend Wekan with ease.
@@ -319,6 +319,11 @@ paths:
description: the title value
type: string
required: true
- name: items
in: formData
description: the items value
type: string
required: true
- name: board
in: path
description: the board value
@@ -36,6 +36,9 @@ tx pull -f -l en_GB
echo "Greek:"
tx pull -f -l el
echo "Slovenian:"
tx pull -f -l sl_SI
echo "Spanish:"
tx pull -f -l es
+3 -2
View File
@@ -70,8 +70,9 @@
# dueat startat endat receivedat, also notification to
# the watchers and if any card is due, about due or past due.
#
# Notify due days, default 2 days before and after. 0 = due notifications disabled. Default: 2
#export NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2
# Notify due days, default is None.
#export NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2,0
# it will notify user 2 days before due day and on the due day
#
# Notify due at hour of day. Default every morning at 8am. Can be 0-23.
# If env variable has parsing error, use default. Notification sent to watchers.
+2 -2
View File
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
appTitle = (defaultText = "Wekan"),
# The name of the app as it is displayed to the user.
appVersion = 345,
appVersion = 349,
# Increment this for every release.
appMarketingVersion = (defaultText = "3.43.0~2019-09-17"),
appMarketingVersion = (defaultText = "3.47.0~2019-10-09"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
+6 -3
View File
@@ -13,11 +13,14 @@ Meteor.startup(() => {
const lan = user.getLanguage();
const subject = TAPi18n.__(title, params, lan); // the original function has a fault, i believe the title should be used according to original author
const existing = user.getEmailBuffer().length > 0;
const text = `${existing ? `<br/>\n${subject}<br/>\n` : ''}${
const htmlEnabled =
Meteor.settings.public &&
Meteor.settings.public.RICHER_CARD_COMMENT_EDITOR !== false;
const text = `${existing ? `\n${subject}\n` : ''}${
params.user
} ${TAPi18n.__(description, quoteParams, lan)}<br/>\n${params.url}`;
} ${TAPi18n.__(description, quoteParams, lan)}\n${params.url}`;
user.addEmailBuffer(text);
user.addEmailBuffer(htmlEnabled ? text.replace(/\n/g, '<br/>') : text);
// unlike setTimeout(func, delay, args),
// Meteor.setTimeout(func, delay) does not accept args :-(
+1 -1
View File
@@ -108,7 +108,7 @@ DESCRIPTION_BIGEVENTS_PATTERN="Big events pattern: Notify always due etc regardl
DEFAULT_BIGEVENTS_PATTERN="NONE"
KEY_BIGEVENTS_PATTERN="bigevents-pattern"
DESCRIPTION_NOTIFY_DUE_DAYS_BEFORE_AND_AFTER="Notify due days, default 2 days before and after. 0 = due notifications disabled. Default: 2"
DESCRIPTION_NOTIFY_DUE_DAYS_BEFORE_AND_AFTER="Notify due days, accepts ',' delimited string, i.e. 2,0 means notify will be sent out 2 days before and right on due day. Default: empty"
DEFAULT_NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=""
KEY_NOTIFY_DUE_DAYS_BEFORE_AND_AFTER="notify-due-days-before-and-after"
+3 -6
View File
@@ -104,13 +104,10 @@ echo -e "\t$ snap set $SNAP_NAME bigevents-pattern='NONE'"
echo -e "\n"
echo -e "EMAIL DUE DATE NOTIFICATION https://github.com/wekan/wekan/pull/2536"
echo -e "System timelines will be showing any user modification for dueat startat endat receivedat, also notification to the watchers and if any card is due, about due or past due."
echo -e "Notify due days, default 2 days before and after. 0 = due notifications disabled. Default: 2"
echo -e "To enable different Notify Due Days Before And After than default 2:"
echo -e "\t$ snap set $SNAP_NAME notify-due-days-before-and-after='4'"
echo -e "Notify due days, number less than 15 or negative number accepted, you can specify multiple days delimited by ','. Default: NONE"
echo -e "To enable different Notify for Due Days on 2 days before, and on the event day "
echo -e "\t$ snap set $SNAP_NAME notify-due-days-before-and-after='2,0'"
echo -e "\t-Disable Notifying for Due Days:"
echo -e "\t$ snap set $SNAP_NAME notify-due-days-before-and-after='0'"
echo -e "\n"
echo -e "\t-To set back to default 2:"
echo -e "\t$ snap set $SNAP_NAME notify-due-days-before-and-after=''"
echo -e "\n"
echo -e "Notify due at hour of day. Default every morning at 8am. Can be 0-23."
+2 -2
View File
@@ -64,8 +64,8 @@ REM # https://github.com/wekan/wekan/pull/2536
REM # System timelines will be showing any user modification for
REM # dueat startat endat receivedat, also notification to
REM # the watchers and if any card is due, about due or past due.
REM # Notify due days, default 2 days before and after. 0 = due notifications disabled. Default: 2
REM SET NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2
REM # Notify due days, default is None.
REM # SET NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2,0
REM # Notify due at hour of day. Default every morning at 8am. Can be 0-23.
REM # If env variable has parsing error, use default. Notification sent to watchers.
REM SET NOTIFY_DUE_AT_HOUR_OF_DAY=8
+3 -2
View File
@@ -71,8 +71,9 @@
# dueat startat endat receivedat, also notification to
# the watchers and if any card is due, about due or past due.
#
# Notify due days, default 2 days before and after. 0 = due notifications disabled. Default: 2
#export NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2
# Notify due days, default is None.
#export NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2,0
# it will notify user 2 days before due day and on the due day
#
# Notify due at hour of day. Default every morning at 8am. Can be 0-23.
# If env variable has parsing error, use default. Notification sent to watchers.