79 lines
3.7 KiB
JavaScript
79 lines
3.7 KiB
JavaScript
const sdk = require('node-appwrite');
|
|
require('dotenv').config({ path: '.env.local' });
|
|
|
|
const client = new sdk.Client();
|
|
const databases = new sdk.Databases(client);
|
|
|
|
const ENDPOINT = process.env.NEXT_PUBLIC_APPWRITE_ENDPOINT || 'https://appwrite.almeira.com.co/v1';
|
|
const PROJECT_ID = process.env.NEXT_PUBLIC_APPWRITE_PROJECT_ID || '69b84df5003bd8957c5c';
|
|
const API_KEY = process.env.APPWRITE_API_KEY;
|
|
|
|
client
|
|
.setEndpoint(ENDPOINT)
|
|
.setProject(PROJECT_ID)
|
|
.setKey(API_KEY);
|
|
|
|
const dbId = process.env.APPWRITE_DATABASE_ID || 'almeira';
|
|
|
|
async function publishDummies() {
|
|
try {
|
|
console.log('Obteniendo tipos de publicación...');
|
|
const typesRes = await databases.listDocuments(dbId, 'publication_types');
|
|
const types = typesRes.documents;
|
|
|
|
const typeClasif = types.find(t => t.codigo === 'CLASIFICADO');
|
|
const typeEvento = types.find(t => t.codigo === 'EVENTO');
|
|
const typeBanner = types.find(t => t.codigo === 'DISPLAY_BANNER');
|
|
|
|
if (!typeClasif || !typeEvento || !typeBanner) {
|
|
console.log('Faltan algunos tipos de publicación en la base de datos.');
|
|
return;
|
|
}
|
|
|
|
console.log('Insertando Clasificado de prueba...');
|
|
await databases.createDocument(dbId, 'posts', sdk.ID.unique(), {
|
|
titulo: 'Vendo Hermosa Casa en el Centro',
|
|
slug: 'vendo-hermosa-casa-centro-' + Date.now(),
|
|
resumen_redes: 'Oportunidad única para adquirir una casa con excelentes acabados y ubicación estratégica.',
|
|
contenido: '<p>Oportunidad única para adquirir una casa con excelentes acabados y ubicación estratégica. 3 habitaciones, 2 baños, garaje.</p>',
|
|
estado: 'Publicado',
|
|
fecha_publicacion: new Date().toISOString(),
|
|
tipo_publicacion_id: typeClasif.$id,
|
|
og_image_url: 'https://images.unsplash.com/photo-1512917774080-9991f1c4c750?q=80&w=1000&auto=format&fit=crop'
|
|
});
|
|
|
|
console.log('Insertando Evento de prueba...');
|
|
await databases.createDocument(dbId, 'posts', sdk.ID.unique(), {
|
|
titulo: 'Gran Concierto de Fin de Año',
|
|
slug: 'gran-concierto-fin-de-ano-' + Date.now(),
|
|
resumen_redes: 'No te pierdas el evento musical más esperado del año con artistas locales e internacionales.',
|
|
contenido: '<p>No te pierdas el evento musical más esperado del año con artistas locales e internacionales. Entrada libre.</p>',
|
|
estado: 'Publicado',
|
|
fecha_publicacion: new Date().toISOString(),
|
|
fecha_finalizacion: new Date(Date.now() + 86400000 * 30).toISOString(), // + 30 days
|
|
tipo_publicacion_id: typeEvento.$id,
|
|
og_image_url: 'https://images.unsplash.com/photo-1540039155733-d76e6148e18e?q=80&w=1000&auto=format&fit=crop'
|
|
});
|
|
|
|
console.log('Insertando Banner de prueba...');
|
|
await databases.createDocument(dbId, 'posts', sdk.ID.unique(), {
|
|
titulo: 'Gran Promoción Almeira',
|
|
slug: 'banner-promo-almeira-' + Date.now(),
|
|
contenido: '', // Requerido por el schema de posts
|
|
estado: 'Publicado',
|
|
fecha_publicacion: new Date().toISOString(),
|
|
fecha_finalizacion: new Date(Date.now() + 86400000 * 30).toISOString(),
|
|
tipo_publicacion_id: typeBanner.$id,
|
|
url_destino: 'https://almeira.com.co',
|
|
og_image_url: 'https://images.unsplash.com/photo-1504222490345-c075b6008014?q=80&w=1000&auto=format&fit=crop'
|
|
});
|
|
|
|
console.log('¡Publicaciones de prueba insertadas con éxito!');
|
|
|
|
} catch (e) {
|
|
console.error('Error insertando dummies:', e);
|
|
}
|
|
}
|
|
|
|
publishDummies();
|