Re-use the Database connection

This commit is contained in:
FusionPBX
2024-08-29 03:35:38 -06:00
committed by GitHub
parent 9347d682bf
commit e0ed81a5ba
22 changed files with 87 additions and 88 deletions

View File

@@ -43,6 +43,9 @@
return;
}
//connect to the database
$database = new database;
//get the http values and set them as variables
$domain_uuid = $_POST["domain_uuid"];
$group_uuid = $_POST["group_uuid"];
@@ -68,7 +71,6 @@
$p = new permissions;
$p->add('user_group_add', 'temp');
$database = new database;
$database->app_name = 'groups';
$database->app_uuid = '2caf27b0-540a-43d5-bb9b-c9871a1e4f84';
$database->save($array);

View File

@@ -43,6 +43,9 @@
return;
}
//connect to the database
$database = new database;
//add multi-lingual support
$language = new text;
$text = $language->get();
@@ -77,7 +80,6 @@
$sql = "select domain_uuid, group_name from v_groups ";
$sql .= "where group_uuid = :group_uuid ";
$parameters['group_uuid'] = $group_uuid;
$database = new database;
$row = $database->select($sql, $parameters, 'row');
if (is_array($row) && sizeof($row) != 0) {
$domain_uuid = $row["domain_uuid"];
@@ -91,7 +93,6 @@
$sql .= "domain_uuid = :domain_uuid ";
$sql .= "order by username ";
$parameters['domain_uuid'] = is_uuid($domain_uuid) ? $domain_uuid : $_SESSION['domain_uuid'];
$database = new database;
$users = $database->select($sql, $parameters, 'all');
unset($sql, $parameters);
}
@@ -112,7 +113,6 @@
$sql .= "and ug.group_uuid = :group_uuid ";
$sql .= "order by d.domain_name asc, u.username asc ";
$parameters['group_uuid'] = $group_uuid;
$database = new database;
$user_groups = $database->select($sql, $parameters, 'all');
$num_rows = is_array($user_groups) && @sizeof($user_groups) != 0 ? sizeof($user_groups) : 0;
unset($sql, $parameters);

View File

