Change the board import layout from a popup to a full page

This commit also removes the “import a single Trello card” as we couldn’t figure
out some reasonable use case.

We also create a new publication on the server to provide the minimal user
profile informations required to display an avatar.
This commit is contained in:
Maxime Quandalle 2015-12-08 16:18:44 -05:00
parent 67e7b6a139
commit a13fad749e
13 changed files with 201 additions and 203 deletions

View file

@ -470,42 +470,4 @@ Meteor.methods({
// XXX add members
return boardId;
},
importTrelloCard(trelloCard, data) {
const trelloCreator = new TrelloCreator(data);
// 1. check parameters are ok from a syntax point of view
try {
check(data, {
listId: String,
sortIndex: Number,
membersMapping: Match.Optional(Object),
});
trelloCreator.checkCards([trelloCard]);
trelloCreator.checkLabels(trelloCard.labels);
trelloCreator.checkActions(trelloCard.actions);
} catch(e) {
throw new Meteor.Error('error-json-schema');
}
// 2. check parameters are ok from a business point of view (exist &
// authorized)
const list = Lists.findOne(data.listId);
if (!list) {
throw new Meteor.Error('error-list-doesNotExist');
}
if (Meteor.isServer) {
if (!allowIsBoardMember(Meteor.userId(), Boards.findOne(list.boardId))) {
throw new Meteor.Error('error-board-notAMember');
}
}
// 3. create all elements
trelloCreator.lists[trelloCard.idList] = data.listId;
trelloCreator.parseActions(trelloCard.actions);
const board = list.board();
trelloCreator.createLabels(trelloCard.labels, board);
const cardIds = trelloCreator.createCards([trelloCard], board._id);
return cardIds[0];
},
});