PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
Dir : /home/trave494/demo2024feb.kerihosting.com/wp-content/plugins/wp-automatic/ |
Server: Linux ngx353.inmotionhosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 IP: 209.182.202.254 |
Dir : /home/trave494/demo2024feb.kerihosting.com/wp-content/plugins/wp-automatic/translator.Google.php |
<?php /** * Class:Translator to translate using Google * @author sweetheatmn (sweetheatmn@gmail.com) * @version 1.2.0 * updated to cope with new gtranslate changes @18 september 2016 */ class GoogleTranslator{ public $ch; //curl handler to use /** * Constructor to recieve curl handler * @param curl $ch */ function __construct(&$ch){ $this->ch = $ch; } /** * Translate text using Google Post request to google translate * @param unknown $sourceText * @param unknown $fromLanguage * @param unknown $toLanguage * @return string translated text */ function translateText($sourceText , $fromLanguage ,$toLanguage){ //saving the content to a temp file if ( trim(ini_get('open_basedir')) != ''){ echo '<br>open_basedir exists'; $upload_dir = wp_upload_dir (); $tmpFileUri = $upload_dir['basedir'].'/wp_automatic_tmp'; $tmpHandle = fopen($tmpFileUri, "w+"); fwrite($tmpHandle, $sourceText); }else{ $tmpHandle = tmpfile(); $metaDatas = stream_get_meta_data($tmpHandle); $tmpFileUri = $metaDatas['uri']; fwrite($tmpHandle, $sourceText); } //translate file url curl_setopt($this->ch, CURLOPT_URL, "https://translate.googleusercontent.com/translate_f"); curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($this->ch, CURLOPT_POST, true ); if( class_exists('CurlFile')){ $curlFile = new \CurlFile( $tmpFileUri, 'text/plain', 'test.txt'); }else{ $curlFile = '@'.$tmpFileUri.';type=text/plain;filename=test.txt'; } $post = [ 'file' => $curlFile, 'sl' => $fromLanguage, 'tl' => $toLanguage, 'js' => 'y', 'prev' => '_t', 'hl' => 'en', 'ie' => 'UTF-8', ]; curl_setopt ( $this->ch, CURLOPT_POSTFIELDS, $post ); $headers = array(); $headers[] = "User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:49.0) Gecko/20100101 Firefox/49.0"; $headers[] = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"; $headers[] = "Accept-Language: en-US,en;q=0.5"; $headers[] = "Referer: https://translate.google.com/?tr=f&hl=en"; $headers[] = "Connection: keep-alive"; $headers[] = "Upgrade-Insecure-Requests: 1"; curl_setopt($this->ch, CURLOPT_HTTPHEADER, $headers); $exec = curl_exec($this->ch); $x = curl_error($this->ch); //close and delete temp file fclose($tmpHandle); // Empty response check if(trim($exec) == ''){ throw new Exception('Empty translator reply with possible curl error '.$x); } // Validate response result box if( stristr($exec, 'Error 403') ){ echo $exec; throw new Exception('Error 403 from Google'); } //extra <pre removal fix $exec= str_replace('<pre>','' , $exec ); $exec= str_replace('</pre>','' , $exec ); return $exec ; } }