Implement RBAC migration and role management enhancements

- Added AJAX functionality to fetch role permissions for copying.
- Introduced system role management with permission checks for updates.
- Implemented role deletion with confirmation modal and backend handling.
- Enhanced user role assignment migration scripts to transition from legacy profiles to RBAC.
- Created SQL migration scripts for user roles and permissions mapping.
- Updated user interface to support new role management features including copy permissions and system role indicators.
This commit is contained in:
“VeLiTi”
2026-01-27 15:10:21 +01:00
parent aeda4e4cb9
commit f7a91737bc
30 changed files with 1285 additions and 236 deletions

View File

@@ -402,6 +402,94 @@
font-size: 0.75rem;
}
.tag.clickable {
cursor: pointer;
transition: all 0.2s;
}
.tag.clickable:hover {
background: var(--color-primary, #007cba);
color: white;
}
/* Folder Tiles */
.folder-tile {
background: var(--color-white, #fff);
border: 1px solid var(--color-border, #dee2e6);
border-radius: 8px;
padding: 1rem;
cursor: pointer;
transition: all 0.2s;
position: relative;
}
.folder-tile:hover {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
transform: translateY(-2px);
border-color: var(--color-primary, #005655);
}
.folder-tile.grid-item {
text-align: center;
}
.folder-tile.list-item {
display: flex;
align-items: center;
gap: 1rem;
text-align: left;
}
.folder-tile-icon {
width: 100%;
height: 150px;
margin-bottom: 1rem;
display: flex;
align-items: center;
justify-content: center;
background: var(--color-light-grey, #f8f9fa);
border-radius: 4px;
font-size: 4rem;
color: var(--color-primary, #005655);
}
.folder-tile.list-item .folder-tile-icon {
width: 60px;
height: 60px;
flex-shrink: 0;
font-size: 2rem;
margin-bottom: 0;
}
.folder-tile-info {
text-align: center;
}
.folder-tile.list-item .folder-tile-info {
flex: 1;
text-align: left;
}
.folder-tile-name {
font-weight: 600;
margin-bottom: 0.5rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.folder-tile-meta {
display: flex;
justify-content: center;
gap: 0.5rem;
font-size: 0.8rem;
color: var(--color-text-light, #6c757d);
}
.folder-tile.list-item .folder-tile-meta {
justify-content: flex-start;
}
/* Loading and Empty States */
.loading-indicator, .empty-state {
display: flex;