diff --git a/client_contact_details.php b/client_contact_details.php index 90228273..3ad56492 100644 --- a/client_contact_details.php +++ b/client_contact_details.php @@ -95,7 +95,7 @@ if (isset($_GET['contact_id'])) { $contact_tags_display = implode('', $contact_tag_name_display_array); // Notes - $sql_related_notes = mysqli_query($mysqli, "SELECT * FROM contact_notes LEFT JOIN users ON contact_note_created_by = user_id WHERE contact_note_contact_id = $contact_id ORDER BY contact_note_created_at DESC"); + $sql_related_notes = mysqli_query($mysqli, "SELECT * FROM contact_notes LEFT JOIN users ON contact_note_created_by = user_id WHERE contact_note_contact_id = $contact_id AND contact_note_archived_at IS NULL ORDER BY contact_note_created_at DESC"); $note_count = mysqli_num_rows($sql_related_notes); ?> @@ -177,7 +177,6 @@ if (isset($_GET['contact_id'])) {
-
@@ -664,6 +667,10 @@ if (isset($_GET['contact_id'])) { Edit + + + Archive + @@ -693,9 +700,9 @@ if (isset($_GET['contact_id'])) { diff --git a/post/user/contact.php b/post/user/contact.php index 39af4523..2536377e 100644 --- a/post/user/contact.php +++ b/post/user/contact.php @@ -243,6 +243,84 @@ if (isset($_POST['add_contact_note'])) { } +if (isset($_GET['archive_contact_note'])) { + + enforceUserPermission('module_client', 2); + + $contact_note_id = intval($_GET['archive_contact_note']); + + // Get Contact Name and Client ID for logging and alert message + $sql = mysqli_query($mysqli,"SELECT contact_note_type, contact_id, contact_name, contact_client_id FROM contact_notes LEFT JOIN contacts ON contact_id = contact_note_contact_id WHERE contact_note_id = $contact_note_id"); + $row = mysqli_fetch_array($sql); + $contact_note_type = sanitizeInput($row['contact_note_type']); + $contact_name = sanitizeInput($row['contact_name']); + $client_id = intval($row['contact_client_id']); + $contact_id = intval($row['contact_id']); + + mysqli_query($mysqli,"UPDATE contact_notes SET contact_note_archived_at = NOW() WHERE contact_note_id = $contact_note_id"); + + // Logging + logAction("Contact", "Edit", "$session_name archived note $contact_note_type for $contact_name", $client_id, $contact_id); + + + $_SESSION['alert_type'] = "error"; + $_SESSION['alert_message'] = "Note $contact_note_type archived"; + + header("Location: " . $_SERVER["HTTP_REFERER"]); + +} + +if (isset($_GET['unarchive_contact_note'])) { + + enforceUserPermission('module_client', 2); + + $contact_note_id = intval($_GET['unarchive_contact_note']); + + // Get Contact Name and Client ID for logging and alert message + $sql = mysqli_query($mysqli,"SELECT contact_note_type, contact_id, contact_name, contact_client_id FROM contact_notes LEFT JOIN contacts ON contact_id = contact_note_contact_id WHERE contact_note_id = $contact_note_id"); + $row = mysqli_fetch_array($sql); + $contact_note_type = sanitizeInput($row['contact_note_type']); + $contact_name = sanitizeInput($row['contact_name']); + $client_id = intval($row['contact_client_id']); + $contact_id = intval($row['contact_id']); + + mysqli_query($mysqli,"UPDATE contact_notes SET contact_note_archived_at = NULL WHERE contact_note_id = $contact_note_id"); + + // Logging + logAction("Contact", "Edit", "$session_name restored note $contact_note_type for $contact_name", $client_id, $contact_id); + + $_SESSION['alert_message'] = "Note $contact_note_type restored"; + + header("Location: " . $_SERVER["HTTP_REFERER"]); + +} + +if (isset($_GET['delete_contact_note'])) { + + enforceUserPermission('module_client', 3); + + $contact_note_id = intval($_GET['delete_contact_note']); + + // Get Contact Name and Client ID for logging and alert message + $sql = mysqli_query($mysqli,"SELECT contact_note_type, contact_id, contact_name, contact_client_id FROM contact_notes LEFT JOIN contacts ON contact_id = contact_note_contact_id WHERE contact_note_id = $contact_note_id"); + $row = mysqli_fetch_array($sql); + $contact_note_type = sanitizeInput($row['contact_note_type']); + $contact_name = sanitizeInput($row['contact_name']); + $client_id = intval($row['contact_client_id']); + $contact_id = intval($row['contact_id']); + + mysqli_query($mysqli,"DELETE FROM contact_notes WHERE contact_note_id = $contact_note_id"); + + //Logging + logAction("Contact", "Edit", "$session_name deleted $contact_note_type note for $contact_name", $client_id, $contact_id); + + $_SESSION['alert_type'] = "error"; + $_SESSION['alert_message'] = "Note $contact_note_type deleted."; + + header("Location: " . $_SERVER["HTTP_REFERER"]); + +} + if (isset($_POST['bulk_assign_contact_location'])) { enforceUserPermission('module_client', 2); @@ -762,6 +840,7 @@ if (isset($_GET['unarchive_contact'])) { header("Location: " . $_SERVER["HTTP_REFERER"]); } + if (isset($_GET['delete_contact'])) { enforceUserPermission('module_client', 3);