Files
fasto/test-mysql.js
Cauê Faleiros 7ab54053db feat: implement customizable funnel stages per tenant
- Modified attendances.funnel_stage in DB from ENUM to VARCHAR.

- Created tenant_funnels table and backend API routes to manage custom stages.

- Added /admin/funnels page for Admins/Managers to create, edit, order, and color-code their funnel stages.

- Updated Dashboard, UserDetail, and AttendanceDetail to fetch and render dynamic funnel stages instead of hardcoded enums.

- Added defensive checks and logging to GET /users/:idOrSlug to fix sporadic 500 errors during impersonation handoffs.
2026-03-13 10:25:23 -03:00

24 lines
736 B
JavaScript

const mysql = require('mysql2/promise');
async function test() {
const pool = mysql.createPool({ host: '127.0.0.1', user: 'root', password: 'secret_pass', database: 'fasto_db', port: 3306 });
try {
const [rows] = await pool.query('SELECT * FROM users WHERE id = ? OR slug = ?', ['u_71657ec7', 'u_71657ec7']);
console.log("ROWS:", rows);
// Simulate req.user
const req = { user: { role: 'super_admin', tenant_id: 'system' } };
if (req.user.role !== 'super_admin' && rows[0].tenant_id !== req.user.tenant_id) {
console.log("Access Denied");
} else {
console.log("Access Granted");
}
} catch (err) {
console.error("ERROR:", err);
} finally {
await pool.end();
}
}
test();