This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
khosb/plugins/provision/_rrad/hWebService.php
2008-11-26 14:50:40 -08:00

83 lines
1.9 KiB
PHP

<?
class hWebService extends hService
{
function newDomain ($domain, $password, $package,
$email, $linktodomain = "")
{
if (strlen($linktodomain)>0)
$email .= " $linktodomain";
$cmd = new hCommand("W A", "$password $package $email");
$cmd->domain = $domain;
if ($this->RRADServer->write($cmd))
{
// Return a domain context if create succeeded ...
$d = &new hDomain($domain);
return $d;
}
return false;
}
function delDomain ()
{
return $this->RRADServer->write(
new hCommand("W D", "", $this->context));
}
function setPassword($password)
{
echo "\n\n<!-- Password: $password -->\n\n";
return $this->RRADServer->write(
new hCommand("W C",$password,$this->context));
}
function setPackage($newpackage, $referencedomain="")
{
if (strlen($referencedomain)>1)
$newpackage .= " $referencedomain";
return $this->RRADServer->write(
new hCommand("A C",$newpackage,$this->context));
}
function setStorage ($megabytes)
{
return $this->RRADServer->write(
new hCommand("A S",$megabytes,$this->context));
}
function setBandwidth ($megabytes)
{
return $this->RRADServer->write(
new hCommand("A B",$megabytes,$this->context));
}
// Positive return code on success (it's the service-id.)
// false on failure
function addService ($product_code, $quantity = 1,
$discount = 0, $comment = "")
{
if (strlen($comment)>0)
$discount .= " $comment";
$cmd = new hCommand("S A","$product_code $quantity $discount",$this->context);
$r_code = $this->RRADServer->write($cmd);
if ($r_code)
{
$pieces = explode ("#", $this->RRADServer->getMessage());
$r_code = preg_replace("/[^0-9]/", "", $pieces[1] );
}
return $r_code;
}
function dropService ($service_name, $id="")
{
if (strlen($id)>0)
$service_name .= " $id";
$cmd = new hCommand("S D",$service_name,$this->context);
return $this->RRADServer->write($cmd);
}
}
?>