Compare commits

...
16 Commits
Author SHA1 Message Date
Lauri Ojansivu 158ddadf54 v3.43 2019-09-17 03:06:01 +03:00
Lauri Ojansivu 9fb0ef7eb2 Update readme. 2019-09-17 02:51:44 +03:00
Lauri Ojansivu 503be10d36 Update Readme. 2019-09-17 02:49:38 +03:00
Lauri Ojansivu 3021f1cbe1 Update ChangeLog. 2019-09-17 02:39:21 +03:00
Lauri Ojansivu c66eba217b Update ChangeLog. 2019-09-17 02:36:49 +03:00
Lauri Ojansivu 8486ccbaa8 Update translations. 2019-09-17 01:43:26 +03:00
Lauri Ojansivu ddd00a27a9 Merge pull request #2715 from whowillcare/master
fix some issues found
2019-09-17 01:34:55 +03:00
Sam X. Chen b31c42acc4 Merge remote-tracking branch 'upstream/master' 2019-09-16 14:43:51 -04:00
Sam X. Chen 616903114f Fix two-way webhooks - locking might fail sometime 2019-09-16 14:43:32 -04:00
Lauri Ojansivu 6e6e7ded82 Update translations. 2019-09-15 00:03:27 +03:00
Lauri Ojansivu 6c7e1ed3ae Add translation for "Show desktop drag handles".
Thanks to xet7 !
2019-09-14 23:53:56 +03:00
Lauri Ojansivu d896f6dbcf v3.42 2019-09-14 06:06:08 +03:00
Lauri Ojansivu 5e963375cb Update translations. 2019-09-14 06:00:05 +03:00
Lauri Ojansivu 57119868bb Revert drag handle changes.
Thanks to Keelan !

Related #2704
2019-09-14 05:55:32 +03:00
Sam X. Chen 0b52ba4ded Merge remote-tracking branch 'upstream/master' 2019-09-11 09:05:28 -04:00
Sam X. Chen e0046032e8 Fixing @user in comments doesn't work if it's in a separate line 2019-09-11 09:05:16 -04:00
71 changed files with 250 additions and 164 deletions

No files matched your search

