diff options
author | Alex Yatskov <alex@foosoft.net> | 2017-02-08 20:13:45 -0800 |
---|---|---|
committer | Alex Yatskov <alex@foosoft.net> | 2017-02-08 20:13:45 -0800 |
commit | 2e3aec9ba11b15d7ac2b5d99af2dacac88e9c276 (patch) | |
tree | 20b47cc94b727e88dd077c29940b89a707265155 | |
parent | f3fe0994f52067d7c6d1886b02afd8f0a2a15099 (diff) |
fix "url" not being set on kanji cards, add more fields
-rw-r--r-- | ext/bg/js/options-form.js | 2 | ||||
-rw-r--r-- | ext/fg/js/driver.js | 6 | ||||
-rw-r--r-- | ext/fg/js/frame.js | 10 |
3 files changed, 15 insertions, 3 deletions
diff --git a/ext/bg/js/options-form.js b/ext/bg/js/options-form.js index 4470d105..91c6f140 100644 --- a/ext/bg/js/options-form.js +++ b/ext/bg/js/options-form.js @@ -351,7 +351,7 @@ function populateAnkiFields(element, options) { const markers = { 'terms': ['audio', 'dictionary', 'expression', 'furigana', 'glossary', 'reading', 'sentence', 'tags', 'url'], - 'kanji': ['character', 'dictionary', 'glossary', 'kunyomi', 'onyomi', 'url'] + 'kanji': ['character', 'dictionary', 'glossary', 'kunyomi', 'onyomi', 'sentence', 'tags', 'url'] }[tabId] || {}; return anki().getModelFieldNames(modelName).then(names => { diff --git a/ext/fg/js/driver.js b/ext/fg/js/driver.js index 7facda0a..cb7f2ea6 100644 --- a/ext/fg/js/driver.js +++ b/ext/fg/js/driver.js @@ -167,7 +167,11 @@ class Driver { if (definitions.length === 0) { return false; } else { - definitions.forEach(definition => definition.url = window.location.href); + const sentence = extractSentence(textSource, this.options.anki.sentenceExt); + definitions.forEach(definition => { + definition.url = window.location.href; + definition.sentence = sentence; + }); this.popup.showNextTo(textSource.getRect()); this.popup.showKanjiDefs(definitions, this.options); diff --git a/ext/fg/js/frame.js b/ext/fg/js/frame.js index dba59000..df8ca894 100644 --- a/ext/fg/js/frame.js +++ b/ext/fg/js/frame.js @@ -49,7 +49,15 @@ class Frame { $('.kanji-link').click(e => { e.preventDefault(); - findKanji($(e.target).text()).then(kdefs => this.api_showKanjiDefs({options, definitions: kdefs})); + const character = $(e.target).text(); + findKanji(character).then(kdefs => { + kdefs.forEach(kdef => { + kdef.url = definitions[0].url; + kdef.sentence = definitions[0].sentence; + }); + + this.api_showKanjiDefs({options, definitions: kdefs}); + }); }); $('.action-play-audio').click(e => { |