diff options
73 files changed, 442 insertions, 353 deletions
diff --git a/.sandstorm-meteor-1.8/package-lock.json b/.sandstorm-meteor-1.8/package-lock.json index e7dc9e05..b5bc4ae3 100644 --- a/.sandstorm-meteor-1.8/package-lock.json +++ b/.sandstorm-meteor-1.8/package-lock.json @@ -1,6 +1,6 @@ { "name": "wekan", - "version": "v3.86.0", + "version": "v3.87.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/.sandstorm-meteor-1.8/package.json b/.sandstorm-meteor-1.8/package.json index e934c3df..a6a3c924 100644 --- a/.sandstorm-meteor-1.8/package.json +++ b/.sandstorm-meteor-1.8/package.json @@ -1,6 +1,6 @@ { "name": "wekan", - "version": "v3.86.0", + "version": "v3.87.0", "description": "Open-Source kanban", "private": true, "scripts": { diff --git a/CHANGELOG.md b/CHANGELOG.md index a693131d..439e9087 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,39 @@ # Upcoming Wekan release -This release fixes the following bugs: +This release makes the following UI changes: + +- [Minicard labels on the top and title on bottom](https://github.com/wekan/wekan/issues/2980). + Thanks to helioguardabaxo and xet7. + +and fixes the following bugs: + +- [Fix start-wekan.sh MongoDB port to 27017](https://github.com/wekan/wekan/commit/c60a092fc0ed9fe15c417bcb443b1e3e3aaedf7e). + Thanks to Keelan and xet7. + +Thanks to above GitHub users for their contributions and translators for their translations. +# v3.87 2020-04-01 Wekan release + +This release makes the following UI changes: + +- [Move "Rules" from "Board View" to "Board Settings"](https://github.com/wekan/wekan/issues/2973). + Thanks to helioguardabaxo and xet7. +- [Improvements on card details visualization](https://github.com/wekan/wekan/issues/2974). + Thanks to helioguardabaxo and xet7. - [Hide duplicate "Hide system messages" at Change Settings/Member Settings, because it's also on card slider](https://github.com/wekan/wekan/issues/2837). Thanks to notohiro and xet7. +and fixes the following bugs: + +- [Fix Browser always reload the whole page when I change one of the card + color](https://github.com/wekan/wekan/commit/3546d7aa02bc65cf1183cb493adeb543ba51945d). + Fixed by making label colors and text again editable. + Regression from [Wekan v3.86 2)](https://github.com/wekan/wekan/commit/b9099a8b7ea6f63c79bdcbb871cb993b2cb7e325). + Thanks to javen9881 and xet7. +- [Fix richer editor submit did not clear edit area](https://github.com/wekan/wekan/commit/033d6710470b2ecd7a0ec0b2f0741ff459e68b32). + Thanks to xet7. + Thanks to above GitHub users for their contributions and translators for their translations. # v3.86 2020-03-24 Wekan release diff --git a/Stackerfile.yml b/Stackerfile.yml index 262919fe..62ca3d5a 100644 --- a/Stackerfile.yml +++ b/Stackerfile.yml @@ -1,5 +1,5 @@ appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928 -appVersion: "v3.86.0" +appVersion: "v3.87.0" files: userUploads: - README.md diff --git a/client/components/activities/comments.js b/client/components/activities/comments.js index e885459e..50ca019b 100644 --- a/client/components/activities/comments.js +++ b/client/components/activities/comments.js @@ -33,13 +33,6 @@ BlazeComponent.extendComponent({ cardId, }); resetCommentInput(input); - // With Richer editor is in use, and comment is submitted, - // clear comment form with JQuery. Id #summernote is defined - // at client/components/main/editor.jade where it previously was - // id=id, now it is id="summernote". - if (Meteor.settings.public.RICHER_CARD_COMMENT_EDITOR === 'true') { - $('#summernote').summernote('code', ''); - } Tracker.flush(); autosize.update(input); input.trigger('submitted'); diff --git a/client/components/boards/boardHeader.jade b/client/components/boards/boardHeader.jade index 53a74f76..4c0edac4 100644 --- a/client/components/boards/boardHeader.jade +++ b/client/components/boards/boardHeader.jade @@ -193,20 +193,6 @@ template(name="boardChangeViewPopup") | {{_ 'board-view-cal'}} if $eq Utils.boardView "board-view-cal" i.fa.fa-check - if currentUser.isAdmin - hr - li - with "board-view-rules" - a.js-open-rules-view(title="{{_ 'rules'}}") - i.fa.fa-magic - | {{_ 'rules'}} - else if currentUser.isBoardAdmin - hr - li - with "board-view-rules" - a.js-open-rules-view(title="{{_ 'rules'}}") - i.fa.fa-magic - | {{_ 'rules'}} template(name="createBoard") form diff --git a/client/components/boards/boardHeader.js b/client/components/boards/boardHeader.js index 9040ed83..dc553134 100644 --- a/client/components/boards/boardHeader.js +++ b/client/components/boards/boardHeader.js @@ -191,10 +191,6 @@ Template.boardChangeViewPopup.events({ Utils.setBoardView('board-view-cal'); Popup.close(); }, - 'click .js-open-rules-view'() { - Modal.openWide('rulesMain'); - Popup.close(); - }, }); const CreateBoard = BlazeComponent.extendComponent({ diff --git a/client/components/cards/attachments.jade b/client/components/cards/attachments.jade index b695ea41..61454fa7 100644 --- a/client/components/cards/attachments.jade +++ b/client/components/cards/attachments.jade @@ -55,5 +55,5 @@ template(name="attachmentsGalery") unless currentUser.isWorker //li.attachment-item.add-attachment a.js-add-attachment - i.fa.fa-paperclip + i.fa.fa-plus | {{_ 'add-attachment' }} diff --git a/client/components/cards/cardDetails.jade b/client/components/cards/cardDetails.jade index 615ae1d5..257ca0a8 100644 --- a/client/components/cards/cardDetails.jade +++ b/client/components/cards/cardDetails.jade @@ -203,6 +203,7 @@ template(name="cardDetails") if canModifyCard unless currentUser.isWorker if currentBoard.allowsDescriptionTitle + hr h3 i.fa.fa-align-left card-details-item-title {{_ 'description'}} @@ -229,6 +230,7 @@ template(name="cardDetails") a.js-close-inlined-form {{_ 'discard'}} else if getDescription if currentBoard.allowsDescriptionTitle + hr h3.card-details-item-title {{_ 'description'}} if currentBoard.allowsDescriptionText +viewer @@ -237,15 +239,16 @@ template(name="cardDetails") .card-checklist-attachmentGalerys .card-checklist-attachmentGalery.card-checklists if currentBoard.allowsChecklists + hr +checklists(cardId = _id) if currentBoard.allowsSubtasks hr +subtasks(cardId = _id) if currentBoard.allowsAttachments - //- hr - //- h3 - //- i.fa.fa-paperclip - //- | {{_ 'attachments'}} + hr + h3 + i.fa.fa-paperclip + | {{_ 'attachments'}} .card-checklist-attachmentGalery.card-attachmentGalery +attachmentsGalery diff --git a/client/components/cards/minicard.styl b/client/components/cards/minicard.styl index 8607e118..7d72a588 100644 --- a/client/components/cards/minicard.styl +++ b/client/components/cards/minicard.styl @@ -79,7 +79,7 @@ border-radius: top 2px .minicard-labels - float: right + float: none display: flex flex-wrap: wrap diff --git a/client/components/main/editor.jade b/client/components/main/editor.jade index 5c5454ee..dbd61715 100644 --- a/client/components/main/editor.jade +++ b/client/components/main/editor.jade @@ -1,13 +1,8 @@ template(name="editor") - // With Richer editor is in use, and comment is submitted, - // clear comment form with JQuery Comment at - // client/components/activities/comments.js . Id #summernote is defined - // here at client/components/main/editor.jade where it previously was - // id=id, now it is id="summernote". textarea.editor( dir="auto" class="{{class}}" - id="summernote" + id=id autofocus=autofocus placeholder="{{_ 'comment-placeholder'}}") +Template.contentBlock diff --git a/client/components/main/editor.js b/client/components/main/editor.js index 3f09d284..081c6521 100755 --- a/client/components/main/editor.js +++ b/client/components/main/editor.js @@ -30,7 +30,7 @@ Template.editor.onRendered(() => { autosize($textarea); $textarea.escapeableTextComplete(mentions); }; - if (Meteor.settings.public.RICHER_CARD_COMMENT_EDITOR === 'true') { + if (Meteor.settings.public.RICHER_CARD_COMMENT_EDITOR !== false) { const isSmall = Utils.isMiniScreen(); const toolbar = isSmall ? [ @@ -108,45 +108,17 @@ Template.editor.onRendered(() => { } return undefined; }; - // Prevent @member mentions on Add Comment input field - // from closing card, part 1. - let popupShown = false; inputs.each(function(idx, input) { mSummernotes[idx] = $(input).summernote({ placeholder, - // Prevent @member mentions on Add Comment input field - // from closing card, part 2. - onKeydown(e) { - if (popupShown) { - e.preventDefault(); - } - }, - onKeyup(e) { - if (popupShown) { - e.preventDefault(); - } - }, callbacks: { - // Prevent @member mentions on Add Comment input field - // from closing card, part 3. - onKeydown(e) { - if (popupShown) { - e.preventDefault(); - } - }, - onKeyup(e) { - if (popupShown) { - e.preventDefault(); - } - }, onInit(object) { const originalInput = this; - $(originalInput).on('input', function() { + $(originalInput).on('submitted', function() { // when comment is submitted, the original textarea will be set to '', so shall we 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; @@ -163,6 +135,7 @@ Template.editor.onRendered(() => { }); } }, + onImageUpload(files) { const $summernote = getSummernote(this); if (files && files.length > 0) { @@ -249,7 +222,7 @@ Template.editor.onRendered(() => { // == Fix End == 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() { @@ -316,15 +289,15 @@ Blaze.Template.registerHelper( 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; } const linkValue = [' ', at, knowedUser.username]; - //let linkClass = 'atMention js-open-member'; - let linkClass = 'atMention'; + let linkClass = 'atMention js-open-member'; if (knowedUser.userId === Meteor.userId()) { linkClass += ' me'; } @@ -357,25 +330,24 @@ Template.viewer.events({ // the corresponding text). Clicking a link shouldn't fire these actions, stop // we stop these event at the viewer component level. 'click a'(event, templateInstance) { - event.stopPropagation(); - - // XXX We hijack the build-in browser action because we currently don't have - // `_blank` attributes in viewer links, and the transformer function is - // handled by a third party package that we can't configure easily. Fix that - // by using directly `_blank` attribute in the rendered HTML. - event.preventDefault(); - + let prevent = true; const userId = event.currentTarget.dataset.userid; if (userId) { - // Prevent @member mentions on Add Comment input field - // from closing card, part 4. - PopupNoClose.open('member').call({ userId }, event, templateInstance); - event.preventDefault(); + Popup.open('member').call({ userId }, event, templateInstance); } else { const href = event.currentTarget.href; if (href) { window.open(href, '_blank'); } } + if (prevent) { + event.stopPropagation(); + + // XXX We hijack the build-in browser action because we currently don't have + // `_blank` attributes in viewer links, and the transformer function is + // handled by a third party package that we can't configure easily. Fix that + // by using directly `_blank` attribute in the rendered HTML. + event.preventDefault(); + } }, }); diff --git a/client/components/sidebar/sidebar.jade b/client/components/sidebar/sidebar.jade index f0b0e4be..901fe99f 100644 --- a/client/components/sidebar/sidebar.jade +++ b/client/components/sidebar/sidebar.jade @@ -268,6 +268,10 @@ template(name="outgoingWebhooksPopup") template(name="boardMenuPopup") ul.pop-over-list li + a.js-open-rules-view(title="{{_ 'rules'}}") + i.fa.fa-magic + | {{_ 'rules'}} + li a.js-custom-fields i.fa.fa-list-alt | {{_ 'custom-fields'}} diff --git a/client/components/sidebar/sidebar.js b/client/components/sidebar/sidebar.js index 8e640564..baf57114 100644 --- a/client/components/sidebar/sidebar.js +++ b/client/components/sidebar/sidebar.js @@ -182,6 +182,10 @@ Template.memberPopup.helpers({ Template.boardMenuPopup.events({ 'click .js-rename-board': Popup.open('boardChangeTitle'), + 'click .js-open-rules-view'() { + Modal.openWide('rulesMain'); + Popup.close(); + }, 'click .js-custom-fields'() { Sidebar.setView('customFields'); Popup.close(); diff --git a/client/lib/popup.js b/client/lib/popup.js index 8a55c2df..8095fbd2 100644 --- a/client/lib/popup.js +++ b/client/lib/popup.js @@ -206,207 +206,3 @@ escapeActions.forEach(actionName => { }, ); }); - -// Prevent @member mentions on Add Comment input field -// from closing card, part 5. -// This duplicate below of above popup function is needed, because at -// wekan/components/main/editor.js at bottom is popping up visible -// @member mention, and it seems to trigger closing also card popup, -// so in below closing popup is disabled. -window.PopupNoClose = new (class { - constructor() { - // The template we use to render popups - this.template = Template.popup; - - // We only want to display one popup at a time and we keep the view object - // in this `Popup.current` variable. If there is no popup currently opened - // the value is `null`. - this.current = null; - - // It's possible to open a sub-popup B from a popup A. In that case we keep - // the data of popup A so we can return back to it. Every time we open a new - // popup the stack grows, every time we go back the stack decrease, and if - // we close the popup the stack is reseted to the empty stack []. - this._stack = []; - - // We invalidate this internal dependency every time the top of the stack - // has changed and we want to re-render a popup with the new top-stack data. - this._dep = new Tracker.Dependency(); - } - - /// This function returns a callback that can be used in an event map: - /// Template.tplName.events({ - /// 'click .elementClass': Popup.open("popupName"), - /// }); - /// The popup inherit the data context of its parent. - open(name) { - const self = this; - const popupName = `${name}Popup`; - function clickFromPopup(evt) { - return $(evt.target).closest('.js-pop-over').length !== 0; - } - return function(evt) { - // If a popup is already opened, clicking again on the opener element - // should close it -- and interrupt the current `open` function. - /* - if (self.isOpen()) { - const previousOpenerElement = self._getTopStack().openerElement; - if (previousOpenerElement === evt.currentTarget) { - self.close(); - return; - } else { - $(previousOpenerElement).removeClass('is-active'); - } - } - */ - // We determine the `openerElement` (the DOM element that is being clicked - // and the one we take in reference to position the popup) from the event - // if the popup has no parent, or from the parent `openerElement` if it - // has one. This allows us to position a sub-popup exactly at the same - // position than its parent. - let openerElement; - if (clickFromPopup(evt)) { - openerElement = self._getTopStack().openerElement; - } else { - self._stack = []; - openerElement = evt.currentTarget; - } - $(openerElement).addClass('is-active'); - evt.preventDefault(); - - // We push our popup data to the stack. The top of the stack is always - // used as the data source for our current popup. - self._stack.push({ - popupName, - openerElement, - hasPopupParent: clickFromPopup(evt), - title: self._getTitle(popupName), - depth: self._stack.length, - offset: self._getOffset(openerElement), - dataContext: (this && this.currentData && this.currentData()) || this, - }); - - // If there are no popup currently opened we use the Blaze API to render - // one into the DOM. We use a reactive function as the data parameter that - // return the complete along with its top element and depends on our - // internal dependency that is being invalidated every time the top - // element of the stack has changed and we want to update the popup. - // - // Otherwise if there is already a popup open we just need to invalidate - // our internal dependency, and since we just changed the top element of - // our internal stack, the popup will be updated with the new data. - if (!self.isOpen()) { - self.current = Blaze.renderWithData( - self.template, - () => { - self._dep.depend(); - return { ...self._getTopStack(), stack: self._stack }; - }, - document.body, - ); - } else { - self._dep.changed(); - } - }; - } - - /// This function returns a callback that can be used in an event map: - /// Template.tplName.events({ - /// 'click .elementClass': Popup.afterConfirm("popupName", function() { - /// // What to do after the user has confirmed the action - /// }), - /// }); - afterConfirm(name, action) { - const self = this; - - return function(evt, tpl) { - const context = (this.currentData && this.currentData()) || this; - context.__afterConfirmAction = action; - self.open(name).call(context, evt, tpl); - }; - } - - /// The public reactive state of the popup. - isOpen() { - this._dep.changed(); - return Boolean(this.current); - } - - /// In case the popup was opened from a parent popup we can get back to it - /// with this `Popup.back()` function. You can go back several steps at once - /// by providing a number to this function, e.g. `Popup.back(2)`. In this case - /// intermediate popup won't even be rendered on the DOM. If the number of - /// steps back is greater than the popup stack size, the popup will be closed. - back(n = 1) { - if (this._stack.length > n) { - _.times(n, () => this._stack.pop()); - this._dep.changed(); - } - // else { - // this.close(); - //} - } - - /// Close the current opened popup. - /* - close() { - if (this.isOpen()) { - Blaze.remove(this.current); - this.current = null; - - const openerElement = this._getTopStack().openerElement; - $(openerElement).removeClass('is-active'); - - this._stack = []; - } - } - */ - - getOpenerComponent() { - const { openerElement } = Template.parentData(4); - return BlazeComponent.getComponentForElement(openerElement); - } - - // An utility fonction that returns the top element of the internal stack - _getTopStack() { - return this._stack[this._stack.length - 1]; - } - - // We automatically calculate the popup offset from the reference element - // position and dimensions. We also reactively use the window dimensions to - // ensure that the popup is always visible on the screen. - _getOffset(element) { - const $element = $(element); - return () => { - Utils.windowResizeDep.depend(); - - if (Utils.isMiniScreen()) return { left: 0, top: 0 }; - - const offset = $element.offset(); - const popupWidth = 300 + 15; - return { - left: Math.min(offset.left, $(window).width() - popupWidth), - top: offset.top + $element.outerHeight(), - }; - }; - } - - // We get the title from the translation files. Instead of returning the - // result, we return a function that compute the result and since `TAPi18n.__` - // is a reactive data source, the title will be changed reactively. - _getTitle(popupName) { - return () => { - const translationKey = `${popupName}-title`; - - // XXX There is no public API to check if there is an available - // translation for a given key. So we try to translate the key and if the - // translation output equals the key input we deduce that no translation - // was available and returns `false`. There is a (small) risk a false - // positives. - const title = TAPi18n.__(translationKey); - // when popup showed as full of small screen, we need a default header to clearly see [X] button - const defaultTitle = Utils.isMiniScreen() ? '' : false; - return title !== translationKey ? title : defaultTitle; - }; - } -})(); diff --git a/i18n/ar.i18n.json b/i18n/ar.i18n.json index 7773ddf3..e420374e 100644 --- a/i18n/ar.i18n.json +++ b/i18n/ar.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/bg.i18n.json b/i18n/bg.i18n.json index 44549df5..4a3fbc70 100644 --- a/i18n/bg.i18n.json +++ b/i18n/bg.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/br.i18n.json b/i18n/br.i18n.json index 7dce4c8d..81566bcf 100644 --- a/i18n/br.i18n.json +++ b/i18n/br.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/ca.i18n.json b/i18n/ca.i18n.json index 629a1aee..9b2d2391 100644 --- a/i18n/ca.i18n.json +++ b/i18n/ca.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/cs.i18n.json b/i18n/cs.i18n.json index 9918d3c3..f23cec0e 100644 --- a/i18n/cs.i18n.json +++ b/i18n/cs.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/da.i18n.json b/i18n/da.i18n.json index 42d1942f..c7f73104 100644 --- a/i18n/da.i18n.json +++ b/i18n/da.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/de.i18n.json b/i18n/de.i18n.json index 1bab2b02..96c5eec0 100644 --- a/i18n/de.i18n.json +++ b/i18n/de.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Zeige auf Karte", "new": "Neu", "editUserPopup-title": "Benutzer ändern", - "newUserPopup-title": "Neuer Benutzer" + "newUserPopup-title": "Neuer Benutzer", + "notifications": "Benachrichtigungen", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/el.i18n.json b/i18n/el.i18n.json index 425beb66..941e83a0 100644 --- a/i18n/el.i18n.json +++ b/i18n/el.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/en-GB.i18n.json b/i18n/en-GB.i18n.json index b1321115..0cdb83f9 100644 --- a/i18n/en-GB.i18n.json +++ b/i18n/en-GB.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/en.i18n.json b/i18n/en.i18n.json index eeed19fc..e3b3288d 100644 --- a/i18n/en.i18n.json +++ b/i18n/en.i18n.json @@ -762,5 +762,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/eo.i18n.json b/i18n/eo.i18n.json index 5f9855d1..1a01e51c 100644 --- a/i18n/eo.i18n.json +++ b/i18n/eo.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/es-AR.i18n.json b/i18n/es-AR.i18n.json index f269de2c..456439c2 100644 --- a/i18n/es-AR.i18n.json +++ b/i18n/es-AR.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/es.i18n.json b/i18n/es.i18n.json index ce77ba7d..20bd5d76 100644 --- a/i18n/es.i18n.json +++ b/i18n/es.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Mostrar en la tarjeta", "new": "Nuevo", "editUserPopup-title": "Editar el usuario", - "newUserPopup-title": "Nuevo usuario" + "newUserPopup-title": "Nuevo usuario", + "notifications": "Notificaciones", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/eu.i18n.json b/i18n/eu.i18n.json index 785bcd8e..ca7bc8d0 100644 --- a/i18n/eu.i18n.json +++ b/i18n/eu.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/fa.i18n.json b/i18n/fa.i18n.json index 713c7be3..6494181a 100644 --- a/i18n/fa.i18n.json +++ b/i18n/fa.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/fi.i18n.json b/i18n/fi.i18n.json index 080e2d7a..26a11a46 100644 --- a/i18n/fi.i18n.json +++ b/i18n/fi.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Näytä kortilla", "new": "Uusi", "editUserPopup-title": "Muokkaa käyttäjää", - "newUserPopup-title": "Uusi käyttäjä" + "newUserPopup-title": "Uusi käyttäjä", + "notifications": "Ilmoitukset", + "view-all": "Näytä kaikki", + "filter-by-unread": "Suodata lukemattomat", + "mark-all-as-read": "Merkkaa kaikki luetuksi", + "allow-rename": "Salli uudelleennimeäminen", + "allowRenamePopup-title": "Salli uudelleennimeäminen" } diff --git a/i18n/fr.i18n.json b/i18n/fr.i18n.json index 226a6c8a..014cc7e7 100644 --- a/i18n/fr.i18n.json +++ b/i18n/fr.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Afficher sur la carte", "new": "Nouveau", "editUserPopup-title": "Éditer l'utilisateur", - "newUserPopup-title": "Nouvel utilisateur" + "newUserPopup-title": "Nouvel utilisateur", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/gl.i18n.json b/i18n/gl.i18n.json index c88dde02..5ef8aac2 100644 --- a/i18n/gl.i18n.json +++ b/i18n/gl.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/he.i18n.json b/i18n/he.i18n.json index fecbfbb3..60e30bbc 100644 --- a/i18n/he.i18n.json +++ b/i18n/he.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "הצגה על הכרטיס", "new": "חדש", "editUserPopup-title": "עריכת משתמש", - "newUserPopup-title": "משתמש חדש" + "newUserPopup-title": "משתמש חדש", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/hi.i18n.json b/i18n/hi.i18n.json index e4c88a06..25831e13 100644 --- a/i18n/hi.i18n.json +++ b/i18n/hi.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/hu.i18n.json b/i18n/hu.i18n.json index e022a075..a114a173 100644 --- a/i18n/hu.i18n.json +++ b/i18n/hu.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/hy.i18n.json b/i18n/hy.i18n.json index e2600d72..d6d32e95 100644 --- a/i18n/hy.i18n.json +++ b/i18n/hy.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/id.i18n.json b/i18n/id.i18n.json index 2bf5431b..f6e9b830 100644 --- a/i18n/id.i18n.json +++ b/i18n/id.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/ig.i18n.json b/i18n/ig.i18n.json index 3c3c2ac3..e86ebccc 100644 --- a/i18n/ig.i18n.json +++ b/i18n/ig.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/it.i18n.json b/i18n/it.i18n.json index 2099462f..3ee1d32d 100644 --- a/i18n/it.i18n.json +++ b/i18n/it.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Mostra sulla scheda", "new": "Nuovo", "editUserPopup-title": "Modifica utente", - "newUserPopup-title": "Nuovo utente" + "newUserPopup-title": "Nuovo utente", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/ja.i18n.json b/i18n/ja.i18n.json index 04f773c1..4dd290e0 100644 --- a/i18n/ja.i18n.json +++ b/i18n/ja.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "カードに表示する項目", "new": "新規作成", "editUserPopup-title": "ユーザーを編集", - "newUserPopup-title": "新規ユーザー" + "newUserPopup-title": "新規ユーザー", + "notifications": "通知", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/ka.i18n.json b/i18n/ka.i18n.json index d43699eb..788fafe5 100644 --- a/i18n/ka.i18n.json +++ b/i18n/ka.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/km.i18n.json b/i18n/km.i18n.json index 05bbb797..cf88927f 100644 --- a/i18n/km.i18n.json +++ b/i18n/km.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/ko.i18n.json b/i18n/ko.i18n.json index 33a48b21..9f53c381 100644 --- a/i18n/ko.i18n.json +++ b/i18n/ko.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "알림", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/lv.i18n.json b/i18n/lv.i18n.json index 87457e6b..491ced31 100644 --- a/i18n/lv.i18n.json +++ b/i18n/lv.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/mk.i18n.json b/i18n/mk.i18n.json index ba11ed40..00278e34 100644 --- a/i18n/mk.i18n.json +++ b/i18n/mk.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/mn.i18n.json b/i18n/mn.i18n.json index f0f81dbd..e80bd57c 100644 --- a/i18n/mn.i18n.json +++ b/i18n/mn.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/nb.i18n.json b/i18n/nb.i18n.json index 176dcea0..64b46489 100644 --- a/i18n/nb.i18n.json +++ b/i18n/nb.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/nl.i18n.json b/i18n/nl.i18n.json index bc815fa6..f783746b 100644 --- a/i18n/nl.i18n.json +++ b/i18n/nl.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Toon op kaart", "new": "Nieuw", "editUserPopup-title": "Wijzig gebruiker", - "newUserPopup-title": "Nieuwe gebruiker" + "newUserPopup-title": "Nieuwe gebruiker", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/oc.i18n.json b/i18n/oc.i18n.json index 715ff470..75951d65 100644 --- a/i18n/oc.i18n.json +++ b/i18n/oc.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/pl.i18n.json b/i18n/pl.i18n.json index 67af6c98..da69da26 100644 --- a/i18n/pl.i18n.json +++ b/i18n/pl.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Pokaż na karcie", "new": "Nowy", "editUserPopup-title": "Edytuj użytkownika", - "newUserPopup-title": "Nowy użytkownik" + "newUserPopup-title": "Nowy użytkownik", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/pt-BR.i18n.json b/i18n/pt-BR.i18n.json index 6470f2d0..3b16d19f 100644 --- a/i18n/pt-BR.i18n.json +++ b/i18n/pt-BR.i18n.json @@ -182,7 +182,7 @@ "changeLanguagePopup-title": "Alterar Idioma", "changePasswordPopup-title": "Alterar Senha", "changePermissionsPopup-title": "Alterar Permissões", - "changeSettingsPopup-title": "Altera configurações", + "changeSettingsPopup-title": "Alterar configurações", "subtasks": "Subtarefas", "checklists": "Listas de verificação", "click-to-star": "Marcar quadro como favorito.", @@ -759,5 +759,11 @@ "show-on-card": "Mostrar no Cartão", "new": "Novo", "editUserPopup-title": "Editar usuário", - "newUserPopup-title": "Novo usuário" + "newUserPopup-title": "Novo usuário", + "notifications": "Notificações", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/pt.i18n.json b/i18n/pt.i18n.json index 22c56c97..442ff2c0 100644 --- a/i18n/pt.i18n.json +++ b/i18n/pt.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/ro.i18n.json b/i18n/ro.i18n.json index 9d84e440..1a3e56a6 100644 --- a/i18n/ro.i18n.json +++ b/i18n/ro.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/ru.i18n.json b/i18n/ru.i18n.json index 459cfbde..edf9c169 100644 --- a/i18n/ru.i18n.json +++ b/i18n/ru.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Показать на карточке", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Уведомления", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/sl.i18n.json b/i18n/sl.i18n.json index 15163a0f..d13373ed 100644 --- a/i18n/sl.i18n.json +++ b/i18n/sl.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Prikaži na kartici", "new": "Novo", "editUserPopup-title": "Uredi uporabnika", - "newUserPopup-title": "Nov uporabnik" + "newUserPopup-title": "Nov uporabnik", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/sr.i18n.json b/i18n/sr.i18n.json index 1ae2aba6..7385e39f 100644 --- a/i18n/sr.i18n.json +++ b/i18n/sr.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Prikaži na kartici", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/sv.i18n.json b/i18n/sv.i18n.json index 66c08333..3de14dd5 100644 --- a/i18n/sv.i18n.json +++ b/i18n/sv.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Visa på kort", "new": "Ny", "editUserPopup-title": "Redigera användare", - "newUserPopup-title": "Ny användare" + "newUserPopup-title": "Ny användare", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/sw.i18n.json b/i18n/sw.i18n.json index ba45497f..a110fb15 100644 --- a/i18n/sw.i18n.json +++ b/i18n/sw.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/ta.i18n.json b/i18n/ta.i18n.json index 8d847659..d059c739 100644 --- a/i18n/ta.i18n.json +++ b/i18n/ta.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/th.i18n.json b/i18n/th.i18n.json index 2d6df909..9d26fbf5 100644 --- a/i18n/th.i18n.json +++ b/i18n/th.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/tr.i18n.json b/i18n/tr.i18n.json index 74f2ccf5..39bb822b 100644 --- a/i18n/tr.i18n.json +++ b/i18n/tr.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Bildirim", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/uk.i18n.json b/i18n/uk.i18n.json index 31fed042..dd77df9a 100644 --- a/i18n/uk.i18n.json +++ b/i18n/uk.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/vi.i18n.json b/i18n/vi.i18n.json index 19db8bd3..002b53c3 100644 --- a/i18n/vi.i18n.json +++ b/i18n/vi.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/zh-CN.i18n.json b/i18n/zh-CN.i18n.json index 6347fd56..297da710 100644 --- a/i18n/zh-CN.i18n.json +++ b/i18n/zh-CN.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "提示", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/zh-HK.i18n.json b/i18n/zh-HK.i18n.json index 82aff057..fe5d4928 100644 --- a/i18n/zh-HK.i18n.json +++ b/i18n/zh-HK.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/i18n/zh-TW.i18n.json b/i18n/zh-TW.i18n.json index f42b05a4..0813db9e 100644 --- a/i18n/zh-TW.i18n.json +++ b/i18n/zh-TW.i18n.json @@ -759,5 +759,11 @@ "show-on-card": "Show on Card", "new": "New", "editUserPopup-title": "Edit User", - "newUserPopup-title": "New User" + "newUserPopup-title": "New User", + "notifications": "Notifications", + "view-all": "View All", + "filter-by-unread": "Filter by Unread", + "mark-all-as-read": "Mark all as read", + "allow-rename": "Allow Rename", + "allowRenamePopup-title": "Allow Rename" } diff --git a/package-lock.json b/package-lock.json index 60f1a939..93102d5d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "wekan", - "version": "v3.86.0", + "version": "v3.87.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 5b008f84..28671e73 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wekan", - "version": "v3.86.0", + "version": "v3.87.0", "description": "Open-Source kanban", "private": true, "scripts": { diff --git a/public/api/wekan.html b/public/api/wekan.html index 2fb27d8d..eb5d207d 100644 --- a/public/api/wekan.html +++ b/public/api/wekan.html @@ -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.86">Wekan REST API v3.86</a> + <a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v3.87">Wekan REST API v3.87</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.86</h1> + <h1 id="wekan-rest-api">Wekan REST API v3.87</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> diff --git a/public/api/wekan.yml b/public/api/wekan.yml index cf0466ab..ee0bee82 100644 --- a/public/api/wekan.yml +++ b/public/api/wekan.yml @@ -1,7 +1,7 @@ swagger: '2.0' info: title: Wekan REST API - version: v3.86 + version: v3.87 description: | The REST API allows you to control and extend Wekan with ease. diff --git a/sandstorm-pkgdef.capnp b/sandstorm-pkgdef.capnp index ec9f373f..dac14181 100644 --- a/sandstorm-pkgdef.capnp +++ b/sandstorm-pkgdef.capnp @@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = ( appTitle = (defaultText = "Wekan"), # The name of the app as it is displayed to the user. - appVersion = 386, + appVersion = 387, # Increment this for every release. - appMarketingVersion = (defaultText = "3.86.0~2020-03-24"), + appMarketingVersion = (defaultText = "3.87.0~2020-04-01"), # Human-readable presentation of the app version. minUpgradableAppVersion = 0, diff --git a/start-wekan.sh b/start-wekan.sh index 9a839b3c..bb9249a6 100755 --- a/start-wekan.sh +++ b/start-wekan.sh @@ -7,7 +7,7 @@ # Debug OIDC OAuth2 etc. #export DEBUG=true #--------------------------------------------- - export MONGO_URL='mongodb://127.0.0.1:27018/wekan' + export MONGO_URL='mongodb://127.0.0.1:27017/wekan' #--------------------------------------------- # Production: https://example.com/wekan # Local: http://localhost:2000 |