diff --git a/database_updates.php b/database_updates.php index aa1ef477..c9abf2a4 100644 --- a/database_updates.php +++ b/database_updates.php @@ -419,11 +419,16 @@ if(LATEST_DATABASE_VERSION > CURRENT_DATABASE_VERSION){ mysqli_query($mysqli, "UPDATE `settings` SET `config_current_database_version` = '0.2.5'"); } - //if(CURRENT_DATABASE_VERSION == '0.2.5'){ - // Insert queries here required to update to DB version 0.2.6 + if(CURRENT_DATABASE_VERSION == '0.2.5'){ + mysqli_query($mysqli, "ALTER TABLE `users` ADD `user_status` TINYINT(1) DEFAULT 1 AFTER `user_password`"); + mysqli_query($mysqli, "UPDATE `settings` SET `config_current_database_version` = '0.2.6'"); + } + + //if(CURRENT_DATABASE_VERSION == '0.2.6'){ + // Insert queries here required to update to DB version 0.2.7 // Then, update the database to the next sequential version - // mysqli_query($mysqli, "UPDATE `settings` SET `config_current_database_version` = '0.2.6'"); + // mysqli_query($mysqli, "UPDATE `settings` SET `config_current_database_version` = '0.2.7'"); //} diff --git a/database_version.php b/database_version.php index 725e0f8a..b0591423 100644 --- a/database_version.php +++ b/database_version.php @@ -5,4 +5,4 @@ * It is used in conjunction with database_updates.php */ -DEFINE("LATEST_DATABASE_VERSION", "0.2.5"); \ No newline at end of file +DEFINE("LATEST_DATABASE_VERSION", "0.2.6"); \ No newline at end of file diff --git a/db.sql b/db.sql index 645556cb..58a6b148 100644 --- a/db.sql +++ b/db.sql @@ -266,6 +266,20 @@ CREATE TABLE `companies` ( ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; /*!40101 SET character_set_client = @saved_cs_client */; +-- +-- Table structure for table `contact_assets` +-- + +DROP TABLE IF EXISTS `contact_assets`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `contact_assets` ( + `contact_id` int(11) NOT NULL, + `asset_id` int(11) NOT NULL, + PRIMARY KEY (`contact_id`,`asset_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + -- -- Table structure for table `contact_documents` -- @@ -1405,6 +1419,7 @@ CREATE TABLE `users` ( `user_name` varchar(200) NOT NULL, `user_email` varchar(200) NOT NULL, `user_password` varchar(200) NOT NULL, + `user_status` tinyint(1) DEFAULT 1, `user_token` varchar(200) DEFAULT NULL, `user_avatar` varchar(200) DEFAULT NULL, `user_specific_encryption_ciphertext` varchar(200) DEFAULT NULL, @@ -1522,4 +1537,4 @@ CREATE TABLE `vendors` ( /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2023-01-09 19:14:30 +-- Dump completed on 2023-01-13 18:23:52 diff --git a/login.php b/login.php index ffe4e853..410c62b7 100644 --- a/login.php +++ b/login.php @@ -54,7 +54,7 @@ if(isset($_POST['login'])){ $current_code = strip_tags(mysqli_real_escape_string($mysqli, $_POST['current_code'])); } - $row = mysqli_fetch_assoc(mysqli_query($mysqli, "SELECT * FROM users LEFT JOIN user_settings on users.user_id = user_settings.user_id WHERE user_email = '$email' AND user_archived_at IS NULL")); + $row = mysqli_fetch_assoc(mysqli_query($mysqli, "SELECT * FROM users LEFT JOIN user_settings on users.user_id = user_settings.user_id WHERE user_email = '$email' AND user_archived_at IS NULL AND user_status = 1")); if (password_verify($password, $row['user_password'])) { // User variables diff --git a/post.php b/post.php index 5ba412a8..aa52622f 100644 --- a/post.php +++ b/post.php @@ -237,6 +237,41 @@ if(isset($_POST['edit_user'])){ } +if(isset($_GET['activate_user'])){ + + validateAdminRole(); + + $user_id = intval($_GET['activate_user']); + + mysqli_query($mysqli,"UPDATE users SET user_status = 1 WHERE user_id = $user_id"); + + //Logging + mysqli_query($mysqli,"INSERT INTO logs SET log_type = 'User', log_action = 'Activate', log_description = '$session_name activated user $user_id', log_ip = '$session_ip', log_user_agent = '$session_user_agent', log_user_id = $session_user_id, company_id = $session_company_id"); + + $_SESSION['alert_message'] = "User activated!"; + + header("Location: " . $_SERVER["HTTP_REFERER"]); + +} + +if(isset($_GET['disable_user'])){ + + validateAdminRole(); + + $user_id = intval($_GET['disable_user']); + + mysqli_query($mysqli,"UPDATE users SET user_status = 0 WHERE user_id = $user_id"); + + //Logging + mysqli_query($mysqli,"INSERT INTO logs SET log_type = 'User', log_action = 'Disabled', log_description = '$session_name disabled user $user_id', log_ip = '$session_ip', log_user_agent = '$session_user_agent', log_user_id = $session_user_id, company_id = $session_company_id"); + + $_SESSION['alert_type'] = "error"; + $_SESSION['alert_message'] = "User disabled!"; + + header("Location: " . $_SERVER["HTTP_REFERER"]); + +} + if(isset($_POST['edit_profile'])){ // CSRF Check diff --git a/revenue_add_modal.php b/revenue_add_modal.php index 6447822a..42af5131 100644 --- a/revenue_add_modal.php +++ b/revenue_add_modal.php @@ -2,7 +2,7 @@