🚀 Korea Tourism Agency - Complete implementation
✨ Features: - Modern tourism website with responsive design - AdminJS admin panel with image editor integration - PostgreSQL database with comprehensive schema - Docker containerization - Image upload and gallery management 🛠 Tech Stack: - Backend: Node.js + Express.js - Database: PostgreSQL 13+ - Frontend: HTML/CSS/JS with responsive design - Admin: AdminJS with custom components - Deployment: Docker + Docker Compose - Image Processing: Sharp with optimization 📱 Admin Features: - Routes/Tours management (city, mountain, fishing) - Guides profiles with specializations - Articles and blog system - Image editor with upload/gallery/URL options - User management and authentication - Responsive admin interface 🎨 Design: - Korean tourism focused branding - Mobile-first responsive design - Custom CSS with modern aesthetics - Image optimization and gallery - SEO-friendly structure 🔒 Security: - Helmet.js security headers - bcrypt password hashing - Input validation and sanitization - CORS protection - Environment variables
This commit is contained in:
@@ -79,6 +79,19 @@ export async function initDatabase() {
|
||||
}
|
||||
}
|
||||
|
||||
// 4. Apply image triggers fix migration
|
||||
try {
|
||||
console.log('🖼️ Installing image triggers fix...');
|
||||
const imageTriggersMigrationPath = path.join(__dirname, 'image-triggers-fix.sql');
|
||||
if (fs.existsSync(imageTriggersMigrationPath)) {
|
||||
const imageTriggersMigration = fs.readFileSync(imageTriggersMigrationPath, 'utf8');
|
||||
await db.query(imageTriggersMigration);
|
||||
console.log('✅ Image triggers fix applied successfully');
|
||||
}
|
||||
} catch (error) {
|
||||
console.log('ℹ️ Image triggers fix - some changes may already be applied:', error.message);
|
||||
}
|
||||
|
||||
console.log('✨ Database initialization completed successfully!');
|
||||
|
||||
} catch (error) {
|
||||
|
||||
Reference in New Issue
Block a user