Files
mwitnessing/pages/permits.tsx
2024-03-06 22:41:12 +02:00

81 lines
3.4 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import React, { useState } from 'react';
import Layout from "../components/layout";
import fs from 'fs';
import path from 'path';
import { url } from 'inspector';
const PDFViewerPage = ({ pdfFiles }) => {
return (
<Layout>
<h1 className="text-3xl font-bold p-4 pt-8">Разрешителни</h1>
<div style={{ width: '100%', height: 'calc(100vh - 100px)' }}> {/* Adjust the 100px based on your header/footer size */}
{/* <p className="p-1">
{pdfFiles.map((file, index) => (
<p className="p-2">
<a href={file.url} className="text-blue-600 hover:text-blue-800 visited:text-purple-600 underline" target='_blank'>
Свали: {file.name}
</a>
</p>
))}
</p> */}
{pdfFiles.map((file, index) => (
// <React.Fragment key={file.name}>
// {index > 0 && <div className="bg-gray-400 w-px h-6"></div>} {/* Vertical line separator */}
// <a
// href={file.url}
// target="_blank"
// className={`text-lg py-2 px-4 bg-gray-200 text-gray-800 hover:bg-blue-500 hover:text-white ${index === 0 ? 'rounded-l-full' : index === pdfFiles.length - 1 ? 'rounded-r-full' : ''}`}
// >
// {file.name}
// </a>
// </React.Fragment>
<> <p className="pt-2">
<a href={file.url} className="text-blue-600 hover:text-blue-800 visited:text-purple-600 underline" target='_blank'>
Свали: {file.name}
</a>
</p>
<div style={{ width: 'calc(100% - 1rem)', height: '100%' }} className='py-2'>
< object data={file.url} type="application/pdf" style={{ width: '100%', height: '100%' }}>
<p>Вашият браузър не поддържа PDFs файлове. Моля свалете файла за да го разгледате: <a href={file.url}>Свали {file.name}</a>.</p>
<p>Your browser does not support PDFs. Please download the PDF to view it: <a href={file.url}> {file.name}</a>.</p>
</object>
</div>
</>
))}
</div>
</Layout >
);
};
export default PDFViewerPage;
export const getServerSideProps = async (context) => {
const permitsFolder = '/public/content/permits/';
//get all the files in the permits folder order them by date desc and display them
const pdfFiles = fs.readdirSync(path.join(process.cwd(), permitsFolder)).map(file => {
return {
name: file,
date: fs.statSync(path.join(process.cwd(), permitsFolder, file)).mtime,
url: `/content/permits/${file}`
};
}).sort((a, b) => b.date - a.date)
.map(file => {
return {
name: file.name,
url: file.url
};
}
);
return {
props: {
pdfFiles
}
};
}
// export const getServerSideProps = async (context) => {