Ankilan/src/actions/createAnkiLanModel.js

53 lines
1.6 KiB
JavaScript
Raw Normal View History

2020-03-07 19:38:01 +00:00
import {AnkiDroid} from 'react-native-ankidroid/dist/ankidroid';
2020-03-08 11:17:42 +00:00
import {setAnkiNoteCreator, setCreatorTemplate} from './anki-set-actions';
import sendDataToLocaleStorage from './filesystem';
import setSettings, {
modelFields,
valueFields,
} from '../constants/anki-model-values';
2020-03-11 03:31:37 +00:00
import {
checkAnkiLanModelForExisting,
getFieldList,
getModelList,
} from './anki-get-actions';
2020-03-07 19:38:01 +00:00
import JSONfn from 'jsonfn';
import store from '../store';
2020-03-07 19:38:01 +00:00
export const createAnkiLanModel = model => async dispatch => {
2020-03-08 07:18:34 +00:00
try {
const settings = setSettings(model);
2020-03-08 07:18:34 +00:00
const selectedDeck = new AnkiDroid(settings);
2020-03-08 11:17:42 +00:00
await dispatch(setAnkiNoteCreator(selectedDeck));
await dispatch(setCreatorTemplate(modelFields));
// const sd = JSON.parse(JSON.stringify(selectedDeck));
// console.log(sd === selectedDeck);
// ****************
alert('oh shit');
2020-03-08 11:17:42 +00:00
addNote(selectedDeck, valueFields, modelFields);
// ****************
// sendDataToLocaleStorage(
// setAnkiNoteCreator(sd), //send creator to locale storage
// setCreatorTemplate(modelFields),
// );
2020-03-08 11:17:42 +00:00
checkAnkiLanModelForExisting(model.name, model.list);
await dispatch(getModelList());
2020-03-10 04:22:42 +00:00
await dispatch(getFieldList(model.name));
2020-03-08 07:18:34 +00:00
} catch (err) {
console.log(err);
2020-03-07 19:38:01 +00:00
}
};
2020-03-08 11:17:42 +00:00
//creator is an object what have to store in locale storage.
export const addNote = words => {
const template = store.getState().anki.noteTemplate;
const settings = {
deckId: '1',
modelId: '1585139654585',
};
const creator = new AnkiDroid(settings);
2020-03-08 11:17:42 +00:00
creator.addNote(words, template);
alert('sucssess');
2020-03-08 11:17:42 +00:00
};