51 lines
1.4 KiB
JavaScript
51 lines
1.4 KiB
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
const { authenticateToken } = require('../middleware/auth');
|
|
const MultiTenantAuth = require('../middleware/multi-tenant-auth');
|
|
const { Tenant } = require('../models');
|
|
|
|
// Debug endpoint to test tenant determination
|
|
router.get('/test-tenant', authenticateToken, async (req, res) => {
|
|
try {
|
|
console.log('Testing tenant determination...');
|
|
|
|
const multiTenantAuth = new MultiTenantAuth();
|
|
const tenantSlug = await multiTenantAuth.determineTenant(req);
|
|
|
|
console.log('Tenant slug found:', tenantSlug);
|
|
|
|
if (!tenantSlug) {
|
|
return res.json({
|
|
success: false,
|
|
message: 'No tenant slug found',
|
|
debug: {
|
|
host: req.get('host'),
|
|
user: req.user ? { id: req.user.id, tenant_id: req.user.tenant_id } : null
|
|
}
|
|
});
|
|
}
|
|
|
|
const tenant = await Tenant.findOne({ where: { slug: tenantSlug } });
|
|
|
|
res.json({
|
|
success: true,
|
|
tenantSlug,
|
|
tenant: tenant ? { id: tenant.id, name: tenant.name, slug: tenant.slug } : null,
|
|
debug: {
|
|
host: req.get('host'),
|
|
user: req.user ? { id: req.user.id, tenant_id: req.user.tenant_id } : null
|
|
}
|
|
});
|
|
|
|
} catch (error) {
|
|
console.error('Error in tenant test:', error);
|
|
res.status(500).json({
|
|
success: false,
|
|
error: error.message,
|
|
stack: error.stack
|
|
});
|
|
}
|
|
});
|
|
|
|
module.exports = router;
|