T.ME/BIBIL_0DAY
CasperSecurity


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/public_html/scripts/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/gositeme/domains/lavocat.quebec/public_html/scripts/seed-business-demo.js
const { PrismaClient } = require('@prisma/client');

const prisma = new PrismaClient();

async function main() {
  // 1. Create a demo business
  let business = await prisma.business.findFirst({ where: { name: 'Demo Law Firm' } });
  if (!business) {
    business = await prisma.business.create({
      data: {
        name: 'Demo Law Firm',
        description: 'A sample law firm for demo purposes',
        industry: 'Legal',
        website: 'https://demolawfirm.com',
        email: 'contact@demolawfirm.com',
        phone: '+1234567890',
        address: '123 Demo St',
        city: 'Demo City',
        state: 'Demo State',
        zipCode: '12345',
        country: 'DemoLand',
        isActive: true,
      }
    });
    console.log('✅ Created demo business');
  } else {
    console.log('ℹ️ Demo business already exists');
  }

  // 2. Create demo users
  const usersData = [
    { name: 'Alice Attorney', email: 'alice@demo.com', role: 'LAWYER' },
    { name: 'Bob Barrister', email: 'bob@demo.com', role: 'LAWYER' },
    { name: 'Cathy Clerk', email: 'cathy@demo.com', role: 'CLERK' },
  ];
  for (const userData of usersData) {
    let user = await prisma.user.findUnique({ where: { email: userData.email } });
    if (!user) {
      user = await prisma.user.create({ data: userData });
      console.log(`✅ Created user: ${user.name}`);
    }
    // 3. Add user as business member (if not already)
    const member = await prisma.businessMember.findFirst({
      where: { businessId: business.id, userId: user.id }
    });
    if (!member) {
      await prisma.businessMember.create({
        data: {
          businessId: business.id,
          userId: user.id,
          role: user.role,
          joinedAt: new Date(),
        }
      });
      console.log(`✅ Added ${user.name} as member of Demo Law Firm`);
    }
  }

  // 4. Create demo cases
  const casesData = [
    { title: 'Demo Case 1', description: 'A sample case for demo', businessId: business.id },
    { title: 'Demo Case 2', description: 'Another sample case', businessId: business.id },
  ];
  for (const caseData of casesData) {
    const existing = await prisma.case.findFirst({ where: { title: caseData.title, businessId: business.id } });
    if (!existing) {
      await prisma.case.create({ data: caseData });
      console.log(`✅ Created case: ${caseData.title}`);
    }
  }

  console.log('🎉 Demo data seeded!');
}

main().catch(e => {
  console.error(e);
  process.exit(1);
}).finally(async () => {
  await prisma.$disconnect();
}); 

CasperSecurity Mini