Example #1
0
function globalsignvouchers_TerminateAccount($params)
{
    $user = $params['configoption1'];
    $pass = $params['configoption3'];
    $ssltype = $params['configoption2'];
    $validityperiod = $params['configoption4'];
    $coupon = $params['configoption5'];
    $orderkind = $params['configoption6'];
    $campaign = $params['configoption7'];
    $testmode = $params['configoption8'];
    $result = select_query("mod_gsvouchers", "voucher", array("serviceid" => $params['serviceid']));
    $data = mysql_fetch_array($result);
    $voucher = $data[0];
    if (!$voucher) {
        return "OneClickSSL Voucher Code Not Yet Provisioned for this Product";
    }
    $wsdlorderurl = $testmode ? "https://testsystem.globalsign.com/vc/ws/VoucherOrder?wsdl" : "https://system.globalsign.com/vc/ws/VoucherOrder?wsdl";
    $request = array();
    $request['Request']['OrderRequestHeader']['AuthToken']['UserName'] = $user;
    $request['Request']['OrderRequestHeader']['AuthToken']['Password'] = $pass;
    $request['Request']['Voucher'] = $voucher;
    $client = new SoapClient($wsdlorderurl);
    $result = $client->CancelVoucherOrder($request);
    logModuleCall("globalsignvouchers", "cancel", $request, (array) $result, "", array($user, $pass));
    $errorcode = $result->Response->OrderResponseHeader->SuccessCode;
    if (0 <= $errorcode) {
        delete_query("mod_gsvouchers", array("serviceid" => $params['serviceid']));
        return "success";
    }
    $errormsg = "";
    if (is_array($result->Response->OrderResponseHeader->Errors->Error)) {
        foreach ($result->Response->OrderResponseHeader->Errors->Error as $err) {
            $errormsg .= "Error Code: " . $err->ErrorCode . " - " . $err->ErrorField . " - " . $err->ErrorMessage . " || ";
        }
        $errormsg = substr($errormsg, 0, 0 - 4);
    } else {
        $errormsg = "Error Code: " . $result->Response->OrderResponseHeader->Errors->Error->ErrorCode . " - " . $result->Response->OrderResponseHeader->Errors->Error->ErrorField . " - " . $result->Response->OrderResponseHeader->Errors->Error->ErrorMessage;
    }
    if (!$errormsg) {
        $errormsg = "An Unknown Error Occurred. Please contact support.";
    }
    return $errormsg;
}