Ejemplo n.º 1
0
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;
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
}
Ejemplo n.º 2
0
 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;
     #-------------------------------------------------------------------------------
 }
Ejemplo n.º 3
0
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;
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
}