fix Analyse
This commit is contained in:
42
backend/routes/analytics.js
Normal file
42
backend/routes/analytics.js
Normal file
@@ -0,0 +1,42 @@
|
||||
import { Router } from 'express';
|
||||
import {
|
||||
getOverview, getPageviewsByDay, getTopUsers,
|
||||
getTopRecipes, getRecentActivity, getEvents
|
||||
} from '../analytics-db.js';
|
||||
import { getUserById } from '../db.js';
|
||||
|
||||
const router = Router();
|
||||
|
||||
router.get('/overview', (req, res) => {
|
||||
res.json(getOverview());
|
||||
});
|
||||
|
||||
router.get('/pageviews', (req, res) => {
|
||||
const { from, to } = req.query;
|
||||
res.json(getPageviewsByDay(from, to));
|
||||
});
|
||||
|
||||
router.get('/users', (req, res) => {
|
||||
const topUsers = getTopUsers(20);
|
||||
const enriched = topUsers.map(u => {
|
||||
const user = getUserById(u.user_id);
|
||||
return { ...u, username: user ? user.username : `User #${u.user_id}` };
|
||||
});
|
||||
res.json(enriched);
|
||||
});
|
||||
|
||||
router.get('/recipes', (req, res) => {
|
||||
res.json(getTopRecipes(20));
|
||||
});
|
||||
|
||||
router.get('/activity', (req, res) => {
|
||||
const { user_id, limit } = req.query;
|
||||
const events = getEvents({ user_id, limit: limit ? Number(limit) : 50 });
|
||||
const enriched = events.map(e => {
|
||||
const user = e.user_id ? getUserById(e.user_id) : null;
|
||||
return { ...e, username: user ? user.username : null };
|
||||
});
|
||||
res.json(enriched);
|
||||
});
|
||||
|
||||
export default router;
|
||||
Reference in New Issue
Block a user