feat: add multi-user admin panel and featured partners toggle on home page

This commit is contained in:
AyrisAI
2026-05-17 13:48:05 +03:00
parent 36e98a3883
commit 0504f12f5b
29 changed files with 1110 additions and 182 deletions

35
lib/cloudinary.ts Normal file
View File

@@ -0,0 +1,35 @@
import { v2 as cloudinary } from 'cloudinary';
// Configure Cloudinary
cloudinary.config({
cloud_name: process.env.NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME,
api_key: process.env.CLOUDINARY_API_KEY,
api_secret: process.env.CLOUDINARY_API_SECRET,
secure: true,
});
export default cloudinary;
/**
* Uploads a file buffer or base64 to Cloudinary
*/
export async function uploadToCloudinary(file: File, folder: string = 'partners'): Promise<string> {
const arrayBuffer = await file.arrayBuffer();
const buffer = Buffer.from(arrayBuffer);
return new Promise((resolve, reject) => {
cloudinary.uploader.upload_stream(
{
folder: `mugladijital/${folder}`,
resource_type: 'auto',
},
(error, result) => {
if (error) {
reject(error);
} else {
resolve(result?.secure_url || '');
}
}
).end(buffer);
});
}