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; #------------------------------------------------------------------------------- }
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; #------------------------------------------------------------------------------- }
<?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; #-------------------------------------------------------------------------------
#------------------------------------------------------------------------------- } 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':
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); }
$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)); } #------------------------------------------------------------------------------- } #-------------------------------------------------------------------------------
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"'; #-------------------------------------------------------------------------------
#------------------------------------------------------------------------------- #------------------------------------------------------------------------------- $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);
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; #-------------------------------------------------------------------------------