Sindbad~EG File Manager

Current Path : /home/copmadinaarea/thecopmadinaarea.org/portal/api/
Upload File :
Current File : /home/copmadinaarea/thecopmadinaarea.org/portal/api/chat_send.php

<?php
require_once '../config/config.php';
require_once '../classes/MemberAuth.php';

header('Content-Type: application/json');

if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    http_response_code(405);
    echo json_encode(['success' => false, 'error' => 'Method not allowed']);
    exit;
}

$conversationId = (int)($_POST['conversation_id'] ?? 0);
$messageText = trim($_POST['message'] ?? '');

if ($conversationId <= 0 || $messageText === '') {
    echo json_encode(['success' => false, 'error' => 'Invalid data']);
    exit;
}

try {
    $db = Database::getInstance()->getConnection();

    // Determine sender type
    $senderType = 'guest';
    $senderMemberId = null;
    $senderUserId = null;

    if (function_exists('isLoggedIn') && isLoggedIn()) {
        // Admin user
        $senderType = 'admin';
        $senderUserId = $_SESSION['user_id'] ?? null;
    } elseif (class_exists('MemberAuth') && MemberAuth::isMemberLoggedIn()) {
        // Member portal
        $senderType = 'member';
        $currentMember = MemberAuth::getCurrentMember();
        $senderMemberId = $currentMember['member_id'] ?? null;
    }

    $stmt = $db->prepare("INSERT INTO chat_messages (
            conversation_id, sender_type, sender_member_id, sender_user_id, message_text, created_at
        ) VALUES (
            :conversation_id, :sender_type, :sender_member_id, :sender_user_id, :message_text, NOW()
        )");

    $stmt->execute([
        'conversation_id' => $conversationId,
        'sender_type' => $senderType,
        'sender_member_id' => $senderMemberId,
        'sender_user_id' => $senderUserId,
        'message_text' => $messageText
    ]);

    echo json_encode(['success' => true]);
} catch (Exception $e) {
    http_response_code(500);
    echo json_encode(['success' => false, 'error' => 'Failed to send message.']);
}

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists