thanks for helping me
that is....
that is....
PHP:
<?
function directadmin_configoptions ()
{
$configarray = array ('Package Name' => array ('Type' => 'text', 'Size' => '25'));
return $configarray;
}
function directadmin_clientarea ($params)
{
$code = '<form action="http://' . $params['serverip'] . ':2222/CMD_LOGIN" method="post" target="_blank"><input type="hidden" name="username" value="' . $params['username'] . '"><input type="hidden" name="password" value="' . $params['password'] . '"><input type="submit" value="Login to DirectAdmin" class="button"></form>';
return $code;
}
function directadmin_adminlink ($params)
{
$code = '<form action="http://' . $params['serverip'] . ':2222/CMD_LOGIN" method="post" target="_blank"><input type="hidden" name="username" value="' . $params['serverusername'] . '"><input type="hidden" name="password" value="' . $params['serverpassword'] . '"><input type="submit" value="DirectAdmin"></form>';
return $code;
}
function directadmin_createaccount ($params)
{
$fields = array ();
if ($params['type'] == 'hostingaccount')
{
$fields['action'] = 'create';
$fields['add'] = 'Submit';
$fields['username'] = $params['username'];
$fields['email'] = $params['clientsdetails']['email'];
$fields['passwd'] = $params['password'];
$fields['passwd2'] = $params['password'];
$fields['domain'] = $params['domain'];
$fields['package'] = $params['configoption1'];
$fields['ip'] = $params['serverip'];
$fields['notify'] = 'no';
$command = 'CMD_API_ACCOUNT_USER';
}
else
{
$fields['action'] = 'create';
$fields['add'] = 'Submit';
$fields['username'] = $params['username'];
$fields['email'] = $params['clientsdetails']['email'];
$fields['passwd'] = $params['password'];
$fields['passwd2'] = $params['password'];
$fields['domain'] = $params['domain'];
$fields['package'] = $params['configoption1'];
$fields['ip'] = 'shared';
$fields['notify'] = 'no';
$command = 'CMD_ACCOUNT_RESELLER';
}
$results = directadmin_req ($command, $fields, $params['serverip'], $params['serverusername'], $params['serverpassword'], $params['serversecure']);
if ($results['error'])
{
$result = $results['details'];
}
else
{
$result = 'success';
}
return $result;
}
function directadmin_terminateaccount ($params)
{
$fields = array ();
$fields['confirmed'] = 'Confirm';
$fields['delete'] = 'yes';
$fields['select0'] = $params['username'];
$results = directadmin_req ('CMD_SELECT_USERS', $fields, $params['serverip'], $params['serverusername'], $params['serverpassword'], $params['serversecure']);
$result = 'success';
return $result;
}
function directadmin_suspendaccount ($params)
{
$fields = array ();
$fields['action'] = 'create';
$fields['add'] = 'Submit';
$fields['user'] = $params['username'];
$results = directadmin_req ('CMD_API_SHOW_USER_CONFIG', $fields, $params['serverip'], $params['serverusername'], $params['serverpassword'], $params['serversecure']);
if ($results['suspended'] == 'yes')
{
$result = 'Account is already suspended';
}
else
{
$fields = array ();
$fields['suspend'] = 'Suspend/Unsuspend';
$fields['select0'] = $params['username'];
$results = directadmin_req ('CMD_SELECT_USERS', $fields, $params['serverip'], $params['serverusername'], $params['serverpassword'], $params['serversecure']);
$result = 'success';
}
return $result;
}
function directadmin_unsuspendaccount ($params)
{
$fields = array ();
$fields['action'] = 'create';
$fields['add'] = 'Submit';
$fields['user'] = $params['username'];
$results = directadmin_req ('CMD_API_SHOW_USER_CONFIG', $fields, $params['serverip'], $params['serverusername'], $params['serverpassword'], $params['serversecure']);
if ($results['suspended'] == 'no')
{
$result = 'Account is not suspended';
}
else
{
$fields = array ();
$fields['suspend'] = 'Suspend/Unsuspend';
$fields['select0'] = $params['username'];
$results = directadmin_req ('CMD_SELECT_USERS', $fields, $params['serverip'], $params['serverusername'], $params['serverpassword'], $params['serversecure']);
$result = 'success';
}
return $result;
}
function directadmin_changepassword ($params)
{
$fields = array ();
$fields['username'] = $params['username'];
$fields['passwd'] = $params['password'];
$fields['passwd2'] = $params['password'];
$results = directadmin_req ('CMD_API_USER_PASSWD', $fields, $params['serverip'], $params['serverusername'], $params['serverpassword'], $params['serversecure'], true);
if ($results['error'])
{
$result = $results['details'];
}
else
{
$result = 'success';
}
return $result;
}
function directadmin_changepackage ($params)
{
$fields = array ();
$fields['action'] = 'package';
$fields['user'] = $params['username'];
$fields['package'] = $params['configoption1'];
$results = directadmin_req ('CMD_API_MODIFY_USER', $fields, $params['serverip'], $params['serverusername'], $params['serverpassword'], $params['serversecure']);
if ($results['error'])
{
$result = $results['details'];
}
else
{
$result = 'success';
}
return $result;
}
function directadmin_req ($command, $fields, $host, $user, $pass, $usessl, $post = '')
{
global $debug_output;
$fieldstring = '';
foreach ($fields as $key => $value)
{
$fieldstring .= '' . $key . '=' . urlencode ($value) . '&';
}
$authstr = $user . ':' . $pass;
$directadminaccterr = '';
$ch = curl_init ();
if ($usessl)
{
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
$url = 'https://' . $host . ':2222/' . $command . '?' . $fieldstring;
}
else
{
$url = 'http://' . $host . ':2222/' . $command . '?' . $fieldstring;
}
curl_setopt ($ch, CURLOPT_URL, $url);
if ($post)
{
curl_setopt ($ch, CURLOPT_POSTFIELDS, $fieldstring);
}
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$curlheaders[0] = 'Authorization: Basic ' . base64_encode ($authstr);
curl_setopt ($ch, CURLOPT_HTTPHEADER, $curlheaders);
curl_setopt ($ch, CURLOPT_TIMEOUT, 60);
$data = curl_exec ($ch);
if (curl_errno ($ch))
{
$data = curl_errno ($ch) . ' - ' . curl_error ($ch);
}
curl_close ($ch);
if ($debug_output == 'on')
{
echo ('' . '<textarea rows=12 cols=120>URL: ' . $url . '
') . '
Data: ' . $data . '</textarea><br>';
}
if (strpos ($data, 'DirectAdmin Login') == true)
{
$resultsarray = array ('error' => '1', 'details' => 'Login Failed');
}
else
{
$data = explode ('&', $data);
foreach ($data as $temp)
{
$temp = explode ('=', $temp);
$resultsarray[$temp[0]] = $temp[1];
}
}
return $resultsarray;
}
?>