Exemple #1
0
function DNSmanager4_Get_Users($Settings)
{
    /******************************************************************************/
    $__args_types = array('array');
    #-------------------------------------------------------------------------------
    $__args__ = Func_Get_Args();
    eval(FUNCTION_INIT);
    /******************************************************************************/
    $authinfo = SPrintF('%s:%s', $Settings['Login'], $Settings['Password']);
    #-------------------------------------------------------------------------------
    $HTTP = array('Address' => $Settings['Address'], 'Port' => $Settings['Port'], 'Host' => $Settings['Address'], 'Protocol' => $Settings['Protocol'], 'Hidden' => $authinfo, 'IsLogging' => $Settings['Params']['IsLogging']);
    #-------------------------------------------------------------------------------
    $Response = HTTP_Send('/manager/dnsmgr', $HTTP, array(), array('authinfo' => $authinfo, 'out' => 'xml', 'func' => 'user'));
    if (Is_Error($Response)) {
        return new gException('NOT_CONNECTED_TO_SERVER', 'Не удалось соедениться с сервером');
    }
    #-------------------------------------------------------------------------------
    $Response = Trim($Response['Body']);
    #-------------------------------------------------------------------------------
    $XML = String_XML_Parse($Response);
    if (Is_Exception($XML)) {
        return new gException('WRONG_SERVER_ANSWER', $Response, $XML);
    }
    #-------------------------------------------------------------------------------
    $XML = $XML->ToArray('elem');
    #-------------------------------------------------------------------------------
    $Users = $XML['doc'];
    #-------------------------------------------------------------------------------
    if (isset($Users['error'])) {
        return new gException('GET_USERS_ERROR', $Users['error']);
    }
    #-------------------------------------------------------------------------------
    Debug(SprintF('[system/libs/DNSmanager4.php]: Users = %s', print_r($Users, true)));
    $Result = array();
    #-------------------------------------------------------------------------------
    foreach ($Users as $User) {
        #-------------------------------------------------------------------------------
        if (!isset($User['name'])) {
            continue;
        }
        #-------------------------------------------------------------------------------
        #if(!IsSet($User['owner']))
        #	continue;
        #-------------------------------------------------------------------------------
        #if($User['owner'] == $Settings['Login'])
        $Result[] = $User;
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
    return $Result;
    #-------------------------------------------------------------------------------
}
 public function getParams()
 {
     #-------------------------------------------------------------------------------
     $Server = new DomainServer();
     #-------------------------------------------------------------------------------
     $IsSelected = $Server->Select((int) $this->params['ServerID']);
     #-------------------------------------------------------------------------------
     switch (ValueOf($IsSelected)) {
         #-------------------------------------------------------------------------------
         case 'error':
             return ERROR | @Trigger_Error(500);
         case 'true':
             #-------------------------------------------------------------------------------
             // For RegRu only
             if ($Server->Settings['Params']['SystemID'] == 'RegRu' && In_Array($this->params['Name'], array('ru', 'su', 'рф'))) {
                 #-------------------------------------------------------------------------------
                 $Domain = SprintF("%s.%s", $this->params['DomainName'], $this->params['Name']);
                 #-------------------------------------------------------------------------------
                 $Result = $Server->GetUploadID($Domain);
                 #-------------------------------------------------------------------------------
                 switch (ValueOf($Result)) {
                     case 'error':
                         return ERROR | @Trigger_Error(500);
                     case 'array':
                         #-------------------------------------------------------------------------------
                         $UploadID = $Result['UploadID'];
                         #-------------------------------------------------------------------------------
                         $this->params['UploadID'] = $UploadID;
                         #-------------------------------------------------------------------------------
                         Debug(SPrintF('[system/classes/DomainOrdersOnRegisterMsg.class.php]: UploadID = %s', $UploadID));
                         #-------------------------------------------------------------------------------
                         break;
                         #-------------------------------------------------------------------------------
                     #-------------------------------------------------------------------------------
                     default:
                         return ERROR | @Trigger_Error(101);
                 }
                 #-------------------------------------------------------------------------------
             }
             #-------------------------------------------------------------------------------
             break;
             #-------------------------------------------------------------------------------
         #-------------------------------------------------------------------------------
         default:
             return ERROR | @Trigger_Error(101);
     }
     #-------------------------------------------------------------------------------
     return $this->params;
     #-------------------------------------------------------------------------------
 }
Exemple #3
0
function TemplateReplace($Text, $Params = array(), $NoBody = TRUE)
{
    #-------------------------------------------------------------------------------
    $Text = Trim($Text);
    #-------------------------------------------------------------------------------
    # проверяем что нам сунули - текст или файл
    if (!Preg_Match('/\\s/', $Text)) {
        #-------------------------------------------------------------------------------
        # достаём текст из файла
        $Path = System_Element(SPrintF('templates/modules/%s.html', $Text));
        #-------------------------------------------------------------------------------
        if (Is_Error($Path)) {
            #-------------------------------------------------------------------------------
            $Text = SprintF('Отсутствует шаблон сообщения (templates/modules/%s.html)', $Text);
            #-------------------------------------------------------------------------------
        } else {
            #-------------------------------------------------------------------------------
            $Text = Trim(IO_Read($Path));
            #-------------------------------------------------------------------------------
        }
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    if ($NoBody) {
        $Text = SPrintF('<NOBODY><SPAN>%s</SPAN></NOBODY>', $Text);
    }
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    $Replace = Array_ToLine($Params, '%');
    #-------------------------------------------------------------------------------
    foreach (Array_Keys($Replace) as $Key) {
        $Text = Str_Replace($Key, $Replace[$Key], $Text);
    }
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    return $Text;
    #-------------------------------------------------------------------------------
}
Exemple #4
0
<?php

#-------------------------------------------------------------------------------
/** @author Великодный В.В. (Joonte Ltd.) */
/******************************************************************************/
/******************************************************************************/
$__args_list = array('Invoice');
/******************************************************************************/
eval(COMP_INIT);
/******************************************************************************/
/******************************************************************************/
if ($Invoice['IsPosted']) {
    #-------------------------------------------------------------------------------
    Debug(SprintF('[comp/Triggers/Statuses/Invoices/Payed]: IsPosted = TRUE'));
    #-------------------------------------------------------------------------------
    return TRUE;
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#----------------------------------TRANSACTION----------------------------------
if (Is_Error(DB_Transaction($TransactionID = UniqID('comp/Triggers/Statuses/Invoices/Payed')))) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Number = Comp_Load('Formats/Invoice/Number', $Invoice['ID']);
if (Is_Error($Number)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$IsUpdate = Comp_Load('www/Administrator/API/PostingMake', array('ContractID' => $Invoice['ContractID'], 'Summ' => $Invoice['Summ'], 'ServiceID' => 1000, 'Comment' => SPrintF('по счёту №%s', $Number)));
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Days = array();
#-------------------------------------------------------------------------------
$Summs = array();
#-------------------------------------------------------------------------------
for ($day = Date('d', time()) - 7; $day <= Date('d', time()); $day++) {
    #-------------------------------------------------------------------------------
    $TimeBegin = MkTime(0, 0, 0, Date('m', time()), $day, Date('Y', time()));
    #-------------------------------------------------------------------------------
    $TimeEnd = MkTime(23, 59, 59, Date('m', time()), $day, Date('Y', time()));
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    # SQL
    $Columns = array('SUM(`Summ`) AS `Summ`');
    #-------------------------------------------------------------------------------
    $Where = array("`StatusID` = 'Payed'", SprintF('`StatusDate` BETWEEN %s AND %s', $TimeBegin, $TimeEnd));
    #$Where = "`StatusID` = 'Payed' AND `StatusDate` BETWEEN $TimeBegin AND $TimeEnd";
    #-------------------------------------------------------------------------------
    $Total = DB_Select('Invoices', $Columns, array('UNIQ', 'Where' => $Where));
    switch (ValueOf($Total)) {
        case 'error':
            return ERROR | @Trigger_Error(500);
        case 'exception':
            #return ERROR | @Trigger_Error(400);
            break;
        case 'array':
            #-------------------------------------------------------------------------------
            Debug(SPrintF('[comp/www/Administrator/PaymentsSystemsStatistics]: общая сумма за %s = %s', $day, $Total['Summ']));
            #-------------------------------------------------------------------------------
            break;
            #-------------------------------------------------------------------------------
Exemple #6
0
             #-------------------------------------------------------------------------------
         } else {
             #-------------------------------------------------------------------------------
             Debug(SPrintF('[comp/Triggers/GLOBAL]: Additional not match with regulars'));
             #-------------------------------------------------------------------------------
         }
         #-------------------------------------------------------------------------------
     }
     #-------------------------------------------------------------------------------
 }
 #-------------------------------------------------------------------------------
 $AdditionalParams = $Array;
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 # проверяем наличие такой услуги у юзера
 $Where = array(SprintF('`UserID` = %u', $Order['Row']['UserID']), SPrintF('`SchemeID` = %u', $SchemeID), '`StatusID` = "Active" OR `StatusID` = "Waiting"');
 #-------------------------------------------------------------------------------
 # добавляем к условию дополнительные параметры
 if (Is_Array($AdditionalParams) && SizeOf($AdditionalParams) > 0) {
     foreach (Array_Keys($AdditionalParams) as $Key) {
         $Where[] = SPrintF('`%s` = "%s"', $Key, $AdditionalParams[$Key]);
     }
 }
 #-------------------------------------------------------------------------------
 $ExistsOrder = DB_Select(SPrintF('%sOrdersOwners', $Service['Code']), '*', array('UNIQ', 'Where' => $Where, 'Limits' => array(0, 1)));
 switch (ValueOf($ExistsOrder)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         break;
     case 'array':
Exemple #7
0
function R01_Contract_Register($Settings, $PepsonID, $Person, $DomainZone)
{
    /****************************************************************************/
    $__args_types = array('array', 'string', 'array', 'string');
    #-----------------------------------------------------------------------------
    $__args__ = Func_Get_Args();
    eval(FUNCTION_INIT);
    /****************************************************************************/
    $AddCustomer = new SoapClient(null, array('location' => SPrintF('https://%s:%d/%s', $Settings['Address'], $Settings['Port'], $Settings['Params']['PrefixAPI']), 'uri' => 'urn:RegbaseSoapInterface', 'exceptions' => 1, 'user_agent' => 'RegbaseSoapInterfaceClient', 'trace' => 1));
    #-----------------------------------------------------------------------------
    if (Is_SOAP_Fault($AddCustomer)) {
        #---------------------------------------------------------------------------
        $Msg = SPrintF('Ошибка обращения к регистратору: %s', $AddCustomer->faultstring);
        #---------------------------------------------------------------------------
        return new gException('REQUEST_ERROR', $Msg);
    }
    #-----------------------------------------------------------------------------
    $loginResult = $AddCustomer->logIn($Settings['Login'], $Settings['Password']);
    #-----------------------------------------------------------------------------
    if (Is_SOAP_Fault($loginResult)) {
        #---------------------------------------------------------------------------
        $Msg = SPrintF('Ошибка при авторизации: %s', $loginResult->faultstring);
        #---------------------------------------------------------------------------
        return new gException('REQUEST_ERROR', $Msg);
    }
    #-----------------------------------------------------------------------------
    if ($loginResult->status->code == '0') {
        #---------------------------------------------------------------------------
        $Msg = SPrintF('Ошибка авторизации [name=%s, message=%s]', $loginResult->status->name, $loginResult->status->message);
        #---------------------------------------------------------------------------
        return new gException('AUTHORIZATION_FAILED', $Msg);
    }
    #-----------------------------------------------------------------------------
    $AddCustomer->__setCookie('SOAPClient', $loginResult->status->message);
    #-----------------------------------------------------------------------------
    switch ($PepsonID) {
        case 'Natural':
            #-------------------------------------------------------------------------
            $Params = array();
            #-------------------------------------------------------------------------
            $Params['NICHDL'] = SprintF('%s%s_%s-GPT', Mb_SubStr(Translit($Person['Name']), 0, 1), Translit($Person['Sourname']), Mb_SubStr(UniqID(), 0, 5));
            #-------------------------------------------------------------------------
            Debug(Print_R($Params, TRUE));
            #-------------------------------------------------------------------------
            $Response = $AddCustomer->addDadminPerson($Params['NICHDL'], SPrintF('%s %s %s', $Person['Sourname'], $Person['Name'], $Person['Lastname']), SPrintF('%s %s %s', Translit($Person['Name']), Mb_SubStr(Translit($Person['Lastname']), 0, 1), Translit($Person['Sourname'])), SPrintF('%s %s, %s, %s', $Person['PasportLine'], $Person['PasportNum'], $Person['PasportWhom'], $Person['PasportDate']), $Person['BornDate'], SPrintF('%d, %s, %s, %s, %s %s', $Person['pIndex'], $Person['pCountry'], $Person['pState'], $Person['pCity'], $Person['pType'], $Person['pAddress']), $Person['Phone'], $Person['Fax'], $Person['Email'], 1, 1);
            break;
        case 'Juridical':
            #-------------------------------------------------------------------------
            $Params['NICHDL'] = SprintF('%s_%s-ORG-GPT', Translit($Person['CompanyName']), Mb_SubStr(UniqID(), 0, 5));
            #-------------------------------------------------------------------------
            $Response = $AddCustomer->addDadminOrg($Params['NICHDL'], SPrintF('%s %s', $Person['CompanyFormFull'], $Person['CompanyName']), SPrintF('%s %s', Translit($Person['CompanyFormFull']), Translit($Person['CompanyName'])), $Person['Inn'], $Person['Ogrn'], SPrintF('%d, %s, %s, %s, %s %s', $Person['jIndex'], $Person['jCountry'], $Person['jState'], $Person['jCity'], $Person['jType'], $Person['jAddress']), SPrintF('%d, %s, %s, %s, %s %s', $Person['jIndex'], $Person['jCountry'], $Person['jState'], $Person['jCity'], $Person['pType'], $Person['pAddress']), $Person['Phone'], $Person['Fax'], $Person['Email'], SPrintF('%s %s %s', $Person['dSourname'], $Person['dName'], $Person['dLastname']), $Person['BankName'], $Person['BankAccount'], $Person['Kor'], $Person['Bik'], 1);
            break;
        default:
            return ERROR | @Trigger_Error(400);
    }
    #-----------------------------------------------------------------------------
    Debug(Print_R($Response, TRUE));
    #-----------------------------------------------------------------------------
    if (Is_SOAP_Fault($Response)) {
        #---------------------------------------------------------------------------
        $Msg = SPrintF('Ошибка при выполнении запроса: %s', $Response->faultstring);
        #---------------------------------------------------------------------------
        return new gException('REQUEST_ERROR', $Msg);
    }
    #-----------------------------------------------------------------------------
    if ($Response->status->code == '0') {
        #---------------------------------------------------------------------------
        $Msg = SPrintF('Ошибка регистрации домена [name=%s, message=%s]', $Response->status->name, $Response->status->message);
        #---------------------------------------------------------------------------
        return new gException('ADD_DOMAIN_FAILED', $Msg);
    }
    #-----------------------------------------------------------------------------
    $CustomerID = $Response->nic_hdl;
    #-----------------------------------------------------------------------------
    Debug($CustomerID);
    #-----------------------------------------------------------------------------
    $logoutResult = $AddCustomer->logOut();
    #-----------------------------------------------------------------------------
    if (Is_SOAP_Fault($logoutResult)) {
        #---------------------------------------------------------------------------
        $Msg = SPrintF('Ошибка закрытия сессии: %s', $logoutResult->faultstring);
        #---------------------------------------------------------------------------
        return new gException('REQUEST_ERROR', $Msg);
    }
    #-----------------------------------------------------------------------------
    return array('TicketID' => $CustomerID);
}
Exemple #8
0
        $Command = SPrintF('mysql --defaults-extra-file=%s %s 2>&1 < %s', $MyCnf, $DBConnection['DbName'], $Path);
        #-------------------------------------------------------------------------------
        $Log = array();
        #-------------------------------------------------------------------------------
        if (Exec($Command, $Log)) {
            return SPrintF("ERROR: ошибка перезагрузки триггеров:\n%s", Implode("\n", $Log));
        }
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
foreach ($HostsIDs as $HostID) {
    #-------------------------------------------------------------------------------
    $Path = SprintF('%s/db/%s/functions.sql', SYSTEM_PATH, $HostID);
    #-------------------------------------------------------------------------------
    if (File_Exists($Path)) {
        #-------------------------------------------------------------------------------
        echo SPrintF("Перезагрузка функций для хоста (%s)\n", $HostID);
        #-------------------------------------------------------------------------------
        $Command = SPrintF('mysql --defaults-extra-file=%s %s 2>&1 < %s', $MyCnf, $DBConnection['DbName'], $Path);
        #-------------------------------------------------------------------------------
        $Log = array();
        #-------------------------------------------------------------------------------
        if (Exec($Command, $Log)) {
            return SPrintF("ERROR: ошибка перезагрузки функций:\n%s", Implode("\n", $Log));
        }
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
Exemple #9
0
function Started_Contract_Register($Settings, $PepsonID, $Person, $DomainZone)
{
    /****************************************************************************/
    $__args_types = array('array', 'string', 'array', 'string');
    #-----------------------------------------------------------------------------
    $__args__ = Func_Get_Args();
    eval(FUNCTION_INIT);
    /****************************************************************************/
    $HTTP = array('Protocol' => $Settings['Protocol'], 'Port' => $Settings['Port'], 'Address' => $Settings['Address'], 'Host' => $Settings['Address'], 'IsLogging' => $Settings['Params']['IsLogging']);
    #-----------------------------------------------------------------------------
    $Reseller = new Tag('reseller');
    $Reseller->AddChild(new Tag('login', $Settings['Login']));
    $Reseller->AddChild(new Tag('password', $Settings['Password']));
    #-----------------------------------------------------------------------------
    $Tmp = System_Element('tmp');
    if (Is_Error($Tmp)) {
        return ERROR | @Trigger_Error(500);
    }
    #-----------------------------------------------------------------------------
    $pCountry = isset($Person['PasportCountry']) ? $Person['PasportCountry'] : $Person['pCountry'];
    #-----------------------------------------------------------------------------
    $Path = SPrintF('%s/started/states[%s].json', $Tmp, $pCountry);
    #-----------------------------------------------------------------------------
    if (File_Exists($Path)) {
        #---------------------------------------------------------------------------
        $States = IO_Read($Path);
        if (Is_Error($States)) {
            return ERROR | @Trigger_Error(500);
        }
        #---------------------------------------------------------------------------
        $States = JSON_Decode($States, TRUE);
        if (!$States) {
            return ERROR | @Trigger_Error(500);
        }
    } else {
        #---------------------------------------------------------------------------
        $Request = new Tag('RequestBody', $Reseller);
        #---------------------------------------------------------------------------
        $objCountry = new Tag('objCountry');
        $objCountry->AddChild(new Tag('method', 'getRegions'));
        $objCountry->AddChild(new Tag('country', $pCountry));
        #---------------------------------------------------------------------------
        $Request->AddChild($objCountry);
        #---------------------------------------------------------------------------
        $Post = SprintF("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n%s", $Request->ToXMLString());
        #---------------------------------------------------------------------------
        $Responce = HTTP_Send('/', $HTTP, array(), $Post, array('Content-type: text/xml'));
        if (Is_Error($Responce)) {
            return ERROR | @Trigger_Error(500);
        }
        #---------------------------------------------------------------------------
        $Response = Trim($Responce['Body']);
        #---------------------------------------------------------------------------
        $Answer = String_XML_Parse($Response);
        if (Is_Exception($Answer)) {
            return new gException('WRONG_ANSWER', $Response, $Answer);
        }
        #---------------------------------------------------------------------------
        $States = Current($States->ToArray('item'));
        #---------------------------------------------------------------------------
        $IsWrite = IO_Write($Path, JSON_Encode($States), TRUE);
        if (Is_Error($IsWrite)) {
            return ERROR | @Trigger_Error(500);
        }
    }
    #-----------------------------------------------------------------------------
    $objUser = new Tag('objUser');
    $objUser->AddChild(new Tag('method', 'create'));
    #-----------------------------------------------------------------------------
    $objUser->AddChild(new Tag('email', $Person['Email']));
    $objUser->AddChild(new Tag('password', SubStr(Md5(UniqID()), -8)));
    #-----------------------------------------------------------------------------
    $IsRussian = In_Array(isset($Person['PasportCountry']) ? $Person['PasportCountry'] : $Person['pCountry'], array('RU', 'BY', 'UA'));
    #-----------------------------------------------------------------------------
    switch ($PepsonID) {
        case 'Natural':
            #-------------------------------------------------------------------------
            $pStateID = 0;
            #-------------------------------------------------------------------------
            $pState = $Person['pState'];
            #-------------------------------------------------------------------------
            foreach ($States as $State) {
                #-----------------------------------------------------------------------
                if (Preg_Match(SPrintF('/%s/', StrToLower($State['title'])), StrToLower($pState))) {
                    #---------------------------------------------------------------------
                    $pStateID = $State['id'];
                    #---------------------------------------------------------------------
                    Debug(SPrintF('Найдена область: %s', $pStateID));
                    #---------------------------------------------------------------------
                    break;
                }
            }
            #-------------------------------------------------------------------------
            if (!$pStateID) {
                #-----------------------------------------------------------------------
                Debug(SPrintF('Область не найдена, проверьте название области (%s)', $pState));
                #-----------------------------------------------------------------------
                return new gException('POST_REGION_NOT_FOUND', 'Область почтового адреса не найдена');
            }
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('type', 'person'));
            #-------------------------------------------------------------------------
            if ($IsRussian) {
                #-----------------------------------------------------------------------
                $objUser->AddChild(new Tag('fname', $Person['Name']));
                $objUser->AddChild(new Tag('lname', $Person['Lastname']));
                $objUser->AddChild(new Tag('mname', $Person['Sourname']));
                $objUser->AddChild(new Tag('doc_issued', $Person['PasportWhom']));
            } else {
                $objUser->AddChild(new Tag('fname', Translit($Person['Name'])));
                $objUser->AddChild(new Tag('lname', Translit($Person['Lastname'])));
                $objUser->AddChild(new Tag('mname', Translit($Person['Sourname'])));
                $objUser->AddChild(new Tag('doc_issued', Translit($Person['PasportWhom'])));
            }
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('p_inn', ''));
            $objUser->AddChild(new Tag('doc_serial', $Person['PasportLine']));
            $objUser->AddChild(new Tag('doc_number', $Person['PasportNum']));
            $objUser->AddChild(new Tag('doc_date', $Person['PasportDate']));
            $objUser->AddChild(new Tag('birth_date', $Person['BornDate']));
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('country', StrToLower(isset($Person['PasportCountry']) ? $Person['PasportCountry'] : $Person['pCountry'])));
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('zip', $Person['pIndex']));
            $objUser->AddChild(new Tag('state', $pStateID));
            $objUser->AddChild(new Tag('city_type', 'city'));
            $objUser->AddChild(new Tag('addr_type', StrToLower($Person['pType'])));
            #-------------------------------------------------------------------------
            if ($IsRussian) {
                #-----------------------------------------------------------------------
                $objUser->AddChild(new Tag('city', $Person['pCity']));
                $objUser->AddChild(new Tag('addr', SPrintF('%s %s', $Person['pType'], $Person['pAddress'])));
            } else {
                $objUser->AddChild(new Tag('city', Translit($Person['pCity'])));
                $objUser->AddChild(new Tag('addr', Translit(SPrintF('%s %s', $Person['pType'], $Person['pAddress']))));
            }
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('pzip', $Person['pIndex']));
            $objUser->AddChild(new Tag('pstate', $pStateID));
            $objUser->AddChild(new Tag('pcity_type', 'city'));
            $objUser->AddChild(new Tag('paddr_type', StrToLower($Person['pType'])));
            #-------------------------------------------------------------------------
            if ($IsRussian) {
                #-----------------------------------------------------------------------
                $objUser->AddChild(new Tag('pcity', $Person['pCity']));
                $objUser->AddChild(new Tag('paddr', SPrintF('%s %s', $Person['pType'], $Person['pAddress'])));
                $objUser->AddChild(new Tag('pto', $Person['pRecipient']));
            } else {
                #-----------------------------------------------------------------------
                $objUser->AddChild(new Tag('pcity', Translit($Person['pCity'])));
                $objUser->AddChild(new Tag('paddr', Translit(SPrintF('%s %s', $Person['pType'], $Person['pAddress']))));
                $objUser->AddChild(new Tag('pto', Translit($Person['pRecipient'])));
            }
            break;
        case 'Juridical':
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('type', 'organization'));
            #-------------------------------------------------------------------------
            if ($IsRussian) {
                #-----------------------------------------------------------------------
                $objUser->AddChild(new Tag('fname', $Person['dName']));
                $objUser->AddChild(new Tag('lname', $Person['dLastname']));
                $objUser->AddChild(new Tag('mname', $Person['dSourname']));
                $objUser->AddChild(new Tag('org', SPrintF('%s "%s"', $Person['CompanyFormFull'], $Person['CompanyName'])));
            } else {
                $objUser->AddChild(new Tag('fname', Translit($Person['dName'])));
                $objUser->AddChild(new Tag('lname', Translit($Person['dLastname'])));
                $objUser->AddChild(new Tag('mname', Translit($Person['dSourname'])));
                $objUser->AddChild(new Tag('org', SPrintF('%s %s', Translit($Person['CompanyName']), Translit($Person['CompanyFormFull']))));
            }
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('o_inn', $Person['Inn']));
            $objUser->AddChild(new Tag('kpp', $Person['Kpp']));
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('country', StrToLower($Person['jCountry'])));
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('zip', $Person['jIndex']));
            #-------------------------------------------------------------------------
            $jStateID = 0;
            #-------------------------------------------------------------------------
            $jState = $Person['jState'];
            #-------------------------------------------------------------------------
            foreach ($States as $State) {
                #-----------------------------------------------------------------------
                if (Preg_Match(SPrintF('/%s/', StrToLower($State['title'])), StrToLower($jState))) {
                    #---------------------------------------------------------------------
                    $jStateID = $State['id'];
                    #---------------------------------------------------------------------
                    Debug(SPrintF('Найдена область: %s', $jStateID));
                    #---------------------------------------------------------------------
                    break;
                }
            }
            #-------------------------------------------------------------------------
            if (!$jStateID) {
                #-----------------------------------------------------------------------
                Debug(SPrintF('Область не найдена, проверьте название области (%s)', $jState));
                #-----------------------------------------------------------------------
                return new gException('JURIDICAL_REGION_NOT_FOUND', 'Область юридического адреса не найдена');
            }
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('state', $jStateID));
            $objUser->AddChild(new Tag('city_type', 'city'));
            $objUser->AddChild(new Tag('addr_type', StrToLower($Person['jType'])));
            #-------------------------------------------------------------------------
            if ($IsRussian) {
                #-----------------------------------------------------------------------
                $objUser->AddChild(new Tag('city', $Person['jCity']));
                $objUser->AddChild(new Tag('addr', SPrintF('%s %s', $Person['jType'], $Person['jAddress'])));
            } else {
                $objUser->AddChild(new Tag('city', Translit($Person['jCity'])));
                $objUser->AddChild(new Tag('addr', Translit(SPrintF('%s %s', $Person['jType'], $Person['jAddress']))));
            }
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('pzip', $Person['pIndex']));
            #-------------------------------------------------------------------------
            $pStateID = 0;
            #-------------------------------------------------------------------------
            $pState = $Person['pState'];
            #-------------------------------------------------------------------------
            foreach ($States as $State) {
                #-----------------------------------------------------------------------
                if (Preg_Match(SPrintF('/%s/', StrToLower($State['title'])), StrToLower($pState))) {
                    #---------------------------------------------------------------------
                    $pStateID = $State['id'];
                    #---------------------------------------------------------------------
                    Debug(SPrintF('Найдена область: %s', $pStateID));
                    #---------------------------------------------------------------------
                    break;
                }
            }
            #-------------------------------------------------------------------------
            if (!$pStateID) {
                #-----------------------------------------------------------------------
                Debug(SPrintF('Область не найдена, проверьте название области (%s)', $pState));
                #-----------------------------------------------------------------------
                return new gException('POST_REGION_NOT_FOUND', 'Область почтового адреса не найдена');
            }
            #-------------------------------------------------------------------------
            $objUser->AddChild(new Tag('pstate', $pStateID));
            $objUser->AddChild(new Tag('pcity_type', 'city'));
            $objUser->AddChild(new Tag('paddr_type', StrToLower($Person['pType'])));
            #-------------------------------------------------------------------------
            if ($IsRussian) {
                #-----------------------------------------------------------------------
                $objUser->AddChild(new Tag('pcity', $Person['pCity']));
                $objUser->AddChild(new Tag('paddr', SPrintF('%s %s', $Person['pType'], $Person['pAddress'])));
                $objUser->AddChild(new Tag('pto', SPrintF('%s "%s"', $Person['CompanyFormFull'], $Person['CompanyName'])));
            } else {
                $objUser->AddChild(new Tag('pcity', Translit($Person['pCity'])));
                $objUser->AddChild(new Tag('paddr', Translit(SPrintF('%s %s', $Person['pType'], $Person['pAddress']))));
                $objUser->AddChild(new Tag('pto', SPrintF('%s %s', Translit($Person['CompanyName']), Translit($Person['CompanyFormFull']))));
            }
            break;
        default:
            return ERROR | @Trigger_Error(101);
    }
    #-----------------------------------------------------------------------------
    $Phone = $Person['Phone'];
    #-----------------------------------------------------------------------------
    if ($Phone) {
        #---------------------------------------------------------------------------
        $Phone = StrPBrk($Phone, ' ');
        #---------------------------------------------------------------------------
        $objUser->AddChild(new Tag('tel', Trim($Phone)));
    } else {
        $objUser->AddChild(new Tag('tel'));
    }
    #-----------------------------------------------------------------------------
    $Fax = $Person['Fax'];
    #-----------------------------------------------------------------------------
    if ($Fax) {
        #---------------------------------------------------------------------------
        $Fax = StrPBrk($Fax, ' ');
        #---------------------------------------------------------------------------
        $objUser->AddChild(new Tag('fax', Trim($Fax)));
    } else {
        $objUser->AddChild(new Tag('fax'));
    }
    #-----------------------------------------------------------------------------
    $Request = new Tag('RequestBody', $Reseller);
    #-----------------------------------------------------------------------------
    $Request->AddChild($objUser);
    #-----------------------------------------------------------------------------
    $Post = SprintF("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n%s", $Request->ToXMLString());
    #-----------------------------------------------------------------------------
    $Responce = HTTP_Send('/', $HTTP, array(), $Post, array('Content-type: text/xml; charset=utf-8'));
    if (Is_Error($Responce)) {
        return ERROR | @Trigger_Error(500);
    }
    #-----------------------------------------------------------------------------
    $Response = Trim($Responce['Body']);
    #-----------------------------------------------------------------------------
    $Answer = String_XML_Parse($Response);
    if (Is_Exception($Answer)) {
        return new gException('WRONG_ANSWER', $Response, $Answer);
    }
    #-----------------------------------------------------------------------------
    $Answer = $Answer->ToArray();
    #-----------------------------------------------------------------------------
    $Answer = $Answer['AnswerBody'];
    #-----------------------------------------------------------------------------
    if (isset($Answer['statusCode'])) {
        return new gException('REGISTRATOR_ERROR', SPrintF('[%s]=(%s)', $Answer['statusCode'], $Answer['statusMessage']));
    }
    #-----------------------------------------------------------------------------
    return array('TicketID' => $Answer['user_id']);
}
    #-------------------------------------------------------------------------------
    $Comp = Comp_Load('www/API/StatusSet', array('ModeID' => 'Orders', 'StatusID' => 'Active', 'RowsIDs' => $ServiceOrderID, 'Comment' => 'Заказ создан', 'IsNoTrigger' => TRUE));
    #-------------------------------------------------------------------------------
    switch (ValueOf($Comp)) {
        case 'error':
            return ERROR | @Trigger_Error(500);
        case 'exception':
            return ERROR | @Trigger_Error(400);
        case 'array':
            #-------------------------------------------------------------------------------
            $Event = array('UserID' => $Order['UserID'], 'PriorityID' => 'Hosting', 'Text' => SPrintF('Создан заказ #%s на услугу (%s)', $Number, $Order['NameShort']));
            $Event = Comp_Load('Events/EventInsert', $Event);
            if (!$Event) {
                return ERROR | @Trigger_Error(500);
            }
            #-------------------------------------------------------------------------------
            $GLOBALS['TaskReturnInfo'] = array($Order['NameShort'], SprintF('#%s', $Number), $Settings['Script']);
            #-------------------------------------------------------------------------------
            return TRUE;
            #-------------------------------------------------------------------------------
        #-------------------------------------------------------------------------------
        default:
            return ERROR | @Trigger_Error(101);
    }
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
return new gException('NEED_MANUAL_ACTION', 'Задачу необходимо выполнять вручную, администратору');
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
    if (!$Count) {
        #-------------------------------------------------------------------------------
        $DOM->AddText('Title', SPrintF('Оплата заказа хостинга, домен "%s"', $Domain));
        $NoBody->AddChild(new Tag('P', SPrintF('Оплата невозможна - заказов хостинга с доменом "%s" не найдено.', $Domain)));
        $NoBody->AddChild(new Tag('P', 'Если вы владелец этого сайта, войдите в биллинговую систему и оплатите от своего имени.'));
        #-------------------------------------------------------------------------------
        $DOM->AddChild('Into', $NoBody);
        #-------------------------------------------------------------------------------
        $Out = $DOM->Build();
        #-------------------------------------------------------------------------------
        if (Is_Error($Out)) {
            return ERROR | @Trigger_Error(500);
        }
        #-------------------------------------------------------------------------------
        if ($Settings['SendReportOnSearchError']) {
            Report(SprintF('Не найден домен %s при попытке выписать счёт', $Domain));
        }
        #-------------------------------------------------------------------------------
        return $Out;
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$DOM->AddText('Title', SPrintF('Оплата заказа хостинга, домен "%s"', $Domain));
$NoBody->AddChild(new Tag('P', SPrintF('Найден заказ хостинга с доменом "%s".', $Domain)));
#-------------------------------------------------------------------------------
# ищщем заказы хостинга с заблокированным доменом
$Where[] = '`StatusID` = "Suspended"';
#-------------------------------------------------------------------------------
Exemple #12
0
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Path = SPrintF('www/API/%sOrderPay', $Service['Code']);
#-------------------------------------------------------------------------------
if (Is_Error(System_Element(SPrintF('comp/%s.comp.php', $Path)))) {
    #-------------------------------------------------------------------------------
    Debug(SPrintF('[comp/www/API/OrdersPay]: API для заказа сервиса не найдено: %s', $Path));
    #-------------------------------------------------------------------------------
    continue;
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
$Count = 0;
foreach ($Orders as $Order) {
    #-------------------------------------------------------------------------------
    $OrderPay = Comp_Load($Path, array(SprintF('%sOrderID', $Service['Code']) => $Order['ID'], 'DaysPay' => $ItemsPay, 'IsUseBasket' => !$UseBalance, 'IsNoBasket' => $UseBalance));
    #-------------------------------------------------------------------------------
    switch (ValueOf($OrderPay)) {
        case 'error':
            return ERROR | @Trigger_Error(500);
        case 'exception':
            break;
        case 'array':
            #-------------------------------------------------------------------------------
            $Count++;
            #-------------------------------------------------------------------------------
            break;
            #-------------------------------------------------------------------------------
        #-------------------------------------------------------------------------------
        default:
            return ERROR | @Trigger_Error(101);
Exemple #13
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;
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
}
     #-------------------------------------------------------------------------------
     foreach ($ExcludeAccounts as &$value) {
         $EAs[] = Trim($value);
     }
     #-------------------------------------------------------------------------------
 }
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 $Servers = DB_Select('Servers', array('ID', 'Address'), array('Where' => SPrintF('`ServersGroupID` = %u', $ServersGroup['ID']), 'SortOn' => 'Address'));
 #-------------------------------------------------------------------------------
 switch (ValueOf($Servers)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         #-------------------------------------------------------------------------------
         Debug(SprintF('[comp/Tasks/GC/ServersCheckUsers]: в группе #%u нет серверов', $ServersGroup['ID']));
         #-------------------------------------------------------------------------------
         continue 2;
         #-------------------------------------------------------------------------------
     #-------------------------------------------------------------------------------
     case 'array':
         break;
     default:
         return ERROR | @Trigger_Error(101);
 }
 #---------------------------------------------------------------------------
 foreach ($Servers as $Server) {
     #-------------------------------------------------------------------------------
     #if($Server['Address'] != 's31.host-food.ru')
     #	continue;
     #-------------------------------------------------------------------------------