|  |  | 
 |  |  | <?php | 
 |  |  | require_once(dirname(__FILE__).'/msapi.php'); | 
 |  |  | require_once(dirname(__FILE__).'/msapi_config.php'); | 
 |  |  |  | 
 |  |  | class msapi extends msapi_config { | 
 |  |  |    public $url; | 
 |  |  | 	 | 
 |  |  |    function __construct($url) { | 
 |  |  |       $this->url = $url; | 
 |  |  |    } | 
 |  |  | 	 | 
 |  |  |    function execute($params) { | 
 |  |  |       if(!is_array($params)) { | 
 |  |  |          throw new Exception('Przekazany parametr nie jest tablicą'); | 
 |  |  |       } | 
 |  |  | 		 | 
 |  |  |       foreach($params as $name => &$param) { | 
 |  |  |          if(substr($name, 0, 1)!='$' && is_string($param)) { | 
 |  |  |             $param = '\''.strtr($param, array('\'' => '\'\'')).'\''; | 
 |  |  |          } | 
 |  |  |       } | 
 |  |  |       unset($param); | 
 |  |  |       $params['$format'] = 'json'; | 
 |  |  | 		 | 
 |  |  |       $context = stream_context_create(array( | 
 |  |  |          'http' => array( | 
 |  |  |             'request_fulluri' => TRUE, | 
 |  |  |             'header' => 'Authorization: Basic '.base64_encode(':'.$this->accountKey) | 
 |  |  |          ), | 
 |  |  |       )); | 
 |  |  | 		 | 
 |  |  |       $content = file_get_contents($this->url.'?'.http_build_query($params, '', '&'), FALSE, $context); | 
 |  |  |       if(!$content) { | 
 |  |  |          return FALSE; | 
 |  |  |       } | 
 |  |  | 		 | 
 |  |  |       $content = json_decode($content, TRUE); | 
 |  |  |       if(!$content) { | 
 |  |  |          return FALSE; | 
 |  |  |       } | 
 |  |  | 		 | 
 |  |  |       return $content; | 
 |  |  |    } | 
 |  |  | } | 
 |  |  |  | 
 |  |  | class bot_lang_module implements BotModule { | 
 |  |  |    function handle($msg, $params) { | 
 |  |  | 
 |  |  |       $data = jsarray::parse($data); | 
 |  |  |        | 
 |  |  |       if(!$data OR count($data)==0 OR count($data[1])==0) { | 
 |  |  |          $api = new msapi('https://api.datamarket.azure.com/Bing/MicrosoftTranslator/'); | 
 |  |  |          $api = new msapi('https://api.datamarket.azure.com/Bing/MicrosoftTranslator/Translate'); | 
 |  |  |          $data = $api->execute(array( | 
 |  |  |             'From' => $params[0], | 
 |  |  |             'To' => $params[1], |