GoogleTranslate.php
[Pman.Core] / GoogleTranslate.php
index 8b4585e..fb324dc 100644 (file)
@@ -32,9 +32,6 @@ class Pman_Core_GoogleTranslate extends Pman
             $this->jerr("Google API Key not configured");
         }
         
-        $apiKey = $pc['googlekey'];
-    
-        $text = 'Hello world!';
         $param = array(
             'key' => $pc['googlekey'],
             'q' => rawurlencode($_REQUEST['text']),
@@ -42,20 +39,32 @@ class Pman_Core_GoogleTranslate extends Pman
             'target' => $_REQUEST['dest']
         );
         
-        $url = 'https://www.googleapis.com/language/translate/v2?key='.
-                $apiKey.
-                '&q='.
-                rawurlencode($text).
-                '&source=en&target=fr';
-
-        $handle = curl_init($url);
+        $url = 'https://www.googleapis.com/language/translate/v2';
+//
+        $handle = curl_init();
+        curl_setopt($handle, CURLOPT_URL, $url);
+        curl_setopt($handle, CURLOPT_POST, count($param));
+        curl_setopt($handle, CURLOPT_POSTFIELDS, http_build_query($param));
         curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
-        $response = curl_exec($handle);                 
-        $responseDecoded = json_decode($response, true);
+        curl_setopt($handle, CURLOPT_HTTPHEADER, array('X-HTTP-Method-Override: GET'));
+
+        $response = curl_exec($handle);
+//        utf8_decode('{"success":true,"total":1,"data":{"data":{"translations":[{"translatedText":"Alessi%E6%96%B0%E5%93%81%E7%99%BC%E5%B8%83%E3%80%80%E6%99%82%E5%B0%9A%E5%AF%A6%E7%94%A8%E5%85%BC%E5%82%99"}]}}}');
+        
+//        $testStr = '{"success":true,"total":1,"data":{"data":{"translations":[{"translatedText":"Alessi%E6%96%B0%E5%93%81%E7%99%BC%E5%B8%83%E3%80%80%E6%99%82%E5%B0%9A%E5%AF%A6%E7%94%A8%E5%85%BC%E5%82%99"}]}}}';
+//        mb_convert_encoding($testStr, 'HTML-ENTITIES', "UTF-8");
+//        print_R(utf8_decode(urldecode($testStr)));
+//        print_r(rawurldecode('Alessi%E6%96%B0%E5%93%81%E7%99%BC%E5%B8%83%E3%80%80%E6%99%82%E5%B0%9A%E5%AF%A6%E7%94%A8%E5%85%BC%E5%82%99'));
+        $responseDecoded = json_decode($response);
         curl_close($handle);
-    
+//        print_r($responseDecoded->data->data->translations[0]->translatedText);
         
-        $this->jdata($key);
+//        print_r($responseDecoded);
+        if(!empty($responseDecoded->error)){
+            $this->jerr($responseDecoded->error->message);
+        }
+        $responseDecoded->data->data->translations[0]->translatedText = rawurldecode($responseDecoded->data->data->translations[0]->translatedText);
+        $this->jok($responseDecoded->data->data->translations[0]);
         
     }