Écrans, rôles et permissions
Chaque écran du tableau de bord, ce qu'il lit et enregistre, et comment les rôles et les permissions décident de ce que chaque admin peut faire.
Pour le pack Front + Back
Les écrans
Chaque écran se trouve sous /en/dashboard et /ar/dashboard, derrière la connexion, et figure dans la barre latérale.
| Écran | Adresse | Rôle |
|---|---|---|
| Connexion | /en/auth/login | E-mail et mot de passe, avec Remember me. Les boutons Google et Apple et « Forgot your password? » sont des éléments de remplacement qui indiquent qu'ils ne sont pas configurés : un administrateur définit un nouveau mot de passe depuis Admin Management. |
| Vue d'ensemble | /en/dashboard | Un message d'accueil avec la météo locale, des chiffres clés, des analyses, la performance, un radar, un graphique de revenus, une carte du monde, un calendrier, les derniers projets et vos tâches rapides. Export enregistre la page en image PNG. |
| Assistant IA | /en/dashboard/ai-assistant | Discutez de vos données avec des mots simples. Il répond avec des chiffres, des cartes, des graphiques et des listes, et peut créer, modifier, supprimer et restaurer des utilisateurs et changer les paramètres de l'application, dans la limite de vos propres permissions. |
| Utilisateurs | /en/dashboard/users/all | Rechercher, filtrer, créer et modifier des utilisateurs, changer un mot de passe, marquer un e-mail comme vérifié ou non, et supprimer. Chaque utilisateur a sa propre page. |
| Utilisateurs supprimés | /en/dashboard/users/deleted | Les utilisateurs supprimés de la liste, conservés pour pouvoir être restaurés. |
| Projets | /en/dashboard/projects/all | Des projets avec un statut (en cours, prêt, bloqué), un environnement, une version, une image et un nom et une description en anglais et en arabe. Chaque projet a sa propre page. |
| Projets supprimés | /en/dashboard/projects/deleted | Les projets supprimés, conservés pour pouvoir être restaurés. |
| Gestion des administrateurs | /en/dashboard/admins-management | Les admins qui peuvent se connecter : créer, modifier, donner des rôles, supprimer. Chaque admin a sa propre page. |
| Rôles des administrateurs | /en/dashboard/admins-roles | Créez et renommez des rôles et choisissez les permissions que chacun accorde. |
| Paramètres | /en/dashboard/settings | Profile (votre nom, e-mail, téléphone, pays et photo), Security (votre mot de passe) et App Settings (les paramètres propres à l'application, comme le nom du site, l'e-mail du support et le mode maintenance). |
| UI Component | /en/dashboard/ui-component | Chaque composant réutilisable du tableau de bord avec un exemple en direct : boutons, champs, tableaux, fenêtres modales, panneaux latéraux, graphiques, un éditeur de texte riche, un champ de téléphone, une carte du monde et plus encore. |
Ce qui est réel et ce qui est un exemple
- Les utilisateurs, projets, admins, rôles, permissions, paramètres de l'application, vos tâches rapides et les conversations de l'assistant sont lus depuis l'API et enregistrés dans l'API, ou dans la fausse API intégrée de votre navigateur.
- Sur la vue d'ensemble, le total des utilisateurs, le total des projets et le tableau des projets viennent de l'API. Les autres chiffres et graphiques (analyses, performance, radar, revenus, carte du monde et événements du calendrier) sont des données d'exemple dans le code, prêtes à être reliées à vos propres sources.
- Supprimer un utilisateur ou un projet est une suppression douce : la ligne est conservée et listée sous Deleted, d'où elle peut être restaurée.
- « Resend verification email » sur un utilisateur répond que l'e-mail a été envoyé, mais l'API n'envoie aucun courrier : c'est l'endroit où brancher votre propre service d'e-mail.
Clair et sombre
L'en-tête bascule entre le mode clair et le mode sombre, et le navigateur retient le choix. Chaque couleur est une variable CSS définie pour les deux thèmes.
Rôles
Un admin peut avoir plusieurs rôles, et obtient toutes les permissions qu'accorde l'un d'eux. Le seed crée cinq rôles, que vous pouvez modifier sur la page Admin Roles :
| Rôle | Ce qu'il peut faire |
|---|---|
| Super Admin | Tout |
| Admin | Tout sauf supprimer des admins et créer, modifier ou supprimer des rôles ou ce qu'ils accordent |
| Manager | Les utilisateurs et les projets en entier, l'assistant, et la consultation des admins, des rôles et des paramètres |
| Editor | Consulter, créer et modifier des utilisateurs et des projets, et utiliser l'assistant |
| Viewer | Voir chaque liste (admins, rôles, paramètres, utilisateurs et projets), sans créer, modifier ni supprimer et sans assistant ; leur propre mot de passe et leurs tâches rapides fonctionnent toujours |
admin@example.com est le Super Admin. Tout autre admin du seed, comme john.smith@admin.com, est un Viewer.
Permissions
Il y a 25 permissions, nommées module.action :
| Module | Permissions |
|---|---|
| Administrateurs | admins.view, admins.create, admins.edit, admins.delete, admins.assign_roles |
| Rôles | roles.view, roles.create, roles.edit, roles.delete, roles.assign_permissions |
| Utilisateurs | users.view, users.create, users.update, users.delete, users.restore, users.verify |
| Projets | projects.view, projects.create, projects.edit, projects.delete, projects.restore |
| Paramètres | settings.view, settings.edit |
| Assistant IA | ai_chat.use, ai_chat.view_models |
- L'API vérifie la permission sur chaque route, et l'assistant la vérifie sur chaque outil qu'il lance. Le tableau de bord décide seulement quoi afficher : un bouton qu'un admin ne peut pas utiliser est masqué.
- Enregistrer votre propre profil demande
admins.edit. Changer votre propre mot de passe et vos tâches rapides ne demande aucune permission : chaque admin a les siens. - Quand les permissions d'un rôle changent, le tableau de bord de chaque admin connecté en est informé par une connexion en direct, et ses menus et boutons suivent sans rechargement.
Comment le code s'organise
Inclus avec votre achat. Connectez-vous pour le lire, ou ouvrez-le dans votre téléchargement.
Où se trouve le code de chaque écran, comment un écran obtient ses données, vérifier une permission et ajouter une page.