<cfsetting showdebugoutput="false">
<cfsetting enablecfoutputonly="true">
<cfcontent type="application/json; charset=utf-8" reset="true">

<cfscript>
// Debug: check ChatMessages table contents
try {
    qAll = queryExecute("SELECT * FROM ChatMessages ORDER BY CreatedOn DESC LIMIT 50", [], { datasource: "payfrit" });

    messages = [];
    for (row in qAll) {
        arrayAppend(messages, {
            "MessageID": row.MessageID,
            "TaskID": row.TaskID,
            "SenderUserID": row.SenderUserID,
            "SenderType": row.SenderType,
            "MessageText": left(row.MessageText, 100),
            "CreatedOn": row.CreatedOn
        });
    }

    // Also check schema
    schema = queryExecute("DESCRIBE ChatMessages", [], { datasource: "payfrit" });
    cols = [];
    for (col in schema) {
        arrayAppend(cols, { "Field": col.Field, "Type": col.Type });
    }

    writeOutput(serializeJSON({
        "OK": true,
        "TOTAL_MESSAGES": qAll.recordCount,
        "MESSAGES": messages,
        "SCHEMA": cols
    }));
} catch (any e) {
    writeOutput(serializeJSON({
        "OK": false,
        "ERROR": e.message
    }));
}
</cfscript>
