| Summary | google search (utf-8) |
| Queue | Horde Base |
| Queue Version | 3.0.3-RC1 |
| Type | Bug |
| State | Resolved |
| Priority | 1. Low |
| Owners | |
| Requester | nils.juenemann (at) fh-telekom-leipzig (dot) de |
| Created | 02/08/2005 (7567 days ago) |
| Due | |
| Updated | 05/13/2005 (7473 days ago) |
| Assigned | 02/08/2005 (7567 days ago) |
| Resolved | 05/13/2005 (7473 days ago) |
| Github Issue Link | |
| Github Pull Request | |
| Milestone | |
| Patch | No |
State ⇒ Resolved
State ⇒ Not A Bug
State ⇒ Feedback
search string could be in any charset, depending on the current
language and the server's capabilities. The charset conversion needs
to be done on the server side instead.
State ⇒ Unconfirmed
Priority ⇒ 1. Low
Type ⇒ Bug
Summary ⇒ google search (utf-8)
Queue ⇒ Horde Base
Here is the patch therefor:
--- open_google_win.js.orig Sat Dec 25 00:12:52 2004
+++ open_google_win.js Sat Dec 25 00:11:29 2004
@@ -36,9 +36,27 @@
var name = "Google";
var param =
"toolbar=yes,location=yes,status=yes,scrollbars=yes,resizable=yes,width=800,height=600,left=0,top=0";
- url = url + escape(document.google.q.value);
+ url = url + escape(encode_utf8(document.google.q.value));
eval("name = window.open(url, name, param)");
if (!eval("name.opener")) {
eval("name.opener = self");
}
+}
+
+function encode_utf8(q) {
+ q = q.replace(/\r\n/g,"\n");
+ var qutf = "";
+ for(var i=0; i<q.length; i++) {
+ var c=q.charCodeAt(i);
+ if (c<128)
+ qutf += String.fromCharCode(c);
+ else if((c>127) && (c<2048)) {
+ qutf += String.fromCharCode((c>>6)|192);
+ qutf += String.fromCharCode((c&63)|128);}
+ else {
+ qutf += String.fromCharCode((c>>12)|224);
+ qutf += String.fromCharCode(((c>>6)&63)|128);
+ qutf += String.fromCharCode((c&63)|128);}
+ }
+ return qutf;
}