-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathforward_message.php
More file actions
67 lines (51 loc) · 2.13 KB
/
Copy pathforward_message.php
File metadata and controls
67 lines (51 loc) · 2.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
session_start();
// include 'conn.php';
include 'conn.php';
header('Content-Type: application/json');
$sender_email = strtolower(trim($_SESSION['email'] ?? ''));
$current_chat_with = strtolower(trim($_SESSION['current_chat_with'] ?? ''));
$json_data = file_get_contents('php://input');
$data = json_decode($json_data, true);
$message_id = $data['message_id'] ?? null;
$recipients = $data['recipients'] ?? [];
$response = ['success' => false, 'error' => ''];
if ($sender_email && $message_id && !empty($recipients)) {
// Retrieve the original message details
$stmt = $conn->prepare("SELECT message, image FROM message WHERE id = ?");
$stmt->bind_param("i", $message_id);
$stmt->execute();
$result = $stmt->get_result();
$original_message = $result->fetch_assoc();
$stmt->close();
if ($original_message) {
$message_text = $original_message['message'];
$message_image = $original_message['image'];
$insert_stmt = $conn->prepare("INSERT INTO message (sender_email, receiver_email, message, image) VALUES (?, ?, ?, ?)");
$forwarded_count = 0;
$valid_recipients = false; // Flag to check if at least one valid recipient exists
foreach ($recipients as $recipient_email) {
$recipient_email = strtolower(trim($recipient_email));
// Exclude self and current chat partner
if ($recipient_email !== $sender_email && $recipient_email !== $current_chat_with) {
$insert_stmt->bind_param("ssss", $sender_email, $recipient_email, $message_text, $message_image);
$insert_stmt->execute();
$forwarded_count++;
$valid_recipients = true;
}
}
$insert_stmt->close();
if ($valid_recipients) {
$response['success'] = true;
} else {
$response['success'] = false;
$response['error'] = 'Please select at least one other user to forward to.';
}
} else {
$response['error'] = 'Original message not found.';
}
} else {
$response['error'] = 'Invalid data received.';
}
echo json_encode($response);
?>