From 6532c2dde437b40ce02aabd5f5d9630adc1c40ec Mon Sep 17 00:00:00 2001 From: johnnyq Date: Wed, 24 Jun 2026 12:04:19 -0400 Subject: [PATCH] User Preferences Avatar: Fix creating user upload directory if doesnt exist, and remove Avatar now properly deletes the old avatar image --- admin/post/settings_mail.php | 16 ++--- admin/settings_mail.php | 125 +++++++++++++++++++---------------- agent/user/post/profile.php | 9 +++ 3 files changed, 85 insertions(+), 65 deletions(-) diff --git a/admin/post/settings_mail.php b/admin/post/settings_mail.php index bd24ca00..ee297f6c 100644 --- a/admin/post/settings_mail.php +++ b/admin/post/settings_mail.php @@ -76,7 +76,7 @@ if (isset($_POST['oauth_connect_microsoft_mail'])) { } if (isset($_POST['edit_mail_smtp_settings'])) { - + validateCSRFToken($_POST['csrf_token']); $config_smtp_provider = sanitizeInput($_POST['config_smtp_provider']); @@ -110,15 +110,15 @@ if (isset($_POST['edit_mail_smtp_settings'])) { "); logAction("Settings", "Edit", "$session_name edited SMTP settings"); - + flash_alert("SMTP Mail Settings updated"); - + redirect(); } if (isset($_POST['edit_mail_imap_settings'])) { - + validateCSRFToken($_POST['csrf_token']); $config_imap_provider = sanitizeInput($_POST['config_imap_provider']); @@ -152,9 +152,9 @@ if (isset($_POST['edit_mail_imap_settings'])) { "); logAction("Settings", "Edit", "$session_name edited IMAP settings"); - + flash_alert("IMAP Mail Settings updated"); - + redirect(); } @@ -190,7 +190,7 @@ if (isset($_POST['test_email_smtp'])) { validateCSRFToken($_POST['csrf_token']); $test_email = intval($_POST['test_email']); - + if($test_email == 1) { $email_from = sanitizeInput($config_mail_from_email); $email_from_name = sanitizeInput($config_mail_from_name); @@ -219,7 +219,7 @@ if (isset($_POST['test_email_smtp'])) { 'body' => $body ] ]; - + $mail = addToMailQueue($data); if ($mail === true) { diff --git a/admin/settings_mail.php b/admin/settings_mail.php index ffae37b0..f66f2b8e 100644 --- a/admin/settings_mail.php +++ b/admin/settings_mail.php @@ -93,6 +93,22 @@ require_once "includes/inc_all_admin.php"; + + +
@@ -525,65 +541,60 @@ require_once "includes/inc_all_admin.php"; diff --git a/agent/user/post/profile.php b/agent/user/post/profile.php index 73827cd0..474af4ef 100644 --- a/agent/user/post/profile.php +++ b/agent/user/post/profile.php @@ -57,6 +57,11 @@ if (isset($_POST['edit_your_user_details'])) { // directory in which the uploaded file will be moved $upload_file_dir = "../../uploads/users/$session_user_id/"; $dest_path = $upload_file_dir . $new_file_name; + + if (!file_exists("$upload_file_dir")) { + mkdir("$upload_file_dir"); + } + move_uploaded_file($file_tmp_path, $dest_path); // Delete old file @@ -91,6 +96,10 @@ if (isset($_GET['clear_your_user_avatar'])) { validateCSRFToken($_GET['csrf_token']); + $user_avatar = sanitizeInput(getFieldById('users', $session_user_id, 'user_avatar')); + + unlink("../../uploads/users/$session_user_id/$user_avatar"); + mysqli_query($mysqli,"UPDATE users SET user_avatar = NULL WHERE user_id = $session_user_id"); logAction("User Account", "Edit", "$session_name cleared their avatar");