1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import { TrelloCreator } from './trelloCreator';
- import { WekanCreator } from './wekanCreator';
- import {Exporter} from './export';
- import wekanMembersMapper from './wekanmapper';
- Meteor.methods({
- importBoard(board, data, importSource, currentBoard) {
- check(board, Object);
- check(data, Object);
- check(importSource, String);
- check(currentBoard, Match.Maybe(String));
- 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
- //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
- return creator.create(board, currentBoard);
- },
- });
- Meteor.methods({
- cloneBoard(sourceBoardId, currentBoardId) {
- check(sourceBoardId, String);
- check(currentBoardId, Match.Maybe(String));
- const exporter = new Exporter(sourceBoardId);
- const data = exporter.build();
- const addData = {};
- addData.membersMapping = wekanMembersMapper.getMembersToMap(data);
- const creator = new WekanCreator(addData);
- data.title = `${data.title } - ${ TAPi18n.__('copy-tag')}`;
- return creator.create(data, currentBoardId);
- },
- });
|