wekan/models/import.js

30 lines
832 B
JavaScript
Raw Normal View History

2017-07-08 13:23:33 +01:00
import { TrelloCreator } from './trelloCreator';
import { WekanCreator } from './wekanCreator';
Meteor.methods({
2017-07-24 23:56:51 +01:00
importBoard(board, data, importSource, currentBoard) {
2017-07-08 13:23:33 +01:00
check(board, Object);
check(data, Object);
check(importSource, String);
2017-07-24 23:56:51 +01:00
check(currentBoard, Match.Maybe(String));
2017-07-08 13:23:33 +01:00
let creator;
switch (importSource) {
case 'trello':
creator = new TrelloCreator(data);
break;
case 'wekan':
creator = new WekanCreator(data);
break;
}
// 1. check all parameters are ok from a syntax point of view
2017-07-08 13:23:33 +01:00
creator.check(board);
// 2. check parameters are ok from a business point of view (exist &
// authorized) nothing to check, everyone can import boards in their account
// 3. create all elements
2017-07-24 23:56:51 +01:00
return creator.create(board, currentBoard);
},
});