+22
View File
@@ -1,3 +1,25 @@
# v3.43 2019-09-17 Wekan release
This release fixes the following bugs:
- [In richer editor, @user might not get pickup correctly, if it's formated](https://github.com/wekan/wekan/pull/2715).
Thanks to whowillcare.
- [Table content should have word-wrap](https://github.com/wekan/wekan/pull/2715).
Thanks to whowillcare.
- [Two-way hooks locking mechanism will fail sometime, therefore, change all comment insert or update to direct, which means it won't invoke any hook](https://github.com/wekan/wekan/pull/2715).
Thanks to whowillcare.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.42 2019-09-14 Wekan release
This release removed the following new features:
- [Revert drag handle changes of Wekan v3.41](https://github.com/wekan/wekan/commit/57119868bbb49f47c7d0b51b9952df9bd83d46f5).
Thanks to Keelan.
Thanks to above GitHub users for their contributions and translators for their translations.
# v3.41 2019-09-13 Wekan release
This release adds the following new features:
+3 -7
View File
@@ -73,24 +73,20 @@ that by providing one-click installation on various platforms.
Bugs, updates, users deleting list or card, harddrive full, harddrive crash etc can eat your data. There is no undo yet.
Some bug can cause Wekan board to not load at all, requiring manual fixing of database content.
## Roadmap
## Roadmap and Demo
[Roadmap Milestones](https://github.com/wekan/wekan/milestones)
[Roadmap][roadmap_wekan] - Public read-only board at Wekan demo.
[Developer Documentation][dev_docs]
- There is many companies and individuals contributing code to Wekan, to add features and bugfixes
[many times a day](https://github.com/wekan/wekan/blob/devel/CHANGELOG.md).
- [Please add Add new Feature Requests and Bug Reports immediately](https://github.com/wekan/wekan/issues).
- [Commercial Support](https://wekan.team).
- [Commercial Support](https://wekan.team/commercial-support/).
We also welcome sponsors for features and bugfixes.
By working directly with Wekan you get the benefit of active maintenance and new features added by growing Wekan developer community.
## Demo
[Wekan demo][roadmap_wekan]
## Screenshot
[More screenshots at Features page](https://github.com/wekan/wekan/wiki/Features)
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v3.41.0"
appVersion: "v3.43.0"
files:
userUploads:
- README.md
+1 -1
View File
@@ -89,7 +89,7 @@ BlazeComponent.extendComponent({
helper.append(list.clone());
return helper;
},
handle: '.js-swimlane-header-handle',
handle: '.js-swimlane-header',
items: '.swimlane:not(.placeholder)',
placeholder: 'swimlane placeholder',
distance: 7,
+2 -2
View File
@@ -3,8 +3,6 @@ template(name="minicard")
class="{{#if isLinkedCard}}linked-card{{/if}}"
class="{{#if isLinkedBoard}}linked-board{{/if}}"
class="minicard-{{colorClass}}")
.handle
.fa.fa-arrows
if cover
.minicard-cover(style="background-image: url('{{cover.url}}');")
if labels
@@ -17,6 +15,8 @@ template(name="minicard")
if hiddenMinicardLabelText
.minicard-label(class="card-label-{{color}}" title="{{name}}")
.minicard-title
.handle
.fa.fa-arrows
if $eq 'prefix-with-full-path' currentBoard.presentParentTask
.parent-prefix
| {{ parentString ' > ' }}
+1 -1
View File
@@ -105,7 +105,7 @@
right: 5px;
top: 5px;
display:none;
@media only screen {
@media only screen and (max-width: 1199px) {
display:block;
}
.fa-arrows
+5 -3
View File
@@ -31,9 +31,11 @@ BlazeComponent.extendComponent({
const itemsSelector = '.js-minicard:not(.placeholder, .js-card-composer)';
const $cards = this.$('.js-minicards');
$('.js-minicards').sortable({
handle: '.handle',
});
if (window.matchMedia('(max-width: 1199px)').matches) {
$('.js-minicards').sortable({
handle: '.handle',
});
}
$cards.sortable({
connectWith: '.js-minicards:not(.js-list-full)',
+5 -17
View File
@@ -84,16 +84,17 @@
padding-left: 10px
color: #a6a6a6
.list-header-menu
position: absolute
padding: 27px 19px
margin-top: 1px
top: -7px
right: 3px
right: -7px
.list-header-plus-icon
color: #a6a6a6
margin-right: 15px
margin-right: 10px
.highlight
color: #ce1414
@@ -164,12 +165,7 @@
@media screen and (max-width: 800px)
.list-header-menu
position: absolute
padding: 27px 19px
margin-top: 1px
top: -7px
margin-right: 50px
right: -3px
margin-right: 30px
.mini-list
flex: 0 0 60px
@@ -225,17 +221,9 @@
padding: 7px
top: 50%
transform: translateY(-50%)
margin-right: 27px
right: 17px
font-size: 20px
.list-header-menu-handle
position: absolute
padding: 7px
top: 50%
transform: translateY(-50%)
right: 10px
font-size: 24px
.link-board-wrapper
display: flex
align-items: baseline
-3
View File
@@ -29,10 +29,8 @@ template(name="listHeader")
if canSeeAddCard
a.js-add-card.fa.fa-plus.list-header-plus-icon
a.fa.fa-navicon.js-open-list-menu
a.list-header-menu-handle.handle.fa.fa-arrows.js-list-handle
else
a.list-header-menu-icon.fa.fa-angle-right.js-select-list
a.list-header-menu-handle.handle.fa.fa-arrows.js-list-handle
else if currentUser.isBoardMember
if isWatching
i.list-header-watch-icon.fa.fa-eye
@@ -41,7 +39,6 @@ template(name="listHeader")
if canSeeAddCard
a.js-add-card.fa.fa-plus.list-header-plus-icon
a.fa.fa-navicon.js-open-list-menu
a.list-header-menu-handle.handle.fa.fa-arrows.js-list-handle
template(name="editListTitleForm")
.list-composer
+4
View File
@@ -381,6 +381,10 @@ a
display: block
word-wrap: break-word
table
word-wrap: normal
word-break: normal
ol
list-style-type: decimal
padding-left: 20px
@@ -16,7 +16,6 @@ template(name="swimlaneFixedHeader")
unless currentUser.isCommentOnly
a.fa.fa-plus.js-open-add-swimlane-menu.swimlane-header-plus-icon
a.fa.fa-navicon.js-open-swimlane-menu
a.swimlane-header-menu-handle.handle.fa.fa-arrows.js-swimlane-header-handle
template(name="editSwimlaneTitleForm")
.list-composer
+2 -3
View File
@@ -56,7 +56,7 @@ function initSortable(boardComponent, $listsDom) {
$listsDom.sortable({
tolerance: 'pointer',
helper: 'clone',
handle: '.js-list-handle',
handle: '.js-list-header',
items: '.js-list:not(.js-list-composer)',
placeholder: 'list placeholder',
distance: 7,
@@ -156,8 +156,7 @@ BlazeComponent.extendComponent({
'input',
'textarea',
'p',
'.js-list-handle',
'.js-swimlane-header-handle',
'.js-list-header',
];
if (
$(evt.target).closest(noDragInside.join(',')).length === 0 &&
@@ -50,14 +50,6 @@
margin-left: 5px
margin-right: 10px
.swimlane-header-menu-handle
position: absolute
padding: 7px
top: 50%
transform: translateY(-50%)
left: 300px
font-size: 18px
.list-group
height: 100%
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "Du wurdest erwähnt in [__board__] __card__",
"delete-user-confirm-popup": "Sind Sie sicher, dass Sie diesen Account löschen wollen? Die Aktion kann nicht rückgängig gemacht werden.",
"accounts-allowUserDelete": "Erlaube Benutzern ihren eigenen Account zu löschen",
"hide-minicard-label-text": "Labeltext auf Minikarte ausblenden"
"hide-minicard-label-text": "Labeltext auf Minikarte ausblenden",
"show-desktop-drag-handles": "Desktop-Ziehpunkte anzeigen"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -738,5 +738,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "Te mencionaron en [__board__] __card__",
"delete-user-confirm-popup": "¿Seguro que quieres eliminar esta cuenta? Esta acción no puede deshacerse.",
"accounts-allowUserDelete": "Permitir a los usuarios eliminar su cuenta",
"hide-minicard-label-text": "Ocultar el texto de la etiqueta de la minitarjeta"
"hide-minicard-label-text": "Ocultar el texto de la etiqueta de la minitarjeta",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "به شما در [__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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "Sinut mainittiin [__board__] __card__",
"delete-user-confirm-popup": "Haluatko varmasti poistaa tämän käyttäjätilin? Tätä ei voi peruuttaa.",
"accounts-allowUserDelete": "Salli käyttäjien poistaa tilinsä itse",
"hide-minicard-label-text": "Piilota minikortin tunniste teksti"
"hide-minicard-label-text": "Piilota minikortin tunniste teksti",
"show-desktop-drag-handles": "Näytä työpöydän vedon kahvat"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "Vous avez été mentionné dans [__board__] __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"
"hide-minicard-label-text": "Cacher le label de la minicarte",
"show-desktop-drag-handles": "Voir les poignées de déplacement du bureau"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "אוזכרת תחת [__board__] ‏__card__",
"delete-user-confirm-popup": "למחוק את החשבון הזה? אי אפשר לבטל.",
"accounts-allowUserDelete": "לאפשר למשתמשים למחוק את החשבונות של עצמם",
"hide-minicard-label-text": "הסתרת טקסט התווית של מיני כרטיס"
"hide-minicard-label-text": "הסתרת טקסט התווית של מיני כרטיס",
"show-desktop-drag-handles": "הצגת ידיות גרירה של שולחן העבודה"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "You were mentioned in [__board__] __card__",
"delete-user-confirm-popup": "Sei sicuro di voler cancellare questo profilo? Non sarà possibile ripristinarlo.",
"accounts-allowUserDelete": "Permetti agli utenti di cancellare il loro profilo",
"hide-minicard-label-text": "Hide minicard label text"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "Je bent genoemd op [__board__] op __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"
"hide-minicard-label-text": "Verberg minikaart labeltekst",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "Zostałeś wspomniany na __board__ (__card__)",
"delete-user-confirm-popup": "Czy jesteś pewien, że chcesz usunąć te konto? Nie można tego wycofać.",
"accounts-allowUserDelete": "Pozwól użytkownikom na usuwanie własnych kont",
"hide-minicard-label-text": "Ukryj opisy etykiet minikart"
"hide-minicard-label-text": "Ukryj opisy etykiet minikart",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "Você foi mencionado no [__board__] __card__",
"delete-user-confirm-popup": "Você realmente quer apagar esta conta? Não há como desfazer.",
"accounts-allowUserDelete": "Permitir que usuários apaguem a própria conta",
"hide-minicard-label-text": "Esconder rótulo da etiqueta do mini cartão"
"hide-minicard-label-text": "Esconder rótulo da etiqueta do mini cartão",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "Foi mencionado em [__board__] __card__",
"delete-user-confirm-popup": "Tem a certeza que pretende apagar esta conta? Não há como desfazer.",
"accounts-allowUserDelete": "Permitir aos utilizadores apagar as suas próprias contas",
"hide-minicard-label-text": "Ocultar texto das etiquetas dos mini-cartões"
"hide-minicard-label-text": "Ocultar texto das etiquetas dos mini-cartões",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "Вас упомянули в [__board__] __card__",
"delete-user-confirm-popup": "Вы уверены, что хотите удалить аккаунт? Данное действие необратимо.",
"accounts-allowUserDelete": "Разрешить пользователям удалять собственные аккаунты",
"hide-minicard-label-text": "Скрыть текст меток на карточках"
"hide-minicard-label-text": "Скрыть текст меток на карточках",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+7 -6
View File
@@ -1,6 +1,6 @@
{
"accept": "Acceptera",
"act-activity-notify": "Aktivitetsnotifikation",
"act-activity-notify": "Aktivitetsnotifiering",
"act-addAttachment": "lade till bifogad fil __attachment__ på kort __card__ i lista __list__ i simbana __swimlane__ på anslagstavla __board__",
"act-deleteAttachment": "raderade bifogad fil __attachment__ från kort __card__ i lista __list__ i simbana __swimlane__ på anslagstavla __board__",
"act-addSubtask": "lade till underaktivitet __subtask__ på kort __card__ i lista __list__ i simbana __swimlane__ på anslagstavla __board__",
@@ -306,8 +306,8 @@
"filter-no-label": "Ingen etikett",
"filter-no-member": "Ingen medlem",
"filter-no-custom-fields": "Inga anpassade fält",
"filter-show-archive": "Show archived lists",
"filter-hide-empty": "Hide empty lists",
"filter-show-archive": "Visa arkiverade listor",
"filter-hide-empty": "Dölj tomma listor",
"filter-on": "Filter är på",
"filter-on-desc": "Du filtrerar kort på denna anslagstavla. Klicka här för att redigera filter.",
"filter-to-selection": "Filter till val",
@@ -510,14 +510,14 @@
"email-smtp-test-text": "Du har skickat ett e-postmeddelande",
"error-invitation-code-not-exist": "Inbjudningskod finns inte",
"error-notAuthorized": "Du är inte behörig att se den här sidan.",
"webhook-title": "Webhook Name",
"webhook-title": "Namn på webhook",
"webhook-token": "Token (Optional for Authentication)",
"outgoing-webhooks": "Utgående Webhookar",
"bidirectional-webhooks": "Two-Way Webhooks",
"outgoingWebhooksPopup-title": "Utgående Webhookar",
"boardCardTitlePopup-title": "Korttitelfiler",
"disable-webhook": "Disable This Webhook",
"global-webhook": "Global Webhooks",
"global-webhook": "Globala webhooks",
"new-outgoing-webhook": "Ny utgående webhook",
"no-name": "(Okänd)",
"Node_version": "Nodversion",
@@ -735,5 +735,6 @@
"act-atUserComment": "Du nämndes i [__board__] __card__",
"delete-user-confirm-popup": "Är du säker på att du vill ta bort det här kontot? Det går inte att ångra sig.",
"accounts-allowUserDelete": "Tillåt användare att själv ta bort sina konton",
"hide-minicard-label-text": "Hide minicard label text"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"act-atUserComment": "您在 [__board__] __card__中被提到",
"delete-user-confirm-popup": "确实要删除此帐户吗?此操作无法撤销。",
"accounts-allowUserDelete": "允许用户自行删除其帐户",
"hide-minicard-label-text": "隐藏迷你卡片标签文本"
"hide-minicard-label-text": "隐藏迷你卡片标签文本",
"show-desktop-drag-handles": "显示桌面拖放手柄"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+2 -1
View File
@@ -735,5 +735,6 @@
"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"
"hide-minicard-label-text": "Hide minicard label text",
"show-desktop-drag-handles": "Show desktop drag handles"
}
+9 -7
View File
@@ -180,7 +180,7 @@ if (Meteor.isServer) {
const comment = activity.comment();
params.comment = comment.text;
if (board) {
const atUser = /(?:^|>|\b|\s)@(\S+)(?:\s|$|<|\b)/g;
const atUser = /(?:^|>|\b|\s)@(\S+?)(?:\s|$|<|\b)/g;
const comment = params.comment;
if (comment.match(atUser)) {
const commenter = params.user;
@@ -192,12 +192,14 @@ if (Meteor.isServer) {
}
const atUser =
Users.findOne(username) || Users.findOne({ username });
const uid = atUser && atUser._id;
params.atUsername = username;
params.atEmails = atUser.emails;
if (board.hasMember(uid)) {
title = 'act-atUserComment';
watchers = _.union(watchers, [uid]);
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]);
}
}
}
}
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v3.41.0",
"version": "v3.43.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v3.41.0",
"version": "v3.43.0",
"description": "Open-Source kanban",
"private": true,
"scripts": {
+2 -2
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.40">Wekan REST API v3.40</a>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v3.42">Wekan REST API v3.42</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.40</h1>
<h1 id="wekan-rest-api">Wekan REST API v3.42</h1>
<blockquote>
<p>Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.</p>
</blockquote>
+1 -1
View File
@@ -1,7 +1,7 @@
swagger: '2.0'
info:
title: Wekan REST API
version: v3.40
version: v3.42
description: |
The REST API allows you to control and extend Wekan with ease.
+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 = 343,
appVersion = 345,
# Increment this for every release.
appMarketingVersion = (defaultText = "3.41.0~2019-09-13"),
appMarketingVersion = (defaultText = "3.43.0~2019-09-17"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
+81 -47
View File
@@ -10,11 +10,39 @@ const postCatchError = Meteor.wrapAsync((url, options, resolve) => {
const Lock = {
_lock: {},
has(id) {
return !!this._lock[id];
_timer: {},
echoDelay: 500, // echo should be happening much faster
normalDelay: 1e3, // normally user typed comment will be much slower
ECHO: 2,
NORMAL: 1,
NULL: 0,
has(id, value) {
const existing = this._lock[id];
let ret = this.NULL;
if (existing) {
ret = existing === value ? this.ECHO : this.NORMAL;
}
return ret;
},
set(id) {
this._lock[id] = 1;
clear(id, delay) {
const previous = this._timer[id];
if (previous) {
Meteor.clearTimeout(previous);
}
this._timer[id] = Meteor.setTimeout(() => this.unset(id), delay);
},
set(id, value) {
const state = this.has(id, value);
let delay = this.normalDelay;
if (state === this.ECHO) {
delay = this.echoDelay;
}
if (!value) {
// user commented, we set a lock
value = 1;
}
this._lock[id] = value;
this.clear(id, delay); // always auto reset the locker after delay
},
unset(id) {
delete this._lock[id];
@@ -33,40 +61,44 @@ const webhooksAtbts = (process.env.WEBHOOKS_ATTRIBUTES &&
'commentId',
'swimlaneId',
];
const responseFunc = 'reactOnHookResponse';
Meteor.methods({
[responseFunc](data) {
check(data, Object);
const paramCommentId = data.commentId;
const paramCardId = data.cardId;
const paramBoardId = data.boardId;
const newComment = data.comment;
if (paramCardId && paramBoardId && newComment) {
// only process data with the cardid, boardid and comment text, TODO can expand other functions here to react on returned data
const comment = CardComments.findOne({
_id: paramCommentId,
cardId: paramCardId,
boardId: paramBoardId,
});
const responseFunc = data => {
const paramCommentId = data.commentId;
const paramCardId = data.cardId;
const paramBoardId = data.boardId;
const newComment = data.comment;
if (paramCardId && paramBoardId && newComment) {
// only process data with the cardid, boardid and comment text, TODO can expand other functions here to react on returned data
const comment = CardComments.findOne({
_id: paramCommentId,
cardId: paramCardId,
boardId: paramBoardId,
});
const board = Boards.findOne(paramBoardId);
const card = Cards.findOne(paramCardId);
if (board && card) {
if (comment) {
CardComments.update(comment._id, {
Lock.set(comment._id, newComment);
CardComments.direct.update(comment._id, {
$set: {
text: newComment,
},
});
} else {
const userId = data.userId;
if (userId) {
CardComments.insert({
text: newComment,
userId,
cardId,
boardId,
});
}
}
} else {
const userId = data.userId;
if (userId) {
const inserted = CardComments.direct.insert({
text: newComment,
userId,
cardId,
boardId,
});
Lock.set(inserted._id, newComment);
}
}
},
}
};
Meteor.methods({
outgoingWebhooks(integration, description, params) {
check(integration, Object);
check(description, String);
@@ -119,9 +151,20 @@ Meteor.methods({
if (token) headers['X-Wekan-Token'] = token;
const options = {
headers,
data: is2way ? clonedParams : value,
data: is2way ? { description, ...clonedParams } : value,
};
const url = integration.url;
if (is2way) {
const cid = params.commentId;
const comment = params.comment;
const lockState = cid && Lock.has(cid, comment);
if (cid && lockState !== Lock.NULL) {
// it's a comment and there is a previous lock
return;
} else if (cid) {
Lock.set(cid, comment); // set a lock here
}
}
const response = postCatchError(url, options);
if (
@@ -131,21 +174,12 @@ Meteor.methods({
response.statusCode < 300
) {
if (is2way) {
const cid = params.commentId;
const tooSoon = Lock.has(cid); // if an activity happens to fast, notification shouldn't fire with the same id
if (!tooSoon) {
let clearNotification = () => {};
if (cid) {
Lock.set(cid);
const clearNotificationFlagTimeout = 1000;
clearNotification = () => Lock.unset(cid);
Meteor.setTimeout(clearNotification, clearNotificationFlagTimeout);
}
const data = response.data; // only an JSON encoded response will be actioned
if (data) {
Meteor.call(responseFunc, data, () => {
clearNotification();
});
const data = response.data; // only an JSON encoded response will be actioned
if (data) {
try {
responseFunc(data);
} catch (e) {
throw new Meteor.Error('error-process-data');
}
}
}