@@ -42,12 +42,14 @@
$group_uuid = $_GET['group_uuid'];
}
//connect to the database
$database = new database;
//get the group_name
if (isset($group_uuid) && is_uuid($group_uuid)) {
$sql = "select group_name from v_groups ";
$sql .= "where group_uuid = :group_uuid ";
$parameters['group_uuid'] = $group_uuid;
$database = new database;
$group_name = $database->select($sql, $parameters, 'column');
unset($sql, $parameters);
}
@@ -85,7 +87,6 @@
$sql .= "and (".implode(' or ', $sql_where_or).") ";
}
$parameters['domain_uuid'] = $_SESSION["domain_uuid"];
$database = new database;
$result = $database->select($sql, $parameters, 'all');
if (is_array($result) && @sizeof($result) != 0) {
foreach ($result as $row) {
@@ -125,7 +126,6 @@
$sql .= " order by p.application_name, p.permission_name asc ";
$parameters['group_name'] = $group_name;
$parameters['group_uuid'] = $group_uuid;
$database = new database;
$group_permissions = $database->select($sql, $parameters, 'all');
//process the user data and save it to the database
@@ -241,7 +241,6 @@
//save the save array
if (!empty($array['save']) && is_array($array['save']) && @sizeof($array['save']) != 0) {
$database = new database;
$database->app_name = 'groups';
$database->app_uuid = '2caf27b0-540a-43d5-bb9b-c9871a1e4f84';
$database->save($array['save']);
@@ -251,7 +250,6 @@
//delete the delete array
if (!empty($array['delete']) && is_array($array['delete']) && @sizeof($array['delete']) != 0) {
if (permission_exists('group_permission_delete')) {
$database = new database;
$database->app_name = 'groups';
$database->app_uuid = '2caf27b0-540a-43d5-bb9b-c9871a1e4f84';
$database->delete($array['delete']);

View File

@@ -38,6 +38,9 @@
exit;
}
//connect to the database
$database = new database;
//add multi-lingual support
$language = new text;
$text = $language->get();
@@ -104,7 +107,6 @@
$sql .= ") \n";
$parameters['search'] = '%'.$search.'%';
}
$database = new database;
$num_rows = $database->select($sql, $parameters ?? '', 'column');
//prepare to page the results
@@ -120,7 +122,6 @@
$sql = str_replace('count(*)', '*', $sql);
$sql .= order_by($order_by, $order, 'group_name', 'asc');
$sql .= limit_offset($rows_per_page, $offset);
$database = new database;
$groups = $database->select($sql, $parameters ?? '', 'all');
unset($sql, $parameters);

View File

@@ -37,6 +37,9 @@
exit;
}
//connect to the database
$database = new database;
//add multi-lingual support
$language = new text;
$text = $language->get();
@@ -58,7 +61,6 @@
$sql .= "and group_uuid = :group_uuid ";
$parameters['domain_uuid'] = $domain_uuid;
$parameters['group_uuid'] = $group_uuid;
$database = new database;
$row = $database->select($sql, $parameters, 'row');
if (is_array($row) && sizeof($row) != 0) {
$domain_uuid = $row["domain_uuid"];
@@ -74,7 +76,6 @@
}
$array['groups'][0]['group_name'] = $new_group_name;
$array['groups'][0]['group_description'] = $new_group_desc;
$database = new database;
$database->app_name = 'groups';
$database->app_uuid = '2caf27b0-540a-43d5-bb9b-c9871a1e4f84';
$database->save($array);
@@ -91,39 +92,41 @@
$sql .= "and domain_uuid is null ";
}
$parameters['group_name'] = $group_name;
$database = new database;
$result = $database->select($sql, $parameters, 'all');
unset($sql, $parameters);
if (is_array($result) && sizeof($result) != 0) {
foreach ($result as $x => $row) {
//define group permissions values
$domain_uuid = $row["domain_uuid"];
$permission_name = $row["permission_name"];
$group_name = $row["group_name"];
$domain_uuid = $row["domain_uuid"];
$permission_name = $row["permission_name"];
$group_name = $row["group_name"];
//build insert array
$array['group_permissions'][$x]['group_permission_uuid'] = uuid();
if (is_uuid($domain_uuid)) {
$array['group_permissions'][$x]['domain_uuid'] = $domain_uuid;
}
$array['group_permissions'][$x]['permission_name'] = $permission_name;
$array['group_permissions'][$x]['group_name'] = $new_group_name;
$array['group_permissions'][$x]['group_uuid'] = $new_group_uuid;
$array['group_permissions'][$x]['group_permission_uuid'] = uuid();
if (is_uuid($domain_uuid)) {
$array['group_permissions'][$x]['domain_uuid'] = $domain_uuid;
}
$array['group_permissions'][$x]['permission_name'] = $permission_name;
$array['group_permissions'][$x]['group_name'] = $new_group_name;
$array['group_permissions'][$x]['group_uuid'] = $new_group_uuid;
}
if (is_array($array) && sizeof($array) != 0) {
//grant temporary permissions
$p = new permissions;
$p->add('group_permission_add', 'temp');
$p = new permissions;
$p->add('group_permission_add', 'temp');
//execute insert
$database = new database;
$database->app_name = 'groups';
$database->app_uuid = '2caf27b0-540a-43d5-bb9b-c9871a1e4f84';
$database->save($array);
unset($array);
$database->app_name = 'groups';
$database->app_uuid = '2caf27b0-540a-43d5-bb9b-c9871a1e4f84';
$database->save($array);
unset($array);
//revoke temporary permissions
$p->delete('group_permission_add', 'temp');
$p->delete('group_permission_add', 'temp');
//set message
message::add($text['message-copy']);
message::add($text['message-copy']);
}
}
unset($result, $row);