diff --git a/src/www/js/wc.js b/src/www/js/wc.js new file mode 100644 index 000000000..0a91ecf7a --- /dev/null +++ b/src/www/js/wc.js @@ -0,0 +1,90 @@ +var wc={} +wc.f=document.forms[0] +wc.e=element("extra") +wc.p=element("pick") +wc.translate=function() { + var f=wc.f, e=wc.e, p=wc.p + f.translate.disabled=true + f.output.value="" + wc.r=[] + wc.current=0 + clear(e) + clear(p) + + function show_error(msg) { + if(e) e.innerHTML=msg + else f.output.value="["+msg+"]" + } + function show_pick(i) { return function() { show_trans(i); return false; } } + function show_picks() { + clear(p) + for(var i=0;i"+r.tree + wc.current=i + if(wc.p /*&& wc.r.length>1*/) show_picks() + } + + function trans(text,i) { + function showit(result) { + wc.r[i].text=result + if(wc.current==i) show_trans(i) + else show_picks() + f.translate.disabled=false + if(wc.p && i<9) trans(text,i+1) + } + function step3(trans) { + if(trans.length>=1) { + if(trans[0].error) show_error(trans[0].error) + else { + var r=wc.r[i]=trans[0] + if(e && wc.current==i) e.innerHTML=r.prob+"
"+r.tree + unlextext(r.linearizations[0].text,showit) + } + } + else if(i==0) show_error("Unable to translate") + } + gftranslate.translate(text,f.from.value,f.to.value,i,1,step3) + } + function step2(text) { trans(text,0) } + lextext(f.input.value,step2) + return false; +} + +wc.swap=function() { + var f=wc.f + f.input.value=f.output.value; + var from=f.from.value + f.from.value=f.to.value + f.to.value=from + wc.translate() +} + +wc.google_translate_url=function() { + return "http://translate.google.com/" + +"#"+alangcode(wc.f.from.value) + +"/"+alangcode(wc.f.to.value) + +"/"+encodeURIComponent(wc.f.input.value) +} +/* +wc.try_google=function() { + var w=window.open(wc.google_translate_url(), + "google_translate") + w.focus() +} +*/ diff --git a/src/www/wc.html b/src/www/wc.html index 8585571f0..904cfd42a 100644 --- a/src/www/wc.html +++ b/src/www/wc.html @@ -11,7 +11,7 @@ table.center { margin-left: auto; margin-right: auto; } textarea { margin: 0; } body:target h1, body:target div.modtime { display: none; } #extra { color: #666; } -#pick span { padding: 0 0.5ex; } +#pick>* { padding: 0 0.5ex; } @@ -50,97 +50,26 @@ body:target h1, body:target div.modtime { display: none; }   
- -
+ - +
+
-
+ +

-Last modified: Wed Feb 12 16:23:01 CET 2014 +Last modified: Wed Feb 19 14:56:13 CET 2014
- +