/** * runs an api command and returns parsed data * * @param string $commandUrl * @param array $postData * @param string $errorMessage if cannot connect to server * @return array */ function internetbs_runCommand($commandUrl, $postData) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $commandUrl); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_USERAGENT, "Internet.bs WHMCS module V2.5.4"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); $data = curl_exec($ch); global $internetbs_last_error; $internetbs_last_error = curl_error($ch); if (internetbs_isDebug()) { internetbs_debugLog($commandUrl . "\n================================\n" . print_r($postData, true)); } curl_close($ch); return $data === false ? false : internetbs_parseResult($data); }
function InternetBS_Domain_Prolong($Settings, $DomainName, $DomainZone, $Years, $CustomerID, $DomainID) { /****************************************************************************/ $__args_types = array('array', 'string', 'string', 'integer', 'string'); #----------------------------------------------------------------------------- $__args__ = Func_Get_Args(); eval(FUNCTION_INIT); /****************************************************************************/ $HTTP = array('Address' => $Settings['Address'], 'Port' => $Settings['Port'], 'Host' => $Settings['Address'], 'Protocol' => $Settings['Protocol'], 'Charset' => 'utf8', 'IsLogging' => $Settings['Params']['IsLogging']); $username = $Settings['Login']; $password = $Settings['Password']; $tld = $DomainZone; $sld = $DomainName; $regperiod = $Years; $domainName = $sld . '.' . $tld; $apiServerUrl = 'https://' . $Settings['Address'] . '/'; $commandUrl = $apiServerUrl . 'Domain/Renew'; $data = array('apikey' => $username, 'password' => $password, 'domain' => $domainName); if ($regperiod > 0) { $data['period'] = $regperiod . "Y"; } $Result = HTTP_Send($commandUrl, $HTTP, array(), $data); if (Is_Error($Result)) { return ERROR | @Trigger_Error('[InternetBS_Domain_Register]:не удалось выполнить запрос к серверу'); } #----------------------------------------------------------------------------- $Result = Trim($Result['Body']); #----------------------------------------------------------------------------- $Result = internetbs_parseResult($Result); #----------------------------------------------------------------------------- if (isset($Result['product_0_status'])) { if ($Result['product_0_status'] == 'SUCCESS') { return array('TicketID' => $domainName); } } else { if ($Result['status'] == 'FAILURE') { return new gException('REGISTRATOR_ERROR', 'Регистратор вернул ошибку'); } } return new gException('WRONG_ANSWER', $Result); }