diff --git a/apihelp.php b/apihelp.php
deleted file mode 100644
index 4fa6eee4..00000000
--- a/apihelp.php
+++ /dev/null
@@ -1,135 +0,0 @@
- (2018-)
- * @license GPLv2 http://files.froxlor.org/misc/COPYING.txt
- * @package Panel
- * @since 0.10.0
- *
- */
-
-// This file is being included in admin_index and customer_index
-// and therefore does not need to require lib/init.php
-
-try {
- $json_result = Froxlor::getLocal($userinfo)->listFunctions();
-} catch (Exception $e) {
- dynamic_error($e->getMessage());
-}
-$result = json_decode($json_result, true)['data'];
-
-// get response data
-$m_arr = $result;
-
-// initialize output-array
-$output_arr = array();
-
-// check every module
-foreach ($m_arr as $module) {
-
- // initialize module array for sorting
- if (! isset($output_arr[$module['module']]) || ! is_array($output_arr[$module['module']])) {
- $output_arr[$module['module']] = array();
- }
-
- // set necessary data
- $output_arr[$module['module']][$module['function']] = array(
- 'return_type' => (isset($module['return']['type']) && $module['return']['type'] != "" ? $module['return']['type'] : - 1),
- 'return_desc' => (isset($module['return']['desc']) && $module['return']['desc'] != "" ? $module['return']['desc'] : - 1),
- 'params_list' => array(),
- 'head' => $module['head'],
- 'access' => isset($module['access']) ? $module['access'] : null
- );
-
- if (isset($module['params']) && is_array($module['params'])) {
- foreach ($module['params'] as $param) {
- $output_arr[$module['module']][$module['function']]['params_list'][] = array(
- 'type' => $param['type'],
- 'name' => $param['parameter'],
- 'desc' => $param['desc']
- );
- }
- }
-}
-
-// sort array
-ksort($output_arr);
-
-$apihelp = "";
-
-// output ALL the modules
-foreach ($output_arr as $module => $functions) {
-
- // sort by function
- ksort($functions);
-
- $apihelp .= "
" . $module . "
";
-
- // output ALL the functions
- foreach ($functions as $function => $funcdata) {
- $apihelp .= "";
- $apihelp .= "
" . $module . " - ";
- // description
- if (strtoupper(substr($funcdata['head'], 0, 5)) == "@TODO") {
- $apihelp .= "";
- }
- $apihelp .= $funcdata['head'];
- if (strtoupper(substr($funcdata['head'], 0, 5)) == "@TODO") {
- $apihelp .= "";
- }
- $apihelp .= "
";
- $apihelp .= "
Command" . " ";
- $apihelp .= "
" . $module . "." . $function . "";
- if (isset($funcdata['access']['groups']) && ! empty($funcdata['access']['groups'])) {
- $apihelp .= "
Access: ";
- $apihelp .= $funcdata['access']['groups'] . "
";
- }
-
- // output ALL the params;
- if (count($funcdata['params_list']) > 0) {
- $parms = "
Parameter";
- $parms .= "
";
- $parms .= "| Field | Type | Description |
";
- $parms .= "";
- // separate and format them
- foreach ($funcdata['params_list'] as $index => $param) {
- $parms .= "";
- // check whether the parameter is optional
- if (! empty($param['desc']) && strtolower(substr(trim($param['desc']), 0, 8)) == "optional") {
- $parms .= "" . $param['name'] . "";
- $param['desc'] = substr(trim($param['desc']), 8);
- if (substr($param['desc'], 0, 1) == ',') {
- $param['desc'] = substr(trim($param['desc']), 1);
- }
- } else {
- $parms .= "" . $param['name'] . "";
- }
- $parms .= " | " . (strtolower($param['type']) == 'unknown' ? "unknown" : $param['type']) . " | ";
- $parms .= "";
- if (! empty($param['desc'])) {
- $parms .= trim($param['desc']);
- }
- $parms .= " | ";
- $parms .= "
";
- }
- $parms .= "
";
- $apihelp .= $parms;
- }
- $apihelp .= "
Returns " . ($funcdata['return_type'] == - 1 ? "
no-return-type" : $funcdata['return_type']) . ($funcdata['return_desc'] == - 1 ? "" : " ".$funcdata['return_desc']);
- $apihelp .= "
";
- }
-}
-
-eval("echo \"" . getTemplate("apihelp/index", 1) . "\";");
diff --git a/lib/classes/api/commands/class.Ftps.php b/lib/classes/api/commands/class.Ftps.php
index 30276706..e83da4ba 100644
--- a/lib/classes/api/commands/class.Ftps.php
+++ b/lib/classes/api/commands/class.Ftps.php
@@ -289,6 +289,30 @@ class Ftps extends ApiCommand implements ResourceEntity
throw new Exception("FTP user with " . $key . " could not be found", 404);
}
+ /**
+ * update a given ftp-user by id or username
+ *
+ * @param int $id
+ * optional, the customer-id
+ * @param string $username
+ * optional, the username
+ * @param string $ftp_password
+ * password for the created database and database-user
+ * @param string $path
+ * destination path relative to the customers-homedir
+ * @param string $ftp_description
+ * optional, description for ftp-user
+ * @param bool $sendinfomail
+ * optional, send created resource-information to customer, default: false
+ * @param string $shell
+ * optional, default /bin/false (not changeable when deactivated)
+ * @param int $customerid
+ * required when called as admin, not needed when called as customer
+ *
+ * @access admin, customer
+ * @throws Exception
+ * @return array
+ */
public function update()
{
if ($this->isAdmin() == false && Settings::IsInList('panel.customer_hide_options', 'ftp')) {
@@ -405,7 +429,7 @@ class Ftps extends ApiCommand implements ResourceEntity
{
$customer_ids = $this->getAllowedCustomerIds('ftp');
$result = array();
- $params['customerid'] = implode(", ", $customer_ids);
+ $params = array('customerid' => implode(", ", $customer_ids));
$result_stmt = Database::prepare("
SELECT * FROM `" . TABLE_FTP_USERS . "`
WHERE `customerid` IN (:customerid)
diff --git a/templates/Sparkle/apihelp/index.tpl b/templates/Sparkle/apihelp/index.tpl
deleted file mode 100644
index 867008dc..00000000
--- a/templates/Sparkle/apihelp/index.tpl
+++ /dev/null
@@ -1,8 +0,0 @@
-$header
-
-
-
-
-$footer
diff --git a/templates/Sparkle/header.tpl b/templates/Sparkle/header.tpl
index ecc5f168..a5a9be66 100644
--- a/templates/Sparkle/header.tpl
+++ b/templates/Sparkle/header.tpl
@@ -69,7 +69,7 @@
{$lng['menue']['main']['apikeys']}
- {$lng['menue']['main']['apihelp']}
+ {$lng['menue']['main']['apihelp']}