function RegRu_Domain_Check($Settings, $DomainName, $DomainZone) { /******************************************************************************/ $__args_types = array('array', 'string', 'string'); #------------------------------------------------------------------------------- $__args__ = Func_Get_Args(); eval(FUNCTION_INIT); /******************************************************************************/ $Domain = SPrintF('%s.%s', $DomainName, $DomainZone); #------------------------------------------------------------------------------- $HTTP = RegRu_Build_HTTP($Settings); #------------------------------------------------------------------------------- $Query = array('username' => $Settings['Login'], 'password' => $Settings['Password'], 'domain_name' => $Domain); #------------------------------------------------------------------------------- $Settings['PrefixAPI'] = SprintF("https://api.reg.ru/api/regru2/%s", "domain/check"); #------------------------------------------------------------------------------- $Result = HTTP_Send($Settings['PrefixAPI'], $HTTP, array(), $Query); if (Is_Error($Result)) { return ERROR | @Trigger_Error('[RegRu_Domain_Check]: не удалось выполнить запрос к серверу'); } #------------------------------------------------------------------------------- $Result = Trim($Result['Body']); #------------------------------------------------------------------------------- $Result = Json_Decode($Result, TRUE); #------------------------------------------------------------------------------- if ($Result['result'] != 'success') { return new gException('REGISTRATOR_ERROR', 'Регистратор вернул ошибку'); } #------------------------------------------------------------------------------- #Debug(SPrintF('[RegRu_Domain_Check]: %s',print_r($Result,true))); #------------------------------------------------------------------------------- # перебираем массив, составляем массив на выхлоп функции foreach ($Result['answer']['domains'] as $Value) { if ($Value['dname'] == $Domain) { return TRUE; } } #------------------------------------------------------------------------------- #Debug(SPrintF('[RegRu_Domain_Check]: Value = %s;',print_r($Value,true))); #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- return FALSE; #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- }
function execCmd($cmd, $arg = array()) { #------------------------------------------------------------------------------- $proto = $this->https ? "https" : "http"; #------------------------------------------------------------------------------- $params = array('login' => $this->login, 'psw' => $this->password, 'charset' => 'utf-8', 'fmt' => 3); #------------------------------------------------------------------------------- $params = array_merge($params, $arg); $urlParams = ""; #------------------------------------------------------------------------------- foreach ($params as $param => $value) { $urlParams .= sprintf("%s=%s&", $param, urlencode($value)); } #------------------------------------------------------------------------------- $url = sPrintF("%s://smsc.ru/sys/%s.php?%s", $proto, $cmd, $urlParams); #Debug(SPrintF('[system/classes/SMSC.class.php]: url = %s',$url)); #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- $i = 0; do { if ($i) { sleep(2); } $ret = $this->readUrl($url); } while ($ret == "" && ++$i < 3); if ($ret == "") { throw new jException("Error reading URL: " . $url); } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- $Result = Json_Decode($ret, TRUE); if (isset($Result['error'])) { $this->error = SPrintF('error_code = %s; error = (%s)', $Result['error_code'], $Result['error']); throw new jException(SPrintF('error_code = %s; error = (%s)', $Result['error_code'], $Result['error'])); } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- return $Result; #------------------------------------------------------------------------------- }
function WebNames_Domain_Check($Settings, $DomainName, $DomainZone) { /******************************************************************************/ $__args_types = array('array', 'string', 'string'); #------------------------------------------------------------------------------- $__args__ = Func_Get_Args(); eval(FUNCTION_INIT); /******************************************************************************/ $Domain = SPrintF('%s.%s', $DomainName, $DomainZone); #------------------------------------------------------------------------------- $HTTP = WebNames_Build_HTTP($Settings); #------------------------------------------------------------------------------- $Query = array('thisPage' => 'pispCheckDomain', 'domain_name' => $Domain, 'username' => $Settings['Login'], 'password' => $Settings['Password'], 'interface_revision' => 2); #------------------------------------------------------------------------------- $Result = HTTP_Send('/RegTimeSRS.pl', $HTTP, array(), $Query); if (Is_Error($Result)) { return ERROR | @Trigger_Error('[WebNames_Domain_Check]: не удалось выполнить запрос к серверу'); } #------------------------------------------------------------------------------- $Result = Json_Decode($Result['Body'], TRUE); #------------------------------------------------------------------------------- #Debug(SPrintF('[system/libs/WebNames.php]: $Result = %s',print_r($Result,true))); #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- if (isset($Result['error'])) { return new gException('REGISTRATOR_ERROR', 'Регистратор вернул ошибку'); } #------------------------------------------------------------------------------- if (!isset($Result['success'])) { return ERROR | @Trigger_Error('[WebNames_Domain_Check]: неизвестный ответ'); } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- $Out = array(); #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- if (isset($Result['success'])) { #------------------------------------------------------------------------------- $Success = $Result['success']; #------------------------------------------------------------------------------- foreach (Array_Keys($Success) as $Key) { #------------------------------------------------------------------------------- Debug(SPrintF('[system/libs/WebNames.php]: Success[%s] = %s', $Key, print_r($Success[$Key], true))); #------------------------------------------------------------------------------- if ($Key == 'unavail') { continue; } #------------------------------------------------------------------------------- foreach (Array_Keys($Success[$Key]) as $Key1) { #------------------------------------------------------------------------------- Debug(SPrintF('[system/libs/WebNames.php]: Success[%s][%s] = %s', $Key, $Key1, print_r($Success[$Key][$Key1], true))); #------------------------------------------------------------------------------- # не описание домена if (!isset($Success[$Key][$Key1]['dname'])) { continue; } #------------------------------------------------------------------------------- # если не наш домен - пропускаем if ($Success[$Key][$Key1]['dname'] != $Domain) { continue; } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- return TRUE; #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- return FALSE; #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- }