![]() Server : Apache/2 System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64 User : gositeme ( 1004) PHP Version : 8.2.29 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname Directory : /home/gositeme/domains/lavocat.quebec/private_html/scripts/ |
const { PrismaClient } = require('@prisma/client');
const prisma = new PrismaClient();
async function testLiveCasesAPI() {
try {
console.log('🔍 Testing live cases API logic...');
// Simulate the exact logic from the API
const whereClause = {
isPublic: true,
OR: [
{ status: 'ACTIVE' },
{ status: 'active' },
{ status: 'Active' },
{ status: 'OPEN' },
{ status: 'open' },
{ status: 'Open' }
]
};
console.log('🔍 Where clause:', JSON.stringify(whereClause, null, 2));
// Fetch cases with the same logic as the API
const cases = await prisma.legalCase.findMany({
where: whereClause,
orderBy: { createdAt: 'desc' },
include: {
leadLawyer: {
select: {
id: true,
name: true,
username: true,
profilePicture: true,
specialization: true,
averageRating: true,
totalCases: true,
wonCases: true,
proBono: true,
hourlyRate: true,
isVerified: true
}
},
creator: {
select: {
id: true,
name: true,
username: true
}
},
_count: {
select: {
offers: true,
registrations: true,
supporters: true,
comments: true
}
}
}
});
console.log('📊 Cases found:', cases.length);
cases.forEach(case_ => {
console.log(` - ${case_.title} (status: ${case_.status}, isPublic: ${case_.isPublic})`);
console.log(` Lead lawyer: ${case_.leadLawyer?.name || 'None'}`);
console.log(` Creator: ${case_.creator?.name || 'None'}`);
});
// Get total count
const totalCases = await prisma.legalCase.count({
where: whereClause
});
console.log('📊 Total count:', totalCases);
} catch (error) {
console.error('❌ Error testing live cases API:', error);
} finally {
await prisma.$disconnect();
}
}
testLiveCasesAPI();