aboutsummaryrefslogtreecommitdiff
path: root/ext/bg/js/options-form.js
diff options
context:
space:
mode:
authorAlex Yatskov <alex@foosoft.net>2016-11-06 18:58:00 -0800
committerAlex Yatskov <alex@foosoft.net>2016-11-06 18:58:00 -0800
commit7fa51d682f29fbf51ed1228ca8840ff60be48e5e (patch)
tree12312aff5a7b59afd3c23ec5eaae1d56f568bd32 /ext/bg/js/options-form.js
parent73c7c225f11b9a1da550b9b866f106b188bd82ea (diff)
More work on options
Diffstat (limited to 'ext/bg/js/options-form.js')
-rw-r--r--ext/bg/js/options-form.js23
1 files changed, 20 insertions, 3 deletions
diff --git a/ext/bg/js/options-form.js b/ext/bg/js/options-form.js
index f9346d7d..9919031a 100644
--- a/ext/bg/js/options-form.js
+++ b/ext/bg/js/options-form.js
@@ -91,7 +91,7 @@ function getFormValues() {
optsNew.ankiKanjiModel = $('#anki-kanji-model').val();
optsNew.ankiKanjiFields = fieldsToDict($('#kanji .anki-field-value'));
- $('.dictionary').each((index, element) => {
+ $('.dict').each((index, element) => {
const dictionary = $(element);
const name = dictionary.data('name');
const enableTerms = dictionary.find('.dict-enable-terms').prop('checked');
@@ -163,7 +163,7 @@ function populateAnkiDeckAndModel(opts) {
}
function populateDictionaries(opts) {
- const container = $('.dictionaries');
+ const container = $('.dicts');
container.empty();
yomichan().translator.dictionary.getInfo().then(rows => {
@@ -181,7 +181,7 @@ function populateDictionaries(opts) {
container.append($(html));
});
- container.find('.dictionary input').change(onOptionsChanged);
+ container.find('.dict input').change(onOptionsChanged);
});
}
@@ -289,6 +289,23 @@ $(document).ready(() => {
$('input, select').not('.anki-model').change(onOptionsChanged);
$('.anki-model').change(onAnkiModelChanged);
+ $('#dict-import a').click(e => {
+ e.preventDefault();
+ const control = $('#dict-import-url');
+ const url = $(e.target).data('url');
+ if (url.includes('/')) {
+ control.val(url);
+ } else {
+ control.val(chrome.extension.getURL(`bg/data/${url}`));
+ }
+ control.trigger('change');
+ });
+
+ $('#dict-import-url').on('change keyup paste', () => {
+ const disable = $('#dict-import-url').val().trim().length === 0;
+ $('#dict-import-start').prop('disabled', disable);
+ });
+
populateDictionaries(opts);
populateAnkiDeckAndModel(opts);
updateVisibility(opts);