<?php /** * Prisna WP Translate * http://www.prisna.net/ * * LICENSE * * @package Prisna WP Translate * @copyright Copyright (c) 2016, Prisna Ltd, www.prisna.net * @license http://www.prisna.net/license/ * @version 1.11 * @date 2017-05-03 */ @ini_set('mbstring.internal_encoding', 'UTF-8'); require_once dirname(__FILE__) . '/../classes/classes.php'; PrisnaWPTranslateCommon::printHeaders(); class PrisnaWPTranslateTranslateManage { protected static $_token; protected static $_crc; protected static $_text; protected static $_from; protected static $_to; protected static $_ct; protected static $_nd; protected static $_ch; public static function main() { if (!function_exists('add_action')) { header('Status: 403 Forbidden'); header('HTTP/1.1 403 Forbidden'); exit(); die(); } self::$_token = PrisnaWPTranslateCommon::getVariable('tk'); self::$_crc = PrisnaWPTranslateCommon::getVariable('cr'); self::$_from = PrisnaWPTranslateCommon::getVariable('f'); self::$_to = PrisnaWPTranslateCommon::getVariable('t'); self::$_ct = PrisnaWPTranslateCommon::getVariable('ct'); self::$_nd = PrisnaWPTranslateCommon::getVariable('nd'); self::$_text = PrisnaWPTranslateCommon::getVariable('tx'); self::$_ch = PrisnaWPTranslateCommon::getVariable('ch'); try { $validate = new PrisnaWPTranslateTranslateValidator(array( 'token' => self::$_token, 'crc' => self::$_crc, 'text' => self::$_text, 'from' => self::$_from, 'to' => self::$_to, 'ct' => self::$_ct, 'nd' => self::$_nd )); } catch(Exception $e) { return self::_fail($e); } try { $translate = new PrisnaWPTranslateTranslateTransport($validate, self::$_ch !== '0'); self::_gen_response($translate->generate()); } catch(Exception $e) { return self::_fail($e); } } protected static function _fail($_e) { return self::_gen_response(array( 'error' => $_e->getMessage() )); } protected static function _gen_response($_array) { PrisnaWPTranslateTranslateValidator::parseMessage($_array); echo json_encode($_array); } } PrisnaWPTranslateTranslateManage::main();