feat(match3): Erweiterung der Match3-Admin-Funktionalitäten und -Modelle
- Implementierung neuer Endpunkte für die Verwaltung von Match3-Kampagnen, Levels, Objectives und Tile-Typen im Admin-Bereich. - Anpassung der Admin-Services zur Unterstützung von Benutzerberechtigungen und Fehlerbehandlung. - Einführung von neuen Modellen und Assoziationen für Match3-Levels und Tile-Typen in der Datenbank. - Verbesserung der Internationalisierung für Match3-spezifische Texte in Deutsch und Englisch. - Aktualisierung der Frontend-Routen und -Komponenten zur Verwaltung von Match3-Inhalten.
This commit is contained in:
@@ -25,4 +25,29 @@ router.post('/falukant/searchuser', authenticate, adminController.searchUser);
|
||||
router.get('/falukant/getuser/:id', authenticate, adminController.getFalukantUserById);
|
||||
router.post('/falukant/edituser', authenticate, adminController.changeFalukantUser);
|
||||
|
||||
// --- Minigames Admin ---
|
||||
router.get('/minigames/match3/campaigns', authenticate, adminController.getMatch3Campaigns);
|
||||
router.get('/minigames/match3/campaigns/:id', authenticate, adminController.getMatch3Campaign);
|
||||
router.post('/minigames/match3/campaigns', authenticate, adminController.createMatch3Campaign);
|
||||
router.put('/minigames/match3/campaigns/:id', authenticate, adminController.updateMatch3Campaign);
|
||||
router.delete('/minigames/match3/campaigns/:id', authenticate, adminController.deleteMatch3Campaign);
|
||||
|
||||
router.get('/minigames/match3/levels', authenticate, adminController.getMatch3Levels);
|
||||
router.get('/minigames/match3/levels/:id', authenticate, adminController.getMatch3Level);
|
||||
router.post('/minigames/match3/levels', authenticate, adminController.createMatch3Level);
|
||||
router.put('/minigames/match3/levels/:id', authenticate, adminController.updateMatch3Level);
|
||||
router.delete('/minigames/match3/levels/:id', authenticate, adminController.deleteMatch3Level);
|
||||
|
||||
// Objectives
|
||||
router.get('/minigames/match3/objectives', authenticate, adminController.getMatch3Objectives);
|
||||
router.get('/minigames/match3/objectives/:id', authenticate, adminController.getMatch3Objective);
|
||||
router.post('/minigames/match3/objectives', authenticate, adminController.createMatch3Objective);
|
||||
router.put('/minigames/match3/objectives/:id', authenticate, adminController.updateMatch3Objective);
|
||||
router.delete('/minigames/match3/objectives/:id', authenticate, adminController.deleteMatch3Objective);
|
||||
|
||||
router.get('/minigames/match3/tile-types', authenticate, adminController.getMatch3TileTypes);
|
||||
router.post('/minigames/match3/tile-types', authenticate, adminController.createMatch3TileType);
|
||||
router.put('/minigames/match3/tile-types/:id', authenticate, adminController.updateMatch3TileType);
|
||||
router.delete('/minigames/match3/tile-types/:id', authenticate, adminController.deleteMatch3TileType);
|
||||
|
||||
export default router;
|
||||
|
||||
@@ -1,22 +1,26 @@
|
||||
import express from 'express';
|
||||
import match3Controller from '../controllers/match3Controller.js';
|
||||
import { authenticate } from '../middleware/authMiddleware.js';
|
||||
import Match3Controller from '../controllers/match3Controller.js';
|
||||
|
||||
const router = express.Router();
|
||||
const match3Controller = new Match3Controller();
|
||||
|
||||
// Alle Routen erfordern Authentifizierung
|
||||
// Alle Routen benötigen Authentifizierung
|
||||
router.use(authenticate);
|
||||
|
||||
// Kampagnen-Routen
|
||||
router.get('/campaigns', match3Controller.getCampaigns);
|
||||
router.get('/campaigns/:campaignId', match3Controller.getCampaign);
|
||||
router.get('/campaigns/:id', match3Controller.getCampaign);
|
||||
|
||||
// Benutzer-Fortschritt
|
||||
// Level-Routen
|
||||
router.get('/levels/:id', match3Controller.getLevel);
|
||||
|
||||
// Fortschritt-Routen
|
||||
router.get('/campaigns/:campaignId/progress', match3Controller.getUserProgress);
|
||||
router.post('/campaigns/:campaignId/levels/:levelId/progress', match3Controller.updateLevelProgress);
|
||||
router.post('/campaigns/:campaignId/cleanup', match3Controller.cleanupUserProgress);
|
||||
|
||||
// Bestenliste und Statistiken
|
||||
router.get('/campaigns/:campaignId/leaderboard', match3Controller.getLeaderboard);
|
||||
// Statistiken-Routen
|
||||
router.get('/stats', match3Controller.getUserStats);
|
||||
|
||||
export default router;
|
||||
|
||||
Reference in New Issue
Block a user