Add permissions to menus
This commit is contained in:
parent
6152cff54a
commit
6b27dd545a
4 changed files with 52 additions and 16 deletions
|
|
@ -18,6 +18,8 @@ type TemplatesGlobals struct {
|
||||||
UserIsAdmin bool
|
UserIsAdmin bool
|
||||||
TimeStart time.Time
|
TimeStart time.Time
|
||||||
ColorMode string
|
ColorMode string
|
||||||
|
AllowMembersPage bool
|
||||||
|
AllowContactsPage bool
|
||||||
}
|
}
|
||||||
|
|
||||||
func TemplatesMiddleware(c *fiber.Ctx) error {
|
func TemplatesMiddleware(c *fiber.Ctx) error {
|
||||||
|
|
@ -59,6 +61,28 @@ func TemplatesMiddleware(c *fiber.Ctx) error {
|
||||||
globals.UserFullname = user.Name
|
globals.UserFullname = user.Name
|
||||||
globals.UserIsAdmin = user.IsAdmin
|
globals.UserIsAdmin = user.IsAdmin
|
||||||
}
|
}
|
||||||
|
|
||||||
|
showMember, _ := helpers.PermissionsGetSections(
|
||||||
|
userid.(uint), "show_member",
|
||||||
|
)
|
||||||
|
showArchivedMember, _ := helpers.PermissionsGetSections(
|
||||||
|
userid.(uint), "show_archived_member",
|
||||||
|
)
|
||||||
|
|
||||||
|
if len(showMember) > 0 || len(showArchivedMember) > 0 {
|
||||||
|
globals.AllowMembersPage = true
|
||||||
|
}
|
||||||
|
|
||||||
|
showContact, _ := helpers.PermissionsGetSections(
|
||||||
|
userid.(uint), "show_contact",
|
||||||
|
)
|
||||||
|
showArchivedContact, _ := helpers.PermissionsGetSections(
|
||||||
|
userid.(uint), "show_archived_contact",
|
||||||
|
)
|
||||||
|
|
||||||
|
if len(showContact) > 0 || len(showArchivedContact) > 0 {
|
||||||
|
globals.AllowContactsPage = true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
totpVerified := sess.Get("totp-verified")
|
totpVerified := sess.Get("totp-verified")
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
<a class="dashboard-tile" href="/admin/sections">
|
<a class="dashboard-tile" href="/admin/sections">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<i class="bi-building me-2"></i>
|
<i class="bi-building me-2"></i>
|
||||||
Gestion des <b>sections</b>
|
Gestion des sections
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
<a class="dashboard-tile" href="/admin/lists">
|
<a class="dashboard-tile" href="/admin/lists">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<i class="bi-list-check me-2"></i>
|
<i class="bi-list-check me-2"></i>
|
||||||
Gestion des <b>listes</b>
|
Gestion des listes
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -33,7 +33,7 @@
|
||||||
<a class="dashboard-tile" href="/admin/fields">
|
<a class="dashboard-tile" href="/admin/fields">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<i class="bi-database-add me-2"></i>
|
<i class="bi-database-add me-2"></i>
|
||||||
Gestion des <b>champs supplémentaires</b>
|
Gestion des champs supplémentaires
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -41,7 +41,7 @@
|
||||||
<a class="dashboard-tile" href="/admin/users">
|
<a class="dashboard-tile" href="/admin/users">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<i class="bi-person-square me-2"></i>
|
<i class="bi-person-square me-2"></i>
|
||||||
Gestion des <b>utilisateurs</b>
|
Gestion des utilisateurs
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -49,7 +49,7 @@
|
||||||
<a class="dashboard-tile" href="/admin/roles">
|
<a class="dashboard-tile" href="/admin/roles">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<i class="bi-briefcase me-2"></i>
|
<i class="bi-briefcase me-2"></i>
|
||||||
Gestion des <b>utilisateurs</b>
|
Gestion des utilisateurs
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -12,29 +12,35 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
||||||
|
{% if Globals.AllowMembersPage %}
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<a class="dashboard-tile" href="/members">
|
<a class="dashboard-tile" href="/members">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<i class="bi-people me-2"></i>
|
<i class="bi-people me-2"></i>
|
||||||
Gestion des <b>membres</b>
|
Gestion des membres
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if Globals.AllowContactsPage %}
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<a class="dashboard-tile" href="/contacts">
|
<a class="dashboard-tile" href="/contacts">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<i class="bi-telephone me-2"></i>
|
<i class="bi-telephone me-2"></i>
|
||||||
Gestion des <b>contacts</b>
|
Gestion des contacts
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
{% if Globals.UserIsAdmin %}
|
{% if Globals.UserIsAdmin %}
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<a class="dashboard-tile" href="/admin">
|
<a class="dashboard-tile" href="/admin">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<i class="bi-gear me-2"></i>
|
<i class="bi-gear me-2"></i>
|
||||||
<b>Administration</b> de l'application
|
Administration de l'application
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -22,16 +22,22 @@
|
||||||
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
||||||
|
|
||||||
{% if Globals.TotpVerified %}
|
{% if Globals.TotpVerified %}
|
||||||
|
|
||||||
|
{% if Globals.AllowMembersPage %}
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link active" href="/members">
|
<a class="nav-link active" href="/members">
|
||||||
<i class="bi-people acti me-2"></i>Membres
|
<i class="bi-people acti me-2"></i>Membres
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if Globals.AllowContactsPage %}
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link active" href="/contacts">
|
<a class="nav-link active" href="/contacts">
|
||||||
<i class="bi-telephone me-2"></i>Contacts
|
<i class="bi-telephone me-2"></i>Contacts
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
{% if Globals.UserIsAdmin %}
|
{% if Globals.UserIsAdmin %}
|
||||||
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue