Example #1
0
/**
 * Renews a domain for the specified registration period, the current expiry date must be obtained from the database
 * prior to attempting the renewal
 * @param $params
 * @return array
 */
function domainbox_RenewDomain($params)
{
    // Get the current expiry date from the database
    $table = "tbldomains";
    $fields = "id,expirydate";
    $where = array("id" => $params['domainid']);
    $result = select_query($table, $fields, $where);
    $data = mysql_fetch_array($result);
    $expiryDate = $data['expirydate'];
    $authParameters = getAuthParameters($params);
    $apiEndpoint = $params["TestMode"] ? "https://sandbox.domainbox.net/?WSDL" : "https://live.domainbox.net/?WSDL";
    $renewDomainParameters = new RenewDomainParameters();
    $renewDomainParameters->DomainName = $params["sld"] . '.' . $params["tld"];
    $renewDomainParameters->Period = $params['regperiod'];
    $renewDomainParameters->CurrentExpiry = $expiryDate;
    try {
        $parameters = array('AuthenticationParameters' => $authParameters, 'CommandParameters' => $renewDomainParameters);
        $client = new SoapClient($apiEndpoint, array('soap_version' => SOAP_1_2));
        $result = $client->RenewDomain($parameters);
        $result = $result->RenewDomainResult;
        if ($result->ResultCode != 100) {
            $values["error"] = $result->ResultMsg;
        }
    } catch (Exception $e) {
        $values["error"] = "There was an error communicating with Domainbox";
    }
    return $values;
}