コード例 #1
0
 **/
if (!defined("WHMCS")) {
    exit("This file cannot be accessed directly");
}
if (!function_exists("updateInvoiceTotal")) {
    require ROOTDIR . "/includes/invoicefunctions.php";
}
if (!function_exists("createCancellationRequest")) {
    require ROOTDIR . "/includes/clientfunctions.php";
}
$result = select_query("tblhosting", "id,userid", array("id" => $serviceid));
$data = mysql_fetch_array($result);
$serviceid = $data[0];
$userid = $data[1];
if (!$serviceid) {
    $apiresults = array("result" => "error", "message" => "Service ID Not Found");
    return false;
}
$validtypes = array("Immediate", "End of Billing Period");
if (!in_array($type, $validtypes)) {
    $type = "End of Billing Period";
}
if (!$reason) {
    $reason = "None Specified (API Submission)";
}
$result = createCancellationRequest($userid, $serviceid, $reason, $type);
if ($result == "success") {
    $apiresults = array("result" => "success", "serviceid" => $serviceid, "userid" => $userid);
    return 1;
}
$apiresults = array("result" => "error", "message" => $result, "serviceid" => $serviceid, "userid" => $userid);
コード例 #2
0
ファイル: clientsservices.php プロジェクト: billyprice1/whmcs
             }
         }
     }
     $updatearr[$fieldname] = $newval;
 }
 if (toMySQLDate($whmcs->get_req_var("oldnextduedate")) != $updatearr['nextduedate']) {
     $updatearr['nextinvoicedate'] = $updatearr['nextduedate'];
 }
 update_query("tblhosting", $updatearr, array("id" => $id));
 logActivity("Modified Product/Service - " . implode(", ", $changelog) . (" - User ID: " . $userid . " - Service ID: " . $id), $userid);
 $cancelid = get_query_val("tblcancelrequests", "id", array("relid" => $id, "type" => "End of Billing Period"), "id", "DESC");
 if ($autoterminateendcycle) {
     if ($cancelid) {
         update_query("tblcancelrequests", array("reason" => $autoterminatereason), array("id" => $cancelid));
     } else {
         createCancellationRequest($userid, $id, $autoterminatereason, "End of Billing Period");
     }
 } else {
     if ($cancelid) {
         delete_query("tblcancelrequests", array("id" => $cancelid));
         logActivity("Removed Automatic Cancellation for End of Current Cycle - Service ID: " . $id, $userid);
     }
 }
 $module = get_query_val("tblproducts", "servertype", array("id" => $packageid));
 if ($module) {
     if (!isValidforPath($module)) {
         exit("Invalid Server Module Name");
     }
     $modulepath = ROOTDIR . "/modules/servers/" . $module . "/" . $module . ".php";
     if (file_exists($modulepath)) {
         require_once $modulepath;
コード例 #3
0
ファイル: clientarea.php プロジェクト: billyprice1/whmcs
 $smartyvalues['productname'] = $service->getData("productname");
 $smartyvalues['domain'] = $service->getData("domain");
 $cancelrequests = get_query_val("tblcancelrequests", "COUNT(*)", array("relid" => $id));
 if ($cancelrequests) {
     $smartyvalues['invalid'] = "on";
 } else {
     if ($sub == "submit") {
         check_token();
         if (!trim($cancellationreason)) {
             $smartyvalues['error'] = true;
         }
         if (!$smartyvalues['error']) {
             if (!in_array($type, array("Immediate", "End of Billing Period"))) {
                 $type = "End of Billing Period";
             }
             createCancellationRequest($client->getID(), $id, $cancellationreason, $type);
             if ($canceldomain) {
                 $domainid = get_query_val("tbldomains", "id", array("userid" => $client->getID(), "domain" => $service->getData("domain")));
                 if ($domainid) {
                     disableAutoRenew($domainid);
                 }
             }
             sendMessage("Cancellation Request Confirmation", $id);
             sendAdminMessage("New Cancellation Request", array("client_id" => $client->getID(), "clientname" => $clientsdetails['firstname'] . " " . $clientsdetails['lastname'], "service_id" => $id, "product_name" => $service->getData("productname"), "service_cancellation_type" => $type, "service_cancellation_type" => $type, "service_cancellation_reason" => $cancellationreason), "account");
             $smartyvalues['requested'] = "on";
         }
     }
     if ($service->getData("domain")) {
         $data = get_query_vals("tbldomains", "id,recurringamount,registrationperiod,nextduedate", array("userid" => $client->getID(), "domain" => $service->getData("domain"), "status" => "Active", "donotrenew" => ""));
         $smartyvalues['domainid'] = $data['id'];
         $smartyvalues['domainprice'] = formatCurrency($data['recurringamount']);