Checkpoint: Ajout du rôle super_formateur avec accès à toutes les formations et séquences. Migration SQL appliquée en local et sur le VPS de production.
This commit is contained in:
@@ -132,7 +132,7 @@ export const appRouter = router({
|
||||
// Si l'utilisateur est formateur, ne montrer que les formations pour lesquelles il a des séquences
|
||||
if (ctx.user.role === 'formateur' && ctx.user.formateurId) {
|
||||
return db.getFormationsByFormateur(ctx.user.formateurId);
|
||||
} else if (ctx.user.role === 'admin') {
|
||||
} else if (ctx.user.role === 'admin' || ctx.user.role === 'super_formateur') {
|
||||
return db.getFormations();
|
||||
} else {
|
||||
throw new TRPCError({ code: 'FORBIDDEN', message: 'Accès non autorisé' });
|
||||
@@ -243,7 +243,7 @@ export const appRouter = router({
|
||||
// Si l'utilisateur est formateur, ne montrer que les apprenants inscrits à ses séquences
|
||||
if (ctx.user.role === 'formateur' && ctx.user.formateurId) {
|
||||
return db.getApprenantsByFormateur(ctx.user.formateurId);
|
||||
} else if (ctx.user.role === 'admin') {
|
||||
} else if (ctx.user.role === 'admin' || ctx.user.role === 'super_formateur') {
|
||||
return db.getApprenants();
|
||||
} else {
|
||||
throw new TRPCError({ code: 'FORBIDDEN', message: 'Accès non autorisé' });
|
||||
@@ -386,7 +386,7 @@ export const appRouter = router({
|
||||
// Si l'utilisateur est formateur, ne montrer que ses séquences
|
||||
if (ctx.user.role === 'formateur' && ctx.user.formateurId) {
|
||||
seqs = await db.getSequencesByFormateur(ctx.user.formateurId);
|
||||
} else if (ctx.user.role === 'admin') {
|
||||
} else if (ctx.user.role === 'admin' || ctx.user.role === 'super_formateur') {
|
||||
seqs = await db.getSequencesWithFormation();
|
||||
} else {
|
||||
throw new TRPCError({ code: 'FORBIDDEN', message: 'Accès non autorisé' });
|
||||
@@ -1279,7 +1279,7 @@ export const appRouter = router({
|
||||
email: z.string().email().optional(),
|
||||
username: z.string().min(3).optional(),
|
||||
password: z.string().min(6).optional(),
|
||||
role: z.enum(["user", "admin", "formateur"]).default("user"),
|
||||
role: z.enum(["user", "admin", "formateur", "super_formateur"]).default("user"),
|
||||
isActive: z.boolean().default(true),
|
||||
formateurId: z.number().optional(),
|
||||
})).mutation(async ({ input }) => {
|
||||
@@ -1293,7 +1293,7 @@ export const appRouter = router({
|
||||
email: z.string().email().optional(),
|
||||
username: z.string().min(3).optional(),
|
||||
password: z.string().min(6).optional(),
|
||||
role: z.enum(["user", "admin", "formateur"]).optional(),
|
||||
role: z.enum(["user", "admin", "formateur", "super_formateur"]).optional(),
|
||||
isActive: z.boolean().optional(),
|
||||
formateurId: z.number().optional(),
|
||||
})).mutation(async ({ input }) => {
|
||||
|
||||
Reference in New Issue
Block a user