Minor fixes to payment, host manage and plesk
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
class Controller_Task_Host extends Controller_Task {
|
||||
// Host Server Object
|
||||
private $hs;
|
||||
private $so;
|
||||
|
||||
public function __construct(Request $request, Response $response) {
|
||||
parent::__construct($request,$response);
|
||||
@@ -19,34 +20,83 @@ class Controller_Task_Host extends Controller_Task {
|
||||
// To make it easy for some methods, we'll load our service here
|
||||
switch (Request::current()->action()) {
|
||||
case 'getclient':
|
||||
case 'getservice':
|
||||
case 'getdomain':
|
||||
case 'gettraffic':
|
||||
case 'provision':
|
||||
$sid = $this->request->param('id');
|
||||
$this->so = ORM::factory('service',$this->request->param('id'));
|
||||
|
||||
$hso = ORM::factory('service',$sid)->plugin()->host_server;
|
||||
require Kohana::find_file('vendor',$hso->provision_plugin);
|
||||
if (! $this->so->loaded())
|
||||
throw new Kohana_Exception('Unknown service :sid',array(':sid'=>$this->request->param('id')));
|
||||
|
||||
$hso = $this->so->plugin()->host_server;
|
||||
$this->hs = new $hso->provision_plugin($hso);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Client Details from Host Server
|
||||
*/
|
||||
public function action_getclient() {
|
||||
$sid = $this->request->param('id');
|
||||
public function save($index,$result) {
|
||||
$p = $this->so->plugin();
|
||||
|
||||
print_r((string)$this->hs->get_client(ORM::factory('service',$sid)));
|
||||
// We need to use a new var to avoid Indirect modification of overloaded property errors.
|
||||
$x = is_null($p->server_data) ? array() : $p->server_data;
|
||||
$x[$p->host_server_id][$index] = serialize($result);
|
||||
$p->server_data = $x;
|
||||
|
||||
$x = is_null($p->server_data_date) ? array() : $p->server_data_date;
|
||||
$x[$p->host_server_id][$index] = time();
|
||||
$p->server_data_date = $x;
|
||||
|
||||
return $p->save();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Client Details from Host Server
|
||||
*/
|
||||
public function action_getservice() {
|
||||
public function action_getclient() {
|
||||
$result = $this->hs->cmd_getclient($this->so);
|
||||
$p = $this->so->plugin();
|
||||
|
||||
if ($result->loaded()) {
|
||||
if (! isset($p->server_data[$p->host_server_id]['c']) OR (md5($p->server_data[$p->host_server_id]['c']) != md5(serialize($result)))) {
|
||||
echo "WARNING: data changed on server";
|
||||
$this->save('c',$result);
|
||||
} else
|
||||
echo "NOTE: data same on server";
|
||||
|
||||
} else
|
||||
print_r($result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Client Details from Host Server
|
||||
*/
|
||||
public function action_getdomain() {
|
||||
$result = $this->hs->cmd_getdomain($this->so);
|
||||
$p = $this->so->plugin();
|
||||
|
||||
if ($result->loaded()) {
|
||||
if (! isset($p->server_data[$p->host_server_id]['d']) OR (md5($p->server_data[$p->host_server_id]['d']) != md5(serialize($result)))) {
|
||||
echo "WARNING: data changed on server";
|
||||
$this->save('d',$result);
|
||||
} else
|
||||
echo "NOTE: data same on server";
|
||||
|
||||
} else
|
||||
print_r($result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Domain Traffic
|
||||
*/
|
||||
public function action_gettraffic() {
|
||||
$sid = $this->request->param('id');
|
||||
|
||||
print_r((string)$this->hs->get_service(ORM::factory('service',$sid)));
|
||||
$result = $this->hs->cmd_gettraffic(ORM::factory('service',$sid));
|
||||
if ($result->gen_info)
|
||||
print_r($result->gen_info->as_array());
|
||||
else
|
||||
print_r((string)$result);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user