diff --git a/README.md b/README.md index d5c52ebe..2985a484 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@
View demo
- Username: demo@demo | Password: demo + Username: demo@demo.com | Password: demo

About diff --git a/admin/database_updates.php b/admin/database_updates.php index ee595709..b753cf0d 100644 --- a/admin/database_updates.php +++ b/admin/database_updates.php @@ -4134,10 +4134,30 @@ if (LATEST_DATABASE_VERSION > CURRENT_DATABASE_VERSION) { mysqli_query($mysqli, "UPDATE `settings` SET `config_current_database_version` = '2.3.8'"); } - // if (CURRENT_DATABASE_VERSION == '2.3.8') { - // // Insert queries here required to update to DB version 2.3.9 + if (CURRENT_DATABASE_VERSION == '2.3.8') { + + mysqli_query($mysqli, " + CREATE TABLE `task_approvals` ( + `approval_id` int(11) NOT NULL AUTO_INCREMENT, + `approval_scope` enum('client','internal') NOT NULL, + `approval_type` enum('any','technical','billing','specific') NOT NULL, + `approval_required_user_id` int(11) DEFAULT NULL, + `approval_status` enum('pending','approved','declined') NOT NULL, + `approval_created_by` int(11) NOT NULL, + `approval_approved_by` varchar(255) DEFAULT NULL, + `approval_url_key` varchar(200) NOT NULL, + `approval_task_id` int(11) NOT NULL, + PRIMARY KEY (`approval_id`) + ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + "); + + mysqli_query($mysqli, "UPDATE `settings` SET `config_current_database_version` = '2.3.9'"); + } + + // if (CURRENT_DATABASE_VERSION == '2.3.9') { + // // Insert queries here required to update to DB version 2.4.0 // // Then, update the database to the next sequential version - // mysqli_query($mysqli, "UPDATE `settings` SET `config_current_database_version` = '2.3.9'"); + // mysqli_query($mysqli, "UPDATE `settings` SET `config_current_database_version` = '2.4.0'"); // } } else { diff --git a/agent/ajax.php b/agent/ajax.php index 1fae441c..ea0f7064 100644 --- a/agent/ajax.php +++ b/agent/ajax.php @@ -992,3 +992,23 @@ if (isset($_GET['apex_domain_check'])) { echo json_encode($response); } + +// Get internal users/techs +if (isset($_GET['get_internal_users'])) { + enforceUserPermission('module_support'); + + $sql = mysqli_query( + $mysqli, + "SELECT user_id, user_name + FROM users + WHERE user_type = 1 AND user_status = 1 AND user_archived_at IS NULL + ORDER BY user_name" + ); + + while ($row = mysqli_fetch_assoc($sql)) { + $response['users'][] = $row; + } + + echo json_encode($response); + exit; +} diff --git a/agent/modals/ticket/ticket_task_approver_add.php b/agent/modals/ticket/ticket_task_approver_add.php new file mode 100644 index 00000000..03064481 --- /dev/null +++ b/agent/modals/ticket/ticket_task_approver_add.php @@ -0,0 +1,140 @@ + + + +
+ + + + + + + +
+ + + + + +
- + - + + 0) { ?> +
+
+ Task Approvals + + + + + + + + + + + + + + + + + + + + +
ScopeTypeStatusAction
+ + + Delete + + + +
+ +
+ +