feat: add GPS tracking with Traccar integration

- Add GPS module with Traccar client service for device management
- Add driver enrollment flow with QR code generation
- Add real-time location tracking on driver profiles
- Add GPS settings configuration in admin tools
- Add Auth0 OpenID Connect setup script for Traccar
- Add deployment configs for production server
- Update nginx configs for SSL on GPS port 5055
- Add timezone setting support
- Various UI improvements and bug fixes

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-03 18:13:17 +01:00
parent 3814d175ff
commit 5ded039793
91 changed files with 4403 additions and 68 deletions

View File

@@ -0,0 +1,39 @@
import { test, expect } from '@playwright/test';
test.describe('Production Site Tests', () => {
test('should load production homepage', async ({ page }) => {
console.log('Testing: https://vip.madeamess.online');
await page.goto('https://vip.madeamess.online', {
waitUntil: 'networkidle',
timeout: 30000
});
// Check title
await expect(page).toHaveTitle(/VIP Coordinator/i);
console.log('✅ Page title correct');
// Take screenshot
await page.screenshot({ path: 'production-screenshot.png', fullPage: true });
console.log('✅ Screenshot saved');
});
test('should have working API', async ({ request }) => {
const response = await request.get('https://vip.madeamess.online/api/v1/health');
expect(response.ok()).toBeTruthy();
const data = await response.json();
expect(data.status).toBe('ok');
expect(data.environment).toBe('production');
console.log('✅ API health check passed:', data);
});
test('should load without errors', async ({ page }) => {
await page.goto('https://vip.madeamess.online');
// Wait for React to render
await page.waitForLoadState('networkidle');
console.log('✅ Page loaded successfully');
});
});