query("SELECT id FROM mailbox_statuses WHERE is_default = 1 LIMIT 1")->fetchColumn() ?: 1; if ($recipient_id && $subject) { try { db()->beginTransaction(); $stmt = db()->prepare("INSERT INTO mailbox (type, ref_no, date_registered, subject, description, status_id, assigned_to, created_by) VALUES (?, ?, ?, ?, ?, ?, ?, ?)"); $stmt->execute([$type, $ref_no, $date_registered, $subject, $description, $default_status_id, $recipient_id, $user_id]); $mail_id = db()->lastInsertId(); // Handle Attachments if (!empty($_FILES['attachments']['name'][0])) { $upload_dir = 'uploads/attachments/'; if (!is_dir($upload_dir)) mkdir($upload_dir, 0777, true); foreach ($_FILES['attachments']['name'] as $key => $name) { if ($_FILES['attachments']['error'][$key] === 0) { $file_name = time() . '_' . basename($name); $target_path = $upload_dir . $file_name; if (move_uploaded_file($_FILES['attachments']['tmp_name'][$key], $target_path)) { $stmt = db()->prepare("INSERT INTO attachments (mail_id, display_name, file_path, file_name, file_size) VALUES (?, ?, ?, ?, ?)"); $stmt->execute([$mail_id, $name, $target_path, $name, $_FILES['attachments']['size'][$key]]); } } } } // Notify recipient $stmt_recp = db()->prepare("SELECT full_name, email FROM users WHERE id = ?"); $stmt_recp->execute([$recipient_id]); $recipient = $stmt_recp->fetch(); if ($recipient && !empty($recipient['email'])) { $email_subject = "رسالة داخلية جديدة من " . $_SESSION['username']; $htmlBody = "
الموضوع: " . htmlspecialchars($subject) . "
المرسل: " . htmlspecialchars($_SESSION['username']) . "
يمكنك الرد من خلال النظام.
| المستلم | الموضوع | التاريخ | الحالة | الإجراء |
|---|---|---|---|---|
|
|
= htmlspecialchars($msg['subject']) ?>
= strip_tags($msg['description']) ?>
|
= date('Y-m-d H:i', strtotime($msg['created_at'])) ?> | = getStatusBadgeInternal($msg) ?> | عرض |
|
لم يتم إرسال أي رسائل حالياً |
||||