| +-----------------------------------------------------------------------+ $Id: spell_googie.inc 4626 2011-03-31 12:32:44Z alec $ */ $REMOTE_REQUEST = TRUE; // default settings $host = "ssl://www.google.com"; $port = 443; $lang = get_input_value('lang', RCUBE_INPUT_GET); $path = "/tbproxy/spell?lang=$lang"; // spell check uri is configured if (!empty($CONFIG['spellcheck_uri'])) { $a_uri = parse_url($CONFIG['spellcheck_uri']); $ssl = ($a_uri['scheme']=='https' || $a_uri['scheme']=='ssl'); $port = $a_uri['port'] ? $a_uri['port'] : ($ssl ? 443 : 80); $host = ($ssl ? 'ssl://' : '') . $a_uri['host']; $path = $a_uri['path'] . ($a_uri['query'] ? '?'.$a_uri['query'] : '') . $lang; } $data = file_get_contents('php://input'); // Google has some problem with spaces, use \n instead $data = str_replace(' ', "\n", $data); $store = ""; if ($fp = fsockopen($host, $port, $errno, $errstr, 30)) { $out = "POST $path HTTP/1.0\r\n"; $out .= "Host: " . str_replace('ssl://', '', $host) . "\r\n"; $out .= "Content-Length: " . strlen($data) . "\r\n"; $out .= "Content-Type: application/x-www-form-urlencoded\r\n"; $out .= "Connection: Close\r\n\r\n"; $out .= $data; fwrite($fp, $out); while (!feof($fp)) $store .= fgets($fp, 128); fclose($fp); } // remove headers $pos = strpos($store, '