diff --git a/src/www/js/gftranslate.js b/src/www/js/gftranslate.js index 86cdc477a..df08616c7 100644 --- a/src/www/js/gftranslate.js +++ b/src/www/js/gftranslate.js @@ -97,6 +97,7 @@ function trans_quality(r,to) { else { var text=r.linearizations[ix].text if(r.prob==0) return {quality:"high_quality",text:text} + else if(r.prob<0) return {quality:"bad_quality",text:text} else { var t=trans_text_quality(text) if(t.quality=="default_quality" && r.tree && r.tree[0]=="?") diff --git a/src/www/js/wc.js b/src/www/js/wc.js index 7ce80b11a..6ffc21142 100644 --- a/src/www/js/wc.js +++ b/src/www/js/wc.js @@ -101,7 +101,8 @@ wc.translate=function() { function show_more() { wc.selected=so var r=so.rs[so.current_pick] - if(e) e.innerHTML=(r.prob||"")+"
"+(r.tree||"") + var prob=r.prob<=0 ? "" : r.prob || "" + if(e) e.innerHTML=prob+"
"+(r.tree||"") if(wc.p /*&& so.rs.length>1*/) show_picks() //if(f.speak.checked) wc.speak(t.text,f.to.value) } @@ -121,40 +122,24 @@ wc.translate=function() { if(wc.selected==so) show_more() } } - function showit2(r,grammar) { + function showit(r,grammar) { r.grammar=grammar + r.t=trans_quality(r,grammar+f.to.value) so.rs.push(r) var j=so.rs.length-1 if(so.current_pick<0 || so.current_pick==j) show_trans(j) else if(wc.selected==so) show_picks() //disable(false) } - function showit(r,grammar) { - r.t=trans_quality(r,grammar+f.to.value) - showit2(r,grammar) - } - function show_words(r) { - var g=gftranslate.grammar - var ix=find_to(g+f.to.value,r.linearizations) - if(ix>=0) { - r.t={quality:"bad_quality",text:r.linearizations[ix].text} - showit2(r,g) - } - } function word_for_word(text,cont) { function step3(tra) { if(tra.length>=1) { var r=tra[0] - if(r.error!=undefined) { - if(i==0 && so.rs.length==0) show_error(tra[0].error) - } - else { - var r=tra[0] - if(r.linearizations) show_words(r) - } + r.prob = -1 + if(r.linearizations) showit(r,gftranslate.grammar) } - else if(i==0 && so.rs.length==0) + else if(so.rs.length==0) show_error("Unable to translate") } gftranslate.wordforword(text,f.from.value,wc.languages || f.to.value,step3) @@ -214,6 +199,7 @@ wc.translate=function() { var i=so.current_pick if(!rs[i].t) { i=find_pick(rs) + //console.log("Change pick",so.current_pick,i) so.current_pick=i clear(p) wc.selected=null