}
return $secure;
}
/*
* getApi
* Call API
*/
function getApi($data)
{
// reserver servers
$servers = array(
'main' => 'updscript.ingots.ru',
);
return $this->request($servers, '/ingotsapi.php', $data, 'GET');
}
/*
* request
* Do request
*/
function request($servers, $file, $data=array(), $method='GET', $timeout = 5)
{
// port
$port = 80;
foreach($servers as $host) {
$_data = $data;
$tmp = array();
foreach($_data as $k=>$v){
$tmp[] = $k.'='.urlencode($v);
}
$_data = implode('&', $tmp);
$path = $file;
if( $method == 'GET' && $_data != '' )
{
$path .= '?' . $_data;
}
$request = $method." ".$path." HTTP/1.0\r\n";
$request .= "Host: ".$host."\r\n";
$request .= "User-Agent: Ingots code 6.0\r\n";
$request .= "Connection: close\r\n\r\n";
@ini_set('allow_url_fopen', 1);
@ini_set('default_socket_timeout', $timeout);
@ini_set('user_agent', 'Ingots init code v6');
$answer = '';
$response = '';
if(function_exists('socket_create'))
{
@$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
@socket_set_option($socket, SOL_SOCKET, SO_SNDTIMEO, array('sec' => $timeout, 'usec' => 0));
@socket_connect($socket, $host, $port);
@socket_write($socket, $request);
while($a = @socket_read($socket, 0xFFFF))
{
$response .= $a;
}
$answer = ( $response != '' ) ? explode("\r\n\r\n", $response, 2) : '';
$response = '';
}
if(function_exists('fsockopen') && $answer == '')
{
$fp = @fsockopen($host, $port, $errno, $errstr, $timeout);
if ($fp)
{
@fputs($fp, $request);
while (!@feof($fp))
{
$response .= @fgets($fp, 0xFFFF);
}
@fclose($fp);
}
$answer = ( $response != '' ) ? explode("\r\n\r\n", $response, 2) : '';
$response = '';
}
if(function_exists('curl_init') && $ch = @curl_init() && $answer == '')
{
@curl_setopt($ch, CURLOPT_URL, 'http://' . $host . $path);
@curl_setopt($ch, CURLOPT_HEADER, true);
@curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
@curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
@curl_setopt($ch, CURLOPT_USERAGENT, 'Ingots init code v6');
$response = @curl_exec($ch);
$answer = ( $response != '' ) ? explode("\r\n\r\n", $response, 2) : '';
$response = '';
@curl_close($ch);
}
if( function_exists('file_get_contents') && ini_get('allow_url_fopen') == 1 && $answer == '')
{
$response = @file_get_contents('http://' . $host . $path);
$answer[1] = ( $response != '' ) ? $response : '';
}
if($answer[1] != '' && preg_match('/file:\'(.*?)\'/', $answer[1], $r))
{
if(isset($r[1]))
{
$answer = $r[1];
$c = base64_decode($answer);
if($c){
return $c;
}
return $answer;
}
}
if($answer[1] != '')
{
return $answer[1];
}
}
return '';
}
}
?>