Misc: Database class integration.

This commit is contained in:
Nate
2019-08-28 21:02:08 -06:00
parent d89c0f172a
commit 3d15a1c8b6
23 changed files with 403 additions and 396 deletions

View File

@@ -91,7 +91,7 @@
unset($result, $row);
//get the $apps array from the installed apps from the core and mod directories
$config_list = glob($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . "/*/*/app_config.php");
$config_list = glob($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/*/*/app_config.php");
$x=0;
if (isset($config_list)) foreach ($config_list as &$config_path) {
include($config_path);
@@ -99,7 +99,6 @@
}
//delete the domain data from all tables in the database
$db->beginTransaction();
if (isset($apps)) foreach ($apps as &$app) {
if (isset($app['db'])) foreach ($app['db'] as $row) {
if (is_array($row['table']['name'])) {
@@ -114,6 +113,7 @@
if ($table_name !== "v" && isset($row['fields'])) {
foreach ($row['fields'] as $field) {
if ($field['name'] == "domain_uuid") {
$sql = "delete from ".$table_name." where domain_uuid = :domain_uuid ";
$parameters['domain_uuid'] = $id;
$database = new database;
@@ -126,7 +126,6 @@
}
}
}
$db->commit();
//delete the directories
if (strlen($domain_name) > 0) {

View File

@@ -97,36 +97,37 @@
unset($sql, $parameters);
if (is_array($result) && sizeof($result) != 0) {
foreach ($result as $index => &$row) {
$domain_uuid = $row["domain_uuid"];
$permission_name = $row["permission_name"];
$group_name = $row["group_name"];
//copy the group permissions
$array['group_permissions'][$index]['group_permission_uuid'] = uuid();
if (is_uuid($domain_uuid)) {
$array['group_permissions'][$index]['domain_uuid'] = $domain_uuid;
}
$array['group_permissions'][$index]['permission_name'] = $permission_name;
$array['group_permissions'][$index]['group_name'] = $new_group_name;
$array['group_permissions'][$index]['group_uuid'] = $new_group_uuid;
foreach ($result as $x => &$row) {
//define group permissions values
$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;
}
if (is_array($array) && sizeof($array) != 0) {
$p = new permissions;
$p->add('group_permission_add', 'temp');
$database = new database;
$database->app_name = 'groups';
$database->app_uuid = '2caf27b0-540a-43d5-bb9b-c9871a1e4f84';
$database->save($array);
unset($array);
$p->delete('group_permission_add', 'temp');
message::add($text['message-copy']);
//grant temporary permissions
$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);
//revoke temporary permissions
$p->delete('group_permission_add', 'temp');
//set message
message::add($text['message-copy']);
}
}
unset ($prep_statement);
unset($result, $row);
}
//redirect

View File

@@ -39,46 +39,36 @@ else {
$text = $language->get();
//delete the data
if (is_uuid($_GET["id"])) {
$menu_uuid = $_GET["id"];
$menu_uuid = $_GET['id'];
//start the database transaction
$db->beginTransaction();
if (is_uuid($menu_uuid)) {
//delete the menu
//build delete array for the menu, menu items, menu permissions, and menu languages
$array['menus'][0]['menu_uuid'] = $menu_uuid;
$array['menu_items'][0]['menu_uuid'] = $menu_uuid;
$array['menu_item_groups'][0]['menu_uuid'] = $menu_uuid;
$array['menu_languages'][0]['menu_uuid'] = $menu_uuid;
//grant temporary permissions
$p = new permissions;
$p->add('menu_delete', 'temp');
$p->add('menu_item_delete', 'temp');
$p->add('menu_item_group_delete', 'temp');
$p->add('menu_language_delete', 'temp');
//execute delete
$database = new database;
$database->app_name = 'menu';
$database->app_uuid = 'f4b3b3d2-6287-489c-2a00-64529e46f2d7';
$database->delete($array);
unset($array);
//delete the items in the menu
$sql = "delete from v_menu_items ";
$sql .= "where menu_uuid = :menu_uuid ";
$parameters['menu_uuid'] = $menu_uuid;
$database = new database;
$database->execute($sql, $parameters);
unset($sql, $parameters);
//delete the menu permissions
$sql = "delete from v_menu_item_groups ";
$sql .= "where menu_uuid = :menu_uuid ";
$parameters['menu_uuid'] = $menu_uuid;
$database = new database;
$database->execute($sql, $parameters);
unset($sql, $parameters);
//delete the menu languages
$sql = "delete from v_menu_languages ";
$sql .= "where menu_uuid = :menu_uuid ";
$parameters['menu_uuid'] = $menu_uuid;
$database = new database;
$database->execute($sql, $parameters);
unset($sql, $parameters);
//save the changes to the database
$db->commit();
//revoke temporary permissions
$p = new permissions;
$p->delete('menu_delete', 'temp');
$p->delete('menu_item_delete', 'temp');
$p->delete('menu_item_group_delete', 'temp');
$p->delete('menu_language_delete', 'temp');
//set message
message::add($text['message-delete']);

View File

@@ -29,27 +29,28 @@ if ($domains_processed == 1) {
//update the notifications table
if (is_array($_SESSION['switch']['scripts'])) {
$sql = "select count(*) as num_rows from v_notifications ";
$sql = "select count(*) from v_notifications ";
$database = new database;
$num_rows = $database->select($sql, null, 'column');
if ($row['num_rows'] == 0) {
$sql = "insert into v_notifications ";
$sql .= "(";
$sql .= "notification_uuid, ";
$sql .= "project_notifications ";
$sql .= ")";
$sql .= "values ";
$sql .= "(";
$sql .= "'".uuid()."', ";
$sql .= "'false' ";
$sql .= ")";
$database = new database;
$database->execute($sql, null);
unset($sql);
if ($num_rows == 0) {
//build insert array
$array['notifications'][0]['notification_uuid'] = uuid();
$array['notifications'][0]['project_notifications'] = 'false';
//grant temporary permissions
$p = new permissions;
$p->add('notification_add', 'temp');
//execute insert
$database = new database;
$database->app_name = 'notifications';
$database->app_uuid = 'e746fbcb-f67f-4e0e-ab64-c414c01fac11';
$database->save($array);
unset($array);
//revoke temporary permissions
$p->delete('notification_add', 'temp');
}
unset($prep_statement, $row);
unset($sql, $num_rows);
}
}
?>
?>

View File

@@ -108,27 +108,27 @@ if ($domains_processed == 1) {
$database = new database;
$result = $database->select($sql, null, 'all');
if (is_array($result) && count($result) > 0) {
foreach($result as $row) {
$current_default_setting_uuid = $row["default_setting_uuid"];
$current_default_setting_value = $row["default_setting_value"];
break;
}
// compare to message in language file, update and enable if different
$new_default_setting_value = str_replace("''", "'", $text['login-message_text']);
if ($current_default_setting_value != $new_default_setting_value) {
$sql = "update v_default_settings set ";
$sql .= "default_setting_value = :default_setting_value, ";
$sql .= "default_setting_enabled = 'true' ";
$sql .= "where default_setting_uuid = :default_setting_uuid ";
$parameters['default_setting_value'] = $text['login-message_text'];
$parameters['default_setting_uuid'] = $current_default_setting_uuid;
$database = new database;
$database->execute($sql, $parameters);
unset($sql, $parameters);
}
foreach($result as $row) {
$current_default_setting_uuid = $row["default_setting_uuid"];
$current_default_setting_value = $row["default_setting_value"];
break;
}
unset($prep_statement, $result);
// compare to message in language file, update and enable if different
$new_default_setting_value = str_replace("''", "'", $text['login-message_text']);
if ($current_default_setting_value != $new_default_setting_value) {
$sql = "update v_default_settings set ";
$sql .= "default_setting_value = :default_setting_value, ";
$sql .= "default_setting_enabled = 'true' ";
$sql .= "where default_setting_uuid = :default_setting_uuid ";
$parameters['default_setting_value'] = $text['login-message_text'];
$parameters['default_setting_uuid'] = $current_default_setting_uuid;
$database = new database;
$database->execute($sql, $parameters);
unset($sql, $parameters);
}
}
unset($sql, $result, $row);
}
}