mirror of
https://github.com/wekan/wekan.git
synced 2025-04-22 13:07:17 -04:00
swimlane: insert the new swimlane after the one we clicked on
This commit is contained in:
parent
416b17062e
commit
c075187088
2 changed files with 22 additions and 2 deletions
|
@ -1,3 +1,5 @@
|
|||
const { calculateIndexData } = Utils;
|
||||
|
||||
BlazeComponent.extendComponent({
|
||||
editTitle(evt) {
|
||||
evt.preventDefault();
|
||||
|
@ -26,18 +28,25 @@ Template.swimlaneActionPopup.events({
|
|||
});
|
||||
|
||||
BlazeComponent.extendComponent({
|
||||
onCreated() {
|
||||
this.currentSwimlane = this.currentData();
|
||||
},
|
||||
|
||||
events() {
|
||||
return [{
|
||||
submit(evt) {
|
||||
evt.preventDefault();
|
||||
const currentBoard = Boards.findOne(Session.get('currentBoard'));
|
||||
const nextSwimlane = currentBoard.nextSwimlane(this.currentSwimlane);
|
||||
const titleInput = this.find('.swimlane-name-input');
|
||||
const title = titleInput.value.trim();
|
||||
const sortValue = calculateIndexData(this.currentSwimlane, nextSwimlane, 1);
|
||||
|
||||
if (title) {
|
||||
Swimlanes.insert({
|
||||
title,
|
||||
boardId: Session.get('currentBoard'),
|
||||
// XXX we should insert the swimlane right after the caller
|
||||
sort: $('.swimlane').length,
|
||||
sort: sortValue.base,
|
||||
});
|
||||
|
||||
titleInput.value = '';
|
||||
|
|
|
@ -351,6 +351,17 @@ Boards.helpers({
|
|||
return Swimlanes.find({ boardId: this._id, archived: false }, { sort: { sort: 1 } });
|
||||
},
|
||||
|
||||
nextSwimlane(swimlane) {
|
||||
return Swimlanes.findOne({
|
||||
boardId: this._id,
|
||||
archived: false,
|
||||
sort: { $gte: swimlane.sort },
|
||||
_id: { $ne: swimlane._id },
|
||||
}, {
|
||||
sort: { sort: 1 },
|
||||
});
|
||||
},
|
||||
|
||||
hasOvertimeCards(){
|
||||
const card = Cards.findOne({isOvertime: true, boardId: this._id, archived: false} );
|
||||
return card !== undefined;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue