audio improvements

This commit is contained in:
Alex Yatskov 2017-03-25 12:01:20 -07:00
parent 20d062329b
commit 83a6c30d0e
2 changed files with 25 additions and 11 deletions

View File

@ -70,6 +70,25 @@ window.yomichan = new class {
fields = this.options.anki.terms.fields;
note.deckName = this.options.anki.terms.deck;
note.modelName = this.options.anki.terms.model;
if (definition.audio) {
const audio = {
url: definition.audio.url,
filename: definition.audio.filename,
skipHash: '7e2c2f954ef6051373ba916f000168dc',
fields: []
};
for (const name in fields) {
if (fields[name].includes('{audio}')) {
audio.fields.push(name);
}
}
if (audio.fields.length > 0) {
note.audio = audio;
}
}
}
for (const name in fields) {
@ -102,7 +121,7 @@ window.yomichan = new class {
definitionAdd(definition, mode) {
let promise = Promise.resolve();
if (this.options.general.audioPlayback && mode !== 'kanji') {
if (mode !== 'kanji') {
promise = audioInject(definition, this.options.anki.terms.fields);
}

View File

@ -85,25 +85,20 @@ function audioInject(definition, fields) {
return Promise.resolve(true);
}
const audio = {
filename,
skipHash: '7e2c2f954ef6051373ba916f000168dc',
fields: []
};
let usesAudio = false;
for (const name in fields) {
if (fields[name].includes('{audio}')) {
audio.fields.push(name);
usesAudio = true;
break;
}
}
if (audio.fields.length === 0) {
if (!usesAudio) {
return Promise.resolve(true);
}
return audioBuildUrl(definition).then(url => {
audio.url = url;
note.audio = audio;
definition.audio = {url, filename};
return true;
}).catch(() => false);
}