Add status API
parent
0a3d50009a
commit
4fa94bec1a
@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
function get_status($hesk_settings, $id = NULL) {
|
||||
$sql = "SELECT * FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "statuses` ";
|
||||
if ($id != NULL) {
|
||||
$sql .= "WHERE `ID` = ".intval($id);
|
||||
}
|
||||
|
||||
$response = hesk_dbQuery($sql);
|
||||
|
||||
if (hesk_dbNumRows($response) == 0) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
$results = [];
|
||||
while ($row = hesk_dbFetchAssoc($response)) {
|
||||
$row['id'] = intval($row['ID']);
|
||||
unset($row['ID']);
|
||||
$row['sort'] = intval($row['sort']);
|
||||
foreach ($row as $key => $value) {
|
||||
if ($key != 'id') {
|
||||
$lowercase_key = lcfirst($key);
|
||||
$row[$lowercase_key] = $row[$key];
|
||||
unset($row[$key]);
|
||||
}
|
||||
if ($key == 'id' || $lowercase_key == 'closable'
|
||||
|| $lowercase_key == 'key' || $lowercase_key == 'sort'
|
||||
|| $lowercase_key == 'textColor') {
|
||||
continue;
|
||||
}
|
||||
$row[$lowercase_key] = $row[$lowercase_key] == true;
|
||||
}
|
||||
|
||||
$language_sql = "SELECT * FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "text_to_status_xref` "
|
||||
. "WHERE `status_id` = ".intval($row['id']);
|
||||
|
||||
$language_rs = hesk_dbQuery($language_sql);
|
||||
if (hesk_dbNumRows($language_rs) > 0) {
|
||||
$row['key'] = NULL;
|
||||
$row['keys'] = [];
|
||||
}
|
||||
while ($language_row = hesk_dbFetchAssoc($language_rs)) {
|
||||
unset($language_row['id']);
|
||||
unset($language_row['status_id']);
|
||||
$row['keys'][] = $language_row;
|
||||
}
|
||||
|
||||
$results[] = $row;
|
||||
}
|
||||
|
||||
return $id == NULL ? $results : $results[0];
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
<?php
|
||||
define('IN_SCRIPT', 1);
|
||||
define('HESK_PATH', '../../');
|
||||
define('API_PATH', '../');
|
||||
require_once(HESK_PATH . 'hesk_settings.inc.php');
|
||||
require_once(HESK_PATH . 'inc/common.inc.php');
|
||||
require_once(API_PATH . 'core/output.php');
|
||||
require_once(API_PATH . 'dao/status_dao.php');
|
||||
|
||||
hesk_load_api_database_functions();
|
||||
hesk_dbConnect();
|
||||
|
||||
// Routing
|
||||
$request_method = $_SERVER['REQUEST_METHOD'];
|
||||
|
||||
if ($request_method == 'GET') {
|
||||
if (isset($_GET['id'])) {
|
||||
$results = get_status($hesk_settings, $_GET['id']);
|
||||
} else {
|
||||
$results = get_status($hesk_settings);
|
||||
}
|
||||
|
||||
if ($results == NULL) {
|
||||
return http_response_code(404);
|
||||
}
|
||||
return output($results);
|
||||
}
|
||||
|
||||
return http_response_code(405);
|
Loading…
Reference in New Issue