aboutsummaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorAlex Yatskov <alex@foosoft.net>2016-11-05 18:24:45 -0700
committerAlex Yatskov <alex@foosoft.net>2016-11-05 18:24:45 -0700
commitc24e179b10d31c445ab6393fe1a39b570887a3aa (patch)
treea65340b3f51ac6059d27b9b0c05f824997633bc7 /ext
parent92fbc14e0bea1ca04dd78f0ac788c528918cb133 (diff)
WIP
Diffstat (limited to 'ext')
-rw-r--r--ext/bg/js/dictionary.js12
-rw-r--r--ext/bg/js/options-form.js11
-rw-r--r--ext/bg/options.html2
3 files changed, 22 insertions, 3 deletions
diff --git a/ext/bg/js/dictionary.js b/ext/bg/js/dictionary.js
index 37a799a6..aa5f0b47 100644
--- a/ext/bg/js/dictionary.js
+++ b/ext/bg/js/dictionary.js
@@ -20,7 +20,7 @@
class Dictionary {
constructor() {
this.db = null;
- this.dbVer = 5;
+ this.dbVer = 4;
this.entities = null;
}
@@ -131,6 +131,14 @@ class Dictionary {
});
}
+ getDictionaries() {
+ if (this.db === null) {
+ return Promise.reject('database not initialized');
+ }
+
+ return this.db.dictionaries.toArray();
+ }
+
importTermDict(indexUrl, callback) {
if (this.db === null) {
return Promise.reject('database not initialized');
@@ -204,6 +212,6 @@ class Dictionary {
});
};
- return importJsonDb(indexUrl, null, entriesLoaded);
+ return importJsonDb(indexUrl, indexLoaded, entriesLoaded);
}
}
diff --git a/ext/bg/js/options-form.js b/ext/bg/js/options-form.js
index eb562142..589d92b1 100644
--- a/ext/bg/js/options-form.js
+++ b/ext/bg/js/options-form.js
@@ -154,6 +154,16 @@ function populateAnkiDeckAndModel(opts) {
});
}
+function populateDictionaries() {
+ const dictionaries = $('.dictionaries');
+ yomichan().translator.dictionary.getDictionaries().then(rows => {
+ for (const row of rows) {
+ const dictionary = $('<p>').text(row.dictionary);
+ dictionaries.append(dictionary);
+ }
+ });
+}
+
function populateAnkiFields(element, opts) {
const table = element.closest('.tab-pane').find('.anki-fields');
table.find('tbody').remove();
@@ -274,6 +284,7 @@ $(document).ready(() => {
$('input, select').not('.anki-model').change(onOptionsChanged);
$('.anki-model').change(onAnkiModelChanged);
+ populateDictionaries();
populateAnkiDeckAndModel(opts);
updateVisibility(opts);
});
diff --git a/ext/bg/options.html b/ext/bg/options.html
index 458174bb..77d7edf1 100644
--- a/ext/bg/options.html
+++ b/ext/bg/options.html
@@ -65,7 +65,7 @@
<div>
<h3>Dictionaries</h3>
- <div name="dictionaries">
+ <div class="dictionaries">
</div>
</div>