Skip to content

Commit 7e60bef

Browse files
committed
chore: remove thumbnail generation and save pdf in "unapproved" folder
1 parent 317d252 commit 7e60bef

3 files changed

Lines changed: 4 additions & 29 deletions

File tree

src/app/api/upload/route.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ export async function POST(req: Request) {
3636

3737
const buffer = Buffer.from(pdfBytes);
3838

39-
const file_url = await uploadPDF(buffer);
39+
const file_url = await uploadPDF("unapproved", buffer);
4040

4141
let thumbnail_url: string | null = null;
4242
if (thumb) {

src/app/upload/page.tsx

Lines changed: 1 addition & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -248,24 +248,6 @@ export default function Page() {
248248
setPreviews([]);
249249
}, [previews]);
250250

251-
async function generatePdfThumbnail(file: File): Promise<Blob> {
252-
const arrayBuffer = await file.arrayBuffer();
253-
const pdf = await getDocument({ data: arrayBuffer }).promise;
254-
const page = await pdf.getPage(1);
255-
256-
const viewport = page.getViewport({ scale: 1 });
257-
const canvas = document.createElement("canvas");
258-
canvas.width = viewport.width;
259-
canvas.height = viewport.height;
260-
261-
const context = canvas.getContext("2d")!;
262-
await page.render({ canvasContext: context, viewport }).promise;
263-
264-
return new Promise<Blob>((resolve) => {
265-
canvas.toBlob((blob) => resolve(blob!), "image/png");
266-
});
267-
}
268-
269251
const handleUpload = async () => {
270252
const isPdf = files.length === 1 && files[0]?.type === "application/pdf";
271253
const formData = new FormData();
@@ -276,14 +258,6 @@ export default function Page() {
276258
formData.append("campus", campus);
277259
formData.append("isPdf", String(isPdf));
278260

279-
if (isPdf && files[0]) {
280-
const thumbBlob = await generatePdfThumbnail(files[0]);
281-
const thumbFile = new File([thumbBlob], "thumbnail.png", {
282-
type: "image/png",
283-
});
284-
formData.append("thumbnail", thumbFile);
285-
}
286-
287261
setIsUploading(true);
288262

289263
try {
@@ -314,6 +288,7 @@ export default function Page() {
314288
setIsUploading(false);
315289
}
316290
};
291+
317292
return (
318293
<main className="mx-auto max-w-3xl px-4 py-8">
319294
<div className="flex h-[calc(100vh-90px)] flex-col justify-center px-6 font-play">

src/lib/storage.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ const storage = new Storage({
2626
const bucketName = process.env.GOOGLE_CLOUD_BUCKET ?? "";
2727
const bucket = storage.bucket(bucketName);
2828

29-
export async function uploadPDF(buffer: Buffer) {
30-
const pdfFilename = `papers/${Date.now()}-${Math.random().toString(36).substring(2)}.pdf`;
29+
export async function uploadPDF(folder: string, buffer: Buffer) {
30+
const pdfFilename = `${folder}/${Date.now()}-${Math.random().toString(36).substring(2)}.pdf`;
3131
await bucket.file(pdfFilename).save(buffer, { resumable: false, contentType: "application/pdf" });
3232
return `https://storage.googleapis.com/${bucketName}/${pdfFilename}`;
3333
}

0 commit comments

Comments
 (0)