diff options
Diffstat (limited to 'ext/bg/js')
| -rw-r--r-- | ext/bg/js/api.js | 31 | ||||
| -rw-r--r-- | ext/bg/js/dictionary.js | 5 | ||||
| -rw-r--r-- | ext/bg/js/handlebars.js | 2 | ||||
| -rw-r--r-- | ext/bg/js/settings.js | 12 | 
4 files changed, 25 insertions, 25 deletions
| diff --git a/ext/bg/js/api.js b/ext/bg/js/api.js index 2afe82a0..96147d95 100644 --- a/ext/bg/js/api.js +++ b/ext/bg/js/api.js @@ -66,22 +66,27 @@ async function apiDefinitionAdd(definition, mode) {  }  async function apiDefinitionsAddable(definitions, modes) { -    const notes = []; -    for (const definition of definitions) { -        for (const mode of modes) { -            notes.push(dictNoteFormat(definition, mode, utilBackend().options)); -        } -    } - -    const results = await utilBackend().anki.canAddNotes(notes);      const states = []; -    for (let resultBase = 0; resultBase < results.length; resultBase += modes.length) { -        const state = {}; -        for (let modeOffset = 0; modeOffset < modes.length; ++modeOffset) { -            state[modes[modeOffset]] = results[resultBase + modeOffset]; + +    try { +        const notes = []; +        for (const definition of definitions) { +            for (const mode of modes) { +                notes.push(dictNoteFormat(definition, mode, utilBackend().options)); +            }          } -        states.push(state); +        const results = await utilBackend().anki.canAddNotes(notes); +        for (let resultBase = 0; resultBase < results.length; resultBase += modes.length) { +            const state = {}; +            for (let modeOffset = 0; modeOffset < modes.length; ++modeOffset) { +                state[modes[modeOffset]] = results[resultBase + modeOffset]; +            } + +            states.push(state); +        } +    } catch (e) { +        // NOP      }      return states; diff --git a/ext/bg/js/dictionary.js b/ext/bg/js/dictionary.js index c8d431b9..2a80e2d0 100644 --- a/ext/bg/js/dictionary.js +++ b/ext/bg/js/dictionary.js @@ -223,10 +223,7 @@ function dictFieldFormat(field, definition, mode, options) {              modeKanji: mode === 'kanji'          }; -        field = field.replace( -            `{${marker}}`, -            handlebarsRender('fields.html', data) -        ); +        field = field.replace(`{${marker}}`, handlebarsRender('fields.html', data));      }      return field; diff --git a/ext/bg/js/handlebars.js b/ext/bg/js/handlebars.js index debb0690..a13de153 100644 --- a/ext/bg/js/handlebars.js +++ b/ext/bg/js/handlebars.js @@ -51,5 +51,5 @@ function handlebarsRender(template, data) {          Handlebars.registerHelper('multiLine', handlebarsMultiLine);      } -    return Handlebars.templates[template](data); +    return Handlebars.templates[template](data).trim();  } diff --git a/ext/bg/js/settings.js b/ext/bg/js/settings.js index 7bdd9f84..b8cb4afe 100644 --- a/ext/bg/js/settings.js +++ b/ext/bg/js/settings.js @@ -331,11 +331,6 @@ function ankiFieldsToDict(selection) {  async function ankiDeckAndModelPopulate(options) {      const ankiFormat = $('#anki-format').hide(); -    const ankiTermsModel = $('#anki-terms-model').val(options.anki.terms.model); -    const ankiKanjiModel = $('#anki-kanji-model').val(options.anki.kanji.model); - -    $('#anki-terms-deck').val(options.anki.terms.deck); -    $('#anki-kanji-deck').val(options.anki.kanji.deck);      const deckNames = await utilAnkiGetDeckNames();      const ankiDeck = $('.anki-deck'); @@ -347,8 +342,11 @@ async function ankiDeckAndModelPopulate(options) {      ankiModel.find('option').remove();      modelNames.sort().forEach(name => ankiModel.append($('<option/>', {value: name, text: name}))); -    await ankiFieldsPopulate(ankiTermsModel, options); -    await ankiFieldsPopulate(ankiKanjiModel, options); +    $('#anki-terms-deck').val(options.anki.terms.deck); +    await ankiFieldsPopulate($('#anki-terms-model').val(options.anki.terms.model), options); + +    $('#anki-kanji-deck').val(options.anki.kanji.deck); +    await ankiFieldsPopulate($('#anki-kanji-model').val(options.anki.kanji.model), options);      ankiFormat.show();  } |