From ecf891ab69b38ee1bcd0533d9a4f30d218c7e99c Mon Sep 17 00:00:00 2001
From: nveid <nveid@ispconfig3>
Date: Mon, 21 Nov 2011 01:04:18 -0500
Subject: [PATCH] Added remoting API call: client_get_all @param -> session_id @return -> Array of all Client IDs on server
---
interface/lib/classes/remoting.inc.php | 29 +++++++++++++++++++++++++++--
1 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/interface/lib/classes/remoting.inc.php b/interface/lib/classes/remoting.inc.php
index c3e0697..8d043a4 100644
--- a/interface/lib/classes/remoting.inc.php
+++ b/interface/lib/classes/remoting.inc.php
@@ -2325,6 +2325,7 @@
protected function checkPerm($session_id, $function_name)
{
+ global $app;
$dobre=array();
$session = $this->getSession($session_id);
if(!$session){
@@ -2332,7 +2333,11 @@
}
$dobre= str_replace(';',',',$session['remote_functions']);
- return in_array($function_name, explode(',', $dobre) );
+ $check = in_array($function_name, explode(',', $dobre) );
+ if(!$check) {
+ $app->log("REMOTE-LIB DENY: ".$session_id ." /". $function_name, LOGLEVEL_WARN);
+ }
+ return $check;
}
@@ -2445,6 +2450,26 @@
return false;
}
}
+ /**
+ * Get All client_id's from database
+ * @param int session_id
+ * @return Array of all client_id's
+ */
+ public function client_get_all($session_id) {
+ global $app;
+ if(!$this->checkPerm($session_id, 'client_get_all')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ $result = $app->db->queryAllRecords("SELECT client_id FROM client WHERE 1");
+ if(!$result) {
+ return false;
+ }
+ foreach( $result as $record) {
+ $rarrary[] = $record['client_id'];
+ }
+ return $rarrary;
+ }
/**
* Changes client password
@@ -2954,4 +2979,4 @@
}
-?>
\ No newline at end of file
+?>
--
Gitblit v1.9.1