![]() 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.ca/private_html/.next/server/pages/api/client/documents/ |
"use strict";(()=>{var e={};e.id=7371,e.ids=[7371],e.modules={4722:e=>{e.exports=require("next-auth/react")},8732:e=>{e.exports=require("react/jsx-runtime")},16382:e=>{e.exports=require("next-auth/providers/credentials")},22326:e=>{e.exports=require("react-dom")},27910:e=>{e.exports=require("stream")},29021:e=>{e.exports=require("fs")},33873:e=>{e.exports=require("path")},40361:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},53910:(e,r,t)=>{t.a(e,async(e,a)=>{try{t.r(r),t.d(r,{config:()=>m,default:()=>p});var s=t(65542),i=t(41822),o=t(76760),n=t(79748),d=t(33873),u=t(67313),l=t(16062),c=e([u]);u=(c.then?(await c)():c)[0];let m={api:{bodyParser:!1}};async function p(e,r){let t=await (0,s.getServerSession)(e,r,i.N);if(!t?.user)return r.status(401).json({error:"Unauthorized"});if("CLIENT"!==t.user.role&&!(0,l.jm)(t))return r.status(403).json({error:"Access denied. Client role or super admin required."});if("POST"===e.method)try{let a=(0,u.default)({maxFileSize:0xa00000,uploadDir:(0,d.join)(process.cwd(),"public","uploads","client-documents"),filename:(e,r,t)=>{let a=Date.now(),s=Math.random().toString(36).substring(2,15);return`${a}-${s}${r}`}});await (0,n.mkdir)((0,d.join)(process.cwd(),"public","uploads","client-documents"),{recursive:!0});let[s,i]=await new Promise((r,t)=>{a.parse(e,(e,a,s)=>{e?t(e):r([a,s])})}),c=i.file,p=Array.isArray(c)?c[0]:c,m=Array.isArray(s.caseId)?s.caseId[0]:s.caseId,x=Array.isArray(s.title)?s.title[0]:s.title;if(!p||!m||!x)return r.status(400).json({error:"Missing required fields"});let f=(0,l.jm)(t)?{id:m}:{id:m,clientRelationships:{some:{clientId:t.user.id}}};if(!await o.z.legalCase.findFirst({where:f}))return r.status(404).json({error:"Case not found or access denied"});let w=await o.z.document.create({data:{name:x,type:function(e){switch(e.split(".").pop()?.toLowerCase()){case"pdf":return"PDF";case"doc":case"docx":return"WORD";case"xls":case"xlsx":return"EXCEL";case"jpg":case"jpeg":case"png":return"IMAGE";case"txt":return"TEXT";default:return"OTHER"}}(p.originalFilename||""),url:`/uploads/client-documents/${p.newFilename}`,userId:t.user.id,registrationId:m},include:{registration:{select:{id:!0,firstName:!0,lastName:!0}}}}),g=await o.z.legalCase.findUnique({where:{id:m},select:{leadLawyerId:!0}});return g?.leadLawyerId&&await o.z.notification.create({data:{userId:g.leadLawyerId,type:"DOCUMENT_UPLOADED",title:"New Document Uploaded",message:`${t.user.name} uploaded "${x}"`,data:JSON.stringify({documentId:w.id,caseId:m,fileName:x}),isRead:!1}}),r.status(201).json({document:w})}catch(e){return console.error("Error uploading document:",e),r.status(500).json({error:"Failed to upload document"})}return r.status(405).json({error:"Method not allowed"})}a()}catch(e){a(e)}})},62040:(e,r,t)=>{t.a(e,async(e,a)=>{try{t.r(r),t.d(r,{config:()=>l,default:()=>u,routeModule:()=>c});var s=t(33480),i=t(8667),o=t(86435),n=t(53910),d=e([n]);n=(d.then?(await d)():d)[0];let u=(0,o.M)(n,"default"),l=(0,o.M)(n,"config"),c=new s.PagesAPIRouteModule({definition:{kind:i.A.PAGES_API,page:"/api/client/documents/upload",pathname:"/api/client/documents/upload",bundlePath:"",filename:""},userland:n});a()}catch(e){a(e)}})},65542:e=>{e.exports=require("next-auth")},67313:e=>{e.exports=import("formidable")},74075:e=>{e.exports=require("zlib")},74729:e=>{e.exports=require("bcryptjs")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},79748:e=>{e.exports=require("fs/promises")},82015:e=>{e.exports=require("react")},96330:e=>{e.exports=require("@prisma/client")}};var r=require("../../../../webpack-api-runtime.js");r.C(e);var t=e=>r(r.s=e),a=r.X(0,[7332,6062],()=>t(62040));module.exports=a})();